flipper-babel-transformer
Version:
Babel transformer for Flipper plugins
30 lines • 948 B
JavaScript
;
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @format
*/
Object.defineProperty(exports, "__esModule", { value: true });
const types_1 = require("@babel/types");
function isDynamicRequire(node) {
return (node.type === 'CallExpression' &&
node.callee.type === 'Identifier' &&
node.callee.name === 'require' &&
(node.arguments.length !== 1 || node.arguments[0].type !== 'StringLiteral'));
}
module.exports = () => ({
name: 'replace-dynamic-requires',
visitor: {
CallExpression(path) {
path.node;
if (!isDynamicRequire(path.node)) {
return;
}
path.replaceWith((0, types_1.identifier)('triggerDynamicRequireError'));
},
},
});
//# sourceMappingURL=dynamic-requires.js.map