mirror of
https://origin.cursor.com/mrdevmx/panels.git
synced 2026-10-09 17:33:16 +00:00
35 lines
1.7 KiB
TypeScript
35 lines
1.7 KiB
TypeScript
import { join, dirname } from "node:path";
|
|
import { fileURLToPath } from "node:url";
|
|
|
|
const here = dirname(fileURLToPath(import.meta.url));
|
|
export const ROOT = join(here, "..");
|
|
export const DATA_DIR = join(ROOT, "data");
|
|
export const DB_PATH = join(DATA_DIR, "app.db");
|
|
export const PLATFORM_DB_PATH = join(DATA_DIR, "platform.db");
|
|
export const EXPEDIENTES_DIR = join(DATA_DIR, "expedientes");
|
|
export const PDFS_DIR = join(DATA_DIR, "pdfs");
|
|
export const LOGOS_DIR = join(DATA_DIR, "logos");
|
|
export const PROJECTS_DIR = join(DATA_DIR, "proyectos");
|
|
export const COMPANIES_DIR = join(DATA_DIR, "empresas");
|
|
|
|
export const config = {
|
|
port: Number(Deno.env.get("PORT") ?? "8000"),
|
|
sessionSecret: Deno.env.get("SESSION_SECRET") ?? "dev-session-secret-change-me",
|
|
apiKey: Deno.env.get("API_KEY") ?? "",
|
|
docsKeyHex: Deno.env.get("DOCS_KEY") ??
|
|
"0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
|
|
/** Solo vía env. Compose exige SEED_PASSWORD; no hay default en código. */
|
|
seedPassword: Deno.env.get("SEED_PASSWORD") ?? "",
|
|
vcardBase: Deno.env.get("VCARD_BASE") ?? "https://vcard.arctec.com.mx?info=",
|
|
panelLoginUrl: Deno.env.get("PANEL_LOGIN_URL") ?? "http://localhost:3000/login",
|
|
smtpHost: (Deno.env.get("SMTP_HOST") ?? "").trim(),
|
|
smtpPort: Number(Deno.env.get("SMTP_PORT") ?? "587"),
|
|
smtpUser: (Deno.env.get("SMTP_USER") ?? "").trim(),
|
|
smtpPass: Deno.env.get("SMTP_PASS") ?? "",
|
|
/** Compose puede pasar SMTP_FROM vacío; no pisar el default. */
|
|
smtpFrom: (Deno.env.get("SMTP_FROM") ?? "").trim() || "PANELS <noreply@panel.local>",
|
|
/** En HTTPS (Coolify) poner COOKIE_SECURE=true */
|
|
cookieSecure: ["1", "true", "yes"].includes(
|
|
(Deno.env.get("COOKIE_SECURE") ?? "").toLowerCase(),
|
|
),
|
|
};
|