UNPKG

@vitejs/plugin-rsc

Version:
64 lines (62 loc) 1.94 kB
import "./dist-BRSdGcl7.js"; import { a as toReferenceValidationVirtual, i as toCssVirtual } from "./shared-AtH_QTi7.js"; import "./shared-DEpnONZf.js"; import { n as setRequireModule, t as createServerConsumerManifest } from "./ssr-CDPTWY93.js"; import { i as findSourceMapURL, n as createFromReadableStream, r as createServerReference, t as callServer } from "./ssr-B-bLmlbm.js"; import * as clientReferences from "virtual:vite-rsc/client-references"; import assetsManifest from "virtual:vite-rsc/assets-manifest"; import * as ReactDOM from "react-dom"; //#region src/ssr.tsx initialize(); function initialize() { setRequireModule({ load: async (id) => { if (!import.meta.env.__vite_rsc_build__) { await import( /* @vite-ignore */ "/@id/__x00__" + toReferenceValidationVirtual({ id, type: "client" }) ); return wrapResourceProxy(await import( /* @vite-ignore */ id ), { js: [], css: (await import( /* @vite-ignore */ "/@id/__x00__" + toCssVirtual({ id, type: "ssr" }) )).default }); } else { const import_ = clientReferences.default[id]; if (!import_) throw new Error(`client reference not found '${id}'`); const deps = assetsManifest.clientReferenceDeps[id]; if (deps) preloadDeps(deps); return wrapResourceProxy(await import_(), deps); } } }); } function wrapResourceProxy(mod, deps) { return new Proxy(mod, { get(target, p, receiver) { if (p in mod) { if (deps) preloadDeps(deps); } return Reflect.get(target, p, receiver); } }); } function preloadDeps(deps) { for (const href of deps.js) ReactDOM.preloadModule(href, { as: "script", crossOrigin: "" }); for (const href of deps.css) ReactDOM.preinit(href, { as: "style", precedence: "vite-rsc/client-reference" }); } //#endregion export { callServer, createFromReadableStream, createServerConsumerManifest, createServerReference, findSourceMapURL, setRequireModule };