@xmachines/play-dom 1.0.0-beta.48 → 1.0.0-beta.49
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/dist/PlayRenderer.d.ts +5 -5
- package/dist/PlayRenderer.d.ts.map +1 -1
- package/dist/PlayRenderer.js +27 -27
- package/dist/PlayRenderer.js.map +1 -1
- package/dist/json-render/renderer.d.ts +2 -2
- package/dist/json-render/renderer.js +7 -7
- package/dist/json-render/renderer.js.map +1 -1
- package/package.json +5 -5
package/dist/PlayRenderer.d.ts
CHANGED
|
@@ -50,9 +50,9 @@ export declare class PlayRenderer {
|
|
|
50
50
|
private readonly actor;
|
|
51
51
|
private readonly registry;
|
|
52
52
|
private readonly options;
|
|
53
|
-
private
|
|
54
|
-
private
|
|
55
|
-
private
|
|
53
|
+
private unwatch;
|
|
54
|
+
private storeUnsubscribe;
|
|
55
|
+
private watchCleanups;
|
|
56
56
|
/**
|
|
57
57
|
* Set to `false` in `disconnect()` before calling `storeUnsub()`.
|
|
58
58
|
* The `rerender` closure checks this flag at entry so that any synchronous
|
|
@@ -60,7 +60,7 @@ export declare class PlayRenderer {
|
|
|
60
60
|
* `unsubscribe()` call (an edge-case but valid contract) does not mutate a
|
|
61
61
|
* detached DOM tree.
|
|
62
62
|
*/
|
|
63
|
-
private
|
|
63
|
+
private alive;
|
|
64
64
|
/**
|
|
65
65
|
* @param container - `HTMLElement` to render into. Cleared and repopulated on every view transition.
|
|
66
66
|
* @param actor - Actor providing the `currentView` signal (must implement `Viewable`).
|
|
@@ -86,6 +86,6 @@ export declare class PlayRenderer {
|
|
|
86
86
|
* Stop watching and clear the container.
|
|
87
87
|
*/
|
|
88
88
|
disconnect(): void;
|
|
89
|
-
private
|
|
89
|
+
private render;
|
|
90
90
|
}
|
|
91
91
|
//# sourceMappingURL=PlayRenderer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayRenderer.d.ts","sourceRoot":"","sources":["../src/PlayRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAY,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE5C,OAAO,KAAK,EAAE,WAAW,EAAY,MAAM,wBAAwB,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAyBjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAAa,YAAY;IAwBvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IA1BzB,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"PlayRenderer.d.ts","sourceRoot":"","sources":["../src/PlayRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAY,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE5C,OAAO,KAAK,EAAE,WAAW,EAAY,MAAM,wBAAwB,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAyBjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAAa,YAAY;IAwBvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IA1BzB,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,aAAa,CAAsB;IAC3C;;;;;;OAMG;IACH,OAAO,CAAC,KAAK,CAAQ;IAErB;;;;;;;;;OASG;gBAEe,SAAS,EAAE,WAAW,EACtB,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,QAAQ,EAC9C,QAAQ,EAAE,WAAW,EACrB,OAAO,GAAE,cAAmB;IAG9C;;;;;;;;OAQG;IACH,OAAO,IAAI,IAAI;IAMf;;OAEG;IACH,UAAU,IAAI,IAAI;IAmBlB,OAAO,CAAC,MAAM;CAkGd"}
|
package/dist/PlayRenderer.js
CHANGED
|
@@ -72,9 +72,9 @@ export class PlayRenderer {
|
|
|
72
72
|
actor;
|
|
73
73
|
registry;
|
|
74
74
|
options;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
75
|
+
unwatch = null;
|
|
76
|
+
storeUnsubscribe = null;
|
|
77
|
+
watchCleanups = [];
|
|
78
78
|
/**
|
|
79
79
|
* Set to `false` in `disconnect()` before calling `storeUnsub()`.
|
|
80
80
|
* The `rerender` closure checks this flag at entry so that any synchronous
|
|
@@ -82,7 +82,7 @@ export class PlayRenderer {
|
|
|
82
82
|
* `unsubscribe()` call (an edge-case but valid contract) does not mutate a
|
|
83
83
|
* detached DOM tree.
|
|
84
84
|
*/
|
|
85
|
-
|
|
85
|
+
alive = true;
|
|
86
86
|
/**
|
|
87
87
|
* @param container - `HTMLElement` to render into. Cleared and repopulated on every view transition.
|
|
88
88
|
* @param actor - Actor providing the `currentView` signal (must implement `Viewable`).
|
|
@@ -109,48 +109,48 @@ export class PlayRenderer {
|
|
|
109
109
|
* change. Guard against this by auto-disconnecting first.
|
|
110
110
|
*/
|
|
111
111
|
connect() {
|
|
112
|
-
if (this.
|
|
112
|
+
if (this.unwatch !== null)
|
|
113
113
|
this.disconnect();
|
|
114
|
-
this.
|
|
115
|
-
this.
|
|
114
|
+
this.render(this.actor.currentView.get());
|
|
115
|
+
this.unwatch = watchSignal(this.actor.currentView, (view) => this.render(view));
|
|
116
116
|
}
|
|
117
117
|
/**
|
|
118
118
|
* Stop watching and clear the container.
|
|
119
119
|
*/
|
|
120
120
|
disconnect() {
|
|
121
|
-
this.
|
|
122
|
-
this.
|
|
121
|
+
this.unwatch?.();
|
|
122
|
+
this.unwatch = null;
|
|
123
123
|
// Null the refs first so any in-flight rerender callback sees null and skips.
|
|
124
124
|
// Capture the arrays/functions before clearing so we call the correct cleanups
|
|
125
125
|
// even if unsubscribing the store triggers a synchronous rerender that would
|
|
126
|
-
// otherwise overwrite
|
|
127
|
-
const storeUnsub = this.
|
|
128
|
-
const watchCleanups = [...this.
|
|
129
|
-
this.
|
|
130
|
-
this.
|
|
126
|
+
// otherwise overwrite watchCleanups before we iterate them.
|
|
127
|
+
const storeUnsub = this.storeUnsubscribe;
|
|
128
|
+
const watchCleanups = [...this.watchCleanups];
|
|
129
|
+
this.storeUnsubscribe = null;
|
|
130
|
+
this.watchCleanups = [];
|
|
131
131
|
// Set alive = false before calling storeUnsub() so that any synchronous
|
|
132
132
|
// rerender callback triggered within unsubscribe() exits immediately.
|
|
133
|
-
this.
|
|
133
|
+
this.alive = false;
|
|
134
134
|
storeUnsub?.();
|
|
135
135
|
for (const cleanup of watchCleanups)
|
|
136
136
|
cleanup();
|
|
137
137
|
this.container.replaceChildren();
|
|
138
138
|
}
|
|
139
|
-
|
|
140
|
-
this.
|
|
139
|
+
render(view) {
|
|
140
|
+
this.alive = true;
|
|
141
141
|
// Capture and clear before calling — prevents the synchronous callback fired
|
|
142
142
|
// by some store implementations during unsubscribe from seeing a live
|
|
143
|
-
//
|
|
143
|
+
// storeUnsubscribe and re-entering the rerender path with stale view/store.
|
|
144
144
|
// Mirrors the capture-then-clear pattern used in disconnect().
|
|
145
|
-
const oldUnsub = this.
|
|
146
|
-
this.
|
|
145
|
+
const oldUnsub = this.storeUnsubscribe;
|
|
146
|
+
this.storeUnsubscribe = null;
|
|
147
147
|
oldUnsub?.();
|
|
148
148
|
// Release watch cleanups from the previous view's initial render.
|
|
149
149
|
// Without this, watch subscriptions from the prior view remain active
|
|
150
150
|
// between a view transition and the first store update in the new view,
|
|
151
151
|
// holding references to stale DOM elements and preventing GC.
|
|
152
|
-
const prevWatchCleanups = this.
|
|
153
|
-
this.
|
|
152
|
+
const prevWatchCleanups = this.watchCleanups;
|
|
153
|
+
this.watchCleanups = [];
|
|
154
154
|
for (const cleanup of prevWatchCleanups)
|
|
155
155
|
cleanup();
|
|
156
156
|
this.container.replaceChildren();
|
|
@@ -196,20 +196,20 @@ export class PlayRenderer {
|
|
|
196
196
|
// Guard: skip if PlayRenderer has been disconnected.
|
|
197
197
|
// Handles the edge case where a StateStore implementation fires its
|
|
198
198
|
// subscribed callbacks synchronously within its own unsubscribe() call.
|
|
199
|
-
if (!this.
|
|
199
|
+
if (!this.alive)
|
|
200
200
|
return;
|
|
201
201
|
// Clear watch subscriptions from previous render pass before re-rendering.
|
|
202
|
-
for (const cleanup of this.
|
|
202
|
+
for (const cleanup of this.watchCleanups)
|
|
203
203
|
cleanup();
|
|
204
|
-
this.
|
|
204
|
+
this.watchCleanups = [];
|
|
205
205
|
this.container.replaceChildren();
|
|
206
206
|
const node = renderSpec(view, store, this.registry, send, handlers, undefined, undefined, undefined, loading, (cleanup) => {
|
|
207
|
-
this.
|
|
207
|
+
this.watchCleanups.push(cleanup);
|
|
208
208
|
});
|
|
209
209
|
if (node)
|
|
210
210
|
this.container.appendChild(node);
|
|
211
211
|
};
|
|
212
|
-
this.
|
|
212
|
+
this.storeUnsubscribe = store.subscribe(rerender);
|
|
213
213
|
rerender();
|
|
214
214
|
}
|
|
215
215
|
}
|
package/dist/PlayRenderer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayRenderer.js","sourceRoot":"","sources":["../src/PlayRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAIvD;;;;;;;;;;;;GAYG;AACH,SAAS,WAAW,CAAC,KAAc;IAClC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1E,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAY,CAAC;QACtD,IAAI,KAAK,KAAK,MAAM,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAClD,OAAO,KAAgC,CAAC;QACzC,CAAC;IACF,CAAC;IACD,OAAO,EAAE,CAAC;AACX,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,OAAO,YAAY;IAwBN;IACA;IACA;IACA;IA1BV,
|
|
1
|
+
{"version":3,"file":"PlayRenderer.js","sourceRoot":"","sources":["../src/PlayRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAIvD;;;;;;;;;;;;GAYG;AACH,SAAS,WAAW,CAAC,KAAc;IAClC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1E,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAY,CAAC;QACtD,IAAI,KAAK,KAAK,MAAM,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAClD,OAAO,KAAgC,CAAC;QACzC,CAAC;IACF,CAAC;IACD,OAAO,EAAE,CAAC;AACX,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,OAAO,YAAY;IAwBN;IACA;IACA;IACA;IA1BV,OAAO,GAAwB,IAAI,CAAC;IACpC,gBAAgB,GAAwB,IAAI,CAAC;IAC7C,aAAa,GAAmB,EAAE,CAAC;IAC3C;;;;;;OAMG;IACK,KAAK,GAAG,IAAI,CAAC;IAErB;;;;;;;;;OASG;IACH,YACkB,SAAsB,EACtB,KAA8C,EAC9C,QAAqB,EACrB,UAA0B,EAAE;QAH5B,cAAS,GAAT,SAAS,CAAa;QACtB,UAAK,GAAL,KAAK,CAAyC;QAC9C,aAAQ,GAAR,QAAQ,CAAa;QACrB,YAAO,GAAP,OAAO,CAAqB;IAC3C,CAAC;IAEJ;;;;;;;;OAQG;IACH,OAAO;QACN,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI;YAAE,IAAI,CAAC,UAAU,EAAE,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,UAAU;QACT,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,8EAA8E;QAC9E,+EAA+E;QAC/E,6EAA6E;QAC7E,4DAA4D;QAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACzC,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,wEAAwE;QACxE,sEAAsE;QACtE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,UAAU,EAAE,EAAE,CAAC;QACf,KAAK,MAAM,OAAO,IAAI,aAAa;YAAE,OAAO,EAAE,CAAC;QAC/C,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;IAClC,CAAC;IAEO,MAAM,CAAC,IAAqB;QACnC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,6EAA6E;QAC7E,sEAAsE;QACtE,4EAA4E;QAC5E,+DAA+D;QAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACvC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,QAAQ,EAAE,EAAE,CAAC;QAEb,kEAAkE;QAClE,sEAAsE;QACtE,wEAAwE;QACxE,8DAA8D;QAC9D,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC;QAC7C,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,KAAK,MAAM,OAAO,IAAI,iBAAiB;YAAE,OAAO,EAAE,CAAC;QAEnD,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,mEAAmE;QACnE,kEAAkE;QAClE,2EAA2E;QAC3E,sEAAsE;QACtE,MAAM,KAAK,GAAe,IAAI,CAAC,OAAO,CAAC,KAAK;YAC3C,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;YACpB,CAAC,CAAC,qBAAqB,CAAC;gBACtB,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACzC,CAAC,CAAC;QAEL,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE9C,wDAAwD;QACxD,wEAAwE;QACxE,gDAAgD;QAChD,MAAM,QAAQ,GAAa,CAAC,OAAO,EAAE,EAAE;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3B,yEAAyE;YACzE,6EAA6E;YAC7E,uEAAuE;YACvE,uEAAuE;YACvE,4DAA4D;YAC5D,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,CAAC;QAEF,0FAA0F;QAC1F,2EAA2E;QAC3E,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC1D,OAAO,CAAC,IAAI,CACX,6DAA6D;gBAC5D,sDAAsD;gBACtD,qDAAqD,CACtD,CAAC;QACH,CAAC;QAED,gFAAgF;QAChF,qEAAqE;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc;YAC3C,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CACpC,GAAG,EAAE,CAAC,QAAQ,EACd,GAAG,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CACzB;YACF,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAEjC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAErC,MAAM,QAAQ,GAAG,GAAS,EAAE;YAC3B,qDAAqD;YACrD,oEAAoE;YACpE,wEAAwE;YACxE,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,OAAO;YACxB,2EAA2E;YAC3E,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,aAAa;gBAAE,OAAO,EAAE,CAAC;YACpD,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;YAExB,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,UAAU,CACtB,IAAI,EACJ,KAAK,EACL,IAAI,CAAC,QAAQ,EACb,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,SAAS,EACT,SAAS,EACT,OAAO,EACP,CAAC,OAAO,EAAE,EAAE;gBACX,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAClC,CAAC,CACD,CAAC;YACF,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC,CAAC;QAEF,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAClD,QAAQ,EAAE,CAAC;IACZ,CAAC;CACD"}
|
|
@@ -57,10 +57,10 @@ import type { DomRegistry, DomRenderContext } from "./types.js";
|
|
|
57
57
|
* or has no registered renderer.
|
|
58
58
|
*
|
|
59
59
|
* @remarks
|
|
60
|
-
* **Devtools isolation in tests:** The module-level `
|
|
60
|
+
* **Devtools isolation in tests:** The module-level `devtoolsActive` flag is a
|
|
61
61
|
* singleton that persists for the lifetime of the module. In test environments,
|
|
62
62
|
* any call to `markDevtoolsActive()` MUST be paired with a `release()` call
|
|
63
|
-
* inside a `try/finally` block. Failing to do so leaves `
|
|
63
|
+
* inside a `try/finally` block. Failing to do so leaves `devtoolsActive = true`
|
|
64
64
|
* for all subsequent tests, causing false positives in devtools-conditional
|
|
65
65
|
* rendering paths (e.g. `data-jr-key` wrapper spans).
|
|
66
66
|
*
|
|
@@ -30,15 +30,15 @@ import { evaluateVisibility, getByPath, isDevtoolsActive, resolveActionParam, re
|
|
|
30
30
|
// expose an unsubscribe handle, so this cannot be cleaned up — acceptable for
|
|
31
31
|
// client-side rendering.
|
|
32
32
|
//
|
|
33
|
-
// ⚠️ Test isolation warning: In SSR or test environments,
|
|
33
|
+
// ⚠️ Test isolation warning: In SSR or test environments, devtoolsActive is a
|
|
34
34
|
// module-level singleton that persists across test cases. If a test activates
|
|
35
35
|
// devtools via markDevtoolsActive() without calling release() in a finally block,
|
|
36
36
|
// the active state leaks into subsequent tests and causes false positives in
|
|
37
37
|
// devtools-conditional rendering paths. ALL tests that call markDevtoolsActive()
|
|
38
38
|
// MUST guard the release call in a try/finally block.
|
|
39
|
-
let
|
|
39
|
+
let devtoolsActive = isDevtoolsActive();
|
|
40
40
|
subscribeDevtoolsActive(() => {
|
|
41
|
-
|
|
41
|
+
devtoolsActive = isDevtoolsActive();
|
|
42
42
|
});
|
|
43
43
|
/**
|
|
44
44
|
* Render a Spec tree into DOM nodes using the provided `DomRegistry`.
|
|
@@ -76,10 +76,10 @@ subscribeDevtoolsActive(() => {
|
|
|
76
76
|
* or has no registered renderer.
|
|
77
77
|
*
|
|
78
78
|
* @remarks
|
|
79
|
-
* **Devtools isolation in tests:** The module-level `
|
|
79
|
+
* **Devtools isolation in tests:** The module-level `devtoolsActive` flag is a
|
|
80
80
|
* singleton that persists for the lifetime of the module. In test environments,
|
|
81
81
|
* any call to `markDevtoolsActive()` MUST be paired with a `release()` call
|
|
82
|
-
* inside a `try/finally` block. Failing to do so leaves `
|
|
82
|
+
* inside a `try/finally` block. Failing to do so leaves `devtoolsActive = true`
|
|
83
83
|
* for all subsequent tests, causing false positives in devtools-conditional
|
|
84
84
|
* rendering paths (e.g. `data-jr-key` wrapper spans).
|
|
85
85
|
*
|
|
@@ -232,7 +232,7 @@ export function renderSpec(spec, store, registry, send, handlers, fallback, onRe
|
|
|
232
232
|
// ── Devtools wrapping for repeat elements (GAP-11) ────────────────
|
|
233
233
|
// Apply the same data-jr-key wrapping as non-repeat elements so the
|
|
234
234
|
// devtools extension can identify repeat container elements by spec key.
|
|
235
|
-
if (
|
|
235
|
+
if (devtoolsActive && repeatNode instanceof Element) {
|
|
236
236
|
const wrapper = document.createElement("span");
|
|
237
237
|
wrapper.style.display = "contents";
|
|
238
238
|
wrapper.dataset.jrKey = key;
|
|
@@ -341,7 +341,7 @@ export function renderSpec(spec, store, registry, send, handlers, fallback, onRe
|
|
|
341
341
|
// carries a data-jr-key attribute so the browser devtools extension can
|
|
342
342
|
// identify rendered elements by their spec key.
|
|
343
343
|
// Only Element nodes are wrapped — Text nodes and null pass through unchanged.
|
|
344
|
-
if (
|
|
344
|
+
if (devtoolsActive && node instanceof Element) {
|
|
345
345
|
const wrapper = document.createElement("span");
|
|
346
346
|
wrapper.style.display = "contents";
|
|
347
347
|
wrapper.dataset.jrKey = key;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/json-render/renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EACN,kBAAkB,EAClB,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,uBAAuB,GACvB,MAAM,mBAAmB,CAAC;AAI3B,iFAAiF;AACjF,iFAAiF;AACjF,mFAAmF;AACnF,EAAE;AACF,4EAA4E;AAC5E,+EAA+E;AAC/E,6EAA6E;AAC7E,8EAA8E;AAC9E,yBAAyB;AACzB,EAAE;AACF
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/json-render/renderer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xmachines/play-dom",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.49",
|
|
4
4
|
"description": "Vanilla DOM renderer for XMachines Play architecture with signal-driven rendering",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"actor",
|
|
@@ -43,15 +43,15 @@
|
|
|
43
43
|
"prepublishOnly": "npm run build"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@xmachines/play": "1.0.0-beta.
|
|
47
|
-
"@xmachines/play-actor": "1.0.0-beta.
|
|
48
|
-
"@xmachines/play-signals": "1.0.0-beta.
|
|
46
|
+
"@xmachines/play": "1.0.0-beta.49",
|
|
47
|
+
"@xmachines/play-actor": "1.0.0-beta.49",
|
|
48
|
+
"@xmachines/play-signals": "1.0.0-beta.49"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
51
|
"@json-render/core": "^0.18.0",
|
|
52
52
|
"@json-render/xstate": "^0.18.0",
|
|
53
53
|
"@types/node": "^25.6.0",
|
|
54
|
-
"@xmachines/shared": "1.0.0-beta.
|
|
54
|
+
"@xmachines/shared": "1.0.0-beta.49",
|
|
55
55
|
"@xstate/store": "^3.17.0",
|
|
56
56
|
"oxfmt": "^0.47.0",
|
|
57
57
|
"oxlint": "^1.62.0",
|