1(()=>{const SEARCH_PAGE_SELECTOR="[data-kl-search-page]",SUGGESTIONS_SELECTOR="[data-kl-search-suggestions]",SUGGESTIONS_LIST_SELECTOR="[data-kl-search-suggestions-list]",INPUT_SELECTOR="[data-kl-search-page-input]",CLEAR_SELECTOR="[data-kl-search-page-clear]";function getSuggestionsUrl({endpoint,baseUrl,query,limit,sectionId}){const suggestionsUrl=new URL(endpoint,baseUrl);return suggestionsUrl.searchParams.set("q",query),suggestionsUrl.searchParams.set("resources[type]","collection"),suggestionsUrl.searchParams.set("resources[limit]",String(limit)),suggestionsUrl.searchParams.set("section_id",sectionId),suggestionsUrl.toString()}function getIsQuerySearchable(queryValue){return queryValue.trim().length>=2}function readSuggestionsList(responseText){return new DOMParser().parseFromString(responseText,"text/html").querySelector(SUGGESTIONS_LIST_SELECTOR)}async function loadSuggestions(rowElement){const{klSearchSuggestionsTerms:terms,klSearchSuggestionsLimit:limit,klSearchSuggestionsSection:sectionId,klSearchSuggestionsUrl:endpoint}=rowElement.dataset;if(!(!terms||!sectionId||!endpoint)&&getIsQuerySearchable(terms))try{const response=await fetch(getSuggestionsUrl({endpoint,baseUrl:rowElement.baseURI,query:terms.trim(),limit:Number.parseInt(limit,10)||4,sectionId}));if(!response.ok)throw new Error(`Shopify answered ${response.status}`);const listElement=readSuggestionsList(await response.text());if(!listElement)return;rowElement.querySelector(SUGGESTIONS_LIST_SELECTOR)?.remove(),rowElement.append(listElement),rowElement.hidden=!1}catch(error){console.debug("kl-search-results: could not load suggested collections",{terms,error})}}function initClear(clearElement,inputElement){clearElement.addEventListener("click",event=>{event.metaKey||event.ctrlKey||event.shiftKey||event.button!==0||(event.preventDefault(),inputElement.value="",clearElement.hidden=!0,inputElement.focus())}),inputElement.addEventListener("input",()=>{clearElement.hidden=inputElement.value.length===0})}function initSearchPage(pageElement){const rowElement=pageElement.querySelector(SUGGESTIONS_SELECTOR),inputElement=pageElement.querySelector(INPUT_SELECTOR),clearElement=pageElement.querySelector(CLEAR_SELECTOR);rowElement&&loadSuggestions(rowElement),inputElement&&clearElement&&initClear(clearElement,inputElement)}document.querySelectorAll(SEARCH_PAGE_SELECTOR).forEach(initSearchPage),document.addEventListener("shopify:section:load",event=>{event.target.querySelectorAll(SEARCH_PAGE_SELECTOR).forEach(initSearchPage)})})(); 2//# sourceMappingURL=/cdn/shop/t/430/assets/kl-search-results.js.map?v=11206809402619617881789073417
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.