life
Version:
Life.js is the first fullstack framework to build agentic web applications. It is minimal, extensible, and typesafe. Well, everything you love.
49 lines (47 loc) • 1.44 kB
JavaScript
import {
__name
} from "../chunk-2D3UJWOA.mjs";
// cli/utils/load-env-vars.ts
import { existsSync, readdirSync } from "fs";
import { dirname, join } from "path";
import { config } from "dotenv";
var ENV_NAMES = ["development", "production", "test", "staging", "preview", "ci"];
var ENV_FILE_PATTERNS = [
/^\.env$/,
// .env
/^\.env\.local$/,
// .env.local
new RegExp(`^\\.env\\.(${ENV_NAMES.join("|")})$`),
// .env.development, .env.production, etc.
new RegExp(`^\\.env\\.(${ENV_NAMES.join("|")})\\.local$`)
// .env.development.local, etc.
];
function loadEnvVars(projectDirectory = process.cwd()) {
const dirs = [
dirname(dirname(projectDirectory)),
// grandparent
dirname(projectDirectory),
// parent
projectDirectory
// current
];
const envFiles = [];
for (const dir of dirs) {
if (!existsSync(dir)) continue;
try {
const files = readdirSync(dir).filter((file) => ENV_FILE_PATTERNS.some((pattern) => pattern.test(file))).sort().map((file) => join(dir, file));
envFiles.push(...files);
} catch {
}
}
if (envFiles.length > 0) config({ path: envFiles, override: true, quiet: true });
}
__name(loadEnvVars, "loadEnvVars");
// cli/index.ts
loadEnvVars(process.cwd());
import("../run-JA54YQQ2.mjs").catch((error) => {
console.error("Failed to start CLI:", error);
process.exit(1);
});
//# sourceMappingURL=index.mjs.map