one
Version:
One is a new React Framework that makes Vite serve both native and web.
82 lines • 3.12 kB
JavaScript
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf,
__hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all) __defProp(target, name, {
get: all[name],
enumerable: !0
});
},
__copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
get: () => from[key],
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
});
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
value: mod,
enumerable: !0
}) : target, mod)),
__toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
value: !0
}), mod);
var serve_exports = {};
__export(serve_exports, {
serve: () => serve
});
module.exports = __toCommonJS(serve_exports);
var import_polyfills_server = require("./polyfills-server.cjs"),
import_fs_extra = __toESM(require("fs-extra"), 1),
import_setServerGlobals = require("./server/setServerGlobals.cjs"),
import_setupBuildOptions = require("./server/setupBuildOptions.cjs"),
import_ensureExists = require("./utils/ensureExists.cjs");
process.on("uncaughtException", err => {
console.error("[one] Uncaught exception", err?.stack || err);
});
async function serve(args = {}) {
const buildInfo = await import_fs_extra.default.readJSON("dist/buildInfo.json"),
{
oneOptions
} = buildInfo;
(0, import_setServerGlobals.setServerGlobals)(), (0, import_setupBuildOptions.setupBuildInfo)(buildInfo), (0, import_ensureExists.ensureExists)(oneOptions);
const {
labelProcess
} = await import("./cli/label-process"),
{
removeUndefined
} = await import("./utils/removeUndefined"),
{
loadEnv,
serve: vxrnServe,
serveStaticAssets
} = await import("vxrn/serve"),
{
oneServe
} = await import("./server/oneServe");
return labelProcess("serve"), args.loadEnv && (await loadEnv("production")), await vxrnServe({
app: args.app,
// fallback to one plugin
...oneOptions.server,
// override with any flags given to cli
...removeUndefined({
port: args.port ? +args.port : void 0,
host: args.host,
compress: args.compress
}),
async beforeRegisterRoutes(options, app) {
await oneServe(oneOptions, buildInfo, app, {
serveStaticAssets
});
},
async afterRegisterRoutes(options, app) {}
});
}