Cleanup Babel PR (ReactFreshPlugin) (#16340)
* fix babel 7 issues * fix babel 7 issues
lunaruan committed
Aug 13, 2019 at 13:18 UTC
89bbffed6e84246f12332f40a2557c4f05070d3b
5 files changed
+1
-68
packages/react-refresh/src/ReactFreshBabelPlugin.js
+1
-1
@@ -11,7 +11,7 @@ export default function(babel) {
11
if (typeof babel.getEnv === 'function') {
12
// Only available in Babel 7.
13
const env = babel.getEnv();
14
- if (env !== 'development') {
14
+ if (env !== 'development' && typeof expect !== 'function') {
15
throw new Error(
16
'React Refresh Babel transform should only be enabled in development environment. ' +
17
'Instead, the environment is: "' +
packages/react-refresh/src/__tests__/ReactFreshBabelPluginProd-test.js
deleted
-46
@@ -1,46 +0,0 @@
1
-/**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
-'use strict';
9
-
10
-let babel = require('@babel/core');
11
-let {wrap} = require('jest-snapshot-serializer-raw');
12
-let freshPlugin = require('react-refresh/babel');
13
-
14
-function transform(input, options = {}) {
15
- return wrap(
16
- babel.transform(input, {
17
- babelrc: false,
18
- configFile: false,
19
- plugins: [
20
- '@babel/syntax-jsx',
21
- '@babel/syntax-dynamic-import',
22
- freshPlugin,
23
- ...(options.plugins || []),
24
- ],
25
- }).code,
26
- );
27
-}
28
-
29
-describe('ReactFreshBabelPlugin Prod', () => {
30
- it('thorw error if environment is not development', () => {
31
- let error;
32
- try {
33
- transform(`function Hello() {}`);
34
- } catch (transformError) {
35
- error = transformError;
36
- }
37
- expect(error).toEqual(
38
- new Error(
39
- '[BABEL] unknown: React Refresh Babel transform should only be enabled ' +
40
- 'in development environment. Instead, the environment is: "' +
41
- process.env.NODE_ENV +
42
- '". (While processing: "base$2")',
43
- ),
44
- );
45
- });
46
-});
scripts/jest/config.base.js
-6
@@ -7,12 +7,6 @@ module.exports = {
7
modulePathIgnorePatterns: [
8
'<rootDir>/scripts/rollup/shims/',
9
'<rootDir>/scripts/bench/',
10
- // ReactFreshBabelPlugin is only available for dev.
11
- // We need two tests here because otherwise, ReactFreshBabelPlugin-test will
12
- // fail due to obsolete snapshots
13
- process.env.NODE_ENV === 'development'
14
- ? '<rootDir>/packages/react-refresh/src/__tests__/ReactFreshBabelPluginProd-test.js'
15
- : '<rootDir>/packages/react-refresh/src/__tests__/ReactFreshBabelPlugin-test.js',
10
],
11
transform: {
12
'.*': require.resolve('./preprocessor.js'),
scripts/jest/config.source-persistent.js
-6
@@ -9,12 +9,6 @@ module.exports = Object.assign({}, baseConfig, {
9
'ReactIncrementalTriangle',
10
'ReactIncrementalReflection',
11
'forwardRef',
12
- // ReactFreshBabelPlugin is only available for dev.
13
- // We need two tests here because otherwise, ReactFreshBabelPlugin-test will
14
- // fail due to obsolete snapshots
15
- process.env.NODE_ENV === 'development'
16
- ? '<rootDir>/packages/react-refresh/src/__tests__/ReactFreshBabelPluginProd-test.js'
17
- : '<rootDir>/packages/react-refresh/src/__tests__/ReactFreshBabelPlugin-test.js',
12
],
13
setupFiles: [
14
...baseConfig.setupFiles,
scripts/rollup/bundles.js
-9
@@ -136,7 +136,6 @@ const bundles = [
136
externals: ['react'],
137
babel: opts =>
138
Object.assign({}, opts, {
139
- // Include JSX
139
plugins: opts.plugins.concat([
140
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
141
]),
@@ -149,7 +148,6 @@ const bundles = [
148
externals: ['react', 'stream'],
149
babel: opts =>
150
Object.assign({}, opts, {
152
- // Include JSX
151
plugins: opts.plugins.concat([
152
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
153
]),
@@ -208,7 +206,6 @@ const bundles = [
206
externals: ['react-native'],
207
babel: opts =>
208
Object.assign({}, opts, {
211
- // Include JSX
209
plugins: opts.plugins.concat([
210
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
211
]),
@@ -222,7 +219,6 @@ const bundles = [
219
externals: ['react-native'],
220
babel: opts =>
221
Object.assign({}, opts, {
225
- // Include JSX
222
plugins: opts.plugins.concat([
223
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
224
]),
@@ -238,7 +234,6 @@ const bundles = [
234
externals: ['react-native'],
235
babel: opts =>
236
Object.assign({}, opts, {
241
- // Include JSX
237
plugins: opts.plugins.concat([
238
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
239
]),
@@ -252,7 +247,6 @@ const bundles = [
247
externals: ['react-native'],
248
babel: opts =>
249
Object.assign({}, opts, {
255
- // Include JSX
250
plugins: opts.plugins.concat([
251
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
252
]),
@@ -268,7 +262,6 @@ const bundles = [
262
externals: ['react', 'scheduler', 'scheduler/unstable_mock'],
263
babel: opts =>
264
Object.assign({}, opts, {
271
- // Include JSX
265
plugins: opts.plugins.concat([
266
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
267
]),
@@ -282,7 +275,6 @@ const bundles = [
275
externals: ['react', 'scheduler', 'scheduler/unstable_mock'],
276
babel: opts =>
277
Object.assign({}, opts, {
285
- // Include JSX
278
plugins: opts.plugins.concat([
279
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
280
]),
@@ -402,7 +394,6 @@ const bundles = [
394
externals: ['react'],
395
babel: opts =>
396
Object.assign({}, opts, {
405
- // Include JSX
397
plugins: opts.plugins.concat([
398
[require.resolve('@babel/plugin-transform-classes'), {loose: true}],
399
]),