@yume-chan/adb 0.0.24 → 1.1.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.
- package/CHANGELOG.md +42 -1
- package/README.md +4 -1
- package/esm/adb.d.ts +13 -7
- package/esm/adb.d.ts.map +1 -1
- package/esm/adb.js +3 -0
- package/esm/adb.js.map +1 -1
- package/esm/banner.d.ts +7 -6
- package/esm/banner.d.ts.map +1 -1
- package/esm/banner.js +6 -7
- package/esm/banner.js.map +1 -1
- package/esm/commands/framebuffer.d.ts +63 -34
- package/esm/commands/framebuffer.d.ts.map +1 -1
- package/esm/commands/framebuffer.js +35 -33
- package/esm/commands/framebuffer.js.map +1 -1
- package/esm/commands/reverse.d.ts +12 -12
- package/esm/commands/reverse.d.ts.map +1 -1
- package/esm/commands/reverse.js +39 -30
- package/esm/commands/reverse.js.map +1 -1
- package/esm/commands/subprocess/protocols/none.d.ts.map +1 -1
- package/esm/commands/subprocess/protocols/none.js +3 -5
- package/esm/commands/subprocess/protocols/none.js.map +1 -1
- package/esm/commands/subprocess/protocols/shell.d.ts +20 -12
- package/esm/commands/subprocess/protocols/shell.d.ts.map +1 -1
- package/esm/commands/subprocess/protocols/shell.js +16 -21
- package/esm/commands/subprocess/protocols/shell.js.map +1 -1
- package/esm/commands/subprocess/protocols/types.d.ts +6 -6
- package/esm/commands/subprocess/protocols/types.d.ts.map +1 -1
- package/esm/commands/sync/list.d.ts +49 -27
- package/esm/commands/sync/list.d.ts.map +1 -1
- package/esm/commands/sync/list.js +9 -9
- package/esm/commands/sync/list.js.map +1 -1
- package/esm/commands/sync/pull.d.ts +7 -6
- package/esm/commands/sync/pull.d.ts.map +1 -1
- package/esm/commands/sync/pull.js +3 -5
- package/esm/commands/sync/pull.js.map +1 -1
- package/esm/commands/sync/push.d.ts +22 -16
- package/esm/commands/sync/push.d.ts.map +1 -1
- package/esm/commands/sync/push.js +12 -16
- package/esm/commands/sync/push.js.map +1 -1
- package/esm/commands/sync/request.d.ts +19 -17
- package/esm/commands/sync/request.d.ts.map +1 -1
- package/esm/commands/sync/request.js +14 -18
- package/esm/commands/sync/request.js.map +1 -1
- package/esm/commands/sync/response.d.ts +18 -18
- package/esm/commands/sync/response.d.ts.map +1 -1
- package/esm/commands/sync/response.js +20 -19
- package/esm/commands/sync/response.js.map +1 -1
- package/esm/commands/sync/socket.d.ts +1 -1
- package/esm/commands/sync/socket.js +2 -2
- package/esm/commands/sync/socket.js.map +1 -1
- package/esm/commands/sync/stat.d.ts +75 -51
- package/esm/commands/sync/stat.d.ts.map +1 -1
- package/esm/commands/sync/stat.js +73 -67
- package/esm/commands/sync/stat.js.map +1 -1
- package/esm/commands/sync/sync.d.ts +14 -14
- package/esm/commands/sync/sync.d.ts.map +1 -1
- package/esm/commands/sync/sync.js +4 -7
- package/esm/commands/sync/sync.js.map +1 -1
- package/esm/commands/tcpip.d.ts +0 -1
- package/esm/commands/tcpip.d.ts.map +1 -1
- package/esm/commands/tcpip.js +8 -8
- package/esm/commands/tcpip.js.map +1 -1
- package/esm/daemon/auth.d.ts +8 -7
- package/esm/daemon/auth.d.ts.map +1 -1
- package/esm/daemon/auth.js +7 -8
- package/esm/daemon/auth.js.map +1 -1
- package/esm/daemon/crypto.d.ts +1 -1
- package/esm/daemon/crypto.d.ts.map +1 -1
- package/esm/daemon/crypto.js +1 -0
- package/esm/daemon/crypto.js.map +1 -1
- package/esm/daemon/device.d.ts +2 -2
- package/esm/daemon/device.d.ts.map +1 -1
- package/esm/daemon/dispatcher.js +6 -6
- package/esm/daemon/dispatcher.js.map +1 -1
- package/esm/daemon/packet.d.ts +46 -30
- package/esm/daemon/packet.d.ts.map +1 -1
- package/esm/daemon/packet.js +24 -21
- package/esm/daemon/packet.js.map +1 -1
- package/esm/daemon/socket.d.ts +1 -6
- package/esm/daemon/socket.d.ts.map +1 -1
- package/esm/daemon/socket.js +4 -27
- package/esm/daemon/socket.js.map +1 -1
- package/esm/daemon/transport.d.ts +14 -14
- package/esm/daemon/transport.d.ts.map +1 -1
- package/esm/daemon/transport.js +6 -8
- package/esm/daemon/transport.js.map +1 -1
- package/esm/device-observer.d.ts +10 -0
- package/esm/device-observer.d.ts.map +1 -0
- package/esm/device-observer.js +2 -0
- package/esm/device-observer.js.map +1 -0
- package/esm/features.d.ts +12 -11
- package/esm/features.d.ts.map +1 -1
- package/esm/features.js +11 -12
- package/esm/features.js.map +1 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -0
- package/esm/index.js.map +1 -1
- package/esm/server/client.d.ts +33 -35
- package/esm/server/client.d.ts.map +1 -1
- package/esm/server/client.js +136 -201
- package/esm/server/client.js.map +1 -1
- package/esm/server/index.d.ts +2 -0
- package/esm/server/index.d.ts.map +1 -1
- package/esm/server/index.js +2 -0
- package/esm/server/index.js.map +1 -1
- package/esm/server/observer.d.ts +8 -0
- package/esm/server/observer.d.ts.map +1 -0
- package/esm/server/observer.js +106 -0
- package/esm/server/observer.js.map +1 -0
- package/esm/server/stream.d.ts +19 -0
- package/esm/server/stream.d.ts.map +1 -0
- package/esm/server/stream.js +77 -0
- package/esm/server/stream.js.map +1 -0
- package/esm/server/transport.d.ts +3 -4
- package/esm/server/transport.d.ts.map +1 -1
- package/esm/server/transport.js +16 -16
- package/esm/server/transport.js.map +1 -1
- package/esm/utils/base64.d.ts.map +1 -1
- package/esm/utils/base64.js +19 -16
- package/esm/utils/base64.js.map +1 -1
- package/esm/utils/index.d.ts +1 -0
- package/esm/utils/index.d.ts.map +1 -1
- package/esm/utils/index.js +1 -0
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/no-op.d.ts.map +1 -1
- package/esm/utils/no-op.js +1 -0
- package/esm/utils/no-op.js.map +1 -1
- package/esm/utils/ref.d.ts +18 -0
- package/esm/utils/ref.d.ts.map +1 -0
- package/esm/utils/ref.js +29 -0
- package/esm/utils/ref.js.map +1 -0
- package/package.json +13 -16
- package/src/adb.ts +13 -7
- package/src/banner.ts +8 -6
- package/src/commands/framebuffer.ts +44 -35
- package/src/commands/reverse.ts +49 -31
- package/src/commands/subprocess/protocols/none.ts +3 -5
- package/src/commands/subprocess/protocols/shell.ts +26 -24
- package/src/commands/subprocess/protocols/types.ts +6 -6
- package/src/commands/sync/list.ts +20 -13
- package/src/commands/sync/pull.ts +8 -7
- package/src/commands/sync/push.ts +20 -16
- package/src/commands/sync/request.ts +18 -19
- package/src/commands/sync/response.ts +28 -29
- package/src/commands/sync/socket.ts +2 -2
- package/src/commands/sync/stat.ts +93 -71
- package/src/commands/sync/sync.ts +4 -8
- package/src/commands/tcpip.ts +8 -8
- package/src/daemon/auth.ts +11 -9
- package/src/daemon/crypto.ts +2 -0
- package/src/daemon/device.ts +2 -2
- package/src/daemon/dispatcher.ts +6 -6
- package/src/daemon/packet.ts +37 -25
- package/src/daemon/socket.ts +4 -27
- package/src/daemon/transport.ts +36 -35
- package/src/device-observer.ts +10 -0
- package/src/features.ts +13 -11
- package/src/index.ts +1 -0
- package/src/server/client.ts +181 -242
- package/src/server/index.ts +2 -0
- package/src/server/observer.ts +144 -0
- package/src/server/stream.ts +100 -0
- package/src/server/transport.ts +18 -17
- package/src/utils/base64.ts +26 -18
- package/src/utils/index.ts +1 -0
- package/src/utils/no-op.ts +1 -0
- package/src/utils/ref.ts +37 -0
- package/tsconfig.build.json +1 -12
- package/tsconfig.build.tsbuildinfo +1 -1
- package/CHANGELOG.json +0 -298
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,35 @@
|
|
|
1
1
|
# Change Log - @yume-chan/adb
|
|
2
2
|
|
|
3
|
+
## 1.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- ab98953: Add partial support for ADB server version 40
|
|
8
|
+
|
|
9
|
+
## 1.0.1
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 53688d3: Use PNPM workspace and Changesets to manage the monorepo.
|
|
14
|
+
|
|
15
|
+
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.
|
|
16
|
+
|
|
17
|
+
- db8466f: Rewrite the struct API completely
|
|
18
|
+
- db8466f: Add common interface for device observers
|
|
19
|
+
- db8466f: Improve tree-shaking by removing TypeScript enum and namespace
|
|
20
|
+
- Updated dependencies [53688d3]
|
|
21
|
+
- Updated dependencies [db8466f]
|
|
22
|
+
- Updated dependencies [ea5002b]
|
|
23
|
+
- Updated dependencies [db8466f]
|
|
24
|
+
- @yume-chan/no-data-view@1.0.1
|
|
25
|
+
- @yume-chan/stream-extra@1.0.1
|
|
26
|
+
- @yume-chan/struct@1.0.1
|
|
27
|
+
- @yume-chan/event@1.0.1
|
|
28
|
+
|
|
3
29
|
This log was last generated on Tue, 18 Jun 2024 02:49:43 GMT and should not be manually modified.
|
|
4
30
|
|
|
5
31
|
## 0.0.24
|
|
32
|
+
|
|
6
33
|
Tue, 18 Jun 2024 02:49:43 GMT
|
|
7
34
|
|
|
8
35
|
### Updates
|
|
@@ -17,6 +44,7 @@ Tue, 18 Jun 2024 02:49:43 GMT
|
|
|
17
44
|
- Fix too many event listener warning in Node.js.
|
|
18
45
|
|
|
19
46
|
## 0.0.23
|
|
47
|
+
|
|
20
48
|
Thu, 21 Mar 2024 03:15:10 GMT
|
|
21
49
|
|
|
22
50
|
### Updates
|
|
@@ -26,6 +54,7 @@ Thu, 21 Mar 2024 03:15:10 GMT
|
|
|
26
54
|
- Add support for delayed ack on Android 14
|
|
27
55
|
|
|
28
56
|
## 0.0.22
|
|
57
|
+
|
|
29
58
|
Wed, 13 Dec 2023 05:57:27 GMT
|
|
30
59
|
|
|
31
60
|
### Updates
|
|
@@ -36,6 +65,7 @@ Wed, 13 Dec 2023 05:57:27 GMT
|
|
|
36
65
|
- Fix TypeScript build when using `AdbSubprocessNoneProtocol` without installing `web-streams-polyfill` package
|
|
37
66
|
|
|
38
67
|
## 0.0.21
|
|
68
|
+
|
|
39
69
|
Fri, 25 Aug 2023 14:05:18 GMT
|
|
40
70
|
|
|
41
71
|
### Updates
|
|
@@ -47,6 +77,7 @@ Fri, 25 Aug 2023 14:05:18 GMT
|
|
|
47
77
|
- Add `recursive` and `force` options to `rm` method, allow deleting folders
|
|
48
78
|
|
|
49
79
|
## 0.0.20
|
|
80
|
+
|
|
50
81
|
Mon, 05 Jun 2023 02:51:41 GMT
|
|
51
82
|
|
|
52
83
|
### Updates
|
|
@@ -61,6 +92,7 @@ Mon, 05 Jun 2023 02:51:41 GMT
|
|
|
61
92
|
- Group `product`, `model`, `device` and `features` fields on `Adb` class to the `banner` field with type of `AdbBanner`.
|
|
62
93
|
|
|
63
94
|
## 0.0.19
|
|
95
|
+
|
|
64
96
|
Sun, 09 Apr 2023 05:55:33 GMT
|
|
65
97
|
|
|
66
98
|
### Updates
|
|
@@ -71,11 +103,13 @@ Sun, 09 Apr 2023 05:55:33 GMT
|
|
|
71
103
|
- Add `AdbReverseError` and `AdbReverseNotSupportedError` for better error handling in reverse tunnel command.
|
|
72
104
|
|
|
73
105
|
## 0.0.18
|
|
106
|
+
|
|
74
107
|
Wed, 25 Jan 2023 21:33:49 GMT
|
|
75
108
|
|
|
76
109
|
_Version update only_
|
|
77
110
|
|
|
78
111
|
## 0.0.17
|
|
112
|
+
|
|
79
113
|
Tue, 18 Oct 2022 09:32:30 GMT
|
|
80
114
|
|
|
81
115
|
### Updates
|
|
@@ -83,6 +117,7 @@ Tue, 18 Oct 2022 09:32:30 GMT
|
|
|
83
117
|
- Move stream utils to separate package
|
|
84
118
|
|
|
85
119
|
## 0.0.16
|
|
120
|
+
|
|
86
121
|
Sat, 28 May 2022 03:56:37 GMT
|
|
87
122
|
|
|
88
123
|
### Updates
|
|
@@ -93,6 +128,7 @@ Sat, 28 May 2022 03:56:37 GMT
|
|
|
93
128
|
- Improve performance of `BufferedStream` by up to 100%.
|
|
94
129
|
|
|
95
130
|
## 0.0.15
|
|
131
|
+
|
|
96
132
|
Mon, 02 May 2022 04:18:01 GMT
|
|
97
133
|
|
|
98
134
|
### Updates
|
|
@@ -103,6 +139,7 @@ Mon, 02 May 2022 04:18:01 GMT
|
|
|
103
139
|
- Fix an issue where `reverse` commands doesn't parse error message correctly
|
|
104
140
|
|
|
105
141
|
## 0.0.14
|
|
142
|
+
|
|
106
143
|
Sat, 30 Apr 2022 14:05:48 GMT
|
|
107
144
|
|
|
108
145
|
### Updates
|
|
@@ -111,6 +148,7 @@ Sat, 30 Apr 2022 14:05:48 GMT
|
|
|
111
148
|
- Add an `Adb#close()` method to gracefully shutdown a connection
|
|
112
149
|
|
|
113
150
|
## 0.0.13
|
|
151
|
+
|
|
114
152
|
Thu, 28 Apr 2022 01:23:53 GMT
|
|
115
153
|
|
|
116
154
|
### Updates
|
|
@@ -120,11 +158,13 @@ Thu, 28 Apr 2022 01:23:53 GMT
|
|
|
120
158
|
- Add workaround for the push_mkdir issue in Android 9
|
|
121
159
|
|
|
122
160
|
## 0.0.12
|
|
161
|
+
|
|
123
162
|
Sun, 03 Apr 2022 11:18:47 GMT
|
|
124
163
|
|
|
125
164
|
_Version update only_
|
|
126
165
|
|
|
127
166
|
## 0.0.11
|
|
167
|
+
|
|
128
168
|
Sun, 03 Apr 2022 10:54:15 GMT
|
|
129
169
|
|
|
130
170
|
### Patches
|
|
@@ -139,6 +179,7 @@ Sun, 03 Apr 2022 10:54:15 GMT
|
|
|
139
179
|
- Update license year
|
|
140
180
|
|
|
141
181
|
## 0.0.10
|
|
182
|
+
|
|
142
183
|
Sun, 09 Jan 2022 15:52:20 GMT
|
|
143
184
|
|
|
144
185
|
### Updates
|
|
@@ -146,7 +187,7 @@ Sun, 09 Jan 2022 15:52:20 GMT
|
|
|
146
187
|
- Remove `encodeUtf8()` and `decodeUtf8()` from `AdbBackend`
|
|
147
188
|
|
|
148
189
|
## 0.0.9
|
|
190
|
+
|
|
149
191
|
Sun, 09 Jan 2022 15:50:20 GMT
|
|
150
192
|
|
|
151
193
|
_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://
|
|
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():
|
|
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) =>
|
|
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):
|
|
22
|
-
addReverseTunnel(handler: AdbIncomingSocketHandler, address?: string):
|
|
23
|
-
removeReverseTunnel(address: string):
|
|
24
|
-
clearReverseTunnels():
|
|
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,
|
|
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":"
|
|
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
|
|
3
|
-
Product
|
|
4
|
-
Model
|
|
5
|
-
Device
|
|
6
|
-
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;
|
package/esm/banner.d.ts.map
CHANGED
|
@@ -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,
|
|
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
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
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,
|
|
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
|
|
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
|
-
}, "
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
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,
|
|
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
|
|
3
|
-
const Version =
|
|
4
|
-
export const AdbFrameBufferV1 =
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
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":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;
|
|
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
|
|
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
|
|
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
|
-
*
|
|
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,
|
|
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"}
|