twitch-drops-watcher
Version:
Script to periodically scan for Twitch Drops for a given game.
36 lines (35 loc) • 1.43 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const dotenv_1 = __importDefault(require("dotenv"));
const path_1 = __importDefault(require("path"));
function getEnvVariables(envPath) {
dotenv_1.default.config({ path: path_1.default.resolve(envPath) });
const vars = {
TWITCH_CLIENT_ID: process.env.TWITCH_CLIENT_ID,
TWITCH_CLIENT_SECRET: process.env.TWITCH_CLIENT_SECRET,
GMAIL_ADDRESS: process.env.GMAIL_ADDRESS,
GOOGLE_OAUTH2_CLIENT_ID: process.env.GOOGLE_OAUTH2_CLIENT_ID,
GOOGLE_OAUTH2_CLIENT_SECRET: process.env.GOOGLE_OAUTH2_CLIENT_SECRET,
GOOGLE_OAUTH2_REFRESH_TOKEN: process.env.GOOGLE_OAUTH2_REFRESH_TOKEN,
};
Object.entries(vars).forEach(([key, val]) => {
if (val === undefined)
throw new Error(`Error: ${key} is not defined!`);
});
return {
twitch: {
clientId: vars.TWITCH_CLIENT_ID,
clientSecret: vars.TWITCH_CLIENT_SECRET,
},
google: {
gmailAddress: vars.GMAIL_ADDRESS,
clientId: vars.GOOGLE_OAUTH2_CLIENT_ID,
clientSecret: vars.GOOGLE_OAUTH2_CLIENT_SECRET,
refreshToken: vars.GOOGLE_OAUTH2_REFRESH_TOKEN,
},
};
}
exports.default = getEnvVariables;