one
Version:
One is a new React Framework that makes Vite serve both native and web.
60 lines (59 loc) • 2.46 kB
JavaScript
import { parentPort } from "node:worker_threads";
import { workerImport } from "../utils/workerImport.mjs";
parentPort || (console.error("Must be run as a worker thread"), process.exit(1));
process.env.VXRN_REACT_19 = "1";
process.env.VITE_ENVIRONMENT = "ssr";
process.env.NODE_ENV || (process.env.NODE_ENV = "production");
let buildPageFn = null,
runWithAsyncLocalContextFn = null,
loadUserOneOptionsFn = null,
initialized = !1;
async function ensureImports() {
return buildPageFn || (buildPageFn = (await workerImport("./buildPage", import.meta.url)).buildPage), runWithAsyncLocalContextFn || (runWithAsyncLocalContextFn = (await workerImport("../vite/one-server-only", import.meta.url)).runWithAsyncLocalContext), loadUserOneOptionsFn || (loadUserOneOptionsFn = (await workerImport("../vite/loadConfig", import.meta.url)).loadUserOneOptions), {
buildPage: buildPageFn,
runWithAsyncLocalContext: runWithAsyncLocalContextFn,
loadUserOneOptions: loadUserOneOptionsFn
};
}
async function initializeWorker() {
if (initialized) return;
const {
loadUserOneOptions
} = await ensureImports(),
{
oneOptions
} = await loadUserOneOptions("build", !0);
globalThis.__vxrnPluginConfig__ = oneOptions, initialized = !0;
}
parentPort.on("message", async msg => {
if (msg.type === "init") {
await initializeWorker(), parentPort.postMessage({
type: "init-done",
id: msg.id
});
return;
}
if (msg.type === "build") try {
const {
buildPage,
runWithAsyncLocalContext
} = await ensureImports(),
result = await runWithAsyncLocalContext(async () => await buildPage(msg.args.serverEntry, msg.args.path, msg.args.relativeId, msg.args.params, msg.args.foundRoute, msg.args.clientManifestEntry, msg.args.staticDir, msg.args.clientDir, msg.args.builtMiddlewares, msg.args.serverJsPath, msg.args.preloads, msg.args.allCSS, msg.args.routePreloads, msg.args.allCSSContents, msg.args.criticalPreloads, msg.args.deferredPreloads, msg.args.useAfterLCP, msg.args.useAfterLCPAggressive));
parentPort.postMessage({
type: "done",
id: msg.id,
result
});
} catch (err) {
parentPort.postMessage({
type: "error",
id: msg.id,
error: err instanceof Error ? err.message : String(err),
stack: err instanceof Error ? err.stack : void 0
});
}
});
parentPort.postMessage({
type: "ready"
});
//# sourceMappingURL=buildPageWorker.mjs.map