@yume-chan/adb 0.0.24 → 1.0.0

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 (146) hide show
  1. package/CHANGELOG.md +36 -1
  2. package/README.md +4 -1
  3. package/esm/adb.d.ts +13 -7
  4. package/esm/adb.d.ts.map +1 -1
  5. package/esm/adb.js +3 -0
  6. package/esm/adb.js.map +1 -1
  7. package/esm/banner.d.ts +7 -6
  8. package/esm/banner.d.ts.map +1 -1
  9. package/esm/banner.js +6 -7
  10. package/esm/banner.js.map +1 -1
  11. package/esm/commands/framebuffer.d.ts +63 -34
  12. package/esm/commands/framebuffer.d.ts.map +1 -1
  13. package/esm/commands/framebuffer.js +35 -33
  14. package/esm/commands/framebuffer.js.map +1 -1
  15. package/esm/commands/reverse.d.ts +12 -12
  16. package/esm/commands/reverse.d.ts.map +1 -1
  17. package/esm/commands/reverse.js +39 -30
  18. package/esm/commands/reverse.js.map +1 -1
  19. package/esm/commands/subprocess/protocols/none.d.ts.map +1 -1
  20. package/esm/commands/subprocess/protocols/none.js +3 -5
  21. package/esm/commands/subprocess/protocols/none.js.map +1 -1
  22. package/esm/commands/subprocess/protocols/shell.d.ts +20 -12
  23. package/esm/commands/subprocess/protocols/shell.d.ts.map +1 -1
  24. package/esm/commands/subprocess/protocols/shell.js +16 -21
  25. package/esm/commands/subprocess/protocols/shell.js.map +1 -1
  26. package/esm/commands/subprocess/protocols/types.d.ts +6 -6
  27. package/esm/commands/subprocess/protocols/types.d.ts.map +1 -1
  28. package/esm/commands/sync/list.d.ts +49 -27
  29. package/esm/commands/sync/list.d.ts.map +1 -1
  30. package/esm/commands/sync/list.js +9 -9
  31. package/esm/commands/sync/list.js.map +1 -1
  32. package/esm/commands/sync/pull.d.ts +7 -6
  33. package/esm/commands/sync/pull.d.ts.map +1 -1
  34. package/esm/commands/sync/pull.js +3 -5
  35. package/esm/commands/sync/pull.js.map +1 -1
  36. package/esm/commands/sync/push.d.ts +22 -16
  37. package/esm/commands/sync/push.d.ts.map +1 -1
  38. package/esm/commands/sync/push.js +12 -16
  39. package/esm/commands/sync/push.js.map +1 -1
  40. package/esm/commands/sync/request.d.ts +19 -17
  41. package/esm/commands/sync/request.d.ts.map +1 -1
  42. package/esm/commands/sync/request.js +14 -18
  43. package/esm/commands/sync/request.js.map +1 -1
  44. package/esm/commands/sync/response.d.ts +18 -18
  45. package/esm/commands/sync/response.d.ts.map +1 -1
  46. package/esm/commands/sync/response.js +20 -19
  47. package/esm/commands/sync/response.js.map +1 -1
  48. package/esm/commands/sync/socket.d.ts +1 -1
  49. package/esm/commands/sync/socket.js +2 -2
  50. package/esm/commands/sync/socket.js.map +1 -1
  51. package/esm/commands/sync/stat.d.ts +75 -51
  52. package/esm/commands/sync/stat.d.ts.map +1 -1
  53. package/esm/commands/sync/stat.js +73 -67
  54. package/esm/commands/sync/stat.js.map +1 -1
  55. package/esm/commands/sync/sync.d.ts +14 -14
  56. package/esm/commands/sync/sync.d.ts.map +1 -1
  57. package/esm/commands/sync/sync.js +4 -7
  58. package/esm/commands/sync/sync.js.map +1 -1
  59. package/esm/commands/tcpip.d.ts +0 -1
  60. package/esm/commands/tcpip.d.ts.map +1 -1
  61. package/esm/commands/tcpip.js +8 -8
  62. package/esm/commands/tcpip.js.map +1 -1
  63. package/esm/daemon/auth.d.ts +8 -7
  64. package/esm/daemon/auth.d.ts.map +1 -1
  65. package/esm/daemon/auth.js +7 -8
  66. package/esm/daemon/auth.js.map +1 -1
  67. package/esm/daemon/crypto.d.ts +1 -1
  68. package/esm/daemon/crypto.d.ts.map +1 -1
  69. package/esm/daemon/crypto.js +1 -0
  70. package/esm/daemon/crypto.js.map +1 -1
  71. package/esm/daemon/device.d.ts +2 -2
  72. package/esm/daemon/device.d.ts.map +1 -1
  73. package/esm/daemon/dispatcher.js +6 -6
  74. package/esm/daemon/dispatcher.js.map +1 -1
  75. package/esm/daemon/packet.d.ts +46 -30
  76. package/esm/daemon/packet.d.ts.map +1 -1
  77. package/esm/daemon/packet.js +24 -21
  78. package/esm/daemon/packet.js.map +1 -1
  79. package/esm/daemon/socket.d.ts +1 -6
  80. package/esm/daemon/socket.d.ts.map +1 -1
  81. package/esm/daemon/socket.js +4 -27
  82. package/esm/daemon/socket.js.map +1 -1
  83. package/esm/daemon/transport.d.ts +14 -14
  84. package/esm/daemon/transport.d.ts.map +1 -1
  85. package/esm/daemon/transport.js +6 -8
  86. package/esm/daemon/transport.js.map +1 -1
  87. package/esm/device-observer.d.ts +10 -0
  88. package/esm/device-observer.d.ts.map +1 -0
  89. package/esm/device-observer.js +2 -0
  90. package/esm/device-observer.js.map +1 -0
  91. package/esm/features.d.ts +12 -11
  92. package/esm/features.d.ts.map +1 -1
  93. package/esm/features.js +11 -12
  94. package/esm/features.js.map +1 -1
  95. package/esm/index.d.ts +1 -0
  96. package/esm/index.d.ts.map +1 -1
  97. package/esm/index.js +1 -0
  98. package/esm/index.js.map +1 -1
  99. package/esm/server/client.d.ts +34 -22
  100. package/esm/server/client.d.ts.map +1 -1
  101. package/esm/server/client.js +151 -136
  102. package/esm/server/client.js.map +1 -1
  103. package/esm/server/transport.d.ts +2 -2
  104. package/esm/server/transport.d.ts.map +1 -1
  105. package/esm/server/transport.js +1 -3
  106. package/esm/server/transport.js.map +1 -1
  107. package/esm/utils/base64.d.ts.map +1 -1
  108. package/esm/utils/base64.js +19 -16
  109. package/esm/utils/base64.js.map +1 -1
  110. package/esm/utils/no-op.d.ts.map +1 -1
  111. package/esm/utils/no-op.js +1 -0
  112. package/esm/utils/no-op.js.map +1 -1
  113. package/package.json +14 -17
  114. package/src/adb.ts +13 -7
  115. package/src/banner.ts +8 -6
  116. package/src/commands/framebuffer.ts +44 -35
  117. package/src/commands/reverse.ts +49 -31
  118. package/src/commands/subprocess/protocols/none.ts +3 -5
  119. package/src/commands/subprocess/protocols/shell.ts +26 -24
  120. package/src/commands/subprocess/protocols/types.ts +6 -6
  121. package/src/commands/sync/list.ts +20 -13
  122. package/src/commands/sync/pull.ts +8 -7
  123. package/src/commands/sync/push.ts +20 -16
  124. package/src/commands/sync/request.ts +18 -19
  125. package/src/commands/sync/response.ts +28 -29
  126. package/src/commands/sync/socket.ts +2 -2
  127. package/src/commands/sync/stat.ts +93 -71
  128. package/src/commands/sync/sync.ts +4 -8
  129. package/src/commands/tcpip.ts +8 -8
  130. package/src/daemon/auth.ts +11 -9
  131. package/src/daemon/crypto.ts +2 -0
  132. package/src/daemon/device.ts +2 -2
  133. package/src/daemon/dispatcher.ts +6 -6
  134. package/src/daemon/packet.ts +37 -25
  135. package/src/daemon/socket.ts +4 -27
  136. package/src/daemon/transport.ts +36 -35
  137. package/src/device-observer.ts +10 -0
  138. package/src/features.ts +13 -11
  139. package/src/index.ts +1 -0
  140. package/src/server/client.ts +185 -160
  141. package/src/server/transport.ts +3 -5
  142. package/src/utils/base64.ts +26 -18
  143. package/src/utils/no-op.ts +1 -0
  144. package/tsconfig.build.json +1 -12
  145. package/tsconfig.build.tsbuildinfo +1 -1
  146. package/CHANGELOG.json +0 -298
