Files
Netcatty/components/terminal/terminalSerialize.ts
T
bincxz 53328ca50d feat(terminal): optimize hibernate wake for large buffers
Add chunked replay, deferred WebGL during restore, alt-screen hibernate
policies, soft-hide LRU, two-phase viewport/scrollback snapshots, and a
main-process headless xterm mirror for faster wake serialization.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-24 23:52:03 +08:00

22 lines
640 B
TypeScript

import type { Terminal as XTerm } from "@xterm/xterm";
import type { SerializeAddon } from "@xterm/addon-serialize";
import { resolveTerminalSerializeFn } from "./terminalSerializeWasm";
export type TerminalSerializeRequest = {
term: XTerm;
serializeAddon: SerializeAddon;
options?: Record<string, unknown>;
preferWasm?: boolean;
};
export async function serializeTerminalBuffer(
request: TerminalSerializeRequest,
): Promise<string> {
const serialize = await resolveTerminalSerializeFn(
(options) => request.serializeAddon.serialize(options),
request.preferWasm === true,
);
return serialize(request.options);
}