node-poweredup 9.0.0 → 10.1.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 (633) hide show
  1. package/README.md +6 -12
  2. package/dist/browser/poweredup.js +6193 -3
  3. package/dist/browser/poweredup.js.map +7 -1
  4. package/dist/{node/color.d.ts → color.d.ts} +1 -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/{node/consts.d.ts → consts.d.ts} +57 -16
  9. package/dist/consts.d.ts.map +1 -0
  10. package/dist/{node/consts.js → consts.js} +115 -76
  11. package/dist/consts.js.map +1 -0
  12. package/dist/{node/devices → devices}/absolutemotor.d.ts +12 -13
  13. package/dist/devices/absolutemotor.d.ts.map +1 -0
  14. package/dist/devices/absolutemotor.js +108 -0
  15. package/dist/devices/absolutemotor.js.map +1 -0
  16. package/dist/devices/basicmotor.d.ts +38 -0
  17. package/dist/devices/basicmotor.d.ts.map +1 -0
  18. package/dist/devices/basicmotor.js +51 -0
  19. package/dist/devices/basicmotor.js.map +1 -0
  20. package/dist/{node/devices → devices}/colordistancesensor.d.ts +20 -25
  21. package/dist/devices/colordistancesensor.d.ts.map +1 -0
  22. package/dist/{node/devices → devices}/colordistancesensor.js +40 -79
  23. package/dist/devices/colordistancesensor.js.map +1 -0
  24. package/dist/{node/devices → devices}/currentsensor.d.ts +3 -3
  25. package/dist/devices/currentsensor.d.ts.map +1 -0
  26. package/dist/{node/devices → devices}/currentsensor.js +7 -34
  27. package/dist/devices/currentsensor.js.map +1 -0
  28. package/dist/{node/devices → devices}/device.d.ts +18 -11
  29. package/dist/devices/device.d.ts.map +1 -0
  30. package/dist/devices/device.js +350 -0
  31. package/dist/devices/device.js.map +1 -0
  32. package/dist/{node/devices → devices}/duplotrainbasecolorsensor.d.ts +3 -3
  33. package/dist/devices/duplotrainbasecolorsensor.d.ts.map +1 -0
  34. package/dist/{node/devices → devices}/duplotrainbasecolorsensor.js +9 -36
  35. package/dist/devices/duplotrainbasecolorsensor.js.map +1 -0
  36. package/dist/{node/devices → devices}/duplotrainbasemotor.d.ts +3 -2
  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 +35 -0
  43. package/dist/devices/duplotrainbasespeaker.js.map +1 -0
  44. package/dist/{node/devices → devices}/duplotrainbasespeedometer.d.ts +3 -3
  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 +29 -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/{node/devices → devices}/light.d.ts +10 -8
  53. package/dist/devices/light.d.ts.map +1 -0
  54. package/dist/devices/light.js +38 -0
  55. package/dist/devices/light.js.map +1 -0
  56. package/dist/{node/devices → devices}/marioaccelerometer.d.ts +3 -3
  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/{node/devices → devices}/mariobarcodesensor.d.ts +3 -3
  61. package/dist/devices/mariobarcodesensor.d.ts.map +1 -0
  62. package/dist/{node/devices → devices}/mariobarcodesensor.js +7 -34
  63. package/dist/devices/mariobarcodesensor.js.map +1 -0
  64. package/dist/{node/devices → devices}/mariopantssensor.d.ts +3 -3
  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/{node/devices → devices}/mediumlinearmotor.d.ts +3 -2
  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/{node/devices → devices}/motionsensor.d.ts +3 -3
  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/{node/devices → devices}/movehubmediumlinearmotor.d.ts +3 -2
  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/{node/devices → devices}/movehubtiltsensor.d.ts +3 -3
  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 +18 -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/{node/devices → devices}/remotecontrolbutton.d.ts +3 -3
  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/{node/devices → devices}/simplemediumlinearmotor.d.ts +3 -2
  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/{node/devices → devices}/tachomotor.d.ts +19 -19
  97. package/dist/devices/tachomotor.d.ts.map +1 -0
  98. package/dist/devices/tachomotor.js +155 -0
  99. package/dist/devices/tachomotor.js.map +1 -0
  100. package/dist/{node/devices → devices}/technic3x3colorlightmatrix.d.ts +6 -5
  101. package/dist/devices/technic3x3colorlightmatrix.d.ts.map +1 -0
  102. package/dist/devices/technic3x3colorlightmatrix.js +50 -0
  103. package/dist/devices/technic3x3colorlightmatrix.js.map +1 -0
  104. package/dist/{node/devices → devices}/techniccolorsensor.d.ts +12 -8
  105. package/dist/devices/techniccolorsensor.d.ts.map +1 -0
  106. package/dist/devices/techniccolorsensor.js +162 -0
  107. package/dist/devices/techniccolorsensor.js.map +1 -0
  108. package/dist/{node/devices → devices}/technicdistancesensor.d.ts +4 -5
  109. package/dist/devices/technicdistancesensor.d.ts.map +1 -0
  110. package/dist/{node/devices → devices}/technicdistancesensor.js +8 -36
  111. package/dist/devices/technicdistancesensor.js.map +1 -0
  112. package/dist/{node/devices → devices}/technicforcesensor.d.ts +3 -3
  113. package/dist/devices/technicforcesensor.d.ts.map +1 -0
  114. package/dist/{node/devices → devices}/technicforcesensor.js +7 -34
  115. package/dist/devices/technicforcesensor.js.map +1 -0
  116. package/dist/{node/devices → devices}/techniclargeangularmotor.d.ts +4 -3
  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/{node/devices → devices}/techniclargelinearmotor.d.ts +3 -2
  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/{node/devices → devices}/technicmediumangularmotor.d.ts +4 -3
  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/{node/devices → devices}/technicmediumhubaccelerometersensor.d.ts +3 -3
  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/{node/devices → devices}/technicmediumhubgyrosensor.d.ts +3 -3
  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 +39 -0
  137. package/dist/devices/technicmediumhubtiltsensor.d.ts.map +1 -0
  138. package/dist/devices/technicmediumhubtiltsensor.js +94 -0
  139. package/dist/devices/technicmediumhubtiltsensor.js.map +1 -0
  140. package/dist/{node/devices → devices}/technicsmallangularmotor.d.ts +4 -3
  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/{node/devices → devices}/technicxlargelinearmotor.d.ts +3 -2
  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/{node/devices → devices}/tiltsensor.d.ts +7 -4
  149. package/dist/devices/tiltsensor.d.ts.map +1 -0
  150. package/dist/devices/tiltsensor.js +117 -0
  151. package/dist/devices/tiltsensor.js.map +1 -0
  152. package/dist/{node/devices → devices}/trainmotor.d.ts +3 -2
  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/{node/devices → devices}/voltagesensor.d.ts +3 -3
  157. package/dist/devices/voltagesensor.d.ts.map +1 -0
  158. package/dist/{node/devices → devices}/voltagesensor.js +7 -34
  159. package/dist/devices/voltagesensor.js.map +1 -0
  160. package/dist/{node/hubs → hubs}/basehub.d.ts +5 -14
  161. package/dist/hubs/basehub.d.ts.map +1 -0
  162. package/dist/{node/hubs → hubs}/basehub.js +91 -110
  163. package/dist/hubs/basehub.js.map +1 -0
  164. package/dist/{node/hubs → hubs}/duplotrainbase.d.ts +4 -4
  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/{node/hubs → hubs}/hub.d.ts +4 -4
  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/{node/hubs → hubs}/lpf2hub.d.ts +3 -5
  173. package/dist/hubs/lpf2hub.d.ts.map +1 -0
  174. package/dist/{node/hubs → hubs}/lpf2hub.js +28 -47
  175. package/dist/hubs/lpf2hub.js.map +1 -0
  176. package/dist/{node/hubs → hubs}/mario.d.ts +4 -4
  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/{node/hubs → hubs}/movehub.d.ts +4 -4
  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/{node/hubs → hubs}/remotecontrol.d.ts +4 -4
  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/{node/hubs → hubs}/technicmediumhub.d.ts +4 -4
  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/{node/hubs → hubs}/technicsmallhub.d.ts +4 -4
  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/{node/hubs → hubs}/wedo2smarthub.d.ts +4 -7
  197. package/dist/hubs/wedo2smarthub.d.ts.map +1 -0
  198. package/dist/{node/hubs → hubs}/wedo2smarthub.js +10 -39
  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/{node/index-node.d.ts → index-node.js} +48 -46
  207. package/dist/index-node.js.map +1 -0
  208. package/dist/{node/interfaces.d.ts → interfaces.d.ts} +3 -4
  209. package/dist/interfaces.d.ts.map +1 -0
  210. package/dist/interfaces.js +2 -0
  211. package/dist/{node/interfaces.js.map → interfaces.js.map} +1 -1
  212. package/dist/{node/nobleabstraction.d.ts → nobleabstraction.d.ts} +3 -4
  213. package/dist/nobleabstraction.d.ts.map +1 -0
  214. package/dist/{node/nobleabstraction.js → nobleabstraction.js} +5 -9
  215. package/dist/nobleabstraction.js.map +1 -0
  216. package/dist/portoutputcommand.d.ts +13 -0
  217. package/dist/portoutputcommand.d.ts.map +1 -0
  218. package/dist/portoutputcommand.js +30 -0
  219. package/dist/portoutputcommand.js.map +1 -0
  220. package/dist/portoutputsleep.d.ts +6 -0
  221. package/dist/portoutputsleep.d.ts.map +1 -0
  222. package/dist/portoutputsleep.js +10 -0
  223. package/dist/portoutputsleep.js.map +1 -0
  224. package/dist/{node/poweredup-browser.d.ts → poweredup-browser.d.ts} +2 -8
  225. package/dist/poweredup-browser.d.ts.map +1 -0
  226. package/dist/{node/poweredup-browser.js → poweredup-browser.js} +23 -55
  227. package/dist/poweredup-browser.js.map +1 -0
  228. package/dist/{node/poweredup-node.d.ts → poweredup-node.d.ts} +3 -10
  229. package/dist/poweredup-node.d.ts.map +1 -0
  230. package/dist/{node/poweredup-node.js → poweredup-node.js} +32 -66
  231. package/dist/poweredup-node.js.map +1 -0
  232. package/dist/{node/utils.d.ts → utils.d.ts} +2 -4
  233. package/dist/utils.d.ts.map +1 -0
  234. package/dist/utils.js +84 -0
  235. package/dist/utils.js.map +1 -0
  236. package/dist/{node/webbleabstraction.d.ts → webbleabstraction.d.ts} +3 -4
  237. package/dist/webbleabstraction.d.ts.map +1 -0
  238. package/dist/{node/webbleabstraction.js → webbleabstraction.js} +3 -7
  239. package/dist/webbleabstraction.js.map +1 -0
  240. package/docs/.nojekyll +1 -0
  241. package/docs/assets/hierarchy.js +1 -0
  242. package/docs/assets/highlight.css +99 -0
  243. package/docs/assets/icons.js +18 -0
  244. package/docs/assets/icons.svg +1 -0
  245. package/docs/assets/main.js +60 -0
  246. package/docs/assets/navigation.js +1 -0
  247. package/docs/assets/search.js +1 -0
  248. package/docs/assets/style.css +1633 -0
  249. package/docs/classes/AbsoluteMotor.html +242 -0
  250. package/docs/classes/BaseHub.html +220 -0
  251. package/docs/classes/BasicMotor.html +201 -0
  252. package/docs/classes/Color.html +3 -0
  253. package/docs/classes/ColorDistanceSensor.html +214 -0
  254. package/docs/classes/CurrentSensor.html +185 -0
  255. package/docs/classes/Device.html +185 -0
  256. package/docs/classes/DuploTrainBase.html +233 -0
  257. package/docs/classes/DuploTrainBaseColorSensor.html +185 -0
  258. package/docs/classes/DuploTrainBaseMotor.html +201 -0
  259. package/docs/classes/DuploTrainBaseSpeaker.html +191 -0
  260. package/docs/classes/DuploTrainBaseSpeedometer.html +185 -0
  261. package/docs/classes/Hub.html +233 -0
  262. package/docs/classes/HubLED.html +191 -0
  263. package/docs/classes/Light.html +195 -0
  264. package/docs/classes/Mario.html +233 -0
  265. package/docs/classes/MediumLinearMotor.html +229 -0
  266. package/docs/classes/MotionSensor.html +185 -0
  267. package/docs/classes/MoveHub.html +233 -0
  268. package/docs/classes/MoveHubMediumLinearMotor.html +229 -0
  269. package/docs/classes/MoveHubTiltSensor.html +185 -0
  270. package/docs/classes/PiezoBuzzer.html +189 -0
  271. package/docs/classes/PoweredUP.html +180 -0
  272. package/docs/classes/RemoteControl.html +233 -0
  273. package/docs/classes/RemoteControlButton.html +185 -0
  274. package/docs/classes/SimpleMediumLinearMotor.html +201 -0
  275. package/docs/classes/TachoMotor.html +229 -0
  276. package/docs/classes/Technic3x3ColorLightMatrix.html +189 -0
  277. package/docs/classes/TechnicColorSensor.html +191 -0
  278. package/docs/classes/TechnicDistanceSensor.html +192 -0
  279. package/docs/classes/TechnicForceSensor.html +185 -0
  280. package/docs/classes/TechnicLargeAngularMotor.html +242 -0
  281. package/docs/classes/TechnicLargeLinearMotor.html +242 -0
  282. package/docs/classes/TechnicMediumAngularMotor.html +242 -0
  283. package/docs/classes/TechnicMediumHub.html +233 -0
  284. package/docs/classes/TechnicMediumHubAccelerometerSensor.html +185 -0
  285. package/docs/classes/TechnicMediumHubGyroSensor.html +185 -0
  286. package/docs/classes/TechnicMediumHubTiltSensor.html +197 -0
  287. package/docs/classes/TechnicSmallAngularMotor.html +242 -0
  288. package/docs/classes/TechnicXLargeLinearMotor.html +242 -0
  289. package/docs/classes/TiltSensor.html +185 -0
  290. package/docs/classes/TrainMotor.html +201 -0
  291. package/docs/classes/VoltageSensor.html +185 -0
  292. package/docs/classes/WeDo2SmartHub.html +229 -0
  293. package/docs/enums/ActionType.html +22 -0
  294. package/docs/enums/AlertOperation.html +10 -0
  295. package/docs/enums/AlertPayload.html +6 -0
  296. package/docs/enums/AlertType.html +10 -0
  297. package/docs/enums/BLECharacteristic.html +15 -0
  298. package/docs/enums/BLEManufacturerData.html +8 -0
  299. package/docs/enums/BLEService.html +7 -0
  300. package/docs/enums/BrakingStyle.html +7 -0
  301. package/docs/enums/ButtonState.html +11 -0
  302. package/docs/enums/Consts.Color.html +25 -0
  303. package/docs/enums/DeviceType.html +79 -0
  304. package/docs/enums/DuploTrainBaseSound.html +11 -0
  305. package/docs/enums/ErrorCode.html +18 -0
  306. package/docs/enums/Event.html +8 -0
  307. package/docs/enums/HWNetWorkCommandType.html +28 -0
  308. package/docs/enums/HWNetworkFamily.html +20 -0
  309. package/docs/enums/HWNetworkSubFamily.html +16 -0
  310. package/docs/enums/HubPropertyOperation.html +14 -0
  311. package/docs/enums/HubPropertyPayload.html +32 -0
  312. package/docs/enums/HubPropertyReference.html +32 -0
  313. package/docs/enums/HubType.html +19 -0
  314. package/docs/enums/IOTypeID.html +30 -0
  315. package/docs/enums/MarioColor.html +17 -0
  316. package/docs/enums/MarioPantsType.html +13 -0
  317. package/docs/enums/MessageType.html +48 -0
  318. package/docs/enums/ModeInformationType.html +22 -0
  319. package/docs/enums/PortInputFormatSetupSubCommand.html +14 -0
  320. package/docs/hierarchy.html +1 -0
  321. package/docs/index.html +18 -120
  322. package/docs/modules/Consts.html +1 -0
  323. package/docs/modules.html +1 -0
  324. package/docs/variables/ColorNames.html +1 -0
  325. package/docs/variables/DeviceTypeNames.html +1 -0
  326. package/docs/variables/HubTypeNames.html +1 -0
  327. package/docs/variables/isWebBluetooth.html +1 -0
  328. package/package.json +19 -25
  329. package/src/color.ts +1 -1
  330. package/src/consts.ts +60 -16
  331. package/src/devices/absolutemotor.ts +28 -38
  332. package/src/devices/basicmotor.ts +20 -30
  333. package/src/devices/colordistancesensor.ts +31 -43
  334. package/src/devices/currentsensor.ts +3 -3
  335. package/src/devices/device.ts +200 -22
  336. package/src/devices/duplotrainbasecolorsensor.ts +4 -4
  337. package/src/devices/duplotrainbasemotor.ts +3 -3
  338. package/src/devices/duplotrainbasespeaker.ts +8 -13
  339. package/src/devices/duplotrainbasespeedometer.ts +3 -3
  340. package/src/devices/hubled.ts +25 -27
  341. package/src/devices/light.ts +15 -24
  342. package/src/devices/marioaccelerometer.ts +3 -3
  343. package/src/devices/mariobarcodesensor.ts +3 -3
  344. package/src/devices/mariopantssensor.ts +3 -3
  345. package/src/devices/mediumlinearmotor.ts +3 -3
  346. package/src/devices/motionsensor.ts +3 -3
  347. package/src/devices/movehubmediumlinearmotor.ts +3 -3
  348. package/src/devices/movehubtiltsensor.ts +3 -3
  349. package/src/devices/piezobuzzer.ts +6 -7
  350. package/src/devices/remotecontrolbutton.ts +3 -3
  351. package/src/devices/simplemediumlinearmotor.ts +3 -3
  352. package/src/devices/tachomotor.ts +52 -64
  353. package/src/devices/technic3x3colorlightmatrix.ts +24 -28
  354. package/src/devices/techniccolorsensor.ts +106 -15
  355. package/src/devices/technicdistancesensor.ts +4 -5
  356. package/src/devices/technicforcesensor.ts +3 -3
  357. package/src/devices/techniclargeangularmotor.ts +3 -3
  358. package/src/devices/techniclargelinearmotor.ts +3 -3
  359. package/src/devices/technicmediumangularmotor.ts +3 -3
  360. package/src/devices/technicmediumhubaccelerometersensor.ts +3 -3
  361. package/src/devices/technicmediumhubgyrosensor.ts +3 -3
  362. package/src/devices/technicmediumhubtiltsensor.ts +15 -27
  363. package/src/devices/technicsmallangularmotor.ts +3 -3
  364. package/src/devices/technicxlargelinearmotor.ts +3 -3
  365. package/src/devices/tiltsensor.ts +88 -8
  366. package/src/devices/trainmotor.ts +3 -3
  367. package/src/devices/voltagesensor.ts +3 -3
  368. package/src/hubs/basehub.ts +60 -51
  369. package/src/hubs/duplotrainbase.ts +5 -5
  370. package/src/hubs/hub.ts +5 -5
  371. package/src/hubs/lpf2hub.ts +16 -12
  372. package/src/hubs/mario.ts +5 -5
  373. package/src/hubs/movehub.ts +5 -5
  374. package/src/hubs/remotecontrol.ts +5 -5
  375. package/src/hubs/technicmediumhub.ts +5 -5
  376. package/src/hubs/technicsmallhub.ts +5 -5
  377. package/src/hubs/wedo2smarthub.ts +7 -9
  378. package/src/index-browser.ts +46 -46
  379. package/src/index-node.ts +47 -46
  380. package/src/interfaces.ts +2 -2
  381. package/src/nobleabstraction.ts +10 -10
  382. package/src/portoutputcommand.ts +37 -0
  383. package/src/portoutputsleep.ts +11 -0
  384. package/src/poweredup-browser.ts +15 -19
  385. package/src/poweredup-node.ts +15 -22
  386. package/src/utils.ts +15 -20
  387. package/src/webbleabstraction.ts +3 -3
  388. package/tsconfig.tsbuildinfo +1 -0
  389. package/typedoc.json +14 -0
  390. package/webpack.config.cjs +35 -0
  391. package/.jsdoc.json +0 -40
  392. package/abandonware-noble.d.ts +0 -129
  393. package/dist/browser/poweredup.js.LICENSE.txt +0 -8
  394. package/dist/node/color.js +0 -42
  395. package/dist/node/color.js.map +0 -1
  396. package/dist/node/consts.js.map +0 -1
  397. package/dist/node/devices/absolutemotor.js +0 -145
  398. package/dist/node/devices/absolutemotor.js.map +0 -1
  399. package/dist/node/devices/basicmotor.d.ts +0 -40
  400. package/dist/node/devices/basicmotor.js +0 -88
  401. package/dist/node/devices/basicmotor.js.map +0 -1
  402. package/dist/node/devices/colordistancesensor.js.map +0 -1
  403. package/dist/node/devices/currentsensor.js.map +0 -1
  404. package/dist/node/devices/device.js +0 -189
  405. package/dist/node/devices/device.js.map +0 -1
  406. package/dist/node/devices/duplotrainbasecolorsensor.js.map +0 -1
  407. package/dist/node/devices/duplotrainbasemotor.js +0 -39
  408. package/dist/node/devices/duplotrainbasemotor.js.map +0 -1
  409. package/dist/node/devices/duplotrainbasespeaker.d.ts +0 -28
  410. package/dist/node/devices/duplotrainbasespeaker.js +0 -67
  411. package/dist/node/devices/duplotrainbasespeaker.js.map +0 -1
  412. package/dist/node/devices/duplotrainbasespeedometer.js +0 -61
  413. package/dist/node/devices/duplotrainbasespeedometer.js.map +0 -1
  414. package/dist/node/devices/hubled.d.ts +0 -29
  415. package/dist/node/devices/hubled.js +0 -87
  416. package/dist/node/devices/hubled.js.map +0 -1
  417. package/dist/node/devices/light.js +0 -73
  418. package/dist/node/devices/light.js.map +0 -1
  419. package/dist/node/devices/marioaccelerometer.js +0 -77
  420. package/dist/node/devices/marioaccelerometer.js.map +0 -1
  421. package/dist/node/devices/mariobarcodesensor.js.map +0 -1
  422. package/dist/node/devices/mariopantssensor.js +0 -61
  423. package/dist/node/devices/mariopantssensor.js.map +0 -1
  424. package/dist/node/devices/mediumlinearmotor.js +0 -39
  425. package/dist/node/devices/mediumlinearmotor.js.map +0 -1
  426. package/dist/node/devices/motionsensor.js +0 -65
  427. package/dist/node/devices/motionsensor.js.map +0 -1
  428. package/dist/node/devices/movehubmediumlinearmotor.js +0 -39
  429. package/dist/node/devices/movehubmediumlinearmotor.js.map +0 -1
  430. package/dist/node/devices/movehubtiltsensor.js +0 -63
  431. package/dist/node/devices/movehubtiltsensor.js.map +0 -1
  432. package/dist/node/devices/piezobuzzer.d.ts +0 -17
  433. package/dist/node/devices/piezobuzzer.js +0 -55
  434. package/dist/node/devices/piezobuzzer.js.map +0 -1
  435. package/dist/node/devices/remotecontrolbutton.js +0 -67
  436. package/dist/node/devices/remotecontrolbutton.js.map +0 -1
  437. package/dist/node/devices/simplemediumlinearmotor.js +0 -39
  438. package/dist/node/devices/simplemediumlinearmotor.js.map +0 -1
  439. package/dist/node/devices/tachomotor.js +0 -194
  440. package/dist/node/devices/tachomotor.js.map +0 -1
  441. package/dist/node/devices/technic3x3colorlightmatrix.js +0 -81
  442. package/dist/node/devices/technic3x3colorlightmatrix.js.map +0 -1
  443. package/dist/node/devices/techniccolorsensor.js +0 -99
  444. package/dist/node/devices/techniccolorsensor.js.map +0 -1
  445. package/dist/node/devices/technicdistancesensor.js.map +0 -1
  446. package/dist/node/devices/technicforcesensor.js.map +0 -1
  447. package/dist/node/devices/techniclargeangularmotor.js +0 -39
  448. package/dist/node/devices/techniclargeangularmotor.js.map +0 -1
  449. package/dist/node/devices/techniclargelinearmotor.js +0 -39
  450. package/dist/node/devices/techniclargelinearmotor.js.map +0 -1
  451. package/dist/node/devices/technicmediumangularmotor.js +0 -39
  452. package/dist/node/devices/technicmediumangularmotor.js.map +0 -1
  453. package/dist/node/devices/technicmediumhubaccelerometersensor.js +0 -65
  454. package/dist/node/devices/technicmediumhubaccelerometersensor.js.map +0 -1
  455. package/dist/node/devices/technicmediumhubgyrosensor.js +0 -65
  456. package/dist/node/devices/technicmediumhubgyrosensor.js.map +0 -1
  457. package/dist/node/devices/technicmediumhubtiltsensor.d.ts +0 -41
  458. package/dist/node/devices/technicmediumhubtiltsensor.js +0 -133
  459. package/dist/node/devices/technicmediumhubtiltsensor.js.map +0 -1
  460. package/dist/node/devices/technicsmallangularmotor.js +0 -39
  461. package/dist/node/devices/technicsmallangularmotor.js.map +0 -1
  462. package/dist/node/devices/technicxlargelinearmotor.js +0 -39
  463. package/dist/node/devices/technicxlargelinearmotor.js.map +0 -1
  464. package/dist/node/devices/tiltsensor.js +0 -63
  465. package/dist/node/devices/tiltsensor.js.map +0 -1
  466. package/dist/node/devices/trainmotor.js +0 -39
  467. package/dist/node/devices/trainmotor.js.map +0 -1
  468. package/dist/node/devices/voltagesensor.js.map +0 -1
  469. package/dist/node/hubs/basehub.js.map +0 -1
  470. package/dist/node/hubs/duplotrainbase.js +0 -62
  471. package/dist/node/hubs/duplotrainbase.js.map +0 -1
  472. package/dist/node/hubs/hub.js +0 -71
  473. package/dist/node/hubs/hub.js.map +0 -1
  474. package/dist/node/hubs/lpf2hub.js.map +0 -1
  475. package/dist/node/hubs/mario.js +0 -58
  476. package/dist/node/hubs/mario.js.map +0 -1
  477. package/dist/node/hubs/movehub.js +0 -73
  478. package/dist/node/hubs/movehub.js.map +0 -1
  479. package/dist/node/hubs/remotecontrol.js +0 -64
  480. package/dist/node/hubs/remotecontrol.js.map +0 -1
  481. package/dist/node/hubs/technicmediumhub.js +0 -69
  482. package/dist/node/hubs/technicmediumhub.js.map +0 -1
  483. package/dist/node/hubs/technicsmallhub.js +0 -68
  484. package/dist/node/hubs/technicsmallhub.js.map +0 -1
  485. package/dist/node/hubs/wedo2smarthub.js.map +0 -1
  486. package/dist/node/index-browser.d.ts +0 -1
  487. package/dist/node/index-browser.js +0 -121
  488. package/dist/node/index-browser.js.map +0 -1
  489. package/dist/node/index-node.js +0 -120
  490. package/dist/node/index-node.js.map +0 -1
  491. package/dist/node/interfaces.js +0 -3
  492. package/dist/node/nobleabstraction.js.map +0 -1
  493. package/dist/node/poweredup-browser.js.map +0 -1
  494. package/dist/node/poweredup-node.js.map +0 -1
  495. package/dist/node/utils.js +0 -102
  496. package/dist/node/utils.js.map +0 -1
  497. package/dist/node/webbleabstraction.js.map +0 -1
  498. package/docs/AbsoluteMotor.html +0 -2008
  499. package/docs/BaseHub.html +0 -1391
  500. package/docs/BasicMotor.html +0 -1459
  501. package/docs/ColorDistanceSensor.html +0 -3025
  502. package/docs/CurrentSensor.html +0 -1022
  503. package/docs/Device.html +0 -841
  504. package/docs/DuploTrainBase.html +0 -2092
  505. package/docs/DuploTrainBaseColorSensor.html +0 -1509
  506. package/docs/DuploTrainBaseMotor.html +0 -1479
  507. package/docs/DuploTrainBaseSpeaker.html +0 -1193
  508. package/docs/DuploTraniBaseSpeedometer.html +0 -871
  509. package/docs/Hub.html +0 -7451
  510. package/docs/HubLED.html +0 -1239
  511. package/docs/LPF2Hub.html +0 -2066
  512. package/docs/Light.html +0 -1239
  513. package/docs/Mario.html +0 -2092
  514. package/docs/MarioAccelerometer.html +0 -1215
  515. package/docs/MarioBarcodeSensor.html +0 -1215
  516. package/docs/MarioPantsSensor.html +0 -1022
  517. package/docs/MediumLinearMotor.html +0 -1357
  518. package/docs/MotionSensor.html +0 -1022
  519. package/docs/MoveHub.html +0 -2092
  520. package/docs/MoveHubMediumLinearMotor.html +0 -1357
  521. package/docs/MoveHubTiltSensor.html +0 -1045
  522. package/docs/PiezoBuzzer.html +0 -1057
  523. package/docs/PoweredUP.html +0 -4371
  524. package/docs/RemoteControl.html +0 -2092
  525. package/docs/RemoteControlButton.html +0 -1022
  526. package/docs/SimpleMediumLinearMotor.html +0 -871
  527. package/docs/TachoMotor.html +0 -2620
  528. package/docs/Technic3x3ColorLightMatrix.html +0 -1037
  529. package/docs/TechnicColorSensor.html +0 -1525
  530. package/docs/TechnicDistanceSensor.html +0 -1401
  531. package/docs/TechnicForceSensor.html +0 -1316
  532. package/docs/TechnicLargeAngularMotor.html +0 -2028
  533. package/docs/TechnicLargeLinearMotor.html +0 -2028
  534. package/docs/TechnicMediumAngularMotor.html +0 -2028
  535. package/docs/TechnicMediumHub.html +0 -2092
  536. package/docs/TechnicMediumHubAccelerometerSensor.html +0 -1068
  537. package/docs/TechnicMediumHubGyroSensor.html +0 -1068
  538. package/docs/TechnicMediumHubTiltSensor.html +0 -1696
  539. package/docs/TechnicSmallAngularMotor.html +0 -2028
  540. package/docs/TechnicXLargeLinearMotor.html +0 -2028
  541. package/docs/TiltSensor.html +0 -1045
  542. package/docs/TrainMotor.html +0 -1479
  543. package/docs/VoltageSensor.html +0 -1022
  544. package/docs/WeDo2SmartHub.html +0 -1887
  545. package/docs/consts.js.html +0 -728
  546. package/docs/devices_absolutemotor.js.html +0 -195
  547. package/docs/devices_basicmotor.js.html +0 -138
  548. package/docs/devices_colordistancesensor.js.html +0 -361
  549. package/docs/devices_currentsensor.js.html +0 -132
  550. package/docs/devices_device.js.html +0 -239
  551. package/docs/devices_duplotrainbasecolorsensor.js.html +0 -154
  552. package/docs/devices_duplotrainbasemotor.js.html +0 -89
  553. package/docs/devices_duplotrainbasespeaker.js.html +0 -117
  554. package/docs/devices_duplotrainbasespeedometer.js.html +0 -111
  555. package/docs/devices_hubled.js.html +0 -137
  556. package/docs/devices_light.js.html +0 -123
  557. package/docs/devices_marioaccelerometer.js.html +0 -127
  558. package/docs/devices_mariobarcodesensor.js.html +0 -135
  559. package/docs/devices_mariopantssensor.js.html +0 -111
  560. package/docs/devices_mediumlinearmotor.js.html +0 -89
  561. package/docs/devices_motionsensor.js.html +0 -115
  562. package/docs/devices_movehubmediumlinearmotor.js.html +0 -89
  563. package/docs/devices_movehubtiltsensor.js.html +0 -113
  564. package/docs/devices_piezobuzzer.js.html +0 -105
  565. package/docs/devices_remotecontrolbutton.js.html +0 -117
  566. package/docs/devices_simplemediumlinearmotor.js.html +0 -89
  567. package/docs/devices_tachomotor.js.html +0 -244
  568. package/docs/devices_technic3x3colorlightmatrix.js.html +0 -131
  569. package/docs/devices_techniccolorsensor.js.html +0 -149
  570. package/docs/devices_technicdistancesensor.js.html +0 -135
  571. package/docs/devices_technicforcesensor.js.html +0 -135
  572. package/docs/devices_techniclargeangularmotor.js.html +0 -89
  573. package/docs/devices_techniclargelinearmotor.js.html +0 -89
  574. package/docs/devices_technicmediumangularmotor.js.html +0 -89
  575. package/docs/devices_technicmediumhubaccelerometersensor.js.html +0 -115
  576. package/docs/devices_technicmediumhubgyrosensor.js.html +0 -115
  577. package/docs/devices_technicmediumhubtiltsensor.js.html +0 -183
  578. package/docs/devices_technicsmallangularmotor.js.html +0 -89
  579. package/docs/devices_technicxlargelinearmotor.js.html +0 -89
  580. package/docs/devices_tiltsensor.js.html +0 -113
  581. package/docs/devices_trainmotor.js.html +0 -89
  582. package/docs/devices_voltagesensor.js.html +0 -136
  583. package/docs/fonts/OpenSans-Bold-webfont.eot +0 -0
  584. package/docs/fonts/OpenSans-Bold-webfont.svg +0 -1830
  585. package/docs/fonts/OpenSans-Bold-webfont.woff +0 -0
  586. package/docs/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  587. package/docs/fonts/OpenSans-BoldItalic-webfont.svg +0 -1830
  588. package/docs/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  589. package/docs/fonts/OpenSans-Italic-webfont.eot +0 -0
  590. package/docs/fonts/OpenSans-Italic-webfont.svg +0 -1830
  591. package/docs/fonts/OpenSans-Italic-webfont.woff +0 -0
  592. package/docs/fonts/OpenSans-Light-webfont.eot +0 -0
  593. package/docs/fonts/OpenSans-Light-webfont.svg +0 -1831
  594. package/docs/fonts/OpenSans-Light-webfont.woff +0 -0
  595. package/docs/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  596. package/docs/fonts/OpenSans-LightItalic-webfont.svg +0 -1835
  597. package/docs/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  598. package/docs/fonts/OpenSans-Regular-webfont.eot +0 -0
  599. package/docs/fonts/OpenSans-Regular-webfont.svg +0 -1831
  600. package/docs/fonts/OpenSans-Regular-webfont.woff +0 -0
  601. package/docs/fonts/OpenSans-Semibold-webfont.eot +0 -0
  602. package/docs/fonts/OpenSans-Semibold-webfont.svg +0 -1830
  603. package/docs/fonts/OpenSans-Semibold-webfont.ttf +0 -0
  604. package/docs/fonts/OpenSans-Semibold-webfont.woff +0 -0
  605. package/docs/fonts/OpenSans-SemiboldItalic-webfont.eot +0 -0
  606. package/docs/fonts/OpenSans-SemiboldItalic-webfont.svg +0 -1830
  607. package/docs/fonts/OpenSans-SemiboldItalic-webfont.ttf +0 -0
  608. package/docs/fonts/OpenSans-SemiboldItalic-webfont.woff +0 -0
  609. package/docs/global.html +0 -3996
  610. package/docs/hubs_basehub.js.html +0 -469
  611. package/docs/hubs_duplotrainbase.js.html +0 -112
  612. package/docs/hubs_hub.js.html +0 -121
  613. package/docs/hubs_lpf2hub.js.html +0 -391
  614. package/docs/hubs_mario.js.html +0 -108
  615. package/docs/hubs_movehub.js.html +0 -123
  616. package/docs/hubs_remotecontrol.js.html +0 -114
  617. package/docs/hubs_technicmediumhub.js.html +0 -119
  618. package/docs/hubs_technicsmallhub.js.html +0 -118
  619. package/docs/hubs_wedo2smarthub.js.html +0 -265
  620. package/docs/icons/home.svg +0 -4
  621. package/docs/icons/search.svg +0 -4
  622. package/docs/poweredup-browser.js.html +0 -292
  623. package/docs/poweredup-node.js.html +0 -250
  624. package/docs/scripts/linenumber.js +0 -25
  625. package/docs/scripts/pagelocation.js +0 -89
  626. package/docs/scripts/prettify/Apache-License-2.0.txt +0 -202
  627. package/docs/scripts/prettify/lang-css.js +0 -2
  628. package/docs/scripts/prettify/prettify.js +0 -28
  629. package/docs/styles/collapse.css +0 -27
  630. package/docs/styles/jsdoc-default.css +0 -358
  631. package/docs/styles/prettify-jsdoc.css +0 -111
  632. package/docs/styles/prettify-tomorrow.css +0 -132
  633. package/noble-mac.d.ts +0 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"technicmediumhubtiltsensor.d.ts","sourceRoot":"","sources":["../../src/devices/technicmediumhubtiltsensor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AAEvC;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,MAAM;IAElD,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAM;IACxC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAM;gBAEzB,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM;IAI3C,OAAO,CAAE,OAAO,EAAE,MAAM;IA6C/B;;;;OAIG;IACI,cAAc,CAAE,KAAK,EAAE,MAAM;IAOpC;;;;OAIG;IACI,kBAAkB,CAAE,SAAS,EAAE,MAAM;IAK5C;;;;OAIG;IACI,gBAAgB,CAAE,OAAO,EAAE,MAAM;CAI3C;AAED,oBAAY,IAAI;IACZ,IAAI,IAAO;IACX,YAAY,IAAO;CACtB;AAED,eAAO,MAAM,OAAO,EAAE;IAAC,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAG7C,CAAC"}
