PageSourceSearch

https://waizowl.com/cdn/shop/t/14/assets/component-predictive-sear…?v=88736468221183397241775636927

js waizowl.com collected 2026-10-05 09:38:57 UTC 5,034 bytes, 5 lines download raw bytes

1const x=()=>{const y=window.themeCore.utils.debounce,S=window.themeCore.utils.cssClasses,i={search:".js-predictive-search",form:".js-predictive-search-form",input:".js-predictive-search-input",resultContainer:".js-predictive-search-result",searchType:"input[name='type']",applyButton:".js-predictive-search-apply-button",resultRow:".js-predictive-search-result-row",tabsButton:".js-predictive-search-tabs-button",preloader:".js-preloader",searchDrawer:"#headerDrawerSearch",resultWrapper:".js-predictive-search-results",footer:".js-predictive-search-footer",activeTab:".js-predictive-search-tabs-button.is-active",tabsWrapper:".js-predictive-search-tabs-wrapper",tabsItem:".js-predictive-search-tabs-item"},n={disabled:"disabled",id:"id",dataId:"data-id",ariaExpanded:"aria-expanded",ariaHidden:"aria-hidden",placeholder:"data-placeholder",predictiveSupported:"data-predictive-supported"},c={visuallyHidden:"visually-hidden",...S},L=8;let h={};const u=document.querySelector(i.preloader),p=document.querySelector(i.footer),m=document.querySelector(i.resultContainer)?document.querySelector(i.resultContainer).innerHTML:null,g=window.Shopify.routes.root;async function C(o){const e=o.target.closest(i.input),r=document.querySelector(i.searchDrawer),t=document.querySelector(i.resultContainer),s=document.querySelector(i.applyButton);if(!r||!e||!t||!s)return;const d=e.value.trim();if(!d.length){s.setAttribute(n.disabled,n.disabled),s.setAttribute(n.ariaHidden,"true"),v(t),p.classList.add(c.hidden),t.innerHTML=m;return}if(q(),h[d]){b(h[d],t,s),f(),p.classList.remove(c.hidden);return}const l=await R(d),a=new DOMParser().parseFromString(await l.text(),"text/html");h[d]=a,b(a,t,s),f(),p.classList.remove(c.hidden)}function A(){new MutationObserver(e=>{e.forEach(r=>{const t=r.target,s=t.querySelector(i.input);t&&t.classList.contains(c.active)?setTimeout(()=>{const d=s.getAttribute(n.placeholder);let l=0;const a=setInterval(()=>{l<d.length?(s.setAttribute("placeholder",d.slice(0,l+1)),l++):clearInterval(a)},25)},500):s.setAttribute("placeholder","")})}).observe(document.querySelector(i.searchDrawer),{attributes:!0,attributeFilter:["class"]})}function T(){const o=document.querySelector(i.applyButton),e=document.querySelector(i.resultContainer);o.setAttribute(n.disabled,n.disabled),o.setAttribute(n.ariaHidden,"true"),v(e),e.innerHTML=m,p.classList.add(c.hidden)}function q(){u&&u.classList.add(c.active)}function f(){u&&u.classList.remove(c.active)}function b(o,e,r){v(e),r.removeAttribute(n.disabled),r.removeAttribute(n.ariaHidden);const t=e.closest(i.search),s=o.querySelector(i.resultWrapper);if(!s){console.log(t.hasAttribute(n.predictiveSupported)),t.hasAttribute(n.predictiveSupported)&&(r.setAttribute(n.disabled,n.disabled),r.setAttribute(n.ariaHidden,"true")),H(e);return}e.innerHTML=s.innerHTML,window.themeCore.LazyLoadImages.init(),document.addEventListener("click",E)}function E(o){const e=[...document.querySelectorAll(i.tabsButton)],r=[...document.querySelectorAll(i.resultRow)],t=o.target.closest(i.tabsButton);if(!t||!e.length||!r.length)return;e.forEach(a=>{a.classList.remove(c.active),a.setAttribute(n.ariaExpanded,!1)}),t.classList.add(c.active),t.setAttribute(n.ariaExpanded,!0),r.forEach(a=>{a.classList.remove(c.active),a.classList.add(c.visuallyHidden)}),r.filter(a=>a.dataset.id===t.dataset.id).forEach(a=>{a.classList.add(c.active),a.classList.remove(c.visuallyHidden)});const s=t.closest(i.tabsWrapper),d=s.offsetLeft+(parseInt(window.getComputedStyle(s).paddingLeft)||0),l=t.offsetLeft;s.scrollTo({left:l-d,behavior:"smooth"})}function H(o){var r,t,s;const e=`
2				<p class="h4 predictive-search__result-empty">
3					${((s=(t=(r=window.themeCore)==null?void 0:r.objects)==null?void 0:t.settings)==null?void 0:s.predictive_search_no_result)||window.themeCore.translations.get("general.predictive_search.no_results")}
4				</p>
5			`;o.innerHTML+=e}async function R(o){const e=document.querySelector(i.searchType);if(!e)return;const r=`${encodeURIComponent("resources[type]")}=${e.value}`,t=`${encodeURIComponent("resources[limit]")}=${L}`,s=`${g}search/suggest?q=${encodeURIComponent(o)}&${r}&${t}&section_id=predictive-search`;return await fetch(s)}function v(o){o.innerHTML=""}function j(o){const e=o.target.closest(i.form);if(!e)return;o.preventDefault();const r=e.querySelector(i.input).value.trim();r.length&&$(r)}function $(o){const e=document.querySelector(i.activeTab);let r="";e&&(r=`type=${e.getAttribute(n.dataId)}&`);const t=encodeURI(o),s=`${window.Shopify.routes.root}search/?${r}options%5Bprefix%5D=last&q=${t}`;window.location.replace(s)}function I(){document.addEventListener("input",y(C,200,!1)),document.addEventListener("reset",T),document.addEventListener("submit",j),A()}
5return Object.freeze({init:I})},w=()=>{window.themeCore.PredictiveSearch=window.themeCore.PredictiveSearch||x(),window.themeCore.utils.register(window.themeCore.PredictiveSearch,"predictive-search")};window.themeCore&&window.themeCore.loaded?w():document.addEventListener("theme:all:loaded",w,{once:!0});

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.