@samitouri / QOS-React-2 / commits / 89bbffed6e

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 ]),