@yume-chan/adb 0.0.9 → 0.0.12

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 (407) hide show
  1. package/CHANGELOG.json +55 -0
  2. package/CHANGELOG.md +35 -0
  3. package/LICENSE +21 -21
  4. package/README.md +240 -257
  5. package/esm/adb.d.ts +48 -0
  6. package/esm/adb.d.ts.map +1 -0
  7. package/esm/adb.js +141 -145
  8. package/esm/adb.js.map +1 -1
  9. package/{dts → esm}/auth.d.ts +17 -7
  10. package/esm/auth.d.ts.map +1 -0
  11. package/esm/auth.js +69 -109
  12. package/esm/auth.js.map +1 -1
  13. package/esm/backend.d.ts +9 -0
  14. package/esm/backend.d.ts.map +1 -0
  15. package/{dts → esm}/commands/base.d.ts +1 -1
  16. package/esm/commands/base.d.ts.map +1 -0
  17. package/esm/commands/base.js +1 -0
  18. package/esm/commands/base.js.map +1 -1
  19. package/{dts → esm}/commands/framebuffer.d.ts +3 -3
  20. package/esm/commands/framebuffer.d.ts.map +1 -0
  21. package/esm/commands/framebuffer.js +15 -18
  22. package/esm/commands/framebuffer.js.map +1 -1
  23. package/esm/commands/index.d.ts +9 -0
  24. package/esm/commands/index.d.ts.map +1 -0
  25. package/esm/commands/index.js +8 -8
  26. package/esm/commands/index.js.map +1 -1
  27. package/esm/commands/install.d.ts +4 -0
  28. package/esm/commands/install.d.ts.map +1 -0
  29. package/esm/commands/install.js +21 -13
  30. package/esm/commands/install.js.map +1 -1
  31. package/esm/commands/power.d.ts +23 -0
  32. package/esm/commands/power.d.ts.map +1 -0
  33. package/esm/commands/power.js +45 -0
  34. package/esm/commands/power.js.map +1 -0
  35. package/{dts → esm}/commands/reverse.d.ts +3 -3
  36. package/esm/commands/reverse.d.ts.map +1 -0
  37. package/esm/commands/reverse.js +50 -60
  38. package/esm/commands/reverse.js.map +1 -1
  39. package/esm/commands/subprocess/index.d.ts +57 -0
  40. package/esm/commands/subprocess/index.d.ts.map +1 -0
  41. package/esm/commands/subprocess/index.js +83 -0
  42. package/esm/commands/subprocess/index.js.map +1 -0
  43. package/esm/commands/subprocess/legacy.d.ts +28 -0
  44. package/esm/commands/subprocess/legacy.d.ts.map +1 -0
  45. package/esm/commands/subprocess/legacy.js +44 -0
  46. package/esm/commands/subprocess/legacy.js.map +1 -0
  47. package/esm/commands/subprocess/protocol.d.ts +38 -0
  48. package/esm/commands/subprocess/protocol.d.ts.map +1 -0
  49. package/esm/commands/subprocess/protocol.js +155 -0
  50. package/esm/commands/subprocess/protocol.js.map +1 -0
  51. package/esm/commands/subprocess/types.d.ts +47 -0
  52. package/esm/commands/subprocess/types.d.ts.map +1 -0
  53. package/esm/commands/{shell → subprocess}/types.js +0 -0
  54. package/{cjs/commands/shell → esm/commands/subprocess}/types.js.map +1 -1
  55. package/{dts/commands/shell → esm/commands/subprocess}/utils.d.ts +0 -0
  56. package/esm/commands/subprocess/utils.d.ts.map +1 -0
  57. package/esm/commands/{shell → subprocess}/utils.js +0 -0
  58. package/esm/commands/subprocess/utils.js.map +1 -0
  59. package/esm/commands/sync/index.d.ts +8 -0
  60. package/esm/commands/sync/index.d.ts.map +1 -0
  61. package/esm/commands/sync/index.js +7 -7
  62. package/esm/commands/sync/index.js.map +1 -1
  63. package/{dts → esm}/commands/sync/list.d.ts +4 -4
  64. package/esm/commands/sync/list.d.ts.map +1 -0
  65. package/esm/commands/sync/list.js +16 -19
  66. package/esm/commands/sync/list.js.map +1 -1
  67. package/esm/commands/sync/pull.d.ts +11 -0
  68. package/esm/commands/sync/pull.d.ts.map +1 -0
  69. package/esm/commands/sync/pull.js +17 -11
  70. package/esm/commands/sync/pull.js.map +1 -1
  71. package/esm/commands/sync/push.d.ts +8 -0
  72. package/esm/commands/sync/push.d.ts.map +1 -0
  73. package/esm/commands/sync/push.js +19 -37
  74. package/esm/commands/sync/push.js.map +1 -1
  75. package/{dts → esm}/commands/sync/request.d.ts +3 -3
  76. package/esm/commands/sync/request.d.ts.map +1 -0
  77. package/esm/commands/sync/request.js +24 -26
  78. package/esm/commands/sync/request.js.map +1 -1
  79. package/{dts → esm}/commands/sync/response.d.ts +3 -3
  80. package/esm/commands/sync/response.d.ts.map +1 -0
  81. package/esm/commands/sync/response.js +16 -19
  82. package/esm/commands/sync/response.js.map +1 -1
  83. package/{dts → esm}/commands/sync/stat.d.ts +4 -4
  84. package/esm/commands/sync/stat.d.ts.map +1 -0
  85. package/esm/commands/sync/stat.js +22 -27
  86. package/esm/commands/sync/stat.js.map +1 -1
  87. package/esm/commands/sync/sync.d.ts +83 -0
  88. package/esm/commands/sync/sync.d.ts.map +1 -0
  89. package/esm/commands/sync/sync.js +92 -89
  90. package/esm/commands/sync/sync.js.map +1 -1
  91. package/{dts → esm}/commands/tcpip.d.ts +1 -1
  92. package/{dts → esm}/commands/tcpip.d.ts.map +1 -1
  93. package/esm/commands/tcpip.js +14 -19
  94. package/esm/commands/tcpip.js.map +1 -1
  95. package/esm/crypto.d.ts +24 -0
  96. package/esm/crypto.d.ts.map +1 -0
  97. package/esm/crypto.js +33 -31
  98. package/esm/crypto.js.map +1 -1
  99. package/{dts → esm}/features.d.ts +0 -0
  100. package/{dts → esm}/features.d.ts.map +0 -0
  101. package/esm/features.js +1 -1
  102. package/esm/features.js.map +1 -1
  103. package/esm/index.d.ts +11 -0
  104. package/esm/index.d.ts.map +1 -0
  105. package/esm/index.js +10 -10
  106. package/esm/index.js.map +1 -1
  107. package/esm/packet.d.ts +28 -0
  108. package/esm/packet.d.ts.map +1 -0
  109. package/esm/packet.js +26 -53
  110. package/esm/packet.js.map +1 -1
  111. package/esm/socket/controller.d.ts +37 -0
  112. package/esm/socket/controller.d.ts.map +1 -0
  113. package/esm/socket/controller.js +52 -66
  114. package/esm/socket/controller.js.map +1 -1
  115. package/{dts → esm}/socket/dispatcher.d.ts +10 -23
  116. package/esm/socket/dispatcher.d.ts.map +1 -0
  117. package/esm/socket/dispatcher.js +148 -164
  118. package/esm/socket/dispatcher.js.map +1 -1
  119. package/esm/socket/index.d.ts +3 -0
  120. package/esm/socket/index.d.ts.map +1 -0
  121. package/esm/socket/index.js +2 -6
  122. package/esm/socket/index.js.map +1 -1
  123. package/esm/socket/socket.d.ts +34 -0
  124. package/esm/socket/socket.d.ts.map +1 -0
  125. package/esm/socket/socket.js +69 -14
  126. package/esm/socket/socket.js.map +1 -1
  127. package/esm/stream/buffered.d.ts +35 -0
  128. package/esm/stream/buffered.d.ts.map +1 -0
  129. package/esm/stream/buffered.js +123 -0
  130. package/esm/stream/buffered.js.map +1 -0
  131. package/esm/stream/detect.bak.d.ts +240 -0
  132. package/esm/stream/detect.bak.d.ts.map +1 -0
  133. package/esm/stream/detect.bak.js +60 -0
  134. package/esm/stream/detect.bak.js.map +1 -0
  135. package/esm/stream/detect.d.ts +18 -0
  136. package/esm/stream/detect.d.ts.map +1 -0
  137. package/esm/stream/detect.js +6 -0
  138. package/esm/stream/detect.js.map +1 -0
  139. package/esm/stream/detect.native.d.ts +240 -0
  140. package/esm/stream/detect.native.d.ts.map +1 -0
  141. package/esm/stream/detect.native.js +60 -0
  142. package/esm/stream/detect.native.js.map +1 -0
  143. package/esm/stream/detect.polyfill.d.ts +18 -0
  144. package/esm/stream/detect.polyfill.d.ts.map +1 -0
  145. package/esm/stream/detect.polyfill.js +6 -0
  146. package/esm/stream/detect.polyfill.js.map +1 -0
  147. package/esm/stream/index.d.ts +4 -0
  148. package/esm/stream/index.d.ts.map +1 -0
  149. package/esm/stream/index.js +3 -2
  150. package/esm/stream/index.js.map +1 -1
  151. package/esm/stream/transform.d.ts +98 -0
  152. package/esm/stream/transform.d.ts.map +1 -0
  153. package/esm/stream/transform.js +352 -0
  154. package/esm/stream/transform.js.map +1 -0
  155. package/{dts → esm}/utils/auto-reset-event.d.ts +1 -1
  156. package/esm/utils/auto-reset-event.d.ts.map +1 -0
  157. package/esm/utils/auto-reset-event.js +2 -1
  158. package/esm/utils/auto-reset-event.js.map +1 -1
  159. package/esm/utils/base64.d.ts +5 -0
  160. package/esm/utils/base64.d.ts.map +1 -0
  161. package/esm/utils/base64.js +116 -80
  162. package/esm/utils/base64.js.map +1 -1
  163. package/esm/utils/encoding.d.ts +3 -0
  164. package/esm/utils/encoding.d.ts.map +1 -0
  165. package/esm/utils/encoding.js +11 -0
  166. package/esm/utils/encoding.js.map +1 -0
  167. package/esm/utils/index.d.ts +4 -0
  168. package/esm/utils/index.d.ts.map +1 -0
  169. package/esm/utils/index.js +3 -4
  170. package/esm/utils/index.js.map +1 -1
  171. package/package.json +49 -50
  172. package/src/adb.ts +247 -242
  173. package/src/auth.ts +170 -156
  174. package/src/backend.ts +11 -24
  175. package/src/commands/base.ts +11 -11
  176. package/src/commands/framebuffer.ts +73 -73
  177. package/src/commands/index.ts +8 -8
  178. package/src/commands/install.ts +32 -21
  179. package/src/commands/power.ts +54 -0
  180. package/src/commands/reverse.ts +136 -133
  181. package/src/commands/subprocess/index.ts +124 -0
  182. package/src/commands/subprocess/legacy.ts +58 -0
  183. package/src/commands/subprocess/protocol.ts +185 -0
  184. package/src/commands/subprocess/types.ts +55 -0
  185. package/src/commands/{shell → subprocess}/utils.ts +20 -20
  186. package/src/commands/sync/index.ts +7 -7
  187. package/src/commands/sync/list.ts +40 -39
  188. package/src/commands/sync/pull.ts +43 -34
  189. package/src/commands/sync/push.ts +41 -46
  190. package/src/commands/sync/request.ts +49 -48
  191. package/src/commands/sync/response.ts +58 -57
  192. package/src/commands/sync/stat.ts +123 -121
  193. package/src/commands/sync/sync.ts +145 -113
  194. package/src/commands/tcpip.ts +21 -21
  195. package/src/crypto.ts +280 -280
  196. package/src/features.ts +5 -5
  197. package/src/index.ts +11 -10
  198. package/src/packet.ts +69 -89
  199. package/src/socket/dispatcher.ts +256 -269
  200. package/src/socket/index.ts +2 -6
  201. package/src/socket/socket.ts +129 -28
  202. package/src/stream/buffered.ts +147 -0
  203. package/src/stream/detect.native.ts +362 -0
  204. package/src/stream/detect.polyfill.ts +25 -0
  205. package/src/stream/detect.ts +25 -0
  206. package/src/stream/index.ts +3 -2
  207. package/src/stream/transform.ts +427 -0
  208. package/src/utils/auto-reset-event.ts +41 -41
  209. package/src/utils/base64.ts +306 -274
  210. package/src/utils/encoding.ts +13 -0
  211. package/src/utils/index.ts +3 -4
  212. package/tsconfig.build.json +3 -0
  213. package/tsconfig.build.tsbuildinfo +1 -0
  214. package/tsconfig.test.json +10 -0
  215. package/cjs/adb.js +0 -205
  216. package/cjs/adb.js.map +0 -1
  217. package/cjs/auth.js +0 -141
  218. package/cjs/auth.js.map +0 -1
  219. package/cjs/backend.js +0 -3
  220. package/cjs/backend.js.map +0 -1
  221. package/cjs/commands/base.js +0 -12
  222. package/cjs/commands/base.js.map +0 -1
  223. package/cjs/commands/demo-mode.js +0 -174
  224. package/cjs/commands/demo-mode.js.map +0 -1
  225. package/cjs/commands/framebuffer.js +0 -66
  226. package/cjs/commands/framebuffer.js.map +0 -1
  227. package/cjs/commands/index.js +0 -12
  228. package/cjs/commands/index.js.map +0 -1
  229. package/cjs/commands/install.js +0 -20
  230. package/cjs/commands/install.js.map +0 -1
  231. package/cjs/commands/reverse.js +0 -105
  232. package/cjs/commands/reverse.js.map +0 -1
  233. package/cjs/commands/shell/index.js +0 -56
  234. package/cjs/commands/shell/index.js.map +0 -1
  235. package/cjs/commands/shell/legacy.js +0 -37
  236. package/cjs/commands/shell/legacy.js.map +0 -1
  237. package/cjs/commands/shell/protocol.js +0 -83
  238. package/cjs/commands/shell/protocol.js.map +0 -1
  239. package/cjs/commands/shell/types.js +0 -3
  240. package/cjs/commands/shell/utils.js +0 -23
  241. package/cjs/commands/shell/utils.js.map +0 -1
  242. package/cjs/commands/sync/index.js +0 -11
  243. package/cjs/commands/sync/index.js.map +0 -1
  244. package/cjs/commands/sync/list.js +0 -36
  245. package/cjs/commands/sync/list.js.map +0 -1
  246. package/cjs/commands/sync/pull.js +0 -34
  247. package/cjs/commands/sync/pull.js.map +0 -1
  248. package/cjs/commands/sync/push.js +0 -49
  249. package/cjs/commands/sync/push.js.map +0 -1
  250. package/cjs/commands/sync/request.js +0 -48
  251. package/cjs/commands/sync/request.js.map +0 -1
  252. package/cjs/commands/sync/response.js +0 -53
  253. package/cjs/commands/sync/response.js.map +0 -1
  254. package/cjs/commands/sync/stat.js +0 -109
  255. package/cjs/commands/sync/stat.js.map +0 -1
  256. package/cjs/commands/sync/sync.js +0 -118
  257. package/cjs/commands/sync/sync.js.map +0 -1
  258. package/cjs/commands/tcpip.js +0 -28
  259. package/cjs/commands/tcpip.js.map +0 -1
  260. package/cjs/crypto.js +0 -231
  261. package/cjs/crypto.js.map +0 -1
  262. package/cjs/features.js +0 -10
  263. package/cjs/features.js.map +0 -1
  264. package/cjs/index.js +0 -14
  265. package/cjs/index.js.map +0 -1
  266. package/cjs/packet.js +0 -77
  267. package/cjs/packet.js.map +0 -1
  268. package/cjs/socket/close-event-emitter.js +0 -32
  269. package/cjs/socket/close-event-emitter.js.map +0 -1
  270. package/cjs/socket/controller.js +0 -84
  271. package/cjs/socket/controller.js.map +0 -1
  272. package/cjs/socket/data-event-emitter.js +0 -29
  273. package/cjs/socket/data-event-emitter.js.map +0 -1
  274. package/cjs/socket/dispatcher.js +0 -219
  275. package/cjs/socket/dispatcher.js.map +0 -1
  276. package/cjs/socket/index.js +0 -10
  277. package/cjs/socket/index.js.map +0 -1
  278. package/cjs/socket/logger.js +0 -3
  279. package/cjs/socket/logger.js.map +0 -1
  280. package/cjs/socket/socket.js +0 -24
  281. package/cjs/socket/socket.js.map +0 -1
  282. package/cjs/stream/buffered-stream.js +0 -78
  283. package/cjs/stream/buffered-stream.js.map +0 -1
  284. package/cjs/stream/index.js +0 -6
  285. package/cjs/stream/index.js.map +0 -1
  286. package/cjs/stream/stream.js +0 -45
  287. package/cjs/stream/stream.js.map +0 -1
  288. package/cjs/utils/auto-reset-event.js +0 -37
  289. package/cjs/utils/auto-reset-event.js.map +0 -1
  290. package/cjs/utils/base64.js +0 -210
  291. package/cjs/utils/base64.js.map +0 -1
  292. package/cjs/utils/chunk.js +0 -75
  293. package/cjs/utils/chunk.js.map +0 -1
  294. package/cjs/utils/event-queue.js +0 -108
  295. package/cjs/utils/event-queue.js.map +0 -1
  296. package/cjs/utils/index.js +0 -8
  297. package/cjs/utils/index.js.map +0 -1
  298. package/dts/adb.d.ts +0 -46
  299. package/dts/adb.d.ts.map +0 -1
  300. package/dts/auth.d.ts.map +0 -1
  301. package/dts/backend.d.ts +0 -15
  302. package/dts/backend.d.ts.map +0 -1
  303. package/dts/commands/base.d.ts.map +0 -1
  304. package/dts/commands/demo-mode.d.ts +0 -41
  305. package/dts/commands/demo-mode.d.ts.map +0 -1
  306. package/dts/commands/framebuffer.d.ts.map +0 -1
  307. package/dts/commands/index.d.ts +0 -9
  308. package/dts/commands/index.d.ts.map +0 -1
  309. package/dts/commands/install.d.ts +0 -3
  310. package/dts/commands/install.d.ts.map +0 -1
  311. package/dts/commands/reverse.d.ts.map +0 -1
  312. package/dts/commands/shell/index.d.ts +0 -20
  313. package/dts/commands/shell/index.d.ts.map +0 -1
  314. package/dts/commands/shell/legacy.d.ts +0 -27
  315. package/dts/commands/shell/legacy.d.ts.map +0 -1
  316. package/dts/commands/shell/protocol.d.ts +0 -37
  317. package/dts/commands/shell/protocol.d.ts.map +0 -1
  318. package/dts/commands/shell/types.d.ts +0 -15
  319. package/dts/commands/shell/types.d.ts.map +0 -1
  320. package/dts/commands/shell/utils.d.ts.map +0 -1
  321. package/dts/commands/sync/index.d.ts +0 -8
  322. package/dts/commands/sync/index.d.ts.map +0 -1
  323. package/dts/commands/sync/list.d.ts.map +0 -1
  324. package/dts/commands/sync/pull.d.ts +0 -11
  325. package/dts/commands/sync/pull.d.ts.map +0 -1
  326. package/dts/commands/sync/push.d.ts +0 -8
  327. package/dts/commands/sync/push.d.ts.map +0 -1
  328. package/dts/commands/sync/request.d.ts.map +0 -1
  329. package/dts/commands/sync/response.d.ts.map +0 -1
  330. package/dts/commands/sync/stat.d.ts.map +0 -1
  331. package/dts/commands/sync/sync.d.ts +0 -68
  332. package/dts/commands/sync/sync.d.ts.map +0 -1
  333. package/dts/crypto.d.ts +0 -17
  334. package/dts/crypto.d.ts.map +0 -1
  335. package/dts/index.d.ts +0 -11
  336. package/dts/index.d.ts.map +0 -1
  337. package/dts/packet.d.ts +0 -27
  338. package/dts/packet.d.ts.map +0 -1
  339. package/dts/socket/close-event-emitter.d.ts +0 -8
  340. package/dts/socket/close-event-emitter.d.ts.map +0 -1
  341. package/dts/socket/controller.d.ts +0 -43
  342. package/dts/socket/controller.d.ts.map +0 -1
  343. package/dts/socket/data-event-emitter.d.ts +0 -10
  344. package/dts/socket/data-event-emitter.d.ts.map +0 -1
  345. package/dts/socket/dispatcher.d.ts.map +0 -1
  346. package/dts/socket/index.d.ts +0 -7
  347. package/dts/socket/index.d.ts.map +0 -1
  348. package/dts/socket/logger.d.ts +0 -9
  349. package/dts/socket/logger.d.ts.map +0 -1
  350. package/dts/socket/socket.d.ts +0 -22
  351. package/dts/socket/socket.d.ts.map +0 -1
  352. package/dts/stream/buffered-stream.d.ts +0 -30
  353. package/dts/stream/buffered-stream.d.ts.map +0 -1
  354. package/dts/stream/index.d.ts +0 -3
  355. package/dts/stream/index.d.ts.map +0 -1
  356. package/dts/stream/stream.d.ts +0 -15
  357. package/dts/stream/stream.d.ts.map +0 -1
  358. package/dts/utils/auto-reset-event.d.ts.map +0 -1
  359. package/dts/utils/base64.d.ts +0 -7
  360. package/dts/utils/base64.d.ts.map +0 -1
  361. package/dts/utils/chunk.d.ts +0 -3
  362. package/dts/utils/chunk.d.ts.map +0 -1
  363. package/dts/utils/event-queue.d.ts +0 -35
  364. package/dts/utils/event-queue.d.ts.map +0 -1
  365. package/dts/utils/index.d.ts +0 -5
  366. package/dts/utils/index.d.ts.map +0 -1
  367. package/esm/commands/demo-mode.js +0 -170
  368. package/esm/commands/demo-mode.js.map +0 -1
  369. package/esm/commands/shell/index.js +0 -52
  370. package/esm/commands/shell/index.js.map +0 -1
  371. package/esm/commands/shell/legacy.js +0 -33
  372. package/esm/commands/shell/legacy.js.map +0 -1
  373. package/esm/commands/shell/protocol.js +0 -79
  374. package/esm/commands/shell/protocol.js.map +0 -1
  375. package/esm/commands/shell/types.js.map +0 -1
  376. package/esm/commands/shell/utils.js.map +0 -1
  377. package/esm/socket/close-event-emitter.js +0 -28
  378. package/esm/socket/close-event-emitter.js.map +0 -1
  379. package/esm/socket/data-event-emitter.js +0 -25
  380. package/esm/socket/data-event-emitter.js.map +0 -1
  381. package/esm/socket/logger.js +0 -2
  382. package/esm/socket/logger.js.map +0 -1
  383. package/esm/stream/buffered-stream.js +0 -73
  384. package/esm/stream/buffered-stream.js.map +0 -1
  385. package/esm/stream/stream.js +0 -41
  386. package/esm/stream/stream.js.map +0 -1
  387. package/esm/utils/chunk.js +0 -70
  388. package/esm/utils/chunk.js.map +0 -1
  389. package/esm/utils/event-queue.js +0 -104
  390. package/esm/utils/event-queue.js.map +0 -1
  391. package/src/commands/demo-mode.ts +0 -160
  392. package/src/commands/shell/index.ts +0 -68
  393. package/src/commands/shell/legacy.ts +0 -42
  394. package/src/commands/shell/protocol.ts +0 -94
  395. package/src/commands/shell/types.ts +0 -21
  396. package/src/socket/close-event-emitter.ts +0 -28
  397. package/src/socket/controller.ts +0 -105
  398. package/src/socket/data-event-emitter.ts +0 -27
  399. package/src/socket/logger.ts +0 -12
  400. package/src/stream/buffered-stream.ts +0 -100
  401. package/src/stream/stream.ts +0 -50
  402. package/src/utils/chunk.ts +0 -70
  403. package/src/utils/event-queue.ts +0 -145
  404. package/tsconfig.cjs.json +0 -11
  405. package/tsconfig.esm.json +0 -28
  406. package/tsconfig.esm.tsbuildinfo +0 -1305
  407. package/tsconfig.json +0 -18
