UNPKG

astx

Version:

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

23 lines (21 loc) 2.98 kB
import compilePlaceholderMatcher from './Placeholder.mjs' export default function compileTSExpressionWithTypeArgumentsMatcher( path, compileOptions ) { const pattern = path.value const n = compileOptions.backend.t.namedTypes if (n.Identifier.check(pattern.expression)) { if (pattern.typeParameters == null) { const placeholderMatcher = compilePlaceholderMatcher( path, pattern.expression.name, compileOptions, { nodeType: 'TSExpressionWithTypeArguments', } ) if (placeholderMatcher) return placeholderMatcher } } } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb21waWxlUGxhY2Vob2xkZXJNYXRjaGVyIiwiY29tcGlsZVRTRXhwcmVzc2lvbldpdGhUeXBlQXJndW1lbnRzTWF0Y2hlciIsInBhdGgiLCJjb21waWxlT3B0aW9ucyIsInBhdHRlcm4iLCJ2YWx1ZSIsIm4iLCJiYWNrZW5kIiwidCIsIm5hbWVkVHlwZXMiLCJJZGVudGlmaWVyIiwiY2hlY2siLCJleHByZXNzaW9uIiwidHlwZVBhcmFtZXRlcnMiLCJwbGFjZWhvbGRlck1hdGNoZXIiLCJuYW1lIiwibm9kZVR5cGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tcGlsZU1hdGNoZXIvVFNFeHByZXNzaW9uV2l0aFR5cGVBcmd1bWVudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVFNFeHByZXNzaW9uV2l0aFR5cGVBcmd1bWVudHMsIE5vZGVQYXRoIH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBDb21waWxlZE1hdGNoZXIsIENvbXBpbGVPcHRpb25zIH0gZnJvbSAnLidcbmltcG9ydCBjb21waWxlUGxhY2Vob2xkZXJNYXRjaGVyIGZyb20gJy4vUGxhY2Vob2xkZXInXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNvbXBpbGVUU0V4cHJlc3Npb25XaXRoVHlwZUFyZ3VtZW50c01hdGNoZXIoXG4gIHBhdGg6IE5vZGVQYXRoPFRTRXhwcmVzc2lvbldpdGhUeXBlQXJndW1lbnRzLCBUU0V4cHJlc3Npb25XaXRoVHlwZUFyZ3VtZW50cz4sXG4gIGNvbXBpbGVPcHRpb25zOiBDb21waWxlT3B0aW9uc1xuKTogQ29tcGlsZWRNYXRjaGVyIHwgdm9pZCB7XG4gIGNvbnN0IHBhdHRlcm46IFRTRXhwcmVzc2lvbldpdGhUeXBlQXJndW1lbnRzID0gcGF0aC52YWx1ZVxuICBjb25zdCBuID0gY29tcGlsZU9wdGlvbnMuYmFja2VuZC50Lm5hbWVkVHlwZXNcblxuICBpZiAobi5JZGVudGlmaWVyLmNoZWNrKHBhdHRlcm4uZXhwcmVzc2lvbikpIHtcbiAgICBpZiAocGF0dGVybi50eXBlUGFyYW1ldGVycyA9PSBudWxsKSB7XG4gICAgICBjb25zdCBwbGFjZWhvbGRlck1hdGNoZXIgPSBjb21waWxlUGxhY2Vob2xkZXJNYXRjaGVyKFxuICAgICAgICBwYXRoLFxuICAgICAgICBwYXR0ZXJuLmV4cHJlc3Npb24ubmFtZSxcbiAgICAgICAgY29tcGlsZU9wdGlvbnMsXG4gICAgICAgIHsgbm9kZVR5cGU6ICdUU0V4cHJlc3Npb25XaXRoVHlwZUFyZ3VtZW50cycgfVxuICAgICAgKVxuXG4gICAgICBpZiAocGxhY2Vob2xkZXJNYXRjaGVyKSByZXR1cm4gcGxhY2Vob2xkZXJNYXRjaGVyXG4gICAgfVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7O0FBRUEsT0FBT0EseUJBQVAsTUFBc0MsZUFBdEM7O0FBRUEsZUFBZSxTQUFTQywyQ0FBVDtBQUNiQyxJQURhO0FBRWJDLGNBRmE7QUFHVztFQUN4QixNQUFNQyxPQUFzQyxHQUFHRixJQUFJLENBQUNHLEtBQXBEO0VBQ0EsTUFBTUMsQ0FBQyxHQUFHSCxjQUFjLENBQUNJLE9BQWYsQ0FBdUJDLENBQXZCLENBQXlCQyxVQUFuQzs7RUFFQSxJQUFJSCxDQUFDLENBQUNJLFVBQUYsQ0FBYUMsS0FBYixDQUFtQlAsT0FBTyxDQUFDUSxVQUEzQixDQUFKLEVBQTRDO0lBQzFDLElBQUlSLE9BQU8sQ0FBQ1MsY0FBUixJQUEwQixJQUE5QixFQUFvQztNQUNsQyxNQUFNQyxrQkFBa0IsR0FBR2QseUJBQXlCO01BQ2xERSxJQURrRDtNQUVsREUsT0FBTyxDQUFDUSxVQUFSLENBQW1CRyxJQUYrQjtNQUdsRFosY0FIa0Q7TUFJbEQsRUFBRWEsUUFBUSxFQUFFLCtCQUFaLEVBSmtELENBQXBEOzs7TUFPQSxJQUFJRixrQkFBSixFQUF3QixPQUFPQSxrQkFBUDtJQUN6QjtFQUNGO0FBQ0YifQ==