UNPKG

astx

Version:

super powerful structural search and replace for JavaScript and TypeScript to automate your refactoring

24 lines (22 loc) 3.1 kB
import compilePlaceholderReplacement from './Placeholder.mjs' export default function compileImportSpecifierReplacement( path, compileOptions ) { const n = compileOptions.backend.t.namedTypes const pattern = path.value const { importKind, imported, local } = pattern if ( n.Identifier.check(imported) && (!local || local.name === imported.name) ) { if (importKind == null || importKind === 'value') { const placeholderReplacement = compilePlaceholderReplacement( path, imported.name, compileOptions ) if (placeholderReplacement) return placeholderReplacement } } } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb21waWxlUGxhY2Vob2xkZXJSZXBsYWNlbWVudCIsImNvbXBpbGVJbXBvcnRTcGVjaWZpZXJSZXBsYWNlbWVudCIsInBhdGgiLCJjb21waWxlT3B0aW9ucyIsIm4iLCJiYWNrZW5kIiwidCIsIm5hbWVkVHlwZXMiLCJwYXR0ZXJuIiwidmFsdWUiLCJpbXBvcnRLaW5kIiwiaW1wb3J0ZWQiLCJsb2NhbCIsIklkZW50aWZpZXIiLCJjaGVjayIsIm5hbWUiLCJwbGFjZWhvbGRlclJlcGxhY2VtZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbXBpbGVSZXBsYWNlbWVudC9JbXBvcnRTcGVjaWZpZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW1wb3J0U3BlY2lmaWVyLCBOb2RlUGF0aCB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHsgQ29tcGlsZWRSZXBsYWNlbWVudCwgQ29tcGlsZVJlcGxhY2VtZW50T3B0aW9ucyB9IGZyb20gJy4nXG5pbXBvcnQgY29tcGlsZVBsYWNlaG9sZGVyUmVwbGFjZW1lbnQgZnJvbSAnLi9QbGFjZWhvbGRlcidcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY29tcGlsZUltcG9ydFNwZWNpZmllclJlcGxhY2VtZW50KFxuICBwYXRoOiBOb2RlUGF0aDxJbXBvcnRTcGVjaWZpZXIsIEltcG9ydFNwZWNpZmllcj4sXG4gIGNvbXBpbGVPcHRpb25zOiBDb21waWxlUmVwbGFjZW1lbnRPcHRpb25zXG4pOiBDb21waWxlZFJlcGxhY2VtZW50IHwgdm9pZCB7XG4gIGNvbnN0IG4gPSBjb21waWxlT3B0aW9ucy5iYWNrZW5kLnQubmFtZWRUeXBlc1xuICBjb25zdCBwYXR0ZXJuID0gcGF0aC52YWx1ZVxuICBjb25zdCB7IGltcG9ydEtpbmQsIGltcG9ydGVkLCBsb2NhbCB9ID0gcGF0dGVybiBhcyBhbnlcbiAgaWYgKFxuICAgIG4uSWRlbnRpZmllci5jaGVjayhpbXBvcnRlZCkgJiZcbiAgICAoIWxvY2FsIHx8IGxvY2FsLm5hbWUgPT09IGltcG9ydGVkLm5hbWUpXG4gICkge1xuICAgIGlmIChpbXBvcnRLaW5kID09IG51bGwgfHwgaW1wb3J0S2luZCA9PT0gJ3ZhbHVlJykge1xuICAgICAgY29uc3QgcGxhY2Vob2xkZXJSZXBsYWNlbWVudCA9IGNvbXBpbGVQbGFjZWhvbGRlclJlcGxhY2VtZW50KFxuICAgICAgICBwYXRoLFxuICAgICAgICBpbXBvcnRlZC5uYW1lLFxuICAgICAgICBjb21waWxlT3B0aW9uc1xuICAgICAgKVxuICAgICAgaWYgKHBsYWNlaG9sZGVyUmVwbGFjZW1lbnQpIHJldHVybiBwbGFjZWhvbGRlclJlcGxhY2VtZW50XG4gICAgfVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7O0FBRUEsT0FBT0EsNkJBQVAsTUFBMEMsZUFBMUM7O0FBRUEsZUFBZSxTQUFTQyxpQ0FBVDtBQUNiQyxJQURhO0FBRWJDLGNBRmE7QUFHZTtFQUM1QixNQUFNQyxDQUFDLEdBQUdELGNBQWMsQ0FBQ0UsT0FBZixDQUF1QkMsQ0FBdkIsQ0FBeUJDLFVBQW5DO0VBQ0EsTUFBTUMsT0FBTyxHQUFHTixJQUFJLENBQUNPLEtBQXJCO0VBQ0EsTUFBTSxFQUFFQyxVQUFGLEVBQWNDLFFBQWQsRUFBd0JDLEtBQXhCLEtBQWtDSixPQUF4QztFQUNBO0VBQ0VKLENBQUMsQ0FBQ1MsVUFBRixDQUFhQyxLQUFiLENBQW1CSCxRQUFuQjtFQUNDLENBQUNDLEtBQUQsSUFBVUEsS0FBSyxDQUFDRyxJQUFOLEtBQWVKLFFBQVEsQ0FBQ0ksSUFEbkMsQ0FERjtFQUdFO0lBQ0EsSUFBSUwsVUFBVSxJQUFJLElBQWQsSUFBc0JBLFVBQVUsS0FBSyxPQUF6QyxFQUFrRDtNQUNoRCxNQUFNTSxzQkFBc0IsR0FBR2hCLDZCQUE2QjtNQUMxREUsSUFEMEQ7TUFFMURTLFFBQVEsQ0FBQ0ksSUFGaUQ7TUFHMURaLGNBSDBELENBQTVEOztNQUtBLElBQUlhLHNCQUFKLEVBQTRCLE9BQU9BLHNCQUFQO0lBQzdCO0VBQ0Y7QUFDRiJ9