package/esm/auth.js CHANGED
@@ -1,135 +1,95 @@
1
- import { __asyncGenerator, __asyncValues, __await, __awaiter } from "tslib";
2
1
  import { PromiseResolver } from '@yume-chan/async';
3
- import { calculatePublicKey, calculatePublicKeyLength, sign } from './crypto';
4
- import { AdbCommand } from './packet';
5
- import { calculateBase64EncodedLength, encodeBase64 } from './utils';
2
+ import { calculatePublicKey, calculatePublicKeyLength, sign } from './crypto.js';
3
+ import { AdbCommand } from './packet.js';
4
+ import { calculateBase64EncodedLength, encodeBase64 } from './utils/index.js';
6
5
  export var AdbAuthType;
7
6
  (function (AdbAuthType) {
8
7
  AdbAuthType[AdbAuthType["Token"] = 1] = "Token";
9
8
  AdbAuthType[AdbAuthType["Signature"] = 2] = "Signature";
10
9
  AdbAuthType[AdbAuthType["PublicKey"] = 3] = "PublicKey";
11
- })(AdbAuthType || (AdbAuthType = {}));
12
- export const AdbSignatureAuthenticator = function (credentialStore, getNextRequest) {
13
- return __asyncGenerator(this, arguments, function* () {
14
- var e_1, _a;
15
- try {
16
- for (var _b = __asyncValues(credentialStore.iterateKeys()), _c; _c = yield __await(_b.next()), !_c.done;) {
17
- const key = _c.value;
18
- const packet = yield __await(getNextRequest());
19
- if (packet.arg0 !== AdbAuthType.Token) {
20
- return yield __await(void 0);
21
- }
22
- const signature = sign(key, packet.payload);
23
- yield yield __await({
24
- command: AdbCommand.Auth,
25
- arg0: AdbAuthType.Signature,
26
- arg1: 0,
27
- payload: signature,
28
- });
29
- }
30
- }
31
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
32
- finally {
33
- try {
34
- if (_c && !_c.done && (_a = _b.return)) yield __await(_a.call(_b));
35
- }
36
- finally { if (e_1) throw e_1.error; }
37
- }
38
- });
39
- };
40
- export const AdbPublicKeyAuthenticator = function (credentialStore, getNextRequest) {
41
- return __asyncGenerator(this, arguments, function* () {
42
- var e_2, _a;
43
- const packet = yield __await(getNextRequest());
10
+ })(AdbAuthType = AdbAuthType || (AdbAuthType = {}));
11
+ export const AdbSignatureAuthenticator = async function* (credentialStore, getNextRequest) {
12
+ for await (const key of credentialStore.iterateKeys()) {
13
+ const packet = await getNextRequest();
44
14
  if (packet.arg0 !== AdbAuthType.Token) {
45
- return yield __await(void 0);
46
- }
47
- let privateKey;
48
- try {
49
- for (var _b = __asyncValues(credentialStore.iterateKeys()), _c; _c = yield __await(_b.next()), !_c.done;) {
50
- const key = _c.value;
51
- privateKey = key;
52
- break;
53
- }
54
- }
55
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
56
- finally {
57
- try {
58
- if (_c && !_c.done && (_a = _b.return)) yield __await(_a.call(_b));
59
- }
60
- finally { if (e_2) throw e_2.error; }
61
- }
62
- if (!privateKey) {
63
- privateKey = yield __await(credentialStore.generateKey());
15
+ return;
64
16
  }
65
- const publicKeyLength = calculatePublicKeyLength();
66
- const [publicKeyBase64Length] = calculateBase64EncodedLength(publicKeyLength);
67
- // The public key is null terminated,
68
- // So we allocate the buffer with one extra byte.
69
- const publicKeyBuffer = new ArrayBuffer(publicKeyBase64Length + 1);
70
- calculatePublicKey(privateKey, publicKeyBuffer);
71
- encodeBase64(publicKeyBuffer, 0, publicKeyLength, publicKeyBuffer);
72
- yield yield __await({
17
+ const signature = sign(key, packet.payload);
18
+ yield {
73
19
  command: AdbCommand.Auth,
74
- arg0: AdbAuthType.PublicKey,
20
+ arg0: AdbAuthType.Signature,
75
21
  arg1: 0,
76
- payload: publicKeyBuffer
77
- });
78
- });
22
+ payload: new Uint8Array(signature),
23
+ };
24
+ }
25
+ };
26
+ export const AdbPublicKeyAuthenticator = async function* (credentialStore, getNextRequest) {
27
+ const packet = await getNextRequest();
28
+ if (packet.arg0 !== AdbAuthType.Token) {
29
+ return;
30
+ }
31
+ let privateKey;
32
+ for await (const key of credentialStore.iterateKeys()) {
33
+ privateKey = key;
34
+ break;
35
+ }
36
+ if (!privateKey) {
37
+ privateKey = await credentialStore.generateKey();
38
+ }
39
+ const publicKeyLength = calculatePublicKeyLength();
40
+ const [publicKeyBase64Length] = calculateBase64EncodedLength(publicKeyLength);
41
+ // The public key is null terminated,
42
+ // So we allocate the buffer with one extra byte.
43
+ const publicKeyBuffer = new Uint8Array(publicKeyBase64Length + 1);
44
+ calculatePublicKey(privateKey, publicKeyBuffer);
45
+ encodeBase64(publicKeyBuffer.subarray(0, publicKeyLength), publicKeyBuffer);
46
+ yield {
47
+ command: AdbCommand.Auth,
48
+ arg0: AdbAuthType.PublicKey,
49
+ arg1: 0,
50
+ payload: publicKeyBuffer,
51
+ };
79
52
  };
