From 3d0c5d2afc4ef02412f0c67293dbc9d80a97187a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Wed, 4 Dec 2019 01:09:14 +0100 Subject: [PATCH] Do not transpile typeof helper with itself in babel/runtime (#10788) * Do not transpile typeof helper with itself in babel/runtime * Nits * Remove console.log --- .../package.json | 1 + .../scripts/build-dist.js | 20 +++++++++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/packages/babel-plugin-transform-runtime/package.json b/packages/babel-plugin-transform-runtime/package.json index f73c1269fcb8..2c7415ae94ad 100644 --- a/packages/babel-plugin-transform-runtime/package.json +++ b/packages/babel-plugin-transform-runtime/package.json @@ -24,6 +24,7 @@ "@babel/core": "^7.7.4", "@babel/helper-plugin-test-runner": "^7.7.4", "@babel/helpers": "^7.7.4", + "@babel/plugin-transform-typeof-symbol": "^7.7.4", "@babel/preset-env": "^7.7.4", "@babel/runtime": "^7.7.4", "@babel/template": "^7.7.4", diff --git a/packages/babel-plugin-transform-runtime/scripts/build-dist.js b/packages/babel-plugin-transform-runtime/scripts/build-dist.js index e36ef0c68b0a..a107bbea1fa2 100644 --- a/packages/babel-plugin-transform-runtime/scripts/build-dist.js +++ b/packages/babel-plugin-transform-runtime/scripts/build-dist.js @@ -9,6 +9,7 @@ const t = require("@babel/types"); const transformRuntime = require("../"); +const runtimeVersion = require("@babel/runtime/package.json").version; const corejs2Definitions = require("../lib/runtime-corejs2-definitions").default(); const corejs3Definitions = require("../lib/runtime-corejs3-definitions").default(); @@ -151,15 +152,30 @@ function buildHelper( tree.body.push(...helper.nodes); return babel.transformFromAst(tree, null, { - presets: [[require("@babel/preset-env"), { modules: false }]], + filename: helperFilename, + presets: [ + [ + "@babel/preset-env", + { modules: false, exclude: ["@babel/plugin-transform-typeof-symbol"] }, + ], + ], plugins: [ - [transformRuntime, { corejs, useESModules: esm }], + [ + transformRuntime, + { corejs, useESModules: esm, version: runtimeVersion }, + ], buildRuntimeRewritePlugin( runtimeName, path.relative(path.dirname(helperFilename), pkgDirname), helperName ), ], + overrides: [ + { + exclude: /typeof/, + plugins: ["@babel/plugin-transform-typeof-symbol"], + }, + ], }).code; }