UNPKG

envolution

Version:

TypeScript-first environment configuration with Zod validation, .env support, hot reloading, and startup validation. Zero-config setup - just install and use! Perfect for Node.js, AWS Lambda, and modern TypeScript applications.

28 lines 1.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SecurityEnvironmentSchema = void 0; const zod_1 = require("zod"); exports.SecurityEnvironmentSchema = zod_1.z.object({ JWT_SECRET: zod_1.z.string().min(32, 'JWT secret must be at least 32 characters').optional(), JWT_EXPIRES_IN: zod_1.z.string().default('24h'), JWT_ISSUER: zod_1.z.string().optional(), API_KEY: zod_1.z.string().min(1).optional(), API_SECRET: zod_1.z.string().min(1).optional(), ENCRYPTION_KEY: zod_1.z.string().min(32).optional(), ENCRYPTION_ALGORITHM: zod_1.z.enum(['AES-256-GCM', 'AES-256-CBC']).default('AES-256-GCM'), CORS_ORIGIN: zod_1.z.string().optional(), CORS_CREDENTIALS: zod_1.z .string() .transform((val) => val === 'true') .pipe(zod_1.z.boolean()) .default('false'), RATE_LIMIT_WINDOW: zod_1.z.string().transform(Number).pipe(zod_1.z.number().positive()).default('900000'), RATE_LIMIT_MAX_REQUESTS: zod_1.z.string().transform(Number).pipe(zod_1.z.number().positive()).default('100'), SECURITY_HEADERS_ENABLED: zod_1.z .string() .transform((val) => val === 'true') .pipe(zod_1.z.boolean()) .default('true'), HSTS_MAX_AGE: zod_1.z.string().transform(Number).pipe(zod_1.z.number().positive()).default('31536000'), }); //# sourceMappingURL=security.js.map