Jacky Zhao
2021-10-25 f7b89db8ee85e54a438db2e2cac3c55e805281c9
search fix
1 files modified
15 ■■■■■ changed files
layouts/partials/search.html 15 ●●●●● patch | view | raw | blame | history
layouts/partials/search.html
@@ -1,7 +1,6 @@
<div id="search-container">
    <div id="search-space">
        <input autoComplete="off" id="search-bar" name="search" type="text" aria-label="Search"
               placeholder="Search for something...">
        <input autocomplete="off" id="search-bar" name="search" type="text" aria-label="Search" placeholder="Search for something...">
        <div id="results-container">
        </div>
    </div>
@@ -72,6 +71,7 @@
        tokenize: "reverse",
        charset: "latin:extra",
        suggest: true,
        cache: 10,
    })
    const scrapedContent = {{$.Site.Data.contentIndex}}
@@ -80,10 +80,10 @@
    }
    const highlight = (content, term) => {
        const highlightWindow = 15
        const highlightWindow = 20
        const tokenizedTerm = term.split(/\s+/).filter(t => t !== "")
        const splitText = content.split(/\s+/).filter(t => t !== "")
        const includesCheck = (token) => tokenizedTerm.some(term => token.toLowerCase().includes(term.toLowerCase()))
        const includesCheck = (token) => tokenizedTerm.some(term => token.toLowerCase().startsWith(term.toLowerCase()))
        const occurrencesIndices = splitText
            .map(includesCheck)
@@ -116,8 +116,7 @@
    }
    const resultToHTML = ({url, title, content, term}) => {
        const md = content.split("---")[2]
        const text = removeMarkdown(md)
        const text = removeMarkdown(content)
        const resultTitle = highlight(title, term)
        const resultText = highlight(text, term)
        return `<button class="result-card" id="${url}">
@@ -142,8 +141,7 @@
    source.addEventListener('input', (e) => {
        term = e.target.value
        contentIndex.search(term, {
            limit: 20,
            depth: 3,
            limit: 15,
            suggest: true,
        }).then(searchResults => {
            const resultIds = [...new Set(searchResults)]
@@ -175,7 +173,6 @@
    const searchContainer = document.getElementById("search-container")
    function openSearch() {
        if (searchContainer.style.display === "none" || searchContainer.style.display === "") {
            source.value = ""