UNPKG

astx

Version:

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

22 lines (21 loc) 2.95 kB
import { convertPredicateMatcher } from './index.mjs' import normalizeJSXTextValue from '../util/normalizeJSXTextValue.mjs' export default function matchJSXText(path, compileOptions) { const pattern = path.value const normalizedValue = normalizeJSXTextValue(pattern.value) const n = compileOptions.backend.t.namedTypes return convertPredicateMatcher( path, { match: (path) => { const { value: node } = path return ( n.JSXText.check(node) && normalizedValue === normalizeJSXTextValue(node.value) ) }, nodeType: 'JSXText', }, compileOptions ) } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb252ZXJ0UHJlZGljYXRlTWF0Y2hlciIsIm5vcm1hbGl6ZUpTWFRleHRWYWx1ZSIsIm1hdGNoSlNYVGV4dCIsInBhdGgiLCJjb21waWxlT3B0aW9ucyIsInBhdHRlcm4iLCJ2YWx1ZSIsIm5vcm1hbGl6ZWRWYWx1ZSIsIm4iLCJiYWNrZW5kIiwidCIsIm5hbWVkVHlwZXMiLCJtYXRjaCIsIm5vZGUiLCJKU1hUZXh0IiwiY2hlY2siLCJub2RlVHlwZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21waWxlTWF0Y2hlci9KU1hUZXh0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGVQYXRoLCBKU1hUZXh0IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBDb21waWxlT3B0aW9ucywgY29udmVydFByZWRpY2F0ZU1hdGNoZXIsIENvbXBpbGVkTWF0Y2hlciB9IGZyb20gJy4nXG5pbXBvcnQgbm9ybWFsaXplSlNYVGV4dFZhbHVlIGZyb20gJy4uL3V0aWwvbm9ybWFsaXplSlNYVGV4dFZhbHVlJ1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYXRjaEpTWFRleHQoXG4gIHBhdGg6IE5vZGVQYXRoPEpTWFRleHQsIEpTWFRleHQ+LFxuICBjb21waWxlT3B0aW9uczogQ29tcGlsZU9wdGlvbnNcbik6IENvbXBpbGVkTWF0Y2hlciB7XG4gIGNvbnN0IHBhdHRlcm46IEpTWFRleHQgPSBwYXRoLnZhbHVlXG4gIGNvbnN0IG5vcm1hbGl6ZWRWYWx1ZSA9IG5vcm1hbGl6ZUpTWFRleHRWYWx1ZShwYXR0ZXJuLnZhbHVlKVxuICBjb25zdCBuID0gY29tcGlsZU9wdGlvbnMuYmFja2VuZC50Lm5hbWVkVHlwZXNcblxuICByZXR1cm4gY29udmVydFByZWRpY2F0ZU1hdGNoZXIoXG4gICAgcGF0aCxcbiAgICB7XG4gICAgICBtYXRjaDogKHBhdGg6IE5vZGVQYXRoKTogYm9vbGVhbiA9PiB7XG4gICAgICAgIGNvbnN0IHsgdmFsdWU6IG5vZGUgfSA9IHBhdGhcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIG4uSlNYVGV4dC5jaGVjayhub2RlKSAmJlxuICAgICAgICAgIG5vcm1hbGl6ZWRWYWx1ZSA9PT0gbm9ybWFsaXplSlNYVGV4dFZhbHVlKG5vZGUudmFsdWUpXG4gICAgICAgIClcbiAgICAgIH0sXG4gICAgICBub2RlVHlwZTogJ0pTWFRleHQnLFxuICAgIH0sXG4gICAgY29tcGlsZU9wdGlvbnNcbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQ0EsU0FBeUJBLHVCQUF6QixRQUF5RSxHQUF6RTtBQUNBLE9BQU9DLHFCQUFQLE1BQWtDLCtCQUFsQzs7QUFFQSxlQUFlLFNBQVNDLFlBQVQ7QUFDYkMsSUFEYTtBQUViQyxjQUZhO0FBR0k7RUFDakIsTUFBTUMsT0FBZ0IsR0FBR0YsSUFBSSxDQUFDRyxLQUE5QjtFQUNBLE1BQU1DLGVBQWUsR0FBR04scUJBQXFCLENBQUNJLE9BQU8sQ0FBQ0MsS0FBVCxDQUE3QztFQUNBLE1BQU1FLENBQUMsR0FBR0osY0FBYyxDQUFDSyxPQUFmLENBQXVCQyxDQUF2QixDQUF5QkMsVUFBbkM7O0VBRUEsT0FBT1gsdUJBQXVCO0VBQzVCRyxJQUQ0QjtFQUU1QjtJQUNFUyxLQUFLLEVBQUUsQ0FBQ1QsSUFBRCxLQUE2QjtNQUNsQyxNQUFNLEVBQUVHLEtBQUssRUFBRU8sSUFBVCxLQUFrQlYsSUFBeEI7O01BRUE7UUFDRUssQ0FBQyxDQUFDTSxPQUFGLENBQVVDLEtBQVYsQ0FBZ0JGLElBQWhCO1FBQ0FOLGVBQWUsS0FBS04scUJBQXFCLENBQUNZLElBQUksQ0FBQ1AsS0FBTixDQUYzQzs7SUFJRCxDQVJIO0lBU0VVLFFBQVEsRUFBRSxTQVRaLEVBRjRCOztFQWE1QlosY0FiNEIsQ0FBOUI7O0FBZUQifQ==