UNPKG

@jovian/type-tools

Version:

TypeTools is a Typescript library for providing extensible tooling runtime validations and type helpers.

37 lines 1.67 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.envVar = exports.getApplicationProfile = exports.setApplicationProfile = exports.APP = exports.globalRoot = void 0; var env_util_1 = require("../util/env.util"); exports.globalRoot = env_util_1.isNodeJs ? process : window; var applicationTarget = { PROFILE: (env_util_1.isNodeJs && process.env.APPLICATION_PROFILE) ? process.env.APPLICATION_PROFILE : 'test', }; if (!exports.globalRoot.APP) { exports.globalRoot.APP = applicationTarget; } exports.APP = new Proxy(exports.globalRoot.APP, {}); function setApplicationProfile(newProfile) { exports.globalRoot.APP.PROFILE = newProfile; } exports.setApplicationProfile = setApplicationProfile; function getApplicationProfile() { return exports.globalRoot.APP.PROFILE; } exports.getApplicationProfile = getApplicationProfile; function envVar(envVar, defaultValue) { if (defaultValue === null || defaultValue === undefined) { return process.env[envVar] ? process.env[envVar] : defaultValue; } if (typeof defaultValue === 'number') { return process.env[envVar] ? parseInt(process.env[envVar], 10) : defaultValue; } if (typeof defaultValue === 'boolean') { return process.env[envVar] ? (['true', 'yes', '1', 'on', 'enable', 'enabled'].indexOf(process.env[envVar].toLocaleLowerCase()) >= 0) : defaultValue; } else if (typeof defaultValue === 'object') { return process.env[envVar] ? JSON.parse(process.env[envVar]) : defaultValue; } return process.env[envVar] ? process.env[envVar] : defaultValue; } exports.envVar = envVar; //# sourceMappingURL=env.profile.js.map