18 lines
543 B
JavaScript
18 lines
543 B
JavaScript
import '@dotenvx/dotenvx/config';
|
|
import { z } from 'zod';
|
|
|
|
export const EnvSchema = z.object({
|
|
APIFY_TOKEN: z.string().min(1, "APIFY_TOKEN is required"),
|
|
ORIGIN: z.string().min(1, "ORIGIN is required"),
|
|
WHITELIST: z.string().min(1, "WHITELIST is required"), // raw comma-separated string
|
|
});
|
|
|
|
// Parse raw env first
|
|
const parsed = EnvSchema.parse(process.env);
|
|
|
|
// Return env object with WHITELIST converted to Set
|
|
export const env = {
|
|
...parsed,
|
|
WHITELIST: new Set(parsed.WHITELIST.split(',').map(u => u.trim().toLowerCase())),
|
|
};
|