package/CHANGELOG.md CHANGED
@@ -1,8 +1,29 @@
1
1
  # Change Log - @yume-chan/adb
2
2
 
3
+ ## 1.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 53688d3: Use PNPM workspace and Changesets to manage the monorepo.
8
+
9
+ Because Changesets doesn't support alpha versions (`0.x.x`), this version is `1.0.0`. Future versions will follow SemVer rules, for example, breaking API changes will introduce a new major version.
10
+
11
+ - db8466f: Rewrite the struct API completely
12
+ - db8466f: Add common interface for device observers
13
+ - db8466f: Improve tree-shaking by removing TypeScript enum and namespace
14
+ - Updated dependencies [53688d3]
15
+ - Updated dependencies [db8466f]
16
+ - Updated dependencies [ea5002b]
17
+ - Updated dependencies [db8466f]
18
+ - @yume-chan/no-data-view@1.0.1
19
+ - @yume-chan/stream-extra@1.0.1
20
+ - @yume-chan/struct@1.0.1
21
+ - @yume-chan/event@1.0.1
22
+
3
23
  This log was last generated on Tue, 18 Jun 2024 02:49:43 GMT and should not be manually modified.
4
24
 
5
25
  ## 0.0.24
26
+
6
27
  Tue, 18 Jun 2024 02:49:43 GMT
7
28
 
8
29
  ### Updates
@@ -17,6 +38,7 @@ Tue, 18 Jun 2024 02:49:43 GMT
17
38
  - Fix too many event listener warning in Node.js.
18
39
 
19
40
  ## 0.0.23
41
+
20
42
  Thu, 21 Mar 2024 03:15:10 GMT
21
43
 
22
44
  ### Updates
@@ -26,6 +48,7 @@ Thu, 21 Mar 2024 03:15:10 GMT
26
48
  - Add support for delayed ack on Android 14
27
49
 
28
50
  ## 0.0.22
51
+
29
52
  Wed, 13 Dec 2023 05:57:27 GMT
30
53
 
31
54
  ### Updates
@@ -36,6 +59,7 @@ Wed, 13 Dec 2023 05:57:27 GMT
36
59
  - Fix TypeScript build when using `AdbSubprocessNoneProtocol` without installing `web-streams-polyfill` package
37
60
 
38
61
  ## 0.0.21
62
+
39
63
  Fri, 25 Aug 2023 14:05:18 GMT
40
64
 
41
65
  ### Updates
@@ -47,6 +71,7 @@ Fri, 25 Aug 2023 14:05:18 GMT
47
71
  - Add `recursive` and `force` options to `rm` method, allow deleting folders
48
72
 
49
73
  ## 0.0.20
74
+
50
75
  Mon, 05 Jun 2023 02:51:41 GMT
51
76
 
52
77
  ### Updates
@@ -61,6 +86,7 @@ Mon, 05 Jun 2023 02:51:41 GMT
61
86
  - Group `product`, `model`, `device` and `features` fields on `Adb` class to the `banner` field with type of `AdbBanner`.
