one
Version:
One is a new React Framework that makes Vite serve both native and web.
81 lines (80 loc) • 2.67 kB
JavaScript
import { parentPort } from "worker_threads";
import { workerImport } from "../utils/workerImport.native.js";
function _instanceof(left, right) {
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
return !!right[Symbol.hasInstance](left);
} else {
return left instanceof right;
}
}
if (!parentPort) {
console.error("Must be run as a worker thread");
process.exit(1);
}
process.env.VXRN_REACT_19 = "1";
process.env.VITE_ENVIRONMENT = "ssr";
if (!process.env.NODE_ENV) {
process.env.NODE_ENV = "production";
}
var buildPageFn = null;
var runWithAsyncLocalContextFn = null;
var initialized = false;
async function ensureImports() {
if (!buildPageFn) {
var mod = await workerImport("./buildPage", import.meta.url);
buildPageFn = mod.buildPage;
}
if (!runWithAsyncLocalContextFn) {
var mod1 = await workerImport("../vite/one-server-only", import.meta.url);
runWithAsyncLocalContextFn = mod1.runWithAsyncLocalContext;
}
return {
buildPage: buildPageFn,
runWithAsyncLocalContext: runWithAsyncLocalContextFn
};
}
async function initializeWorker(oneOptions) {
if (initialized) return;
if (!oneOptions) {
throw new Error("Worker must receive oneOptions from main thread");
}
globalThis["__vxrnPluginConfig__"] = oneOptions;
initialized = true;
}
parentPort.on("message", async function (msg) {
if (msg.type === "init") {
await initializeWorker(msg.oneOptions);
parentPort.postMessage({
type: "init-done",
id: msg.id
});
return;
}
if (msg.type === "build") {
try {
var {
buildPage,
runWithAsyncLocalContext
} = await ensureImports();
var result = await runWithAsyncLocalContext(async function () {
return 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.layoutCSS, 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: _instanceof(err, Error) ? err.message : String(err),
stack: _instanceof(err, Error) ? err.stack : void 0
});
}
}
});
parentPort.postMessage({
type: "ready"
});
//# sourceMappingURL=buildPageWorker.native.js.map