"use strict";(function(){let searchFiles;let mySearchIndex;function toggleSearch(){const searchWrapperEl=document.getElementById("linkita-search-wrapper");const searchResultsEl=document.getElementById("linkita-search-results");if(null==searchWrapperEl||null==searchResultsEl){console.error("searchWrapper is null");return}else{searchWrapperEl.classList.remove("hidden")}const q=prompt("Enter your search term");if(null==q){searchWrapperEl.classList.add("hidden");return}if("undefined"===typeof searchIndex&&"undefined"===typeof elasticlunr){searchResultsEl.innerHTML="
  • Search: Please wait...
  • ";Promise.all(searchFiles.map(loadScript)).catch((error=>{showError(searchResultsEl,"
  • Search file not found: "+error+"
  • ")})).then((t=>{mySearchIndex=elasticlunr.Index.load(window.searchIndex);doSearch(q,searchResultsEl)}))}else{doSearch(q,searchResultsEl)}}function doSearch(q,searchResultsEl){const searchResults=mySearchIndex.search(q);const searchResultsCount=searchResults.length;if(searchResultsCount>0){const searchResultsRows=["
  • "+searchResultsCount+" search "+(searchResultsCount===1?"result":"results")+" for "+mySafe(q)+":
  • "];for(let i=0;i'+mySafe(searchResult.doc.title)+"")}searchResultsEl.innerHTML=searchResultsRows.join("");searchResultsEl.scrollIntoViewIfNeeded()}else{showError(searchResultsEl,"
  • No search results for "+mySafe(q)+".
  • ")}}function showError(searchResultsEl,err){searchResultsEl.innerHTML=err;searchResultsEl.scrollIntoViewIfNeeded()}function mySafe(code){return code.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function loadScript(fileName){return new Promise(((resolve,reject)=>{const scriptEl=document.createElement("script");scriptEl.onload=()=>resolve(fileName);scriptEl.onerror=()=>reject(fileName);scriptEl.async=true;scriptEl.src=fileName;document.head.appendChild(scriptEl)}))}function initSearchButton({scripts:scripts}){searchFiles=scripts}if(null==window.linkita)window.linkita={};window.linkita.toggleSearch=toggleSearch;window.linkita.initSearchButton=initSearchButton})();