62
87
 
63
88
  ## 0.0.19
89
+
64
90
  Sun, 09 Apr 2023 05:55:33 GMT
65
91
 
66
92
  ### Updates
@@ -71,11 +97,13 @@ Sun, 09 Apr 2023 05:55:33 GMT
71
97
  - Add `AdbReverseError` and `AdbReverseNotSupportedError` for better error handling in reverse tunnel command.
72
98
 
73
99
  ## 0.0.18
100
+
74
101
  Wed, 25 Jan 2023 21:33:49 GMT
75
102
 
76
103
  _Version update only_
77
104
 
78
105
  ## 0.0.17
106
+
79
107
  Tue, 18 Oct 2022 09:32:30 GMT
80
108
 
81
109
  ### Updates
@@ -83,6 +111,7 @@ Tue, 18 Oct 2022 09:32:30 GMT
83
111
  - Move stream utils to separate package
84
112
 
85
113
  ## 0.0.16
114
+
86
115
  Sat, 28 May 2022 03:56:37 GMT
87
116
 
88
117
  ### Updates
@@ -93,6 +122,7 @@ Sat, 28 May 2022 03:56:37 GMT
93
122
  - Improve performance of `BufferedStream` by up to 100%.
94
123
 
95
124
  ## 0.0.15
125
+
96
126
  Mon, 02 May 2022 04:18:01 GMT
97
127
 
98
128
  ### Updates
@@ -103,6 +133,7 @@ Mon, 02 May 2022 04:18:01 GMT
103
133
  - Fix an issue where `reverse` commands doesn't parse error message correctly
104
134
 
105
135
  ## 0.0.14
136
+
106
137
  Sat, 30 Apr 2022 14:05:48 GMT
107
138
 
108
139
  ### Updates
@@ -111,6 +142,7 @@ Sat, 30 Apr 2022 14:05:48 GMT
111
142
  - Add an `Adb#close()` method to gracefully shutdown a connection
112
143
 
113
144
  ## 0.0.13
145
+
114
146
  Thu, 28 Apr 2022 01:23:53 GMT
115
147
 
116
148
  ### Updates
@@ -120,11 +152,13 @@ Thu, 28 Apr 2022 01:23:53 GMT
120
152
  - Add workaround for the push_mkdir issue in Android 9
121
153
 
122
154
  ## 0.0.12
155
+
123
156
  Sun, 03 Apr 2022 11:18:47 GMT
124
157
 
125
158
  _Version update only_
126
159
 
127
160
  ## 0.0.11
161
+
128
162
  Sun, 03 Apr 2022 10:54:15 GMT
129
163
 
130
164
  ### Patches
@@ -139,6 +173,7 @@ Sun, 03 Apr 2022 10:54:15 GMT
139
173
  - Update license year
140
174
 
141
175
  ## 0.0.10
176
+
142
177
  Sun, 09 Jan 2022 15:52:20 GMT
143
178
 
144
179
  ### Updates
@@ -146,7 +181,7 @@ Sun, 09 Jan 2022 15:52:20 GMT
146
181
  - Remove `encodeUtf8()` and `decodeUtf8()` from `AdbBackend`
147
182
 
148
183
  ## 0.0.9
184
+
149
185
  Sun, 09 Jan 2022 15:50:20 GMT
150
186
 
151
187
  _Initial release_
152
-
package/README.md CHANGED
@@ -15,6 +15,9 @@
15
15
  <a href="https://github.com/yume-chan/ya-webadb/releases">
16
16
  <img alt="GitHub release" src="https://img.shields.io/github/v/release/yume-chan/ya-webadb?logo=github">
17
17
  </a>
18
+ <a href="https://bundlephobia.com/package/@yume-chan/adb">
19
+ <img alt="Package Size" src="https://img.shields.io/bundlephobia/minzip/%40yume-chan%2Fadb">
20
+ </a>
18
21
  <a href="https://www.npmjs.com/package/@yume-chan/adb">
19
22
  <img alt="npm" src="https://img.shields.io/npm/dm/%40yume-chan/adb?logo=npm">
20
23
  </a>
