From 5966016853369146b27ac5781808cb51d65c887f Mon Sep 17 00:00:00 2001 From: Saad Jutt Date: Thu, 4 Aug 2022 03:32:04 +0500 Subject: [PATCH] fix(env): check added for not providing WHITELIST --- api/src/utils/verifyEnvVariables.ts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/api/src/utils/verifyEnvVariables.ts b/api/src/utils/verifyEnvVariables.ts index 84aa607..b0a40b2 100644 --- a/api/src/utils/verifyEnvVariables.ts +++ b/api/src/utils/verifyEnvVariables.ts @@ -125,8 +125,27 @@ const verifyCORS = (): string[] => { if (CORS) { const corsTypes = Object.values(CorsType) + if (!corsTypes.includes(CORS as CorsType)) errors.push(`- CORS '${CORS}'\n - valid options ${corsTypes}`) + + if (CORS === CorsType.ENABLED) { + const { WHITELIST } = process.env + + const urls = WHITELIST?.trim() + .split(' ') + .filter((url) => !!url) + if (urls?.length) { + urls.forEach((url) => { + if (!url.startsWith('http://') && !url.startsWith('https://')) + errors.push( + `- CORS '${CORS}'\n - provided WHITELIST ${url} is not valid` + ) + }) + } else { + errors.push(`- CORS '${CORS}'\n - provide at least one WHITELIST URL`) + } + } } else { const { MODE } = process.env process.env.CORS =