From 4b79993d37d2a7158fd5ccbc4e749619743b0fa7 Mon Sep 17 00:00:00 2001 From: Benjamin Toby Date: Sat, 21 Mar 2026 14:24:12 +0100 Subject: [PATCH] Bugfix. Update generate-web-html function --- dist/functions/server/web-pages/generate-web-html.js | 5 +---- dist/utils/import-react-dom-server.js | 3 +++ package.json | 2 +- src/functions/server/web-pages/generate-web-html.tsx | 6 +----- src/utils/import-react-dom-server.ts | 4 ++++ 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/dist/functions/server/web-pages/generate-web-html.js b/dist/functions/server/web-pages/generate-web-html.js index ed7a70b..fb8cbb6 100644 --- a/dist/functions/server/web-pages/generate-web-html.js +++ b/dist/functions/server/web-pages/generate-web-html.js @@ -1,4 +1,5 @@ import { jsx as _jsx } from "react/jsx-runtime"; +import { renderToString } from "react-dom/server"; import grabContants from "../../../utils/grab-constants"; import EJSON from "../../../utils/ejson"; import isDevelopment from "../../../utils/is-development"; @@ -6,15 +7,11 @@ import grabWebPageHydrationScript from "./grab-web-page-hydration-script"; import grabWebMetaHTML from "./grab-web-meta-html"; import { log } from "../../../utils/log"; import { AppData } from "../../../data/app-data"; -import path from "path"; -import importReactDomServer from "../../../utils/import-react-dom-server"; export default async function genWebHTML({ component, pageProps, bundledMap, head: Head, module, meta, routeParams, debug, }) { const { ClientRootElementIDName, ClientWindowPagePropsName } = grabContants(); if (debug) { log.info("component", component); } - const reactDomServer = await importReactDomServer(); - const renderToString = reactDomServer.renderToString; const componentHTML = renderToString(component); if (debug) { log.info("componentHTML", componentHTML); diff --git a/dist/utils/import-react-dom-server.js b/dist/utils/import-react-dom-server.js index 7b5a305..50a5549 100644 --- a/dist/utils/import-react-dom-server.js +++ b/dist/utils/import-react-dom-server.js @@ -3,6 +3,9 @@ import reactDomServer from "react-dom/server"; export default async function importReactDomServer() { try { const reactDomServerDynamicImport = await import(path.join(process.cwd(), "node_modules", "react-dom", "server")); + if (!reactDomServerDynamicImport.renderToString) { + return reactDomServer; + } return reactDomServerDynamicImport; } catch (error) { diff --git a/package.json b/package.json index 657cc7e..39b9b6f 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@moduletrace/bunext", "module": "index.ts", "type": "module", - "version": "1.0.6", + "version": "1.0.7", "main": "dist/index.js", "types": "dist/index.d.ts", "exports": { diff --git a/src/functions/server/web-pages/generate-web-html.tsx b/src/functions/server/web-pages/generate-web-html.tsx index 5be086a..4e37d09 100644 --- a/src/functions/server/web-pages/generate-web-html.tsx +++ b/src/functions/server/web-pages/generate-web-html.tsx @@ -1,3 +1,4 @@ +import { renderToString } from "react-dom/server"; import grabContants from "../../../utils/grab-constants"; import EJSON from "../../../utils/ejson"; import type { LivePageDistGenParams } from "../../../types"; @@ -6,8 +7,6 @@ import grabWebPageHydrationScript from "./grab-web-page-hydration-script"; import grabWebMetaHTML from "./grab-web-meta-html"; import { log } from "../../../utils/log"; import { AppData } from "../../../data/app-data"; -import path from "path"; -import importReactDomServer from "../../../utils/import-react-dom-server"; export default async function genWebHTML({ component, @@ -26,9 +25,6 @@ export default async function genWebHTML({ log.info("component", component); } - const reactDomServer = await importReactDomServer(); - const renderToString = reactDomServer.renderToString; - const componentHTML = renderToString(component); if (debug) { diff --git a/src/utils/import-react-dom-server.ts b/src/utils/import-react-dom-server.ts index 8e4c523..2ec9f60 100644 --- a/src/utils/import-react-dom-server.ts +++ b/src/utils/import-react-dom-server.ts @@ -7,6 +7,10 @@ export default async function importReactDomServer() { path.join(process.cwd(), "node_modules", "react-dom", "server") ); + if (!reactDomServerDynamicImport.renderToString) { + return reactDomServer; + } + return reactDomServerDynamicImport; } catch (error) { return reactDomServer;