@@ -27,7 +30,7 @@ This package is part of [Tango ADB](https://github.com/yume-chan/ya-webadb). Gen
27
30
 
28
31
  ## Documentation
29
32
 
30
- Check the latest documentation at https://tango-adb.github.io/docs/
33
+ Check the latest documentation at https://docs.tangoapp.dev/
31
34
 
32
35
  ## Sponsors
33
36
 
package/esm/adb.d.ts CHANGED
@@ -1,27 +1,30 @@
1
+ import type { MaybePromiseLike } from "@yume-chan/async";
1
2
  import type { MaybeConsumable, ReadableWritablePair } from "@yume-chan/stream-extra";
2
- import type { ValueOrPromise } from "@yume-chan/struct";
3
3
  import type { AdbBanner } from "./banner.js";
4
4
  import type { AdbFrameBuffer } from "./commands/index.js";
5
5
  import { AdbPower, AdbReverseCommand, AdbSubprocess, AdbSync, AdbTcpIpCommand } from "./commands/index.js";
6
6
  import type { AdbFeature } from "./features.js";
7
7
  export interface Closeable {
8
- close(): ValueOrPromise<void>;
8
+ close(): MaybePromiseLike<void>;
9
9
  }
10
+ /**
11
+ * Represents an ADB socket.
12
+ */
10
13
  export interface AdbSocket extends ReadableWritablePair<Uint8Array, MaybeConsumable<Uint8Array>>, Closeable {
11
14
  get service(): string;
12
15
  get closed(): Promise<void>;
13
16
  }
14
- export type AdbIncomingSocketHandler = (socket: AdbSocket) => ValueOrPromise<void>;
17
+ export type AdbIncomingSocketHandler = (socket: AdbSocket) => MaybePromiseLike<void>;
15
18
  export interface AdbTransport extends Closeable {
16
19
  readonly serial: string;
17
20
  readonly maxPayloadSize: number;
18
21
  readonly banner: AdbBanner;
19
22
  readonly disconnected: Promise<void>;
20
23
  readonly clientFeatures: readonly AdbFeature[];
21
- connect(service: string): ValueOrPromise<AdbSocket>;
22
- addReverseTunnel(handler: AdbIncomingSocketHandler, address?: string): ValueOrPromise<string>;
23
- removeReverseTunnel(address: string): ValueOrPromise<void>;
24
- clearReverseTunnels(): ValueOrPromise<void>;
24
+ connect(service: string): MaybePromiseLike<AdbSocket>;
25
+ addReverseTunnel(handler: AdbIncomingSocketHandler, address?: string): MaybePromiseLike<string>;
26
+ removeReverseTunnel(address: string): MaybePromiseLike<void>;
27
+ clearReverseTunnels(): MaybePromiseLike<void>;
25
28
  }
26
29
  export declare class Adb implements Closeable {
27
30
  readonly transport: AdbTransport;
@@ -37,6 +40,9 @@ export declare class Adb implements Closeable {
37
40
  readonly tcpip: AdbTcpIpCommand;
38
41
  constructor(transport: AdbTransport);
39
42
  canUseFeature(feature: AdbFeature): boolean;
43
+ /**
44
+ * Creates a new ADB Socket to the specified service or socket address.
45
+ */
40
46
  createSocket(service: string): Promise<AdbSocket>;
41
47
  createSocketAndWait(service: string): Promise<string>;
42
48
  getProp(key: string): Promise<string>;
package/esm/adb.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"adb.d.ts","sourceRoot":"","sources":["../src/adb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EACf,oBAAoB,EACvB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACH,QAAQ,EACR,iBAAiB,EACjB,aAAa,EACb,OAAO,EACP,eAAe,EAGlB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,WAAW,SAAS;IACtB,KAAK,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,SACb,SAAQ,oBAAoB,CAAC,UAAU,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC,EACjE,SAAS;IACb,IAAI,OAAO,IAAI,MAAM,CAAC;IAEtB,IAAI,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B;AAED,MAAM,MAAM,wBAAwB,GAAG,CACnC,MAAM,EAAE,SAAS,KAChB,cAAc,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAEhC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAE3B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC,QAAQ,CAAC,cAAc,EAAE,SAAS,UAAU,EAAE,CAAC;IAE/C,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAEpD,gBAAgB,CACZ,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,MAAM,GACjB,cAAc,CAAC,MAAM,CAAC,CAAC;IAE1B,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IAE3D,mBAAmB,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;CAC/C;AAED,qBAAa,GAAI,YAAW,SAAS;IACjC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IAEjC,IAAI,MAAM,WAET;IAED,IAAI,cAAc,WAEjB;IAED,IAAI,MAAM,cAET;IAED,IAAI,YAAY,kBAEf;IAED,IAAW,cAAc,0BAExB;IAED,IAAW,cAAc,iBAExB;IAED,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;gBAEpB,SAAS,EAAE,YAAY;IASnC,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO;IAOrC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAIjD,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOrD,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAQrC,EAAE,CACJ,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,EAC5B,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GACnD,OAAO,CAAC,MAAM,CAAC;IAqBZ,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IAKxB,WAAW,IAAI,OAAO,CAAC,cAAc,CAAC;IAItC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B"}
1
+ {"version":3,"file":"adb.d.ts","sourceRoot":"","sources":["../src/adb.ts"],"names":[],"mappings":"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"}
package/esm/adb.js CHANGED
@@ -35,6 +35,9 @@ export class Adb {
35
35
  return (this.clientFeatures.includes(feature) &&
36
36
  this.deviceFeatures.includes(feature));
37
37
  }
38
+ /**
39
+ * Creates a new ADB Socket to the specified service or socket address.
40
+ */
38
41
  async createSocket(service) {
39
42
  return this.transport.connect(service);
40
43
  }
package/esm/adb.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"adb.js","sourceRoot":"","sources":["../src/adb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adb.js","sourceRoot":"","sources":["../src/adb.ts"],"names":[],"mappings":"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"}
package/esm/banner.d.ts CHANGED
@@ -1,10 +1,11 @@
1
1
  import type { AdbFeature } from "./features.js";
2
- export declare enum AdbBannerKey {
3
- Product = "ro.product.name",
4
- Model = "ro.product.model",
5
- Device = "ro.product.device",
6
- Features = "features"
7
- }
2
+ export declare const AdbBannerKey: {
3
+ readonly Product: "ro.product.name";
4
+ readonly Model: "ro.product.model";
5
+ readonly Device: "ro.product.device";
6
+ readonly Features: "features";
7
+ };
8
+ export type AdbBannerKey = (typeof AdbBannerKey)[keyof typeof AdbBannerKey];
8
9
  export declare class AdbBanner {
9
10
  #private;
10
11
  static parse(banner: string): AdbBanner;
@@ -1 +1 @@
1
- {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,oBAAY,YAAY;IACpB,OAAO,oBAAoB;IAC3B,KAAK,qBAAqB;IAC1B,MAAM,sBAAsB;IAC5B,QAAQ,aAAa;CACxB;AAED,qBAAa,SAAS;;IAClB,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM;IA0C3B,IAAI,OAAO,uBAEV;IAGD,IAAI,KAAK,uBAER;IAGD,IAAI,MAAM,uBAET;IAGD,IAAI,QAAQ,iBAEX;gBAGG,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,QAAQ,EAAE,UAAU,EAAE;CAO7B"}
1
+ {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,eAAO,MAAM,YAAY;;;;;CAKf,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAE5E,qBAAa,SAAS;;IAClB,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM;IA0C3B,IAAI,OAAO,uBAEV;IAGD,IAAI,KAAK,uBAER;IAGD,IAAI,MAAM,uBAET;IAGD,IAAI,QAAQ,iBAEX;gBAGG,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,QAAQ,EAAE,UAAU,EAAE;CAO7B"}
package/esm/banner.js CHANGED
@@ -1,10 +1,9 @@
1
- export var AdbBannerKey;
2
- (function (AdbBannerKey) {
3
- AdbBannerKey["Product"] = "ro.product.name";
4
- AdbBannerKey["Model"] = "ro.product.model";
5
- AdbBannerKey["Device"] = "ro.product.device";
6
- AdbBannerKey["Features"] = "features";
7
- })(AdbBannerKey || (AdbBannerKey = {}));
1
+ export const AdbBannerKey = {
2
+ Product: "ro.product.name",
3
+ Model: "ro.product.model",
4
+ Device: "ro.product.device",
5
+ Features: "features",
6
+ };
8
7
  export class AdbBanner {
9
8
  static parse(banner) {
10
9
  let product;
package/esm/banner.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"banner.js","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACpB,2CAA2B,CAAA;IAC3B,0CAA0B,CAAA;IAC1B,4CAA4B,CAAA;IAC5B,qCAAqB,CAAA;AACzB,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AAED,MAAM,OAAO,SAAS;IAClB,MAAM,CAAC,KAAK,CAAC,MAAc;QACvB,IAAI,OAA2B,CAAC;QAChC,IAAI,KAAyB,CAAC;QAC9B,IAAI,MAA0B,CAAC;QAC/B,IAAI,QAAQ,GAAiB,EAAE,CAAC;QAEhC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,qBAAqB;gBACrB,IAAI,CAAC,IAAI,EAAE,CAAC;oBACR,SAAS;gBACb,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxB,SAAS;gBACb,CAAC;gBAED,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAC;gBAC9B,QAAQ,GAAG,EAAE,CAAC;oBACV,KAAK,YAAY,CAAC,OAAO;wBACrB,OAAO,GAAG,KAAK,CAAC;wBAChB,MAAM;oBACV,KAAK,YAAY,CAAC,KAAK;wBACnB,KAAK,GAAG,KAAK,CAAC;wBACd,MAAM;oBACV,KAAK,YAAY,CAAC,MAAM;wBACpB,MAAM,GAAG,KAAK,CAAC;wBACf,MAAM;oBACV,KAAK,YAAY,CAAC,QAAQ;wBACtB,QAAQ,GAAG,KAAM,CAAC,KAAK,CAAC,GAAG,CAAiB,CAAC;wBAC7C,MAAM;gBACd,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,IAAI,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,QAAQ,CAAqB;IAC7B,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,MAAM,CAAqB;IAC3B,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,OAAO,CAAqB;IAC5B,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,SAAS,GAAiB,EAAE,CAAC;IAC7B,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,YACI,OAA2B,EAC3B,KAAyB,EACzB,MAA0B,EAC1B,QAAsB;QAEtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;CACJ"}
1
+ {"version":3,"file":"banner.js","sourceRoot":"","sources":["../src/banner.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,OAAO,EAAE,iBAAiB;IAC1B,KAAK,EAAE,kBAAkB;IACzB,MAAM,EAAE,mBAAmB;IAC3B,QAAQ,EAAE,UAAU;CACd,CAAC;AAIX,MAAM,OAAO,SAAS;IAClB,MAAM,CAAC,KAAK,CAAC,MAAc;QACvB,IAAI,OAA2B,CAAC;QAChC,IAAI,KAAyB,CAAC;QAC9B,IAAI,MAA0B,CAAC;QAC/B,IAAI,QAAQ,GAAiB,EAAE,CAAC;QAEhC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,qBAAqB;gBACrB,IAAI,CAAC,IAAI,EAAE,CAAC;oBACR,SAAS;gBACb,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxB,SAAS;gBACb,CAAC;gBAED,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAC;gBAC9B,QAAQ,GAAG,EAAE,CAAC;oBACV,KAAK,YAAY,CAAC,OAAO;wBACrB,OAAO,GAAG,KAAK,CAAC;wBAChB,MAAM;oBACV,KAAK,YAAY,CAAC,KAAK;wBACnB,KAAK,GAAG,KAAK,CAAC;wBACd,MAAM;oBACV,KAAK,YAAY,CAAC,MAAM;wBACpB,MAAM,GAAG,KAAK,CAAC;wBACf,MAAM;oBACV,KAAK,YAAY,CAAC,QAAQ;wBACtB,QAAQ,GAAG,KAAM,CAAC,KAAK,CAAC,GAAG,CAAiB,CAAC;wBAC7C,MAAM;gBACd,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,IAAI,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,QAAQ,CAAqB;IAC7B,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,MAAM,CAAqB;IAC3B,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,OAAO,CAAqB;IAC5B,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,SAAS,GAAiB,EAAE,CAAC;IAC7B,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,YACI,OAA2B,EAC3B,KAAyB,EACzB,MAA0B,EAC1B,QAAsB;QAEtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;CACJ"}
@@ -1,38 +1,67 @@
1
- import Struct from "@yume-chan/struct";
1
+ import type { StructValue } from "@yume-chan/struct";
2
2
  import type { Adb } from "../adb.js";
3
- export declare const AdbFrameBufferV1: Struct<{
4
- bpp: number;
5
- size: number;
6
- width: number;
7
- height: number;
8
- red_offset: number;
9
- red_length: number;
10
- blue_offset: number;
11
- blue_length: number;
12
- green_offset: number;
13
- green_length: number;
14
- alpha_offset: number;
15
- alpha_length: number;
16
- data: Uint8Array;
17
- }, "size", Record<never, never>, undefined>;
18
- export type AdbFrameBufferV1 = (typeof AdbFrameBufferV1)["TDeserializeResult"];
19
- export declare const AdbFrameBufferV2: Struct<{
20
- bpp: number;
21
- colorSpace: number;
22
- size: number;
23
- width: number;
24
- height: number;
25
- red_offset: number;
26
- red_length: number;
27
- blue_offset: number;
28
- blue_length: number;
29
- green_offset: number;
30
- green_length: number;
31
- alpha_offset: number;
32
- alpha_length: number;
33
- data: Uint8Array;
34
- }, "size", Record<never, never>, undefined>;
35
- export type AdbFrameBufferV2 = (typeof AdbFrameBufferV2)["TDeserializeResult"];
3
+ export declare const AdbFrameBufferV1: import("@yume-chan/struct").Struct<{
4
+ bpp: import("@yume-chan/struct").NumberField<number>;
5
+ size: import("@yume-chan/struct").NumberField<number>;
6
+ width: import("@yume-chan/struct").NumberField<number>;
7
+ height: import("@yume-chan/struct").NumberField<number>;
8
+ red_offset: import("@yume-chan/struct").NumberField<number>;
9
+ red_length: import("@yume-chan/struct").NumberField<number>;
10
+ blue_offset: import("@yume-chan/struct").NumberField<number>;
11
+ blue_length: import("@yume-chan/struct").NumberField<number>;
12
+ green_offset: import("@yume-chan/struct").NumberField<number>;
13
+ green_length: import("@yume-chan/struct").NumberField<number>;
14
+ alpha_offset: import("@yume-chan/struct").NumberField<number>;
15
+ alpha_length: import("@yume-chan/struct").NumberField<number>;
16
+ data: import("@yume-chan/struct").Field<Uint8Array<ArrayBufferLike>, "size", Record<"size", number>>;
17
+ }, {}, import("@yume-chan/struct").FieldsType<{
18
+ bpp: import("@yume-chan/struct").NumberField<number>;
19
+ size: import("@yume-chan/struct").NumberField<number>;
20
+ width: import("@yume-chan/struct").NumberField<number>;
21
+ height: import("@yume-chan/struct").NumberField<number>;
22
+ red_offset: import("@yume-chan/struct").NumberField<number>;
23
+ red_length: import("@yume-chan/struct").NumberField<number>;
24
+ blue_offset: import("@yume-chan/struct").NumberField<number>;
25
+ blue_length: import("@yume-chan/struct").NumberField<number>;
26
+ green_offset: import("@yume-chan/struct").NumberField<number>;
27
+ green_length: import("@yume-chan/struct").NumberField<number>;
28
+ alpha_offset: import("@yume-chan/struct").NumberField<number>;
29
+ alpha_length: import("@yume-chan/struct").NumberField<number>;
30
+ data: import("@yume-chan/struct").Field<Uint8Array<ArrayBufferLike>, "size", Record<"size", number>>;
31
+ }>>;
32
+ export type AdbFrameBufferV1 = StructValue<typeof AdbFrameBufferV1>;
33
+ export declare const AdbFrameBufferV2: import("@yume-chan/struct").Struct<{
34
+ bpp: import("@yume-chan/struct").NumberField<number>;
35
+ colorSpace: import("@yume-chan/struct").NumberField<number>;
36
+ size: import("@yume-chan/struct").NumberField<number>;
37
+ width: import("@yume-chan/struct").NumberField<number>;
38
+ height: import("@yume-chan/struct").NumberField<number>;
39
+ red_offset: import("@yume-chan/struct").NumberField<number>;
40
+ red_length: import("@yume-chan/struct").NumberField<number>;
41
+ blue_offset: import("@yume-chan/struct").NumberField<number>;
42
+ blue_length: import("@yume-chan/struct").NumberField<number>;
43
+ green_offset: import("@yume-chan/struct").NumberField<number>;
44
+ green_length: import("@yume-chan/struct").NumberField<number>;
45
+ alpha_offset: import("@yume-chan/struct").NumberField<number>;
46
+ alpha_length: import("@yume-chan/struct").NumberField<number>;
47
+ data: import("@yume-chan/struct").Field<Uint8Array<ArrayBufferLike>, "size", Record<"size", number>>;
48
+ }, {}, import("@yume-chan/struct").FieldsType<{
49
+ bpp: import("@yume-chan/struct").NumberField<number>;
50
+ colorSpace: import("@yume-chan/struct").NumberField<number>;
51
+ size: import("@yume-chan/struct").NumberField<number>;
52
+ width: import("@yume-chan/struct").NumberField<number>;
53
+ height: import("@yume-chan/struct").NumberField<number>;
54
+ red_offset: import("@yume-chan/struct").NumberField<number>;
55
+ red_length: import("@yume-chan/struct").NumberField<number>;
56
+ blue_offset: import("@yume-chan/struct").NumberField<number>;
57
+ blue_length: import("@yume-chan/struct").NumberField<number>;
58
+ green_offset: import("@yume-chan/struct").NumberField<number>;
59
+ green_length: import("@yume-chan/struct").NumberField<number>;
60
+ alpha_offset: import("@yume-chan/struct").NumberField<number>;
61
+ alpha_length: import("@yume-chan/struct").NumberField<number>;
62
+ data: import("@yume-chan/struct").Field<Uint8Array<ArrayBufferLike>, "size", Record<"size", number>>;
63
+ }>>;
64
+ export type AdbFrameBufferV2 = StructValue<typeof AdbFrameBufferV2>;
36
65
  /**
37
66
  * ADB uses 8 int32 fields to describe bit depths
38
67
  *
@@ -1 +1 @@
1
- {"version":3,"file":"framebuffer.d.ts","sourceRoot":"","sources":["../../src/commands/framebuffer.ts"],"names":[],"mappings":"AACA,OAAO,MAA4B,MAAM,mBAAmB,CAAC;AAE7D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAIrC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;2CAamB,CAAC;AAEjD,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC;AAE/E,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;2CAcmB,CAAC;AAEjD,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC;AAE/E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAEjE,8BAAsB,mBAAoB,SAAQ,KAAK;gBACvC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGtD;AAED,qBAAa,qCAAsC,SAAQ,mBAAmB;gBAC9D,OAAO,EAAE,MAAM;CAG9B;AAED,qBAAa,4BAA6B,SAAQ,mBAAmB;;CAIpE;AAED,wBAAsB,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,CAuBnE"}
1
+ {"version":3,"file":"framebuffer.d.ts","sourceRoot":"","sources":["../../src/commands/framebuffer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAIrC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiB5B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEpE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkB5B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAEjE,8BAAsB,mBAAoB,SAAQ,KAAK;gBACvC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAGtD;AAED,qBAAa,qCAAsC,SAAQ,mBAAmB;gBAC9D,OAAO,EAAE,MAAM;CAG9B;AAED,qBAAa,4BAA6B,SAAQ,mBAAmB;;CAIpE;AAED,wBAAsB,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,CAuBnE"}
@@ -1,35 +1,37 @@
1
1
  import { BufferedReadableStream } from "@yume-chan/stream-extra";
2
- import Struct, { StructEmptyError } from "@yume-chan/struct";
3
- const Version = new Struct({ littleEndian: true }).uint32("version");
4
- export const AdbFrameBufferV1 = new Struct({ littleEndian: true })
5
- .uint32("bpp")
6
- .uint32("size")
7
- .uint32("width")
8
- .uint32("height")
9
- .uint32("red_offset")
10
- .uint32("red_length")
11
- .uint32("blue_offset")
12
- .uint32("blue_length")
13
- .uint32("green_offset")
14
- .uint32("green_length")
15
- .uint32("alpha_offset")
16
- .uint32("alpha_length")
17
- .uint8Array("data", { lengthField: "size" });
18
- export const AdbFrameBufferV2 = new Struct({ littleEndian: true })
19
- .uint32("bpp")
20
- .uint32("colorSpace")
21
- .uint32("size")
22
- .uint32("width")
23
- .uint32("height")
24
- .uint32("red_offset")
25
- .uint32("red_length")
26
- .uint32("blue_offset")
27
- .uint32("blue_length")
28
- .uint32("green_offset")
29
- .uint32("green_length")
30
- .uint32("alpha_offset")
31
- .uint32("alpha_length")
32
- .uint8Array("data", { lengthField: "size" });
2
+ import { buffer, struct, StructEmptyError, u32 } from "@yume-chan/struct";
3
+ const Version = struct({ version: u32 }, { littleEndian: true });
4
+ export const AdbFrameBufferV1 = struct({
5
+ bpp: u32,
6
+ size: u32,
7
+ width: u32,
8
+ height: u32,
9
+ red_offset: u32,
10
+ red_length: u32,
11
+ blue_offset: u32,
12
+ blue_length: u32,
13
+ green_offset: u32,
14
+ green_length: u32,
15
+ alpha_offset: u32,
16
+ alpha_length: u32,
17
+ data: buffer("size"),
18
+ }, { littleEndian: true });
19
+ export const AdbFrameBufferV2 = struct({
20
+ bpp: u32,
21
+ colorSpace: u32,
22
+ size: u32,
23
+ width: u32,
24
+ height: u32,
25
+ red_offset: u32,
26
+ red_length: u32,
27
+ blue_offset: u32,
28
+ blue_length: u32,
29
+ green_offset: u32,
30
+ green_length: u32,
31
+ alpha_offset: u32,
32
+ alpha_length: u32,
33
+ data: buffer("size"),
34
+ }, { littleEndian: true });
33
35
  export class AdbFrameBufferError extends Error {
34
36
  constructor(message, options) {
35
37
  super(message, options);
@@ -61,9 +63,9 @@ export async function framebuffer(adb) {
61
63
  switch (version) {
62
64
  case 1:
63
65
  // TODO: AdbFrameBuffer: does all v1 responses uses the same color space? Add it so the command returns same format for all versions.
64
- return AdbFrameBufferV1.deserialize(stream);
66
+ return await AdbFrameBufferV1.deserialize(stream);
65
67
  case 2:
66
- return AdbFrameBufferV2.deserialize(stream);
68
+ return await AdbFrameBufferV2.deserialize(stream);
67
69
  default:
68
70
  throw new AdbFrameBufferUnsupportedVersionError(version);
69
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"framebuffer.js","sourceRoot":"","sources":["../../src/commands/framebuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"framebuffer.js","sourceRoot":"","sources":["../../src/commands/framebuffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAI1E,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;AAEjE,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAClC;IACI,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,GAAG;IACT,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,GAAG;IACX,UAAU,EAAE,GAAG;IACf,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,GAAG;IACjB,YAAY,EAAE,GAAG;IACjB,YAAY,EAAE,GAAG;IACjB,YAAY,EAAE,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;CACvB,EACD,EAAE,YAAY,EAAE,IAAI,EAAE,CACzB,CAAC;AAIF,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAClC;IACI,GAAG,EAAE,GAAG;IACR,UAAU,EAAE,GAAG;IACf,IAAI,EAAE,GAAG;IACT,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,GAAG;IACX,UAAU,EAAE,GAAG;IACf,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,GAAG;IACjB,YAAY,EAAE,GAAG;IACjB,YAAY,EAAE,GAAG;IACjB,YAAY,EAAE,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;CACvB,EACD,EAAE,YAAY,EAAE,IAAI,EAAE,CACzB,CAAC;AAsBF,MAAM,OAAgB,mBAAoB,SAAQ,KAAK;IACnD,YAAY,OAAe,EAAE,OAAsB;QAC/C,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5B,CAAC;CACJ;AAED,MAAM,OAAO,qCAAsC,SAAQ,mBAAmB;IAC1E,YAAY,OAAe;QACvB,KAAK,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;CACJ;AAED,MAAM,OAAO,4BAA6B,SAAQ,mBAAmB;IACjE;QACI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACpD,CAAC;CACJ;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAQ;IACtC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE3D,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACD,CAAC,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,IAAI,CAAC,YAAY,gBAAgB,EAAE,CAAC;YAChC,MAAM,IAAI,4BAA4B,EAAE,CAAC;QAC7C,CAAC;QACD,MAAM,CAAC,CAAC;IACZ,CAAC;IAED,QAAQ,OAAO,EAAE,CAAC;QACd,KAAK,CAAC;YACF,qIAAqI;YACrI,OAAO,MAAM,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtD,KAAK,CAAC;YACF,OAAO,MAAM,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtD;YACI,MAAM,IAAI,qCAAqC,CAAC,OAAO,CAAC,CAAC;IACjE,CAAC;AACL,CAAC"}
@@ -1,4 +1,3 @@
1
- import { AutoDisposable } from "@yume-chan/event";
2
1
  import { BufferedReadableStream } from "@yume-chan/stream-extra";
3
2
  import type { Adb, AdbIncomingSocketHandler } from "../adb.js";
4
3
  export interface AdbForwardListener {
@@ -12,30 +11,31 @@ export declare class AdbReverseError extends Error {
12
11
  export declare class AdbReverseNotSupportedError extends AdbReverseError {
13
12
  constructor();
14
13
  }
15
- export declare class AdbReverseCommand extends AutoDisposable {
14
+ export declare class AdbReverseCommand {
16
15
  #private;
17
16
  protected adb: Adb;
18
17
  constructor(adb: Adb);
19
18
  protected createBufferedStream(service: string): Promise<BufferedReadableStream>;
20
19
  protected sendRequest(service: string): Promise<BufferedReadableStream>;
20
+ /**
21
+ * Get a list of all reverse port forwarding on the device.
22
+ */
21
23
  list(): Promise<AdbForwardListener[]>;
22
24
  /**
23
- * Add an already existing reverse tunnel. Depends on the transport type, this may not do anything.
24
- * @param deviceAddress The address to be listened on device by ADB daemon. Or `tcp:0` to choose an available TCP port.
25
- * @param localAddress The address that listens on the local machine.
26
- * @returns `tcp:{ACTUAL_LISTENING_PORT}`, If `deviceAddress` is `tcp:0`; otherwise, `deviceAddress`.
25
+ * Add a reverse port forwarding for a program that already listens on a port.
27
26
  */
28
27
  addExternal(deviceAddress: string, localAddress: string): Promise<string>;
29
28
  /**
30
- * @param deviceAddress The address to be listened on device by ADB daemon. Or `tcp:0` to choose an available TCP port.
31
- * @param handler A callback to handle incoming connections.
32
- * @param localAddressThe The address that listens on the local machine. May be `undefined` to let the transport choose an appropriate one.
33
- * @returns `tcp:{ACTUAL_LISTENING_PORT}`, If `deviceAddress` is `tcp:0`; otherwise, `deviceAddress`.
34
- * @throws {AdbReverseNotSupportedError} If ADB reverse tunnel is not supported on this device when connected wirelessly.
35
- * @throws {AdbReverseError} If ADB daemon returns an error.
29
+ * Add a reverse port forwarding.
36
30
  */
37
31
  add(deviceAddress: string, handler: AdbIncomingSocketHandler, localAddress?: string): Promise<string>;
32
+ /**
33
+ * Remove a reverse port forwarding.
34
+ */
38
35
  remove(deviceAddress: string): Promise<void>;
36
+ /**
37
+ * Remove all reverse port forwarding, including the ones added by other programs.
38
+ */
39
39
  removeAll(): Promise<void>;
40
40
  }
41
41
  //# sourceMappingURL=reverse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reverse.d.ts","sourceRoot":"","sources":["../../src/commands/reverse.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAG/D,MAAM,WAAW,kBAAkB;IAC/B,YAAY,EAAE,MAAM,CAAC;IAErB,SAAS,EAAE,MAAM,CAAC;IAElB,UAAU,EAAE,MAAM,CAAC;CACtB;AAMD,qBAAa,eAAgB,SAAQ,KAAK;gBAC1B,OAAO,EAAE,MAAM;CAI9B;AAED,qBAAa,2BAA4B,SAAQ,eAAe;;CAM/D;AA8BD,qBAAa,iBAAkB,SAAQ,cAAc;;IACjD,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;gBAIP,GAAG,EAAE,GAAG;cAMJ,oBAAoB,CAAC,OAAO,EAAE,MAAM;cAKpC,WAAW,CAAC,OAAO,EAAE,MAAM;IAWrC,IAAI,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAiB3C;;;;;OAKG;IACG,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IA8B7D;;;;;;;OAOG;IACG,GAAG,CACL,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,wBAAwB,EACjC,YAAY,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC;IAgBZ,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY5C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAQnC"}
1
+ {"version":3,"file":"reverse.d.ts","sourceRoot":"","sources":["../../src/commands/reverse.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAQjE,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAG/D,MAAM,WAAW,kBAAkB;IAC/B,YAAY,EAAE,MAAM,CAAC;IAErB,SAAS,EAAE,MAAM,CAAC;IAElB,UAAU,EAAE,MAAM,CAAC;CACtB;AAkBD,qBAAa,eAAgB,SAAQ,KAAK;gBAC1B,OAAO,EAAE,MAAM;CAG9B;AAED,qBAAa,2BAA4B,SAAQ,eAAe;;CAM/D;AAkCD,qBAAa,iBAAiB;;IAC1B,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;gBAIP,GAAG,EAAE,GAAG;cAIJ,oBAAoB,CAAC,OAAO,EAAE,MAAM;cAKpC,WAAW,CAAC,OAAO,EAAE,MAAM;IAW3C;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAiB3C;;OAEG;IACG,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IA8B7D;;OAEG;IACG,GAAG,CACL,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,wBAAwB,EACjC,YAAY,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC;IAgBlB;;OAEG;IACG,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYlD;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAQnC"}