@reckona/mreact-router 0.0.156 → 0.0.157

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reckona/mreact-router",
3
- "version": "0.0.156",
3
+ "version": "0.0.157",
4
4
  "description": "File-system app router, SSR, actions, and deployment adapters for mreact.",
5
5
  "keywords": [
6
6
  "jsx",
@@ -105,20 +105,20 @@
105
105
  },
106
106
  "dependencies": {
107
107
  "typescript": "^6.0.3",
108
- "@reckona/mreact-compat": "0.0.156",
109
- "@reckona/mreact-compiler": "0.0.156",
110
- "@reckona/mreact-devtools": "0.0.156",
111
- "@reckona/mreact-reactive-core": "0.0.156",
112
- "@reckona/mreact-query": "0.0.156",
113
- "@reckona/mreact": "0.0.156",
114
- "@reckona/mreact-reactive-dom": "0.0.156",
115
- "@reckona/mreact-server": "0.0.156",
116
- "@reckona/mreact-shared": "0.0.156"
108
+ "@reckona/mreact-compat": "0.0.157",
109
+ "@reckona/mreact-devtools": "0.0.157",
110
+ "@reckona/mreact-query": "0.0.157",
111
+ "@reckona/mreact-reactive-core": "0.0.157",
112
+ "@reckona/mreact-compiler": "0.0.157",
113
+ "@reckona/mreact": "0.0.157",
114
+ "@reckona/mreact-reactive-dom": "0.0.157",
115
+ "@reckona/mreact-server": "0.0.157",
116
+ "@reckona/mreact-shared": "0.0.157"
117
117
  },
118
118
  "peerDependencies": {
119
119
  "vite": ">=8 <9"
120
120
  },
121
121
  "optionalDependencies": {
122
- "@reckona/mreact-router-native": "0.0.156"
122
+ "@reckona/mreact-router-native": "0.0.157"
123
123
  }
124
124
  }
package/src/client.ts CHANGED
@@ -3786,6 +3786,13 @@ function __mreactApplyOutOfOrderFragments(root) {
3786
3786
  continue;
3787
3787
  }
3788
3788
 
3789
+ const completionMarker = Array.from(root.querySelectorAll("[data-mreact-oob-complete]"))
3790
+ .find((candidate) => candidate.getAttribute("data-mreact-oob-complete") === id);
3791
+
3792
+ if (completionMarker === undefined) {
3793
+ continue;
3794
+ }
3795
+
3789
3796
  const placeholder = Array.from(root.querySelectorAll("[data-mreact-oob-placeholder]"))
3790
3797
  .find((candidate) => candidate.getAttribute("data-mreact-oob-placeholder") === id);
3791
3798
 
@@ -3795,6 +3802,7 @@ function __mreactApplyOutOfOrderFragments(root) {
3795
3802
 
3796
3803
  placeholder.replaceWith(fragment.content.cloneNode(true));
3797
3804
  fragment.remove();
3805
+ completionMarker.remove();
3798
3806
  }
3799
3807
  }
3800
3808
 
package/src/render.ts CHANGED
@@ -3500,9 +3500,12 @@ async function renderVisibleOutOfOrderFragment<T>(
3500
3500
  );
3501
3501
  await fragmentSink.drain();
3502
3502
 
3503
- sink.append(
3504
- `<template data-mreact-oob-fragment="${escapeHtmlAttribute(id)}">${fragmentSink.toString()}</template>`,
3505
- );
3503
+ sink.append(renderVisibleOutOfOrderFragmentHtml(id, fragmentSink.toString()));
3504
+ }
3505
+
3506
+ function renderVisibleOutOfOrderFragmentHtml(id: string, html: string): string {
3507
+ const escapedId = escapeHtmlAttribute(id);
3508
+ return `<template data-mreact-oob-fragment="${escapedId}">${html}</template><mreact-oob-complete hidden data-mreact-oob-complete="${escapedId}"></mreact-oob-complete>`;
3506
3509
  }
3507
3510
 
3508
3511
  async function appendServerStreamModule(