one
Version:
One is a new React Framework that makes Vite serve both native and web.
77 lines • 2.97 kB
JavaScript
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all) __defProp(target, name, {
get: all[name],
enumerable: true
});
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
get: () => from[key],
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
});
}
return to;
};
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
value: true
}), mod);
var generateRoutes_exports = {};
__export(generateRoutes_exports, {
run: () => run
});
module.exports = __toCommonJS(generateRoutes_exports);
var import_node_fs = require("node:fs");
var import_node_path = require("node:path");
var import_generateRouteTypes = require("../typed-routes/generateRouteTypes.cjs");
var import_getRouterRootFromOneOptions = require("../utils/getRouterRootFromOneOptions.cjs");
var import_loadConfig = require("../vite/loadConfig.cjs");
async function run(args = {}) {
const cwd = process.cwd();
let oneOptions;
let routerRoot;
let ignoredRouteFiles;
try {
const originalStderrWrite = process.stderr.write;
let stderrBuffer = "";
process.stderr.write = chunk => {
stderrBuffer += chunk;
return true;
};
try {
const loaded = await (0, import_loadConfig.loadUserOneOptions)("build");
oneOptions = loaded.oneOptions;
routerRoot = args.appDir || (0, import_getRouterRootFromOneOptions.getRouterRootFromOneOptions)(oneOptions);
ignoredRouteFiles = oneOptions.router?.ignoredRouteFiles;
} finally {
process.stderr.write = originalStderrWrite;
}
} catch (error) {
routerRoot = args.appDir || "app";
}
const appDir = (0, import_node_path.join)(cwd, routerRoot);
if (!(0, import_node_fs.existsSync)(appDir)) {
console.error(`Error: App directory not found at ${appDir}`);
console.error("You can specify a custom directory with: npx one generate-routes --appDir=<path>");
process.exit(1);
}
const outFile = (0, import_node_path.join)(appDir, "routes.d.ts");
let typedRoutesMode;
if (args.typed) {
if (args.typed === "type" || args.typed === "runtime") {
typedRoutesMode = args.typed;
} else {
console.error(`Error: Invalid --typed value "${args.typed}". Must be "type" or "runtime"`);
process.exit(1);
}
} else if (oneOptions) {
typedRoutesMode = oneOptions.router?.experimental?.typedRoutesGeneration || void 0;
}
if (typedRoutesMode) {} else if (!args.typed) {}
await (0, import_generateRouteTypes.generateRouteTypes)(outFile, routerRoot, ignoredRouteFiles, typedRoutesMode);
if (typedRoutesMode) {}
}