aboutsummaryrefslogtreecommitdiff
path: root/node_modules/@babel/preset-env/lib/debug.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/@babel/preset-env/lib/debug.js')
-rw-r--r--node_modules/@babel/preset-env/lib/debug.js91
1 files changed, 91 insertions, 0 deletions
diff --git a/node_modules/@babel/preset-env/lib/debug.js b/node_modules/@babel/preset-env/lib/debug.js
new file mode 100644
index 00000000..57bd263d
--- /dev/null
+++ b/node_modules/@babel/preset-env/lib/debug.js
@@ -0,0 +1,91 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.logUsagePolyfills = exports.logEntryPolyfills = exports.logPlugin = exports.logMessage = void 0;
+
+function _semver() {
+ const data = _interopRequireDefault(require("semver"));
+
+ _semver = function _semver() {
+ return data;
+ };
+
+ return data;
+}
+
+var _utils = require("./utils");
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+const wordEnds = size => {
+ return size > 1 ? "s" : "";
+};
+
+const logMessage = (message, context) => {
+ const pre = context ? `[${context}] ` : "";
+ const logStr = ` ${pre}${message}`;
+ console.log(logStr);
+};
+
+exports.logMessage = logMessage;
+
+const logPlugin = (item, targetVersions, list, context) => {
+ const minVersions = list[item] || {};
+ const filteredList = Object.keys(targetVersions).reduce((result, env) => {
+ const minVersion = minVersions[env];
+ const targetVersion = targetVersions[env];
+
+ if (!minVersion) {
+ result[env] = (0, _utils.prettifyVersion)(targetVersion);
+ } else {
+ const minIsUnreleased = (0, _utils.isUnreleasedVersion)(minVersion, env);
+ const targetIsUnreleased = (0, _utils.isUnreleasedVersion)(targetVersion, env);
+
+ if (!targetIsUnreleased && (minIsUnreleased || _semver().default.lt(targetVersion, (0, _utils.semverify)(minVersion)))) {
+ result[env] = (0, _utils.prettifyVersion)(targetVersion);
+ }
+ }
+
+ return result;
+ }, {});
+ const formattedTargets = JSON.stringify(filteredList).replace(/,/g, ", ").replace(/^\{"/, '{ "').replace(/"\}$/, '" }');
+ logMessage(`${item} ${formattedTargets}`, context);
+};
+
+exports.logPlugin = logPlugin;
+
+const logEntryPolyfills = (importPolyfillIncluded, polyfills, filename, onDebug) => {
+ if (!importPolyfillIncluded) {
+ console.log(`
+[${filename}] \`import '@babel/polyfill'\` was not found.`);
+ return;
+ }
+
+ if (!polyfills.size) {
+ console.log(`
+[${filename}] Based on your targets, none were added.`);
+ return;
+ }
+
+ console.log(`
+[${filename}] Replaced \`@babel/polyfill\` with the following polyfill${wordEnds(polyfills.size)}:`);
+ onDebug(polyfills);
+};
+
+exports.logEntryPolyfills = logEntryPolyfills;
+
+const logUsagePolyfills = (polyfills, filename, onDebug) => {
+ if (!polyfills.size) {
+ console.log(`
+[${filename}] Based on your code and targets, none were added.`);
+ return;
+ }
+
+ console.log(`
+[${filename}] Added following polyfill${wordEnds(polyfills.size)}:`);
+ onDebug(polyfills);
+};
+
+exports.logUsagePolyfills = logUsagePolyfills; \ No newline at end of file