UNPKG

@holographxyz/environment

Version:
55 lines 2.13 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.setEnvironment = exports.getEnvironment = exports.Environment = void 0; const fs_1 = __importDefault(require("fs")); const dotenv_1 = __importDefault(require("dotenv")); dotenv_1.default.config(); var Environment; (function (Environment) { Environment["localhost"] = "localhost"; Environment["experimental"] = "experimental"; Environment["develop"] = "develop"; Environment["testnet"] = "testnet"; Environment["mainnet"] = "mainnet"; })(Environment || (Environment = {})); exports.Environment = Environment; const getEnvironment = () => { if (global.__companionNetwork !== undefined && global.__companionNetwork !== '') { return global.__companionNetwork; } let environment = Environment.testnet; const acceptableBranches = new Set(Object.values(Environment)); const head = './.git/HEAD'; const env = process.env.ABI_ENVIRONMENT || process.env.HOLOGRAPH_ENVIRONMENT || ''; if (env === '') { if (fs_1.default.existsSync(head)) { const contents = fs_1.default.readFileSync('./.git/HEAD', 'utf8'); const branch = contents.trim().split('ref: refs/heads/')[1]; if (acceptableBranches.has(branch)) { environment = Environment[branch]; } } } else if (acceptableBranches.has(env)) { environment = Environment[env]; } global.__environment = environment; return environment; }; exports.getEnvironment = getEnvironment; const setEnvironment = (env) => { let environment = Environment.testnet; if (env !== undefined) { const acceptableBranches = new Set(Object.values(Environment)); if (acceptableBranches.has(env)) { environment = Environment[env]; } } global.__environment = environment; return environment; }; exports.setEnvironment = setEnvironment; //# sourceMappingURL=environment.js.map