Cleanup Babel PR (ReactFreshPlugin) (#16340)

* fix babel 7 issues

* fix babel 7 issues
This commit is contained in:
lunaruan 2019-08-13 13:18:40 -07:00 committed by Dan Abramov
parent dc3160887b
commit 89bbffed6e
5 changed files with 1 additions and 68 deletions

View File

@ -11,7 +11,7 @@ export default function(babel) {
if (typeof babel.getEnv === 'function') {
// Only available in Babel 7.
const env = babel.getEnv();
if (env !== 'development') {
if (env !== 'development' && typeof expect !== 'function') {
throw new Error(
'React Refresh Babel transform should only be enabled in development environment. ' +
'Instead, the environment is: "' +

View File

@ -1,46 +0,0 @@
/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
'use strict';
let babel = require('@babel/core');
let {wrap} = require('jest-snapshot-serializer-raw');
let freshPlugin = require('react-refresh/babel');
function transform(input, options = {}) {
return wrap(
babel.transform(input, {
babelrc: false,
configFile: false,
plugins: [
'@babel/syntax-jsx',
'@babel/syntax-dynamic-import',
freshPlugin,
...(options.plugins || []),
],
}).code,
);
}
describe('ReactFreshBabelPlugin Prod', () => {
it('thorw error if environment is not development', () => {
let error;
try {
transform(`function Hello() {}`);
} catch (transformError) {
error = transformError;
}
expect(error).toEqual(
new Error(
'[BABEL] unknown: React Refresh Babel transform should only be enabled ' +
'in development environment. Instead, the environment is: "' +
process.env.NODE_ENV +
'". (While processing: "base$2")',
),
);
});
});

View File

@ -7,12 +7,6 @@ module.exports = {
modulePathIgnorePatterns: [
'<rootDir>/scripts/rollup/shims/',
'<rootDir>/scripts/bench/',
// ReactFreshBabelPlugin is only available for dev.
// We need two tests here because otherwise, ReactFreshBabelPlugin-test will
// fail due to obsolete snapshots
process.env.NODE_ENV === 'development'
? '<rootDir>/packages/react-refresh/src/__tests__/ReactFreshBabelPluginProd-test.js'
: '<rootDir>/packages/react-refresh/src/__tests__/ReactFreshBabelPlugin-test.js',
],
transform: {
'.*': require.resolve('./preprocessor.js'),

View File

@ -9,12 +9,6 @@ module.exports = Object.assign({}, baseConfig, {
'ReactIncrementalTriangle',
'ReactIncrementalReflection',
'forwardRef',
// ReactFreshBabelPlugin is only available for dev.
// We need two tests here because otherwise, ReactFreshBabelPlugin-test will
// fail due to obsolete snapshots
process.env.NODE_ENV === 'development'
? '<rootDir>/packages/react-refresh/src/__tests__/ReactFreshBabelPluginProd-test.js'
: '<rootDir>/packages/react-refresh/src/__tests__/ReactFreshBabelPlugin-test.js',
],
setupFiles: [
...baseConfig.setupFiles,

View File

@ -136,7 +136,6 @@ const bundles = [
externals: ['react'],
babel: opts =>
Object.assign({}, opts, {
// Include JSX
plugins: opts.plugins.concat([
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
]),
@ -149,7 +148,6 @@ const bundles = [
externals: ['react', 'stream'],
babel: opts =>
Object.assign({}, opts, {
// Include JSX
plugins: opts.plugins.concat([
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
]),
@ -208,7 +206,6 @@ const bundles = [
externals: ['react-native'],
babel: opts =>
Object.assign({}, opts, {
// Include JSX
plugins: opts.plugins.concat([
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
]),
@ -222,7 +219,6 @@ const bundles = [
externals: ['react-native'],
babel: opts =>
Object.assign({}, opts, {
// Include JSX
plugins: opts.plugins.concat([
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
]),
@ -238,7 +234,6 @@ const bundles = [
externals: ['react-native'],
babel: opts =>
Object.assign({}, opts, {
// Include JSX
plugins: opts.plugins.concat([
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
]),
@ -252,7 +247,6 @@ const bundles = [
externals: ['react-native'],
babel: opts =>
Object.assign({}, opts, {
// Include JSX
plugins: opts.plugins.concat([
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
]),
@ -268,7 +262,6 @@ const bundles = [
externals: ['react', 'scheduler', 'scheduler/unstable_mock'],
babel: opts =>
Object.assign({}, opts, {
// Include JSX
plugins: opts.plugins.concat([
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
]),
@ -282,7 +275,6 @@ const bundles = [
externals: ['react', 'scheduler', 'scheduler/unstable_mock'],
babel: opts =>
Object.assign({}, opts, {
// Include JSX
plugins: opts.plugins.concat([
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
]),
@ -402,7 +394,6 @@ const bundles = [
externals: ['react'],
babel: opts =>
Object.assign({}, opts, {
// Include JSX
plugins: opts.plugins.concat([
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
]),