| 
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -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")]
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
			
			 | 
			 | 
			
				
 
 |