From 9185eeb04b305c236237b6a39d4b54d0d04ccfb2 Mon Sep 17 00:00:00 2001 From: Peter van der Zee Date: Thu, 15 Mar 2018 06:46:10 -0700 Subject: [PATCH] Refactoring resolvePlugin out Reviewed By: BYK Differential Revision: D7257553 fbshipit-source-id: 1abffa3606f1d342a571d7b22ee34272a995bf9f --- packages/metro/package.json | 1 + packages/metro/src/babel-bridge.js | 12 ++++++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/metro/package.json b/packages/metro/package.json index f9de7ccf..734859cb 100644 --- a/packages/metro/package.json +++ b/packages/metro/package.json @@ -49,6 +49,7 @@ "babel-core": "^6.24.1", "babel-generator": "^6.26.0", "babel-plugin-external-helpers": "^6.22.0", + "babel-plugin-react-transform": "^3.0.0", "babel-plugin-transform-flow-strip-types": "^6.21.0", "babel-preset-es2015-node": "^6.1.1", "babel-preset-fbjs": "^2.1.4", diff --git a/packages/metro/src/babel-bridge.js b/packages/metro/src/babel-bridge.js index 86f50760..52a441c8 100644 --- a/packages/metro/src/babel-bridge.js +++ b/packages/metro/src/babel-bridge.js @@ -32,7 +32,7 @@ const resolvePlugins6 = require('babel-preset-react-native/lib/resolvePlugins'); const getBabelRegisterConfig6 = () => require('./babelRegisterOnly').config; // load given preset as a babel6 preset const getPreset6 = (preset: string) => - // $FlowFixMe: dynamic require can't be avoided + // $FlowFixMe TODO t26372934 plugin require require('babel-preset-' + preset); // ## Babel 7 stuff @@ -63,7 +63,7 @@ function resolvePlugins7(plugins: Array) { plugin = Array.isArray(plugin) ? plugin : [plugin]; // Only resolve the plugin if it's a string reference. if (typeof plugin[0] === 'string') { - // $FlowFixMe these plugins need to be included here + // $FlowFixMe TODO t26372934 plugin require const required: ModuleES6 | {} = require('@babel/plugin-' + plugin[0]); // es6 import default? // $FlowFixMe should properly type this plugin structure @@ -130,9 +130,9 @@ function makeMakeHMRConfig7() { } return { - plugins: resolvePlugins7([ + plugins: [ [ - 'react-transform', + require('babel-plugin-react-transform').default, { transforms: [ { @@ -143,7 +143,7 @@ function makeMakeHMRConfig7() { ], }, ], - ]), + ], }; }; } @@ -383,7 +383,7 @@ function getBabelRegisterConfig7() { return { presets: [], plugins: PLUGINS.map(pluginName => - // $FlowFixMe must require with dynamic string + // $FlowFixMe TODO t26372934 plugin require require(`@babel/plugin-${pluginName}`), ), only: _only,