From d328af0aecbe56a2662b3934575e99622de0eb7c Mon Sep 17 00:00:00 2001 From: Sven SAULEAU Date: Sat, 11 Mar 2017 20:40:23 +0100 Subject: [PATCH] feat: export env getter --- packages/babel-core/src/helpers/environment.js | 6 ++++++ packages/babel-core/src/index.js | 2 ++ .../src/transformation/file/options/build-config-chain.js | 4 +++- packages/babel-register/src/node.js | 3 ++- 4 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 packages/babel-core/src/helpers/environment.js diff --git a/packages/babel-core/src/helpers/environment.js b/packages/babel-core/src/helpers/environment.js new file mode 100644 index 0000000000..c5081fdfe0 --- /dev/null +++ b/packages/babel-core/src/helpers/environment.js @@ -0,0 +1,6 @@ +export function getEnv(defaultValue = "development") { + + return process.env.BABEL_ENV + || process.env.NODE_ENV + || defaultValue; +} diff --git a/packages/babel-core/src/index.js b/packages/babel-core/src/index.js index 1efc832d1f..939f9a4ca5 100644 --- a/packages/babel-core/src/index.js +++ b/packages/babel-core/src/index.js @@ -6,7 +6,9 @@ export { default as buildExternalHelpers } from "./tools/build-external-helpers" export { default as template } from "babel-template"; export { default as resolvePlugin } from "./helpers/resolve-plugin"; export { default as resolvePreset } from "./helpers/resolve-preset"; + export { version } from "../package"; +export { getEnv } from "./helpers/environment"; import * as util from "./util"; export { util }; diff --git a/packages/babel-core/src/transformation/file/options/build-config-chain.js b/packages/babel-core/src/transformation/file/options/build-config-chain.js index a5af4e82ba..ce754d6d64 100644 --- a/packages/babel-core/src/transformation/file/options/build-config-chain.js +++ b/packages/babel-core/src/transformation/file/options/build-config-chain.js @@ -1,3 +1,4 @@ +import * as babel from "../../../index"; import resolve from "../../../helpers/resolve"; import json5 from "json5"; import path from "path"; @@ -195,7 +196,8 @@ class ConfigChainBuilder { // env let envOpts; - const envKey = process.env.BABEL_ENV || process.env.NODE_ENV || "development"; + + const envKey = babel.getEnv(); if (options.env) { envOpts = options.env[envKey]; delete options.env; diff --git a/packages/babel-register/src/node.js b/packages/babel-register/src/node.js index a98d593bcc..229ecb3475 100644 --- a/packages/babel-register/src/node.js +++ b/packages/babel-register/src/node.js @@ -56,7 +56,8 @@ function compile(filename) { let cacheKey = `${JSON.stringify(opts)}:${babel.version}`; - const env = process.env.BABEL_ENV || process.env.NODE_ENV; + const env = babel.getEnv(false); + if (env) cacheKey += `:${env}`; if (cache) {