@kumwe/studio-preview 0.1.0-alpha.4 → 0.1.0-alpha.6
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 +41 -12
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/preview-client.d.ts +22 -1
- package/dist/preview-client.d.ts.map +1 -1
- package/dist/preview-client.js +301 -56
- package/dist/preview-client.js.map +1 -1
- package/dist/preview-host.d.ts +17 -3
- package/dist/preview-host.d.ts.map +1 -1
- package/dist/preview-host.js +226 -70
- package/dist/preview-host.js.map +1 -1
- package/dist/preview-identity.d.ts +29 -0
- package/dist/preview-identity.d.ts.map +1 -0
- package/dist/preview-identity.js +61 -0
- package/dist/preview-identity.js.map +1 -0
- package/package.json +3 -2
package/dist/preview-client.js
CHANGED
|
@@ -1,8 +1,29 @@
|
|
|
1
|
-
import { isPreviewMessage, STUDIO_CONTRACT_VERSION, } from '@kumwe/studio-protocol';
|
|
1
|
+
import { isPreviewMarker, isPreviewMessage, STUDIO_CONTRACT_VERSION, } from '@kumwe/studio-protocol';
|
|
2
|
+
/** Stable client-side and wire failure surfaced by the preview channel. */
|
|
3
|
+
export class PreviewChannelError extends Error {
|
|
4
|
+
code;
|
|
5
|
+
retryable;
|
|
6
|
+
constructor(code, message, retryable = false) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.name = 'PreviewChannelError';
|
|
9
|
+
this.code = code;
|
|
10
|
+
this.retryable = retryable;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
function snapshotOutboundPayload(payload) {
|
|
14
|
+
try {
|
|
15
|
+
return structuredClone(payload);
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
throw new PreviewChannelError('studio.preview/invalid-outbound-message', 'Refused an invalid outbound preview message.');
|
|
19
|
+
}
|
|
20
|
+
}
|
|
2
21
|
export class PreviewClient {
|
|
22
|
+
#activationListeners = new Set();
|
|
3
23
|
#channelId;
|
|
4
24
|
#listener;
|
|
5
25
|
#listeners = new Set();
|
|
26
|
+
#markerInventory = new Set();
|
|
6
27
|
#pending = new Map();
|
|
7
28
|
#pendingMeasures = new Map();
|
|
8
29
|
#pendingReady = new Set();
|
|
@@ -11,9 +32,10 @@ export class PreviewClient {
|
|
|
11
32
|
#target;
|
|
12
33
|
#targetOrigin;
|
|
13
34
|
#timeoutMilliseconds;
|
|
35
|
+
#usedRequestIds = new Set();
|
|
14
36
|
#disposed = false;
|
|
15
37
|
#lastInboundSequence = -1;
|
|
16
|
-
#
|
|
38
|
+
#latestRenderRequestId;
|
|
17
39
|
#latestRenderedDigest;
|
|
18
40
|
#readyPayload;
|
|
19
41
|
#sequence = 0;
|
|
@@ -53,7 +75,11 @@ export class PreviewClient {
|
|
|
53
75
|
pending.reject(new Error('Preview client was disposed.'));
|
|
54
76
|
}
|
|
55
77
|
this.#pendingReady.clear();
|
|
78
|
+
this.#activationListeners.clear();
|
|
56
79
|
this.#listeners.clear();
|
|
80
|
+
this.#latestRenderRequestId = undefined;
|
|
81
|
+
this.#latestRenderedDigest = undefined;
|
|
82
|
+
this.#markerInventory.clear();
|
|
57
83
|
}
|
|
58
84
|
onMessage(listener) {
|
|
59
85
|
this.#listeners.add(listener);
|
|
@@ -109,54 +135,95 @@ export class PreviewClient {
|
|
|
109
135
|
if (options.signal?.aborted === true) {
|
|
110
136
|
return Promise.reject(new Error('Preview render was aborted.', { cause: options.signal.reason }));
|
|
111
137
|
}
|
|
112
|
-
|
|
113
|
-
|
|
138
|
+
let request;
|
|
139
|
+
try {
|
|
140
|
+
request = snapshotOutboundPayload(payload);
|
|
141
|
+
}
|
|
142
|
+
catch (error) {
|
|
143
|
+
return Promise.reject(error instanceof Error
|
|
144
|
+
? error
|
|
145
|
+
: new PreviewChannelError('studio.preview/invalid-outbound-message', 'Refused an invalid outbound preview message.'));
|
|
146
|
+
}
|
|
147
|
+
const message = {
|
|
148
|
+
channelId: this.#channelId,
|
|
149
|
+
contractVersion: STUDIO_CONTRACT_VERSION,
|
|
150
|
+
kind: 'preview-message',
|
|
151
|
+
payload: request,
|
|
152
|
+
sequence: this.#sequence,
|
|
153
|
+
sessionGeneration: this.#sessionGeneration,
|
|
154
|
+
type: 'studio.preview/render',
|
|
155
|
+
};
|
|
156
|
+
try {
|
|
157
|
+
this.#assertOutbound(message);
|
|
158
|
+
}
|
|
159
|
+
catch (error) {
|
|
160
|
+
return Promise.reject(error instanceof Error
|
|
161
|
+
? error
|
|
162
|
+
: new PreviewChannelError('studio.preview/invalid-outbound-message', 'Refused an invalid outbound preview message.'));
|
|
163
|
+
}
|
|
164
|
+
if (this.#usedRequestIds.has(request.requestId)) {
|
|
165
|
+
return Promise.reject(new PreviewChannelError('studio.preview/request-id-reused', `Preview request ${request.requestId} was already used in this session.`));
|
|
114
166
|
}
|
|
115
|
-
for (const [
|
|
167
|
+
for (const [requestId, pending] of this.#pending) {
|
|
116
168
|
clearTimeout(pending.timeout);
|
|
117
169
|
pending.cleanup();
|
|
118
|
-
pending.reject(new Error(`Preview render ${
|
|
170
|
+
pending.reject(new Error(`Preview render ${requestId} was superseded by ${request.requestId}.`));
|
|
119
171
|
}
|
|
120
172
|
this.#pending.clear();
|
|
121
|
-
this.#
|
|
173
|
+
this.#rejectPendingMeasures(new Error(`Preview measurements were superseded by render ${request.requestId}.`));
|
|
174
|
+
this.#usedRequestIds.add(request.requestId);
|
|
175
|
+
this.#latestRenderRequestId = request.requestId;
|
|
176
|
+
this.#latestRenderedDigest = undefined;
|
|
177
|
+
this.#markerInventory.clear();
|
|
122
178
|
return new Promise((resolve, reject) => {
|
|
123
179
|
const abort = () => {
|
|
124
|
-
const pending = this.#pending.get(
|
|
180
|
+
const pending = this.#pending.get(request.requestId);
|
|
125
181
|
if (pending !== undefined) {
|
|
126
182
|
clearTimeout(pending.timeout);
|
|
127
|
-
this.#pending.delete(
|
|
183
|
+
this.#pending.delete(request.requestId);
|
|
128
184
|
pending.cleanup();
|
|
129
|
-
if (this.#
|
|
130
|
-
this.#
|
|
185
|
+
if (this.#latestRenderRequestId === request.requestId) {
|
|
186
|
+
this.#latestRenderRequestId = undefined;
|
|
131
187
|
}
|
|
132
188
|
pending.reject(new Error('Preview render was aborted.'));
|
|
189
|
+
this.#revokeRemoteRender(request.draftDigest, 'studio.preview/client-aborted');
|
|
133
190
|
}
|
|
134
191
|
};
|
|
135
192
|
const cleanup = () => {
|
|
136
193
|
options.signal?.removeEventListener('abort', abort);
|
|
137
194
|
};
|
|
138
195
|
const timeout = setTimeout(() => {
|
|
139
|
-
const pending = this.#pending.get(
|
|
196
|
+
const pending = this.#pending.get(request.requestId);
|
|
140
197
|
if (pending !== undefined) {
|
|
141
|
-
this.#pending.delete(
|
|
198
|
+
this.#pending.delete(request.requestId);
|
|
142
199
|
pending.cleanup();
|
|
143
|
-
if (this.#
|
|
144
|
-
this.#
|
|
200
|
+
if (this.#latestRenderRequestId === request.requestId) {
|
|
201
|
+
this.#latestRenderRequestId = undefined;
|
|
145
202
|
}
|
|
146
|
-
pending.reject(new Error(`Preview render ${
|
|
203
|
+
pending.reject(new Error(`Preview render ${request.requestId} timed out.`));
|
|
204
|
+
this.#revokeRemoteRender(request.draftDigest, 'studio.preview/client-timeout');
|
|
147
205
|
}
|
|
148
206
|
}, this.#timeoutMilliseconds);
|
|
149
|
-
this.#pending.set(
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
payload,
|
|
156
|
-
sequence: this.#sequence++,
|
|
157
|
-
sessionGeneration: this.#sessionGeneration,
|
|
158
|
-
type: 'studio.preview/render',
|
|
207
|
+
this.#pending.set(request.requestId, {
|
|
208
|
+
cleanup,
|
|
209
|
+
payload: request,
|
|
210
|
+
reject,
|
|
211
|
+
resolve,
|
|
212
|
+
timeout,
|
|
159
213
|
});
|
|
214
|
+
options.signal?.addEventListener('abort', abort, { once: true });
|
|
215
|
+
try {
|
|
216
|
+
this.#post(message);
|
|
217
|
+
}
|
|
218
|
+
catch (error) {
|
|
219
|
+
clearTimeout(timeout);
|
|
220
|
+
cleanup();
|
|
221
|
+
this.#pending.delete(request.requestId);
|
|
222
|
+
if (this.#latestRenderRequestId === request.requestId) {
|
|
223
|
+
this.#latestRenderRequestId = undefined;
|
|
224
|
+
}
|
|
225
|
+
reject(error instanceof Error ? error : new Error('Preview transport failed.'));
|
|
226
|
+
}
|
|
160
227
|
});
|
|
161
228
|
}
|
|
162
229
|
/**
|
|
@@ -174,24 +241,55 @@ export class PreviewClient {
|
|
|
174
241
|
if (options.signal?.aborted === true) {
|
|
175
242
|
return Promise.reject(new Error('Preview measure was aborted.', { cause: options.signal.reason }));
|
|
176
243
|
}
|
|
244
|
+
let request;
|
|
245
|
+
try {
|
|
246
|
+
request = snapshotOutboundPayload(payload);
|
|
247
|
+
}
|
|
248
|
+
catch (error) {
|
|
249
|
+
return Promise.reject(error instanceof Error
|
|
250
|
+
? error
|
|
251
|
+
: new PreviewChannelError('studio.preview/invalid-outbound-message', 'Refused an invalid outbound preview message.'));
|
|
252
|
+
}
|
|
177
253
|
if (this.#latestRenderedDigest === undefined) {
|
|
178
254
|
return Promise.reject(new Error('Preview measure requires a completed render.'));
|
|
179
255
|
}
|
|
180
|
-
|
|
181
|
-
|
|
256
|
+
const message = {
|
|
257
|
+
channelId: this.#channelId,
|
|
258
|
+
contractVersion: STUDIO_CONTRACT_VERSION,
|
|
259
|
+
kind: 'preview-message',
|
|
260
|
+
payload: request,
|
|
261
|
+
sequence: this.#sequence,
|
|
262
|
+
sessionGeneration: this.#sessionGeneration,
|
|
263
|
+
type: 'studio.preview/measure',
|
|
264
|
+
};
|
|
265
|
+
try {
|
|
266
|
+
this.#assertOutbound(message);
|
|
267
|
+
}
|
|
268
|
+
catch (error) {
|
|
269
|
+
return Promise.reject(error instanceof Error
|
|
270
|
+
? error
|
|
271
|
+
: new PreviewChannelError('studio.preview/invalid-outbound-message', 'Refused an invalid outbound preview message.'));
|
|
272
|
+
}
|
|
273
|
+
if (this.#usedRequestIds.has(request.requestId)) {
|
|
274
|
+
return Promise.reject(new PreviewChannelError('studio.preview/request-id-reused', `Preview request ${request.requestId} was already used in this session.`));
|
|
275
|
+
}
|
|
276
|
+
if (request.markers.some((marker) => !this.#markerInventory.has(marker) ||
|
|
277
|
+
!isPreviewMarker(marker, this.#latestRenderedDigest))) {
|
|
278
|
+
return Promise.reject(new PreviewChannelError('studio.preview/measure-stale-marker', 'Preview measurement markers must belong to the current render inventory.', true));
|
|
182
279
|
}
|
|
183
280
|
for (const [requestId, pending] of this.#pendingMeasures) {
|
|
184
281
|
clearTimeout(pending.timeout);
|
|
185
282
|
pending.cleanup();
|
|
186
|
-
pending.reject(new Error(`Preview measure ${requestId} was superseded by ${
|
|
283
|
+
pending.reject(new Error(`Preview measure ${requestId} was superseded by ${request.requestId}.`));
|
|
187
284
|
}
|
|
188
285
|
this.#pendingMeasures.clear();
|
|
286
|
+
this.#usedRequestIds.add(request.requestId);
|
|
189
287
|
return new Promise((resolve, reject) => {
|
|
190
288
|
const abort = () => {
|
|
191
|
-
const pending = this.#pendingMeasures.get(
|
|
289
|
+
const pending = this.#pendingMeasures.get(request.requestId);
|
|
192
290
|
if (pending !== undefined) {
|
|
193
291
|
clearTimeout(pending.timeout);
|
|
194
|
-
this.#pendingMeasures.delete(
|
|
292
|
+
this.#pendingMeasures.delete(request.requestId);
|
|
195
293
|
pending.cleanup();
|
|
196
294
|
pending.reject(new Error('Preview measure was aborted.'));
|
|
197
295
|
}
|
|
@@ -200,26 +298,100 @@ export class PreviewClient {
|
|
|
200
298
|
options.signal?.removeEventListener('abort', abort);
|
|
201
299
|
};
|
|
202
300
|
const timeout = setTimeout(() => {
|
|
203
|
-
const pending = this.#pendingMeasures.get(
|
|
301
|
+
const pending = this.#pendingMeasures.get(request.requestId);
|
|
204
302
|
if (pending !== undefined) {
|
|
205
|
-
this.#pendingMeasures.delete(
|
|
303
|
+
this.#pendingMeasures.delete(request.requestId);
|
|
206
304
|
pending.cleanup();
|
|
207
|
-
pending.reject(new Error(`Preview measure ${
|
|
305
|
+
pending.reject(new Error(`Preview measure ${request.requestId} timed out.`));
|
|
208
306
|
}
|
|
209
307
|
}, this.#timeoutMilliseconds);
|
|
210
|
-
this.#pendingMeasures.set(
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
payload,
|
|
217
|
-
sequence: this.#sequence++,
|
|
218
|
-
sessionGeneration: this.#sessionGeneration,
|
|
219
|
-
type: 'studio.preview/measure',
|
|
308
|
+
this.#pendingMeasures.set(request.requestId, {
|
|
309
|
+
cleanup,
|
|
310
|
+
payload: request,
|
|
311
|
+
reject,
|
|
312
|
+
resolve,
|
|
313
|
+
timeout,
|
|
220
314
|
});
|
|
315
|
+
options.signal?.addEventListener('abort', abort, { once: true });
|
|
316
|
+
try {
|
|
317
|
+
this.#post(message);
|
|
318
|
+
}
|
|
319
|
+
catch (error) {
|
|
320
|
+
clearTimeout(timeout);
|
|
321
|
+
cleanup();
|
|
322
|
+
this.#pendingMeasures.delete(request.requestId);
|
|
323
|
+
reject(error instanceof Error ? error : new Error('Preview transport failed.'));
|
|
324
|
+
}
|
|
221
325
|
});
|
|
222
326
|
}
|
|
327
|
+
/**
|
|
328
|
+
* Drive the preview surface to a semantic viewport role or to bounded
|
|
329
|
+
* explicit dimensions. The two are alternatives, so a payload carrying both
|
|
330
|
+
* is refused before it reaches the channel.
|
|
331
|
+
*/
|
|
332
|
+
setViewport(payload) {
|
|
333
|
+
this.#assertActive();
|
|
334
|
+
const hasRole = payload.viewport !== undefined;
|
|
335
|
+
const hasDimensions = payload.width !== undefined || payload.height !== undefined;
|
|
336
|
+
if (hasRole === hasDimensions) {
|
|
337
|
+
throw new RangeError('A viewport message carries either a semantic role or explicit dimensions, never both.');
|
|
338
|
+
}
|
|
339
|
+
const message = {
|
|
340
|
+
channelId: this.#channelId,
|
|
341
|
+
contractVersion: STUDIO_CONTRACT_VERSION,
|
|
342
|
+
kind: 'preview-message',
|
|
343
|
+
payload,
|
|
344
|
+
sequence: this.#sequence,
|
|
345
|
+
sessionGeneration: this.#sessionGeneration,
|
|
346
|
+
type: 'studio.preview/viewport',
|
|
347
|
+
};
|
|
348
|
+
this.#assertOutbound(message);
|
|
349
|
+
this.#rejectPendingMeasures(new PreviewChannelError('studio.preview/measure-viewport-changed', 'Preview measurement was invalidated by a viewport change.', true));
|
|
350
|
+
this.#post(message);
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Instruct the renderer to revoke the resources it holds for a superseded
|
|
354
|
+
* draft while the channel stays open. This is not teardown: teardown ends
|
|
355
|
+
* the session, dispose frees a render's resources within it.
|
|
356
|
+
*/
|
|
357
|
+
disposeDraft(payload) {
|
|
358
|
+
this.#assertActive();
|
|
359
|
+
const message = {
|
|
360
|
+
channelId: this.#channelId,
|
|
361
|
+
contractVersion: STUDIO_CONTRACT_VERSION,
|
|
362
|
+
kind: 'preview-message',
|
|
363
|
+
payload,
|
|
364
|
+
sequence: this.#sequence,
|
|
365
|
+
sessionGeneration: this.#sessionGeneration,
|
|
366
|
+
type: 'studio.preview/dispose',
|
|
367
|
+
};
|
|
368
|
+
this.#assertOutbound(message);
|
|
369
|
+
for (const [requestId, pending] of this.#pending) {
|
|
370
|
+
if (payload.draftDigest === undefined ||
|
|
371
|
+
pending.payload.draftDigest === payload.draftDigest) {
|
|
372
|
+
clearTimeout(pending.timeout);
|
|
373
|
+
pending.cleanup();
|
|
374
|
+
pending.reject(new PreviewChannelError('studio.preview/render-disposed', `Preview render ${requestId} was disposed before completion.`));
|
|
375
|
+
this.#pending.delete(requestId);
|
|
376
|
+
if (this.#latestRenderRequestId === requestId) {
|
|
377
|
+
this.#latestRenderRequestId = undefined;
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
if (payload.draftDigest === undefined || payload.draftDigest === this.#latestRenderedDigest) {
|
|
382
|
+
this.#latestRenderedDigest = undefined;
|
|
383
|
+
this.#markerInventory.clear();
|
|
384
|
+
this.#rejectPendingMeasures(new PreviewChannelError('studio.preview/measure-disposed', 'Preview measurement was disposed with its render.'));
|
|
385
|
+
}
|
|
386
|
+
this.#post(message);
|
|
387
|
+
}
|
|
388
|
+
/** Observe trusted marker interactions the renderer reports. */
|
|
389
|
+
onActivated(listener) {
|
|
390
|
+
this.#activationListeners.add(listener);
|
|
391
|
+
return () => {
|
|
392
|
+
this.#activationListeners.delete(listener);
|
|
393
|
+
};
|
|
394
|
+
}
|
|
223
395
|
select(payload) {
|
|
224
396
|
this.#assertActive();
|
|
225
397
|
this.#post({
|
|
@@ -227,7 +399,7 @@ export class PreviewClient {
|
|
|
227
399
|
contractVersion: STUDIO_CONTRACT_VERSION,
|
|
228
400
|
kind: 'preview-message',
|
|
229
401
|
payload,
|
|
230
|
-
sequence: this.#sequence
|
|
402
|
+
sequence: this.#sequence,
|
|
231
403
|
sessionGeneration: this.#sessionGeneration,
|
|
232
404
|
type: 'studio.preview/select',
|
|
233
405
|
});
|
|
@@ -237,9 +409,44 @@ export class PreviewClient {
|
|
|
237
409
|
throw new Error('Preview client was disposed.');
|
|
238
410
|
}
|
|
239
411
|
}
|
|
412
|
+
#assertOutbound(message) {
|
|
413
|
+
if (!isPreviewMessage(message)) {
|
|
414
|
+
throw new PreviewChannelError('studio.preview/invalid-outbound-message', 'Refused an invalid outbound preview message.');
|
|
415
|
+
}
|
|
416
|
+
}
|
|
240
417
|
#post(message) {
|
|
418
|
+
this.#assertOutbound(message);
|
|
419
|
+
this.#sequence += 1;
|
|
241
420
|
this.#target.postMessage(message, this.#targetOrigin);
|
|
242
421
|
}
|
|
422
|
+
#rejectPendingMeasures(reason) {
|
|
423
|
+
for (const pending of this.#pendingMeasures.values()) {
|
|
424
|
+
clearTimeout(pending.timeout);
|
|
425
|
+
pending.cleanup();
|
|
426
|
+
pending.reject(reason);
|
|
427
|
+
}
|
|
428
|
+
this.#pendingMeasures.clear();
|
|
429
|
+
}
|
|
430
|
+
#revokeRemoteRender(draftDigest, reason) {
|
|
431
|
+
if (this.#disposed) {
|
|
432
|
+
return;
|
|
433
|
+
}
|
|
434
|
+
try {
|
|
435
|
+
this.#post({
|
|
436
|
+
channelId: this.#channelId,
|
|
437
|
+
contractVersion: STUDIO_CONTRACT_VERSION,
|
|
438
|
+
kind: 'preview-message',
|
|
439
|
+
payload: { draftDigest, reason },
|
|
440
|
+
sequence: this.#sequence,
|
|
441
|
+
sessionGeneration: this.#sessionGeneration,
|
|
442
|
+
type: 'studio.preview/dispose',
|
|
443
|
+
});
|
|
444
|
+
}
|
|
445
|
+
catch {
|
|
446
|
+
// Local cancellation is already complete. A transport exception cannot
|
|
447
|
+
// resurrect the request, and private transport details are not surfaced.
|
|
448
|
+
}
|
|
449
|
+
}
|
|
243
450
|
#receive(event) {
|
|
244
451
|
if (event.origin !== this.#targetOrigin ||
|
|
245
452
|
event.source !== this.#target ||
|
|
@@ -250,23 +457,57 @@ export class PreviewClient {
|
|
|
250
457
|
return;
|
|
251
458
|
}
|
|
252
459
|
this.#lastInboundSequence = event.data.sequence;
|
|
460
|
+
if (event.data.type === 'studio.preview/activated') {
|
|
461
|
+
if (!this.#markerInventory.has(event.data.payload.marker) ||
|
|
462
|
+
!isPreviewMarker(event.data.payload.marker, this.#latestRenderedDigest)) {
|
|
463
|
+
return;
|
|
464
|
+
}
|
|
465
|
+
for (const listener of this.#activationListeners) {
|
|
466
|
+
listener(event.data.payload);
|
|
467
|
+
}
|
|
468
|
+
return;
|
|
469
|
+
}
|
|
253
470
|
if (event.data.type === 'studio.preview/rendered') {
|
|
254
|
-
if (event.data.payload.
|
|
471
|
+
if (event.data.payload.requestId !== this.#latestRenderRequestId) {
|
|
472
|
+
return;
|
|
473
|
+
}
|
|
474
|
+
const pending = this.#pending.get(event.data.payload.requestId);
|
|
475
|
+
if (pending !== undefined && event.data.payload.draftDigest !== pending.payload.draftDigest) {
|
|
476
|
+
clearTimeout(pending.timeout);
|
|
477
|
+
pending.cleanup();
|
|
478
|
+
this.#pending.delete(event.data.payload.requestId);
|
|
479
|
+
this.#latestRenderRequestId = undefined;
|
|
480
|
+
pending.reject(new PreviewChannelError('studio.preview/render-correlation-mismatch', 'Preview response digest did not match its render request.'));
|
|
255
481
|
return;
|
|
256
482
|
}
|
|
257
|
-
const pending = this.#pending.get(event.data.payload.draftDigest);
|
|
258
483
|
if (pending !== undefined) {
|
|
259
484
|
clearTimeout(pending.timeout);
|
|
260
485
|
pending.cleanup();
|
|
261
|
-
this.#pending.delete(event.data.payload.
|
|
262
|
-
this.#
|
|
486
|
+
this.#pending.delete(event.data.payload.requestId);
|
|
487
|
+
this.#latestRenderRequestId = undefined;
|
|
263
488
|
this.#latestRenderedDigest = event.data.payload.draftDigest;
|
|
489
|
+
this.#markerInventory.clear();
|
|
490
|
+
for (const marker of event.data.payload.markers) {
|
|
491
|
+
this.#markerInventory.add(marker);
|
|
492
|
+
}
|
|
264
493
|
pending.resolve(event.data.payload);
|
|
265
494
|
}
|
|
266
495
|
}
|
|
267
496
|
else if (event.data.type === 'studio.preview/measurements') {
|
|
268
497
|
const pending = this.#pendingMeasures.get(event.data.payload.requestId);
|
|
269
498
|
if (pending !== undefined) {
|
|
499
|
+
const responseMarkers = [
|
|
500
|
+
...Object.keys(event.data.payload.measurements),
|
|
501
|
+
...event.data.payload.unknown,
|
|
502
|
+
];
|
|
503
|
+
if (responseMarkers.length !== pending.payload.markers.length ||
|
|
504
|
+
pending.payload.markers.some((marker) => !responseMarkers.includes(marker))) {
|
|
505
|
+
clearTimeout(pending.timeout);
|
|
506
|
+
pending.cleanup();
|
|
507
|
+
this.#pendingMeasures.delete(event.data.payload.requestId);
|
|
508
|
+
pending.reject(new PreviewChannelError('studio.preview/invalid-measurements', 'Preview measurements did not exactly partition the requested marker inventory.'));
|
|
509
|
+
return;
|
|
510
|
+
}
|
|
270
511
|
clearTimeout(pending.timeout);
|
|
271
512
|
pending.cleanup();
|
|
272
513
|
this.#pendingMeasures.delete(event.data.payload.requestId);
|
|
@@ -292,16 +533,17 @@ export class PreviewClient {
|
|
|
292
533
|
if (pendingRender !== undefined) {
|
|
293
534
|
clearTimeout(pendingRender.timeout);
|
|
294
535
|
pendingRender.cleanup();
|
|
295
|
-
pendingRender.reject(new
|
|
536
|
+
pendingRender.reject(new PreviewChannelError(event.data.payload.code, message, event.data.payload.retryable));
|
|
296
537
|
this.#pending.delete(correlationId);
|
|
297
|
-
if (this.#
|
|
298
|
-
this.#
|
|
538
|
+
if (this.#latestRenderRequestId === correlationId) {
|
|
539
|
+
this.#latestRenderRequestId = undefined;
|
|
540
|
+
this.#markerInventory.clear();
|
|
299
541
|
}
|
|
300
542
|
}
|
|
301
543
|
if (pendingMeasure !== undefined) {
|
|
302
544
|
clearTimeout(pendingMeasure.timeout);
|
|
303
545
|
pendingMeasure.cleanup();
|
|
304
|
-
pendingMeasure.reject(new
|
|
546
|
+
pendingMeasure.reject(new PreviewChannelError(event.data.payload.code, message, event.data.payload.retryable));
|
|
305
547
|
this.#pendingMeasures.delete(correlationId);
|
|
306
548
|
}
|
|
307
549
|
}
|
|
@@ -318,7 +560,9 @@ export class PreviewClient {
|
|
|
318
560
|
pending.reject(new Error(message));
|
|
319
561
|
}
|
|
320
562
|
this.#pendingMeasures.clear();
|
|
321
|
-
this.#
|
|
563
|
+
this.#latestRenderRequestId = undefined;
|
|
564
|
+
this.#latestRenderedDigest = undefined;
|
|
565
|
+
this.#markerInventory.clear();
|
|
322
566
|
}
|
|
323
567
|
}
|
|
324
568
|
else if (event.data.type === 'studio.preview/ready') {
|
|
@@ -350,8 +594,9 @@ export class PreviewClient {
|
|
|
350
594
|
pending.reject(new Error(reason));
|
|
351
595
|
}
|
|
352
596
|
this.#pendingMeasures.clear();
|
|
353
|
-
this.#
|
|
597
|
+
this.#latestRenderRequestId = undefined;
|
|
354
598
|
this.#latestRenderedDigest = undefined;
|
|
599
|
+
this.#markerInventory.clear();
|
|
355
600
|
// A reloaded renderer announces itself again; the cached payload may
|
|
356
601
|
// no longer describe it.
|
|
357
602
|
this.#readyPayload = undefined;
|
|
@@ -372,7 +617,7 @@ export class PreviewClient {
|
|
|
372
617
|
contractVersion: STUDIO_CONTRACT_VERSION,
|
|
373
618
|
kind: 'preview-message',
|
|
374
619
|
payload: { reason },
|
|
375
|
-
sequence: this.#sequence
|
|
620
|
+
sequence: this.#sequence,
|
|
376
621
|
sessionGeneration: this.#sessionGeneration,
|
|
377
622
|
type: 'studio.preview/teardown',
|
|
378
623
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview-client.js","sourceRoot":"","sources":["../src/preview-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"preview-client.js","sourceRoot":"","sources":["../src/preview-client.ts"],"names":[],"mappings":"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"}
|
package/dist/preview-host.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { type LocalName, type PreviewMarkerRect, type PreviewRenderedPayload, type PreviewRenderPayload, type PreviewSelectPayload, type PreviewViewportMetrics, type QualifiedName, type StableId } from '@kumwe/studio-protocol';
|
|
1
|
+
import { type LocalName, type PreviewMarkerRect, type PreviewRenderedPayload, type PreviewRenderPayload, type PreviewActivatedPayload, type PreviewDisposePayload, type PreviewSelectPayload, type PreviewViewportPayload, type PreviewViewportMetrics, type QualifiedName, type StableId } from '@kumwe/studio-protocol';
|
|
2
2
|
import { type PreviewMessageSource, type PreviewMessageTarget } from './preview-client.js';
|
|
3
|
-
|
|
3
|
+
/** Render work is attempt-scoped; implementations should stop promptly when the signal aborts. */
|
|
4
|
+
export type PreviewRenderCallback = (payload: PreviewRenderPayload, signal: AbortSignal) => Promise<PreviewRenderedPayload>;
|
|
4
5
|
/**
|
|
5
6
|
* Raw measurement produced by the embedding renderer. The responder never reads the
|
|
6
7
|
* DOM itself: the renderer supplies marker rectangles and viewport metrics, keeping
|
|
@@ -11,8 +12,11 @@ export interface PreviewMeasurement {
|
|
|
11
12
|
rects: Record<StableId, PreviewMarkerRect[]>;
|
|
12
13
|
viewport: PreviewViewportMetrics;
|
|
13
14
|
}
|
|
14
|
-
|
|
15
|
+
/** Measurement work is render-generation-scoped and receives the same cancellation discipline. */
|
|
16
|
+
export type PreviewMeasureCallback = (markers: StableId[], signal: AbortSignal) => Promise<PreviewMeasurement>;
|
|
15
17
|
export type PreviewSelectListener = (payload: PreviewSelectPayload) => void;
|
|
18
|
+
export type PreviewViewportListener = (payload: PreviewViewportPayload) => void;
|
|
19
|
+
export type PreviewDisposeListener = (payload: PreviewDisposePayload) => void;
|
|
16
20
|
export interface PreviewHostOptions {
|
|
17
21
|
channelId: string;
|
|
18
22
|
/** Renderer-supplied marker measurer; without one, measure requests are answered as unavailable. */
|
|
@@ -42,6 +46,16 @@ export declare class PreviewHost {
|
|
|
42
46
|
*/
|
|
43
47
|
announce(): void;
|
|
44
48
|
dispose(): void;
|
|
49
|
+
/**
|
|
50
|
+
* Report a trusted interaction with a marked region. The renderer reports
|
|
51
|
+
* intent, never raw input events, and the marker carries nothing beyond the
|
|
52
|
+
* node identity the render already published.
|
|
53
|
+
*/
|
|
54
|
+
announceActivation(payload: PreviewActivatedPayload): void;
|
|
55
|
+
/** Observe viewport instructions the client drives the surface with. */
|
|
56
|
+
onViewport(listener: PreviewViewportListener): () => void;
|
|
57
|
+
/** Observe requests to revoke the resources held for a superseded draft. */
|
|
58
|
+
onDispose(listener: PreviewDisposeListener): () => void;
|
|
45
59
|
onSelect(listener: PreviewSelectListener): () => void;
|
|
46
60
|
/**
|
|
47
61
|
* Announce that the renderer reloaded: any in-flight render or measurement is
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview-host.d.ts","sourceRoot":"","sources":["../src/preview-host.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"preview-host.d.ts","sourceRoot":"","sources":["../src/preview-host.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACd,KAAK,iBAAiB,EAGtB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,QAAQ,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAE7B,kGAAkG;AAClG,MAAM,MAAM,qBAAqB,GAAG,CAClC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,WAAW,KAChB,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAErC;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC7C,QAAQ,EAAE,sBAAsB,CAAC;CAClC;AAED,kGAAkG;AAClG,MAAM,MAAM,sBAAsB,GAAG,CACnC,OAAO,EAAE,QAAQ,EAAE,EACnB,MAAM,EAAE,WAAW,KAChB,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEjC,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,CAAC;AAE5E,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,EAAE,sBAAsB,KAAK,IAAI,CAAC;AAEhF,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAE9E,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,oGAAoG;IACpG,OAAO,CAAC,EAAE,sBAAsB,CAAC;IACjC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,QAAQ,EAAE,aAAa,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,SAAS,EAAE,CAAC;CACxB;AAgBD;;;;;;GAMG;AACH,qBAAa,WAAW;;gBAyBH,OAAO,EAAE,kBAAkB;IAgB9C;;;;OAIG;IACI,QAAQ,IAAI,IAAI;IAiBhB,OAAO,IAAI,IAAI;IAetB;;;;OAIG;IACI,kBAAkB,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;IAmBjE,wEAAwE;IACjE,UAAU,CAAC,QAAQ,EAAE,uBAAuB,GAAG,MAAM,IAAI;IAOhE,4EAA4E;IACrE,SAAS,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,IAAI;IAOvD,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,GAAG,MAAM,IAAI;IAO5D;;;OAGG;IACI,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAkB1C,sEAAsE;IAC/D,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;CAiX7C"}
|