UNPKG

@codeque/core

Version:

Multiline code search for every language. Structural code search for JavaScript, TypeScript, HTML and CSS

35 lines (31 loc) 958 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createPartialMatchTemplateLiteralNodesComparator = void 0; /* * Support for partial matching of template literals * Q: `${val}text`; C: `${bar}blabla${val}text${baz}` */ const createPartialMatchTemplateLiteralNodesComparator = () => ({ queryNode, fileNode, searchSettings: { mode } }, _, { fileKeysToTraverseForOtherMatches }) => { const isExact = mode === 'exact'; if (queryNode && fileNode) { if (!isExact && queryNode.type === 'TemplateElement' && fileNode.type === 'TemplateElement' && queryNode.value?.raw?.length === 0) { return { levelMatch: true, queryKeysToTraverseForValidatingMatch: [], fileKeysToTraverseForValidatingMatch: [], fileKeysToTraverseForOtherMatches }; } } }; exports.createPartialMatchTemplateLiteralNodesComparator = createPartialMatchTemplateLiteralNodesComparator;