astx
Version:
super powerful structural search and replace for JavaScript and TypeScript to automate your refactoring
28 lines (23 loc) • 958 B
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = compileImportSpecifierMatcher;
var _Placeholder = _interopRequireDefault(require("./Placeholder"));
function compileImportSpecifierMatcher(path, compileOptions) {
var n = compileOptions.backend.t.namedTypes;
var pattern = path.value;
var _ref = pattern,
importKind = _ref.importKind;
var imported = pattern.imported,
local = pattern.local;
if (n.Identifier.check(imported) && (!local || local.name === imported.name)) {
if (importKind == null || importKind === 'value') {
var placeholderMatcher = (0, _Placeholder["default"])(path, imported.name, compileOptions, {
nodeType: ['ImportSpecifier', 'ImportDefaultSpecifier', 'ImportNamespaceSpecifier']
});
if (placeholderMatcher) return placeholderMatcher;
}
}
}