@@ -0,0 +1,94 @@
1
+ import { Device } from "./device.js";
2
+ import * as Consts from "../consts.js";
3
+ /**
4
+ * @class TechnicMediumHubTiltSensor
5
+ * @extends Device
6
+ */
7
+ export class TechnicMediumHubTiltSensor extends Device {
8
+ constructor(hub, portId) {
9
+ super(hub, portId, ModeMap, Consts.DeviceType.TECHNIC_MEDIUM_HUB_TILT_SENSOR);
10
+ this._impactThreshold = 10; // guess of default value
11
+ this._impactHoldoff = 10; // guess of default value
12
+ }
13
+ receive(message) {
14
+ const mode = this._mode;
15
+ switch (mode) {
16
+ case Mode.TILT:
17
+ /**
18
+ * Emits when a tilt sensor is activated.
19
+ *
20
+ * @event TechnicMediumHubTiltSensor#tilt
21
+ * @type {object}
22
+ * @param {number} x
23
+ * @param {number} y
24
+ * @param {number} z
25
+ */
26
+ let z = -message.readInt16LE(4);
27
+ const y = message.readInt16LE(6);
28
+ const x = message.readInt16LE(8);
29
+ // workaround for calibration problem or bug in technicMediumHub firmware 1.1.00.0000
30
+ if (y === 90 || y === -90) {
31
+ z = Math.sign(y) * (z + 180);
32
+ if (z > 180)
33
+ z -= 360;
34
+ if (z < -180)
35
+ z += 360;
36
+ }
37
+ this.notify("tilt", { x, y, z });
38
+ break;
39
+ case Mode.IMPACT_COUNT:
40
+ if (message.length !== 8) {
41
+ // if mode of device has not changed to this._mode yet
42
+ break;
43
+ }
44
+ const count = message.readUInt32LE(4);
45
+ /**
46
+ * Emits when proper acceleration is above threshold (e.g. on impact when being thrown to the ground).
47
+ * @event TechnicMediumHubTiltSensor#impactCount
48
+ * @type {object}
49
+ * @param {number} number of impact events.
50
+ */
51
+ this.notify("impactCount", { count });
52
+ break;
53
+ }
54
+ }
55
+ /**
56
+ * Set the impact count value.
57
+ * @param {number} count impact count between 0 and 2^32
58
+ * @returns {Promise<CommandFeedback>} Resolved upon completion of the command.
59
+ */
60
+ setImpactCount(count) {
61
+ const payload = Buffer.alloc(4);
62
+ payload.writeUInt32LE(count % 2 ** 32);
63
+ // no need to subscribe, can be set in different mode
64
+ return this.writeDirect(0x01, payload);
65
+ }
66
+ /**
67
+ * Set the impact threshold.
68
+ * @param {number} threshold value between 1 and 127
69
+ * @returns {Promise<CommandFeedback>} Resolved upon completion of the command.
70
+ */
71
+ setImpactThreshold(threshold) {
72
+ this._impactThreshold = threshold;
73
+ return this.writeDirect(0x02, Buffer.from([this._impactThreshold, this._impactHoldoff]));
74
+ }
75
+ /**
76
+ * Set the impact holdoff time.
77
+ * @param {number} holdoff value between 1 and 127
78
+ * @returns {Promise<CommandFeedback>} Resolved upon completion of the command.
79
+ */
80
+ setImpactHoldoff(holdoff) {
81
+ this._impactHoldoff = holdoff;
82
+ return this.writeDirect(0x02, Buffer.from([this._impactThreshold, this._impactHoldoff]));
83
+ }
84
+ }
85
+ export var Mode;
86
+ (function (Mode) {
87
+ Mode[Mode["TILT"] = 0] = "TILT";
88
+ Mode[Mode["IMPACT_COUNT"] = 1] = "IMPACT_COUNT";
89
+ })(Mode || (Mode = {}));
90
+ export const ModeMap = {
91
+ "tilt": Mode.TILT,
92
+ "impactCount": Mode.IMPACT_COUNT
93
+ };
94
+ //# sourceMappingURL=technicmediumhubtiltsensor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"technicmediumhubtiltsensor.js","sourceRoot":"","sources":["../../src/devices/technicmediumhubtiltsensor.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { AbsoluteMotor } from "./absolutemotor";
2
- import { IDeviceInterface } from "../interfaces";
3
- import * as Consts from "../consts";
1
+ import { AbsoluteMotor } from "./absolutemotor.js";
2
+ import { IDeviceInterface } from "../interfaces.js";
3
+ import * as Consts from "../consts.js";
4
4
  /**
5
5
  * @class TechnicSmallAngularMotor
6
6
  * @extends AbsoluteMotor
@@ -10,3 +10,4 @@ export declare class TechnicSmallAngularMotor extends AbsoluteMotor {
10
10
  [event: string]: number;
11
11
  }, type?: Consts.DeviceType);
12
12
  }
13
+ //# sourceMappingURL=technicsmallangularmotor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"technicsmallangularmotor.d.ts","sourceRoot":"","sources":["../../src/devices/technicsmallangularmotor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AAEvC;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,aAAa;gBAE1C,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE;QAAC,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;KAAM,EAAE,IAAI,GAAE,MAAM,CAAC,UAA0D;CAIvK"}
@@ -0,0 +1,12 @@
1
+ import { AbsoluteMotor } from "./absolutemotor.js";
2
+ import * as Consts from "../consts.js";
3
+ /**
4
+ * @class TechnicSmallAngularMotor
5
+ * @extends AbsoluteMotor
6
+ */
7
+ export class TechnicSmallAngularMotor extends AbsoluteMotor {
8
+ constructor(hub, portId, modeMap = {}, type = Consts.DeviceType.TECHNIC_SMALL_ANGULAR_MOTOR) {
9
+ super(hub, portId, {}, type);
10
+ }
11
+ }
12
+ //# sourceMappingURL=technicsmallangularmotor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"technicsmallangularmotor.js","sourceRoot":"","sources":["../../src/devices/technicsmallangularmotor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AAEvC;;;GAGG;AACH,MAAM,OAAO,wBAAyB,SAAQ,aAAa;IAEvD,YAAa,GAAqB,EAAE,MAAc,EAAE,UAAqC,EAAE,EAAE,OAA0B,MAAM,CAAC,UAAU,CAAC,2BAA2B;QAChK,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;CAEJ"}
@@ -1,5 +1,5 @@
1
- import { AbsoluteMotor } from "./absolutemotor";
2
- import { IDeviceInterface } from "../interfaces";
1
+ import { AbsoluteMotor } from "./absolutemotor.js";
2
+ import { IDeviceInterface } from "../interfaces.js";
3
3
  /**
4
4
  * @class TechnicXLargeLinearMotor
5
5
  * @extends AbsoluteMotor
@@ -7,3 +7,4 @@ import { IDeviceInterface } from "../interfaces";
7
7
  export declare class TechnicXLargeLinearMotor extends AbsoluteMotor {
8
8
  constructor(hub: IDeviceInterface, portId: number);
9
9
  }
10
+ //# sourceMappingURL=technicxlargelinearmotor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"technicxlargelinearmotor.d.ts","sourceRoot":"","sources":["../../src/devices/technicxlargelinearmotor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAIpD;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,aAAa;gBAE1C,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM;CAIrD"}
@@ -0,0 +1,12 @@
1
+ import { AbsoluteMotor } from "./absolutemotor.js";
2
+ import * as Consts from "../consts.js";
3
+ /**
4
+ * @class TechnicXLargeLinearMotor
5
+ * @extends AbsoluteMotor
6
+ */
7
+ export class TechnicXLargeLinearMotor extends AbsoluteMotor {
8
+ constructor(hub, portId) {
9
+ super(hub, portId, {}, Consts.DeviceType.TECHNIC_XLARGE_LINEAR_MOTOR);
10
+ }
11
+ }
12
+ //# sourceMappingURL=technicxlargelinearmotor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"technicxlargelinearmotor.js","sourceRoot":"","sources":["../../src/devices/technicxlargelinearmotor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AAEvC;;;GAGG;AACH,MAAM,OAAO,wBAAyB,SAAQ,aAAa;IAEvD,YAAa,GAAqB,EAAE,MAAc;QAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,2BAA2B,CAAC,CAAC;IAC1E,CAAC;CAEJ"}
@@ -1,6 +1,5 @@
1
- /// <reference types="node" />
2
- import { Device } from "./device";
3
- import { IDeviceInterface } from "../interfaces";
1
+ import { Device } from "./device.js";
2
+ import { IDeviceInterface } from "../interfaces.js";
4
3
  /**
5
4
  * @class TiltSensor
6
5
  * @extends Device
@@ -10,8 +9,12 @@ export declare class TiltSensor extends Device {
10
9
  receive(message: Buffer): void;
11
10
  }
12
11
  export declare enum Mode {
13
- TILT = 0
12
+ TILT = 0,
13
+ DIRECTION = 1,
14
+ CRASH = 2,
15
+ CAL = 3
14
16
  }
15
17
  export declare const ModeMap: {
16
18
  [event: string]: number;
17
19
  };
20
+ //# sourceMappingURL=tiltsensor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tiltsensor.d.ts","sourceRoot":"","sources":["../../src/devices/tiltsensor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAIpD;;;GAGG;AACH,qBAAa,UAAW,SAAQ,MAAM;gBAErB,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM;IAI3C,OAAO,CAAE,OAAO,EAAE,MAAM;CA6FlC;AAED,oBAAY,IAAI;IACZ,IAAI,IAAO;IACX,SAAS,IAAO;IAChB,KAAK,IAAO;IACZ,GAAG,IAAO;CACb;AAED,eAAO,MAAM,OAAO,EAAE;IAAC,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAK7C,CAAC"}
@@ -0,0 +1,117 @@
1
+ import { Device } from "./device.js";
2
+ import * as Consts from "../consts.js";
3
+ /**
4
+ * @class TiltSensor
5
+ * @extends Device
6
+ */
7
+ export class TiltSensor extends Device {
8
+ constructor(hub, portId) {
9
+ super(hub, portId, ModeMap, Consts.DeviceType.TILT_SENSOR);
10
+ }
11
+ receive(message) {
12
+ const mode = this._mode;
13
+ let x = 0;
14
+ let y = 0;
15
+ let z = 0;
16
+ switch (mode) {
17
+ case Mode.TILT:
18
+ if (message.length !== (this.isWeDo2SmartHub ? 4 : 6)) {
19
+ // if mode of device has not changed to this._mode yet
20
+ break;
21
+ }
22
+ x = message.readInt8(this.isWeDo2SmartHub ? 2 : 4);
23
+ y = message.readInt8(this.isWeDo2SmartHub ? 3 : 5);
24
+ /**
25
+ * Emits when a tilt sensor is activated.
26
+ * @event TiltSensor#tilt
27
+ * @type {object}
28
+ * @param {number} x
29
+ * @param {number} y
30
+ */
31
+ this.notify("tilt", { x, y });
32
+ break;
33
+ case Mode.DIRECTION:
34
+ const dir = message.readInt8(this.isWeDo2SmartHub ? 2 : 4);
35
+ /**
36
+ * Emits when the tilt sensor direction changes.
37
+ * @event TiltSensor#direction
38
+ * @type {object}
39
+ * @param {TiltDirection} dir
40
+ */
41
+ this.notify("direction", { dir });
42
+ break;
43
+ case Mode.CRASH:
44
+ if (message.length !== (this.isWeDo2SmartHub ? 5 : 7)) {
45
+ // if mode of device has not changed to this._mode yet
46
+ break;
47
+ }
48
+ x = message.readUInt8(this.isWeDo2SmartHub ? 2 : 4);
49
+ y = message.readUInt8(this.isWeDo2SmartHub ? 3 : 5);
50
+ z = message.readUInt8(this.isWeDo2SmartHub ? 4 : 6);
51
+ /**
52
+ * Emits when proper acceleration is above threshold (e.g. on impact when being thrown to the ground).
53
+ * @event TiltSensor#impactCount
54
+ * @type {object}
55
+ * @param {number} x
56
+ * @param {number} y
57
+ * @param {number} z
58
+ */
59
+ this.notify("impactCount", { x, y, z });
60
+ break;
61
+ case Mode.CAL:
62
+ if (message.length !== (this.isWeDo2SmartHub ? 5 : 7)) {
63
+ // if mode of device has not changed to this._mode yet
64
+ break;
65
+ }
66
+ const ax = message.readInt8(this.isWeDo2SmartHub ? 2 : 4);
67
+ const ay = message.readInt8(this.isWeDo2SmartHub ? 3 : 5);
68
+ const az = message.readInt8(this.isWeDo2SmartHub ? 4 : 6);
69
+ const con = 1000 / (45 * Math.sqrt(2)); // convert to mG
70
+ x = con * ax;
71
+ y = con * ay;
72
+ z = con * az;
73
+ if (ax === 45) {
74
+ x = con * Math.sqrt(2 * 45 ** 2 - ay ** 2 - az ** 2);
75
+ }
76
+ else if (ax === -45) {
77
+ x = -con * Math.sqrt(2 * 45 ** 2 - ay ** 2 - az ** 2);
78
+ }
79
+ if (ay === 45) {
80
+ y = con * Math.sqrt(2 * 45 ** 2 - ax ** 2 - az ** 2);
81
+ }
82
+ else if (ay === -45) {
83
+ y = -con * Math.sqrt(2 * 45 ** 2 - ax ** 2 - az ** 2);
84
+ }
85
+ if (az === 45) {
86
+ z = con * Math.sqrt(2 * 45 ** 2 - ax ** 2 - ay ** 2);
87
+ }
88
+ else if (az === -45) {
89
+ z = -con * Math.sqrt(2 * 45 ** 2 - ax ** 2 - ay ** 2);
90
+ }
91
+ /**
92
+ * Emits when tilt sensor detects acceleration. Measured in mG.
93
+ * @event TiltSensor#accel
94
+ * @type {object}
95
+ * @param {number} x
96
+ * @param {number} y
97
+ * @param {number} z
98
+ */
99
+ this.notify("accel", { x, y, z });
100
+ break;
101
+ }
102
+ }
103
+ }
104
+ export var Mode;
105
+ (function (Mode) {
106
+ Mode[Mode["TILT"] = 0] = "TILT";
107
+ Mode[Mode["DIRECTION"] = 1] = "DIRECTION";
108
+ Mode[Mode["CRASH"] = 2] = "CRASH";
109
+ Mode[Mode["CAL"] = 3] = "CAL";
110
+ })(Mode || (Mode = {}));
111
+ export const ModeMap = {
112
+ "tilt": Mode.TILT,
113
+ "direction": Mode.DIRECTION,
114
+ "impactCount": Mode.CRASH,
115
+ "accel": Mode.CAL
116
+ };
117
+ //# sourceMappingURL=tiltsensor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tiltsensor.js","sourceRoot":"","sources":["../../src/devices/tiltsensor.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { BasicMotor } from "./basicmotor";
2
- import { IDeviceInterface } from "../interfaces";
1
+ import { BasicMotor } from "./basicmotor.js";
2
+ import { IDeviceInterface } from "../interfaces.js";
3
3
  /**
4
4
  * @class TrainMotor
5
5
  * @extends BasicMotor
@@ -7,3 +7,4 @@ import { IDeviceInterface } from "../interfaces";
7
7
  export declare class TrainMotor extends BasicMotor {
8
8
  constructor(hub: IDeviceInterface, portId: number);
9
9
  }
10
+ //# sourceMappingURL=trainmotor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trainmotor.d.ts","sourceRoot":"","sources":["../../src/devices/trainmotor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAIpD;;;GAGG;AACH,qBAAa,UAAW,SAAQ,UAAU;gBAEzB,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM;CAIrD"}
@@ -0,0 +1,12 @@
1
+ import { BasicMotor } from "./basicmotor.js";
2
+ import * as Consts from "../consts.js";
3
+ /**
4
+ * @class TrainMotor
5
+ * @extends BasicMotor
6
+ */
7
+ export class TrainMotor extends BasicMotor {
8
+ constructor(hub, portId) {
9
+ super(hub, portId, {}, Consts.DeviceType.TRAIN_MOTOR);
10
+ }
11
+ }
12
+ //# sourceMappingURL=trainmotor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trainmotor.js","sourceRoot":"","sources":["../../src/devices/trainmotor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AAEvC;;;GAGG;AACH,MAAM,OAAO,UAAW,SAAQ,UAAU;IAEtC,YAAa,GAAqB,EAAE,MAAc;QAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC1D,CAAC;CAEJ"}
@@ -1,6 +1,5 @@
1
- /// <reference types="node" />
2
- import { Device } from "./device";
3
- import { IDeviceInterface } from "../interfaces";
1
+ import { Device } from "./device.js";
2
+ import { IDeviceInterface } from "../interfaces.js";
4
3
  /**
5
4
  * @class VoltageSensor
6
5
  * @extends Device
@@ -15,3 +14,4 @@ export declare enum Mode {
15
14
  export declare const ModeMap: {
16
15
  [event: string]: number;
17
16
  };
17
+ //# sourceMappingURL=voltagesensor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"voltagesensor.d.ts","sourceRoot":"","sources":["../../src/devices/voltagesensor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAIpD;;;GAGG;AACH,qBAAa,aAAc,SAAQ,MAAM;gBAExB,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM;IAI3C,OAAO,CAAE,OAAO,EAAE,MAAM;CA8BlC;AAED,oBAAY,IAAI;IACZ,OAAO,IAAO;CACjB;AAED,eAAO,MAAM,OAAO,EAAE;IAAC,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAE7C,CAAC"}
@@ -1,38 +1,12 @@
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 (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.ModeMap = exports.Mode = exports.VoltageSensor = void 0;
27
- const device_1 = require("./device");
28
- const Consts = __importStar(require("../consts"));
1
+ import { Device } from "./device.js";
2
+ import * as Consts from "../consts.js";
29
3
  /**
30
4
  * @class VoltageSensor
31
5
  * @extends Device
32
6
  */
