@rezi-ui/node 0.1.0-alpha.4 → 0.1.0-alpha.41
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/README.md +26 -6
- package/dist/backend/emojiWidthPolicy.d.ts +15 -0
- package/dist/backend/emojiWidthPolicy.d.ts.map +1 -0
- package/dist/backend/emojiWidthPolicy.js +229 -0
- package/dist/backend/emojiWidthPolicy.js.map +1 -0
- package/dist/backend/nodeBackend.d.ts +25 -2
- package/dist/backend/nodeBackend.d.ts.map +1 -1
- package/dist/backend/nodeBackend.js +175 -16
- package/dist/backend/nodeBackend.js.map +1 -1
- package/dist/backend/nodeBackendInline.d.ts +1 -0
- package/dist/backend/nodeBackendInline.d.ts.map +1 -1
- package/dist/backend/nodeBackendInline.js +195 -27
- package/dist/backend/nodeBackendInline.js.map +1 -1
- package/dist/backend/terminalProfile.d.ts +5 -0
- package/dist/backend/terminalProfile.d.ts.map +1 -0
- package/dist/backend/terminalProfile.js +117 -0
- package/dist/backend/terminalProfile.js.map +1 -0
- package/dist/dev/hotStateReload.d.ts +65 -0
- package/dist/dev/hotStateReload.d.ts.map +1 -0
- package/dist/dev/hotStateReload.js +438 -0
- package/dist/dev/hotStateReload.js.map +1 -0
- package/dist/dev/nodeAppHotReload.d.ts +11 -0
- package/dist/dev/nodeAppHotReload.d.ts.map +1 -0
- package/dist/dev/nodeAppHotReload.js +78 -0
- package/dist/dev/nodeAppHotReload.js.map +1 -0
- package/dist/image.d.ts +4 -0
- package/dist/image.d.ts.map +1 -0
- package/dist/image.js +43 -0
- package/dist/image.js.map +1 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +188 -0
- package/dist/index.js.map +1 -1
- package/dist/repro/index.d.ts +3 -0
- package/dist/repro/index.d.ts.map +1 -0
- package/dist/repro/index.js +2 -0
- package/dist/repro/index.js.map +1 -0
- package/dist/repro/recorder.d.ts +30 -0
- package/dist/repro/recorder.d.ts.map +1 -0
- package/dist/repro/recorder.js +321 -0
- package/dist/repro/recorder.js.map +1 -0
- package/dist/streams/tail.d.ts +6 -0
- package/dist/streams/tail.d.ts.map +1 -0
- package/dist/streams/tail.js +113 -0
- package/dist/streams/tail.js.map +1 -0
- package/dist/worker/engineWorker.js +35 -13
- package/dist/worker/engineWorker.js.map +1 -1
- package/dist/worker/protocol.d.ts +3 -0
- package/dist/worker/protocol.d.ts.map +1 -1
- package/dist/worker/testShims/invalidPollBytesNative.d.ts +22 -0
- package/dist/worker/testShims/invalidPollBytesNative.d.ts.map +1 -0
- package/dist/worker/testShims/invalidPollBytesNative.js +65 -0
- package/dist/worker/testShims/invalidPollBytesNative.js.map +1 -0
- package/dist/worker/testShims/limitsExpectNative.d.ts +22 -0
- package/dist/worker/testShims/limitsExpectNative.d.ts.map +1 -0
- package/dist/worker/testShims/limitsExpectNative.js +85 -0
- package/dist/worker/testShims/limitsExpectNative.js.map +1 -0
- package/dist/worker/testShims/limitsNative.d.ts +22 -0
- package/dist/worker/testShims/limitsNative.d.ts.map +1 -0
- package/dist/worker/testShims/limitsNative.js +90 -0
- package/dist/worker/testShims/limitsNative.js.map +1 -0
- package/dist/worker/tickTiming.d.ts +7 -0
- package/dist/worker/tickTiming.d.ts.map +1 -0
- package/dist/worker/tickTiming.js +26 -0
- package/dist/worker/tickTiming.js.map +1 -0
- package/package.json +12 -8
- package/dist/__e2e__/fixtures/terminal-app.d.ts +0 -2
- package/dist/__e2e__/fixtures/terminal-app.d.ts.map +0 -1
- package/dist/__e2e__/fixtures/terminal-app.js +0 -42
- package/dist/__e2e__/fixtures/terminal-app.js.map +0 -1
- package/dist/__e2e__/terminal-render.e2e.test.d.ts +0 -2
- package/dist/__e2e__/terminal-render.e2e.test.d.ts.map +0 -1
- package/dist/__e2e__/terminal-render.e2e.test.js +0 -125
- package/dist/__e2e__/terminal-render.e2e.test.js.map +0 -1
- package/dist/__tests__/worker_integration.test.d.ts +0 -2
- package/dist/__tests__/worker_integration.test.d.ts.map +0 -1
- package/dist/__tests__/worker_integration.test.js +0 -569
- package/dist/__tests__/worker_integration.test.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeBackend.js","sourceRoot":"","sources":["../../src/backend/nodeBackend.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nodeBackend.js","sourceRoot":"","sources":["../../src/backend/nodeBackend.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,5 +6,6 @@
|
|
|
6
6
|
* selected explicitly via `executionMode: "inline"`.
|
|
7
7
|
*/
|
|
8
8
|
import type { NodeBackend, NodeBackendInternalOpts } from "./nodeBackend.js";
|
|
9
|
+
export declare function readDebugBytesWithRetry<TEmpty>(read: (out: Uint8Array) => number, initialCapacity: number, emptyValue: TEmpty, operation: string): Uint8Array | TEmpty;
|
|
9
10
|
export declare function createNodeBackendInlineInternal(opts?: NodeBackendInternalOpts): NodeBackend;
|
|
10
11
|
//# sourceMappingURL=nodeBackendInline.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeBackendInline.d.ts","sourceRoot":"","sources":["../../src/backend/nodeBackendInline.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"nodeBackendInline.d.ts","sourceRoot":"","sources":["../../src/backend/nodeBackendInline.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAiCH,OAAO,KAAK,EACV,WAAW,EACX,uBAAuB,EAExB,MAAM,kBAAkB,CAAC;AA2K1B,wBAAgB,uBAAuB,CAAC,MAAM,EAC5C,IAAI,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,MAAM,EACjC,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,UAAU,GAAG,MAAM,CA4BrB;AAiID,wBAAgB,+BAA+B,CAAC,IAAI,GAAE,uBAA4B,GAAG,WAAW,CA+rB/F"}
|
|
@@ -6,13 +6,51 @@
|
|
|
6
6
|
* selected explicitly via `executionMode: "inline"`.
|
|
7
7
|
*/
|
|
8
8
|
import { performance } from "node:perf_hooks";
|
|
9
|
-
import { DEFAULT_TERMINAL_CAPS } from "@rezi-ui/core";
|
|
10
|
-
import {
|
|
9
|
+
import { BACKEND_DRAWLIST_VERSION_MARKER, BACKEND_FPS_CAP_MARKER, BACKEND_MAX_EVENT_BYTES_MARKER, BACKEND_RAW_WRITE_MARKER, DEFAULT_TERMINAL_CAPS, } from "@rezi-ui/core";
|
|
10
|
+
import { ZR_DRAWLIST_VERSION_V5, ZR_ENGINE_ABI_MAJOR, ZR_ENGINE_ABI_MINOR, ZR_ENGINE_ABI_PATCH, ZR_EVENT_BATCH_VERSION_V1, ZrUiError, setTextMeasureEmojiPolicy, severityToNum, } from "@rezi-ui/core";
|
|
11
|
+
import { applyEmojiWidthPolicy, resolveBackendEmojiWidthPolicy } from "./emojiWidthPolicy.js";
|
|
12
|
+
import { terminalProfileFromNodeEnv } from "./terminalProfile.js";
|
|
13
|
+
const DEFAULT_NATIVE_LIMITS = Object.freeze({
|
|
14
|
+
outMaxBytesPerFrame: 2 * 1024 * 1024,
|
|
15
|
+
dlMaxTotalBytes: 2 * 1024 * 1024,
|
|
16
|
+
dlMaxCmds: 100_000,
|
|
17
|
+
dlMaxStrings: 10_000,
|
|
18
|
+
dlMaxBlobs: 10_000,
|
|
19
|
+
});
|
|
20
|
+
function isPlainObject(v) {
|
|
21
|
+
return typeof v === "object" && v !== null && !Array.isArray(v);
|
|
22
|
+
}
|
|
23
|
+
function mergeNativeLimits(nativeConfig) {
|
|
24
|
+
// biome-ignore lint/complexity/useLiteralKeys: bracket access is required by noPropertyAccessFromIndexSignature.
|
|
25
|
+
const limitsValue = nativeConfig["limits"];
|
|
26
|
+
const existingLimits = isPlainObject(limitsValue)
|
|
27
|
+
? limitsValue
|
|
28
|
+
: null;
|
|
29
|
+
const limits = { ...(existingLimits ?? {}) };
|
|
30
|
+
const has = (camel) => {
|
|
31
|
+
const snake = camel.replace(/[A-Z]/g, (m) => `_${m.toLowerCase()}`);
|
|
32
|
+
return (Object.prototype.hasOwnProperty.call(limits, camel) ||
|
|
33
|
+
Object.prototype.hasOwnProperty.call(limits, snake));
|
|
34
|
+
};
|
|
35
|
+
for (const [camel, value] of Object.entries(DEFAULT_NATIVE_LIMITS)) {
|
|
36
|
+
if (has(camel))
|
|
37
|
+
continue;
|
|
38
|
+
limits[camel] = value;
|
|
39
|
+
}
|
|
40
|
+
return Object.freeze({ ...nativeConfig, limits: Object.freeze(limits) });
|
|
41
|
+
}
|
|
11
42
|
const DEBUG_QUERY_DEFAULT_RECORDS = 4096;
|
|
12
43
|
const DEBUG_QUERY_MAX_RECORDS = 16384;
|
|
13
44
|
const EVENT_POOL_SIZE = 16;
|
|
14
45
|
const POLL_IDLE_MS = 2;
|
|
15
46
|
const POLL_BUSY_MS = 0;
|
|
47
|
+
const ZR_ERR_LIMIT = -3;
|
|
48
|
+
const DEFAULT_FPS_CAP = 60;
|
|
49
|
+
const MAX_SAFE_FPS_CAP = 1000;
|
|
50
|
+
const DEFAULT_MAX_EVENT_BYTES = 1 << 20;
|
|
51
|
+
const MAX_SAFE_EVENT_BYTES = 4 << 20;
|
|
52
|
+
const MAX_DEBUG_BYTES_RETRY_CAP = 64 << 20;
|
|
53
|
+
const WIDTH_POLICY_KEY = "widthPolicy";
|
|
16
54
|
const RESOLVED_VOID = Promise.resolve();
|
|
17
55
|
const SYNC_FRAME_ACK_MARKER = "__reziSyncFrameAck";
|
|
18
56
|
const RESOLVED_SYNC_FRAME_ACK = Promise.resolve();
|
|
@@ -55,9 +93,72 @@ function parsePositiveInt(n) {
|
|
|
55
93
|
return null;
|
|
56
94
|
return n;
|
|
57
95
|
}
|
|
58
|
-
function
|
|
96
|
+
export function readDebugBytesWithRetry(read, initialCapacity, emptyValue, operation) {
|
|
97
|
+
const baseCapacity = Number.isFinite(initialCapacity) ? Math.floor(initialCapacity) : 1;
|
|
98
|
+
let capacity = Math.min(MAX_DEBUG_BYTES_RETRY_CAP, Math.max(1, baseCapacity));
|
|
99
|
+
while (true) {
|
|
100
|
+
const out = new Uint8Array(capacity);
|
|
101
|
+
const written = read(out);
|
|
102
|
+
if (!Number.isInteger(written) || written > out.byteLength) {
|
|
103
|
+
throw new ZrUiError("ZRUI_BACKEND_ERROR", `${operation} returned invalid byte count: written=${String(written)} capacity=${String(out.byteLength)}`);
|
|
104
|
+
}
|
|
105
|
+
if (written <= 0) {
|
|
106
|
+
return emptyValue;
|
|
107
|
+
}
|
|
108
|
+
if (written < out.byteLength) {
|
|
109
|
+
return out.slice(0, written);
|
|
110
|
+
}
|
|
111
|
+
if (capacity >= MAX_DEBUG_BYTES_RETRY_CAP) {
|
|
112
|
+
// Native debug APIs return written byte count but not total required size.
|
|
113
|
+
// If the output exactly fills our max-cap buffer, it's likely truncated.
|
|
114
|
+
process.emitWarning(`[rezi][debug] ${operation} filled ${String(capacity)} bytes at max cap; payload may be truncated.`);
|
|
115
|
+
return out.slice(0, written);
|
|
116
|
+
}
|
|
117
|
+
capacity = Math.min(MAX_DEBUG_BYTES_RETRY_CAP, capacity * 2);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
function parseDrawlistVersion(v) {
|
|
121
|
+
if (v === undefined)
|
|
122
|
+
return null;
|
|
123
|
+
if (v === 2 || v === 3 || v === 4 || v === 5)
|
|
124
|
+
return v;
|
|
125
|
+
throw new ZrUiError("ZRUI_INVALID_PROPS", `createNodeBackend config mismatch: drawlistVersion must be one of 2, 3, 4, 5 (got ${String(v)}).`);
|
|
126
|
+
}
|
|
127
|
+
function resolveRequestedDrawlistVersion(config) {
|
|
128
|
+
const explicitDrawlistVersion = parseDrawlistVersion(config.drawlistVersion);
|
|
129
|
+
if (explicitDrawlistVersion !== null)
|
|
130
|
+
return explicitDrawlistVersion;
|
|
131
|
+
return ZR_DRAWLIST_VERSION_V5;
|
|
132
|
+
}
|
|
133
|
+
function parseBoundedPositiveIntOrThrow(name, value, fallback, max) {
|
|
134
|
+
if (value === undefined)
|
|
135
|
+
return fallback;
|
|
136
|
+
const parsed = parsePositiveInt(value);
|
|
137
|
+
if (parsed === null) {
|
|
138
|
+
throw new ZrUiError("ZRUI_INVALID_PROPS", `${name} must be a positive integer`);
|
|
139
|
+
}
|
|
140
|
+
if (parsed > max) {
|
|
141
|
+
throw new ZrUiError("ZRUI_INVALID_PROPS", `${name} must be <= ${String(max)}`);
|
|
142
|
+
}
|
|
143
|
+
return parsed;
|
|
144
|
+
}
|
|
145
|
+
function readNativeTargetFpsValues(cfg) {
|
|
59
146
|
const targetFpsCfg = cfg;
|
|
60
|
-
return
|
|
147
|
+
return {
|
|
148
|
+
camel: parsePositiveInt(targetFpsCfg.targetFps),
|
|
149
|
+
snake: parsePositiveInt(targetFpsCfg.target_fps),
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
function resolveTargetFps(fpsCap, nativeConfig) {
|
|
153
|
+
const values = readNativeTargetFpsValues(nativeConfig);
|
|
154
|
+
if (values.camel !== null && values.snake !== null && values.camel !== values.snake) {
|
|
155
|
+
throw new ZrUiError("ZRUI_INVALID_PROPS", `createNodeBackend config mismatch: nativeConfig.targetFps=${String(values.camel)} must match nativeConfig.target_fps=${String(values.snake)}.`);
|
|
156
|
+
}
|
|
157
|
+
const nativeTargetFps = values.camel ?? values.snake;
|
|
158
|
+
if (nativeTargetFps !== null && nativeTargetFps !== fpsCap) {
|
|
159
|
+
throw new ZrUiError("ZRUI_INVALID_PROPS", `createNodeBackend config mismatch: fpsCap=${String(fpsCap)} must match nativeConfig.targetFps/target_fps=${String(nativeTargetFps)}. Fix: set nativeConfig.targetFps (or target_fps) to ${String(fpsCap)}, or remove the override and use fpsCap only.`);
|
|
160
|
+
}
|
|
161
|
+
return fpsCap;
|
|
61
162
|
}
|
|
62
163
|
function safeErr(err) {
|
|
63
164
|
return err instanceof Error ? err : new Error(String(err));
|
|
@@ -115,24 +216,26 @@ async function loadNative(shimModule) {
|
|
|
115
216
|
}
|
|
116
217
|
export function createNodeBackendInlineInternal(opts = {}) {
|
|
117
218
|
const cfg = opts.config ?? {};
|
|
118
|
-
const
|
|
119
|
-
const
|
|
120
|
-
const
|
|
219
|
+
const requestedDrawlistVersion = resolveRequestedDrawlistVersion(cfg);
|
|
220
|
+
const fpsCap = parseBoundedPositiveIntOrThrow("fpsCap", cfg.fpsCap, DEFAULT_FPS_CAP, MAX_SAFE_FPS_CAP);
|
|
221
|
+
const maxEventBytes = parseBoundedPositiveIntOrThrow("maxEventBytes", cfg.maxEventBytes, DEFAULT_MAX_EVENT_BYTES, MAX_SAFE_EVENT_BYTES);
|
|
121
222
|
const nativeConfig = typeof cfg.nativeConfig === "object" &&
|
|
122
223
|
cfg.nativeConfig !== null &&
|
|
123
224
|
!Array.isArray(cfg.nativeConfig)
|
|
124
|
-
? cfg.nativeConfig
|
|
125
|
-
: Object.freeze({});
|
|
126
|
-
const nativeTargetFps =
|
|
127
|
-
const
|
|
225
|
+
? mergeNativeLimits(cfg.nativeConfig)
|
|
226
|
+
: mergeNativeLimits(Object.freeze({}));
|
|
227
|
+
const nativeTargetFps = resolveTargetFps(fpsCap, nativeConfig);
|
|
228
|
+
const initConfigBase = {
|
|
128
229
|
...nativeConfig,
|
|
230
|
+
// fpsCap is the single frame-scheduling knob; native target fps must align.
|
|
129
231
|
targetFps: nativeTargetFps,
|
|
130
232
|
requestedEngineAbiMajor: ZR_ENGINE_ABI_MAJOR,
|
|
131
233
|
requestedEngineAbiMinor: ZR_ENGINE_ABI_MINOR,
|
|
132
234
|
requestedEngineAbiPatch: ZR_ENGINE_ABI_PATCH,
|
|
133
|
-
requestedDrawlistVersion:
|
|
235
|
+
requestedDrawlistVersion: requestedDrawlistVersion,
|
|
134
236
|
requestedEventBatchVersion: ZR_EVENT_BATCH_VERSION_V1,
|
|
135
237
|
};
|
|
238
|
+
let initConfigResolved = null;
|
|
136
239
|
let native = null;
|
|
137
240
|
let nativePromise = null;
|
|
138
241
|
let engineId = null;
|
|
@@ -210,7 +313,6 @@ export function createNodeBackendInlineInternal(opts = {}) {
|
|
|
210
313
|
const err = new ZrUiError("ZRUI_BACKEND_ERROR", `${where} (${String(code)}): ${detail}`);
|
|
211
314
|
fatal = err;
|
|
212
315
|
rejectWaiters(err);
|
|
213
|
-
throw err;
|
|
214
316
|
}
|
|
215
317
|
function clearPollLoop() {
|
|
216
318
|
if (pollTimer !== null) {
|
|
@@ -302,14 +404,29 @@ export function createNodeBackendInlineInternal(opts = {}) {
|
|
|
302
404
|
}
|
|
303
405
|
catch (err) {
|
|
304
406
|
failWith("enginePollEvents", -1, `engine_poll_events threw: ${safeDetail(err)}`);
|
|
407
|
+
return;
|
|
305
408
|
}
|
|
306
409
|
if (PERF_ENABLED) {
|
|
307
410
|
perfRecord("event_poll", performance.now() - startMs);
|
|
308
411
|
}
|
|
412
|
+
if (written === ZR_ERR_LIMIT) {
|
|
413
|
+
if (outBuf !== discardBuffer)
|
|
414
|
+
eventPool.push(outBuf);
|
|
415
|
+
droppedSinceLast++;
|
|
416
|
+
schedulePoll(POLL_BUSY_MS);
|
|
417
|
+
return;
|
|
418
|
+
}
|
|
419
|
+
if (!Number.isInteger(written) || written > outBuf.byteLength) {
|
|
420
|
+
if (outBuf !== discardBuffer)
|
|
421
|
+
eventPool.push(outBuf);
|
|
422
|
+
failWith("enginePollEvents", -1, `engine_poll_events returned invalid byte count: written=${String(written)} capacity=${String(outBuf.byteLength)}`);
|
|
423
|
+
return;
|
|
424
|
+
}
|
|
309
425
|
if (written < 0) {
|
|
310
426
|
if (outBuf !== discardBuffer)
|
|
311
427
|
eventPool.push(outBuf);
|
|
312
428
|
failWith("enginePollEvents", written, "engine_poll_events failed");
|
|
429
|
+
return;
|
|
313
430
|
}
|
|
314
431
|
if (written === 0) {
|
|
315
432
|
if (outBuf !== discardBuffer)
|
|
@@ -387,10 +504,24 @@ export function createNodeBackendInlineInternal(opts = {}) {
|
|
|
387
504
|
startSettled = false;
|
|
388
505
|
stopRequested = false;
|
|
389
506
|
try {
|
|
507
|
+
if (initConfigResolved === null) {
|
|
508
|
+
const resolvedEmojiWidthPolicy = await resolveBackendEmojiWidthPolicy(cfg.emojiWidthPolicy, nativeConfig);
|
|
509
|
+
const nativeWidthPolicy = applyEmojiWidthPolicy(resolvedEmojiWidthPolicy);
|
|
510
|
+
initConfigResolved = {
|
|
511
|
+
...initConfigBase,
|
|
512
|
+
widthPolicy: nativeWidthPolicy,
|
|
513
|
+
};
|
|
514
|
+
}
|
|
515
|
+
else {
|
|
516
|
+
const widthPolicy = initConfigResolved[WIDTH_POLICY_KEY];
|
|
517
|
+
if (typeof widthPolicy === "number") {
|
|
518
|
+
setTextMeasureEmojiPolicy(widthPolicy === 0 ? "narrow" : "wide");
|
|
519
|
+
}
|
|
520
|
+
}
|
|
390
521
|
const api = await ensureNativeLoaded();
|
|
391
522
|
let id = 0;
|
|
392
523
|
try {
|
|
393
|
-
id = api.engineCreate(
|
|
524
|
+
id = api.engineCreate(initConfigResolved);
|
|
394
525
|
}
|
|
395
526
|
catch (err) {
|
|
396
527
|
throw new Error(`engine_create threw: ${safeDetail(err)}`);
|
|
@@ -568,11 +699,18 @@ export function createNodeBackendInlineInternal(opts = {}) {
|
|
|
568
699
|
supportsScrollRegion: caps.supportsScrollRegion,
|
|
569
700
|
supportsCursorShape: caps.supportsCursorShape,
|
|
570
701
|
supportsOutputWaitWritable: caps.supportsOutputWaitWritable,
|
|
702
|
+
supportsUnderlineStyles: caps.supportsUnderlineStyles ?? false,
|
|
703
|
+
supportsColoredUnderlines: caps.supportsColoredUnderlines ?? false,
|
|
704
|
+
supportsHyperlinks: caps.supportsHyperlinks ?? false,
|
|
571
705
|
sgrAttrsSupported: caps.sgrAttrsSupported,
|
|
572
706
|
});
|
|
573
707
|
cachedCaps = nextCaps;
|
|
574
708
|
return nextCaps;
|
|
575
709
|
},
|
|
710
|
+
async getTerminalProfile() {
|
|
711
|
+
const caps = await backend.getCaps();
|
|
712
|
+
return terminalProfileFromNodeEnv(caps);
|
|
713
|
+
},
|
|
576
714
|
};
|
|
577
715
|
const debug = {
|
|
578
716
|
debugEnable: async (config) => {
|
|
@@ -643,15 +781,12 @@ export function createNodeBackendInlineInternal(opts = {}) {
|
|
|
643
781
|
},
|
|
644
782
|
debugGetPayload: async (recordId) => {
|
|
645
783
|
await backend.start();
|
|
646
|
-
|
|
784
|
+
const activeEngineId = engineId;
|
|
785
|
+
if (native === null || activeEngineId === null) {
|
|
647
786
|
throw new Error("NodeBackend(inline): engine not started");
|
|
648
787
|
}
|
|
649
788
|
const dbg = ensureDebugApiLoaded(native);
|
|
650
|
-
|
|
651
|
-
const rc = dbg.engineDebugGetPayload(engineId, recordId, out);
|
|
652
|
-
if (rc <= 0)
|
|
653
|
-
return null;
|
|
654
|
-
return out.slice(0, rc);
|
|
789
|
+
return readDebugBytesWithRetry((out) => dbg.engineDebugGetPayload(activeEngineId, recordId, out), maxEventBytes, null, "engineDebugGetPayload");
|
|
655
790
|
},
|
|
656
791
|
debugGetStats: async () => {
|
|
657
792
|
await backend.start();
|
|
@@ -672,15 +807,12 @@ export function createNodeBackendInlineInternal(opts = {}) {
|
|
|
672
807
|
},
|
|
673
808
|
debugExport: async () => {
|
|
674
809
|
await backend.start();
|
|
675
|
-
|
|
810
|
+
const activeEngineId = engineId;
|
|
811
|
+
if (native === null || activeEngineId === null) {
|
|
676
812
|
throw new Error("NodeBackend(inline): engine not started");
|
|
677
813
|
}
|
|
678
814
|
const dbg = ensureDebugApiLoaded(native);
|
|
679
|
-
|
|
680
|
-
const rc = dbg.engineDebugExport(engineId, out);
|
|
681
|
-
if (rc <= 0)
|
|
682
|
-
return new Uint8Array(0);
|
|
683
|
-
return out.slice(0, rc);
|
|
815
|
+
return readDebugBytesWithRetry((out) => dbg.engineDebugExport(activeEngineId, out), maxEventBytes, new Uint8Array(0), "engineDebugExport");
|
|
684
816
|
},
|
|
685
817
|
debugReset: async () => {
|
|
686
818
|
await backend.start();
|
|
@@ -697,6 +829,42 @@ export function createNodeBackendInlineInternal(opts = {}) {
|
|
|
697
829
|
const perf = {
|
|
698
830
|
perfSnapshot: async () => perfSnapshot(),
|
|
699
831
|
};
|
|
700
|
-
|
|
832
|
+
const out = { ...backend, debug, perf };
|
|
833
|
+
Object.defineProperties(out, {
|
|
834
|
+
[BACKEND_DRAWLIST_VERSION_MARKER]: {
|
|
835
|
+
value: requestedDrawlistVersion,
|
|
836
|
+
writable: false,
|
|
837
|
+
enumerable: false,
|
|
838
|
+
configurable: false,
|
|
839
|
+
},
|
|
840
|
+
[BACKEND_MAX_EVENT_BYTES_MARKER]: {
|
|
841
|
+
value: maxEventBytes,
|
|
842
|
+
writable: false,
|
|
843
|
+
enumerable: false,
|
|
844
|
+
configurable: false,
|
|
845
|
+
},
|
|
846
|
+
[BACKEND_FPS_CAP_MARKER]: {
|
|
847
|
+
value: fpsCap,
|
|
848
|
+
writable: false,
|
|
849
|
+
enumerable: false,
|
|
850
|
+
configurable: false,
|
|
851
|
+
},
|
|
852
|
+
[BACKEND_RAW_WRITE_MARKER]: {
|
|
853
|
+
value: ((text) => {
|
|
854
|
+
if (typeof text !== "string" || text.length === 0)
|
|
855
|
+
return;
|
|
856
|
+
try {
|
|
857
|
+
process.stdout.write(text);
|
|
858
|
+
}
|
|
859
|
+
catch {
|
|
860
|
+
// Preserve backend determinism: clipboard write failures are non-fatal.
|
|
861
|
+
}
|
|
862
|
+
}),
|
|
863
|
+
writable: false,
|
|
864
|
+
enumerable: false,
|
|
865
|
+
configurable: false,
|
|
866
|
+
},
|
|
867
|
+
});
|
|
868
|
+
return Object.freeze(out);
|
|
701
869
|
}
|
|
702
870
|
//# sourceMappingURL=nodeBackendInline.js.map
|