@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,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdbLegacyShell = void 0;
4
- const tslib_1 = require("tslib");
5
- const event_1 = require("@yume-chan/event");
6
- class AdbLegacyShell {
7
- constructor(socket) {
8
- this.stdoutEvent = new event_1.EventEmitter();
9
- this.stderrEvent = new event_1.EventEmitter();
10
- this.exitEvent = new event_1.EventEmitter();
11
- this.socket = socket;
12
- this.socket.onData(this.handleData, this);
13
- this.socket.onClose(this.handleExit, this);
14
- }
15
- get onStdout() { return this.stdoutEvent.event; }
16
- get onStderr() { return this.stderrEvent.event; }
17
- get onExit() { return this.exitEvent.event; }
18
- handleData(data) {
19
- this.stdoutEvent.fire(data);
20
- }
21
- handleExit() {
22
- this.exitEvent.fire(0);
23
- }
24
- write(data) {
25
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
26
- this.socket.write(data);
27
- });
28
- }
29
- resize() {
30
- // Not supported
31
- }
32
- kill() {
33
- return this.socket.close();
34
- }
35
- }
36
- exports.AdbLegacyShell = AdbLegacyShell;
37
- //# sourceMappingURL=legacy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"legacy.js","sourceRoot":"","sources":["../../../src/commands/shell/legacy.ts"],"names":[],"mappings":";;;;AAAA,4CAAgD;AAIhD,MAAa,cAAc;IAYvB,YAAmB,MAAiB;QATnB,gBAAW,GAAG,IAAI,oBAAY,EAAe,CAAC;QAG9C,gBAAW,GAAG,IAAI,oBAAY,EAAe,CAAC;QAG9C,cAAS,GAAG,IAAI,oBAAY,EAAU,CAAC;QAIpD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAZD,IAAW,QAAQ,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAGxD,IAAW,QAAQ,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAGxD,IAAW,MAAM,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAQ5C,UAAU,CAAC,IAAiB;QAChC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEO,UAAU;QACd,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAEY,KAAK,CAAC,IAAiB;;YAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;KAAA;IAEM,MAAM;QACT,gBAAgB;IACpB,CAAC;IAEM,IAAI;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;CACJ;AArCD,wCAqCC"}
@@ -1,83 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdbShellProtocol = exports.AdbShellProtocolId = void 0;
4
- const tslib_1 = require("tslib");
5
- const event_1 = require("@yume-chan/event");
6
- const struct_1 = tslib_1.__importStar(require("@yume-chan/struct"));
7
- const stream_1 = require("../../stream");
8
- var AdbShellProtocolId;
9
- (function (AdbShellProtocolId) {
10
- AdbShellProtocolId[AdbShellProtocolId["Stdin"] = 0] = "Stdin";
11
- AdbShellProtocolId[AdbShellProtocolId["Stdout"] = 1] = "Stdout";
12
- AdbShellProtocolId[AdbShellProtocolId["Stderr"] = 2] = "Stderr";
13
- AdbShellProtocolId[AdbShellProtocolId["Exit"] = 3] = "Exit";
14
- AdbShellProtocolId[AdbShellProtocolId["CloseStdin"] = 4] = "CloseStdin";
15
- AdbShellProtocolId[AdbShellProtocolId["WindowSizeChange"] = 5] = "WindowSizeChange";
16
- })(AdbShellProtocolId = exports.AdbShellProtocolId || (exports.AdbShellProtocolId = {}));
17
- const AdbShellProtocolPacket = new struct_1.default({ littleEndian: true })
18
- .uint8('id', struct_1.placeholder())
19
- .uint32('length')
20
- .arrayBuffer('data', { lengthField: 'length' });
21
- /**
22
- * Shell v2 is also called Shell Protocol
23
- */
24
- class AdbShellProtocol {
25
- constructor(socket) {
26
- this.stdoutEvent = new event_1.EventEmitter();
27
- this.stderrEvent = new event_1.EventEmitter();
28
- this.exitEvent = new event_1.EventEmitter();
29
- this.stream = new stream_1.AdbBufferedStream(socket);
30
- this.readData();
31
- }
32
- get onStdout() { return this.stdoutEvent.event; }
33
- get onStderr() { return this.stderrEvent.event; }
34
- get onExit() { return this.exitEvent.event; }
35
- readData() {
36
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
37
- while (true) {
38
- try {
39
- const packet = yield AdbShellProtocolPacket.deserialize(this.stream);
40
- switch (packet.id) {
41
- case AdbShellProtocolId.Stdout:
42
- this.stdoutEvent.fire(packet.data);
43
- break;
44
- case AdbShellProtocolId.Stderr:
45
- this.stderrEvent.fire(packet.data);
46
- break;
47
- case AdbShellProtocolId.Exit:
48
- this.exitEvent.fire(new Uint8Array(packet.data)[0]);
49
- break;
50
- }
51
- }
52
- catch (_a) {
53
- return;
54
- }
55
- }
56
- });
57
- }
58
- write(data) {
59
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
60
- this.stream.write(AdbShellProtocolPacket.serialize({
61
- id: AdbShellProtocolId.Stdin,
62
- data,
63
- }, this.stream));
64
- });
65
- }
66
- resize(rows, cols) {
67
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
68
- this.stream.write(AdbShellProtocolPacket.serialize({
69
- id: AdbShellProtocolId.WindowSizeChange,
70
- data: this.stream.encodeUtf8(
71
- // Correct format is ${rows}x${cols},${x_pixels}x${y_pixels}
72
- // But from https://linux.die.net/man/4/tty_ioctl
73
- // x_pixels and y_pixels are unused
74
- `${rows}x${cols},${0}x${0}\0`),
75
- }, this.stream));
76
- });
77
- }
78
- kill() {
79
- return this.stream.close();
80
- }
81
- }
82
- exports.AdbShellProtocol = AdbShellProtocol;
83
- //# sourceMappingURL=protocol.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/commands/shell/protocol.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/commands/shell/types.ts"],"names":[],"mappings":""}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.escapeArg = void 0;
4
- function escapeArg(s) {
5
- let result = '';
6
- result += `'`;
7
- let base = 0;
8
- while (true) {
9
- const found = s.indexOf(`'`, base);
10
- if (found === -1) {
11
- result += s.substring(base);
12
- break;
13
- }
14
- result += s.substring(base, found);
15
- // a'b becomes a'\'b
16
- result += String.raw `'\''`;
17
- base = found + 1;
18
- }
19
- result += `'`;
20
- return result;
21
- }
22
- exports.escapeArg = escapeArg;
23
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/commands/shell/utils.ts"],"names":[],"mappings":";;;AAAA,SAAgB,SAAS,CAAC,CAAS;IAC/B,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,IAAI,GAAG,CAAC;IAEd,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,OAAO,IAAI,EAAE;QACT,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YACd,MAAM,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5B,MAAM;SACT;QACD,MAAM,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,oBAAoB;QACpB,MAAM,IAAI,MAAM,CAAC,GAAG,CAAA,MAAM,CAAC;QAC3B,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC;KACpB;IAED,MAAM,IAAI,GAAG,CAAC;IACd,OAAO,MAAM,CAAC;AAClB,CAAC;AAnBD,8BAmBC"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./list"), exports);
5
- tslib_1.__exportStar(require("./pull"), exports);
6
- tslib_1.__exportStar(require("./request"), exports);
7
- tslib_1.__exportStar(require("./response"), exports);
8
- tslib_1.__exportStar(require("./push"), exports);
9
- tslib_1.__exportStar(require("./stat"), exports);
10
- tslib_1.__exportStar(require("./sync"), exports);
11
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/sync/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,iDAAuB;AACvB,oDAA0B;AAC1B,qDAA2B;AAC3B,iDAAuB;AACvB,iDAAuB;AACvB,iDAAuB"}
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.adbSyncOpenDir = exports.AdbSyncEntryResponse = void 0;
4
- const tslib_1 = require("tslib");
5
- const struct_1 = tslib_1.__importDefault(require("@yume-chan/struct"));
6
- const request_1 = require("./request");
7
- const response_1 = require("./response");
8
- const stat_1 = require("./stat");
9
- exports.AdbSyncEntryResponse = new struct_1.default({ littleEndian: true })
10
- .fields(stat_1.AdbSyncLstatResponse)
11
- .uint32('nameLength')
12
- .string('name', { lengthField: 'nameLength' })
13
- .extra({ id: response_1.AdbSyncResponseId.Entry });
14
- const ResponseTypes = {
15
- [response_1.AdbSyncResponseId.Entry]: exports.AdbSyncEntryResponse,
16
- [response_1.AdbSyncResponseId.Done]: new response_1.AdbSyncDoneResponse(exports.AdbSyncEntryResponse.size),
17
- };
18
- function adbSyncOpenDir(stream, path) {
19
- return tslib_1.__asyncGenerator(this, arguments, function* adbSyncOpenDir_1() {
20
- yield tslib_1.__await(request_1.adbSyncWriteRequest(stream, request_1.AdbSyncRequestId.List, path));
21
- while (true) {
22
- const response = yield tslib_1.__await(response_1.adbSyncReadResponse(stream, ResponseTypes));
23
- switch (response.id) {
24
- case response_1.AdbSyncResponseId.Entry:
25
- yield yield tslib_1.__await(response);
26
- break;
27
- case response_1.AdbSyncResponseId.Done:
28
- return yield tslib_1.__await(void 0);
29
- default:
30
- throw new Error('Unexpected response id');
31
- }
32
- }
33
- });
34
- }
35
- exports.adbSyncOpenDir = adbSyncOpenDir;
36
- //# sourceMappingURL=list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/sync/list.ts"],"names":[],"mappings":";;;;AAAA,uEAAuC;AAEvC,uCAAkE;AAClE,yCAAyF;AACzF,iCAA8C;AAEjC,QAAA,oBAAoB,GAC7B,IAAI,gBAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,2BAAoB,CAAC;KAC5B,MAAM,CAAC,YAAY,CAAC;KACpB,MAAM,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;KAC7C,KAAK,CAAC,EAAE,EAAE,EAAE,4BAAiB,CAAC,KAAc,EAAE,CAAC,CAAC;AAIzD,MAAM,aAAa,GAAG;IAClB,CAAC,4BAAiB,CAAC,KAAK,CAAC,EAAE,4BAAoB;IAC/C,CAAC,4BAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,8BAAmB,CAAC,4BAAoB,CAAC,IAAI,CAAC;CAC/E,CAAC;AAEF,SAAuB,cAAc,CACjC,MAAyB,EACzB,IAAY;;QAEZ,sBAAM,6BAAmB,CAAC,MAAM,EAAE,0BAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC;QAE/D,OAAO,IAAI,EAAE;YACT,MAAM,QAAQ,GAAG,sBAAM,8BAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA,CAAC;YAClE,QAAQ,QAAQ,CAAC,EAAE,EAAE;gBACjB,KAAK,4BAAiB,CAAC,KAAK;oBACxB,4BAAM,QAAQ,CAAA,CAAC;oBACf,MAAM;gBACV,KAAK,4BAAiB,CAAC,IAAI;oBACvB,qCAAO;gBACX;oBACI,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;aACjD;SACJ;IACL,CAAC;CAAA;AAlBD,wCAkBC"}
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.adbSyncPull = exports.AdbSyncDataResponse = void 0;
4
- const tslib_1 = require("tslib");
5
- const struct_1 = tslib_1.__importDefault(require("@yume-chan/struct"));
6
- const request_1 = require("./request");
7
- const response_1 = require("./response");
8
- exports.AdbSyncDataResponse = new struct_1.default({ littleEndian: true })
9
- .uint32('dataLength')
10
- .arrayBuffer('data', { lengthField: 'dataLength' })
11
- .extra({ id: response_1.AdbSyncResponseId.Data });
12
- const ResponseTypes = {
13
- [response_1.AdbSyncResponseId.Data]: exports.AdbSyncDataResponse,
14
- [response_1.AdbSyncResponseId.Done]: new response_1.AdbSyncDoneResponse(exports.AdbSyncDataResponse.size),
15
- };
16
- function adbSyncPull(stream, path) {
17
- return tslib_1.__asyncGenerator(this, arguments, function* adbSyncPull_1() {
18
- yield tslib_1.__await(request_1.adbSyncWriteRequest(stream, request_1.AdbSyncRequestId.Receive, path));
19
- while (true) {
20
- const response = yield tslib_1.__await(response_1.adbSyncReadResponse(stream, ResponseTypes));
21
- switch (response.id) {
22
- case response_1.AdbSyncResponseId.Data:
23
- yield yield tslib_1.__await(response.data);
24
- break;
25
- case response_1.AdbSyncResponseId.Done:
26
- return yield tslib_1.__await(void 0);
27
- default:
28
- throw new Error('Unexpected response id');
29
- }
30
- }
31
- });
32
- }
33
- exports.adbSyncPull = adbSyncPull;
34
- //# sourceMappingURL=pull.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../../src/commands/sync/pull.ts"],"names":[],"mappings":";;;;AAAA,uEAAuC;AAEvC,uCAAkE;AAClE,yCAAyF;AAE5E,QAAA,mBAAmB,GAC5B,IAAI,gBAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,YAAY,CAAC;KACpB,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;KAClD,KAAK,CAAC,EAAE,EAAE,EAAE,4BAAiB,CAAC,IAAa,EAAE,CAAC,CAAC;AAExD,MAAM,aAAa,GAAG;IAClB,CAAC,4BAAiB,CAAC,IAAI,CAAC,EAAE,2BAAmB;IAC7C,CAAC,4BAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,8BAAmB,CAAC,2BAAmB,CAAC,IAAI,CAAC;CAC9E,CAAC;AAEF,SAAuB,WAAW,CAC9B,MAAyB,EACzB,IAAY;;QAEZ,sBAAM,6BAAmB,CAAC,MAAM,EAAE,0BAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA,CAAC;QAClE,OAAO,IAAI,EAAE;YACT,MAAM,QAAQ,GAAG,sBAAM,8BAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA,CAAC;YAClE,QAAQ,QAAQ,CAAC,EAAE,EAAE;gBACjB,KAAK,4BAAiB,CAAC,IAAI;oBACvB,4BAAM,QAAQ,CAAC,IAAK,CAAA,CAAC;oBACrB,MAAM;gBACV,KAAK,4BAAiB,CAAC,IAAI;oBACvB,qCAAO;gBACX;oBACI,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;aACjD;SACJ;IACL,CAAC;CAAA;AAjBD,kCAiBC"}
@@ -1,49 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.adbSyncPush = exports.AdbSyncMaxPacketSize = exports.AdbSyncOkResponse = void 0;
4
- const tslib_1 = require("tslib");
5
- const struct_1 = tslib_1.__importDefault(require("@yume-chan/struct"));
6
- const utils_1 = require("../../utils");
7
- const request_1 = require("./request");
8
- const response_1 = require("./response");
9
- const stat_1 = require("./stat");
10
- exports.AdbSyncOkResponse = new struct_1.default({ littleEndian: true })
11
- .uint32('unused');
12
- const ResponseTypes = {
13
- [response_1.AdbSyncResponseId.Ok]: exports.AdbSyncOkResponse,
14
- };
15
- exports.AdbSyncMaxPacketSize = 64 * 1024;
16
- function adbSyncPush(stream, filename, content, mode = (stat_1.LinuxFileType.File << 12) | 0o666, mtime = (Date.now() / 1000) | 0, packetSize = exports.AdbSyncMaxPacketSize, onProgress) {
17
- var e_1, _a;
18
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
19
- const pathAndMode = `${filename},${mode.toString()}`;
20
- yield request_1.adbSyncWriteRequest(stream, request_1.AdbSyncRequestId.Send, pathAndMode);
21
- let chunkReader;
22
- if ('length' in content || 'byteLength' in content) {
23
- chunkReader = utils_1.chunkArrayLike(content, packetSize);
24
- }
25
- else {
26
- chunkReader = utils_1.chunkAsyncIterable(content, packetSize);
27
- }
28
- let uploaded = 0;
29
- try {
30
- for (var chunkReader_1 = tslib_1.__asyncValues(chunkReader), chunkReader_1_1; chunkReader_1_1 = yield chunkReader_1.next(), !chunkReader_1_1.done;) {
31
- const buffer = chunkReader_1_1.value;
32
- yield request_1.adbSyncWriteRequest(stream, request_1.AdbSyncRequestId.Data, buffer);
33
- uploaded += buffer.byteLength;
34
- onProgress === null || onProgress === void 0 ? void 0 : onProgress(uploaded);
35
- }
36
- }
37
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
38
- finally {
39
- try {
40
- if (chunkReader_1_1 && !chunkReader_1_1.done && (_a = chunkReader_1.return)) yield _a.call(chunkReader_1);
41
- }
42
- finally { if (e_1) throw e_1.error; }
43
- }
44
- yield request_1.adbSyncWriteRequest(stream, request_1.AdbSyncRequestId.Done, mtime);
45
- yield response_1.adbSyncReadResponse(stream, ResponseTypes);
46
- });
47
- }
48
- exports.adbSyncPush = adbSyncPush;
49
- //# sourceMappingURL=push.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/commands/sync/push.ts"],"names":[],"mappings":";;;;AAAA,uEAAuC;AAEvC,uCAAiE;AACjE,uCAAkE;AAClE,yCAAoE;AACpE,iCAAuC;AAE1B,QAAA,iBAAiB,GAC1B,IAAI,gBAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,QAAQ,CAAC,CAAC;AAE1B,MAAM,aAAa,GAAG;IAClB,CAAC,4BAAiB,CAAC,EAAE,CAAC,EAAE,yBAAiB;CAC5C,CAAC;AAEW,QAAA,oBAAoB,GAAG,EAAE,GAAG,IAAI,CAAC;AAE9C,SAAsB,WAAW,CAC7B,MAAyB,EACzB,QAAgB,EAChB,OAAyE,EACzE,OAAe,CAAC,oBAAa,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,KAAK,EACjD,QAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EACvC,aAAqB,4BAAoB,EACzC,UAAuC;;;QAEvC,MAAM,WAAW,GAAG,GAAG,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;QACrD,MAAM,6BAAmB,CAAC,MAAM,EAAE,0BAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAEtE,IAAI,WAA+D,CAAC;QACpE,IAAI,QAAQ,IAAI,OAAO,IAAI,YAAY,IAAI,OAAO,EAAE;YAChD,WAAW,GAAG,sBAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;SACrD;aAAM;YACH,WAAW,GAAG,0BAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;SACzD;QAED,IAAI,QAAQ,GAAG,CAAC,CAAC;;YACjB,KAA2B,IAAA,gBAAA,sBAAA,WAAW,CAAA,iBAAA;gBAA3B,MAAM,MAAM,wBAAA,CAAA;gBACnB,MAAM,6BAAmB,CAAC,MAAM,EAAE,0BAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACjE,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC;gBAC9B,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,QAAQ,CAAC,CAAC;aAC1B;;;;;;;;;QAED,MAAM,6BAAmB,CAAC,MAAM,EAAE,0BAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChE,MAAM,8BAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;;CACpD;AA5BD,kCA4BC"}
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.adbSyncWriteRequest = exports.AdbSyncDataRequest = exports.AdbSyncNumberRequest = exports.AdbSyncRequestId = void 0;
4
- const tslib_1 = require("tslib");
5
- const struct_1 = tslib_1.__importDefault(require("@yume-chan/struct"));
6
- var AdbSyncRequestId;
7
- (function (AdbSyncRequestId) {
8
- AdbSyncRequestId["List"] = "LIST";
9
- AdbSyncRequestId["Send"] = "SEND";
10
- AdbSyncRequestId["Lstat"] = "STAT";
11
- AdbSyncRequestId["Stat"] = "STA2";
12
- AdbSyncRequestId["Lstat2"] = "LST2";
13
- AdbSyncRequestId["Data"] = "DATA";
14
- AdbSyncRequestId["Done"] = "DONE";
15
- AdbSyncRequestId["Receive"] = "RECV";
16
- })(AdbSyncRequestId = exports.AdbSyncRequestId || (exports.AdbSyncRequestId = {}));
17
- exports.AdbSyncNumberRequest = new struct_1.default({ littleEndian: true })
18
- .string('id', { length: 4 })
19
- .uint32('arg');
20
- exports.AdbSyncDataRequest = new struct_1.default({ littleEndian: true })
21
- .fields(exports.AdbSyncNumberRequest)
22
- .arrayBuffer('data', { lengthField: 'arg' });
23
- function adbSyncWriteRequest(stream, id, value) {
24
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
25
- let buffer;
26
- if (typeof value === 'number') {
27
- buffer = exports.AdbSyncNumberRequest.serialize({
28
- id,
29
- arg: value,
30
- }, stream);
31
- }
32
- else if (typeof value === 'string') {
33
- buffer = exports.AdbSyncDataRequest.serialize({
34
- id,
35
- data: stream.encodeUtf8(value),
36
- }, stream);
37
- }
38
- else {
39
- buffer = exports.AdbSyncDataRequest.serialize({
40
- id,
41
- data: value,
42
- }, stream);
43
- }
44
- yield stream.write(buffer);
45
- });
46
- }
47
- exports.adbSyncWriteRequest = adbSyncWriteRequest;
48
- //# sourceMappingURL=request.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/commands/sync/request.ts"],"names":[],"mappings":";;;;AAAA,uEAAuC;AAGvC,IAAY,gBASX;AATD,WAAY,gBAAgB;IACxB,iCAAa,CAAA;IACb,iCAAa,CAAA;IACb,kCAAc,CAAA;IACd,iCAAa,CAAA;IACb,mCAAe,CAAA;IACf,iCAAa,CAAA;IACb,iCAAa,CAAA;IACb,oCAAgB,CAAA;AACpB,CAAC,EATW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAS3B;AAEY,QAAA,oBAAoB,GAC7B,IAAI,gBAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;KAC3B,MAAM,CAAC,KAAK,CAAC,CAAC;AAEV,QAAA,kBAAkB,GAC3B,IAAI,gBAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,4BAAoB,CAAC;KAC5B,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;AAErD,SAAsB,mBAAmB,CACrC,MAAyB,EACzB,EAA6B,EAC7B,KAAoC;;QAEpC,IAAI,MAAmB,CAAC;QACxB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,MAAM,GAAG,4BAAoB,CAAC,SAAS,CAAC;gBACpC,EAAE;gBACF,GAAG,EAAE,KAAK;aACb,EAAE,MAAM,CAAC,CAAC;SACd;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAClC,MAAM,GAAG,0BAAkB,CAAC,SAAS,CAAC;gBAClC,EAAE;gBACF,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC;aACjC,EAAE,MAAM,CAAC,CAAC;SACd;aAAM;YACH,MAAM,GAAG,0BAAkB,CAAC,SAAS,CAAC;gBAClC,EAAE;gBACF,IAAI,EAAE,KAAK;aACd,EAAE,MAAM,CAAC,CAAC;SACd;QACD,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;CAAA;AAvBD,kDAuBC"}
@@ -1,53 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.adbSyncReadResponse = exports.AdbSyncFailResponse = exports.AdbSyncDoneResponse = exports.AdbSyncResponseId = void 0;
4
- const tslib_1 = require("tslib");
5
- const struct_1 = tslib_1.__importDefault(require("@yume-chan/struct"));
6
- var AdbSyncResponseId;
7
- (function (AdbSyncResponseId) {
8
- AdbSyncResponseId["Entry"] = "DENT";
9
- AdbSyncResponseId["Lstat"] = "STAT";
10
- AdbSyncResponseId["Stat"] = "STA2";
11
- AdbSyncResponseId["Lstat2"] = "LST2";
12
- AdbSyncResponseId["Done"] = "DONE";
13
- AdbSyncResponseId["Data"] = "DATA";
14
- AdbSyncResponseId["Ok"] = "OKAY";
15
- AdbSyncResponseId["Fail"] = "FAIL";
16
- })(AdbSyncResponseId = exports.AdbSyncResponseId || (exports.AdbSyncResponseId = {}));
17
- // DONE responses' size are always same as the request's normal response.
18
- // For example DONE responses for LIST requests are 16 bytes (same as DENT responses),
19
- // but DONE responses for STAT requests are 12 bytes (same as STAT responses)
20
- // So we need to know responses' size in advance.
21
- class AdbSyncDoneResponse {
22
- constructor(length) {
23
- this.id = AdbSyncResponseId.Done;
24
- this.length = length;
25
- }
26
- deserialize(context) {
27
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
28
- yield context.read(this.length);
29
- return this;
30
- });
31
- }
32
- }
33
- exports.AdbSyncDoneResponse = AdbSyncDoneResponse;
34
- exports.AdbSyncFailResponse = new struct_1.default({ littleEndian: true })
35
- .uint32('messageLength')
36
- .string('message', { lengthField: 'messageLength' })
37
- .postDeserialize(object => {
38
- throw new Error(object.message);
39
- });
40
- function adbSyncReadResponse(stream, types) {
41
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
42
- const id = stream.backend.decodeUtf8(yield stream.read(4));
43
- if (id === AdbSyncResponseId.Fail) {
44
- yield exports.AdbSyncFailResponse.deserialize(stream);
45
- }
46
- if (types[id]) {
47
- return types[id].deserialize(stream);
48
- }
49
- throw new Error('Unexpected response id');
50
- });
51
- }
52
- exports.adbSyncReadResponse = adbSyncReadResponse;
53
- //# sourceMappingURL=response.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/commands/sync/response.ts"],"names":[],"mappings":";;;;AAAA,uEAAsG;AAGtG,IAAY,iBASX;AATD,WAAY,iBAAiB;IACzB,mCAAc,CAAA;IACd,mCAAc,CAAA;IACd,kCAAa,CAAA;IACb,oCAAe,CAAA;IACf,kCAAa,CAAA;IACb,kCAAa,CAAA;IACb,gCAAW,CAAA;IACX,kCAAa,CAAA;AACjB,CAAC,EATW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAS5B;AAED,yEAAyE;AACzE,sFAAsF;AACtF,6EAA6E;AAC7E,iDAAiD;AACjD,MAAa,mBAAmB;IAK5B,YAAmB,MAAc;QAFjB,OAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC;QAGxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAEY,WAAW,CAAC,OAAqC;;YAC1D,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChC,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;CACJ;AAbD,kDAaC;AAEY,QAAA,mBAAmB,GAC5B,IAAI,gBAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,MAAM,CAAC,eAAe,CAAC;KACvB,MAAM,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;KACnD,eAAe,CAAC,MAAM,CAAC,EAAE;IACtB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAEX,SAAsB,mBAAmB,CACrC,MAAyB,EACzB,KAAQ;;QAER,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3D,IAAI,EAAE,KAAK,iBAAiB,CAAC,IAAI,EAAE;YAC/B,MAAM,2BAAmB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;SACjD;QAED,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE;YACX,OAAO,KAAK,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;SACxC;QAED,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC9C,CAAC;CAAA;AAfD,kDAeC"}
@@ -1,109 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.adbSyncStat = exports.adbSyncLstat = exports.AdbSyncStatResponse = exports.AdbSyncStatErrorCode = exports.AdbSyncLstatResponse = exports.LinuxFileType = void 0;
4
- const tslib_1 = require("tslib");
5
- const struct_1 = tslib_1.__importStar(require("@yume-chan/struct"));
6
- const request_1 = require("./request");
7
- const response_1 = require("./response");
8
- // https://github.com/python/cpython/blob/4e581d64b8aff3e2eda99b12f080c877bb78dfca/Lib/stat.py#L36
9
- var LinuxFileType;
10
- (function (LinuxFileType) {
11
- LinuxFileType[LinuxFileType["Directory"] = 4] = "Directory";
12
- LinuxFileType[LinuxFileType["File"] = 8] = "File";
13
- LinuxFileType[LinuxFileType["Link"] = 10] = "Link";
14
- })(LinuxFileType = exports.LinuxFileType || (exports.LinuxFileType = {}));
15
- exports.AdbSyncLstatResponse = new struct_1.default({ littleEndian: true })
16
- .int32('mode')
17
- .int32('size')
18
- .int32('mtime')
19
- .extra({
20
- id: response_1.AdbSyncResponseId.Lstat,
21
- get type() { return this.mode >> 12; },
22
- get permission() { return this.mode & 4095; },
23
- })
24
- .postDeserialize((object) => {
25
- if (object.mode === 0 &&
26
- object.size === 0 &&
27
- object.mtime === 0) {
28
- throw new Error('lstat failed');
29
- }
30
- });
31
- var AdbSyncStatErrorCode;
32
- (function (AdbSyncStatErrorCode) {
33
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EACCES"] = 13] = "EACCES";
34
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EEXIST"] = 17] = "EEXIST";
35
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EFAULT"] = 14] = "EFAULT";
36
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EFBIG"] = 27] = "EFBIG";
37
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EINTR"] = 4] = "EINTR";
38
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EINVAL"] = 22] = "EINVAL";
39
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EIO"] = 5] = "EIO";
40
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EISDIR"] = 21] = "EISDIR";
41
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["ELOOP"] = 40] = "ELOOP";
42
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EMFILE"] = 24] = "EMFILE";
43
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["ENAMETOOLONG"] = 36] = "ENAMETOOLONG";
44
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["ENFILE"] = 23] = "ENFILE";
45
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["ENOENT"] = 2] = "ENOENT";
46
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["ENOMEM"] = 12] = "ENOMEM";
47
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["ENOSPC"] = 28] = "ENOSPC";
48
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["ENOTDIR"] = 20] = "ENOTDIR";
49
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EOVERFLOW"] = 75] = "EOVERFLOW";
50
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EPERM"] = 1] = "EPERM";
51
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["EROFS"] = 30] = "EROFS";
52
- AdbSyncStatErrorCode[AdbSyncStatErrorCode["ETXTBSY"] = 26] = "ETXTBSY";
53
- })(AdbSyncStatErrorCode = exports.AdbSyncStatErrorCode || (exports.AdbSyncStatErrorCode = {}));
54
- exports.AdbSyncStatResponse = new struct_1.default({ littleEndian: true })
55
- .uint32('error', struct_1.placeholder())
56
- .uint64('dev')
57
- .uint64('ino')
58
- .uint32('mode')
59
- .uint32('nlink')
60
- .uint32('uid')
61
- .uint32('gid')
62
- .uint64('size')
63
- .uint64('atime')
64
- .uint64('mtime')
65
- .uint64('ctime')
66
- .extra({
67
- id: response_1.AdbSyncResponseId.Stat,
68
- get type() { return this.mode >> 12; },
69
- get permission() { return this.mode & 4095; },
70
- })
71
- .postDeserialize((object) => {
72
- if (object.error) {
73
- throw new Error(AdbSyncStatErrorCode[object.error]);
74
- }
75
- });
76
- const StatResponseType = {
77
- [response_1.AdbSyncResponseId.Stat]: exports.AdbSyncStatResponse,
78
- };
79
- const LstatResponseType = {
80
- [response_1.AdbSyncResponseId.Lstat]: exports.AdbSyncLstatResponse,
81
- };
82
- const Lstat2ResponseType = {
83
- [response_1.AdbSyncResponseId.Lstat2]: exports.AdbSyncStatResponse,
84
- };
85
- function adbSyncLstat(stream, path, v2) {
86
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
87
- let requestId;
88
- let responseType;
89
- if (v2) {
90
- requestId = request_1.AdbSyncRequestId.Lstat2;
91
- responseType = Lstat2ResponseType;
92
- }
93
- else {
94
- requestId = request_1.AdbSyncRequestId.Lstat;
95
- responseType = LstatResponseType;
96
- }
97
- yield request_1.adbSyncWriteRequest(stream, requestId, path);
98
- return response_1.adbSyncReadResponse(stream, responseType);
99
- });
100
- }
101
- exports.adbSyncLstat = adbSyncLstat;
102
- function adbSyncStat(stream, path) {
103
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
104
- yield request_1.adbSyncWriteRequest(stream, request_1.AdbSyncRequestId.Stat, path);
105
- return response_1.adbSyncReadResponse(stream, StatResponseType);
106
- });
107
- }
108
- exports.adbSyncStat = adbSyncStat;
109
- //# sourceMappingURL=stat.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stat.js","sourceRoot":"","sources":["../../../src/commands/sync/stat.ts"],"names":[],"mappings":"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"}