UNPKG

@naturalcycles/nodejs-lib

Version:
33 lines 936 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fs = require("fs-extra"); require("dotenv/config"); // ensure .env is read before requiring keys /* type ObjectWithKeysOf<T extends readonly string[]> = { [k in ValuesOf<T>]: string } */ /** * @example * * const {a, b} = requreEnvKeys(['a', 'b']) * * Will throw if any of the passed keys is not defined. */ function requireEnvKeys(...keys) { return keys.reduce((r, k) => { const v = process.env[k]; if (!v) throw new Error(`${k} env variable is required, but missing`); r[k] = v; return r; }, {}); } exports.requireEnvKeys = requireEnvKeys; async function requireFileToExist(filePath) { if (!(await fs.pathExists(filePath))) { throw new Error(`Required file should exist: ${filePath}`); } } exports.requireFileToExist = requireFileToExist; //# sourceMappingURL=env.util.js.map