2026-04-20 11:39:32 +01:00
|
|
|
import { loadEnvConfig } from "@next/env";
|
|
|
|
|
|
|
|
|
|
loadEnvConfig(process.cwd());
|
|
|
|
|
|
2026-04-20 17:02:34 +01:00
|
|
|
function getRequiredEnv(name: string): string | null | undefined {
|
|
|
|
|
return process.env[name];
|
2026-04-20 11:39:32 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function getOptionalEnv(name: string): string | undefined {
|
|
|
|
|
const value = process.env[name];
|
|
|
|
|
return value && value.trim().length > 0 ? value : undefined;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export const env = {
|
2026-04-20 22:45:10 +01:00
|
|
|
APP_URL: getRequiredEnv("APP_URL") as string,
|
|
|
|
|
KEYCLOAK_BASE_URL: getRequiredEnv("KEYCLOAK_BASE_URL") as string,
|
|
|
|
|
KEYCLOAK_REALM: getRequiredEnv("KEYCLOAK_REALM") as string,
|
|
|
|
|
KEYCLOAK_CLIENT_ID: getRequiredEnv("KEYCLOAK_CLIENT_ID") as string,
|
|
|
|
|
KEYCLOAK_CLIENT_SECRET: getRequiredEnv("KEYCLOAK_CLIENT_SECRET") as string,
|
|
|
|
|
API_URL: getRequiredEnv("API_URL") as string,
|
|
|
|
|
COOKIE_DOMAIN: getOptionalEnv("COOKIE_DOMAIN") as string,
|
2026-04-20 11:39:32 +01:00
|
|
|
};
|