/
aaronair
/
Test_task_rt_solution
Обзор
Документация
Войти
/
aaronair
/
Test_task_rt_solution
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
backend/src/config.ts
32 строки
1 KB
Ilikedrinkpivo
first_commit
28 май 2026, 14:51
28 май 2026, 14:51
b4498fc
Код
Авторство
О чём код?
import { z } from "zod"; const envSchema = z.object({ DATABASE_URL: z.string().min(1), S3_ENDPOINT: z.string().default("http://localhost:9000"), S3_PUBLIC_ENDPOINT: z.string().optional(), S3_ACCESS_KEY: z.string().default("minioadmin"), S3_SECRET_KEY: z.string().default("minioadmin"), S3_BUCKET: z.string().default("ai-portal-documents"), S3_REGION: z.string().default("us-east-1"), PORT: z.coerce.number().default(3000), RUN_MIGRATIONS: z .string() .optional() .transform((v) => v === "1" || v === "true"), SEED_IF_EMPTY: z .string() .optional() .transform((v) => v === "1" || v === "true"), CORS_ORIGIN: z.string().default("http://localhost:5173"), }); export type Env = z.infer<typeof envSchema>; export function loadConfig(): Env { const parsed = envSchema.safeParse(process.env); if (!parsed.success) { console.error("Invalid environment:", parsed.error.flatten().fieldErrors); throw new Error("Invalid environment configuration"); } return parsed.data; }