// Metro module 15547 (f15548). import Module12 from "../../_bundle/Module12"; import { snowballStem } from "./snowballStemmer"; import { SEARCH_PARTIAL_NAME_MATCH_MIN_QUERY_LENGTH, SEARCH_PARTIAL_NAME_MATCH_MAX_QUERY_LENGTH } from "../../_bundle/Module15550"; let c11074_3, lowercase, isStopWord, isBlank, shouldHighlight, highlightAST; const stripPossessive = function stripPossessive(a0) { return a0.replace(/('|\u2019|\uFF07)(s|S)$/, ""); }; lowercase = function lowercase(a0) { return a0.toLowerCase(); }; isStopWord = function isStopWord(a0) { return c11074_3.has(a0); }; isBlank = function isBlank(a0) { return a0.length === 0; }; shouldHighlight = function shouldHighlight(a0, a1, r0 = false) { const r19 = lowercase(stripPossessive(a0)); if (isBlank(r19)) { return false; } if (isStopWord(r19)) { return false; } const r29 = snowballStem(r19); if (!r0) { return a1.has(r29); } for (const item of a1.values()) { if (!r29.includes(item)) { continue; } return true; } return false; }; highlightAST = function highlightAST(a0, a1, a2) { let c22142_0, c22142_1, c22142_2, content; L14: { c22142_0 = a1; c22142_1 = a2; if (Array.isArray(a0)) { a0.forEach((item) => { highlightAST(item, c22142_0, c22142_1); return item; }); } else if (a0.type === "list") { a0.items.forEach((item) => { highlightAST(item, c22142_0, c22142_1); return item; }); } else { if (typeof a0.content === "string" && a0.type !== "codeBlock") { const content2 = []; c22142_2 = content2; content = ""; a0.content.split(/(\W+)/g).forEach((item) => { const shouldHighlight2 = shouldHighlight(item, c22142_0, c22142_1); if (shouldHighlight2) { if (content.length > 0) { c22142_2.push({ type: "text", content }); } c22142_2.push({ type: "highlight", content: item }); content = ""; } else { content = content + item; } }); if (!(content2.length > 0)) { break L14; } if (content.length > 0) { content2.push({ type: "text", content }); } if (a0.type === "text") { a0.content = content2; break L14; } a0.content = [{ type: "text", content: content2 }]; break L14; } if (a0.content != null) { highlightAST(a0.content, a1, a2); } } } return a0; }; c11074_3 = new Set(["a", "an", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]); export function analyze(a0) { return Module12(a0.split(/\W+/)).map(stripPossessive).reject(isBlank).map(lowercase).reject(isStopWord).map(snowballStem).value(); } export { shouldHighlight }; export { highlightAST }; export function createASTHighlighter(a0, r4 = false) { let c22143_0 = r4; let c22143_1 = a0.length >= SEARCH_PARTIAL_NAME_MATCH_MIN_QUERY_LENGTH && a0.length <= SEARCH_PARTIAL_NAME_MATCH_MAX_QUERY_LENGTH; let c22143_2 = new Set(Module12(a0.split(/\W+/)).map(stripPossessive).reject(isBlank).map(lowercase).reject(isStopWord).map(snowballStem).value()); return (a0) => { highlightAST(a0, c22143_2, c22143_1 && c22143_0); return a0; }; }