Files
SnowLuma/.pnpm-store/v11/files/ec/d20075cf1592aaf271b437645b2b194b39b1841fac16812bb102ee209a52a68c17d580fbc7a0f45284ea0aae655afff020338cb4ee85c0105b6f84f572403b
TanTan 2a69b23b47
Dev Build / cleanup (push) Canceled after 0s
Dev Build / typecheck (push) Canceled after 0s
Dev Build / build (linux-arm64, ubuntu-24.04-arm, linux-arm64) (push) Canceled after 0s
Dev Build / build (linux-x64, ubuntu-latest, linux-x64) (push) Canceled after 0s
Dev Build / build (win-x64, windows-latest, win32-x64) (push) Canceled after 0s
Dev Build / dispatch-dev-docker (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:27:07 +08:00

38 lines
1.5 KiB
Plaintext

import { renderChildren } from "../base.js";
import { renderToReadableStream as renderToReadableStream$1 } from "../streaming.js";
import dom_default from "./index.js";
//#region src/jsx/dom/server.ts
const prepareRoot = (element) => typeof element === "string" || Array.isArray(element) ? renderChildren([element]) : element;
/**
* Render JSX element to string.
* @param element JSX element to render.
* @param options Options for rendering.
* @returns Rendered string.
*/
const renderToString = (element, options = {}) => {
if (Object.keys(options).length > 0) console.warn("options are not supported yet");
element = prepareRoot(element);
const res = element instanceof Promise ? element : element?.toString() ?? "";
if (typeof res !== "string") throw new Error("Async component is not supported in renderToString");
return res;
};
/**
* Render JSX element to readable stream.
* @param element JSX element to render.
* @param options Options for rendering.
* @returns Rendered readable stream.
*/
const renderToReadableStream = async (element, options = {}) => {
if (Object.keys(options).some((key) => key !== "onError")) console.warn("options are not supported yet, except onError");
element = prepareRoot(element);
if (!element || typeof element !== "object") element = element?.toString() ?? "";
return renderToReadableStream$1(element, options.onError);
};
var server_default = {
renderToString,
renderToReadableStream,
version: dom_default
};
//#endregion
export { server_default as default, renderToReadableStream, renderToString, dom_default as version };