Files
DeviceManager/src/lib/serial/line-break-transformer.ts

19 lines
492 B
TypeScript

export class LineBreakTransformer {
private chunks = "";
// noinspection JSUnusedGlobalSymbols
transform(chunk: string, controller: TransformStreamDefaultController) {
this.chunks += chunk;
const lines = this.chunks.split("\r\n");
this.chunks = lines.pop()!;
for (const line of lines) {
controller.enqueue(line);
}
}
// noinspection JSUnusedGlobalSymbols
flush(controller: TransformStreamDefaultController) {
controller.enqueue(this.chunks);
}
}