80
53
  export const AdbDefaultAuthenticators = [
81
54
  AdbSignatureAuthenticator,
82
- AdbPublicKeyAuthenticator
55
+ AdbPublicKeyAuthenticator,
83
56
  ];
84
57
  export class AdbAuthenticationHandler {
58
+ authenticators;
59
+ credentialStore;
60
+ pendingRequest = new PromiseResolver();
61
+ iterator;
85
62
  constructor(authenticators, credentialStore) {
86
- this.pendingRequest = new PromiseResolver();
87
- this.getNextRequest = () => {
88
- return this.pendingRequest.promise;
89
- };
90
63
  this.authenticators = authenticators;
91
64
  this.credentialStore = credentialStore;
92
65
  }
93
- runAuthenticator() {
94
- return __asyncGenerator(this, arguments, function* runAuthenticator_1() {
95
- var e_3, _a;
96
- for (const authenticator of this.authenticators) {
97
- try {
98
- for (var _b = (e_3 = void 0, __asyncValues(authenticator(this.credentialStore, this.getNextRequest))), _c; _c = yield __await(_b.next()), !_c.done;) {
99
- const packet = _c.value;
100
- // If the authenticator yielded a response
101
- // Prepare `nextRequest` for next authentication request
102
- this.pendingRequest = new PromiseResolver();
103
- // Yield the response to outer layer
104
- yield yield __await(packet);
105
- }
106
- }
107
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
108
- finally {
109
- try {
110
- if (_c && !_c.done && (_a = _b.return)) yield __await(_a.call(_b));
111
- }
112
- finally { if (e_3) throw e_3.error; }
113
- }
114
- // If the authenticator returned,
115
- // Next authenticator will be given the same `pendingRequest`
66
+ getNextRequest = () => {
67
+ return this.pendingRequest.promise;
68
+ };
69
+ async *runAuthenticator() {
70
+ for (const authenticator of this.authenticators) {
71
+ for await (const packet of authenticator(this.credentialStore, this.getNextRequest)) {
72
+ // If the authenticator yielded a response
73
+ // Prepare `nextRequest` for next authentication request
74
+ this.pendingRequest = new PromiseResolver();
75
+ // Yield the response to outer layer
76
+ yield packet;
116
77
  }
117
- throw new Error('Cannot authenticate with device');
118
- });
78
+ // If the authenticator returned,
79
+ // Next authenticator will be given the same `pendingRequest`
80
+ }
81
+ throw new Error('Cannot authenticate with device');
119
82
  }
120
- handle(packet) {
121
- return __awaiter(this, void 0, void 0, function* () {
122
- if (!this.iterator) {
123
- this.iterator = this.runAuthenticator();
124
- }
125
- this.pendingRequest.resolve(packet);
126
- const result = yield this.iterator.next();
127
- return result.value;
128
- });
83
+ async handle(packet) {
84
+ if (!this.iterator) {
85
+ this.iterator = this.runAuthenticator();
86
+ }
87
+ this.pendingRequest.resolve(packet);
88
+ const result = await this.iterator.next();
89
+ return result.value;
129
90
  }
130
91
  dispose() {
131
- var _a, _b;
132
- (_b = (_a = this.iterator) === null || _a === void 0 ? void 0 : _a.return) === null || _b === void 0 ? void 0 : _b.call(_a);
92
+ this.iterator?.return?.();
133
93
  }
134
94
  }
135
95
  //# sourceMappingURL=auth.js.map
package/esm/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { ValueOrPromise } from '@yume-chan/struct';
2
+ import type { AdbPacketCore, AdbPacketInit } from "./packet.js";
3
+ import type { ReadableWritablePair } from "./stream/index.js";
4
+ export interface AdbBackend {
5
+ readonly serial: string;
6
+ readonly name: string | undefined;
7
+ connect(): ValueOrPromise<ReadableWritablePair<AdbPacketCore, AdbPacketInit>>;
8
+ }
9
+ //# sourceMappingURL=backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../src/backend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAElC,OAAO,IAAI,cAAc,CAAC,oBAAoB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;CACjF"}
@@ -1,5 +1,5 @@
1
1
  import { AutoDisposable } from '@yume-chan/event';
2
- import { Adb } from '../adb';
2
+ import type { Adb } from '../adb.js';
3
3
  export declare class AdbCommandBase extends AutoDisposable {
4
4
  protected adb: Adb;
5
5
  constructor(adb: Adb);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/commands/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAErC,qBAAa,cAAe,SAAQ,cAAc;IAC9C,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;gBAEA,GAAG,EAAE,GAAG;CAI9B"}
@@ -1,5 +1,6 @@
1
1
  import { AutoDisposable } from '@yume-chan/event';
2
2
  export class AdbCommandBase extends AutoDisposable {
3
+ adb;
3
4
  constructor(adb) {
4
5
  super();
5
6
  this.adb = adb;
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/commands/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,MAAM,OAAO,cAAe,SAAQ,cAAc;IAG9C,YAAmB,GAAQ;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;CACJ"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/commands/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,MAAM,OAAO,cAAe,SAAQ,cAAc;IACpC,GAAG,CAAM;IAEnB,YAAmB,GAAQ;QACvB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import Struct from "@yume-chan/struct";
2
- import { Adb } from '../adb';
2
+ import type { Adb } from '../adb.js';
3
3
  export declare const AdbFrameBufferV1: Struct<{
4
4
  bpp: number;
5
5
  size: number;
@@ -13,7 +13,7 @@ export declare const AdbFrameBufferV1: Struct<{
13
13
  green_length: number;
14
14
  alpha_offset: number;
15
15
  alpha_length: number;
16
- data: Uint8ClampedArray;
16
+ data: Uint8Array;
17
17
  }, "size", {}, undefined>;
18
18
  export declare type AdbFrameBufferV1 = typeof AdbFrameBufferV1['TDeserializeResult'];
19
19
  export declare const AdbFrameBufferV2: Struct<{
@@ -30,7 +30,7 @@ export declare const AdbFrameBufferV2: Struct<{
30
30
  green_length: number;
31
31
  alpha_offset: number;
32
32
  alpha_length: number;
33
- data: Uint8ClampedArray;
33
+ data: Uint8Array;
34
34
  }, "size", {}, undefined>;
35
35
  export declare type AdbFrameBufferV2 = typeof AdbFrameBufferV2['TDeserializeResult'];
36
36
  export declare type AdbFrameBuffer = AdbFrameBufferV1 | AdbFrameBufferV2;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framebuffer.d.ts","sourceRoot":"","sources":["../../src/commands/framebuffer.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAoBrC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;yBAcuB,CAAC;AAErD,oBAAY,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;AAE7E,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;yBAeuB,CAAC;AAErD,oBAAY,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;AAE7E,oBAAY,cAAc,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAEjE,wBAAsB,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,CAYnE"}
@@ -1,6 +1,5 @@
1
- import { __awaiter } from "tslib";
2
1
  import Struct from "@yume-chan/struct";
3
- import { AdbBufferedStream } from '../stream';
2
+ import { AdbBufferedStream } from '../stream/index.js';
4
3
  const Version = new Struct({ littleEndian: true })
5
4
  .uint32('version');
6
5
  /*
@@ -28,7 +27,7 @@ export const AdbFrameBufferV1 = new Struct({ littleEndian: true })
28
27
  .uint32('green_length')
29
28
  .uint32('alpha_offset')
30
29
  .uint32('alpha_length')
31
- .uint8ClampedArray('data', { lengthField: 'size' });
30
+ .uint8Array('data', { lengthField: 'size' });
32
31
  export const AdbFrameBufferV2 = new Struct({ littleEndian: true })
33
32
  .uint32('bpp')
34
33
  .uint32('colorSpace')
@@ -43,20 +42,18 @@ export const AdbFrameBufferV2 = new Struct({ littleEndian: true })
43
42
  .uint32('green_length')
44
43
  .uint32('alpha_offset')
45
44
  .uint32('alpha_length')
46
- .uint8ClampedArray('data', { lengthField: 'size' });
47
- export function framebuffer(adb) {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- const socket = yield adb.createSocket('framebuffer:');
50
- const stream = new AdbBufferedStream(socket);
51
- const { version } = yield Version.deserialize(stream);
52
- switch (version) {
53
- case 1:
54
- return AdbFrameBufferV1.deserialize(stream);
55
- case 2:
56
- return AdbFrameBufferV2.deserialize(stream);
57
- default:
58
- throw new Error('Unknown FrameBuffer version');
59
- }
60
- });
45
+ .uint8Array('data', { lengthField: 'size' });
46
+ export async function framebuffer(adb) {
47
+ const socket = await adb.createSocket('framebuffer:');
48
+ const stream = new AdbBufferedStream(socket);
49
+ const { version } = await Version.deserialize(stream);
50
+ switch (version) {
51
+ case 1:
52
+ return AdbFrameBufferV1.deserialize(stream);
53
+ case 2:
54
+ return AdbFrameBufferV2.deserialize(stream);
55
+ default:
56
+ throw new Error('Unknown FrameBuffer version');
57
+ }
61
58
  }
62
59
  //# sourceMappingURL=framebuffer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"framebuffer.js","sourceRoot":"","sources":["../../src/commands/framebuffer.ts"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,MAAM,OAAO,GACT,IAAI,MAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,SAAS,CAAC,CAAC;AAE3B;;;;;;;;;;;GAWG;AAEH,MAAM,CAAC,MAAM,gBAAgB,GACzB,IAAI,MAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,KAAK,CAAC;KACb,MAAM,CAAC,MAAM,CAAC;KACd,MAAM,CAAC,OAAO,CAAC;KACf,MAAM,CAAC,QAAQ,CAAC;KAChB,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,aAAa,CAAC;KACrB,MAAM,CAAC,aAAa,CAAC;KACrB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,iBAAiB,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;AAI5D,MAAM,CAAC,MAAM,gBAAgB,GACzB,IAAI,MAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,KAAK,CAAC;KACb,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,MAAM,CAAC;KACd,MAAM,CAAC,OAAO,CAAC;KACf,MAAM,CAAC,QAAQ,CAAC;KAChB,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,aAAa,CAAC;KACrB,MAAM,CAAC,aAAa,CAAC;KACrB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,iBAAiB,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;AAM5D,MAAM,UAAgB,WAAW,CAAC,GAAQ;;QACtC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtD,QAAQ,OAAO,EAAE;YACb,KAAK,CAAC;gBACF,OAAO,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAChD,KAAK,CAAC;gBACF,OAAO,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAChD;gBACI,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SACtD;IACL,CAAC;CAAA"}
1
+ {"version":3,"file":"framebuffer.js","sourceRoot":"","sources":["../../src/commands/framebuffer.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,OAAO,GACT,IAAI,MAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,SAAS,CAAC,CAAC;AAE3B;;;;;;;;;;;GAWG;AAEH,MAAM,CAAC,MAAM,gBAAgB,GACzB,IAAI,MAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,KAAK,CAAC;KACb,MAAM,CAAC,MAAM,CAAC;KACd,MAAM,CAAC,OAAO,CAAC;KACf,MAAM,CAAC,QAAQ,CAAC;KAChB,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,aAAa,CAAC;KACrB,MAAM,CAAC,aAAa,CAAC;KACrB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,UAAU,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;AAIrD,MAAM,CAAC,MAAM,gBAAgB,GACzB,IAAI,MAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,KAAK,CAAC;KACb,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,MAAM,CAAC;KACd,MAAM,CAAC,OAAO,CAAC;KACf,MAAM,CAAC,QAAQ,CAAC;KAChB,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,aAAa,CAAC;KACrB,MAAM,CAAC,aAAa,CAAC;KACrB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,MAAM,CAAC,cAAc,CAAC;KACtB,UAAU,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;AAMrD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAQ;IACtC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACtD,QAAQ,OAAO,EAAE;QACb,KAAK,CAAC;YACF,OAAO,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAChD,KAAK,CAAC;YACF,OAAO,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAChD;YACI,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;KACtD;AACL,CAAC"}
@@ -0,0 +1,9 @@
1
+ export * from './base.js';
2
+ export * from './framebuffer.js';
3
+ export * from './install.js';
4
+ export * from './power.js';
5
+ export * from './reverse.js';
6
+ export * from './subprocess/index.js';
7
+ export * from './sync/index.js';
8
+ export * from './tcpip.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC"}
@@ -1,9 +1,9 @@
1
- export * from './base';
2
- export * from './demo-mode';
3
- export * from './framebuffer';
4
- export * from './install';
5
- export * from './reverse';
6
- export * from './shell';
7
- export * from './sync';
8
- export * from './tcpip';
1
+ export * from './base.js';
2
+ export * from './framebuffer.js';
3
+ export * from './install.js';
4
+ export * from './power.js';
5
+ export * from './reverse.js';
6
+ export * from './subprocess/index.js';
7
+ export * from './sync/index.js';
8
+ export * from './tcpip.js';
9
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Adb } from "../adb.js";
2
+ import { WritableStream } from "../stream/index.js";
3
+ export declare function install(adb: Adb): WritableStream<Uint8Array>;
4
+ //# sourceMappingURL=install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAsB,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIxE,wBAAgB,OAAO,CACnB,GAAG,EAAE,GAAG,GACT,cAAc,CAAC,UAAU,CAAC,CAwB5B"}
@@ -1,16 +1,24 @@
1
- import { __awaiter } from "tslib";
2
- import { escapeArg } from "./shell";
3
- export function install(adb, apk, onProgress) {
4
- return __awaiter(this, void 0, void 0, function* () {
5
- const filename = `/data/local/tmp/${Math.random().toString().substr(2)}.apk`;
6
- // Upload apk file to tmp folder
7
- const sync = yield adb.sync();
8
- yield sync.write(filename, apk, undefined, undefined, onProgress);
9
- sync.dispose();
10
- // Invoke `pm install` to install it
11
- yield adb.childProcess.exec('pm', 'install', escapeArg(filename));
12
- // Remove the temp file
13
- yield adb.rm(filename);
1
+ import { WrapWritableStream } from "../stream/index.js";
2
+ import { escapeArg } from "./subprocess/index.js";
3
+ export function install(adb) {
4
+ const filename = `/data/local/tmp/${Math.random().toString().substring(2)}.apk`;
5
+ return new WrapWritableStream({
6
+ async start() {
7
+ // Upload apk file to tmp folder
8
+ const sync = await adb.sync();
9
+ const writable = sync.write(filename, undefined, undefined);
10
+ return {
11
+ writable,
12
+ state: sync,
13
+ };
14
+ },
15
+ async close(sync) {
16
+ sync.dispose();
17
+ // Invoke `pm install` to install it
18
+ await adb.subprocess.spawnAndWaitLegacy(['pm', 'install', escapeArg(filename)]);
19
+ // Remove the temp file
20
+ await adb.rm(filename);
21
+ }
14
22
  });
15
23
  }
16
24
  //# sourceMappingURL=install.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,UAAgB,OAAO,CACzB,GAAQ,EACR,GAAqE,EACrE,UAAuC;;QAEvC,MAAM,QAAQ,GAAG,mBAAmB,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QAE7E,gCAAgC;QAChC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAClE,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,oCAAoC;QACpC,MAAM,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAElE,uBAAuB;QACvB,MAAM,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC;CAAA"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAkB,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGlD,MAAM,UAAU,OAAO,CACnB,GAAQ;IAER,MAAM,QAAQ,GAAG,mBAAmB,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IAEhF,OAAO,IAAI,kBAAkB,CAAkD;QAC3E,KAAK,CAAC,KAAK;YACP,gCAAgC;YAChC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YAE5D,OAAO;gBACH,QAAQ;gBACR,KAAK,EAAE,IAAI;aACd,CAAC;QACN,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,IAAI;YACZ,IAAI,CAAC,OAAO,EAAE,CAAC;YAEf,oCAAoC;YACpC,MAAM,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAEhF,uBAAuB;YACvB,MAAM,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;KACJ,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { AdbCommandBase } from "./base.js";
2
+ export declare class AdbPower extends AdbCommandBase {
3
+ reboot(name?: string): Promise<string>;
4
+ bootloader(): Promise<string>;
5
+ fastboot(): Promise<string>;
6
+ recovery(): Promise<string>;
7
+ sideload(): Promise<string>;
8
+ /**
9
+ * Reboot to Qualcomm Emergency Download (EDL) Mode.
10
+ *
11
+ * Only works on some Qualcomm devices.
12
+ */
13
+ qualcommEdlMode(): Promise<string>;
14
+ powerOff(): Promise<string>;
15
+ powerButton(longPress?: boolean): Promise<string>;
16
+ /**
17
+ * Reboot to Samsung Odin download mode.
18
+ *
19
+ * Only works on Samsung devices.
20
+ */
21
+ samsungOdin(): Promise<string>;
22
+ }
23
+ //# sourceMappingURL=power.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"power.d.ts","sourceRoot":"","sources":["../../src/commands/power.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,qBAAa,QAAS,SAAQ,cAAc;IACjC,MAAM,CAAC,IAAI,GAAE,MAAW;IAIxB,UAAU;IAIV,QAAQ;IAIR,QAAQ;IAIR,QAAQ;IAIf;;;;OAIG;IACI,eAAe;IAIf,QAAQ;IAIR,WAAW,CAAC,SAAS,GAAE,OAAe;IAI7C;;;;OAIG;IACI,WAAW;CAGrB"}
@@ -0,0 +1,45 @@
1
+ // cspell: ignore bootloader
2
+ // cspell: ignore fastboot
3
+ // cspell: ignore keyevent
4
+ // cspell: ignore longpress
5
+ import { AdbCommandBase } from "./base.js";
6
+ export class AdbPower extends AdbCommandBase {
7
+ reboot(name = '') {
8
+ return this.adb.createSocketAndWait(`reboot:${name}`);
9
+ }
10
+ bootloader() {
11
+ return this.reboot('bootloader');
12
+ }
13
+ fastboot() {
14
+ return this.reboot('fastboot');
15
+ }
16
+ recovery() {
17
+ return this.reboot('recovery');
18
+ }
19
+ sideload() {
20
+ return this.reboot('sideload');
21
+ }
22
+ /**
23
+ * Reboot to Qualcomm Emergency Download (EDL) Mode.
24
+ *
25
+ * Only works on some Qualcomm devices.
26
+ */
27
+ qualcommEdlMode() {
28
+ return this.reboot('edl');
29
+ }
30
+ powerOff() {
31
+ return this.adb.subprocess.spawnAndWaitLegacy(['reboot', '-p']);
32
+ }
33
+ powerButton(longPress = false) {
34
+ return this.adb.subprocess.spawnAndWaitLegacy(['input', 'keyevent', longPress ? '--longpress POWER' : 'POWER']);
35
+ }
36
+ /**
37
+ * Reboot to Samsung Odin download mode.
38
+ *
39
+ * Only works on Samsung devices.
40
+ */
41
+ samsungOdin() {
42
+ return this.reboot('download');
43
+ }
44
+ }
45
+ //# sourceMappingURL=power.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"power.js","sourceRoot":"","sources":["../../src/commands/power.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,0BAA0B;AAC1B,0BAA0B;AAC1B,2BAA2B;AAE3B,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,MAAM,OAAO,QAAS,SAAQ,cAAc;IACjC,MAAM,CAAC,OAAe,EAAE;QAC3B,OAAO,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACI,eAAe;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;IACpE,CAAC;IAEM,WAAW,CAAC,YAAqB,KAAK;QACzC,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACpH,CAAC;IAED;;;;OAIG;IACI,WAAW;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;CACJ"}
@@ -1,8 +1,8 @@
1
1
  import { AutoDisposable } from '@yume-chan/event';
2
- import { AdbPacket } from '../packet';
3
- import { AdbIncomingSocketEventArgs, AdbPacketDispatcher, AdbSocket } from '../socket';
2
+ import type { AdbPacketCore } from '../packet.js';
3
+ import type { AdbIncomingSocketEventArgs, AdbPacketDispatcher, AdbSocket } from '../socket/index.js';
4
4
  export interface AdbReverseHandler {
5
- onSocket(packet: AdbPacket, socket: AdbSocket): void;
5
+ onSocket(packet: AdbPacketCore, socket: AdbSocket): void;
6
6
  }
7
7
  export interface AdbForwardListener {
8
8
  deviceSerial: string;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reverse.d.ts","sourceRoot":"","sources":["../../src/commands/reverse.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAIrG,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;CAC5D;AAED,MAAM,WAAW,kBAAkB;IAC/B,YAAY,EAAE,MAAM,CAAC;IAErB,SAAS,EAAE,MAAM,CAAC;IAElB,UAAU,EAAE,MAAM,CAAC;CACtB;AAcD,qBAAa,iBAAkB,SAAQ,cAAc;IACjD,SAAS,CAAC,kBAAkB,iCAAwC;IAEpE,SAAS,CAAC,wBAAwB,sBAA6B;IAE/D,SAAS,CAAC,UAAU,EAAE,mBAAmB,CAAC;IAE1C,SAAS,CAAC,SAAS,UAAS;gBAET,UAAU,EAAE,mBAAmB;IAOlD,SAAS,CAAC,oBAAoB,CAAC,CAAC,EAAE,0BAA0B,GAAG,IAAI;YAcrD,oBAAoB;YAKpB,WAAW;IASZ,IAAI,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAYlD;;;;;OAKG;IACU,GAAG,CACZ,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,GAC3B,OAAO,CAAC,MAAM,CAAC;IAiBL,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ1C"}