Files
docmost_custom/server/src/environment/environment.validation.ts
T

21 lines
566 B
TypeScript

import { IsString, IsUrl, validateSync } from 'class-validator';
import { plainToInstance } from 'class-transformer';
export class EnvironmentVariables {
@IsString()
NODE_ENV: string;
@IsUrl({ protocols: ['postgres', 'postgresql'], require_tld: false })
DATABASE_URL: string;
}
export function validate(config: Record<string, any>) {
const validatedConfig = plainToInstance(EnvironmentVariables, config);
const errors = validateSync(validatedConfig);
if (errors.length > 0) {
throw new Error(errors.toString());
}
return validatedConfig;
}