33
- class VoltageSensor extends device_1.Device {
7
+ export class VoltageSensor extends Device {
34
8
  constructor(hub, portId) {
35
- super(hub, portId, exports.ModeMap, Consts.DeviceType.VOLTAGE_SENSOR);
9
+ super(hub, portId, ModeMap, Consts.DeviceType.VOLTAGE_SENSOR);
36
10
  }
37
11
  receive(message) {
38
12
  const mode = this._mode;
@@ -64,12 +38,11 @@ class VoltageSensor extends device_1.Device {
64
38
  }
65
39
  }
66
40
  }
67
- exports.VoltageSensor = VoltageSensor;
68
- var Mode;
41
+ export var Mode;
69
42
  (function (Mode) {
70
43
  Mode[Mode["VOLTAGE"] = 0] = "VOLTAGE";
71
- })(Mode || (exports.Mode = Mode = {}));
72
- exports.ModeMap = {
44
+ })(Mode || (Mode = {}));
45
+ export const ModeMap = {
73
46
  "voltage": Mode.VOLTAGE
74
47
  };
75
48
  const MaxVoltageValue = {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"voltagesensor.js","sourceRoot":"","sources":["../../src/devices/voltagesensor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrC,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AAEvC;;;GAGG;AACH,MAAM,OAAO,aAAc,SAAQ,MAAM;IAErC,YAAa,GAAqB,EAAE,MAAc;QAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IAClE,CAAC;IAEM,OAAO,CAAE,OAAe;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QAExB,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,IAAI,CAAC,OAAO;gBACb,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;oBAC5C,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACJ,IAAI,eAAe,GAAG,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACrD,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;wBAChC,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC9D,CAAC;oBACD,IAAI,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACjD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;wBAC9B,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC1D,CAAC;oBACD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,eAAe,GAAG,aAAa,CAAC;oBAC1E;;;;;uBAKG;oBACH,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;gBACxC,CAAC;gBACD,MAAM;QACd,CAAC;IACL,CAAC;CAEJ;AAED,MAAM,CAAN,IAAY,IAEX;AAFD,WAAY,IAAI;IACZ,qCAAc,CAAA;AAClB,CAAC,EAFW,IAAI,KAAJ,IAAI,QAEf;AAED,MAAM,CAAC,MAAM,OAAO,GAA8B;IAC9C,SAAS,EAAE,IAAI,CAAC,OAAO;CAC1B,CAAC;AAEF,MAAM,eAAe,GAAgC;IACjD,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK;IAC/B,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,GAAG;IACtC,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,GAAG;CACvC,CAAC;AAEF,MAAM,aAAa,GAAgC;IAC/C,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI;IAC9B,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,IAAI;IACvC,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,IAAI;IACrC,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,IAAI;CAC5C,CAAC"}
@@ -1,9 +1,7 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
1
  import { EventEmitter } from "events";
4
- import { IBLEAbstraction } from "../interfaces";
5
- import { Device } from "../devices/device";
6
- import * as Consts from "../consts";
2
+ import { IBLEAbstraction } from "../interfaces.js";
3
+ import { Device } from "../devices/device.js";
4
+ import * as Consts from "../consts.js";
7
5
  /**
8
6
  * @class BaseHub
9
7
  * @extends EventEmitter
@@ -85,19 +83,16 @@ export declare class BaseHub extends EventEmitter {
85
83
  get rssi(): number;
86
84
  /**
87
85
  * Connect to the Hub.
88
- * @method Hub#connect
89
86
  * @returns {Promise} Resolved upon successful connect.
90
87
  */
91
88
  connect(): Promise<void>;
92
89
  /**
93
90
  * Disconnect the Hub.
94
- * @method Hub#disconnect
95
91
  * @returns {Promise} Resolved upon successful disconnect.
96
92
  */
97
93
  disconnect(): Promise<void>;
98
94
  /**
99
95
  * Retrieves the device attached to a given port.
100
- * @method Hub#getDeviceAtPort
101
96
  * @param {string} portName The name of the port to retrieve the device from.
102
97
  * @returns {Device | undefined} The device attached to the port.
103
98
  */
@@ -106,20 +101,17 @@ export declare class BaseHub extends EventEmitter {
106
101
  * Retrieves the device attached to a given port, waiting until one is attached if there isn't one.
107
102
  *
108
103
  * Note: If a device is never attached, the returned promise may never resolve.
109
- * @method Hub#waitForDeviceAtPort
110
104
  * @param {string} portName The name of the port to retrieve the device from.
111
105
  * @returns {Promise} Resolved once a device is attached, or resolved immediately if a device is already attached.
112
106
  */
113
107
  waitForDeviceAtPort(portName: string): Promise<unknown>;
114
108
  /**
115
109
  * Retrieves all attached devices.
116
- * @method Hub#getDevices
117
110
  * @returns {Device[]} Array of all attached devices.
118
111
  */
119
112
  getDevices(): Device[];
120
113
  /**
121
114
  * Retrieves an array of devices of the specified type.
122
- * @method Hub#getDevicesByType
123
115
  * @param {number} deviceType The device type to lookup.
124
116
  * @returns {Device[]} Array of all devices of the specified type.
125
117
  */
@@ -128,7 +120,6 @@ export declare class BaseHub extends EventEmitter {
128
120
  * Retrieves the first device attached of the specified type, waiting until one is attached if there isn't one.
129
121
  *
130
122
  * Note: If a device is never attached, the returned promise may never resolve.
131
- * @method Hub#waitForDeviceByType
132
123
  * @param {number} deviceType The device type to lookup.
133
124
  * @returns {Promise} Resolved once a device is attached, or resolved immediately if a device is already attached.
134
125
  */
@@ -139,7 +130,6 @@ export declare class BaseHub extends EventEmitter {
139
130
  * Sleep a given amount of time.
140
131
  *
141
132
  * Note: This is a helper method to make it easier to add delays into a chain of commands.
142
- * @method Hub#sleep
143
133
  * @param {number} delay How long to sleep (in milliseconds).
144
134
  * @returns {Promise} Resolved after the delay is finished.
145
135
  */
@@ -148,7 +138,6 @@ export declare class BaseHub extends EventEmitter {
148
138
  * Wait until a given list of concurrently running commands are complete.
149
139
  *
150
140
  * Note: This is a helper method to make it easier to wait for concurrent commands to complete.
151
- * @method Hub#wait
152
141
  * @param {Array<Promise<any>>} commands Array of executing commands.
153
142
  * @returns {Promise} Resolved after the commands are finished.
154
143
  */
@@ -157,8 +146,10 @@ export declare class BaseHub extends EventEmitter {
157
146
  subscribe(portId: number, deviceType: number, mode: number): void;
158
147
  unsubscribe(portId: number, deviceType: number, mode: number): void;
159
148
  manuallyAttachDevice(deviceType: number, portId: number): Device;
149
+ manuallyDetachDevice(portId: number): Device | undefined;
160
150
  protected _attachDevice(device: Device): void;
161
151
  protected _detachDevice(device: Device): void;
162
152
  protected _createDevice(deviceType: number, portId: number): Device;
163
153
  protected _getDeviceByPortId(portId: number): Device;
164
154
  }
155
+ //# sourceMappingURL=basehub.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"basehub.d.ts","sourceRoot":"","sources":["../../src/hubs/basehub.ts"],"names":[],"mappings":"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"}