Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 4s
Build & Deploy / 🧪 QA (push) Failing after 42s
Build & Deploy / 🏗️ Build (push) Failing after 2m14s
Build & Deploy / 🚀 Deploy (push) Has been skipped
Build & Deploy / 🩺 Health Check (push) Has been skipped
Build & Deploy / 🔔 Notify (push) Successful in 2s
43 lines
953 B
TypeScript
43 lines
953 B
TypeScript
import { z } from "zod";
|
|
import {
|
|
validateMintelEnv,
|
|
mintelEnvSchema,
|
|
withMintelRefinements,
|
|
} from "@mintel/next-utils";
|
|
|
|
/**
|
|
* Environment variable schema.
|
|
* Extends the default Mintel environment schema which already includes:
|
|
* - Directus (URL, TOKEN, INTERNAL_URL, etc.)
|
|
* - Mail (HOST, PORT, etc.)
|
|
* - Gotify
|
|
* - Logging
|
|
* - Analytics
|
|
*/
|
|
const envExtension = {
|
|
// Project specific overrides or additions
|
|
AUTH_COOKIE_NAME: z.string().default("mb_gatekeeper_session"),
|
|
|
|
INFRA_DIRECTUS_URL: z.string().url().optional(),
|
|
INFRA_DIRECTUS_TOKEN: z.string().optional(),
|
|
};
|
|
|
|
/**
|
|
* Full schema including Mintel base and refinements
|
|
*/
|
|
export const envSchema = withMintelRefinements(
|
|
z.object(mintelEnvSchema).extend(envExtension),
|
|
);
|
|
|
|
/**
|
|
* Validated environment object.
|
|
*/
|
|
export const env = validateMintelEnv(envExtension);
|
|
|
|
/**
|
|
* For legacy compatibility with existing code.
|
|
*/
|
|
export function getRawEnv() {
|
|
return env;
|
|
}
|