From 1081193a83323454cd8f0a6483f8009af425f9a5 Mon Sep 17 00:00:00 2001 From: Jovi De Croock Date: Mon, 23 Feb 2026 19:44:04 +0100 Subject: [PATCH 1/2] Adjust streamed id from preact-island to $s --- src/lib/chunked.js | 4 +--- src/lib/client.js | 6 +++--- test/compat/render-chunked.test.jsx | 12 ++++++------ test/compat/stream-node.test.jsx | 2 +- test/compat/stream.test.jsx | 2 +- 5 files changed, 12 insertions(+), 14 deletions(-) diff --git a/src/lib/chunked.js b/src/lib/chunked.js index 48aca958..b5ec6c69 100644 --- a/src/lib/chunked.js +++ b/src/lib/chunked.js @@ -113,7 +113,5 @@ function handleError(error, vnode, renderChild) { const fallback = renderChild(vnode.props.fallback); - return found - ? '' - : `${fallback}`; + return found ? '' : `${fallback}`; } diff --git a/src/lib/client.js b/src/lib/client.js index 37c0b28f..e7fe401d 100644 --- a/src/lib/client.js +++ b/src/lib/client.js @@ -15,8 +15,8 @@ // while (c.nextNode()) { // let n = c.referenceNode; -// if (n.data == 'preact-island:' + i) s = n; -// else if (n.data == '/preact-island:' + i) e = n; +// if (n.data == '$s:' + i) s = n; +// else if (n.data == '/$s:' + i) e = n; // if (s && e) break; // } // if (s && e && s.parentNode !== document) { @@ -46,7 +46,7 @@ // } // To modify the INIT_SCRIPT, uncomment the above code, modify it, and paste it into https://try.terser.org/. -const INIT_SCRIPT = `class e extends HTMLElement{connectedCallback(){var e=this;if(!e.isConnected)return;let t=this.getAttribute("data-target");if(t){for(var r,a,i=document.createNodeIterator(document,128);i.nextNode();){let e=i.referenceNode;if(e.data=="preact-island:"+t?r=e:e.data=="/preact-island:"+t&&(a=e),r&&a)break}r&&a&&r.parentNode!==document&&requestAnimationFrame((()=>{for(var t=a.previousSibling;t!=r&&t&&t!=r;)a.parentNode.removeChild(t),t=a.previousSibling;for(i=r;e.firstChild;)r=e.firstChild,e.removeChild(r),i.after(r),i=r;e.parentNode.removeChild(e)}))}}}customElements.define("preact-island",e);`; +const INIT_SCRIPT = `class e extends HTMLElement{connectedCallback(){var e=this;if(!e.isConnected)return;let t=this.getAttribute("data-target");if(t){for(var r,a,i=document.createNodeIterator(document,128);i.nextNode();){let e=i.referenceNode;if(e.data=="$s:"+t?r=e:e.data=="/$s:"+t&&(a=e),r&&a)break}r&&a&&r.parentNode!==document&&requestAnimationFrame((()=>{for(var t=a.previousSibling;t!=r&&t&&t!=r;)a.parentNode.removeChild(t),t=a.previousSibling;for(i=r;e.firstChild;)r=e.firstChild,e.removeChild(r),i.after(r),i=r;e.parentNode.removeChild(e)}))}}}customElements.define("preact-island",e);`; export function createInitScript() { return ``; diff --git a/test/compat/render-chunked.test.jsx b/test/compat/render-chunked.test.jsx index 22982433..f0699fca 100644 --- a/test/compat/render-chunked.test.jsx +++ b/test/compat/render-chunked.test.jsx @@ -34,7 +34,7 @@ describe('renderToChunks', () => { await promise; expect(result).to.deep.equal([ - '
loading...
', + '
loading...
', '