@yume-chan/adb 0.0.9 → 0.0.10

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 (205) hide show
  1. package/CHANGELOG.json +23 -0
  2. package/CHANGELOG.md +16 -0
  3. package/LICENSE +21 -21
  4. package/README.md +227 -257
  5. package/dts/adb.d.ts.map +1 -1
  6. package/dts/auth.d.ts +11 -1
  7. package/dts/auth.d.ts.map +1 -1
  8. package/dts/backend.d.ts +3 -5
  9. package/dts/backend.d.ts.map +1 -1
  10. package/dts/commands/demo-mode.d.ts +3 -3
  11. package/dts/commands/demo-mode.d.ts.map +1 -1
  12. package/dts/commands/reverse.d.ts +2 -2
  13. package/dts/commands/reverse.d.ts.map +1 -1
  14. package/dts/commands/shell/index.d.ts +31 -5
  15. package/dts/commands/shell/index.d.ts.map +1 -1
  16. package/dts/commands/shell/legacy.d.ts +13 -2
  17. package/dts/commands/shell/legacy.d.ts.map +1 -1
  18. package/dts/commands/shell/protocol.d.ts +11 -3
  19. package/dts/commands/shell/protocol.d.ts.map +1 -1
  20. package/dts/commands/shell/types.d.ts +35 -3
  21. package/dts/commands/shell/types.d.ts.map +1 -1
  22. package/dts/commands/sync/request.d.ts +1 -1
  23. package/dts/commands/sync/request.d.ts.map +1 -1
  24. package/dts/commands/sync/response.d.ts +2 -2
  25. package/dts/commands/sync/response.d.ts.map +1 -1
  26. package/dts/commands/sync/sync.d.ts.map +1 -1
  27. package/dts/crypto.d.ts +7 -0
  28. package/dts/crypto.d.ts.map +1 -1
  29. package/dts/packet.d.ts.map +1 -1
  30. package/dts/socket/close-event-emitter.d.ts.map +1 -1
  31. package/dts/socket/controller.d.ts.map +1 -1
  32. package/dts/socket/data-event-emitter.d.ts.map +1 -1
  33. package/dts/socket/dispatcher.d.ts.map +1 -1
  34. package/dts/stream/buffered-stream.d.ts +2 -4
  35. package/dts/stream/buffered-stream.d.ts.map +1 -1
  36. package/dts/utils/encoding.d.ts +3 -0
  37. package/dts/utils/encoding.d.ts.map +1 -0
  38. package/dts/utils/index.d.ts +1 -0
  39. package/dts/utils/index.d.ts.map +1 -1
  40. package/esm/adb.js +3 -2
  41. package/esm/adb.js.map +1 -1
  42. package/esm/auth.js +2 -2
  43. package/esm/auth.js.map +1 -1
  44. package/esm/commands/demo-mode.js +9 -9
  45. package/esm/commands/demo-mode.js.map +1 -1
  46. package/esm/commands/reverse.js +3 -2
  47. package/esm/commands/reverse.js.map +1 -1
  48. package/esm/commands/shell/index.js +28 -18
  49. package/esm/commands/shell/index.js.map +1 -1
  50. package/esm/commands/shell/legacy.js +16 -0
  51. package/esm/commands/shell/legacy.js.map +1 -1
  52. package/esm/commands/shell/protocol.js +36 -9
  53. package/esm/commands/shell/protocol.js.map +1 -1
  54. package/esm/commands/sync/request.js +5 -4
  55. package/esm/commands/sync/request.js.map +1 -1
  56. package/esm/commands/sync/response.js +4 -3
  57. package/esm/commands/sync/response.js.map +1 -1
  58. package/esm/commands/sync/sync.js.map +1 -1
  59. package/esm/crypto.js +7 -2
  60. package/esm/crypto.js.map +1 -1
  61. package/esm/packet.js +12 -14
  62. package/esm/packet.js.map +1 -1
  63. package/esm/socket/close-event-emitter.js.map +1 -1
  64. package/esm/socket/controller.js.map +1 -1
  65. package/esm/socket/data-event-emitter.js.map +1 -1
  66. package/esm/socket/dispatcher.js +7 -7
  67. package/esm/socket/dispatcher.js.map +1 -1
  68. package/esm/stream/buffered-stream.js +0 -6
  69. package/esm/stream/buffered-stream.js.map +1 -1
  70. package/esm/utils/encoding.js +11 -0
  71. package/esm/utils/encoding.js.map +1 -0
  72. package/esm/utils/index.js +1 -0
  73. package/esm/utils/index.js.map +1 -1
  74. package/package.json +44 -51
  75. package/src/adb.ts +243 -242
  76. package/src/auth.ts +166 -156
  77. package/src/backend.ts +20 -24
  78. package/src/commands/base.ts +11 -11
  79. package/src/commands/demo-mode.ts +160 -160
  80. package/src/commands/framebuffer.ts +73 -73
  81. package/src/commands/index.ts +8 -8
  82. package/src/commands/install.ts +21 -21
  83. package/src/commands/reverse.ts +134 -133
  84. package/src/commands/shell/index.ts +87 -68
  85. package/src/commands/shell/legacy.ts +59 -42
  86. package/src/commands/shell/protocol.ts +121 -94
  87. package/src/commands/shell/types.ts +55 -21
  88. package/src/commands/shell/utils.ts +20 -20
  89. package/src/commands/sync/index.ts +7 -7
  90. package/src/commands/sync/list.ts +39 -39
  91. package/src/commands/sync/pull.ts +34 -34
  92. package/src/commands/sync/push.ts +46 -46
  93. package/src/commands/sync/request.ts +49 -48
  94. package/src/commands/sync/response.ts +58 -57
  95. package/src/commands/sync/stat.ts +121 -121
  96. package/src/commands/sync/sync.ts +113 -113
  97. package/src/commands/tcpip.ts +21 -21
  98. package/src/crypto.ts +285 -280
  99. package/src/features.ts +5 -5
  100. package/src/index.ts +10 -10
  101. package/src/packet.ts +84 -89
  102. package/src/socket/close-event-emitter.ts +28 -28
  103. package/src/socket/controller.ts +105 -105
  104. package/src/socket/data-event-emitter.ts +27 -27
  105. package/src/socket/dispatcher.ts +269 -269
  106. package/src/socket/index.ts +6 -6
  107. package/src/socket/logger.ts +12 -12
  108. package/src/socket/socket.ts +28 -28
  109. package/src/stream/buffered-stream.ts +92 -100
  110. package/src/stream/index.ts +2 -2
  111. package/src/stream/stream.ts +50 -50
  112. package/src/utils/auto-reset-event.ts +41 -41
  113. package/src/utils/base64.ts +274 -274
  114. package/src/utils/chunk.ts +70 -70
  115. package/src/utils/encoding.ts +13 -0
  116. package/src/utils/event-queue.ts +145 -145
  117. package/src/utils/index.ts +5 -4
  118. package/cjs/adb.js +0 -205
  119. package/cjs/adb.js.map +0 -1
  120. package/cjs/auth.js +0 -141
  121. package/cjs/auth.js.map +0 -1
  122. package/cjs/backend.js +0 -3
  123. package/cjs/backend.js.map +0 -1
  124. package/cjs/commands/base.js +0 -12
  125. package/cjs/commands/base.js.map +0 -1
  126. package/cjs/commands/demo-mode.js +0 -174
  127. package/cjs/commands/demo-mode.js.map +0 -1
  128. package/cjs/commands/framebuffer.js +0 -66
  129. package/cjs/commands/framebuffer.js.map +0 -1
  130. package/cjs/commands/index.js +0 -12
  131. package/cjs/commands/index.js.map +0 -1
  132. package/cjs/commands/install.js +0 -20
  133. package/cjs/commands/install.js.map +0 -1
  134. package/cjs/commands/reverse.js +0 -105
  135. package/cjs/commands/reverse.js.map +0 -1
  136. package/cjs/commands/shell/index.js +0 -56
  137. package/cjs/commands/shell/index.js.map +0 -1
  138. package/cjs/commands/shell/legacy.js +0 -37
  139. package/cjs/commands/shell/legacy.js.map +0 -1
  140. package/cjs/commands/shell/protocol.js +0 -83
  141. package/cjs/commands/shell/protocol.js.map +0 -1
  142. package/cjs/commands/shell/types.js +0 -3
  143. package/cjs/commands/shell/types.js.map +0 -1
  144. package/cjs/commands/shell/utils.js +0 -23
  145. package/cjs/commands/shell/utils.js.map +0 -1
  146. package/cjs/commands/sync/index.js +0 -11
  147. package/cjs/commands/sync/index.js.map +0 -1
  148. package/cjs/commands/sync/list.js +0 -36
  149. package/cjs/commands/sync/list.js.map +0 -1
  150. package/cjs/commands/sync/pull.js +0 -34
  151. package/cjs/commands/sync/pull.js.map +0 -1
  152. package/cjs/commands/sync/push.js +0 -49
  153. package/cjs/commands/sync/push.js.map +0 -1
  154. package/cjs/commands/sync/request.js +0 -48
  155. package/cjs/commands/sync/request.js.map +0 -1
  156. package/cjs/commands/sync/response.js +0 -53
  157. package/cjs/commands/sync/response.js.map +0 -1
  158. package/cjs/commands/sync/stat.js +0 -109
  159. package/cjs/commands/sync/stat.js.map +0 -1
  160. package/cjs/commands/sync/sync.js +0 -118
  161. package/cjs/commands/sync/sync.js.map +0 -1
  162. package/cjs/commands/tcpip.js +0 -28
  163. package/cjs/commands/tcpip.js.map +0 -1
  164. package/cjs/crypto.js +0 -231
  165. package/cjs/crypto.js.map +0 -1
  166. package/cjs/features.js +0 -10
  167. package/cjs/features.js.map +0 -1
  168. package/cjs/index.js +0 -14
  169. package/cjs/index.js.map +0 -1
  170. package/cjs/packet.js +0 -77
  171. package/cjs/packet.js.map +0 -1
  172. package/cjs/socket/close-event-emitter.js +0 -32
  173. package/cjs/socket/close-event-emitter.js.map +0 -1
  174. package/cjs/socket/controller.js +0 -84
  175. package/cjs/socket/controller.js.map +0 -1
  176. package/cjs/socket/data-event-emitter.js +0 -29
  177. package/cjs/socket/data-event-emitter.js.map +0 -1
  178. package/cjs/socket/dispatcher.js +0 -219
  179. package/cjs/socket/dispatcher.js.map +0 -1
  180. package/cjs/socket/index.js +0 -10
  181. package/cjs/socket/index.js.map +0 -1
  182. package/cjs/socket/logger.js +0 -3
  183. package/cjs/socket/logger.js.map +0 -1
  184. package/cjs/socket/socket.js +0 -24
  185. package/cjs/socket/socket.js.map +0 -1
  186. package/cjs/stream/buffered-stream.js +0 -78
  187. package/cjs/stream/buffered-stream.js.map +0 -1
  188. package/cjs/stream/index.js +0 -6
  189. package/cjs/stream/index.js.map +0 -1
  190. package/cjs/stream/stream.js +0 -45
  191. package/cjs/stream/stream.js.map +0 -1
  192. package/cjs/utils/auto-reset-event.js +0 -37
  193. package/cjs/utils/auto-reset-event.js.map +0 -1
  194. package/cjs/utils/base64.js +0 -210
  195. package/cjs/utils/base64.js.map +0 -1
  196. package/cjs/utils/chunk.js +0 -75
  197. package/cjs/utils/chunk.js.map +0 -1
  198. package/cjs/utils/event-queue.js +0 -108
  199. package/cjs/utils/event-queue.js.map +0 -1
  200. package/cjs/utils/index.js +0 -8
  201. package/cjs/utils/index.js.map +0 -1
  202. package/tsconfig.cjs.json +0 -11
  203. package/tsconfig.esm.json +0 -28
  204. package/tsconfig.esm.tsbuildinfo +0 -1305
  205. package/tsconfig.json +0 -18
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DataEventEmitter = void 0;
4
- const tslib_1 = require("tslib");
5
- const async_1 = require("@yume-chan/async");
6
- const event_1 = require("@yume-chan/event");
7
- class DataEventEmitter extends event_1.EventEmitter {
8
- constructor() {
9
- super(...arguments);
10
- this.dispatchLock = new async_1.PromiseResolver();
11
- }
12
- addEventListener(info) {
13
- const remove = super.addEventListener(info);
14
- if (this.listeners.length === 1) {
15
- this.dispatchLock.resolve();
16
- }
17
- return remove;
18
- }
19
- fire(e) {
20
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
21
- yield this.dispatchLock.promise;
22
- for (const info of this.listeners) {
23
- yield info.listener.apply(info.thisArg, [e, ...info.args]);
24
- }
25
- });
26
- }
27
- }
28
- exports.DataEventEmitter = DataEventEmitter;
29
- //# sourceMappingURL=data-event-emitter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data-event-emitter.js","sourceRoot":"","sources":["../../src/socket/data-event-emitter.ts"],"names":[],"mappings":";;;;AAAA,4CAAmD;AACnD,4CAA0E;AAO1E,MAAa,gBAAyB,SAAQ,oBAAsC;IAApF;;QACY,iBAAY,GAAG,IAAI,uBAAe,EAAQ,CAAC;IAiBvD,CAAC;IAfa,gBAAgB,CAAC,IAAiD;QACxE,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;SAC/B;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAEY,IAAI,CAAC,CAAS;;YACvB,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YAEhC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;gBAC/B,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;aAC9D;QACL,CAAC;KAAA;CACJ;AAlBD,4CAkBC"}
@@ -1,219 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdbPacketDispatcher = void 0;
4
- const tslib_1 = require("tslib");
5
- const async_1 = require("@yume-chan/async");
6
- const event_1 = require("@yume-chan/event");
7
- const packet_1 = require("../packet");
8
- const utils_1 = require("../utils");
9
- const controller_1 = require("./controller");
10
- const socket_1 = require("./socket");
11
- const EmptyArrayBuffer = new ArrayBuffer(0);
12
- class AdbPacketDispatcher extends event_1.AutoDisposable {
13
- constructor(backend, logger) {
14
- super();
15
- // ADB socket id starts from 1
16
- // (0 means open failed)
17
- this.initializers = new async_1.AsyncOperationManager(1);
18
- this.sockets = new Map();
19
- this.sendLock = new utils_1.AutoResetEvent();
20
- this.maxPayloadSize = 0;
21
- this.calculateChecksum = true;
22
- this.appendNullToServiceString = true;
23
- this.packetEvent = this.addDisposable(new event_1.EventEmitter());
24
- this.incomingSocketEvent = this.addDisposable(new event_1.EventEmitter());
25
- this.errorEvent = this.addDisposable(new event_1.EventEmitter());
26
- this._running = false;
27
- this.backend = backend;
28
- this.logger = logger;
29
- }
30
- get onPacket() { return this.packetEvent.event; }
31
- get onIncomingSocket() { return this.incomingSocketEvent.event; }
32
- get onError() { return this.errorEvent.event; }
33
- get running() { return this._running; }
34
- receiveLoop() {
35
- var _a, _b;
36
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
37
- try {
38
- while (this._running) {
39
- const packet = yield packet_1.AdbPacket.read(this.backend);
40
- (_b = (_a = this.logger) === null || _a === void 0 ? void 0 : _a.onIncomingPacket) === null || _b === void 0 ? void 0 : _b.call(_a, packet);
41
- switch (packet.command) {
42
- case packet_1.AdbCommand.OK:
43
- this.handleOk(packet);
44
- continue;
45
- case packet_1.AdbCommand.Close:
46
- yield this.handleClose(packet);
47
- continue;
48
- case packet_1.AdbCommand.Write:
49
- if (this.sockets.has(packet.arg1)) {
50
- yield this.sockets.get(packet.arg1).dataEvent.fire(packet.payload);
51
- yield this.sendPacket(packet_1.AdbCommand.OK, packet.arg1, packet.arg0);
52
- }
53
- // Maybe the device is responding to a packet of last connection
54
- // Just ignore it
55
- continue;
56
- case packet_1.AdbCommand.Open:
57
- yield this.handleOpen(packet);
58
- continue;
59
- }
60
- const args = {
61
- handled: false,
62
- packet,
63
- };
64
- this.packetEvent.fire(args);
65
- if (!args.handled) {
66
- this.dispose();
67
- throw new Error(`Unhandled packet with command '${packet.command}'`);
68
- }
69
- }
70
- }
71
- catch (e) {
72
- if (!this._running) {
73
- // ignore error
74
- return;
75
- }
76
- this.errorEvent.fire(e);
77
- }
78
- });
79
- }
80
- handleOk(packet) {
81
- if (this.initializers.resolve(packet.arg1, packet.arg0)) {
82
- // Device successfully created the socket
83
- return;
84
- }
85
- const socket = this.sockets.get(packet.arg1);
86
- if (socket) {
87
- // Device has received last `WRTE` to the socket
88
- socket.ack();
89
- return;
90
- }
91
- // Maybe the device is responding to a packet of last connection
92
- // Tell the device to close the socket
93
- this.sendPacket(packet_1.AdbCommand.Close, packet.arg1, packet.arg0);
94
- }
95
- handleClose(packet) {
96
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
97
- // From https://android.googlesource.com/platform/packages/modules/adb/+/65d18e2c1cc48b585811954892311b28a4c3d188/adb.cpp#459
98
- /* According to protocol.txt, p->msg.arg0 might be 0 to indicate
99
- * a failed OPEN only. However, due to a bug in previous ADB
100
- * versions, CLOSE(0, remote-id, "") was also used for normal
101
- * CLOSE() operations.
102
- */
103
- // So don't return if `reject` didn't find a pending socket
104
- if (packet.arg0 === 0 &&
105
- this.initializers.reject(packet.arg1, new Error('Socket open failed'))) {
106
- // Device failed to create the socket
107
- return;
108
- }
109
- const socket = this.sockets.get(packet.arg1);
110
- if (socket) {
111
- // The device want to close the socket
112
- if (!socket.closed) {
113
- yield this.sendPacket(packet_1.AdbCommand.Close, packet.arg1, packet.arg0);
114
- }
115
- socket.dispose();
116
- this.sockets.delete(packet.arg1);
117
- return;
118
- }
119
- // Maybe the device is responding to a packet of last connection
120
- // Just ignore it
121
- });
122
- }
123
- handleOpen(packet) {
124
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
125
- // AsyncOperationManager doesn't support get and skip an ID
126
- // Use `add` + `resolve` to simulate this behavior
127
- const [localId] = this.initializers.add();
128
- this.initializers.resolve(localId, undefined);
129
- const remoteId = packet.arg0;
130
- const serviceString = this.backend.decodeUtf8(packet.payload);
131
- const controller = new controller_1.AdbSocketController({
132
- dispatcher: this,
133
- localId,
134
- remoteId,
135
- localCreated: false,
136
- serviceString,
137
- });
138
- const socket = new socket_1.AdbSocket(controller);
139
- const args = {
140
- handled: false,
141
- packet,
142
- serviceString,
143
- socket,
144
- };
145
- this.incomingSocketEvent.fire(args);
146
- if (args.handled) {
147
- this.sockets.set(localId, controller);
148
- yield this.sendPacket(packet_1.AdbCommand.OK, localId, remoteId);
149
- }
150
- else {
151
- yield this.sendPacket(packet_1.AdbCommand.Close, 0, remoteId);
152
- }
153
- });
154
- }
155
- start() {
156
- this._running = true;
157
- this.receiveLoop();
158
- }
159
- createSocket(serviceString) {
160
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
161
- if (this.appendNullToServiceString) {
162
- serviceString += '\0';
163
- }
164
- const [localId, initializer] = this.initializers.add();
165
- yield this.sendPacket(packet_1.AdbCommand.Open, localId, 0, serviceString);
166
- const remoteId = yield initializer;
167
- const controller = new controller_1.AdbSocketController({
168
- dispatcher: this,
169
- localId,
170
- remoteId,
171
- localCreated: true,
172
- serviceString,
173
- });
174
- this.sockets.set(controller.localId, controller);
175
- return new socket_1.AdbSocket(controller);
176
- });
177
- }
178
- sendPacket(packetOrCommand, arg0, arg1, payload = EmptyArrayBuffer) {
179
- var _a, _b;
180
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
181
- let init;
182
- if (arg0 === undefined) {
183
- init = packetOrCommand;
184
- }
185
- else {
186
- init = {
187
- command: packetOrCommand,
188
- arg0: arg0,
189
- arg1: arg1,
190
- payload: typeof payload === 'string' ? this.backend.encodeUtf8(payload) : payload,
191
- };
192
- }
193
- if (init.payload &&
194
- init.payload.byteLength > this.maxPayloadSize) {
195
- throw new Error('payload too large');
196
- }
197
- try {
198
- // `AdbPacket.write` writes each packet in two parts
199
- // Use a lock to prevent packets been interlaced
200
- yield this.sendLock.wait();
201
- (_b = (_a = this.logger) === null || _a === void 0 ? void 0 : _a.onOutgoingPacket) === null || _b === void 0 ? void 0 : _b.call(_a, init);
202
- yield packet_1.AdbPacket.write(init, this.calculateChecksum, this.backend);
203
- }
204
- finally {
205
- this.sendLock.notify();
206
- }
207
- });
208
- }
209
- dispose() {
210
- this._running = false;
211
- for (const socket of this.sockets.values()) {
212
- socket.dispose();
213
- }
214
- this.sockets.clear();
215
- super.dispose();
216
- }
217
- }
218
- exports.AdbPacketDispatcher = AdbPacketDispatcher;
219
- //# sourceMappingURL=dispatcher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/socket/dispatcher.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./close-event-emitter"), exports);
5
- tslib_1.__exportStar(require("./controller"), exports);
6
- tslib_1.__exportStar(require("./data-event-emitter"), exports);
7
- tslib_1.__exportStar(require("./dispatcher"), exports);
8
- tslib_1.__exportStar(require("./logger"), exports);
9
- tslib_1.__exportStar(require("./socket"), exports);
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/socket/index.ts"],"names":[],"mappings":";;;AAAA,gEAAsC;AACtC,uDAA6B;AAC7B,+DAAqC;AACrC,uDAA6B;AAC7B,mDAAyB;AACzB,mDAAyB"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/socket/logger.ts"],"names":[],"mappings":""}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdbSocket = void 0;
4
- class AdbSocket {
5
- constructor(controller) {
6
- this.controller = controller;
7
- }
8
- get backend() { return this.controller.backend; }
9
- get localId() { return this.controller.localId; }
10
- get remoteId() { return this.controller.remoteId; }
11
- get localCreated() { return this.controller.localCreated; }
12
- get serviceString() { return this.controller.serviceString; }
13
- get closed() { return this.controller.closed; }
14
- get onData() { return this.controller.dataEvent.event; }
15
- get onClose() { return this.controller.onClose; }
16
- write(data) {
17
- return this.controller.write(data);
18
- }
19
- close() {
20
- return this.controller.close();
21
- }
22
- }
23
- exports.AdbSocket = AdbSocket;
24
- //# sourceMappingURL=socket.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/socket/socket.ts"],"names":[],"mappings":";;;AAEA,MAAa,SAAS;IAclB,YAAmB,UAA+B;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAbD,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;IACxD,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;IACxD,IAAW,QAAQ,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1D,IAAW,YAAY,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;IAClE,IAAW,aAAa,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpE,IAAW,MAAM,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IAEtD,IAAW,MAAM,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;IAMjD,KAAK,CAAC,IAAiB;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAEM,KAAK;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;CACJ;AAzBD,8BAyBC"}
@@ -1,78 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdbBufferedStream = exports.BufferedStream = void 0;
4
- const tslib_1 = require("tslib");
5
- const stream_1 = require("./stream");
6
- class BufferedStream {
7
- constructor(stream) {
8
- this.stream = stream;
9
- }
10
- read(length) {
11
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
12
- let array;
13
- let index;
14
- if (this.buffer) {
15
- const buffer = this.buffer;
16
- if (buffer.byteLength > length) {
17
- this.buffer = buffer.subarray(length);
18
- return buffer.slice(0, length).buffer;
19
- }
20
- array = new Uint8Array(length);
21
- array.set(buffer);
22
- index = buffer.byteLength;
23
- this.buffer = undefined;
24
- }
25
- else {
26
- const buffer = yield this.stream.read(length);
27
- if (buffer.byteLength === length) {
28
- return buffer;
29
- }
30
- if (buffer.byteLength > length) {
31
- this.buffer = new Uint8Array(buffer, length);
32
- return buffer.slice(0, length);
33
- }
34
- array = new Uint8Array(length);
35
- array.set(new Uint8Array(buffer), 0);
36
- index = buffer.byteLength;
37
- }
38
- while (index < length) {
39
- const left = length - index;
40
- const buffer = yield this.stream.read(left);
41
- if (buffer.byteLength > left) {
42
- array.set(new Uint8Array(buffer, 0, left), index);
43
- this.buffer = new Uint8Array(buffer, left);
44
- return array.buffer;
45
- }
46
- array.set(new Uint8Array(buffer), index);
47
- index += buffer.byteLength;
48
- }
49
- return array.buffer;
50
- });
51
- }
52
- close() {
53
- var _a, _b;
54
- (_b = (_a = this.stream).close) === null || _b === void 0 ? void 0 : _b.call(_a);
55
- }
56
- }
57
- exports.BufferedStream = BufferedStream;
58
- class AdbBufferedStream extends BufferedStream {
59
- get backend() { return this.stream.backend; }
60
- get localId() { return this.stream.localId; }
61
- get remoteId() { return this.stream.remoteId; }
62
- get localCreated() { return this.stream.localCreated; }
63
- get serviceString() { return this.stream.serviceString; }
64
- constructor(socket) {
65
- super(new stream_1.AdbSocketStream(socket));
66
- }
67
- write(data) {
68
- return this.stream.write(data);
69
- }
70
- decodeUtf8(buffer) {
71
- return this.backend.decodeUtf8(buffer);
72
- }
73
- encodeUtf8(input) {
74
- return this.backend.encodeUtf8(input);
75
- }
76
- }
77
- exports.AdbBufferedStream = AdbBufferedStream;
78
- //# sourceMappingURL=buffered-stream.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buffered-stream.js","sourceRoot":"","sources":["../../src/stream/buffered-stream.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./buffered-stream"), exports);
5
- tslib_1.__exportStar(require("./stream"), exports);
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/stream/index.ts"],"names":[],"mappings":";;;AAAA,4DAAkC;AAClC,mDAAyB"}
@@ -1,45 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdbSocketStream = void 0;
4
- const tslib_1 = require("tslib");
5
- const event_1 = require("@yume-chan/event");
6
- const utils_1 = require("../utils");
7
- class AdbSocketStream {
8
- constructor(socket) {
9
- this.socket = socket;
10
- this.queue = new utils_1.EventQueue({
11
- highWaterMark: 16 * 1024,
12
- });
13
- this.socket.onData((buffer) => {
14
- if (!this.queue.enqueue(buffer, buffer.byteLength)) {
15
- return event_1.once(this.queue.onDrain);
16
- }
17
- });
18
- this.socket.onClose(() => {
19
- this.queue.end();
20
- });
21
- }
22
- get backend() { return this.socket.backend; }
23
- get localId() { return this.socket.localId; }
24
- get remoteId() { return this.socket.remoteId; }
25
- get localCreated() { return this.socket.localCreated; }
26
- get serviceString() { return this.socket.serviceString; }
27
- read() {
28
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
29
- try {
30
- return yield this.queue.dequeue();
31
- }
32
- catch (_a) {
33
- throw new Error('Can not read after AdbSocketStream has been closed');
34
- }
35
- });
36
- }
37
- write(data) {
38
- return this.socket.write(data);
39
- }
40
- close() {
41
- this.socket.close();
42
- }
43
- }
44
- exports.AdbSocketStream = AdbSocketStream;
45
- //# sourceMappingURL=stream.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream/stream.ts"],"names":[],"mappings":";;;;AAAA,4CAAwC;AAGxC,oCAAsC;AAEtC,MAAa,eAAe;IAWxB,YAAmB,MAAiB;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,KAAK,GAAG,IAAI,kBAAU,CAAc;YACrC,aAAa,EAAE,EAAE,GAAG,IAAI;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAwB,EAAE;YAChD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE;gBAChD,OAAO,YAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aACnC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;YACrB,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACP,CAAC;IAtBD,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACpD,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACpD,IAAW,QAAQ,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtD,IAAW,YAAY,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IAC9D,IAAW,aAAa,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;IAoBnD,IAAI;;YACb,IAAI;gBACA,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;aACrC;YAAC,WAAM;gBACJ,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;aACzE;QACL,CAAC;KAAA;IAEM,KAAK,CAAC,IAAiB;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,KAAK;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;CACJ;AA5CD,0CA4CC"}
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AutoResetEvent = void 0;
4
- const async_1 = require("@yume-chan/async");
5
- class AutoResetEvent {
6
- constructor(initialSet = false) {
7
- this.list = [];
8
- this.blocking = initialSet;
9
- }
10
- wait() {
11
- if (!this.blocking) {
12
- this.blocking = true;
13
- if (this.list.length === 0) {
14
- return Promise.resolve();
15
- }
16
- }
17
- const resolver = new async_1.PromiseResolver();
18
- this.list.push(resolver);
19
- return resolver.promise;
20
- }
21
- notify() {
22
- if (this.list.length !== 0) {
23
- this.list.pop().resolve();
24
- }
25
- else {
26
- this.blocking = false;
27
- }
28
- }
29
- dispose() {
30
- for (const item of this.list) {
31
- item.reject(new Error('The AutoResetEvent has been disposed'));
32
- }
33
- this.list.length = 0;
34
- }
35
- }
36
- exports.AutoResetEvent = AutoResetEvent;
37
- //# sourceMappingURL=auto-reset-event.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auto-reset-event.js","sourceRoot":"","sources":["../../src/utils/auto-reset-event.ts"],"names":[],"mappings":";;;AAAA,4CAAmD;AAGnD,MAAa,cAAc;IAKvB,YAAmB,UAAU,GAAG,KAAK;QAJpB,SAAI,GAA4B,EAAE,CAAC;QAKhD,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YAErB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;gBACxB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;aAC5B;SACJ;QAED,MAAM,QAAQ,GAAG,IAAI,uBAAe,EAAQ,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzB,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC5B,CAAC;IAEM,MAAM;QACT,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAG,CAAC,OAAO,EAAE,CAAC;SAC9B;aAAM;YACH,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;SACzB;IACL,CAAC;IAEM,OAAO;QACV,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;YAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC,CAAC;SAClE;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACzB,CAAC;CACJ;AArCD,wCAqCC"}