@devicefarmer/adbkit 2.11.3 → 3.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (445) hide show
  1. package/.github/dependabot.yml +46 -0
  2. package/CONTRIBUTING.md +28 -0
  3. package/README.md +749 -759
  4. package/bin/adbkit +1 -1
  5. package/dist/index.d.ts +24 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +19 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/package.json +84 -0
  10. package/dist/src/Callback.d.ts +2 -0
  11. package/dist/src/Callback.d.ts.map +1 -0
  12. package/dist/src/Callback.js +3 -0
  13. package/dist/src/Callback.js.map +1 -0
  14. package/dist/src/ClientOptions.d.ts +6 -0
  15. package/dist/src/ClientOptions.d.ts.map +1 -0
  16. package/dist/src/ClientOptions.js +3 -0
  17. package/dist/src/ClientOptions.js.map +1 -0
  18. package/dist/src/CpuStats.d.ts +17 -0
  19. package/dist/src/CpuStats.d.ts.map +1 -0
  20. package/dist/src/CpuStats.js +3 -0
  21. package/dist/src/CpuStats.js.map +1 -0
  22. package/dist/src/Device.d.ts +5 -0
  23. package/dist/src/Device.d.ts.map +1 -0
  24. package/dist/src/Device.js +3 -0
  25. package/dist/src/Device.js.map +1 -0
  26. package/dist/src/DeviceWithPath.d.ts +9 -0
  27. package/dist/src/DeviceWithPath.d.ts.map +1 -0
  28. package/dist/src/DeviceWithPath.js +3 -0
  29. package/dist/src/DeviceWithPath.js.map +1 -0
  30. package/dist/src/ExtendedPublicKey.d.ts +7 -0
  31. package/dist/src/ExtendedPublicKey.d.ts.map +1 -0
  32. package/dist/src/ExtendedPublicKey.js +3 -0
  33. package/dist/src/ExtendedPublicKey.js.map +1 -0
  34. package/dist/src/Features.d.ts +2 -0
  35. package/dist/src/Features.d.ts.map +1 -0
  36. package/dist/src/Features.js +3 -0
  37. package/dist/src/Features.js.map +1 -0
  38. package/dist/src/Forward.d.ts +6 -0
  39. package/dist/src/Forward.d.ts.map +1 -0
  40. package/dist/src/Forward.js +3 -0
  41. package/dist/src/Forward.js.map +1 -0
  42. package/dist/src/FramebufferMeta.d.ts +60 -0
  43. package/dist/src/FramebufferMeta.d.ts.map +1 -0
  44. package/dist/src/FramebufferMeta.js +3 -0
  45. package/dist/src/FramebufferMeta.js.map +1 -0
  46. package/dist/src/FramebufferStreamWithMeta.d.ts +10 -0
  47. package/dist/src/FramebufferStreamWithMeta.d.ts.map +1 -0
  48. package/dist/src/FramebufferStreamWithMeta.js +3 -0
  49. package/dist/src/FramebufferStreamWithMeta.js.map +1 -0
  50. package/dist/src/Properties.d.ts +2 -0
  51. package/dist/src/Properties.d.ts.map +1 -0
  52. package/dist/src/Properties.js +3 -0
  53. package/dist/src/Properties.js.map +1 -0
  54. package/dist/src/Reverse.d.ts +5 -0
  55. package/dist/src/Reverse.d.ts.map +1 -0
  56. package/dist/src/Reverse.js +3 -0
  57. package/dist/src/Reverse.js.map +1 -0
  58. package/dist/src/SocketOptions.d.ts +6 -0
  59. package/dist/src/SocketOptions.d.ts.map +1 -0
  60. package/dist/src/SocketOptions.js +3 -0
  61. package/dist/src/SocketOptions.js.map +1 -0
  62. package/dist/src/StartActivityOptions.d.ts +12 -0
  63. package/dist/src/StartActivityOptions.d.ts.map +1 -0
  64. package/dist/src/StartActivityOptions.js +3 -0
  65. package/dist/src/StartActivityOptions.js.map +1 -0
  66. package/dist/src/StartServiceOptions.d.ts +57 -0
  67. package/dist/src/StartServiceOptions.d.ts.map +1 -0
  68. package/dist/src/StartServiceOptions.js +3 -0
  69. package/dist/src/StartServiceOptions.js.map +1 -0
  70. package/dist/src/TrackerChangeSet.d.ts +7 -0
  71. package/dist/src/TrackerChangeSet.d.ts.map +1 -0
  72. package/dist/src/TrackerChangeSet.js +3 -0
  73. package/dist/src/TrackerChangeSet.js.map +1 -0
  74. package/dist/src/WithToString.d.ts +4 -0
  75. package/dist/src/WithToString.d.ts.map +1 -0
  76. package/dist/src/WithToString.js +3 -0
  77. package/dist/src/WithToString.js.map +1 -0
  78. package/dist/src/adb/DeviceClient.d.ts +376 -0
  79. package/dist/src/adb/DeviceClient.d.ts.map +1 -0
  80. package/dist/src/adb/DeviceClient.js +517 -0
  81. package/dist/src/adb/DeviceClient.js.map +1 -0
  82. package/dist/src/adb/auth.d.ts +8 -0
  83. package/dist/src/adb/auth.d.ts.map +1 -0
  84. package/dist/src/adb/auth.js +87 -0
  85. package/dist/src/adb/auth.js.map +1 -0
  86. package/dist/src/adb/client.d.ts +29 -0
  87. package/dist/src/adb/client.d.ts.map +1 -0
  88. package/dist/src/adb/client.js +73 -0
  89. package/dist/src/adb/client.js.map +1 -0
  90. package/dist/src/adb/command/host/connect.d.ts +6 -0
  91. package/dist/src/adb/command/host/connect.d.ts.map +1 -0
  92. package/dist/src/adb/command/host/connect.js +36 -0
  93. package/dist/src/adb/command/host/connect.js.map +1 -0
  94. package/dist/src/adb/command/host/devices.d.ts +10 -0
  95. package/dist/src/adb/command/host/devices.d.ts.map +1 -0
  96. package/dist/src/adb/command/host/devices.js +40 -0
  97. package/dist/src/adb/command/host/devices.js.map +1 -0
  98. package/dist/src/adb/command/host/deviceswithpaths.d.ts +9 -0
  99. package/dist/src/adb/command/host/deviceswithpaths.d.ts.map +1 -0
  100. package/dist/src/adb/command/host/deviceswithpaths.js +46 -0
  101. package/dist/src/adb/command/host/deviceswithpaths.js.map +1 -0
  102. package/dist/src/adb/command/host/disconnect.d.ts +6 -0
  103. package/dist/src/adb/command/host/disconnect.d.ts.map +1 -0
  104. package/dist/src/adb/command/host/disconnect.js +35 -0
  105. package/dist/src/adb/command/host/disconnect.js.map +1 -0
  106. package/dist/src/adb/command/host/index.d.ts +9 -0
  107. package/dist/src/adb/command/host/index.d.ts.map +1 -0
  108. package/dist/src/adb/command/host/index.js +23 -0
  109. package/dist/src/adb/command/host/index.js.map +1 -0
  110. package/dist/src/adb/command/host/kill.d.ts +6 -0
  111. package/dist/src/adb/command/host/kill.d.ts.map +1 -0
  112. package/dist/src/adb/command/host/kill.js +24 -0
  113. package/dist/src/adb/command/host/kill.js.map +1 -0
  114. package/dist/src/adb/command/host/trackdevices.d.ts +6 -0
  115. package/dist/src/adb/command/host/trackdevices.d.ts.map +1 -0
  116. package/dist/src/adb/command/host/trackdevices.js +27 -0
  117. package/dist/src/adb/command/host/trackdevices.js.map +1 -0
  118. package/dist/src/adb/command/host/transport.d.ts +6 -0
  119. package/dist/src/adb/command/host/transport.d.ts.map +1 -0
  120. package/dist/src/adb/command/host/transport.js +24 -0
  121. package/dist/src/adb/command/host/transport.js.map +1 -0
  122. package/dist/src/adb/command/host/version.d.ts +7 -0
  123. package/dist/src/adb/command/host/version.d.ts.map +1 -0
  124. package/dist/src/adb/command/host/version.js +29 -0
  125. package/dist/src/adb/command/host/version.js.map +1 -0
  126. package/dist/src/adb/command/host-serial/forward.d.ts +6 -0
  127. package/dist/src/adb/command/host-serial/forward.d.ts.map +1 -0
  128. package/dist/src/adb/command/host-serial/forward.js +33 -0
  129. package/dist/src/adb/command/host-serial/forward.js.map +1 -0
  130. package/dist/src/adb/command/host-serial/getdevicepath.d.ts +6 -0
  131. package/dist/src/adb/command/host-serial/getdevicepath.d.ts.map +1 -0
  132. package/dist/src/adb/command/host-serial/getdevicepath.js +26 -0
  133. package/dist/src/adb/command/host-serial/getdevicepath.js.map +1 -0
  134. package/dist/src/adb/command/host-serial/getserialno.d.ts +6 -0
  135. package/dist/src/adb/command/host-serial/getserialno.d.ts.map +1 -0
  136. package/dist/src/adb/command/host-serial/getserialno.js +24 -0
  137. package/dist/src/adb/command/host-serial/getserialno.js.map +1 -0
  138. package/dist/src/adb/command/host-serial/getstate.d.ts +6 -0
  139. package/dist/src/adb/command/host-serial/getstate.d.ts.map +1 -0
  140. package/dist/src/adb/command/host-serial/getstate.js +24 -0
  141. package/dist/src/adb/command/host-serial/getstate.js.map +1 -0
  142. package/dist/src/adb/command/host-serial/index.d.ts +7 -0
  143. package/dist/src/adb/command/host-serial/index.d.ts.map +1 -0
  144. package/dist/src/adb/command/host-serial/index.js +19 -0
  145. package/dist/src/adb/command/host-serial/index.js.map +1 -0
  146. package/dist/src/adb/command/host-serial/listforwards.d.ts +8 -0
  147. package/dist/src/adb/command/host-serial/listforwards.d.ts.map +1 -0
  148. package/dist/src/adb/command/host-serial/listforwards.js +34 -0
  149. package/dist/src/adb/command/host-serial/listforwards.js.map +1 -0
  150. package/dist/src/adb/command/host-serial/waitfordevice.d.ts +6 -0
  151. package/dist/src/adb/command/host-serial/waitfordevice.d.ts.map +1 -0
  152. package/dist/src/adb/command/host-serial/waitfordevice.js +33 -0
  153. package/dist/src/adb/command/host-serial/waitfordevice.js.map +1 -0
  154. package/dist/src/adb/command/host-transport/clear.d.ts +6 -0
  155. package/dist/src/adb/command/host-transport/clear.d.ts.map +1 -0
  156. package/dist/src/adb/command/host-transport/clear.js +39 -0
  157. package/dist/src/adb/command/host-transport/clear.js.map +1 -0
  158. package/dist/src/adb/command/host-transport/framebuffer.d.ts +12 -0
  159. package/dist/src/adb/command/host-transport/framebuffer.d.ts.map +1 -0
  160. package/dist/src/adb/command/host-transport/framebuffer.js +113 -0
  161. package/dist/src/adb/command/host-transport/framebuffer.js.map +1 -0
  162. package/dist/src/adb/command/host-transport/getfeatures.d.ts +8 -0
  163. package/dist/src/adb/command/host-transport/getfeatures.d.ts.map +1 -0
  164. package/dist/src/adb/command/host-transport/getfeatures.js +35 -0
  165. package/dist/src/adb/command/host-transport/getfeatures.js.map +1 -0
  166. package/dist/src/adb/command/host-transport/getpackages.d.ts +7 -0
  167. package/dist/src/adb/command/host-transport/getpackages.d.ts.map +1 -0
  168. package/dist/src/adb/command/host-transport/getpackages.js +45 -0
  169. package/dist/src/adb/command/host-transport/getpackages.js.map +1 -0
  170. package/dist/src/adb/command/host-transport/getproperties.d.ts +8 -0
  171. package/dist/src/adb/command/host-transport/getproperties.d.ts.map +1 -0
  172. package/dist/src/adb/command/host-transport/getproperties.js +37 -0
  173. package/dist/src/adb/command/host-transport/getproperties.js.map +1 -0
  174. package/dist/src/adb/command/host-transport/index.d.ts +28 -0
  175. package/dist/src/adb/command/host-transport/index.d.ts.map +1 -0
  176. package/dist/src/adb/command/host-transport/index.js +61 -0
  177. package/dist/src/adb/command/host-transport/index.js.map +1 -0
  178. package/dist/src/adb/command/host-transport/install.d.ts +6 -0
  179. package/dist/src/adb/command/host-transport/install.d.ts.map +1 -0
  180. package/dist/src/adb/command/host-transport/install.js +42 -0
  181. package/dist/src/adb/command/host-transport/install.js.map +1 -0
  182. package/dist/src/adb/command/host-transport/isinstalled.d.ts +6 -0
  183. package/dist/src/adb/command/host-transport/isinstalled.d.ts.map +1 -0
  184. package/dist/src/adb/command/host-transport/isinstalled.js +37 -0
  185. package/dist/src/adb/command/host-transport/isinstalled.js.map +1 -0
  186. package/dist/src/adb/command/host-transport/listreverses.d.ts +8 -0
  187. package/dist/src/adb/command/host-transport/listreverses.d.ts.map +1 -0
  188. package/dist/src/adb/command/host-transport/listreverses.js +38 -0
  189. package/dist/src/adb/command/host-transport/listreverses.js.map +1 -0
  190. package/dist/src/adb/command/host-transport/local.d.ts +8 -0
  191. package/dist/src/adb/command/host-transport/local.d.ts.map +1 -0
  192. package/dist/src/adb/command/host-transport/local.js +24 -0
  193. package/dist/src/adb/command/host-transport/local.js.map +1 -0
  194. package/dist/src/adb/command/host-transport/log.d.ts +8 -0
  195. package/dist/src/adb/command/host-transport/log.d.ts.map +1 -0
  196. package/dist/src/adb/command/host-transport/log.js +24 -0
  197. package/dist/src/adb/command/host-transport/log.js.map +1 -0
  198. package/dist/src/adb/command/host-transport/logcat.d.ts +9 -0
  199. package/dist/src/adb/command/host-transport/logcat.d.ts.map +1 -0
  200. package/dist/src/adb/command/host-transport/logcat.js +37 -0
  201. package/dist/src/adb/command/host-transport/logcat.js.map +1 -0
  202. package/dist/src/adb/command/host-transport/monkey.d.ts +8 -0
  203. package/dist/src/adb/command/host-transport/monkey.d.ts.map +1 -0
  204. package/dist/src/adb/command/host-transport/monkey.js +50 -0
  205. package/dist/src/adb/command/host-transport/monkey.js.map +1 -0
  206. package/dist/src/adb/command/host-transport/reboot.d.ts +6 -0
  207. package/dist/src/adb/command/host-transport/reboot.d.ts.map +1 -0
  208. package/dist/src/adb/command/host-transport/reboot.js +24 -0
  209. package/dist/src/adb/command/host-transport/reboot.js.map +1 -0
  210. package/dist/src/adb/command/host-transport/remount.d.ts +6 -0
  211. package/dist/src/adb/command/host-transport/remount.d.ts.map +1 -0
  212. package/dist/src/adb/command/host-transport/remount.js +24 -0
  213. package/dist/src/adb/command/host-transport/remount.js.map +1 -0
  214. package/dist/src/adb/command/host-transport/reverse.d.ts +6 -0
  215. package/dist/src/adb/command/host-transport/reverse.d.ts.map +1 -0
  216. package/dist/src/adb/command/host-transport/reverse.js +33 -0
  217. package/dist/src/adb/command/host-transport/reverse.js.map +1 -0
  218. package/dist/src/adb/command/host-transport/root.d.ts +6 -0
  219. package/dist/src/adb/command/host-transport/root.d.ts.map +1 -0
  220. package/dist/src/adb/command/host-transport/root.js +32 -0
  221. package/dist/src/adb/command/host-transport/root.js.map +1 -0
  222. package/dist/src/adb/command/host-transport/screencap.d.ts +8 -0
  223. package/dist/src/adb/command/host-transport/screencap.d.ts.map +1 -0
  224. package/dist/src/adb/command/host-transport/screencap.js +36 -0
  225. package/dist/src/adb/command/host-transport/screencap.js.map +1 -0
  226. package/dist/src/adb/command/host-transport/shell.d.ts +9 -0
  227. package/dist/src/adb/command/host-transport/shell.d.ts.map +1 -0
  228. package/dist/src/adb/command/host-transport/shell.js +27 -0
  229. package/dist/src/adb/command/host-transport/shell.js.map +1 -0
  230. package/dist/src/adb/command/host-transport/startactivity.d.ts +13 -0
  231. package/dist/src/adb/command/host-transport/startactivity.d.ts.map +1 -0
  232. package/dist/src/adb/command/host-transport/startactivity.js +166 -0
  233. package/dist/src/adb/command/host-transport/startactivity.js.map +1 -0
  234. package/dist/src/adb/command/host-transport/startservice.d.ts +7 -0
  235. package/dist/src/adb/command/host-transport/startservice.d.ts.map +1 -0
  236. package/dist/src/adb/command/host-transport/startservice.js +17 -0
  237. package/dist/src/adb/command/host-transport/startservice.js.map +1 -0
  238. package/dist/src/adb/command/host-transport/sync.d.ts +7 -0
  239. package/dist/src/adb/command/host-transport/sync.d.ts.map +1 -0
  240. package/dist/src/adb/command/host-transport/sync.js +25 -0
  241. package/dist/src/adb/command/host-transport/sync.js.map +1 -0
  242. package/dist/src/adb/command/host-transport/tcp.d.ts +8 -0
  243. package/dist/src/adb/command/host-transport/tcp.d.ts.map +1 -0
  244. package/dist/src/adb/command/host-transport/tcp.js +24 -0
  245. package/dist/src/adb/command/host-transport/tcp.js.map +1 -0
  246. package/dist/src/adb/command/host-transport/tcpip.d.ts +6 -0
  247. package/dist/src/adb/command/host-transport/tcpip.d.ts.map +1 -0
  248. package/dist/src/adb/command/host-transport/tcpip.js +32 -0
  249. package/dist/src/adb/command/host-transport/tcpip.js.map +1 -0
  250. package/dist/src/adb/command/host-transport/trackjdwp.d.ts +7 -0
  251. package/dist/src/adb/command/host-transport/trackjdwp.d.ts.map +1 -0
  252. package/dist/src/adb/command/host-transport/trackjdwp.js +25 -0
  253. package/dist/src/adb/command/host-transport/trackjdwp.js.map +1 -0
  254. package/dist/src/adb/command/host-transport/uninstall.d.ts +6 -0
  255. package/dist/src/adb/command/host-transport/uninstall.d.ts.map +1 -0
  256. package/dist/src/adb/command/host-transport/uninstall.js +40 -0
  257. package/dist/src/adb/command/host-transport/uninstall.js.map +1 -0
  258. package/dist/src/adb/command/host-transport/usb.d.ts +6 -0
  259. package/dist/src/adb/command/host-transport/usb.d.ts.map +1 -0
  260. package/dist/src/adb/command/host-transport/usb.js +32 -0
  261. package/dist/src/adb/command/host-transport/usb.js.map +1 -0
  262. package/dist/src/adb/command/host-transport/waitbootcomplete.d.ts +6 -0
  263. package/dist/src/adb/command/host-transport/waitbootcomplete.d.ts.map +1 -0
  264. package/dist/src/adb/command/host-transport/waitbootcomplete.js +27 -0
  265. package/dist/src/adb/command/host-transport/waitbootcomplete.js.map +1 -0
  266. package/dist/src/adb/command.d.ts +17 -0
  267. package/dist/src/adb/command.d.ts.map +1 -0
  268. package/dist/src/adb/command.js +43 -0
  269. package/dist/src/adb/command.js.map +1 -0
  270. package/dist/src/adb/connection.d.ts +24 -0
  271. package/dist/src/adb/connection.d.ts.map +1 -0
  272. package/dist/src/adb/connection.js +115 -0
  273. package/dist/src/adb/connection.js.map +1 -0
  274. package/dist/src/adb/dump.d.ts +4 -0
  275. package/dist/src/adb/dump.d.ts.map +1 -0
  276. package/dist/src/adb/dump.js +38 -0
  277. package/dist/src/adb/dump.js.map +1 -0
  278. package/dist/src/adb/framebuffer/rgbtransform.d.ts +16 -0
  279. package/dist/src/adb/framebuffer/rgbtransform.d.ts.map +1 -0
  280. package/dist/src/adb/framebuffer/rgbtransform.js +47 -0
  281. package/dist/src/adb/framebuffer/rgbtransform.js.map +1 -0
  282. package/dist/src/adb/jdwptracker.d.ts +41 -0
  283. package/dist/src/adb/jdwptracker.d.ts.map +1 -0
  284. package/dist/src/adb/jdwptracker.js +85 -0
  285. package/dist/src/adb/jdwptracker.js.map +1 -0
  286. package/dist/src/adb/keycode.d.ts +292 -0
  287. package/dist/src/adb/keycode.d.ts.map +1 -0
  288. package/dist/src/adb/keycode.js +298 -0
  289. package/dist/src/adb/keycode.js.map +1 -0
  290. package/dist/src/adb/linetransform.d.ts +17 -0
  291. package/dist/src/adb/linetransform.d.ts.map +1 -0
  292. package/dist/src/adb/linetransform.js +93 -0
  293. package/dist/src/adb/linetransform.js.map +1 -0
  294. package/dist/src/adb/parser.d.ts +37 -0
  295. package/dist/src/adb/parser.d.ts.map +1 -0
  296. package/dist/src/adb/parser.js +269 -0
  297. package/dist/src/adb/parser.js.map +1 -0
  298. package/dist/src/adb/proc/stat.d.ts +30 -0
  299. package/dist/src/adb/proc/stat.d.ts.map +1 -0
  300. package/dist/src/adb/proc/stat.js +131 -0
  301. package/dist/src/adb/proc/stat.js.map +1 -0
  302. package/dist/src/adb/protocol.d.ts +17 -0
  303. package/dist/src/adb/protocol.d.ts.map +1 -0
  304. package/dist/src/adb/protocol.js +29 -0
  305. package/dist/src/adb/protocol.js.map +1 -0
  306. package/dist/src/adb/sync/entry.d.ts +8 -0
  307. package/dist/src/adb/sync/entry.d.ts.map +1 -0
  308. package/dist/src/adb/sync/entry.js +16 -0
  309. package/dist/src/adb/sync/entry.js.map +1 -0
  310. package/dist/src/adb/sync/pulltransfer.d.ts +10 -0
  311. package/dist/src/adb/sync/pulltransfer.d.ts.map +1 -0
  312. package/dist/src/adb/sync/pulltransfer.js +24 -0
  313. package/dist/src/adb/sync/pulltransfer.js.map +1 -0
  314. package/dist/src/adb/sync/pushtransfer.d.ts +13 -0
  315. package/dist/src/adb/sync/pushtransfer.d.ts.map +1 -0
  316. package/dist/src/adb/sync/pushtransfer.js +30 -0
  317. package/dist/src/adb/sync/pushtransfer.js.map +1 -0
  318. package/dist/src/adb/sync/stats.d.ts +23 -0
  319. package/dist/src/adb/sync/stats.d.ts.map +1 -0
  320. package/dist/src/adb/sync/stats.js +54 -0
  321. package/dist/src/adb/sync/stats.js.map +1 -0
  322. package/dist/src/adb/sync.d.ts +31 -0
  323. package/dist/src/adb/sync.d.ts.map +1 -0
  324. package/dist/src/adb/sync.js +322 -0
  325. package/dist/src/adb/sync.js.map +1 -0
  326. package/dist/src/adb/tcpusb/packet.d.ts +27 -0
  327. package/dist/src/adb/tcpusb/packet.d.ts.map +1 -0
  328. package/dist/src/adb/tcpusb/packet.js +94 -0
  329. package/dist/src/adb/tcpusb/packet.js.map +1 -0
  330. package/dist/src/adb/tcpusb/packetreader.d.ts +26 -0
  331. package/dist/src/adb/tcpusb/packetreader.d.ts.map +1 -0
  332. package/dist/src/adb/tcpusb/packetreader.js +100 -0
  333. package/dist/src/adb/tcpusb/packetreader.js.map +1 -0
  334. package/dist/src/adb/tcpusb/rollingcounter.d.ts +8 -0
  335. package/dist/src/adb/tcpusb/rollingcounter.d.ts.map +1 -0
  336. package/dist/src/adb/tcpusb/rollingcounter.js +17 -0
  337. package/dist/src/adb/tcpusb/rollingcounter.js.map +1 -0
  338. package/dist/src/adb/tcpusb/server.d.ts +19 -0
  339. package/dist/src/adb/tcpusb/server.d.ts.map +1 -0
  340. package/dist/src/adb/tcpusb/server.js +78 -0
  341. package/dist/src/adb/tcpusb/server.js.map +1 -0
  342. package/dist/src/adb/tcpusb/service.d.ts +37 -0
  343. package/dist/src/adb/tcpusb/service.d.ts.map +1 -0
  344. package/dist/src/adb/tcpusb/service.js +173 -0
  345. package/dist/src/adb/tcpusb/service.js.map +1 -0
  346. package/dist/src/adb/tcpusb/servicemap.d.ts +10 -0
  347. package/dist/src/adb/tcpusb/servicemap.d.ts.map +1 -0
  348. package/dist/src/adb/tcpusb/servicemap.js +42 -0
  349. package/dist/src/adb/tcpusb/servicemap.js.map +1 -0
  350. package/dist/src/adb/tcpusb/socket.d.ts +45 -0
  351. package/dist/src/adb/tcpusb/socket.d.ts.map +1 -0
  352. package/dist/src/adb/tcpusb/socket.js +284 -0
  353. package/dist/src/adb/tcpusb/socket.js.map +1 -0
  354. package/dist/src/adb/tracker.d.ts +17 -0
  355. package/dist/src/adb/tracker.d.ts.map +1 -0
  356. package/dist/src/adb/tracker.js +72 -0
  357. package/dist/src/adb/tracker.js.map +1 -0
  358. package/dist/src/adb/util.d.ts +10 -0
  359. package/dist/src/adb/util.d.ts.map +1 -0
  360. package/dist/src/adb/util.js +17 -0
  361. package/dist/src/adb/util.js.map +1 -0
  362. package/dist/src/adb.d.ts +13 -0
  363. package/dist/src/adb.d.ts.map +1 -0
  364. package/dist/src/adb.js +28 -0
  365. package/dist/src/adb.js.map +1 -0
  366. package/dist/src/cli.d.ts +2 -0
  367. package/dist/src/cli.d.ts.map +1 -0
  368. package/dist/src/cli.js +86 -0
  369. package/dist/src/cli.js.map +1 -0
  370. package/dist/src/index.d.ts +19 -0
  371. package/dist/src/index.d.ts.map +1 -0
  372. package/dist/src/index.js +12 -0
  373. package/dist/src/index.js.map +1 -0
  374. package/package.json +53 -33
  375. package/.semaphore/publish.yml +0 -19
  376. package/.semaphore/semaphore.yml +0 -27
  377. package/index.js +0 -4
  378. package/lib/adb/auth.js +0 -78
  379. package/lib/adb/client.js +0 -576
  380. package/lib/adb/command/host/connect.js +0 -46
  381. package/lib/adb/command/host/devices.js +0 -64
  382. package/lib/adb/command/host/deviceswithpaths.js +0 -70
  383. package/lib/adb/command/host/disconnect.js +0 -46
  384. package/lib/adb/command/host/kill.js +0 -36
  385. package/lib/adb/command/host/trackdevices.js +0 -40
  386. package/lib/adb/command/host/transport.js +0 -36
  387. package/lib/adb/command/host/version.js +0 -42
  388. package/lib/adb/command/host-serial/forward.js +0 -45
  389. package/lib/adb/command/host-serial/getdevicepath.js +0 -38
  390. package/lib/adb/command/host-serial/getserialno.js +0 -38
  391. package/lib/adb/command/host-serial/getstate.js +0 -38
  392. package/lib/adb/command/host-serial/listforwards.js +0 -56
  393. package/lib/adb/command/host-serial/waitfordevice.js +0 -45
  394. package/lib/adb/command/host-transport/clear.js +0 -45
  395. package/lib/adb/command/host-transport/framebuffer.js +0 -114
  396. package/lib/adb/command/host-transport/getfeatures.js +0 -51
  397. package/lib/adb/command/host-transport/getpackages.js +0 -51
  398. package/lib/adb/command/host-transport/getproperties.js +0 -51
  399. package/lib/adb/command/host-transport/install.js +0 -48
  400. package/lib/adb/command/host-transport/isinstalled.js +0 -47
  401. package/lib/adb/command/host-transport/listreverses.js +0 -55
  402. package/lib/adb/command/host-transport/local.js +0 -36
  403. package/lib/adb/command/host-transport/log.js +0 -36
  404. package/lib/adb/command/host-transport/logcat.js +0 -48
  405. package/lib/adb/command/host-transport/monkey.js +0 -42
  406. package/lib/adb/command/host-transport/reboot.js +0 -36
  407. package/lib/adb/command/host-transport/remount.js +0 -36
  408. package/lib/adb/command/host-transport/reverse.js +0 -45
  409. package/lib/adb/command/host-transport/root.js +0 -46
  410. package/lib/adb/command/host-transport/screencap.js +0 -52
  411. package/lib/adb/command/host-transport/shell.js +0 -39
  412. package/lib/adb/command/host-transport/startactivity.js +0 -184
  413. package/lib/adb/command/host-transport/startservice.js +0 -33
  414. package/lib/adb/command/host-transport/sync.js +0 -38
  415. package/lib/adb/command/host-transport/tcp.js +0 -36
  416. package/lib/adb/command/host-transport/tcpip.js +0 -46
  417. package/lib/adb/command/host-transport/trackjdwp.js +0 -120
  418. package/lib/adb/command/host-transport/uninstall.js +0 -44
  419. package/lib/adb/command/host-transport/usb.js +0 -46
  420. package/lib/adb/command/host-transport/waitbootcomplete.js +0 -42
  421. package/lib/adb/command.js +0 -56
  422. package/lib/adb/connection.js +0 -117
  423. package/lib/adb/dump.js +0 -15
  424. package/lib/adb/framebuffer/rgbtransform.js +0 -55
  425. package/lib/adb/keycode.js +0 -225
  426. package/lib/adb/linetransform.js +0 -87
  427. package/lib/adb/parser.js +0 -291
  428. package/lib/adb/proc/stat.js +0 -137
  429. package/lib/adb/protocol.js +0 -45
  430. package/lib/adb/sync/entry.js +0 -23
  431. package/lib/adb/sync/pulltransfer.js +0 -31
  432. package/lib/adb/sync/pushtransfer.js +0 -40
  433. package/lib/adb/sync/stats.js +0 -54
  434. package/lib/adb/sync.js +0 -343
  435. package/lib/adb/tcpusb/packet.js +0 -112
  436. package/lib/adb/tcpusb/packetreader.js +0 -121
  437. package/lib/adb/tcpusb/rollingcounter.js +0 -21
  438. package/lib/adb/tcpusb/server.js +0 -79
  439. package/lib/adb/tcpusb/service.js +0 -203
  440. package/lib/adb/tcpusb/servicemap.js +0 -48
  441. package/lib/adb/tcpusb/socket.js +0 -312
  442. package/lib/adb/tracker.js +0 -89
  443. package/lib/adb/util.js +0 -13
  444. package/lib/adb.js +0 -29
  445. package/lib/cli.js +0 -66
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class Packet {
4
+ constructor(command, arg0, arg1, length, check, magic, data) {
5
+ this.command = command;
6
+ this.arg0 = arg0;
7
+ this.arg1 = arg1;
8
+ this.length = length;
9
+ this.check = check;
10
+ this.magic = magic;
11
+ this.data = data;
12
+ }
13
+ static checksum(data) {
14
+ let sum = 0;
15
+ if (data) {
16
+ for (let i = 0, len = data.length; i < len; i++) {
17
+ const char = data[i];
18
+ sum += char;
19
+ }
20
+ }
21
+ return sum;
22
+ }
23
+ static magic(command) {
24
+ // We need the full uint32 range, which ">>> 0" thankfully allows us to use
25
+ return (command ^ 0xffffffff) >>> 0;
26
+ }
27
+ static assemble(command, arg0, arg1, data) {
28
+ if (data) {
29
+ const chunk = Buffer.alloc(24 + data.length);
30
+ chunk.writeUInt32LE(command, 0);
31
+ chunk.writeUInt32LE(arg0, 4);
32
+ chunk.writeUInt32LE(arg1, 8);
33
+ chunk.writeUInt32LE(data.length, 12);
34
+ chunk.writeUInt32LE(Packet.checksum(data), 16);
35
+ chunk.writeUInt32LE(Packet.magic(command), 20);
36
+ data.copy(chunk, 24);
37
+ return chunk;
38
+ }
39
+ else {
40
+ const chunk = Buffer.alloc(24);
41
+ chunk.writeUInt32LE(command, 0);
42
+ chunk.writeUInt32LE(arg0, 4);
43
+ chunk.writeUInt32LE(arg1, 8);
44
+ chunk.writeUInt32LE(0, 12);
45
+ chunk.writeUInt32LE(0, 16);
46
+ chunk.writeUInt32LE(Packet.magic(command), 20);
47
+ return chunk;
48
+ }
49
+ }
50
+ static swap32(n) {
51
+ const buffer = Buffer.alloc(4);
52
+ buffer.writeUInt32LE(n, 0);
53
+ return buffer.readUInt32BE(0);
54
+ }
55
+ verifyChecksum() {
56
+ return this.check === Packet.checksum(this.data);
57
+ }
58
+ verifyMagic() {
59
+ return this.magic === Packet.magic(this.command);
60
+ }
61
+ getType() {
62
+ switch (this.command) {
63
+ case Packet.A_SYNC:
64
+ return 'SYNC';
65
+ case Packet.A_CNXN:
66
+ return 'CNXN';
67
+ case Packet.A_OPEN:
68
+ return 'OPEN';
69
+ case Packet.A_OKAY:
70
+ return 'OKAY';
71
+ case Packet.A_CLSE:
72
+ return 'CLSE';
73
+ case Packet.A_WRTE:
74
+ return 'WRTE';
75
+ case Packet.A_AUTH:
76
+ return 'AUTH';
77
+ default:
78
+ throw new Error('Unknown command {@command}');
79
+ }
80
+ }
81
+ toString() {
82
+ const type = this.getType();
83
+ return `${type} arg0=${this.arg0} arg1=${this.arg1} length=${this.length}`;
84
+ }
85
+ }
86
+ exports.default = Packet;
87
+ Packet.A_SYNC = 0x434e5953;
88
+ Packet.A_CNXN = 0x4e584e43;
89
+ Packet.A_OPEN = 0x4e45504f;
90
+ Packet.A_OKAY = 0x59414b4f;
91
+ Packet.A_CLSE = 0x45534c43;
92
+ Packet.A_WRTE = 0x45545257;
93
+ Packet.A_AUTH = 0x48545541;
94
+ //# sourceMappingURL=packet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packet.js","sourceRoot":"","sources":["../../../../src/adb/tcpusb/packet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /// <reference types="node" />
2
+ import { EventEmitter } from 'events';
3
+ import Packet from './packet';
4
+ import ReadableStream = NodeJS.ReadableStream;
5
+ declare class ChecksumError extends Error {
6
+ packet: Packet;
7
+ constructor(packet: Packet);
8
+ }
9
+ declare class MagicError extends Error {
10
+ packet: Packet;
11
+ constructor(packet: Packet);
12
+ }
13
+ export default class PacketReader extends EventEmitter {
14
+ private stream;
15
+ static ChecksumError: typeof ChecksumError;
16
+ static MagicError: typeof MagicError;
17
+ private inBody;
18
+ private buffer?;
19
+ private packet?;
20
+ constructor(stream: ReadableStream);
21
+ private _tryRead;
22
+ private _appendChunk;
23
+ private _consume;
24
+ }
25
+ export {};
26
+ //# sourceMappingURL=packetreader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packetreader.d.ts","sourceRoot":"","sources":["../../../../src/adb/tcpusb/packetreader.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AAE9C,cAAM,aAAc,SAAQ,KAAK;IACZ,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;CAOlC;AAED,cAAM,UAAW,SAAQ,KAAK;IACT,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;CAOlC;AAED,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,YAAY;IAQxC,OAAO,CAAC,MAAM;IAP1B,OAAc,aAAa,uBAAiB;IAC5C,OAAc,UAAU,oBAAc;IAEtC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEJ,MAAM,EAAE,cAAc;IAY1C,OAAO,CAAC,QAAQ;IA0ChB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,QAAQ;CAKjB"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const events_1 = require("events");
7
+ const packet_1 = __importDefault(require("./packet"));
8
+ class ChecksumError extends Error {
9
+ constructor(packet) {
10
+ super();
11
+ this.packet = packet;
12
+ Object.setPrototypeOf(this, ChecksumError.prototype);
13
+ this.name = 'ChecksumError';
14
+ this.message = 'Checksum mismatch';
15
+ Error.captureStackTrace(this, PacketReader.ChecksumError);
16
+ }
17
+ }
18
+ class MagicError extends Error {
19
+ constructor(packet) {
20
+ super();
21
+ this.packet = packet;
22
+ Object.setPrototypeOf(this, MagicError.prototype);
23
+ this.name = 'MagicError';
24
+ this.message = 'Magic value mismatch';
25
+ Error.captureStackTrace(this, PacketReader.MagicError);
26
+ }
27
+ }
28
+ class PacketReader extends events_1.EventEmitter {
29
+ constructor(stream) {
30
+ super();
31
+ this.stream = stream;
32
+ this.inBody = false;
33
+ this.stream.on('readable', this._tryRead.bind(this));
34
+ this.stream.on('error', (err) => {
35
+ return this.emit('error', err);
36
+ });
37
+ this.stream.on('end', () => {
38
+ return this.emit('end');
39
+ });
40
+ setImmediate(this._tryRead.bind(this));
41
+ }
42
+ _tryRead() {
43
+ while (this._appendChunk()) {
44
+ while (this.buffer) {
45
+ if (this.inBody) {
46
+ if (!(this.buffer.length >= this.packet.length)) {
47
+ break;
48
+ }
49
+ this.packet.data = this._consume(this.packet.length);
50
+ if (!this.packet.verifyChecksum()) {
51
+ this.emit('error', new PacketReader.ChecksumError(this.packet));
52
+ return;
53
+ }
54
+ this.emit('packet', this.packet);
55
+ this.inBody = false;
56
+ }
57
+ else {
58
+ if (!(this.buffer.length >= 24)) {
59
+ break;
60
+ }
61
+ const header = this._consume(24);
62
+ this.packet = new packet_1.default(header.readUInt32LE(0), header.readUInt32LE(4), header.readUInt32LE(8), header.readUInt32LE(12), header.readUInt32LE(16), header.readUInt32LE(20), Buffer.alloc(0));
63
+ if (!this.packet.verifyMagic()) {
64
+ this.emit('error', new PacketReader.MagicError(this.packet));
65
+ return;
66
+ }
67
+ if (this.packet.length === 0) {
68
+ this.emit('packet', this.packet);
69
+ }
70
+ else {
71
+ this.inBody = true;
72
+ }
73
+ }
74
+ }
75
+ }
76
+ }
77
+ _appendChunk() {
78
+ const chunk = this.stream.read();
79
+ if (chunk) {
80
+ if (this.buffer) {
81
+ return (this.buffer = Buffer.concat([this.buffer, chunk], this.buffer.length + chunk.length));
82
+ }
83
+ else {
84
+ return (this.buffer = chunk);
85
+ }
86
+ }
87
+ else {
88
+ return null;
89
+ }
90
+ }
91
+ _consume(length) {
92
+ const chunk = this.buffer.slice(0, length);
93
+ this.buffer = length === this.buffer.length ? null : this.buffer.slice(length);
94
+ return chunk;
95
+ }
96
+ }
97
+ exports.default = PacketReader;
98
+ PacketReader.ChecksumError = ChecksumError;
99
+ PacketReader.MagicError = MagicError;
100
+ //# sourceMappingURL=packetreader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packetreader.js","sourceRoot":"","sources":["../../../../src/adb/tcpusb/packetreader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export default class RollingCounter {
2
+ private readonly max;
3
+ private readonly min;
4
+ private now;
5
+ constructor(max: number, min?: number);
6
+ next(): number;
7
+ }
8
+ //# sourceMappingURL=rollingcounter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rollingcounter.d.ts","sourceRoot":"","sources":["../../../../src/adb/tcpusb/rollingcounter.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,cAAc;IAGrB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAU,OAAO,CAAC,QAAQ,CAAC,GAAG;IAF9D,OAAO,CAAC,GAAG,CAAS;gBAES,GAAG,EAAE,MAAM,EAAmB,GAAG,SAAI;IAI3D,IAAI,IAAI,MAAM;CAMtB"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class RollingCounter {
4
+ constructor(max, min = 1) {
5
+ this.max = max;
6
+ this.min = min;
7
+ this.now = this.min;
8
+ }
9
+ next() {
10
+ if (!(this.now < this.max)) {
11
+ this.now = this.min;
12
+ }
13
+ return ++this.now;
14
+ }
15
+ }
16
+ exports.default = RollingCounter;
17
+ //# sourceMappingURL=rollingcounter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rollingcounter.js","sourceRoot":"","sources":["../../../../src/adb/tcpusb/rollingcounter.ts"],"names":[],"mappings":";;AAAA,MAAqB,cAAc;IAGjC,YAA6B,GAAW,EAAmB,MAAM,CAAC;QAArC,QAAG,GAAH,GAAG,CAAQ;QAAmB,QAAG,GAAH,GAAG,CAAI;QAChE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACtB,CAAC;IAEM,IAAI;QACT,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE;YAC1B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;SACrB;QACD,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC;IACpB,CAAC;CACF;AAbD,iCAaC"}
@@ -0,0 +1,19 @@
1
+ /// <reference types="node" />
2
+ import * as Net from 'net';
3
+ import { EventEmitter } from 'events';
4
+ import Client from '../client';
5
+ import SocketOptions from '../../SocketOptions';
6
+ declare type NetServer = Net.Server;
7
+ export default class Server extends EventEmitter {
8
+ private readonly client;
9
+ private readonly serial;
10
+ private readonly options;
11
+ private readonly server;
12
+ private connections;
13
+ constructor(client: Client, serial: string, options: SocketOptions);
14
+ listen(...args: Parameters<NetServer['listen']>): Server;
15
+ close(): Server;
16
+ end(): Server;
17
+ }
18
+ export {};
19
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../../src/adb/tcpusb/server.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAEhD,aAAK,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;AAE5B,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,YAAY;IAK5C,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,WAAW,CAAgB;gBAGhB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa;IA0BlC,MAAM,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM;IAKxD,KAAK,IAAI,MAAM;IAKf,GAAG,IAAI,MAAM;CAOrB"}
@@ -0,0 +1,78 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const Net = __importStar(require("net"));
30
+ const socket_1 = __importDefault(require("./socket"));
31
+ const events_1 = require("events");
32
+ class Server extends events_1.EventEmitter {
33
+ constructor(client, serial, options) {
34
+ super();
35
+ this.client = client;
36
+ this.serial = serial;
37
+ this.options = options;
38
+ this.connections = [];
39
+ this.server = Net.createServer({
40
+ allowHalfOpen: true,
41
+ });
42
+ this.server.on('error', (err) => this.emit('error', err));
43
+ this.server.on('listening', () => this.emit('listening'));
44
+ this.server.on('close', () => this.emit('close'));
45
+ this.server.on('connection', (conn) => {
46
+ const socket = new socket_1.default(this.client, this.serial, conn, this.options);
47
+ this.connections.push(socket);
48
+ socket.on('error', (err) => {
49
+ // 'conn' is guaranteed to get ended
50
+ return this.emit('error', err);
51
+ });
52
+ socket.once('end', () => {
53
+ // 'conn' is guaranteed to get ended
54
+ return (this.connections = this.connections.filter(function (val) {
55
+ return val !== socket;
56
+ }));
57
+ });
58
+ return this.emit('connection', socket);
59
+ });
60
+ }
61
+ listen(...args) {
62
+ this.server.listen(...args);
63
+ return this;
64
+ }
65
+ close() {
66
+ this.server.close();
67
+ return this;
68
+ }
69
+ end() {
70
+ const ref = this.connections;
71
+ for (let i = 0, len = ref.length; i < len; i++) {
72
+ ref[i].end();
73
+ }
74
+ return this;
75
+ }
76
+ }
77
+ exports.default = Server;
78
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../src/adb/tcpusb/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA2B;AAC3B,sDAA8B;AAC9B,mCAAsC;AAMtC,MAAqB,MAAO,SAAQ,qBAAY;IAI9C,YACmB,MAAc,EACd,MAAc,EACd,OAAsB;QAEvC,KAAK,EAAE,CAAC;QAJS,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAe;QALjC,gBAAW,GAAa,EAAE,CAAC;QAQjC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC;YAC7B,aAAa,EAAE,IAAI;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;YACpC,MAAM,MAAM,GAAG,IAAI,gBAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACxE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACzB,oCAAoC;gBACpC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE;gBACtB,oCAAoC;gBACpC,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,GAAG;oBAC9D,OAAO,GAAG,KAAK,MAAM,CAAC;gBACxB,CAAC,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,GAAG,IAAqC;QACpD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,GAAG;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAC9C,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAlDD,yBAkDC"}
@@ -0,0 +1,37 @@
1
+ /// <reference types="node" />
2
+ import { EventEmitter } from 'events';
3
+ import Packet from './packet';
4
+ import Bluebird from 'bluebird';
5
+ import Client from '../client';
6
+ import Socket from './socket';
7
+ declare class PrematurePacketError extends Error {
8
+ packet: Packet;
9
+ constructor(packet: Packet);
10
+ }
11
+ declare class LateTransportError extends Error {
12
+ constructor();
13
+ }
14
+ export default class Service extends EventEmitter {
15
+ private client;
16
+ private serial;
17
+ private localId;
18
+ private remoteId;
19
+ private socket;
20
+ static PrematurePacketError: typeof PrematurePacketError;
21
+ static LateTransportError: typeof LateTransportError;
22
+ private opened;
23
+ private ended;
24
+ private transport?;
25
+ private needAck;
26
+ constructor(client: Client, serial: string, localId: number, remoteId: number, socket: Socket);
27
+ end(): Service;
28
+ handle(packet: Packet): Bluebird<Service | boolean>;
29
+ private _handleOpenPacket;
30
+ private _handleOkayPacket;
31
+ private _handleWritePacket;
32
+ private _handleClosePacket;
33
+ private _tryPush;
34
+ private _readChunk;
35
+ }
36
+ export {};
37
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../src/adb/tcpusb/service.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,MAAM,MAAM,UAAU,CAAC;AAK9B,cAAM,oBAAqB,SAAQ,KAAK;IACnB,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;CAOlC;AAED,cAAM,kBAAmB,SAAQ,KAAK;;CAQrC;AAED,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,YAAY;IAU7C,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IAbhB,OAAc,oBAAoB,8BAAwB;IAC1D,OAAc,kBAAkB,4BAAsB;IAEtD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAC,CAAa;IAC/B,OAAO,CAAC,OAAO,CAAS;gBAGd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM;IAKjB,GAAG,IAAI,OAAO;IAqBd,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC;IAoB1D,OAAO,CAAC,iBAAiB;IAsCzB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,UAAU;CAGnB"}
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const debug_1 = __importDefault(require("debug"));
7
+ const events_1 = require("events");
8
+ const packet_1 = __importDefault(require("./packet"));
9
+ const bluebird_1 = __importDefault(require("bluebird"));
10
+ const protocol_1 = __importDefault(require("../protocol"));
11
+ const debug = (0, debug_1.default)('adb:tcpusb:service');
12
+ class PrematurePacketError extends Error {
13
+ constructor(packet) {
14
+ super();
15
+ this.packet = packet;
16
+ Object.setPrototypeOf(this, PrematurePacketError.prototype);
17
+ this.name = 'PrematurePacketError';
18
+ this.message = 'Premature packet';
19
+ Error.captureStackTrace(this, Service.PrematurePacketError);
20
+ }
21
+ }
22
+ class LateTransportError extends Error {
23
+ constructor() {
24
+ super();
25
+ Object.setPrototypeOf(this, LateTransportError.prototype);
26
+ this.name = 'LateTransportError';
27
+ this.message = 'Late transport';
28
+ Error.captureStackTrace(this, Service.LateTransportError);
29
+ }
30
+ }
31
+ class Service extends events_1.EventEmitter {
32
+ constructor(client, serial, localId, remoteId, socket) {
33
+ super();
34
+ this.client = client;
35
+ this.serial = serial;
36
+ this.localId = localId;
37
+ this.remoteId = remoteId;
38
+ this.socket = socket;
39
+ this.opened = false;
40
+ this.ended = false;
41
+ this.needAck = false;
42
+ }
43
+ end() {
44
+ if (this.transport) {
45
+ this.transport.end();
46
+ }
47
+ if (this.ended) {
48
+ return this;
49
+ }
50
+ debug('O:A_CLSE');
51
+ const localId = this.opened ? this.localId : 0; // Zero can only mean a failed open
52
+ try {
53
+ // We may or may not have gotten here due to @socket ending, so write
54
+ // may fail.
55
+ this.socket.write(packet_1.default.assemble(packet_1.default.A_CLSE, localId, this.remoteId, null));
56
+ }
57
+ catch (error) { }
58
+ // Let it go
59
+ this.transport = null;
60
+ this.ended = true;
61
+ this.emit('end');
62
+ return this;
63
+ }
64
+ handle(packet) {
65
+ return bluebird_1.default.try(() => {
66
+ switch (packet.command) {
67
+ case packet_1.default.A_OPEN:
68
+ return this._handleOpenPacket(packet);
69
+ case packet_1.default.A_OKAY:
70
+ return this._handleOkayPacket(packet);
71
+ case packet_1.default.A_WRTE:
72
+ return this._handleWritePacket(packet);
73
+ case packet_1.default.A_CLSE:
74
+ return this._handleClosePacket(packet);
75
+ default:
76
+ throw new Error(`Unexpected packet ${packet.command}`);
77
+ }
78
+ }).catch((err) => {
79
+ this.emit('error', err);
80
+ return this.end();
81
+ });
82
+ }
83
+ _handleOpenPacket(packet) {
84
+ debug('I:A_OPEN', packet);
85
+ return this.client
86
+ .getDevice(this.serial)
87
+ .transport()
88
+ .then((transport) => {
89
+ this.transport = transport;
90
+ if (this.ended) {
91
+ throw new LateTransportError();
92
+ }
93
+ this.transport.write(protocol_1.default.encodeData(packet.data.slice(0, -1))); // Discard null byte at end
94
+ return this.transport.parser.readAscii(4).then((reply) => {
95
+ switch (reply) {
96
+ case protocol_1.default.OKAY:
97
+ debug('O:A_OKAY');
98
+ this.socket.write(packet_1.default.assemble(packet_1.default.A_OKAY, this.localId, this.remoteId, null));
99
+ return (this.opened = true);
100
+ case protocol_1.default.FAIL:
101
+ return this.transport.parser.readError();
102
+ default:
103
+ return this.transport.parser.unexpected(reply, 'OKAY or FAIL');
104
+ }
105
+ });
106
+ })
107
+ .then(() => {
108
+ return new bluebird_1.default((resolve, reject) => {
109
+ this.transport.socket
110
+ .on('readable', () => this._tryPush())
111
+ .on('end', resolve)
112
+ .on('error', reject);
113
+ return this._tryPush();
114
+ });
115
+ })
116
+ .finally(() => {
117
+ return this.end();
118
+ });
119
+ }
120
+ _handleOkayPacket(packet) {
121
+ debug('I:A_OKAY', packet);
122
+ if (this.ended) {
123
+ return;
124
+ }
125
+ if (!this.transport) {
126
+ throw new Service.PrematurePacketError(packet);
127
+ }
128
+ this.needAck = false;
129
+ return this._tryPush();
130
+ }
131
+ _handleWritePacket(packet) {
132
+ debug('I:A_WRTE', packet);
133
+ if (this.ended) {
134
+ return;
135
+ }
136
+ if (!this.transport) {
137
+ throw new Service.PrematurePacketError(packet);
138
+ }
139
+ if (this.transport && packet.data) {
140
+ this.transport.write(packet.data);
141
+ }
142
+ debug('O:A_OKAY');
143
+ return this.socket.write(packet_1.default.assemble(packet_1.default.A_OKAY, this.localId, this.remoteId, null));
144
+ }
145
+ _handleClosePacket(packet) {
146
+ debug('I:A_CLSE', packet);
147
+ if (this.ended) {
148
+ return;
149
+ }
150
+ if (!this.transport) {
151
+ throw new Service.PrematurePacketError(packet);
152
+ }
153
+ return this.end();
154
+ }
155
+ _tryPush() {
156
+ if (this.needAck || this.ended) {
157
+ return;
158
+ }
159
+ const chunk = this._readChunk(this.transport.socket);
160
+ if (chunk) {
161
+ debug('O:A_WRTE');
162
+ this.socket.write(packet_1.default.assemble(packet_1.default.A_WRTE, this.localId, this.remoteId, chunk));
163
+ return (this.needAck = true);
164
+ }
165
+ }
166
+ _readChunk(stream) {
167
+ return (stream.read(this.socket.maxPayload) || stream.read());
168
+ }
169
+ }
170
+ exports.default = Service;
171
+ Service.PrematurePacketError = PrematurePacketError;
172
+ Service.LateTransportError = LateTransportError;
173
+ //# sourceMappingURL=service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../src/adb/tcpusb/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import Service from './service';
2
+ export default class ServiceMap {
3
+ private remotes;
4
+ count: number;
5
+ end(): void;
6
+ insert(remoteId: number, socket: Service): Service;
7
+ get(remoteId: number): Service | null;
8
+ remove(remoteId: number): Service | null;
9
+ }
10
+ //# sourceMappingURL=servicemap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"servicemap.d.ts","sourceRoot":"","sources":["../../../../src/adb/tcpusb/servicemap.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,MAAM,CAAC,OAAO,OAAO,UAAU;IAC7B,OAAO,CAAC,OAAO,CAAgD;IACxD,KAAK,SAAK;IAEV,GAAG,IAAI,IAAI;IAUX,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO;IASlD,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI;IAIrC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI;CAUhD"}