UNPKG

astx

Version:

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

29 lines (25 loc) 876 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = matchStringLiteral; var _ = require("."); var _Placeholder = require("./Placeholder"); function matchStringLiteral(path, compileOptions) { var pattern = path.value; var n = compileOptions.backend.t.namedTypes; var placeholderMatcher = (0, _Placeholder.compileStringPlaceholderMatcher)(path, function (pattern) { return pattern.value; }, compileOptions, { nodeType: 'StringLiteral' }); if (placeholderMatcher) return placeholderMatcher; pattern.value = (0, _Placeholder.unescapeIdentifier)(pattern.value); return (0, _.convertPredicateMatcher)(path, { match: function match(path) { var node = path.value; return n.StringLiteral.check(node) && pattern.value === node.value; }, nodeType: 'StringLiteral' }, compileOptions); }