@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,40 @@
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 protocol_1 = __importDefault(require("../../protocol"));
7
+ const command_1 = __importDefault(require("../../command"));
8
+ class UninstallCommand extends command_1.default {
9
+ execute(pkg) {
10
+ this._send(`shell:pm uninstall ${pkg}`);
11
+ return this.parser.readAscii(4).then((reply) => {
12
+ switch (reply) {
13
+ case protocol_1.default.OKAY:
14
+ return this.parser
15
+ .searchLine(/^(Success|Failure.*|.*Unknown package:.*)$/)
16
+ .then(function (match) {
17
+ if (match[1] === 'Success') {
18
+ return true;
19
+ }
20
+ else {
21
+ // Either way, the package was uninstalled or doesn't exist,
22
+ // which is good enough for us.
23
+ return true;
24
+ }
25
+ })
26
+ .finally(() => {
27
+ // Consume all remaining content to "naturally" close the
28
+ // connection.
29
+ return this.parser.readAll();
30
+ });
31
+ case protocol_1.default.FAIL:
32
+ return this.parser.readError();
33
+ default:
34
+ return this.parser.unexpected(reply, 'OKAY or FAIL');
35
+ }
36
+ });
37
+ }
38
+ }
39
+ exports.default = UninstallCommand;
40
+ //# sourceMappingURL=uninstall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../../../src/adb/command/host-transport/uninstall.ts"],"names":[],"mappings":";;;;;AAAA,8DAAsC;AACtC,4DAAoC;AAGpC,MAAqB,gBAAiB,SAAQ,iBAAgB;IAC5D,OAAO,CAAC,GAAW;QACjB,IAAI,CAAC,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7C,QAAQ,KAAK,EAAE;gBACb,KAAK,kBAAQ,CAAC,IAAI;oBAChB,OAAO,IAAI,CAAC,MAAM;yBACf,UAAU,CAAC,4CAA4C,CAAC;yBACxD,IAAI,CAAC,UAAU,KAAK;wBACnB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;4BAC1B,OAAO,IAAI,CAAC;yBACb;6BAAM;4BACL,4DAA4D;4BAC5D,+BAA+B;4BAC/B,OAAO,IAAI,CAAC;yBACb;oBACH,CAAC,CAAC;yBACD,OAAO,CAAC,GAAG,EAAE;wBACZ,yDAAyD;wBACzD,cAAc;wBACd,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBAC/B,CAAC,CAAC,CAAC;gBACP,KAAK,kBAAQ,CAAC,IAAI;oBAChB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACjC;oBACE,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;aACxD;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AA7BD,mCA6BC"}
@@ -0,0 +1,6 @@
1
+ import Command from '../../command';
2
+ import Bluebird from 'bluebird';
3
+ export default class UsbCommand extends Command<boolean> {
4
+ execute(): Bluebird<boolean>;
5
+ }
6
+ //# sourceMappingURL=usb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usb.d.ts","sourceRoot":"","sources":["../../../../../src/adb/command/host-transport/usb.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAIhC,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,OAAO,CAAC,OAAO,CAAC;IACtD,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC;CAmB7B"}
@@ -0,0 +1,32 @@
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 protocol_1 = __importDefault(require("../../protocol"));
7
+ const command_1 = __importDefault(require("../../command"));
8
+ const RE_OK = /restarting in/;
9
+ class UsbCommand extends command_1.default {
10
+ execute() {
11
+ this._send('usb:');
12
+ return this.parser.readAscii(4).then((reply) => {
13
+ switch (reply) {
14
+ case protocol_1.default.OKAY:
15
+ return this.parser.readAll().then(function (value) {
16
+ if (RE_OK.test(value.toString())) {
17
+ return true;
18
+ }
19
+ else {
20
+ throw new Error(value.toString().trim());
21
+ }
22
+ });
23
+ case protocol_1.default.FAIL:
24
+ return this.parser.readError();
25
+ default:
26
+ return this.parser.unexpected(reply, 'OKAY or FAIL');
27
+ }
28
+ });
29
+ }
30
+ }
31
+ exports.default = UsbCommand;
32
+ //# sourceMappingURL=usb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usb.js","sourceRoot":"","sources":["../../../../../src/adb/command/host-transport/usb.ts"],"names":[],"mappings":";;;;;AAAA,8DAAsC;AACtC,4DAAoC;AAGpC,MAAM,KAAK,GAAG,eAAe,CAAC;AAE9B,MAAqB,UAAW,SAAQ,iBAAgB;IACtD,OAAO;QACL,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7C,QAAQ,KAAK,EAAE;gBACb,KAAK,kBAAQ,CAAC,IAAI;oBAChB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK;wBAC/C,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE;4BAChC,OAAO,IAAI,CAAC;yBACb;6BAAM;4BACL,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;yBAC1C;oBACH,CAAC,CAAC,CAAC;gBACL,KAAK,kBAAQ,CAAC,IAAI;oBAChB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACjC;oBACE,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;aACxD;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AApBD,6BAoBC"}
@@ -0,0 +1,6 @@
1
+ import Command from '../../command';
2
+ import Bluebird from 'bluebird';
3
+ export default class WaitBootCompleteCommand extends Command<boolean> {
4
+ execute(): Bluebird<boolean>;
5
+ }
6
+ //# sourceMappingURL=waitbootcomplete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitbootcomplete.d.ts","sourceRoot":"","sources":["../../../../../src/adb/command/host-transport/waitbootcomplete.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,OAAO,CAAC,OAAO,CAAC;IACnE,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC;CAgB7B"}
@@ -0,0 +1,27 @@
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 protocol_1 = __importDefault(require("../../protocol"));
7
+ const command_1 = __importDefault(require("../../command"));
8
+ class WaitBootCompleteCommand extends command_1.default {
9
+ execute() {
10
+ this._send('shell:while getprop sys.boot_completed 2>/dev/null; do sleep 1; done');
11
+ return this.parser.readAscii(4).then((reply) => {
12
+ switch (reply) {
13
+ case protocol_1.default.OKAY:
14
+ return this.parser
15
+ .searchLine(/^1$/)
16
+ .finally(() => this.parser.end())
17
+ .then(() => true);
18
+ case protocol_1.default.FAIL:
19
+ return this.parser.readError();
20
+ default:
21
+ return this.parser.unexpected(reply, 'OKAY or FAIL');
22
+ }
23
+ });
24
+ }
25
+ }
26
+ exports.default = WaitBootCompleteCommand;
27
+ //# sourceMappingURL=waitbootcomplete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitbootcomplete.js","sourceRoot":"","sources":["../../../../../src/adb/command/host-transport/waitbootcomplete.ts"],"names":[],"mappings":";;;;;AAAA,8DAAsC;AACtC,4DAAoC;AAGpC,MAAqB,uBAAwB,SAAQ,iBAAgB;IACnE,OAAO;QACL,IAAI,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7C,QAAQ,KAAK,EAAE;gBACb,KAAK,kBAAQ,CAAC,IAAI;oBAChB,OAAO,IAAI,CAAC,MAAM;yBACf,UAAU,CAAC,KAAK,CAAC;yBACjB,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;yBAChC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBACtB,KAAK,kBAAQ,CAAC,IAAI;oBAChB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACjC;oBACE,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;aACxD;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAjBD,0CAiBC"}
@@ -0,0 +1,17 @@
1
+ /// <reference types="node" />
2
+ import Connection from './connection';
3
+ import Protocol from './protocol';
4
+ import Parser from './parser';
5
+ import Bluebird from 'bluebird';
6
+ import WithToString from '../WithToString';
7
+ export default abstract class Command<T> {
8
+ parser: Parser;
9
+ protocol: Protocol;
10
+ connection: Connection;
11
+ constructor(connection: Connection);
12
+ abstract execute(...args: any[]): Bluebird<T>;
13
+ _send(data: string | Buffer): Command<T>;
14
+ _escape(arg: number | WithToString): number | string;
15
+ _escapeCompat(arg: number | WithToString): number | string;
16
+ }
17
+ //# sourceMappingURL=command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/adb/command.ts"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAM3C,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;gBAElB,UAAU,EAAE,UAAU;aAQlB,OAAO,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;IAE7C,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IASxC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM;IASpD,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM;CAQlE"}
@@ -0,0 +1,43 @@
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 protocol_1 = __importDefault(require("./protocol"));
7
+ const debug_1 = __importDefault(require("debug"));
8
+ const debug = (0, debug_1.default)('adb:command');
9
+ const RE_SQUOT = /'/g;
10
+ const RE_ESCAPE = /([$`\\!"])/g;
11
+ class Command {
12
+ constructor(connection) {
13
+ this.connection = connection;
14
+ this.parser = this.connection.parser;
15
+ this.protocol = protocol_1.default;
16
+ }
17
+ _send(data) {
18
+ const encoded = protocol_1.default.encodeData(data);
19
+ if (debug.enabled) {
20
+ debug(`Send '${encoded}'`);
21
+ }
22
+ this.connection.write(encoded);
23
+ return this;
24
+ }
25
+ _escape(arg) {
26
+ switch (typeof arg) {
27
+ case 'number':
28
+ return arg;
29
+ default:
30
+ return "'" + arg.toString().replace(RE_SQUOT, "'\"'\"'") + "'";
31
+ }
32
+ }
33
+ _escapeCompat(arg) {
34
+ switch (typeof arg) {
35
+ case 'number':
36
+ return arg;
37
+ default:
38
+ return '"' + arg.toString().replace(RE_ESCAPE, '\\$1') + '"';
39
+ }
40
+ }
41
+ }
42
+ exports.default = Command;
43
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/adb/command.ts"],"names":[],"mappings":";;;;;AACA,0DAAkC;AAElC,kDAAsB;AAItB,MAAM,KAAK,GAAG,IAAA,eAAC,EAAC,aAAa,CAAC,CAAC;AAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC;AACtB,MAAM,SAAS,GAAG,aAAa,CAAC;AAEhC,MAA8B,OAAO;IAKnC,YAAY,UAAsB;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,kBAAQ,CAAC;IAC3B,CAAC;IAMM,KAAK,CAAC,IAAqB;QAChC,MAAM,OAAO,GAAG,kBAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,KAAK,CAAC,OAAO,EAAE;YACjB,KAAK,CAAC,SAAS,OAAO,GAAG,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,OAAO,CAAC,GAA0B;QACvC,QAAQ,OAAO,GAAG,EAAE;YAClB,KAAK,QAAQ;gBACX,OAAO,GAAG,CAAC;YACb;gBACE,OAAO,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,GAAG,CAAC;SAClE;IACH,CAAC;IAEM,aAAa,CAAC,GAA0B;QAC7C,QAAQ,OAAO,GAAG,EAAE;YAClB,KAAK,QAAQ;gBACX,OAAO,GAAG,CAAC;YACb;gBACE,OAAO,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC;SAChE;IACH,CAAC;CACF;AAzCD,0BAyCC"}
@@ -0,0 +1,24 @@
1
+ /// <reference types="node" />
2
+ import { EventEmitter } from 'events';
3
+ import { ChildProcess } from 'child_process';
4
+ import Parser from './parser';
5
+ import { Socket } from 'net';
6
+ import Bluebird from 'bluebird';
7
+ import { ClientOptions } from '../ClientOptions';
8
+ export default class Connection extends EventEmitter {
9
+ socket: Socket;
10
+ parser: Parser;
11
+ private triedStarting;
12
+ options: ClientOptions;
13
+ constructor(options?: ClientOptions);
14
+ connect(): Bluebird<Connection>;
15
+ /**
16
+ * added for Mock testing
17
+ */
18
+ getSocket(): unknown;
19
+ end(): this;
20
+ write(data: Buffer, callback?: (err?: Error) => void): this;
21
+ startServer(): Bluebird<ChildProcess>;
22
+ private _exec;
23
+ }
24
+ //# sourceMappingURL=connection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/adb/connection.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,YAAY,EAA6B,MAAM,eAAe,CAAC;AACxE,OAAO,MAAM,MAAM,UAAU,CAAC;AAG9B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIjD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,YAAY;IAC3C,MAAM,EAAG,MAAM,CAAC;IAChB,MAAM,EAAG,MAAM,CAAC;IACvB,OAAO,CAAC,aAAa,CAAU;IACxB,OAAO,EAAE,aAAa,CAAC;gBAElB,OAAO,CAAC,EAAE,aAAa;IAQ5B,OAAO,IAAI,QAAQ,CAAC,UAAU,CAAC;IAwCtC;;OAEG;IACI,SAAS,IAAI,OAAO;IAIpB,GAAG,IAAI,IAAI;IAOX,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAK3D,WAAW,IAAI,QAAQ,CAAC,YAAY,CAAC;IAU5C,OAAO,CAAC,KAAK;CAYd"}
@@ -0,0 +1,115 @@
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 events_1 = require("events");
31
+ const child_process_1 = require("child_process");
32
+ const parser_1 = __importDefault(require("./parser"));
33
+ const dump_1 = __importDefault(require("./dump"));
34
+ const debug_1 = __importDefault(require("debug"));
35
+ const bluebird_1 = __importDefault(require("bluebird"));
36
+ const debug = (0, debug_1.default)('adb:connection');
37
+ class Connection extends events_1.EventEmitter {
38
+ constructor(options) {
39
+ super();
40
+ this.options = options || { port: 0 };
41
+ // this.socket = null;
42
+ // this.parser = null;
43
+ this.triedStarting = false;
44
+ }
45
+ connect() {
46
+ this.socket = Net.connect(this.options);
47
+ this.socket.setNoDelay(true);
48
+ this.parser = new parser_1.default(this.socket);
49
+ this.socket.on('connect', () => this.emit('connect'));
50
+ this.socket.on('end', () => this.emit('end'));
51
+ this.socket.on('drain', () => this.emit('drain'));
52
+ this.socket.on('timeout', () => this.emit('timeout'));
53
+ this.socket.on('close', (hadError) => this.emit('close', hadError));
54
+ return new bluebird_1.default((resolve, reject) => {
55
+ this.socket.once('connect', resolve);
56
+ this.socket.once('error', reject);
57
+ })
58
+ .catch((err) => {
59
+ if (err.code === 'ECONNREFUSED' && !this.triedStarting) {
60
+ debug("Connection was refused, let's try starting the server once");
61
+ this.triedStarting = true;
62
+ return this.startServer().then(() => {
63
+ return this.connect();
64
+ });
65
+ }
66
+ else {
67
+ this.end();
68
+ throw err;
69
+ }
70
+ })
71
+ .then(() => {
72
+ // Emit unhandled error events, so that they can be handled on the client.
73
+ // Without this, they would just crash node unavoidably.
74
+ if (this.socket) {
75
+ this.socket.on('error', (err) => {
76
+ if (this.socket && this.socket.listenerCount('error') === 1) {
77
+ this.emit('error', err);
78
+ }
79
+ });
80
+ }
81
+ return this;
82
+ });
83
+ }
84
+ /**
85
+ * added for Mock testing
86
+ */
87
+ getSocket() {
88
+ return this.socket;
89
+ }
90
+ end() {
91
+ if (this.socket) {
92
+ this.socket.end();
93
+ }
94
+ return this;
95
+ }
96
+ write(data, callback) {
97
+ this.socket.write((0, dump_1.default)(data), callback);
98
+ return this;
99
+ }
100
+ startServer() {
101
+ let port = 0;
102
+ if ('port' in this.options) {
103
+ port = this.options.port;
104
+ }
105
+ const args = port ? ['-P', String(port), 'start-server'] : ['start-server'];
106
+ debug(`Starting ADB server via '${this.options.bin} ${args.join(' ')}'`);
107
+ return this._exec(args, {});
108
+ }
109
+ _exec(args, options) {
110
+ debug(`CLI: ${this.options.bin} ${args.join(' ')}`);
111
+ return bluebird_1.default.promisify(child_process_1.execFile)(this.options.bin, args, options);
112
+ }
113
+ }
114
+ exports.default = Connection;
115
+ //# sourceMappingURL=connection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/adb/connection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="node" />
2
+ declare let func: (chunk: Buffer) => Buffer;
3
+ export = func;
4
+ //# sourceMappingURL=dump.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dump.d.ts","sourceRoot":"","sources":["../../../src/adb/dump.ts"],"names":[],"mappings":";AAEA,QAAA,IAAI,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAYpC,SAAS,IAAI,CAAC"}
@@ -0,0 +1,38 @@
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
+ const fs = __importStar(require("fs"));
26
+ let func;
27
+ if (process.env.ADBKIT_DUMP) {
28
+ const out = fs.createWriteStream('adbkit.dump');
29
+ func = function (chunk) {
30
+ out.write(chunk);
31
+ return chunk;
32
+ };
33
+ }
34
+ else {
35
+ func = (chunk) => chunk;
36
+ }
37
+ module.exports = func;
38
+ //# sourceMappingURL=dump.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dump.js","sourceRoot":"","sources":["../../../src/adb/dump.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AAEzB,IAAI,IAA+B,CAAC;AAEpC,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE;IAC3B,MAAM,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAChD,IAAI,GAAG,UAAU,KAAa;QAC5B,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACjB,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;CACH;KAAM;IACL,IAAI,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC;CACzC;AAED,iBAAS,IAAI,CAAC"}
@@ -0,0 +1,16 @@
1
+ /// <reference types="node" />
2
+ import { Stream, TransformCallback, TransformOptions } from 'stream';
3
+ import FramebufferMeta from '../../FramebufferMeta';
4
+ declare class RgbTransform extends Stream.Transform {
5
+ private meta;
6
+ private _buffer;
7
+ private readonly _r_pos;
8
+ private readonly _g_pos;
9
+ private readonly _b_pos;
10
+ private readonly _a_pos;
11
+ private readonly _pixel_bytes;
12
+ constructor(meta: FramebufferMeta, options?: TransformOptions);
13
+ _transform(chunk: Buffer, encoding: string, done: TransformCallback): void;
14
+ }
15
+ export = RgbTransform;
16
+ //# sourceMappingURL=rgbtransform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rgbtransform.d.ts","sourceRoot":"","sources":["../../../../src/adb/framebuffer/rgbtransform.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,eAAe,MAAM,uBAAuB,CAAC;AAEpD,cAAM,YAAa,SAAQ,MAAM,CAAC,SAAS;IAQ7B,OAAO,CAAC,IAAI;IAPxB,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAElB,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAarE,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,IAAI;CA0B3E;AAED,SAAS,YAAY,CAAC"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ const assert_1 = __importDefault(require("assert"));
6
+ const stream_1 = require("stream");
7
+ class RgbTransform extends stream_1.Stream.Transform {
8
+ constructor(meta, options) {
9
+ super(options);
10
+ this.meta = meta;
11
+ this._buffer = Buffer.from('');
12
+ assert_1.default.ok(this.meta.bpp === 24 || this.meta.bpp === 32, 'Only 24-bit and 32-bit raw images with 8-bits per color are supported');
13
+ this._r_pos = this.meta.red_offset / 8;
14
+ this._g_pos = this.meta.green_offset / 8;
15
+ this._b_pos = this.meta.blue_offset / 8;
16
+ this._a_pos = this.meta.alpha_offset / 8;
17
+ this._pixel_bytes = this.meta.bpp / 8;
18
+ }
19
+ _transform(chunk, encoding, done) {
20
+ if (this._buffer.length) {
21
+ this._buffer = Buffer.concat([this._buffer, chunk], this._buffer.length + chunk.length);
22
+ }
23
+ else {
24
+ this._buffer = chunk;
25
+ }
26
+ let sourceCursor = 0;
27
+ let targetCursor = 0;
28
+ const target = this._pixel_bytes === 3 ? this._buffer : Buffer.alloc(Math.max(4, (chunk.length / this._pixel_bytes) * 3));
29
+ while (this._buffer.length - sourceCursor >= this._pixel_bytes) {
30
+ const r = this._buffer[sourceCursor + this._r_pos];
31
+ const g = this._buffer[sourceCursor + this._g_pos];
32
+ const b = this._buffer[sourceCursor + this._b_pos];
33
+ target[targetCursor + 0] = r;
34
+ target[targetCursor + 1] = g;
35
+ target[targetCursor + 2] = b;
36
+ sourceCursor += this._pixel_bytes;
37
+ targetCursor += 3;
38
+ }
39
+ if (targetCursor) {
40
+ this.push(target.slice(0, targetCursor));
41
+ this._buffer = this._buffer.slice(sourceCursor);
42
+ }
43
+ done();
44
+ }
45
+ }
46
+ module.exports = RgbTransform;
47
+ //# sourceMappingURL=rgbtransform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rgbtransform.js","sourceRoot":"","sources":["../../../../src/adb/framebuffer/rgbtransform.ts"],"names":[],"mappings":";;;;AAAA,oDAA4B;AAC5B,mCAAqE;AAGrE,MAAM,YAAa,SAAQ,eAAM,CAAC,SAAS;IAQzC,YAAoB,IAAqB,EAAE,OAA0B;QACnE,KAAK,CAAC,OAAO,CAAC,CAAC;QADG,SAAI,GAAJ,IAAI,CAAiB;QAPjC,YAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAShC,gBAAM,CAAC,EAAE,CACP,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,EAC5C,uEAAuE,CACxE,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,UAAU,CAAC,KAAa,EAAE,QAAgB,EAAE,IAAuB;QACjE,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACvB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;SACzF;aAAM;YACL,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACtB;QACD,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,MAAM,MAAM,GACV,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7G,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE;YAC9D,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAC7B,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAC7B,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAC7B,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC;YAClC,YAAY,IAAI,CAAC,CAAC;SACnB;QACD,IAAI,YAAY,EAAE;YAChB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;YACzC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;SACjD;QACD,IAAI,EAAE,CAAC;IACT,CAAC;CACF;AAED,iBAAS,YAAY,CAAC"}
@@ -0,0 +1,41 @@
1
+ /// <reference types="node" />
2
+ import { EventEmitter } from 'events';
3
+ import Bluebird from 'bluebird';
4
+ import Command from './command';
5
+ interface JdwpTrackerChangeSet {
6
+ /**
7
+ * array of pid
8
+ */
9
+ removed: string[];
10
+ /**
11
+ * array of pid
12
+ */
13
+ added: string[];
14
+ }
15
+ export default class JdwpTracker extends EventEmitter {
16
+ private command;
17
+ private pids;
18
+ private pidMap;
19
+ private reader;
20
+ constructor(command: Command<JdwpTracker>);
21
+ on(event: 'end', listener: () => void): this;
22
+ on(event: 'error', listener: (err: Error) => void): this;
23
+ on(event: 'remove', listener: (pid: string) => void): this;
24
+ on(event: 'add', listener: (pid: string) => void): this;
25
+ on(event: 'changeSet', listener: (changeSet: JdwpTrackerChangeSet, newList: string[]) => void): this;
26
+ once(event: 'end', listener: () => void): this;
27
+ once(event: 'error', listener: (err: Error) => void): this;
28
+ once(event: 'remove', listener: (pid: string) => void): this;
29
+ once(event: 'add', listener: (pid: string) => void): this;
30
+ once(event: 'changeSet', listener: (changeSet: JdwpTrackerChangeSet, newList: string[]) => void): this;
31
+ emit(event: 'end'): boolean;
32
+ emit(event: 'error', err: Error): boolean;
33
+ emit(event: 'remove', pid: string): boolean;
34
+ emit(event: 'add', pid: string): boolean;
35
+ emit(event: 'changeSet', changeSet: JdwpTrackerChangeSet, newList: string[]): boolean;
36
+ read(): Bluebird<JdwpTracker>;
37
+ update(newList: string[]): JdwpTracker;
38
+ end(): JdwpTracker;
39
+ }
40
+ export {};
41
+ //# sourceMappingURL=jdwptracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jdwptracker.d.ts","sourceRoot":"","sources":["../../../src/adb/jdwptracker.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,UAAU,oBAAoB;IAC5B;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;;OAEG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,YAAY;IAKvC,OAAO,CAAC,OAAO;IAJ3B,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAkC;gBAE5B,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC;IAoBjD,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAC5C,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IACxD,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC1D,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACvD,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,GAAG,IAAI;IAKpG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAC9C,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAC1D,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAC5D,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACzD,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,GAAG,IAAI;IAKtG,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAC3B,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO;IACzC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAC3C,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IACxC,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO;IAKrF,IAAI,IAAI,QAAQ,CAAC,WAAW,CAAC;IAW7B,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,WAAW;IA4BtC,GAAG,IAAI,WAAW;CAInB"}
@@ -0,0 +1,85 @@
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
+ /* eslint-disable @typescript-eslint/no-explicit-any */
7
+ const events_1 = require("events");
8
+ const bluebird_1 = __importDefault(require("bluebird"));
9
+ const parser_1 = __importDefault(require("./parser"));
10
+ class JdwpTracker extends events_1.EventEmitter {
11
+ constructor(command) {
12
+ super();
13
+ this.command = command;
14
+ this.pids = [];
15
+ this.pidMap = Object.create(null);
16
+ this.command = command;
17
+ this.pids = [];
18
+ this.pidMap = Object.create(null);
19
+ this.reader = this.read()
20
+ .catch(parser_1.default.PrematureEOFError, () => {
21
+ return this.emit('end');
22
+ })
23
+ .catch(bluebird_1.default.CancellationError, () => {
24
+ this.command.connection.end();
25
+ return this.emit('end');
26
+ })
27
+ .catch((err) => {
28
+ this.command.connection.end();
29
+ this.emit('error', err);
30
+ return this.emit('end');
31
+ });
32
+ }
33
+ on(event, listener) {
34
+ return super.on(event, listener);
35
+ }
36
+ once(event, listener) {
37
+ return super.once(event, listener);
38
+ }
39
+ emit(event, ...args) {
40
+ return super.emit(event, ...args);
41
+ }
42
+ read() {
43
+ return this.command.parser.readValue().then((list) => {
44
+ const pids = list.toString().split('\n');
45
+ const maybeEmpty = pids.pop();
46
+ if (maybeEmpty) {
47
+ pids.push(maybeEmpty);
48
+ }
49
+ return this.update(pids);
50
+ });
51
+ }
52
+ update(newList) {
53
+ const changeSet = {
54
+ removed: [],
55
+ added: [],
56
+ };
57
+ const newMap = Object.create(null);
58
+ for (let i = 0, len = newList.length; i < len; i++) {
59
+ const pid = newList[i];
60
+ if (!this.pidMap[pid]) {
61
+ changeSet.added.push(pid);
62
+ this.emit('add', pid);
63
+ newMap[pid] = pid;
64
+ }
65
+ }
66
+ const ref = this.pids;
67
+ for (let j = 0, len1 = ref.length; j < len1; j++) {
68
+ const pid = ref[j];
69
+ if (!newMap[pid]) {
70
+ changeSet.removed.push(pid);
71
+ this.emit('remove', pid);
72
+ }
73
+ }
74
+ this.pids = newList;
75
+ this.pidMap = newMap;
76
+ this.emit('changeSet', changeSet, newList);
77
+ return this;
78
+ }
79
+ end() {
80
+ this.reader.cancel();
81
+ return this;
82
+ }
83
+ }
84
+ exports.default = JdwpTracker;
85
+ //# sourceMappingURL=jdwptracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jdwptracker.js","sourceRoot":"","sources":["../../../src/adb/jdwptracker.ts"],"names":[],"mappings":"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"}