@yume-chan/adb 0.0.15 → 0.0.16
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.json +21 -0
- package/CHANGELOG.md +11 -1
- package/LICENSE +21 -21
- package/README.md +247 -247
- package/esm/adb.d.ts +7 -0
- package/esm/adb.d.ts.map +1 -1
- package/esm/adb.js +7 -0
- package/esm/adb.js.map +1 -1
- package/esm/commands/subprocess/protocols/none.d.ts +1 -0
- package/esm/commands/subprocess/protocols/none.d.ts.map +1 -1
- package/esm/commands/subprocess/protocols/none.js +6 -5
- package/esm/commands/subprocess/protocols/none.js.map +1 -1
- package/esm/commands/sync/stat.d.ts.map +1 -1
- package/esm/commands/sync/stat.js.map +1 -1
- package/esm/socket/dispatcher.d.ts +4 -1
- package/esm/socket/dispatcher.d.ts.map +1 -1
- package/esm/socket/dispatcher.js +11 -8
- package/esm/socket/dispatcher.js.map +1 -1
- package/esm/socket/socket.d.ts +6 -1
- package/esm/socket/socket.d.ts.map +1 -1
- package/esm/socket/socket.js +17 -7
- package/esm/socket/socket.js.map +1 -1
- package/esm/stream/buffered.d.ts +6 -2
- package/esm/stream/buffered.d.ts.map +1 -1
- package/esm/stream/buffered.js +67 -47
- package/esm/stream/buffered.js.map +1 -1
- package/esm/stream/detect.js +1 -0
- package/esm/stream/detect.js.map +1 -1
- package/esm/stream/detect.polyfill.d.ts.map +1 -1
- package/esm/stream/detect.polyfill.js +0 -5
- package/esm/stream/detect.polyfill.js.map +1 -1
- package/esm/stream/transform.d.ts +20 -0
- package/esm/stream/transform.d.ts.map +1 -1
- package/esm/stream/transform.js +7 -1
- package/esm/stream/transform.js.map +1 -1
- package/package.json +10 -10
- package/src/adb.ts +280 -273
- package/src/auth.ts +173 -173
- package/src/backend.ts +11 -11
- package/src/commands/base.ts +11 -11
- package/src/commands/framebuffer.ts +73 -73
- package/src/commands/index.ts +8 -8
- package/src/commands/install.ts +30 -30
- package/src/commands/power.ts +54 -54
- package/src/commands/reverse.ts +140 -140
- package/src/commands/subprocess/index.ts +139 -139
- package/src/commands/subprocess/protocols/none.ts +70 -68
- package/src/commands/subprocess/protocols/shell.ts +190 -190
- package/src/commands/subprocess/protocols/types.ts +59 -59
- package/src/commands/subprocess/utils.ts +20 -20
- package/src/commands/sync/index.ts +7 -7
- package/src/commands/sync/list.ts +86 -86
- package/src/commands/sync/pull.ts +46 -46
- package/src/commands/sync/push.ts +41 -41
- package/src/commands/sync/request.ts +50 -50
- package/src/commands/sync/response.ts +64 -64
- package/src/commands/sync/stat.ts +151 -150
- package/src/commands/sync/sync.ts +181 -181
- package/src/commands/tcpip.ts +21 -21
- package/src/crypto.ts +296 -296
- package/src/features.ts +9 -9
- package/src/index.ts +11 -11
- package/src/packet.ts +80 -80
- package/src/socket/dispatcher.ts +305 -304
- package/src/socket/index.ts +2 -2
- package/src/socket/socket.ts +155 -144
- package/src/stream/buffered.ts +168 -147
- package/src/stream/detect.native.ts +362 -362
- package/src/stream/detect.polyfill.ts +22 -28
- package/src/stream/detect.ts +7 -5
- package/src/stream/index.ts +3 -3
- package/src/stream/transform.ts +474 -447
- package/src/utils/auto-reset-event.ts +41 -41
- package/src/utils/base64.ts +306 -306
- package/src/utils/index.ts +3 -3
- package/tsconfig.build.json +3 -3
- package/tsconfig.build.tsbuildinfo +1 -1
- package/tsconfig.test.json +9 -10
- package/web-streams-polyfill-4.0.0-beta.2.tgz +0 -0
- package/esm/commands/subprocess/legacy.d.ts +0 -35
- package/esm/commands/subprocess/legacy.d.ts.map +0 -1
- package/esm/commands/subprocess/legacy.js +0 -53
- package/esm/commands/subprocess/legacy.js.map +0 -1
- package/esm/commands/subprocess/protocol.d.ts +0 -39
- package/esm/commands/subprocess/protocol.d.ts.map +0 -1
- package/esm/commands/subprocess/protocol.js +0 -157
- package/esm/commands/subprocess/protocol.js.map +0 -1
- package/esm/commands/subprocess/types.d.ts +0 -50
- package/esm/commands/subprocess/types.d.ts.map +0 -1
- package/esm/commands/subprocess/types.js +0 -2
- package/esm/commands/subprocess/types.js.map +0 -1
- package/esm/socket/controller.d.ts +0 -37
- package/esm/socket/controller.d.ts.map +0 -1
- package/esm/socket/controller.js +0 -66
- package/esm/socket/controller.js.map +0 -1
- package/esm/stream/detect.bak.d.ts +0 -240
- package/esm/stream/detect.bak.d.ts.map +0 -1
- package/esm/stream/detect.bak.js +0 -60
- package/esm/stream/detect.bak.js.map +0 -1
- package/esm/utils/encoding.d.ts +0 -3
- package/esm/utils/encoding.d.ts.map +0 -1
- package/esm/utils/encoding.js +0 -11
- package/esm/utils/encoding.js.map +0 -1
|
@@ -15,6 +15,7 @@ export declare class AdbSubprocessNoneProtocol implements AdbSubprocessProtocol
|
|
|
15
15
|
static pty(adb: Adb, command: string): Promise<AdbSubprocessNoneProtocol>;
|
|
16
16
|
static raw(adb: Adb, command: string): Promise<AdbSubprocessNoneProtocol>;
|
|
17
17
|
private readonly socket;
|
|
18
|
+
private readonly duplex;
|
|
18
19
|
get stdin(): import("web-streams-polyfill").WritableStream<Uint8Array>;
|
|
19
20
|
private _stdout;
|
|
20
21
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"none.d.ts","sourceRoot":"","sources":["../../../../src/commands/subprocess/protocols/none.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAuB,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAExD;;;;;;;GAOG;AACH,qBAAa,yBAA0B,YAAW,qBAAqB;WACrD,WAAW;WAEL,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM;WAI7B,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM;IAMjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;
|
|
1
|
+
{"version":3,"file":"none.d.ts","sourceRoot":"","sources":["../../../../src/commands/subprocess/protocols/none.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAuB,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAExD;;;;;;;GAOG;AACH,qBAAa,yBAA0B,YAAW,qBAAqB;WACrD,WAAW;WAEL,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM;WAI7B,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM;IAMjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IAEnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA8C;IAGrE,IAAW,KAAK,8DAAmC;IAEnD,OAAO,CAAC,OAAO,CAA6B;IAC5C;;OAEG;IACH,IAAW,MAAM,+BAA2B;IAE5C,OAAO,CAAC,OAAO,CAA6B;IAC5C;;OAEG;IACH,IAAW,MAAM,+BAA2B;IAE5C,OAAO,CAAC,KAAK,CAAkB;IAC/B,IAAW,IAAI,oBAAyB;gBAErB,MAAM,EAAE,SAAS;IAc7B,MAAM;IAIN,IAAI;CAGd"}
|
|
@@ -18,6 +18,7 @@ export class AdbSubprocessNoneProtocol {
|
|
|
18
18
|
return new AdbSubprocessNoneProtocol(await adb.createSocket(`exec:${command}`));
|
|
19
19
|
}
|
|
20
20
|
socket;
|
|
21
|
+
duplex;
|
|
21
22
|
// Legacy shell forwards all data to stdin.
|
|
22
23
|
get stdin() { return this.socket.writable; }
|
|
23
24
|
_stdout;
|
|
@@ -34,20 +35,20 @@ export class AdbSubprocessNoneProtocol {
|
|
|
34
35
|
get exit() { return this._exit; }
|
|
35
36
|
constructor(socket) {
|
|
36
37
|
this.socket = socket;
|
|
37
|
-
|
|
38
|
+
this.duplex = new DuplexStreamFactory({
|
|
38
39
|
close: async () => {
|
|
39
40
|
await this.socket.close();
|
|
40
41
|
},
|
|
41
42
|
});
|
|
42
|
-
this._stdout =
|
|
43
|
-
this._stderr =
|
|
44
|
-
this._exit =
|
|
43
|
+
this._stdout = this.duplex.wrapReadable(this.socket.readable);
|
|
44
|
+
this._stderr = this.duplex.wrapReadable(new ReadableStream());
|
|
45
|
+
this._exit = this.duplex.closed.then(() => 0);
|
|
45
46
|
}
|
|
46
47
|
resize() {
|
|
47
48
|
// Not supported
|
|
48
49
|
}
|
|
49
50
|
kill() {
|
|
50
|
-
return this.
|
|
51
|
+
return this.duplex.close();
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
54
|
//# sourceMappingURL=none.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"none.js","sourceRoot":"","sources":["../../../../src/commands/subprocess/protocols/none.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG/E;;;;;;;GAOG;AACH,MAAM,OAAO,yBAAyB;IAC3B,MAAM,CAAC,WAAW,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IAErC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAQ,EAAE,OAAe;QAC7C,OAAO,IAAI,yBAAyB,CAAC,MAAM,GAAG,CAAC,YAAY,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC,CAAC;IACrF,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAQ,EAAE,OAAe;QAC7C,iDAAiD;QACjD,yCAAyC;QACzC,OAAO,IAAI,yBAAyB,CAAC,MAAM,GAAG,CAAC,YAAY,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC,CAAC;IACpF,CAAC;IAEgB,MAAM,CAAY;
|
|
1
|
+
{"version":3,"file":"none.js","sourceRoot":"","sources":["../../../../src/commands/subprocess/protocols/none.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG/E;;;;;;;GAOG;AACH,MAAM,OAAO,yBAAyB;IAC3B,MAAM,CAAC,WAAW,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IAErC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAQ,EAAE,OAAe;QAC7C,OAAO,IAAI,yBAAyB,CAAC,MAAM,GAAG,CAAC,YAAY,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC,CAAC;IACrF,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAQ,EAAE,OAAe;QAC7C,iDAAiD;QACjD,yCAAyC;QACzC,OAAO,IAAI,yBAAyB,CAAC,MAAM,GAAG,CAAC,YAAY,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC,CAAC;IACpF,CAAC;IAEgB,MAAM,CAAY;IAElB,MAAM,CAA8C;IAErE,2CAA2C;IAC3C,IAAW,KAAK,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE3C,OAAO,CAA6B;IAC5C;;OAEG;IACH,IAAW,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpC,OAAO,CAA6B;IAC5C;;OAEG;IACH,IAAW,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpC,KAAK,CAAkB;IAC/B,IAAW,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAExC,YAAmB,MAAiB;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,MAAM,GAAG,IAAI,mBAAmB,CAAyB;YAC1D,KAAK,EAAE,KAAK,IAAI,EAAE;gBACd,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9B,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM;QACT,gBAAgB;IACpB,CAAC;IAEM,IAAI;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;CACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stat.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/stat.ts"],"names":[],"mappings":"AAAA,OAAO,MAAuB,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AAE5F,OAAO,EAAuB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGvE,oBAAY,aAAa;IACrB,SAAS,IAAO;IAChB,IAAI,IAAO;IACX,IAAI,KAAO;CACd;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,IAAI,IAAI,aAAa,CAAC;IAC1B,IAAI,UAAU,IAAI,MAAM,CAAC;IAEzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,oBAAoB;;;;;;;;
|
|
1
|
+
{"version":3,"file":"stat.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/stat.ts"],"names":[],"mappings":"AAAA,OAAO,MAAuB,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AAE5F,OAAO,EAAuB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGvE,oBAAY,aAAa;IACrB,SAAS,IAAO;IAChB,IAAI,IAAO;IACX,IAAI,KAAO;CACd;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,IAAI,IAAI,aAAa,CAAC;IAC1B,IAAI,UAAU,IAAI,MAAM,CAAC;IAEzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,oBAAoB;;;;;;;;aAkBvB,CAAC;AAEX,oBAAY,oBAAoB,GAAG,OAAO,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;AAErF,oBAAY,oBAAoB;IAC5B,OAAO,IAAI;IACX,MAAM,KAAK;IACX,MAAM,KAAK;IACX,MAAM,KAAK;IACX,KAAK,KAAK;IACV,KAAK,IAAI;IACT,MAAM,KAAK;IACX,GAAG,IAAI;IACP,MAAM,KAAK;IACX,KAAK,KAAK;IACV,MAAM,KAAK;IACX,YAAY,KAAK;IACjB,MAAM,KAAK;IACX,MAAM,IAAI;IACV,MAAM,KAAK;IACX,MAAM,KAAK;IACX,OAAO,KAAK;IACZ,SAAS,KAAK;IACd,KAAK,IAAI;IACT,KAAK,KAAK;IACV,OAAO,KAAK;CACf;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;aAsBtB,CAAC;AAEX,oBAAY,mBAAmB,GAAG,OAAO,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;AAcnF,wBAAsB,YAAY,CAC9B,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,2BAA2B,CAAC,UAAU,CAAC,EAC/C,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,OAAO,GACZ,OAAO,CAAC,WAAW,CAAC,CA2BtB;AAED,wBAAsB,WAAW,CAC7B,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,2BAA2B,CAAC,UAAU,CAAC,EAC/C,IAAI,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,CAG9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stat.js","sourceRoot":"","sources":["../../../src/commands/sync/stat.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvE,kGAAkG;AAClG,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,2DAAgB,CAAA;IAChB,iDAAW,CAAA;IACX,kDAAW,CAAA;AACf,CAAC,EAJW,aAAa,GAAb,aAAa,KAAb,aAAa,QAIxB;AAeD,MAAM,CAAC,MAAM,oBAAoB,GAC7B,IAAI,MAAM,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;KAC7B,KAAK,CAAC,MAAM,CAAC;KACb,KAAK,CAAC,MAAM,CAAC;KACb,KAAK,CAAC,OAAO,CAAC;KACd,KAAK,CAAC;IACH,EAAE,EAAE,iBAAiB,CAAC,KAAc;IACpC,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,IAAI,IAAI,EAAmB,CAAC,CAAC,CAAC;IACvD,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,IAAI,GAAG,IAAmB,CAAC,CAAC,CAAC;CAC/D,CAAC;KACD,eAAe,CAAC,CAAC,MAAM,EAAE,EAAE;IACxB,
|
|
1
|
+
{"version":3,"file":"stat.js","sourceRoot":"","sources":["../../../src/commands/sync/stat.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { RemoveEventListener } from '@yume-chan/event';
|
|
2
|
-
import type
|
|
2
|
+
import { type ValueOrPromise } from "@yume-chan/struct";
|
|
3
3
|
import { AdbCommand, type AdbPacketData, type AdbPacketInit } from '../packet.js';
|
|
4
4
|
import { type ReadableWritablePair } from '../stream/index.js';
|
|
5
5
|
import { AdbSocket } from './socket.js';
|
|
@@ -30,6 +30,9 @@ export interface Closeable {
|
|
|
30
30
|
*/
|
|
31
31
|
export declare class AdbPacketDispatcher implements Closeable {
|
|
32
32
|
private readonly initializers;
|
|
33
|
+
/**
|
|
34
|
+
* Socket local ID to the socket controller.
|
|
35
|
+
*/
|
|
33
36
|
private readonly sockets;
|
|
34
37
|
private _writer;
|
|
35
38
|
readonly options: AdbPacketDispatcherOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/socket/dispatcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/socket/dispatcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAqB,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AACrG,OAAO,EAAgE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE7H,OAAO,EAAE,SAAS,EAAuB,MAAM,aAAa,CAAC;AAE7D,MAAM,WAAW,0BAA0B;IACvC,iBAAiB,EAAE,OAAO,CAAC;IAC3B;;;;;OAKG;IACH,yBAAyB,EAAE,OAAO,CAAC;IACnC,cAAc,EAAE,MAAM,CAAC;CAC1B;AAED,oBAAY,wBAAwB,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC;AAEtF,MAAM,WAAW,SAAS;IACtB,KAAK,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,qBAAa,mBAAoB,YAAW,SAAS;IAGjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgC;IAC7D;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0C;IAElE,OAAO,CAAC,OAAO,CAA8C;IAE7D,SAAgB,OAAO,EAAE,0BAA0B,CAAC;IAEpD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,aAAa,CAA+B;IACpD,IAAW,YAAY,kBAAyC;IAEhE,OAAO,CAAC,uBAAuB,CAA4C;IAE3E,OAAO,CAAC,gBAAgB,CAAyB;gBAG7C,UAAU,EAAE,oBAAoB,CAAC,aAAa,EAAE,aAAa,CAAC,EAC9D,OAAO,EAAE,0BAA0B;IAwDvC,OAAO,CAAC,QAAQ;YAkBF,WAAW;IAoClB,wBAAwB,CAAC,OAAO,EAAE,wBAAwB,GAAG,mBAAmB;YASzE,UAAU;IA4BX,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA2B7D,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAChD,UAAU,CACb,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,GAC9B,OAAO,CAAC,IAAI,CAAC;IAsCH,KAAK;IAmBlB,OAAO,CAAC,OAAO;CAOlB"}
|
package/esm/socket/dispatcher.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { AsyncOperationManager, PromiseResolver } from '@yume-chan/async';
|
|
2
|
+
import { EMPTY_UINT8_ARRAY } from "@yume-chan/struct";
|
|
2
3
|
import { AdbCommand, calculateChecksum } from '../packet.js';
|
|
3
4
|
import { AbortController, WritableStream } from '../stream/index.js';
|
|
4
5
|
import { decodeUtf8, encodeUtf8 } from '../utils/index.js';
|
|
5
6
|
import { AdbSocketController } from './socket.js';
|
|
6
|
-
const EmptyUint8Array = new Uint8Array(0);
|
|
7
7
|
/**
|
|
8
8
|
* The dispatcher is the "dumb" part of the connection handling logic.
|
|
9
9
|
*
|
|
@@ -18,6 +18,9 @@ export class AdbPacketDispatcher {
|
|
|
18
18
|
// ADB socket id starts from 1
|
|
19
19
|
// (0 means open failed)
|
|
20
20
|
initializers = new AsyncOperationManager(1);
|
|
21
|
+
/**
|
|
22
|
+
* Socket local ID to the socket controller.
|
|
23
|
+
*/
|
|
21
24
|
sockets = new Map();
|
|
22
25
|
_writer;
|
|
23
26
|
options;
|
|
@@ -94,12 +97,6 @@ export class AdbPacketDispatcher {
|
|
|
94
97
|
this.sendPacket(AdbCommand.Close, packet.arg1, packet.arg0);
|
|
95
98
|
}
|
|
96
99
|
async handleClose(packet) {
|
|
97
|
-
// From https://android.googlesource.com/platform/packages/modules/adb/+/65d18e2c1cc48b585811954892311b28a4c3d188/adb.cpp#459
|
|
98
|
-
/* According to protocol.txt, p->msg.arg0 might be 0 to indicate
|
|
99
|
-
* a failed OPEN only. However, due to a bug in previous ADB
|
|
100
|
-
* versions, CLOSE(0, remote-id, "") was also used for normal
|
|
101
|
-
* CLOSE() operations.
|
|
102
|
-
*/
|
|
103
100
|
// If the socket is still pending
|
|
104
101
|
if (packet.arg0 === 0 &&
|
|
105
102
|
this.initializers.reject(packet.arg1, new Error('Socket open failed'))) {
|
|
@@ -110,6 +107,12 @@ export class AdbPacketDispatcher {
|
|
|
110
107
|
// don't throw an error here.
|
|
111
108
|
return;
|
|
112
109
|
}
|
|
110
|
+
// From https://android.googlesource.com/platform/packages/modules/adb/+/65d18e2c1cc48b585811954892311b28a4c3d188/adb.cpp#459
|
|
111
|
+
/* According to protocol.txt, p->msg.arg0 might be 0 to indicate
|
|
112
|
+
* a failed OPEN only. However, due to a bug in previous ADB
|
|
113
|
+
* versions, CLOSE(0, remote-id, "") was also used for normal
|
|
114
|
+
* CLOSE() operations.
|
|
115
|
+
*/
|
|
113
116
|
// Ignore `arg0` and search for the socket
|
|
114
117
|
const socket = this.sockets.get(packet.arg1);
|
|
115
118
|
if (socket) {
|
|
@@ -174,7 +177,7 @@ export class AdbPacketDispatcher {
|
|
|
174
177
|
this.sockets.set(localId, controller);
|
|
175
178
|
return controller.socket;
|
|
176
179
|
}
|
|
177
|
-
async sendPacket(packetOrCommand, arg0, arg1, payload =
|
|
180
|
+
async sendPacket(packetOrCommand, arg0, arg1, payload = EMPTY_UINT8_ARRAY) {
|
|
178
181
|
let init;
|
|
179
182
|
if (arg0 === undefined) {
|
|
180
183
|
init = packetOrCommand;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/socket/dispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/socket/dispatcher.ts"],"names":[],"mappings":"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"}
|
package/esm/socket/socket.d.ts
CHANGED
|
@@ -17,13 +17,18 @@ export declare class AdbSocketController implements AdbSocketInfo, ReadableWrita
|
|
|
17
17
|
readonly remoteId: number;
|
|
18
18
|
readonly localCreated: boolean;
|
|
19
19
|
readonly serviceString: string;
|
|
20
|
-
private
|
|
20
|
+
private _duplex;
|
|
21
21
|
private _readable;
|
|
22
22
|
private _readableController;
|
|
23
23
|
get readable(): ReadableStream<Uint8Array>;
|
|
24
24
|
private _writePromise;
|
|
25
25
|
readonly writable: WritableStream<Uint8Array>;
|
|
26
26
|
private _closed;
|
|
27
|
+
/**
|
|
28
|
+
* Whether the socket is half-closed (i.e. the local side initiated the close).
|
|
29
|
+
*
|
|
30
|
+
* It's only used by dispatcher to avoid sending another `CLSE` packet to remote.
|
|
31
|
+
*/
|
|
27
32
|
get closed(): boolean;
|
|
28
33
|
private _socket;
|
|
29
34
|
get socket(): AdbSocket;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../src/socket/socket.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAkE,cAAc,EAAqC,KAAK,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACvM,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEtE,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IAEjB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,4BAA6B,SAAQ,aAAa;IAC/D,UAAU,EAAE,mBAAmB,CAAC;IAEhC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAED,qBAAa,mBAAoB,YAAW,aAAa,EAAE,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,UAAU;IAC1H,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAElD,SAAgB,OAAO,EAAG,MAAM,CAAC;IACjC,SAAgB,QAAQ,EAAG,MAAM,CAAC;IAClC,SAAgB,YAAY,EAAG,OAAO,CAAC;IACvC,SAAgB,aAAa,EAAG,MAAM,CAAC;IAEvC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../src/socket/socket.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAkE,cAAc,EAAqC,KAAK,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACvM,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEtE,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IAEjB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,4BAA6B,SAAQ,aAAa;IAC/D,UAAU,EAAE,mBAAmB,CAAC;IAEhC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAED,qBAAa,mBAAoB,YAAW,aAAa,EAAE,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,UAAU;IAC1H,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAElD,SAAgB,OAAO,EAAG,MAAM,CAAC;IACjC,SAAgB,QAAQ,EAAG,MAAM,CAAC;IAClC,SAAgB,YAAY,EAAG,OAAO,CAAC;IACvC,SAAgB,aAAa,EAAG,MAAM,CAAC;IAEvC,OAAO,CAAC,OAAO,CAA8C;IAE7D,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,mBAAmB,CAA4C;IACvE,IAAW,QAAQ,+BAA6B;IAEhD,OAAO,CAAC,aAAa,CAAoC;IACzD,SAAgB,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IAErD,OAAO,CAAC,OAAO,CAAS;IACxB;;;;OAIG;IACH,IAAW,MAAM,YAA2B;IAE5C,OAAO,CAAC,OAAO,CAAY;IAC3B,IAAW,MAAM,cAA2B;gBAEzB,OAAO,EAAE,4BAA4B;IAyD3C,OAAO,CAAC,MAAM,EAAE,UAAU;IAUhC,GAAG;IAIG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,OAAO;CAGjB;AAED;;;;;;;GAOG;AACH,qBAAa,SAAU,YAAW,aAAa,EAAE,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC;IACzF,OAAO,CAAC,WAAW,CAAsB;IAEzC,IAAW,OAAO,IAAI,MAAM,CAAqC;IACjE,IAAW,QAAQ,IAAI,MAAM,CAAsC;IACnE,IAAW,YAAY,IAAI,OAAO,CAA0C;IAC5E,IAAW,aAAa,IAAI,MAAM,CAA2C;IAE7E,IAAW,QAAQ,IAAI,cAAc,CAAC,UAAU,CAAC,CAAsC;IACvF,IAAW,QAAQ,IAAI,cAAc,CAAC,UAAU,CAAC,CAAsC;gBAEpE,UAAU,EAAE,mBAAmB;IAI3C,KAAK;CAGf"}
|
package/esm/socket/socket.js
CHANGED
|
@@ -7,13 +7,18 @@ export class AdbSocketController {
|
|
|
7
7
|
remoteId;
|
|
8
8
|
localCreated;
|
|
9
9
|
serviceString;
|
|
10
|
-
|
|
10
|
+
_duplex;
|
|
11
11
|
_readable;
|
|
12
12
|
_readableController;
|
|
13
13
|
get readable() { return this._readable; }
|
|
14
14
|
_writePromise;
|
|
15
15
|
writable;
|
|
16
16
|
_closed = false;
|
|
17
|
+
/**
|
|
18
|
+
* Whether the socket is half-closed (i.e. the local side initiated the close).
|
|
19
|
+
*
|
|
20
|
+
* It's only used by dispatcher to avoid sending another `CLSE` packet to remote.
|
|
21
|
+
*/
|
|
17
22
|
get closed() { return this._closed; }
|
|
18
23
|
_socket;
|
|
19
24
|
get socket() { return this._socket; }
|
|
@@ -22,25 +27,25 @@ export class AdbSocketController {
|
|
|
22
27
|
// Check this image to help you understand the stream graph
|
|
23
28
|
// cspell: disable-next-line
|
|
24
29
|
// https://www.plantuml.com/plantuml/png/TL0zoeGm4ErpYc3l5JxyS0yWM6mX5j4C6p4cxcJ25ejttuGX88ZftizxUKmJI275pGhXl0PP_UkfK_CAz5Z2hcWsW9Ny2fdU4C1f5aSchFVxA8vJjlTPRhqZzDQMRB7AklwJ0xXtX0ZSKH1h24ghoKAdGY23FhxC4nS2pDvxzIvxb-8THU0XlEQJ-ZB7SnXTAvc_LhOckhMdLBnbtndpb-SB7a8q2SRD_W00
|
|
25
|
-
this.
|
|
30
|
+
this._duplex = new DuplexStreamFactory({
|
|
26
31
|
close: async () => {
|
|
32
|
+
this._closed = true;
|
|
27
33
|
await this.dispatcher.sendPacket(AdbCommand.Close, this.localId, this.remoteId);
|
|
28
34
|
// Don't `dispose` here, we need to wait for `CLSE` response packet.
|
|
29
35
|
return false;
|
|
30
36
|
},
|
|
31
37
|
dispose: () => {
|
|
32
|
-
this._closed = true;
|
|
33
38
|
// Error out the pending writes
|
|
34
39
|
this._writePromise?.reject(new Error('Socket closed'));
|
|
35
40
|
},
|
|
36
41
|
});
|
|
37
|
-
this._readable = this.
|
|
42
|
+
this._readable = this._duplex.wrapReadable(new PushReadableStream(controller => {
|
|
38
43
|
this._readableController = controller;
|
|
39
44
|
}, {
|
|
40
45
|
highWaterMark: options.highWaterMark ?? 16 * 1024,
|
|
41
46
|
size(chunk) { return chunk.byteLength; }
|
|
42
47
|
}));
|
|
43
|
-
this.writable = pipeFrom(this.
|
|
48
|
+
this.writable = pipeFrom(this._duplex.createWritable(new WritableStream({
|
|
44
49
|
write: async (chunk) => {
|
|
45
50
|
// Wait for an ack packet
|
|
46
51
|
this._writePromise = new PromiseResolver();
|
|
@@ -51,16 +56,21 @@ export class AdbSocketController {
|
|
|
51
56
|
this._socket = new AdbSocket(this);
|
|
52
57
|
}
|
|
53
58
|
async enqueue(packet) {
|
|
59
|
+
// Consumer may abort the `ReadableStream` to close the socket,
|
|
60
|
+
// it's OK to throw away further packets in this case.
|
|
61
|
+
if (this._readableController.abortSignal.aborted) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
54
64
|
await this._readableController.enqueue(packet);
|
|
55
65
|
}
|
|
56
66
|
ack() {
|
|
57
67
|
this._writePromise?.resolve();
|
|
58
68
|
}
|
|
59
69
|
async close() {
|
|
60
|
-
this.
|
|
70
|
+
await this._duplex.close();
|
|
61
71
|
}
|
|
62
72
|
dispose() {
|
|
63
|
-
this.
|
|
73
|
+
this._duplex.dispose();
|
|
64
74
|
}
|
|
65
75
|
}
|
|
66
76
|
/**
|
package/esm/socket/socket.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/socket/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,cAAc,EAAqF,MAAM,oBAAoB,CAAC;AAiBvM,MAAM,OAAO,mBAAmB;IACX,UAAU,CAAuB;IAElC,OAAO,CAAU;IACjB,QAAQ,CAAU;IAClB,YAAY,CAAW;IACvB,aAAa,CAAU;IAE/B,
|
|
1
|
+
{"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/socket/socket.ts"],"names":[],"mappings":"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"}
|
package/esm/stream/buffered.d.ts
CHANGED
|
@@ -5,16 +5,20 @@ export declare class BufferedStreamEndedError extends Error {
|
|
|
5
5
|
constructor();
|
|
6
6
|
}
|
|
7
7
|
export declare class BufferedStream {
|
|
8
|
-
private
|
|
8
|
+
private buffered;
|
|
9
|
+
private bufferedOffset;
|
|
10
|
+
private bufferedLength;
|
|
9
11
|
protected readonly stream: ReadableStream<Uint8Array>;
|
|
10
12
|
protected readonly reader: ReadableStreamDefaultReader<Uint8Array>;
|
|
11
13
|
constructor(stream: ReadableStream<Uint8Array>);
|
|
14
|
+
private readSource;
|
|
15
|
+
private readAsync;
|
|
12
16
|
/**
|
|
13
17
|
*
|
|
14
18
|
* @param length
|
|
15
19
|
* @returns
|
|
16
20
|
*/
|
|
17
|
-
read(length: number): Promise<Uint8Array>;
|
|
21
|
+
read(length: number): Uint8Array | Promise<Uint8Array>;
|
|
18
22
|
/**
|
|
19
23
|
* Return a readable stream with unconsumed data (if any) and
|
|
20
24
|
* all data from the wrapped stream.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffered.d.ts","sourceRoot":"","sources":["../../src/stream/buffered.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAG/E,qBAAa,wBAAyB,SAAQ,KAAK;;CAOlD;AAED,qBAAa,cAAc;IACvB,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"buffered.d.ts","sourceRoot":"","sources":["../../src/stream/buffered.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAG/E,qBAAa,wBAAyB,SAAQ,KAAK;;CAOlD;AAED,qBAAa,cAAc;IACvB,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,cAAc,CAAK;IAE3B,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IAEtD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAC,UAAU,CAAC,CAAC;gBAEhD,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;YAKvC,UAAU;YAQV,SAAS;IAmDvB;;;;OAIG;IACI,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAoB7D;;;;OAIG;IACI,OAAO,IAAI,cAAc,CAAC,UAAU,CAAC;IA6B/B,KAAK;CAGrB;AAED,qBAAa,iBACT,SAAQ,cACR,YAAW,aAAa,EAAE,4BAA4B;IACtD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAErC,IAAW,OAAO,WAAkC;IACpD,IAAW,QAAQ,WAAmC;IACtD,IAAW,YAAY,YAAuC;IAC9D,IAAW,aAAa,WAAwC;IAEhE,IAAW,QAAQ,8DAAmC;gBAEnC,MAAM,EAAE,SAAS;CAIvC"}
|
package/esm/stream/buffered.js
CHANGED
|
@@ -7,67 +7,87 @@ export class BufferedStreamEndedError extends Error {
|
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
export class BufferedStream {
|
|
10
|
-
|
|
10
|
+
buffered;
|
|
11
|
+
bufferedOffset = 0;
|
|
12
|
+
bufferedLength = 0;
|
|
11
13
|
stream;
|
|
12
14
|
reader;
|
|
13
15
|
constructor(stream) {
|
|
14
16
|
this.stream = stream;
|
|
15
17
|
this.reader = stream.getReader();
|
|
16
18
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
async readSource() {
|
|
20
|
+
const { done, value } = await this.reader.read();
|
|
21
|
+
if (done) {
|
|
22
|
+
throw new BufferedStreamEndedError();
|
|
23
|
+
}
|
|
24
|
+
return value;
|
|
25
|
+
}
|
|
26
|
+
async readAsync(length, initial) {
|
|
27
|
+
let result;
|
|
24
28
|
let index;
|
|
25
|
-
if (
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
array = new Uint8Array(length);
|
|
32
|
-
array.set(buffer);
|
|
33
|
-
index = buffer.byteLength;
|
|
34
|
-
this.buffer = undefined;
|
|
29
|
+
if (initial) {
|
|
30
|
+
result = new Uint8Array(length);
|
|
31
|
+
result.set(initial);
|
|
32
|
+
index = initial.byteLength;
|
|
33
|
+
length -= initial.byteLength;
|
|
35
34
|
}
|
|
36
35
|
else {
|
|
37
|
-
const
|
|
38
|
-
if (
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
if (value.byteLength === length) {
|
|
42
|
-
return value;
|
|
36
|
+
const array = await this.readSource();
|
|
37
|
+
if (array.byteLength === length) {
|
|
38
|
+
return array;
|
|
43
39
|
}
|
|
44
|
-
if (
|
|
45
|
-
this.
|
|
46
|
-
|
|
40
|
+
if (array.byteLength > length) {
|
|
41
|
+
this.buffered = array;
|
|
42
|
+
this.bufferedOffset = length;
|
|
43
|
+
this.bufferedLength = array.byteLength - length;
|
|
44
|
+
return array.subarray(0, length);
|
|
47
45
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
index =
|
|
46
|
+
result = new Uint8Array(length);
|
|
47
|
+
result.set(array);
|
|
48
|
+
index = array.byteLength;
|
|
49
|
+
length -= array.byteLength;
|
|
51
50
|
}
|
|
52
|
-
while (
|
|
53
|
-
const
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
51
|
+
while (length > 0) {
|
|
52
|
+
const array = await this.readSource();
|
|
53
|
+
if (array.byteLength === length) {
|
|
54
|
+
result.set(array, index);
|
|
55
|
+
return result;
|
|
57
56
|
}
|
|
58
|
-
if (
|
|
59
|
-
|
|
60
|
-
|
|
57
|
+
if (array.byteLength > length) {
|
|
58
|
+
this.buffered = array;
|
|
59
|
+
this.bufferedOffset = length;
|
|
60
|
+
this.bufferedLength = array.byteLength - length;
|
|
61
|
+
result.set(array.subarray(0, length), index);
|
|
62
|
+
return result;
|
|
61
63
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
result.set(array, index);
|
|
65
|
+
index += array.byteLength;
|
|
66
|
+
length -= array.byteLength;
|
|
67
|
+
}
|
|
68
|
+
return result;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
*
|
|
72
|
+
* @param length
|
|
73
|
+
* @returns
|
|
74
|
+
*/
|
|
75
|
+
read(length) {
|
|
76
|
+
// PERF: Add a synchronous path for reading from internal buffer
|
|
77
|
+
if (this.buffered) {
|
|
78
|
+
const array = this.buffered;
|
|
79
|
+
const offset = this.bufferedOffset;
|
|
80
|
+
if (this.bufferedLength > length) {
|
|
81
|
+
// PERF: `subarray` is slow
|
|
82
|
+
// don't use it until absolutely necessary
|
|
83
|
+
this.bufferedOffset += length;
|
|
84
|
+
this.bufferedLength -= length;
|
|
85
|
+
return array.subarray(offset, offset + length);
|
|
66
86
|
}
|
|
67
|
-
|
|
68
|
-
|
|
87
|
+
this.buffered = undefined;
|
|
88
|
+
return this.readAsync(length, array.subarray(offset));
|
|
69
89
|
}
|
|
70
|
-
return
|
|
90
|
+
return this.readAsync(length);
|
|
71
91
|
}
|
|
72
92
|
/**
|
|
73
93
|
* Return a readable stream with unconsumed data (if any) and
|
|
@@ -75,10 +95,10 @@ export class BufferedStream {
|
|
|
75
95
|
* @returns A `ReadableStream`
|
|
76
96
|
*/
|
|
77
97
|
release() {
|
|
78
|
-
if (this.
|
|
98
|
+
if (this.buffered) {
|
|
79
99
|
return new PushReadableStream(async (controller) => {
|
|
80
100
|
// Put the remaining data back to the stream
|
|
81
|
-
await controller.enqueue(this.
|
|
101
|
+
await controller.enqueue(this.buffered);
|
|
82
102
|
// Manually pipe the stream
|
|
83
103
|
while (true) {
|
|
84
104
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffered.js","sourceRoot":"","sources":["../../src/stream/buffered.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IAC/C;QACI,KAAK,CAAC,cAAc,CAAC,CAAC;QAEtB,oDAAoD;QACpD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACtD,CAAC;CACJ;AAED,MAAM,OAAO,cAAc;IACf,
|
|
1
|
+
{"version":3,"file":"buffered.js","sourceRoot":"","sources":["../../src/stream/buffered.ts"],"names":[],"mappings":"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"}
|
package/esm/stream/detect.js
CHANGED
package/esm/stream/detect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../src/stream/detect.ts"],"names":[],"mappings":"AAAA,wBAAwB;AAExB,wCAAwC;AACxC,+DAA+D;AAC/D,cAAc,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../src/stream/detect.ts"],"names":[],"mappings":"AAAA,wBAAwB;AAExB,wCAAwC;AACxC,+DAA+D;AAC/D,cAAc,sBAAsB,CAAC;AAErC,sCAAsC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.polyfill.d.ts","sourceRoot":"","sources":["../../src/stream/detect.polyfill.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"detect.polyfill.d.ts","sourceRoot":"","sources":["../../src/stream/detect.polyfill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,cAAc,sBAAsB,CAAC;AAErC,iGAAiG;AACjG,MAAM,WAAW,eAAe;IAC5B;;OAEG;IAEH,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;CAC7B;AAED,eAAO,IAAI,eAAe,EAAE;IACxB,SAAS,EAAE,eAAe,CAAC;IAC3B,QAAO,eAAe,CAAC;CAC1B,CAAC"}
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
// cspell: ignore ponyfill
|
|
2
|
-
// TODO: Upgrade to `web-streams-polyfill@4.0.0-beta.2` once released.
|
|
3
|
-
// `web-streams-polyfill@4.0.0-beta.1` changed the default export to ponyfill,
|
|
4
|
-
// But it forgot to include `type` export so it's unusable.
|
|
5
|
-
// See https://github.com/MattiasBuelens/web-streams-polyfill/pull/107
|
|
6
1
|
export * from 'web-streams-polyfill';
|
|
7
2
|
export let AbortController;
|
|
8
3
|
({ AbortController } = globalThis);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.polyfill.js","sourceRoot":"","sources":["../../src/stream/detect.polyfill.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"detect.polyfill.js","sourceRoot":"","sources":["../../src/stream/detect.polyfill.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AAerC,MAAM,CAAC,IAAI,eAGV,CAAC;AAEF,CAAC,EAAE,eAAe,EAAE,GAAG,UAAiB,CAAC,CAAC"}
|
|
@@ -2,7 +2,27 @@ import type Struct from "@yume-chan/struct";
|
|
|
2
2
|
import type { StructValueType, ValueOrPromise } from "@yume-chan/struct";
|
|
3
3
|
import { AbortSignal, ReadableStream, TransformStream, WritableStream, type QueuingStrategy, type ReadableStreamDefaultController, type ReadableWritablePair } from "./detect.js";
|
|
4
4
|
export interface DuplexStreamFactoryOptions {
|
|
5
|
+
/**
|
|
6
|
+
* Callback when any `ReadableStream` is cancelled (the user doesn't need any more data),
|
|
7
|
+
* or `WritableStream` is ended (the user won't produce any more data),
|
|
8
|
+
* or `DuplexStreamFactory#close` is called.
|
|
9
|
+
*
|
|
10
|
+
* Usually you want to let the other peer know that the duplex stream should be clsoed.
|
|
11
|
+
*
|
|
12
|
+
* `dispose` will automatically be called after `close` completes,
|
|
13
|
+
* but if you want to wait another peer for a close confirmation and call
|
|
14
|
+
* `DuplexStreamFactory#dispose` yourself, you can return `false`
|
|
15
|
+
* (or a `Promise` that resolves to `false`) to disable the automatic call.
|
|
16
|
+
*/
|
|
5
17
|
close?: (() => ValueOrPromise<boolean | void>) | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* Callback when any `ReadableStream` is closed (the other peer doesn't produce any more data),
|
|
20
|
+
* or `WritableStream` is aborted (the other peer can't receive any more data),
|
|
21
|
+
* or `DuplexStreamFactory#abort` is called.
|
|
22
|
+
*
|
|
23
|
+
* Usually indicates the other peer has closed the duplex stream. You can clean up
|
|
24
|
+
* any resources you have allocated now.
|
|
25
|
+
*/
|
|
6
26
|
dispose?: (() => void | Promise<void>) | undefined;
|
|
7
27
|
}
|
|
8
28
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/stream/transform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGzE,OAAO,EAAmB,WAAW,EAAE,cAAc,EAA+B,eAAe,EAAE,cAAc,EAA+B,KAAK,eAAe,EAAE,KAAK,+BAA+B,EAAE,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAE7P,MAAM,WAAW,0BAA0B;IACvC,KAAK,CAAC,EAAE,CAAC,MAAM,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;IAE3D,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;CACtD;AAED;;;;;GAKG;AACH,qBAAa,mBAAmB,CAAC,CAAC,EAAE,CAAC;IACjC,OAAO,CAAC,mBAAmB,CAA4C;IACvE,OAAO,CAAC,OAAO,CAAwC;IAEvD,OAAO,CAAC,eAAe,CAAS;IAChC,IAAW,cAAc,YAAmC;IAE5D,OAAO,CAAC,OAAO,CAA+B;IAC9C,IAAW,MAAM,kBAAmC;IAEpD,OAAO,CAAC,OAAO,CAA6B;gBAEzB,OAAO,CAAC,EAAE,0BAA0B;IAIhD,YAAY,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC;IAiBhE,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;IAsBtD,KAAK;
|
|
1
|
+
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/stream/transform.ts"],"names":[],"mappings":"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"}
|