fix: jump to search for operand
This commit is contained in:
		
							parent
							
								
									f08a76a738
								
							
						
					
					
						commit
						e374e3abd4
					
				
					 4 changed files with 19 additions and 15 deletions
				
			
		| 
						 | 
				
			
			@ -56,6 +56,6 @@
 | 
			
		|||
    }
 | 
			
		||||
    const allIds = new Set([...getByField("title"), ...getByField("content")])
 | 
			
		||||
    const finalResults = [...allIds].map(formatForDisplay)
 | 
			
		||||
    displayResults(finalResults, true)
 | 
			
		||||
    displayResults(term, finalResults, true)
 | 
			
		||||
  })
 | 
			
		||||
})()
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,7 +24,7 @@ async function searchContents(query) {
 | 
			
		|||
    },
 | 
			
		||||
    body: JSON.stringify({
 | 
			
		||||
      query: query,
 | 
			
		||||
      limit: 8,
 | 
			
		||||
      limit: 10,
 | 
			
		||||
    }),
 | 
			
		||||
  })
 | 
			
		||||
  if (result.ok) {
 | 
			
		||||
| 
						 | 
				
			
			@ -48,7 +48,7 @@ registerHandlers(
 | 
			
		|||
  debounce((e) => {
 | 
			
		||||
    let term = e.target.value
 | 
			
		||||
    if (term !== "") {
 | 
			
		||||
      searchContents(term).then((results) => displayResults(results))
 | 
			
		||||
      searchContents(term).then((results) => displayResults(term, results))
 | 
			
		||||
    }
 | 
			
		||||
  }),
 | 
			
		||||
)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -115,9 +115,11 @@ const resultToHTML = ({ url, title, content }) => {
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
const redir = (id, term) => {
 | 
			
		||||
  // SPA navigation
 | 
			
		||||
  const shouldTrim = PRODUCTION && SEARCH_ENABLED
 | 
			
		||||
  const baseURLPrefix = shouldTrim ? "" : BASE_URL.replace(/\/$/g, "")
 | 
			
		||||
  const urlString = `${baseURLPrefix}${id}#:~:text=${encodeURIComponent(term)}/`
 | 
			
		||||
  window.Million.navigate(
 | 
			
		||||
    new URL(`${BASE_URL.replace(/\/$/g, "")}${id}#:~:text=${encodeURIComponent(term)}/`),
 | 
			
		||||
    new URL(urlString),
 | 
			
		||||
    ".singlePage",
 | 
			
		||||
  )
 | 
			
		||||
  closeSearch()
 | 
			
		||||
| 
						 | 
				
			
			@ -179,7 +181,7 @@ const registerHandlers = (onInputFn) => {
 | 
			
		|||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const displayResults = (finalResults, extractHighlight = false) => {
 | 
			
		||||
const displayResults = (term, finalResults, extractHighlight = false) => {
 | 
			
		||||
  const results = document.getElementById("results-container")
 | 
			
		||||
  if (finalResults.length === 0) {
 | 
			
		||||
    results.innerHTML = `<button class="result-card">
 | 
			
		||||
| 
						 | 
				
			
			@ -189,16 +191,16 @@ const displayResults = (finalResults, extractHighlight = false) => {
 | 
			
		|||
  } else {
 | 
			
		||||
    results.innerHTML = finalResults
 | 
			
		||||
      .map((result) => {
 | 
			
		||||
          if (extractHighlight) {
 | 
			
		||||
            return resultToHTML({
 | 
			
		||||
              url: result.url,
 | 
			
		||||
              title: highlight(result.title, term),
 | 
			
		||||
              content: highlight(removeMarkdown(result.content), term)
 | 
			
		||||
            })
 | 
			
		||||
          } else {
 | 
			
		||||
            return resultToHTML(result)
 | 
			
		||||
          }
 | 
			
		||||
        if (extractHighlight) {
 | 
			
		||||
          return resultToHTML({
 | 
			
		||||
            url: result.url,
 | 
			
		||||
            title: highlight(result.title, term),
 | 
			
		||||
            content: highlight(removeMarkdown(result.content), term)
 | 
			
		||||
          })
 | 
			
		||||
        } else {
 | 
			
		||||
          return resultToHTML(result)
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      )
 | 
			
		||||
      .join("\n")
 | 
			
		||||
    const anchors = [...document.getElementsByClassName("result-card")]
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue