mirror of https://github.com/status-im/metro.git
react-native: move out the hardcoded import() transform
Reviewed By: davidaurelio Differential Revision: D6196869 fbshipit-source-id: 237cd269a2f382851102e3e1ba3208f1460f8c0a
This commit is contained in:
parent
cd67cd4794
commit
64645cbaab
|
@ -118,10 +118,6 @@ function require(moduleId: ModuleID | VerboseModuleNameForDev) {
|
|||
: guardedLoadModule(moduleIdReallyIsNumber, module);
|
||||
}
|
||||
|
||||
require.async = function(moduleId: ModuleID | VerboseModuleNameForDev) {
|
||||
return Promise.resolve().then(() => require(moduleId));
|
||||
};
|
||||
|
||||
let inGuard = false;
|
||||
function guardedLoadModule(moduleId: ModuleID, module) {
|
||||
if (!inGuard && global.ErrorUtils) {
|
||||
|
|
|
@ -36,12 +36,6 @@ function _require(moduleId) {
|
|||
return module && module.isInitialized ? module.exports : guardedLoadModule(moduleIdReallyIsNumber, module);
|
||||
}
|
||||
|
||||
_require.async = function (moduleId) {
|
||||
return Promise.resolve().then(function () {
|
||||
return _require(moduleId);
|
||||
});
|
||||
};
|
||||
|
||||
var inGuard = false;
|
||||
function guardedLoadModule(moduleId, module) {
|
||||
if (!inGuard && global.ErrorUtils) {
|
||||
|
@ -203,12 +197,6 @@ function _require(moduleId) {
|
|||
return module && module.isInitialized ? module.exports : guardedLoadModule(moduleIdReallyIsNumber, module);
|
||||
}
|
||||
|
||||
_require.async = function (moduleId) {
|
||||
return Promise.resolve().then(function () {
|
||||
return _require(moduleId);
|
||||
});
|
||||
};
|
||||
|
||||
var inGuard = false;
|
||||
function guardedLoadModule(moduleId, module) {
|
||||
if (!inGuard && global.ErrorUtils) {
|
||||
|
|
|
@ -1,31 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) 2016-present, Facebook, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This source code is licensed under the BSD-style license found in the
|
||||
* LICENSE file in the root directory of this source tree. An additional grant
|
||||
* of patent rights can be found in the PATENTS file in the same directory.
|
||||
*
|
||||
* @format
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
const template = require('babel-template');
|
||||
|
||||
const makeAsyncRequire = template('require.async(ARGS)');
|
||||
|
||||
const plugin = {
|
||||
inherits: require('babel-plugin-syntax-dynamic-import'),
|
||||
visitor: {
|
||||
CallExpression(path) {
|
||||
if (path.node.callee.type !== 'Import') {
|
||||
return;
|
||||
}
|
||||
const newImport = makeAsyncRequire({ARGS: path.node.arguments});
|
||||
path.replaceWith(newImport);
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
module.exports = plugin;
|
Loading…
Reference in New Issue