UNPKG

rasengan

Version:

The modern React Framework

15 lines (14 loc) 963 B
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import { TemplateLayout } from './index.js'; import { renderToString } from '../../server/node/rendering.js'; export function renderErrorPage(error) { const serialized = JSON.stringify({ message: error instanceof Error ? error.message : String(error), stack: error instanceof Error ? error.stack : undefined, name: error instanceof Error ? error.name : 'Error', }); const ErrorTemplate = ({ Head, Body, Script, }) => (_jsxs("html", { lang: "en", children: [_jsx(Head, { children: _jsx("script", { type: "module", dangerouslySetInnerHTML: { __html: `window.__RASENGAN_SSR_ERROR__ = ${serialized};`, } }) }), _jsx(Body, { children: _jsx(Script, { children: _jsx("script", { type: "module", src: "/src/index" }) }) })] })); return renderToString(_jsx(TemplateLayout, { Template: ErrorTemplate, isSpaMode: false })); }