UNPKG

@playlyfe/babel-loader

Version:
58 lines (45 loc) 1.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getImportsFromMetadata = getImportsFromMetadata; exports.default = void 0; var _helperPluginUtils = require("@babel/helper-plugin-utils"); var _default = (0, _helperPluginUtils.declare)(api => { api.assertVersion(7); return { visitor: { ImportDeclaration(path, state) { const sourceNode = path.get('source').node; addImportToMetadata(state, sourceNode.value); }, CallExpression(path, state) { const callee = path.get('callee'); if (callee.isIdentifier() && callee.node.name === 'require') { const arg = path.get('arguments.0'); if (arg.isStringLiteral()) { addImportToMetadata(state, arg.node.value); } } } } }; }); exports.default = _default; function addImportToMetadata(state, importStr) { const { metadata } = state.file; if (!metadata.findImports) { metadata.findImports = { imports: [] }; } metadata.findImports.imports.push(importStr); } function getImportsFromMetadata(metadata) { if (!metadata.findImports) { return []; } return metadata.findImports.imports; }