@yume-chan/scrcpy
Version:
TypeScript implementation of Scrcpy client.
28 lines • 875 B
JavaScript
import { PushReadableStream } from "@yume-chan/stream-extra";
import { string, struct, u32 } from "@yume-chan/struct";
export const ClipboardDeviceMessage = struct({ content: string(u32) }, { littleEndian: false });
export class ClipboardStream extends PushReadableStream {
#controller;
constructor() {
let controller;
super((controller_) => {
controller = controller_;
});
this.#controller = controller;
}
async parse(id, stream) {
if (id === 0) {
const message = await ClipboardDeviceMessage.deserialize(stream);
await this.#controller.enqueue(message.content);
return true;
}
return false;
}
close() {
this.#controller.close();
}
error(e) {
this.#controller.error(e);
}
}
//# sourceMappingURL=clipboard-stream.js.map