PageSourceSearch

https://labortemporis.com/modules/pkelements/views/js/search.min.js

js labortemporis.com collected 2026-10-04 22:15:13 UTC 4,855 bytes, 3 lines download raw bytes

1window.addEventListener("DOMContentLoaded",()=>{var e=()=>{document.querySelectorAll(".pk-search-widget").forEach(o=>{let c={staticItems:{form:o.querySelector("form"),searchInput:o.querySelector('[name="s"]'),searchSubmit:o.querySelector('[type="submit"]'),searchURL:o.querySelector("form")?.getAttribute("action"),searchOrigURL:o.querySelector("form")?.getAttribute("data-original-action"),category:o.querySelector('[name="category"]')},classes:{loader:"pk-search-loading",showOnHover:"show-on-hover",loadMore:"pk-load-more",results:"pk-search-results",gotoSearch:"pk-goto-search"},input:{minwordlen:o.dataset.minlength,limit:o.dataset.items_limit,orderby:o.dataset.order_by,orderway:o.dataset.order_way,page:o.dataset.page},query:{current:"",previous:""},isInSidebar:o.closest(".pk-aside-tabs"),isPrepend:!1},e=()=>o.querySelector("."+c.classes.results)?.remove(),t=()=>o.classList.add(c.classes.loader),r=()=>o.classList.remove(c.classes.loader),s=(e="")=>{var t=Number(o.dataset.page);switch(e){case"inc":o.dataset.page=t+1;break;case"dec":o.dataset.page=1<t?t-1:1;break;default:o.dataset.page=1}},a=(e=!1)=>{var t={s:c.staticItems.searchInput.value,page:o.dataset.page,sidebar:c.isInSidebar,langId:prestashop.language.id},e=(e&&!c.staticItems.searchOrigURL.includes("controller")&&(t.controller="search"),c.input.limit&&(t.limit=c.input.limit),c.input.orderby&&(t.orderby=c.input.orderby),c.input.orderway&&(t.orderway=c.input.orderway),c.staticItems.category?.value);e&&(t.category=e),c.query.current=new URLSearchParams(t).toString()},n=async()=>{try{return await(await fetch(c.staticItems.searchURL+"?"+c.query.current,{method:"POST",headers:{"Content-Type":"application/json"}})).json()}catch(e){console.error(e)}},d=async()=>{var e;a(),c.query.current!==c.query.previous&&(c.staticItems.searchInput.value.length<c.input.minwordlen?(c.query.previous=c.query.current,l):(c.query.previous=c.query.current,t(),e=await n(),i(e.searchresult),m(),r))()},i=e=>{var t,r=o.querySelector("ul");r&&c.isPrepend?(t=[...(new DOMParser).parseFromString(e,"text/html").querySelectorAll("ul li")].map(e=>e.outerHTML).join(""),r.insertAdjacentHTML("beforeend",t)):(l(),c.staticItems.form.insertAdjacentHTML("beforeend",e))},l=()=>{r(),e()},u=(t=>{let r;return function(...e){clearTimeout(r),r=setTimeout(()=>{t.apply(this,e)},500)}})(()=>{c.isPrepend=!1,s(),d()}),p=()=>{window.location.href=prestashop.urls.pages.search+"?s="+c.staticItems.searchInput.value},m=()=>{var e=o.querySelector("."+c.classes.loadMore),t=o.querySelector("."+c.classes.gotoSearch);e&&!e.dataset.listenersAdded&&(c.isPrepend=!0,e.dataset.listenersAdded=!0,e.addEventListener("click",()=>{s("inc"),d()})),t.addEventListener("click",p)};if("yes"===o.dataset.voice_search){var h;if(h=window.SpeechRecognition||window.webkitSpeechRecognition){let r=new h,{searchInput:s,searchSubmit:e,form:t}=(r.continuous=!0,c.staticItems);const g="pk-mic",f="pk-voice-keys";let a={on:"pk-mic-on",off:"pk-mic-off"},n={stop:"stop",reset:"reset",search:"search"};const L=`<use href="${prestashop.urls.img_url}lib.svg#mic"></use>`,b=`<use href="${prestashop.urls.img_url}lib.svg#mic-off"></use>`;var h="yes"===o.dataset.voice_search,v=`<button type="button" class="${g} pk-mic-on flex-container align-items-center" aria-label="Voice Search">
2                    <svg class="svgic">${L}${b}</svg>
3                </button>`,y=`<div class="${f}">Voice Commands: "${n.reset}", "${n.stop}", "${n.search}"</div>`;o.querySelector("."+g)||e.insertAdjacentHTML("afterend",v),h&&!o.querySelector("."+f)&&t.insertAdjacentHTML("beforeend",y);let i=o.querySelector("."+g);i.addEventListener("click",function(){i.classList.contains(a.on)?r.start():r.stop()}),r.addEventListener("start",function(){i.classList.replace(a.on,a.off),s.focus()}),r.addEventListener("end",function(){i.classList.replace(a.off,a.on),s.focus()}),r.addEventListener("result",function(e){var t=e.resultIndex;(e=e.results[t][0].transcript).toLowerCase().trim()===n.stop?r.stop():s.value?e.toLowerCase().trim()===n.search?d():e.toLowerCase().trim()===n.reset?(s.value="",l()):s.value=e:s.value=e})}}(()=>{let{searchInput:e,category:t,form:r}=c.staticItems;var s=o.querySelector("."+c.classes.showOnHover);e&&!e.dataset.listenersAdded&&(e.listenersAdded=!0,e.addEventListener("input",u)),t&&!t.dataset.listenersAdded&&(t.listenersAdded=!0,t.addEventListener("change",u)),r&&!r.dataset.listenersAdded&&(r.listenersAdded=!0,r.addEventListener("submit",e=>{e.preventDefault(),p()})),s&&!s.dataset.listenersAdded&&(s.listenersAdded=!0,s.addEventListener("mouseenter",()=>{e.setAttribute("aria-hidden",!1)}),s.addEventListener("mouseleave",()=>{e.setAttribute("aria-hidden",!0)})),document.addEventListener("click",({target:e})=>{var t=o.querySelector("."+c.classes.results);t&&!t.contains(e)&&t.remove()})})()})};e(),prestashop.on("pkelementsTabsReady",e)});

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.