Executando verificação de segurança...
Em resposta a [Não disponível]
2

Porque nao fazer mais simples?

function checkEnvVariables(variables) {
  for (const variable of variables) {
    if (!process.env[variable]) {
      console.error('missing: ', variable)
    }
  }
}

const requiredEnvVariables = ['DATABASE_URL', 'API_KEY', 'SECRET_KEY'];

checkEnvVariables(requiredEnvVariables)
Carregando publicação patrocinada...
1

Concordo que ficou mais complicado do que o necessário.

Eu poderia checar assim, mas acho que perco em ter q fazer o trabalho dobrado, de verificar e depois obter elas, quando eu obtenho doprocess.env eu não tenho clareza de que chaves existem ali, acho que o uso do Enum fez eu ter um ganho nessa parte.

1

Você pode entao fazer algo assim:

class enviroments {
    get url () {
        return this.getEnv("url")
    }
    getEnv(key) {
        if (!process.env[key]) throw Error(`Envirment var error ${key}`)
        return process.env[key]
    }
}

console.log(enviroments.url)