config.ts
Raw
1import path from "node:path";
2
3//env configs
4export const OWNER_DISPLAY_NAME = process.env.OWNER_DISPLAY_NAME ?? "Admin";
5export const INLINE_MAX_BYTES =
6 parseInt(process.env.INLINE_MAX_BYTES ?? "", 10) || 524288;
7export const MAX_UPLOAD_BYTES =
8 parseInt(process.env.MAX_UPLOAD_BYTES ?? "", 10) || 10 * 1024 * 1024;
9export const MAX_USER_UPLOAD_BYTES =
10 parseInt(process.env.MAX_USER_UPLOAD_BYTES ?? "", 10) || 2 * 1024 * 1024;
11export const TRUSTED_PROXY = !!process.env.TRUSTED_PROXY;
12export const RATE_LIMIT_DISABLED = !!process.env.RATE_LIMIT_DISABLED;
13export const SSH_DISABLED = !!process.env.SSH_DISABLED;
14export const PORT = parseInt(process.env.PORT ?? "", 10) || 3000;
15export const SSH_PORT = parseInt(process.env.SSH_PORT ?? "", 10) || 2222;
16export const REGISTRATION_TYPE = (process.env.REGISTRATION_TYPE ?? "enabled") as
17 | "enabled"
18 | "disabled"
19 | "queue";
20export const REGISTER_QUESTION = process.env.REGISTER_QUESTION ?? "";
21export const BASE_URL = process.env.BASE_URL ?? `http://localhost:${PORT}`;
22export const DATA_DIR = path.resolve(process.env.DATA_DIR ?? "./data");
23export const HIGHLIGHT_WORKERS =
24 parseInt(process.env.HIGHLIGHT_WORKERS ?? "", 10) || 4;
25export const COMMITTER_NAME = process.env.COMMITTER_NAME ?? OWNER_DISPLAY_NAME;
26export const COMMITTER_EMAIL =
27 process.env.COMMITTER_EMAIL ??
28 `${OWNER_DISPLAY_NAME}@${new URL(BASE_URL).hostname}`;
29export const EXTRA_ALLOWED_SIGNERS_PATH =
30 process.env.EXTRA_ALLOWED_SIGNERS_PATH ?? null;
31