@searchstax-inc/searchstudio-ux-vue 0.2.6 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -237,4 +237,4 @@
237
237
  </div>
238
238
  {{/hasResultsOrExternalPromotions}}
239
239
  {{/searchExecuted}}
240
- `,selectId:"searchstax-search-order-select"}};class f{}l(f,"answer",Ce),l(f,"externalPromotions",be),l(f,"facets",Se),l(f,"pagination",xe),l(f,"relatedSearches",Le),l(f,"searchFeedback",Te),l(f,"searchInput",Ee),l(f,"searchResults",Re),l(f,"sorting",Ie);class Fe{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"externalPromotionsContainerId"),l(this,"searchExternalPromotionsMainContainer",null);var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.externalPromotionsContainerId=((r=(t=this.config.templates)==null?void 0:t.mainTemplate)==null?void 0:r.externalPromotionsContainerId)||f.externalPromotions.mainTemplate.externalPromotionsContainerId,this.searchExternalPromotionsMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}initializeSubscriptions(){this.dataLayer.$searchExternalPromotions.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data,externalPromotions:this.dataLayer.parsedData.externalPromotions};return this.dataLayer.setExternalPromotionsData(e),e}addExternalSearch(e){var t,r,i,n;const o=document.getElementById(this.externalPromotionsContainerId);if(o){const c=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.externalPromotion)==null?void 0:i.template)||((n=f.externalPromotions.externalPromotion)==null?void 0:n.template),h=document.createElement("div");h.classList.add("searchstax-external-promotion"),h.addEventListener("click",d=>{this.trackClick(e,d)}),h.innerHTML=C.render(c,e),o.appendChild(h)}}trackClick(e,t){t.stopPropagation(),t.preventDefault(),window.open(e.url,"_blank")}renderMainTemplate(e){var t,r,i,n;const o=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplate)==null?void 0:i.template)||((n=f.externalPromotions.mainTemplate)==null?void 0:n.template);if(this.dataLayer.renderingEngine===R.mustache){this.searchExternalPromotionsMainContainer.innerHTML=C.render(o,e);const c=document.getElementById(this.externalPromotionsContainerId);c&&(c.innerHTML="");for(const h of e.externalPromotions)this.addExternalSearch(h)}}}class Pe{constructor(e,t){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"routerHelper"),l(this,"cachedPhrase",""),l(this,"isCached",!1),l(this,"overlayOpened",!1),l(this,"facetPaginationStep"),l(this,"facetPaginationStepMobile"),l(this,"searchFacetsMainContainer",null),l(this,"searchFacetsMobileContainer",null),l(this,"searchFacetsDesktopContainer",null),l(this,"facetLimits",{}),l(this,"facetLimitsMobile",{}),l(this,"deactivatedFacets",{}),l(this,"cachedData",null),l(this,"cacheFacets"),l(this,"onFacetSelect",(r,i,n,o)=>{if(r.stopPropagation(),!i.disabled){const c=n.querySelector("input");c.checked=o?c.checked:!c.checked;const h=this.dataLayer.searchObject;let d=[...h.facets];const u=this.extractFacetValue(i);c.checked?d.find(g=>D.deepEqual(g,u)?g:!1)||(this.config.facetingType==="tabs"&&(d=d.filter(g=>g.name!==u.name)),d.push(u)):d=d.filter(g=>!D.deepEqual(g,u)),setTimeout(()=>{this.dataLayer.setSearchObject({...h,facets:d,page:1}),this.config.facetingType==="tabs"&&this.renderMainTemplate(this.generateTemplateData(),!0)},0)}}),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.cacheFacets=t,this.facetPaginationStep=this.config.itemsPerPageDesktop,this.facetPaginationStepMobile=this.config.itemsPerPageMobile,this.searchFacetsMainContainer=document.getElementById(this.containerId),this.needCache&&t(),this.initializeSubscriptions()}get needCache(){return this.config.facetingType==="showUnavailable"||this.config.facetingType==="or"||this.config.facetingType==="tabs"}get needDisabling(){return this.config.facetingType==="showUnavailable"}initializeSubscriptions(){this.needCache&&this.dataLayer.$searchFacetsCached.subscribe(e=>{e&&this.dataLayer.searchFacets&&this.renderMainTemplate(this.generateTemplateData())}),this.dataLayer.$searchResults.subscribe(e=>{e&&(this.needCache&&!this.isCached&&(this.dataLayer.searchFacets&&!this.dataLayer.searchFacetsCached&&this.dataLayer.setSearchFacetsCached(this.dataLayer.searchFacets),this.cacheFacets()),this.renderMainTemplate(this.generateTemplateData()))}),this.dataLayer.$searchObject.subscribe(e=>{this.cachedPhrase!==e.query?(this.cachedPhrase=e.query,this.isCached=!1):this.isCached=!0})}extractFacetValue(e){return{type:this.config.facetingType,name:e.parentName,value:e.value}}applyFacetLimits(e,t){const r=t?this.facetPaginationStepMobile:this.facetPaginationStep,i=t?this.facetLimits:this.facetLimitsMobile;return e.forEach(n=>{i[n.name]||(i[n.name]=r)}),e.map(n=>({...n,values:n.values.slice(0,i[n.name]),showingAllFacets:n.values.length<=i[n.name],hasMoreFacets:n.values.length>r}))}generateTemplateData(e){if(this.generateSelectedFacetsData(),this.dataLayer.searchFacets){let t=this.dataLayer.searchFacets;this.needCache&&this.dataLayer.searchFacetsCached&&(t=this.dataLayer.searchFacetsCached,this.needDisabling&&(t=t.map(i=>{var n;const o=(n=this.dataLayer.searchFacets)==null?void 0:n.find(c=>c.name===i.name);return o?{...i,values:i.values.map(c=>{const h=o.values.find(d=>c.type==="range"?!1:c.type==="checkbox"?d.value===c.value:!1);return{...c,disabled:!h,isMobile:e}})}:{...i,values:i.values.map(c=>({...c,disabled:!0})),isMobile:e}}))),this.config.specificFacets&&(t=t.filter(i=>{var n;return(n=this.config.specificFacets)==null?void 0:n.includes(i.name)}));const r={facets:this.applyFacetLimits(t,e),...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(r),r}else{const t={facets:[],...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(t),t}}createFacetItem(e,t,r){var i,n,o,c,h,d,u,g,p,v,S,k;const y=document.createElement("div");y.classList.add("searchstax-facet-container"),this.deactivatedFacets[e.name]||y.classList.add("active");const b=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.facetItemContainerTemplate)==null?void 0:o.template)||((c=f.facets.facetItemContainerTemplate)==null?void 0:c.template);y.innerHTML=C.render(b,e),t.appendChild(y);const x=y.querySelector("."+(((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.facetItemContainerTemplate)==null?void 0:u.facetListTitleContainerClass)||((g=f.facets.facetItemContainerTemplate)==null?void 0:g.facetListTitleContainerClass)));x==null||x.addEventListener("click",()=>{y.classList.toggle("active")});const T=y.querySelector("."+(((S=(v=(p=this.config)==null?void 0:p.templates)==null?void 0:v.facetItemContainerTemplate)==null?void 0:S.facetListContainerClass)||((k=f.facets.facetItemContainerTemplate)==null?void 0:k.facetListContainerClass)));T&&(e.values.forEach(F=>{this.createFacetListItem(F,T)}),e.hasMoreFacets&&this.createHasMoreComponent(e,T,r))}isChecked(e){var t;return!!((t=this.dataLayer.searchObject.facets)!=null&&t.find(r=>D.deepEqual(r,this.extractFacetValue(e))))}createFacetListItem(e,t){var r,i,n,o,c,h,d,u,g,p,v,S,k;const y=document.createElement("div");y.classList.add("searchstax-facet-value-container"),e.disabled&&y.classList.add("searchstax-facet-value-disabled");const b=this.isChecked(e),x=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.facetItemTemplate)==null?void 0:n.template)||((o=f.facets.facetItemTemplate)==null?void 0:o.template);y.innerHTML=C.render(x,{...e,isChecked:b});let T=(c=f.facets.facetItemTemplate)==null?void 0:c.checkTriggerClasses;T=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.facetItemTemplate)==null?void 0:u.checkTriggerClasses)||T,T.forEach(F=>{var E;(E=y.querySelector("."+F))==null||E.addEventListener("click",M=>{this.onFacetSelect(M,e,y)})}),(k=y.querySelector("."+(((v=(p=(g=this.config)==null?void 0:g.templates)==null?void 0:p.facetItemTemplate)==null?void 0:v.inputCheckboxClass)||((S=f.facets.facetItemTemplate)==null?void 0:S.inputCheckboxClass))))==null||k.addEventListener("click",F=>{this.onFacetSelect(F,e,y,!0)}),t.appendChild(y)}createHasMoreComponent(e,t,r){var i,n,o,c,h,d,u,g;const p=document.createElement("div");p.classList.add("searchstax-facet-show-more-container");const v=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.showMoreButtonContainerTemplate)==null?void 0:o.template)||((c=f.facets.showMoreButtonContainerTemplate)==null?void 0:c.template);p.innerHTML=C.render(v,e);const S=p.querySelector("."+(((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.showMoreButtonContainerTemplate)==null?void 0:u.showMoreButtonClass)||((g=f.facets.showMoreButtonContainerTemplate)==null?void 0:g.showMoreButtonClass)));S&&(this.attachOnclickToShowMore(e,S,r),t&&t.appendChild(S))}attachOnclickToShowMore(e,t,r){t.addEventListener("click",i=>{this.onShowMoreLessClick(i,e,r)})}onShowMoreLessClick(e,t,r){e.preventDefault();const i=r?this.facetPaginationStepMobile:this.facetPaginationStep,n=r?this.facetLimits:this.facetLimitsMobile;n[t.name]===void 0?n[t.name]=i*2:n[t.name]<=t.values.length?n[t.name]=n[t.name]+i:n[t.name]=i,this.generateTemplateData(r),this.renderMainTemplate(this.generateTemplateData())}renderMainTemplate(e,t){var r,i,n,o,c,h,d,u,g,p,v;if(e&&(!D.deepEqual(this.cachedData??{},e)||t)){this.cachedData=e;const S=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.mainTemplateDesktop)==null?void 0:n.template)||((o=f.facets.mainTemplateDesktop)==null?void 0:o.template);if(this.dataLayer.renderingEngine===R.mustache&&this.searchFacetsMainContainer){this.searchFacetsMainContainer.innerHTML=C.render(S,{...e});const k=(u=this.searchFacetsMainContainer)==null?void 0:u.querySelector("."+(((d=(h=(c=this.config)==null?void 0:c.templates)==null?void 0:h.mainTemplateDesktop)==null?void 0:d.facetsContainerClass)||f.facets.mainTemplateDesktop.facetsContainerClass));if(k){k.innerHTML="";for(const y of e.facets)this.createFacetItem(y,k);if(this.searchFacetsMainContainer){const y=this.searchFacetsMainContainer.querySelector("."+(((v=(p=(g=this.config)==null?void 0:g.templates)==null?void 0:p.mainTemplateDesktop)==null?void 0:v.selectedFacetsContainerClass)||f.facets.mainTemplateDesktop.selectedFacetsContainerClass));y&&(this.createSelectedFacetsComponents(y),this.createClearFacetsComponents(y))}}}this.renderMobileTemplate(this.generateTemplateData(!0))}else this.generateSelectedFacetsData()}generateSelectedFacetsData(){const e=[],t=this.dataLayer.searchObject.facets;for(const r of t){const i=decodeURIComponent(r.name),n=decodeURIComponent(r.value);if(this.dataLayer.searchFacets){const o=this.needCache?this.dataLayer.searchFacetsCached:this.dataLayer.searchFacets,c=o==null?void 0:o.find(h=>h.name===i);if(c){const h=c.values.find(d=>d.type==="range"?!1:d.type==="checkbox"?`"${d.value}"`==`"${n}"`:!1);h&&e.push(h)}}}this.dataLayer.setSelectedFacetsTemplateData(e)}createSelectedFacetsComponents(e){var t;this.generateSelectedFacetsData(),(t=this.dataLayer.selectedFacetsTemplateData)==null||t.forEach(r=>{this.createSelectedFacetsComponent(e,r)})}createClearFacetsComponents(e){var t,r,i,n,o,c,h,d;const u=this.dataLayer.searchObject,g=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.clearFacetsTemplate)==null?void 0:i.template)||((n=f.facets.clearFacetsTemplate)==null?void 0:n.template),p=document.createElement("div");p.innerHTML=C.render(g,{shouldShow:u.facets.length>0});const v=p.querySelector("."+(((h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.clearFacetsTemplate)==null?void 0:h.containerClass)||((d=f.facets.clearFacetsTemplate)==null?void 0:d.containerClass)));v&&(v.addEventListener("click",()=>{this.removeSelectedFacets()}),e.appendChild(v))}createSelectedFacetsComponent(e,t){var r,i,n,o,c,h,d,u;const g=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.selectedFacetsTemplate)==null?void 0:n.template)||((o=f.facets.selectedFacetsTemplate)==null?void 0:o.template),p=document.createElement("div");p.innerHTML=C.render(g,t);const v=p.querySelector("."+(((d=(h=(c=this.config)==null?void 0:c.templates)==null?void 0:h.selectedFacetsTemplate)==null?void 0:d.containerClass)||((u=f.facets.selectedFacetsTemplate)==null?void 0:u.containerClass)));v&&(v.addEventListener("click",()=>{this.unselectFacet(t)}),e.appendChild(v))}unselectFacet(e){const t=this.dataLayer.searchObject;let r=[...t.facets];e.type==="checkbox"&&(r=r.filter(i=>JSON.stringify(i)!==JSON.stringify(this.extractFacetValue(e)))),setTimeout(()=>{this.dataLayer.setSearchObject({...t,facets:r}),this.generateSelectedFacetsData()},0)}removeSelectedFacets(){const e=this.dataLayer.searchObject;this.dataLayer.setSearchObject({...e,facets:[]})}createFilterByComponent(e){var t,r,i,n,o,c,h,d;const u=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.filterByTemplate)==null?void 0:i.template)||((n=f.facets.filterByTemplate)==null?void 0:n.template),g=document.createElement("div");g.innerHTML=C.render(u,{});const p=g.querySelector("."+(((h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.filterByTemplate)==null?void 0:h.containerClass)||((d=f.facets.filterByTemplate)==null?void 0:d.containerClass)));p&&(e.prepend(p),p.addEventListener("click",this.openOverlay.bind(this)))}openOverlay(){var e;this.overlayOpened=!0,this.searchFacetsMainContainer&&(document.body.classList.toggle("searchstax-no-scroll"),(e=this.searchFacetsMainContainer.querySelector(".searchstax-facets-mobile-overlay"))==null||e.classList.add("searchstax-show"))}closeOverlay(){var e;this.overlayOpened=!1,this.searchFacetsMainContainer&&(document.body.classList.toggle("searchstax-no-scroll"),(e=this.searchFacetsMainContainer.querySelector(".searchstax-facets-mobile-overlay"))==null||e.classList.remove("searchstax-show"))}renderMobileTemplate(e){var t,r,i,n,o,c,h,d,u,g,p,v,S,k,y,b,x,T,F;if(e){const E=document.createElement("div");E.classList.add("searchstax-facets-container-mobile");const M=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplateMobile)==null?void 0:i.template)||((n=f.facets.mainTemplateMobile)==null?void 0:n.template);if(this.dataLayer.renderingEngine===R.mustache){if(E.innerHTML=C.render(M,{...e,overlayOpened:this.overlayOpened}),(o=this.searchFacetsMainContainer)==null||o.appendChild(E),(h=(c=this.config)==null?void 0:c.templates)!=null&&h.mainTemplateMobile)for(const V of((g=(u=(d=this.config)==null?void 0:d.templates)==null?void 0:u.mainTemplateMobile)==null?void 0:g.closeOverlayTriggerClasses)||[]){const N=E.querySelector("."+V);N&&N.addEventListener("click",this.closeOverlay.bind(this))}else for(const V of f.facets.mainTemplateMobile.closeOverlayTriggerClasses){const N=E.querySelector("."+V);N&&N.addEventListener("click",this.closeOverlay.bind(this))}const _=E.querySelector("."+(((S=(v=(p=this.config)==null?void 0:p.templates)==null?void 0:v.mainTemplateMobile)==null?void 0:S.filterByContainerClass)||f.facets.mainTemplateMobile.filterByContainerClass));_&&this.createFilterByComponent(_);const P=E.querySelector("."+(((b=(y=(k=this.config)==null?void 0:k.templates)==null?void 0:y.mainTemplateMobile)==null?void 0:b.selectedFacetsContainerClass)||f.facets.mainTemplateMobile.selectedFacetsContainerClass));P&&(this.createSelectedFacetsComponents(P),this.createClearFacetsComponents(P));const U=E.querySelector("."+(((F=(T=(x=this.config)==null?void 0:x.templates)==null?void 0:T.mainTemplateMobile)==null?void 0:F.facetsContainerClass)||f.facets.mainTemplateMobile.facetsContainerClass));if(U){U.innerHTML="";for(const V of e.facets)this.createFacetItem(V,U,!0)}}}}}class De{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"previousButtonClass"),l(this,"nextButtonClass"),l(this,"loadMoreButtonClass"),l(this,"routerHelper"),l(this,"searchPaginationMainContainer",null);var t,r,i,n,o,c,h,d,u;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.previousButtonClass=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplate)==null?void 0:i.previousButtonClass)??f.pagination.mainTemplate.previousButtonClass,this.nextButtonClass=((c=(o=(n=this.config)==null?void 0:n.templates)==null?void 0:o.mainTemplate)==null?void 0:c.nextButtonClass)??f.pagination.mainTemplate.nextButtonClass,this.loadMoreButtonClass=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:u.loadMoreButtonClass)??f.pagination.infiniteScrollTemplate.loadMoreButtonClass,this.searchPaginationMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}get isFirstPage(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.page)===1}get isLastPage(){return this.dataLayer.parsedData.data.isLastPage}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){var e,t,r,i;const n={...this.dataLayer.parsedData.data,previousPageLink:(t=this.routerHelper)==null?void 0:t.searchObjectToUrl({...this.dataLayer.searchObject,page:((e=this.dataLayer.searchObject)==null?void 0:e.page)-1}),nextPageLink:(i=this.routerHelper)==null?void 0:i.searchObjectToUrl({...this.dataLayer.searchObject,page:((r=this.dataLayer.searchObject)==null?void 0:r.page)+1})};return this.dataLayer.setPaginationData(n),n}goToPage(e,t){const r=this.dataLayer.searchObject;r&&(r.page=e,this.dataLayer.setSearchObject(r)),t||window.scrollTo(0,0)}nextPage(e){var t;e.preventDefault(),e.stopPropagation(),this.isLastPage||this.goToPage(((t=this.dataLayer.searchObject)==null?void 0:t.page)+1,this.dataLayer.isInfiniteScroll)}previousPage(e){var t;e.preventDefault(),e.stopPropagation(),this.isFirstPage||this.goToPage(((t=this.dataLayer.searchObject)==null?void 0:t.page)-1)}overridePaginationEvents(){if(this.searchPaginationMainContainer){const e=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass),t=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass),r=this.searchPaginationMainContainer.querySelector("."+this.loadMoreButtonClass);e&&e.addEventListener("click",this.previousPage.bind(this)),t&&t.addEventListener("click",this.nextPage.bind(this)),r&&r.addEventListener("click",this.nextPage.bind(this))}}renderMainTemplate(e){var t,r,i,n,o,c,h,d,u,g;this.searchPaginationMainContainer&&((t=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass))==null||t.removeEventListener("click",this.previousPage),(r=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass))==null||r.removeEventListener("click",this.nextPage));let p=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.mainTemplate)==null?void 0:o.template)||((c=f.pagination.mainTemplate)==null?void 0:c.template);this.dataLayer.isInfiniteScroll&&(p=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:u.template)||((g=f.pagination.infiniteScrollTemplate)==null?void 0:g.template)),this.dataLayer.renderingEngine===R.mustache&&(this.searchPaginationMainContainer.innerHTML=C.render(p,e),setTimeout(()=>{this.overridePaginationEvents()},0))}}class we{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"relatedSearchesContainerClass"),l(this,"searchRelatedSearchesMainContainer",null),l(this,"track");var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.relatedSearchesContainerClass=((r=(t=this.config.templates)==null?void 0:t.main)==null?void 0:r.relatedSearchesContainerClass)||f.relatedSearches.main.relatedSearchesContainerClass,this.searchRelatedSearchesMainContainer=document.getElementById(this.containerId),this.track=e.trackRelatedSearchClick,this.initializeSubscriptions()}initializeSubscriptions(){this.dataLayer.$searchRelatedSearches.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setRelatedSearchesData(e),e}addRelatedSearchComponent(e,t){var r,i,n,o,c;const h=document.createElement("div"),d=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.relatedSearch)==null?void 0:n.template)||f.relatedSearches.relatedSearch.template;if(this.dataLayer.renderingEngine===R.mustache){h.innerHTML=C.render(d,e);const u=h.querySelector("."+(((c=(o=this.config.templates)==null?void 0:o.relatedSearch)==null?void 0:c.relatedSearchContainerClass)||f.relatedSearches.relatedSearch.relatedSearchContainerClass));u&&(t.appendChild(u),u.addEventListener("click",()=>{this.executeSearch(e)}))}}executeSearch(e){const t=this.dataLayer.searchObject;t.query=e.related_search,this.dataLayer.setSearchObject(t),this.track(e)}renderMainTemplate(e){var t,r,i,n;const o=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.relatedSearches.main.template;if(this.dataLayer.renderingEngine===R.mustache&&this.searchRelatedSearchesMainContainer){this.searchRelatedSearchesMainContainer.innerHTML="",this.searchRelatedSearchesMainContainer.innerHTML=C.render(o,e);const c=(n=this.searchRelatedSearchesMainContainer)==null?void 0:n.querySelector(`.${this.relatedSearchesContainerClass}`);if(c)for(const h of e.relatedSearches)this.addRelatedSearchComponent(h,c)}}}class $e{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"searchFeedbackMainContainer",null),l(this,"searchTrigger"),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.searchTrigger=e.searchTrigger,this.searchFeedbackMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions()}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setSearchFeedbackData(e),e}onOriginalQueryClick(e){var t;e.stopPropagation(),e.preventDefault();const r=(t=e.target)==null?void 0:t.innerHTML;this.searchTrigger(r,!0)}attachClick(){var e,t,r,i,n;const o=(n=this.searchFeedbackMainContainer)==null?void 0:n.querySelector("."+(((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.main)==null?void 0:r.originalQueryClass)||((i=f.searchFeedback.main)==null?void 0:i.originalQueryClass)));o&&o.addEventListener("click",this.onOriginalQueryClick.bind(this))}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.searchFeedback.main.template;this.dataLayer.renderingEngine===R.mustache&&(this.searchFeedbackMainContainer.innerHTML=C.render(n,e),setTimeout(()=>{this.attachClick()},0))}}class Me{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"suggestAfterMinChars"),l(this,"containerId"),l(this,"currentInputValue",""),l(this,"autosuggestResults"),l(this,"searchInput"),l(this,"actionButton"),l(this,"autosuggestContainer"),l(this,"buttonState","search"),l(this,"selectedAutosuggestItem",-1),l(this,"suggestTrigger"),l(this,"searchTrigger"),this.dataLayer=e.dataLayer,this.config=e.config,this.searchTrigger=e.searchTrigger,this.suggestTrigger=e.suggestTrigger,this.containerId=e.containerId,this.suggestAfterMinChars=e.config.suggestAfterMinChars,this.renderMainTemplate(),this.actionButtonInit(),this.updateActionButtonState("search"),this.searchInput&&(this.createAutosuggestContainer(),this.attachSubscriptions())}renderMainTemplate(){var e,t,r,i;const n=document.getElementById(this.containerId);if(!n)throw new Error("Search input container not found");const o=((t=(e=this.config.templates)==null?void 0:e.mainTemplate)==null?void 0:t.template)||f.searchInput.mainTemplate.template;if(this.dataLayer.renderingEngine===R.mustache){const d=C.render(o,{});n.innerHTML=d}const c=((i=(r=this.config.templates)==null?void 0:r.mainTemplate)==null?void 0:i.searchInputId)||f.searchInput.mainTemplate.searchInputId,h=document.querySelector(`#${c}`);if(h)this.searchInput=h,h.addEventListener("keyup",this.inputKeyupEvent.bind(this)),h.addEventListener("blur",this.hideAutosuggest.bind(this)),h.addEventListener("paste",this.inputPasteEvent.bind(this));else throw new Error("Input not found")}createAutosuggestContainer(){var e;this.dataLayer.renderingEngine===R.mustache&&(this.autosuggestContainer=document.createElement("div"),this.autosuggestContainer.classList.add("searchstax-autosuggest-container"),this.autosuggestContainer.addEventListener("mouseleave",()=>{this.resetAutosuggestSelection(),this.markActiveAutosuggestItem()}),(e=this.searchInput)==null||e.after(this.autosuggestContainer))}actionButtonInit(){this.actionButton=document.getElementById("searchstax-search-input-action-button"),this.actionButton&&this.actionButton.addEventListener("click",()=>{var e;this.buttonState==="search"?this.executeSearch(((e=this.searchInput)==null?void 0:e.value)??""):this.buttonState==="close"&&this.searchInput&&(this.searchInput.value="",this.executeSearch(""))})}attachSubscriptions(){this.dataLayer.$searchTermChange.subscribe(()=>{this.handleSearchTermChange()}),this.dataLayer.$loadingChange.subscribe(()=>{this.handleLoadingChange()}),this.dataLayer.$searchAutosuggest.subscribe(e=>{e&&this.appendSuggestions(e)}),this.dataLayer.$searchObject.subscribe(e=>{e.query!=="undefined"&&e.query!==void 0&&e.query!=="*"&&this.searchInput&&(this.searchInput.value=this.cleanSuggestionTerm(e.query??""))})}handleLoadingChange(){this.dataLayer.loading?this.updateActionButtonState("loading"):this.handleSearchTermChange()}handleSearchTermChange(){var e;this.dataLayer.searchTerm===((e=this.searchInput)==null?void 0:e.value)&&this.searchInput.value!==""?this.updateActionButtonState("close"):this.updateActionButtonState("search")}updateActionButtonState(e){if(this.buttonState=e,this.actionButton)switch(this.actionButton.classList.remove("searchstax-spinner-icon"),this.actionButton.classList.remove("searchstax-search-close"),this.actionButton.classList.remove("searchstax-search-icon"),e){case"loading":this.actionButton.classList.add("searchstax-spinner-icon");break;case"search":this.actionButton.classList.add("searchstax-search-icon");break;case"close":this.actionButton.classList.add("searchstax-search-close");break}}selectPreviousAutosuggestItem(){this.selectedAutosuggestItem>0?this.selectedAutosuggestItem--:this.selectedAutosuggestItem=this.autosuggestResults.suggestions.length-1,this.markActiveAutosuggestItem()}selectNextAutosuggestItem(){this.selectedAutosuggestItem<this.autosuggestResults.suggestions.length-1?this.selectedAutosuggestItem++:this.selectedAutosuggestItem=0,this.markActiveAutosuggestItem()}resetAutosuggestSelection(){this.selectedAutosuggestItem=-1,this.markActiveAutosuggestItem()}markActiveAutosuggestItem(){const e=document.getElementsByClassName("searchstax-autosuggest-item");for(let t=0;t<e.length;t++){const r=e[t];t===this.selectedAutosuggestItem?r.classList.add("active"):r.classList.remove("active")}}inputKeyupEvent(e){const t=e.key;this.currentInputValue=e.target.value,t==="Enter"?this.suggestionChosen():t==="Escape"?this.hideAutosuggest():t==="ArrowUp"?this.selectPreviousAutosuggestItem():t==="ArrowDown"?this.selectNextAutosuggestItem():this.autosuggestHandling(e),this.handleSearchTermChange()}autosuggestHandling(e){e.target&&e.target.value.length>=this.suggestAfterMinChars?this.executeSuggest(e.target.value):this.hideAutosuggest()}inputPasteEvent(e){setTimeout(()=>{this.autosuggestHandling(e),this.handleSearchTermChange()},0)}executeSuggest(e){this.suggestTrigger(e)}executeSearch(e){this.hideAutosuggest(),this.searchTrigger(e===""?"*":e)}suggestionChosen(){this.selectedAutosuggestItem>-1?this.autosuggestItemClicked(this.autosuggestResults.suggestions[this.selectedAutosuggestItem]):this.executeSearch(this.currentInputValue)}hideAutosuggest(){setTimeout(()=>{this.dataLayer.setAutosuggestResults({numFound:0,suggestions:[]}),this.autosuggestContainer&&(this.autosuggestContainer.innerHTML="",this.autosuggestContainer.classList.add("hidden")),this.resetAutosuggestSelection()},100)}cleanSuggestionTerm(e){return w.removeXSSRiskyTags(e.replace(/(<([^>]+)>)/gi,"")).trim()}autosuggestItemClicked(e){this.searchInput.value=this.cleanSuggestionTerm(e.term??""),this.executeSearch(this.cleanSuggestionTerm(e.term))}createAutosuggestItem(e){var t,r,i;const n=document.createElement("div");n.classList.add("searchstax-autosuggest-item"),n.addEventListener("click",()=>{this.autosuggestItemClicked(e)}),n.addEventListener("mouseenter",()=>{this.onSuggestionEnter(e)});const o=((r=(t=this.config.templates)==null?void 0:t.autosuggestItemTemplate)==null?void 0:r.template)||((i=f.searchInput.autosuggestItemTemplate)==null?void 0:i.template);return n.innerHTML=C.render(o,e),n}onSuggestionEnter(e){var t;this.selectedAutosuggestItem=((t=this.autosuggestResults)==null?void 0:t.suggestions.indexOf(e))||0,this.markActiveAutosuggestItem()}appendSuggestions(e){this.autosuggestContainer&&(this.autosuggestContainer.innerHTML="",this.autosuggestContainer.classList.remove("hidden"));for(const t in e.suggest)if(Object.prototype.hasOwnProperty.call(e.suggest,t)){const r=e.suggest[t];for(const i in r)if(Object.prototype.hasOwnProperty.call(r,i)){const n=r[i];this.autosuggestResults=n,this.dataLayer.setAutosuggestResults(n),n.numFound>0?n.suggestions.forEach(o=>{this.autosuggestContainer&&this.autosuggestContainer.appendChild(this.createAutosuggestItem(o))}):this.autosuggestContainer&&this.autosuggestContainer.classList.add("hidden")}}}}class Be{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"linkClickCallback"),l(this,"searchCallback"),l(this,"containerId"),l(this,"searchResultsMainContainer"),l(this,"searchResultsContainer"),l(this,"searchResultLinks",[]),this.linkClickCallback=e.linkClickCallback,this.searchCallback=e.searchTrigger,this.dataLayer=e.dataLayer,this.config=e.config,setTimeout(()=>{this.dataLayer.setSearchObject({...this.dataLayer.searchObject,itemsPerPage:this.config.resultsPerPage||10})},0),this.containerId=e.containerId;const t=document.getElementById(this.containerId);if(t)this.searchResultsMainContainer=t;else throw new Error(`Search Results Main Container with id ${this.containerId} not found`);this.dataLayer.setIsInfiniteScroll(e.config.renderMethod==="infiniteScroll"),this.initializeSubscriptions(),this.renderMainTemplate()}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.searchResultsContainer&&this.renderResults(e)})}changeTemplate(){this.dataLayer.searchResults&&this.renderResults(this.dataLayer.searchResults)}renderNoResultsTemplate(){var e,t,r,i,n;const o=((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.noSearchResultTemplate)==null?void 0:r.template)||((i=f.searchResults.noSearchResultTemplate)==null?void 0:i.template),c=((n=this.dataLayer.searchResultsMetadata)==null?void 0:n.spellingSuggestion)??"";if(this.dataLayer.renderingEngine===R.mustache&&this.searchResultsContainer&&(this.searchResultsContainer.innerHTML=C.render(o,{spellingSuggestion:c,searchTerm:this.dataLayer.searchTerm})),c&&this.searchResultsContainer){const h=this.searchResultsContainer.querySelector("a");h&&h.addEventListener("click",d=>{d.preventDefault(),d.stopPropagation(),this.searchCallback(c)})}}renderResults(e){var t,r,i,n,o;if(this.dataLayer.renderingEngine===R.mustache&&this.searchResultsContainer)if(this.removeLinkClickEvents(),e.length===0)this.renderNoResultsTemplate();else{const c=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.searchResultTemplate)==null?void 0:i.template)||((n=f.searchResults.searchResultTemplate)==null?void 0:n.template),h=e.map(d=>C.render(c,d));((o=this.config)==null?void 0:o.renderMethod)==="infiniteScroll"&&this.dataLayer.searchObject.page>1?this.searchResultsContainer.innerHTML+=h.join(""):this.searchResultsContainer.innerHTML=h.join(""),this.searchResultLinks=Array.from(this.searchResultsContainer.querySelectorAll(`[${this.uniqueIdAttribute}]`)),this.attachLinkClickEvents()}}removeLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.removeEventListener("click",()=>{})})}get uniqueIdAttribute(){var e,t,r,i;return((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.searchResultTemplate)==null?void 0:r.searchResultUniqueIdAttribute)||((i=f.searchResults.searchResultTemplate)==null?void 0:i.searchResultUniqueIdAttribute)}attachLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();const r=e.getAttribute(this.uniqueIdAttribute)??"";r&&this.linkClickCallback(r)})})}renderMainTemplate(){var e,t,r,i;const n=((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.mainTemplate)==null?void 0:r.template)||((i=f.searchResults.mainTemplate)==null?void 0:i.template);this.dataLayer.renderingEngine===R.mustache&&(this.searchResultsMainContainer.innerHTML=C.render(n,{}),setTimeout(()=>{var o,c,h,d,u,g,p;const v=(h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.mainTemplate)!=null&&h.searchResultsContainerId?(g=(u=(d=this.config)==null?void 0:d.templates)==null?void 0:u.mainTemplate)==null?void 0:g.searchResultsContainerId:(p=f.searchResults.mainTemplate)==null?void 0:p.searchResultsContainerId,S=document.getElementById(v);if(S)this.searchResultsContainer=S;else throw new Error(`Search Results Container with id ${v} not found`)},0))}}class Oe{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"selectId"),l(this,"searchSortingMainContainer",null);var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.selectId=((r=(t=this.config.templates)==null?void 0:t.main)==null?void 0:r.selectId)||f.sorting.main.selectId,this.searchSortingMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setSearchSortingData(e),e}setOrderQuery(e){const t=this.dataLayer.searchObject;t&&(t.order=e,this.dataLayer.setSearchObject(t))}markOptionSelected(){const e=document.getElementById(this.selectId);if(e){const t=e.querySelector(`option[value="${decodeURIComponent(this.dataLayer.searchObject.order)}"]`);t&&(t.selected=!0)}}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.sorting.main.template;if(this.dataLayer.renderingEngine===R.mustache){this.searchSortingMainContainer.innerHTML=C.render(n,e),this.markOptionSelected();const o=document.getElementById(this.selectId);o&&o.addEventListener("change",c=>{this.setOrderQuery(c.target.value)})}}}class Ae{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"answerContainer",null),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.answerContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.dataLayer.setIsAnswerWidgetCreated(!0)}initializeSubscriptions(){this.dataLayer.$answer.subscribe(()=>{this.renderMainTemplate(this.dataLayer.parsedData.data)}),this.dataLayer.$paginationData.subscribe(()=>{this.renderMainTemplate(this.dataLayer.parsedData.data)})}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.answer.main.template;this.dataLayer.renderingEngine===R.mustache&&(this.answerContainer.innerHTML=C.render(n,e))}}class Ve{constructor(e=R.mustache){l(this,"routerEnabled",!1),l(this,"cachedQuery",""),l(this,"routerHelper"),l(this,"searchHelper"),l(this,"searchResultsConfig"),l(this,"searchPaginationConfig"),l(this,"searchFeedbackConfig"),l(this,"searchSortingConfig"),l(this,"searchFacetsConfig"),l(this,"relatedSearchesConfig"),l(this,"externalPromotionsConfig"),l(this,"searchInputWidget"),l(this,"searchResultsWidget"),l(this,"searchFacetsWidget"),l(this,"searchPaginationWidget"),l(this,"searchFeedbackWidget"),l(this,"searchSortingWidget"),l(this,"relatedSearchesWidget"),l(this,"externalPromotionsWidget"),l(this,"answerWidget"),l(this,"dataLayer"),l(this,"firstRequest",!0),this.dataLayer=new te("searchstax_session_id"),e&&this.dataLayer.setRenderingEngine(e),this.handleHooks()}setRenderingEngine(e=R.mustache){this.dataLayer.setRenderingEngine(e)}handleHooks(){var e,t;(t=(e=this.dataLayer.searchstaxConfig)==null?void 0:e.hooks)!=null&&t.afterSearch&&this.dataLayer.$searchResults.subscribe(r=>{this.dataLayer.searchstaxConfig.hooks.afterSearch(r)}),this.dataLayer.$searchObject.subscribe(r=>{var i;r.query!==""&&r.query!==void 0&&r.query!=="undefined"&&(this.search(r),this.dataLayer.turnAIAnswerGenerationOn===!0&&((i=this.searchHelper)==null||i.startSSE(r.query,this.parseAnswerResultsResponse.bind(this))))}),this.dataLayer.$searchResults.subscribe(r=>{r&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&j.trackSearch({...this.dataLayer.parsedData.trackingData,impressions:this.dataLayer.searchResultsMetadata.impressions})})}initialize(e){var t,r;e.turnAIAnswerGenerationOn===!0&&(this.dataLayer.turnAIAnswerGenerationOn=!0),e.autoCorrect===!1&&(this.dataLayer.autoCorrect=!1),this.dataLayer.searchstaxConfig||(this.dataLayer.setSearchstaxConfig(e),this.searchHelper=new se({...e,sessionId:this.dataLayer.sessionId},this.dataLayer)),((t=e.router)==null?void 0:t.enabled)===void 0||((r=e.router)==null?void 0:r.enabled)===!0?(this.routerEnabled=!0,this.routerHelper=new J(e.router?e.router:{enabled:!0}),this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href)),addEventListener("popstate",()=>{this.routerHelper&&this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href))})):this.routerHelper=new J({})}search(e){if(this.searchHelper){const t=this.dataLayer.forceNotCorrect;this.searchHelper.search(e,this.parseSearchResultsResponse.bind(this),this.firstRequest,t),this.firstRequest=!1,this.getRelatedSearches()}}getRelatedSearches(){this.searchHelper&&this.relatedSearchesConfig&&this.searchHelper.getRelatedSearches(this.dataLayer.searchObject,this.relatedSearchesConfig.relatedSearchesURL,this.relatedSearchesConfig.relatedSearchesAPIKey,this.parseRelatedSearchesResponse.bind(this))}parseRelatedSearchesResponse(e){var t;const r=(((t=e.response)==null?void 0:t.docs)??[]).map((n,o)=>({...n,position:o+1})),i=[];for(const n of r)i.push({relatedSearch:n.related_search,position:n.position});this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&j.trackRelatedSearches({...this.dataLayer.parsedData.trackingData,impressions:i}),this.dataLayer.setSearchRelatedSearches(r)}handleRouter(){if(this.routerEnabled){const e={...this.dataLayer.searchObject};this.dataLayer.isInfiniteScroll&&delete e.page,this.routerHelper.updateUrl(e)}}parseSearchResultsResponse(e){var t,r;this.handleRouter();let i=q.combineResultsWithMetadata(e),n=q.extractFacets(e);this.dataLayer.setSearchFacets(n),(r=(t=this.dataLayer.searchstaxConfig)==null?void 0:t.hooks)!=null&&r.afterSearch&&(i=this.dataLayer.searchstaxConfig.hooks.afterSearch(i)),this.dataLayer.setSearchExternalPromotions(e.externalLinks??[]);const o=q.extractSearchResultsMetadata(e);this.dataLayer.setSearchResultsMetadata(o),this.dataLayer.setSearchResults(i)}parseAnswerResultsResponse(e){this.handleRouter(),e!==B.question&&e!==B.notQuestion&&this.dataLayer.setAnswerData(this.dataLayer.getAnswerData+e)}cacheFacets(){var e;(e=this.searchHelper)==null||e.cacheFacets()}parseSuggestSuggestResponse(e){var t,r;let i=e;(r=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&r.afterAutosuggest&&(i=this.dataLayer.searchInputConfig.hooks.afterAutosuggest(e)),this.dataLayer.setSearchAutosuggest(i)}suggest(e,t){this.searchHelper&&this.searchHelper.suggest(e,this.parseSuggestSuggestResponse.bind(this),t)}changeLanguage(e){this.searchHelper&&this.dataLayer.setLanguage(e)}addSearchInputWidget(e,t){this.dataLayer.searchInputConfig||(this.dataLayer.setSearchInputConfig(t),this.searchInputWidget=new Me({containerId:e,config:t,searchTrigger:this.executeSearch.bind(this),suggestTrigger:this.executeSuggest.bind(this),dataLayer:this.dataLayer}))}addAnswerWidget(e,t){this.dataLayer.setAnswerData(""),this.answerWidget=new Ae({containerId:e,config:t,dataLayer:this.dataLayer})}addSearchResultsWidget(e,t){this.searchResultsConfig||(this.searchResultsConfig=t,this.searchResultsWidget=new Be({containerId:e,linkClickCallback:this.executeLinkClick.bind(this),searchTrigger:this.executeSearch.bind(this),config:t,dataLayer:this.dataLayer}))}addPaginationWidget(e,t){this.searchPaginationConfig=t,this.searchPaginationWidget=new De({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper})}addSearchFeedbackWidget(e,t){this.searchFeedbackConfig||(this.searchFeedbackConfig=t,this.searchFeedbackWidget=new $e({containerId:e,config:t,dataLayer:this.dataLayer,searchTrigger:this.executeSearch.bind(this)}))}addSearchSortingWidget(e,t){this.searchSortingConfig||(this.searchSortingConfig=t,this.searchSortingWidget=new Oe({containerId:e,config:t,dataLayer:this.dataLayer}))}addRelatedSearchesWidget(e,t){this.relatedSearchesConfig||(this.relatedSearchesConfig=t,this.relatedSearchesWidget=new we({containerId:e,config:t,dataLayer:this.dataLayer,trackRelatedSearchClick:this.trackRelatedSearchClick.bind(this)}),setTimeout(()=>{this.getRelatedSearches()},0))}addExternalPromotionsWidget(e,t){this.externalPromotionsConfig||(this.externalPromotionsConfig=t,this.externalPromotionsWidget=new Fe({containerId:e,config:t,dataLayer:this.dataLayer}))}addFacetsWidget(e,t){this.searchFacetsConfig=t,this.searchFacetsWidget=new Pe({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper},this.cacheFacets.bind(this))}executeSearch(e,t){var r,i;const n={...this.dataLayer.searchObject};n.query=w.removeXSSRiskyTags(e),n.page=1,n.facets=[],this.dataLayer.forceNotCorrect=!!t;let o=(r=this.routerHelper)==null?void 0:r.searchObjectToParams(n);o&&(o=(i=this.routerHelper)==null?void 0:i.extractParamsThatDoNotStartWithRouteName(o)),o&&(n.additionalProps=Object.keys(o).map(c=>o?{key:c,value:o[c]}:{key:"",value:""})),this.dataLayer.setSearchObject(n),this.dataLayer.lastSearchValue=n.query}executeSuggest(e){var t,r;let i={term:e,queryParams:[]};(r=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&r.beforeAutosuggest&&(i=this.dataLayer.searchInputConfig.hooks.beforeAutosuggest(i)),i&&i.term!==void 0&&i.queryParams!==void 0&&this.suggest(i.term,i.queryParams)}trackRelatedSearchClick(e){this.dataLayer.searchResultsMetadata&&this.dataLayer.searchRelatedSearches&&!this.dataLayer.cookiesDisabled&&j.trackRelatedSearchClick({...this.dataLayer.parsedData.trackingData,relatedSearch:e})}executeLinkClick(e){var t,r;let i=q.findResultByUniqueId(e,this.dataLayer.searchResults??[]);i&&((r=(t=this.searchResultsConfig)==null?void 0:t.hooks)!=null&&r.afterLinkClick&&(i=this.searchResultsConfig.hooks.afterLinkClick(i)),i&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&(j.trackClick({result:i,...this.dataLayer.parsedData.trackingData}),setTimeout(()=>{window.location.href=(i==null?void 0:i.url)??""},0)))}setPage(e){var t;(t=this.searchPaginationWidget)==null||t.goToPage(e)}setCookiesDisabled(e){this.dataLayer.setCookiesDisabled(e)}changeResultTemplate(e){var t,r,i;this.searchResultsConfig&&(this.searchResultsConfig.templates=(t=this.searchResultsConfig)!=null&&t.templates?{...(r=this.searchResultsConfig)==null?void 0:r.templates,...e}:e,(i=this.searchResultsWidget)==null||i.changeTemplate())}}const m=s.reactive({searchstax:new Ve("vue")}),Ne=s.defineComponent({name:"SearchstaxWrapper",props:{language:{type:String,required:!1,default:"en"},searchURL:{type:String,required:!0},suggesterURL:{type:String,required:!0},trackApiKey:{type:String,required:!0},searchAuth:{type:String,required:!0},authType:{type:String,required:!1,default:"basic"},autoCorrect:{type:Boolean,required:!1,default:!0},router:{type:Object,required:!1},beforeSearch:{type:Function,required:!1},afterSearch:{type:Function,required:!1}},mounted(){const a={};this.beforeSearch&&(a.beforeSearch=this.beforeSearch),this.afterSearch&&(a.afterSearch=this.afterSearch),m.searchstax.initialize({language:this.language,searchURL:this.searchURL,suggesterURL:this.suggesterURL,trackApiKey:this.trackApiKey,searchAuth:this.searchAuth,authType:this.authType,autoCorrect:this.autoCorrect,router:this.router,hooks:a}),this.$emit("initialized",m.searchstax)}}),$=(a,e)=>{const t=a.__vccOpts||a;for(const[r,i]of e)t[r]=i;return t};function qe(a,e,t,r,i,n){return s.renderSlot(a.$slots,"default")}const je=$(Ne,[["render",qe]]),He=s.defineComponent({name:"SearchstaxInputWidget",props:{afterAutosuggest:{type:Function,required:!1},beforeAutosuggest:{type:Function,required:!1},searchInputId:{type:String,required:!1},suggestAfterMinChars:{type:Number,required:!1,default:3}},data(){return{suggestions:[]}},methods:{onMouseLeave(){m.searchstax.searchInputWidget.resetAutosuggestSelection(),m.searchstax.searchInputWidget.markActiveAutosuggestItem()},onMouseOver(a){m.searchstax.searchInputWidget.onSuggestionEnter(a)},onMouseClick(){m.searchstax.searchInputWidget.suggestionChosen()},attachObservables(){m.searchstax.dataLayer.$autosuggestResults.subscribe(a=>{this.suggestions=(a==null?void 0:a.suggestions)??[]})}},computed:{hasInputSlot(){return!!this.$slots.input}},mounted(){if(m.searchstax){this.attachObservables();const a={};this.afterAutosuggest&&(a.afterAutosuggest=this.afterAutosuggest),this.beforeAutosuggest&&(a.beforeAutosuggest=this.beforeAutosuggest),m.searchstax.addSearchInputWidget("searchstax-input-container",{suggestAfterMinChars:this.suggestAfterMinChars,hooks:a,templates:{mainTemplate:{template:"",searchInputId:this.searchInputId??"searchstax-search-input"}}})}else throw Error("Searchstax instance needs to be passed via props")}}),We={id:"searchstax-input-container"},_e={class:"searchstax-search-input-container"},Ue={key:0,class:"searchstax-search-input-wrapper"},Qe=s.createElementVNode("input",{type:"text",id:"searchstax-search-input",class:"searchstax-search-input",placeholder:"SEARCH FOR..."},null,-1),Ke=["innerHTML","onMouseover"],ze=s.createElementVNode("button",{class:"searchstax-spinner-icon",id:"searchstax-search-input-action-button"},null,-1);function Je(a,e,t,r,i,n){return s.openBlock(),s.createElementBlock("div",We,[s.createElementVNode("div",_e,[a.hasInputSlot?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",Ue,[Qe,s.createElementVNode("div",{class:s.normalizeClass(["searchstax-autosuggest-container",{hidden:a.suggestions.length===0}]),onMouseleave:e[1]||(e[1]=(...o)=>a.onMouseLeave&&a.onMouseLeave(...o))},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.suggestions,o=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-autosuggest-item",key:o.term},[s.createElementVNode("div",{class:"searchstax-autosuggest-item-term-container",innerHTML:o.term,onMouseover:c=>a.onMouseOver(o),onClick:e[0]||(e[0]=s.withModifiers(c=>a.onMouseClick(),["stop"]))},null,40,Ke)]))),128))],34),ze])),s.renderSlot(a.$slots,"input",{suggestions:a.suggestions,onMouseClick:a.onMouseClick,onMouseOver:a.onMouseOver,onMouseLeave:a.onMouseLeave})])])}const Ge=$(He,[["render",Je]]),Xe=s.defineComponent({name:"SearchstaxResultsWidget",props:{afterLinkClick:{type:Function,required:!1},resultsPerPage:{type:Number,required:!1},renderMethod:{type:String,required:!1}},computed:{hasNoResultsSlot(){return!!this.$slots.noResult},hasResultSlot(){return!!this.$slots.results},hooks(){const a={};return this.afterLinkClick&&(a.afterLinkClick=this.afterLinkClick),a}},data(){return{searchResults:null,metadata:null,searchTerm:"",store:m}},methods:{resultClicked(a,e){e.preventDefault(),e.stopPropagation(),m.searchstax.executeLinkClick(a.uniqueId)},attachObservables(){m.searchstax.dataLayer.$searchResults.subscribe(a=>{var i;const e=this.searchResults??[];console.log("current",e);const t=a??[],r=this.renderMethod==="infiniteScroll"?[...e,...t]:a;((i=m.searchstax.dataLayer.$searchObject.value)==null?void 0:i.page)===1?this.searchResults=a:this.searchResults=r}),m.searchstax.dataLayer.$searchTermChange.subscribe(a=>{this.searchTerm=a}),m.searchstax.dataLayer.$searchResultsMetadata.subscribe(a=>{this.metadata=a})}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchResultsWidget("searchstax-results-container",{templates:{},resultsPerPage:this.resultsPerPage??10,renderMethod:this.renderMethod??"pagination",hooks:this.hooks});else throw Error("Searchstax instance needs to be passed via props")}}),Ye={id:"searchstax-results-container"},Ze={class:"searchstax-search-results-container"},et={id:"searchstax-result-container"},tt={key:0},at={class:"searchstax-no-results"},st=s.createElementVNode("strong",null,"no results",-1),rt=s.createElementVNode("br",null,null,-1),it={key:0},nt={href:"#",class:"searchstax-suggestion-term"},ot=s.createElementVNode("div",null,[s.createElementVNode("p",null," Try searching for search related terms or topics. We offer a wide variety of content to help you get the information you need. "),s.createElementVNode("p",null,"Lost? Click on the ‘X” in the Search Box to reset your search.")],-1),ct={key:2,class:"searchstax-search-results"},lt={key:0,class:"searchstax-search-result-promoted"},ht=["href","data-searchstax-unique-result-id","onClick"],dt={key:2,class:"searchstax-search-result-ribbon"},ut=["src"],gt={class:"searchstax-search-result-title-container"},pt={class:"searchstax-search-result-title"},mt={key:4,class:"searchstax-search-result-common"},ft={key:5,class:"searchstax-search-result-description searchstax-search-result-common"},vt={key:0,class:"searchstax-search-result-image-container"},yt=["src"],kt={key:1},Ct={class:"searchstax-search-result-common"},bt={key:3};function St(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",Ye,[s.createElementVNode("div",Ze,[s.createElementVNode("div",et,[a.searchResults&&a.searchResults.length===0&&!a.hasNoResultsSlot&&a.searchTerm!==""?(s.openBlock(),s.createElementBlock("div",tt,[s.createElementVNode("div",at,[s.createTextVNode(" Showing "),st,s.createTextVNode(" for "),s.createElementVNode("strong",null,'"'+s.toDisplayString(a.searchTerm)+'"',1),rt,(o=a.metadata)!=null&&o.spellingSuggestion?(s.openBlock(),s.createElementBlock("span",it,[s.createTextVNode(" Did you mean "),s.createElementVNode("a",nt,s.toDisplayString((c=a.metadata)==null?void 0:c.spellingSuggestion),1),s.createTextVNode("?")])):s.createCommentVNode("",!0)]),ot])):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length===0&&a.hasNoResultsSlot&&a.searchTerm!==""?s.renderSlot(a.$slots,"noResult",{key:1}):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length&&!a.hasResultSlot?(s.openBlock(),s.createElementBlock("div",ct,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.searchResults,h=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["searchstax-search-result",{"has-thumbnail":h.thumbnail}]),key:h.uniqueId},[h.promoted?(s.openBlock(),s.createElementBlock("div",lt)):s.createCommentVNode("",!0),h.url?(s.openBlock(),s.createElementBlock("a",{key:1,href:h.url,"data-searchstax-unique-result-id":h.uniqueId,onClick:d=>a.resultClicked(h,d),class:"searchstax-result-item-link"},null,8,ht)):s.createCommentVNode("",!0),h.ribbon?(s.openBlock(),s.createElementBlock("div",dt,s.toDisplayString(h.ribbon),1)):s.createCommentVNode("",!0),h.thumbnail?(s.openBlock(),s.createElementBlock("img",{key:3,src:h.thumbnail,class:"searchstax-thumbnail"},null,8,ut)):s.createCommentVNode("",!0),s.createElementVNode("div",gt,[s.createElementVNode("span",pt,s.toDisplayString(h.title),1)]),h.paths?(s.openBlock(),s.createElementBlock("p",mt,s.toDisplayString(h.paths),1)):s.createCommentVNode("",!0),h.description?(s.openBlock(),s.createElementBlock("p",ft,s.toDisplayString(h.description),1)):s.createCommentVNode("",!0),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(h.unmappedFields,d=>(s.openBlock(),s.createElementBlock("div",{key:d.key},[d.isImage&&typeof d.value=="string"?(s.openBlock(),s.createElementBlock("div",vt,[s.createElementVNode("img",{src:d.value,class:"searchstax-result-image"},null,8,yt)])):(s.openBlock(),s.createElementBlock("div",kt,[s.createElementVNode("p",Ct,s.toDisplayString(d.value),1)]))]))),128))],2))),128))])):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length&&a.hasResultSlot?(s.openBlock(),s.createElementBlock("div",bt,[s.renderSlot(a.$slots,"results",{searchResults:a.searchResults,resultClicked:a.resultClicked})])):s.createCommentVNode("",!0)])])])}const xt=$(Xe,[["render",St]]),Lt=s.defineComponent({name:"SearchstaxFacetsWidget",props:{facetingType:{type:String,required:!0},itemsPerPageDesktop:{type:Number,required:!0},itemsPerPageMobile:{type:Number,required:!0},specificFacets:{type:Array,required:!1}},data(){return{facetsTemplateDataDesktop:null,facetsTemplateDataMobile:null,store:m,facetContainers:s.ref([]),mainFacetContainers:s.ref([]),selectedFacetsCheckboxes:[],selectedFacetsRange:[],rand:Math.random()}},computed:{hasDesktopFacetsSlot(){return!!this.$slots.desktopFacets},hasMobileFacetsSlot(){return!!this.$slots.mobileFacets}},methods:{attachObservables(){m.searchstax.dataLayer.$facetsTemplateData.subscribe(a=>{a!=null&&a.isMobile?this.facetsTemplateDataMobile=a:this.facetsTemplateDataDesktop=a}),m.searchstax.dataLayer.$selectedFacetsTemplateData.subscribe(a=>{const e=a??[];this.selectedFacetsCheckboxes=e.filter(t=>t.type==="checkbox")})},unselectFacet(a){m.searchstax.searchFacetsWidget.unselectFacet(a)},unselectAll(){m.searchstax.searchFacetsWidget.removeSelectedFacets()},isNotDeactivated(a){return!m.searchstax.searchFacetsWidget.deactivatedFacets[a]},toggleFacetGroup(a){this.isNotDeactivated(a)?m.searchstax.searchFacetsWidget.deactivatedFacets[a]=!0:m.searchstax.searchFacetsWidget.deactivatedFacets[a]=!1},isChecked(a){return m.searchstax.searchFacetsWidget.isChecked(a)},selectFacet(a,e,t,r){const i=document.createElement("div");i.innerHTML=this.facetContainers[a].outerHTML,m.searchstax.searchFacetsWidget.onFacetSelect(e,t,this.facetContainers[a],r)},showMoreLessDesktop(a,e){m.searchstax.searchFacetsWidget.onShowMoreLessClick(a,e,!1)},showMoreLessMobile(a,e){m.searchstax.searchFacetsWidget.onShowMoreLessClick(a,e,!0)},openOverlay(){m.searchstax.searchFacetsWidget.openOverlay()},closeOverlay(){m.searchstax.searchFacetsWidget.closeOverlay()}},mounted(){m.searchstax.addFacetsWidget("searchstax-facets-container"+this.rand,{facetingType:this.facetingType,specificFacets:this.specificFacets,itemsPerPageDesktop:this.itemsPerPageDesktop,itemsPerPageMobile:this.itemsPerPageMobile}),this.attachObservables()}}),Tt=["id"],Et={key:0,class:"searchstax-facets-container-desktop"},Rt=["onClick"],It={class:"searchstax-facet-title"},Ft=s.createElementVNode("div",{class:"searchstax-facet-title-arrow active"},null,-1),Pt={class:"searchstax-facet-values-container"},Dt={class:"searchstax-facet-input"},wt=["checked","disabled","onClick"],$t=["onClick"],Mt=["onClick"],Bt={key:0,class:"searchstax-facet-show-more-container"},Ot=["onClick"],At={key:0,class:"searchstax-facet-show-less-button searchstax-facet-show-button"},Vt={key:1,class:"searchstax-facet-show-more-button searchstax-facet-show-button"},Nt={key:1},qt={key:2,class:"searchstax-facets-container-mobile"},jt={class:"searchstax-facets-pills-container"},Ht=s.createElementVNode("div",{class:"searchstax-facets-pill-label"},"Filter By",-1),Wt=[Ht],_t={class:"searchstax-facets-pills-selected"},Ut=["onClick"],Qt={class:"searchstax-facets-pill-label"},Kt=s.createElementVNode("div",{class:"searchstax-facets-pill-icon-close"},null,-1),zt=s.createElementVNode("div",{class:"searchstax-facets-pill-label"},"Clear Filters",-1),Jt=[zt],Gt={class:"searchstax-facets-mobile-overlay-header"},Xt=s.createElementVNode("div",{class:"searchstax-facets-mobile-overlay-header-title"},"Filter By",-1),Yt={class:"searchstax-facets-container-mobile"},Zt=["onClick"],ea={class:"searchstax-facet-title"},ta=s.createElementVNode("div",{class:"searchstax-facet-title-arrow active"},null,-1),aa={class:"searchstax-facet-values-container"},sa={class:"searchstax-facet-input"},ra=["checked","disabled","onClick"],ia=["onClick"],na=["onClick"],oa={key:0,class:"searchstax-facet-show-more-container"},ca=["onClick"],la={key:0,class:"searchstax-facet-show-less-button searchstax-facet-show-button"},ha={key:1,class:"searchstax-facet-show-more-button searchstax-facet-show-button"},da={key:3};function ua(a,e,t,r,i,n){var o,c,h,d;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-facets-container"+a.rand},[(o=a.facetsTemplateDataDesktop)!=null&&o.hasResultsOrExternalPromotions&&!a.hasDesktopFacetsSlot?(s.openBlock(),s.createElementBlock("div",Et,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.facetsTemplateDataDesktop.facets,u=>(s.openBlock(),s.createElementBlock("div",{key:u.name+"desktop",class:s.normalizeClass(["searchstax-facet-container",{active:a.isNotDeactivated(u.name)}])},[s.createElementVNode("div",null,[s.createElementVNode("div",{class:"searchstax-facet-title-container",onClick:g=>a.toggleFacetGroup(u.name)},[s.createElementVNode("div",It,s.toDisplayString(u.label),1),Ft],8,Rt),s.createElementVNode("div",Pt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(u.values,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:g.value+g.parentName,class:s.normalizeClass(["searchstax-facet-value-container",{"searchstax-facet-value-disabled":g.disabled}]),ref_for:!0,ref:v=>{a.facetContainers[p+u.name]=v}},[s.createElementVNode("div",Dt,[s.createElementVNode("input",{type:"checkbox",class:"searchstax-facet-input-checkbox",checked:a.isChecked(g),disabled:g.disabled,onClick:v=>a.selectFacet(p+u.name,v,g,!0)},null,8,wt)]),s.createElementVNode("div",{class:"searchstax-facet-value-label",onClick:v=>a.selectFacet(p+u.name,v,g,!1)},s.toDisplayString(g.value),9,$t),s.createElementVNode("div",{class:"searchstax-facet-value-count",onClick:v=>a.selectFacet(p+u.name,v,g,!1)},"("+s.toDisplayString(g.count)+")",9,Mt)],2))),128)),u.hasMoreFacets?(s.openBlock(),s.createElementBlock("div",Bt,[s.createElementVNode("div",{class:"searchstax-facet-show-more-container",onClick:g=>a.showMoreLessDesktop(g,u)},[u.showingAllFacets?(s.openBlock(),s.createElementBlock("div",At,"less")):(s.openBlock(),s.createElementBlock("div",Vt,"more"))],8,Ot)])):s.createCommentVNode("",!0)])])],2))),128))])):s.createCommentVNode("",!0),a.hasDesktopFacetsSlot?(s.openBlock(),s.createElementBlock("div",Nt,[s.renderSlot(a.$slots,"desktopFacets",{facetsTemplateDataDesktop:a.facetsTemplateDataDesktop,isNotDeactivated:a.isNotDeactivated,toggleFacetGroup:a.toggleFacetGroup,isChecked:a.isChecked,selectFacet:a.selectFacet,showMoreLessDesktop:a.showMoreLessDesktop,facetContainers:a.facetContainers})])):s.createCommentVNode("",!0),(c=a.facetsTemplateDataMobile)!=null&&c.hasResultsOrExternalPromotions&&!a.hasMobileFacetsSlot?(s.openBlock(),s.createElementBlock("div",qt,[s.createElementVNode("div",jt,[s.createElementVNode("div",{class:"searchstax-facets-pill searchstax-facets-pill-filter-by",onClick:e[0]||(e[0]=(...u)=>a.openOverlay&&a.openOverlay(...u))},Wt),s.createElementVNode("div",_t,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.selectedFacetsCheckboxes,u=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-facets-pill searchstax-facets-pill-facets",key:u.value,onClick:g=>a.unselectFacet(u)},[s.createElementVNode("div",Qt,s.toDisplayString(u.value)+" ("+s.toDisplayString(u.count)+")",1),Kt],8,Ut))),128))]),a.selectedFacetsCheckboxes.length?(s.openBlock(),s.createElementBlock("div",{key:0,class:"searchstax-facets-pill searchstax-clear-filters searchstax-facets-pill-clear-all",onClick:e[1]||(e[1]=(...u)=>a.unselectAll&&a.unselectAll(...u))},Jt)):s.createCommentVNode("",!0)]),s.createElementVNode("div",{class:s.normalizeClass(["searchstax-facets-mobile-overlay",{"searchstax-show":(h=a.facetsTemplateDataMobile)==null?void 0:h.overlayOpened}])},[s.createElementVNode("div",Gt,[Xt,s.createElementVNode("div",{class:"searchstax-search-close",onClick:e[2]||(e[2]=(...u)=>a.closeOverlay&&a.closeOverlay(...u))})]),s.createElementVNode("div",Yt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList((d=a.facetsTemplateDataMobile)==null?void 0:d.facets,u=>(s.openBlock(),s.createElementBlock("div",{key:u.name+"mobile",class:s.normalizeClass(["searchstax-facet-container",{active:a.isNotDeactivated(u.name)}])},[s.createElementVNode("div",null,[s.createElementVNode("div",{class:"searchstax-facet-title-container",onClick:g=>a.toggleFacetGroup(u.name)},[s.createElementVNode("div",ea,s.toDisplayString(u.label),1),ta],8,Zt),s.createElementVNode("div",aa,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(u.values,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:g.value+g.parentName,class:s.normalizeClass(["searchstax-facet-value-container",{"searchstax-facet-value-disabled":g.disabled}]),ref_for:!0,ref:v=>{a.facetContainers[p+u.name]=v}},[s.createElementVNode("div",sa,[s.createElementVNode("input",{type:"checkbox",class:"searchstax-facet-input-checkbox",checked:a.isChecked(g),disabled:g.disabled,onClick:v=>a.selectFacet(p+u.name,v,g,!0)},null,8,ra)]),s.createElementVNode("div",{class:"searchstax-facet-value-label",onClick:v=>a.selectFacet(p+u.name,v,g,!1)},s.toDisplayString(g.value),9,ia),s.createElementVNode("div",{class:"searchstax-facet-value-count",onClick:v=>a.selectFacet(p+u.name,v,g,!1)},"("+s.toDisplayString(g.count)+")",9,na)],2))),128)),u.hasMoreFacets?(s.openBlock(),s.createElementBlock("div",oa,[s.createElementVNode("div",{class:"searchstax-facet-show-more-container",onClick:g=>a.showMoreLessMobile(g,u)},[u.showingAllFacets?(s.openBlock(),s.createElementBlock("div",la,"less")):(s.openBlock(),s.createElementBlock("div",ha,"more"))],8,ca)])):s.createCommentVNode("",!0)])])],2))),128))]),s.createElementVNode("button",{class:"searchstax-facets-mobile-overlay-done",onClick:e[3]||(e[3]=(...u)=>a.closeOverlay&&a.closeOverlay(...u))},"Done")],2)])):s.createCommentVNode("",!0),a.hasMobileFacetsSlot?(s.openBlock(),s.createElementBlock("div",da,[s.renderSlot(a.$slots,"mobileFacets",{facetsTemplateDataMobile:a.facetsTemplateDataMobile,selectedFacetsCheckboxes:a.selectedFacetsCheckboxes,isNotDeactivated:a.isNotDeactivated,toggleFacetGroup:a.toggleFacetGroup,isChecked:a.isChecked,selectFacet:a.selectFacet,showMoreLessDesktop:a.showMoreLessDesktop,facetContainers:a.facetContainers,openOverlay:a.openOverlay,unselectFacet:a.unselectFacet,unselectAll:a.unselectAll,closeOverlay:a.closeOverlay})])):s.createCommentVNode("",!0)],8,Tt)}const ga=$(Lt,[["render",ua]]),pa=s.defineComponent({name:"SearchstaxPaginationWidget",data(){return{paginationData:null,rand:Math.random(),paginationAdded:!1}},methods:{nextPage(a){m.searchstax.searchPaginationWidget.nextPage(a)},previousPage(a){m.searchstax.searchPaginationWidget.previousPage(a)},attachObservables(){m.searchstax.dataLayer.$searchObject.subscribe(a=>{this.addWidget()}),m.searchstax.dataLayer.$paginationData.subscribe(a=>{this.paginationData=a})},addWidget(){console.log("store.searchstax.routerHelper",m.searchstax.routerHelper),!this.paginationAdded&&m.searchstax.routerHelper&&(this.paginationAdded=!0,m.searchstax.addPaginationWidget("searchstax-pagination-container"+this.rand,{}))}},computed:{hasPaginationSlot(){return!!this.$slots.pagination},hasInfiniteScrollSlot(){return!!this.$slots.infiniteScroll}},mounted(){if(m.searchstax)this.attachObservables(),this.addWidget();else throw Error("Searchstax instance needs to be passed via props")}}),ma=["id"],fa={key:0,class:"searchstax-pagination-container"},va={class:"searchstax-pagination-content"},ya=["disabled"],ka={class:"searchstax-pagination-details"},Ca=["disabled"],ba={key:1},Sa={key:2,className:"searchstax-pagination-container"},xa={key:3};function La(a,e,t,r,i,n){var o,c,h,d,u,g,p,v,S,k,y,b,x;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-pagination-container"+a.rand},[a.paginationData&&!((o=a.paginationData)!=null&&o.isInfiniteScroll)&&!a.hasPaginationSlot?(s.openBlock(),s.createElementBlock("div",fa,[s.createElementVNode("div",va,[s.createElementVNode("a",{class:"searchstax-pagination-previous",disabled:(c=a.paginationData)==null?void 0:c.isFirstPage,onClick:e[0]||(e[0]=(...T)=>a.previousPage&&a.previousPage(...T)),id:"searchstax-pagination-previous"}," < Previous ",8,ya),s.createElementVNode("div",ka,s.toDisplayString((h=a.paginationData)==null?void 0:h.startResultIndex)+" - "+s.toDisplayString((d=a.paginationData)==null?void 0:d.endResultIndex)+" of "+s.toDisplayString((u=a.paginationData)==null?void 0:u.totalResults),1),s.createElementVNode("a",{class:"searchstax-pagination-next",disabled:(g=a.paginationData)==null?void 0:g.isLastPage,onClick:e[1]||(e[1]=(...T)=>a.nextPage&&a.nextPage(...T)),id:"searchstax-pagination-next"},"Next >",8,Ca)])])):s.createCommentVNode("",!0),a.hasPaginationSlot&&!((p=a.paginationData)!=null&&p.isInfiniteScroll)?(s.openBlock(),s.createElementBlock("div",ba,[s.renderSlot(a.$slots,"pagination",{paginationData:a.paginationData,nextPage:a.nextPage,previousPage:a.previousPage})])):s.createCommentVNode("",!0),a.paginationData&&((v=a.paginationData)!=null&&v.isInfiniteScroll)&&!((S=a.paginationData)!=null&&S.isLastPage)&&((k=a.paginationData)!=null&&k.hasResults)&&!a.hasInfiniteScrollSlot?(s.openBlock(),s.createElementBlock("div",Sa,[s.createElementVNode("a",{class:"searchstax-pagination-load-more",onClick:e[2]||(e[2]=(...T)=>a.nextPage&&a.nextPage(...T))},"Load More")])):s.createCommentVNode("",!0),a.hasInfiniteScrollSlot&&!((y=a.paginationData)!=null&&y.isLastPage)&&((b=a.paginationData)!=null&&b.hasResults)&&((x=a.paginationData)!=null&&x.isInfiniteScroll)?(s.openBlock(),s.createElementBlock("div",xa,[s.renderSlot(a.$slots,"infiniteScroll",{paginationData:a.paginationData,nextPage:a.nextPage})])):s.createCommentVNode("",!0)],8,ma)}const Ta=$(pa,[["render",La]]),Ea=s.defineComponent({name:"SearchstaxSearchFeedbackWidget",data(){return{searchFeedbackData:null,rand:Math.random()}},methods:{onOriginalQueryClick(a){m.searchstax.searchFeedbackWidget.onOriginalQueryClick(a)},attachObservables(){m.searchstax.dataLayer.$searchFeedbackData.subscribe(a=>{this.searchFeedbackData=a})}},computed:{hasFeedbackSlot(){return!!this.$slots.searchFeedback}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchFeedbackWidget("search-feedback-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ra=["id"],Ia={key:0,class:"searchstax-feedback-container"},Fa={key:0},Pa={class:"searchstax-feedback-container-suggested"},Da={key:0};function wa(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{class:"search-feedback-container",id:"search-feedback-container"+a.rand},[a.searchFeedbackData&&((o=a.searchFeedbackData)!=null&&o.searchExecuted)&&!a.hasFeedbackSlot&&((c=a.searchFeedbackData)!=null&&c.totalResults)?(s.openBlock(),s.createElementBlock("div",Ia,[s.createTextVNode(" Showing "),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.startResultIndex)+" - "+s.toDisplayString(a.searchFeedbackData.endResultIndex),1),s.createTextVNode(" of "),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.totalResults),1),s.createTextVNode(" results "),a.searchFeedbackData.searchTerm?(s.openBlock(),s.createElementBlock("span",Fa,[s.createTextVNode('for "'),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.searchTerm),1),s.createTextVNode('" ')])):s.createCommentVNode("",!0),s.createElementVNode("div",Pa,[a.searchFeedbackData.autoCorrectedQuery?(s.openBlock(),s.createElementBlock("div",Da,[s.createTextVNode(" Search instead for "),s.createElementVNode("a",{href:"#",onClick:e[0]||(e[0]=s.withModifiers(h=>a.onOriginalQueryClick(h),["prevent"])),class:"searchstax-feedback-original-query"},s.toDisplayString(a.searchFeedbackData.originalQuery),1)])):s.createCommentVNode("",!0)])])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"searchFeedback",{searchFeedbackData:a.searchFeedbackData,onOriginalQueryClick:a.onOriginalQueryClick})],8,Ra)}const $a=$(Ea,[["render",wa]]),Ma=s.defineComponent({name:"SearchstaxSortingWidget",data(){return{sortingData:null,selectedSorting:"",rand:Math.random()}},methods:{orderChange(a){m.searchstax.searchSortingWidget.setOrderQuery(a.target.value)},attachObservables(){m.searchstax.dataLayer.$searchSortingData.subscribe(a=>{this.sortingData=a}),m.searchstax.dataLayer.$searchObject.subscribe(a=>{this.selectedSorting=decodeURIComponent(a.order)})}},computed:{hasSortingSlot(){return!!this.$slots.sorting}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchSortingWidget("search-sorting-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ba=["id"],Oa={key:0,class:"searchstax-sorting-container"},Aa=s.createElementVNode("label",{class:"searchstax-sorting-label",for:"sort-by"},"Sort By",-1),Va=["value"],Na=s.createElementVNode("option",{value:""}," Relevance ",-1),qa=s.createElementVNode("option",{value:"date desc"}," Newest Content ",-1),ja=s.createElementVNode("option",{value:"date asc"}," Oldest Content ",-1),Ha=[Na,qa,ja];function Wa(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{id:"search-sorting-container"+a.rand},[a.sortingData&&((o=a.sortingData)!=null&&o.searchExecuted)&&((c=a.sortingData)!=null&&c.hasResultsOrExternalPromotions)&&!a.hasSortingSlot?(s.openBlock(),s.createElementBlock("div",Oa,[Aa,s.createElementVNode("select",{id:"searchstax-search-order-select",class:"searchstax-search-order-select",value:a.selectedSorting,onChange:e[0]||(e[0]=h=>a.orderChange(h))},Ha,40,Va)])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"sorting",{sortingData:a.sortingData,orderChange:a.orderChange,selectedSorting:a.selectedSorting})],8,Ba)}const _a=$(Ma,[["render",Wa]]),Ua=s.defineComponent({name:"SearchstaxExternalPromotionsWidget",data(){return{externalPromotionsData:null,rand:Math.random()}},methods:{attachObservables(){m.searchstax.dataLayer.$searchExternalPromotionsData.subscribe(a=>{this.externalPromotionsData=a})},trackClick(a,e){m.searchstax.externalPromotionsWidget.trackClick(a,e)}},computed:{hasExternalPromotionsSlot(){return!!this.$slots.externalPromotions}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addExternalPromotionsWidget("searchstax-external-promotions-layout-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Qa=["id"],Ka={key:0,class:"searchstax-external-promotions-container",id:"searchstax-external-promotions-container"},za=s.createElementVNode("div",{class:"icon-elevated"},null,-1),Ja=["onClick"],Ga={class:"searchstax-search-result-title-container"},Xa={class:"searchstax-search-result-title"},Ya={key:1,class:"searchstax-search-result-description searchstax-search-result-common"},Za={key:2,class:"searchstax-search-result-description searchstax-search-result-common"};function es(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-external-promotions-layout-container"+a.rand},[a.externalPromotionsData&&((o=a.externalPromotionsData)!=null&&o.searchExecuted)&&((c=a.externalPromotionsData)!=null&&c.hasExternalPromotions)&&!a.hasExternalPromotionsSlot?(s.openBlock(),s.createElementBlock("div",Ka,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.externalPromotionsData.externalPromotions,h=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-external-promotion searchstax-search-result",key:h.id},[za,h.url?(s.openBlock(),s.createElementBlock("a",{key:0,href:"{{externalPromotion.url}}",onClick:d=>a.trackClick(h,d),class:"searchstax-result-item-link"},null,8,Ja)):s.createCommentVNode("",!0),s.createElementVNode("div",Ga,[s.createElementVNode("span",Xa,s.toDisplayString(h.name),1)]),h.description?(s.openBlock(),s.createElementBlock("p",Ya,s.toDisplayString(h.description),1)):s.createCommentVNode("",!0),h.url?(s.openBlock(),s.createElementBlock("p",Za,s.toDisplayString(h.url),1)):s.createCommentVNode("",!0)]))),128))])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"externalPromotions",{externalPromotionsData:a.externalPromotionsData,trackClick:a.trackClick})],8,Qa)}const ts=$(Ua,[["render",es]]),as=s.defineComponent({name:"SearchstaxRelatedSearchesWidget",data(){return{relatedData:null,rand:Math.random()}},props:{relatedSearchesURL:{type:String,required:!0},relatedSearchesAPIKey:{type:String,required:!0}},methods:{executeSearch(a){m.searchstax.relatedSearchesWidget.executeSearch(a)},attachObservables(){m.searchstax.dataLayer.$searchRelatedSearchesData.subscribe(a=>{this.relatedData=a})}},computed:{hasRelatedSlot(){return!!this.$slots.related}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addRelatedSearchesWidget("searchstax-related-searches-container"+this.rand,{relatedSearchesURL:this.relatedSearchesURL,relatedSearchesAPIKey:this.relatedSearchesAPIKey});else throw Error("Searchstax instance needs to be passed via props")}}),ss={key:0,class:"searchstax-related-searches-container",id:"searchstax-related-searches-container"},rs=s.createElementVNode("span",{id:"searchstax-related-searches"},null,-1),is={key:0,class:"searchstax-related-search"},ns=["onClick"],os={key:0};function cs(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock(s.Fragment,null,[a.relatedData&&((o=a.relatedData)!=null&&o.searchExecuted)&&((c=a.relatedData)!=null&&c.hasRelatedSearches)&&!a.hasRelatedSlot?(s.openBlock(),s.createElementBlock("div",ss,[s.createTextVNode(" Related searches: "),rs,a.relatedData.relatedSearches?(s.openBlock(),s.createElementBlock("span",is,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.relatedData.relatedSearches,h=>(s.openBlock(),s.createElementBlock("span",{key:h.related_search,onClick:d=>a.executeSearch(h),class:"searchstax-related-search searchstax-related-search-item"},[s.createTextVNode(s.toDisplayString(h.related_search),1),h.last?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("span",os,","))],8,ns))),128))])):s.createCommentVNode("",!0)])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"related",{relatedData:a.relatedData,executeSearch:a.executeSearch})],64)}const ls=$(as,[["render",cs]]);exports.SearchstaxExternalPromotionsWidget=ts;exports.SearchstaxFacetsWidget=ga;exports.SearchstaxInputWidget=Ge;exports.SearchstaxPaginationWidget=Ta;exports.SearchstaxRelatedSearchesWidget=ls;exports.SearchstaxResultWidget=xt;exports.SearchstaxSearchFeedbackWidget=$a;exports.SearchstaxSortingWidget=_a;exports.SearchstaxWrapper=je;
240
+ `,selectId:"searchstax-search-order-select"}};class f{}l(f,"answer",Ce),l(f,"externalPromotions",be),l(f,"facets",Se),l(f,"pagination",xe),l(f,"relatedSearches",Le),l(f,"searchFeedback",Te),l(f,"searchInput",Ee),l(f,"searchResults",Re),l(f,"sorting",Ie);class Fe{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"externalPromotionsContainerId"),l(this,"searchExternalPromotionsMainContainer",null);var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.externalPromotionsContainerId=((r=(t=this.config.templates)==null?void 0:t.mainTemplate)==null?void 0:r.externalPromotionsContainerId)||f.externalPromotions.mainTemplate.externalPromotionsContainerId,this.searchExternalPromotionsMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}initializeSubscriptions(){this.dataLayer.$searchExternalPromotions.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data,externalPromotions:this.dataLayer.parsedData.externalPromotions};return this.dataLayer.setExternalPromotionsData(e),e}addExternalSearch(e){var t,r,i,n;const o=document.getElementById(this.externalPromotionsContainerId);if(o){const c=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.externalPromotion)==null?void 0:i.template)||((n=f.externalPromotions.externalPromotion)==null?void 0:n.template),h=document.createElement("div");h.classList.add("searchstax-external-promotion"),h.addEventListener("click",d=>{this.trackClick(e,d)}),h.innerHTML=C.render(c,e),o.appendChild(h)}}trackClick(e,t){t.stopPropagation(),t.preventDefault(),window.open(e.url,"_blank")}renderMainTemplate(e){var t,r,i,n;const o=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplate)==null?void 0:i.template)||((n=f.externalPromotions.mainTemplate)==null?void 0:n.template);if(this.dataLayer.renderingEngine===R.mustache){this.searchExternalPromotionsMainContainer.innerHTML=C.render(o,e);const c=document.getElementById(this.externalPromotionsContainerId);c&&(c.innerHTML="");for(const h of e.externalPromotions)this.addExternalSearch(h)}}}class Pe{constructor(e,t){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"routerHelper"),l(this,"cachedPhrase",""),l(this,"isCached",!1),l(this,"overlayOpened",!1),l(this,"facetPaginationStep"),l(this,"facetPaginationStepMobile"),l(this,"searchFacetsMainContainer",null),l(this,"searchFacetsMobileContainer",null),l(this,"searchFacetsDesktopContainer",null),l(this,"facetLimits",{}),l(this,"facetLimitsMobile",{}),l(this,"deactivatedFacets",{}),l(this,"cachedData",null),l(this,"cacheFacets"),l(this,"onFacetSelect",(r,i,n,o)=>{if(r.stopPropagation(),!i.disabled){const c=n.querySelector("input");c.checked=o?c.checked:!c.checked;const h=this.dataLayer.searchObject;let d=[...h.facets];const u=this.extractFacetValue(i);c.checked?d.find(g=>D.deepEqual(g,u)?g:!1)||(this.config.facetingType==="tabs"&&(d=d.filter(g=>g.name!==u.name)),d.push(u)):d=d.filter(g=>!D.deepEqual(g,u)),setTimeout(()=>{this.dataLayer.setSearchObject({...h,facets:d,page:1}),this.config.facetingType==="tabs"&&this.renderMainTemplate(this.generateTemplateData(),!0)},0)}}),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.cacheFacets=t,this.facetPaginationStep=this.config.itemsPerPageDesktop,this.facetPaginationStepMobile=this.config.itemsPerPageMobile,this.searchFacetsMainContainer=document.getElementById(this.containerId),this.needCache&&t(),this.initializeSubscriptions()}get needCache(){return this.config.facetingType==="showUnavailable"||this.config.facetingType==="or"||this.config.facetingType==="tabs"}get needDisabling(){return this.config.facetingType==="showUnavailable"}initializeSubscriptions(){this.needCache&&this.dataLayer.$searchFacetsCached.subscribe(e=>{e&&this.dataLayer.searchFacets&&this.renderMainTemplate(this.generateTemplateData())}),this.dataLayer.$searchResults.subscribe(e=>{e&&(this.needCache&&!this.isCached&&(this.dataLayer.searchFacets&&!this.dataLayer.searchFacetsCached&&this.dataLayer.setSearchFacetsCached(this.dataLayer.searchFacets),this.cacheFacets()),this.renderMainTemplate(this.generateTemplateData()))}),this.dataLayer.$searchObject.subscribe(e=>{this.cachedPhrase!==e.query?(this.cachedPhrase=e.query,this.isCached=!1):this.isCached=!0})}extractFacetValue(e){return{type:this.config.facetingType,name:e.parentName,value:e.value}}applyFacetLimits(e,t){const r=t?this.facetPaginationStepMobile:this.facetPaginationStep,i=t?this.facetLimits:this.facetLimitsMobile;return e.forEach(n=>{i[n.name]||(i[n.name]=r)}),e.map(n=>({...n,values:n.values.slice(0,i[n.name]),showingAllFacets:n.values.length<=i[n.name],hasMoreFacets:n.values.length>r}))}generateTemplateData(e){if(this.generateSelectedFacetsData(),this.dataLayer.searchFacets){let t=this.dataLayer.searchFacets;this.needCache&&this.dataLayer.searchFacetsCached&&(t=this.dataLayer.searchFacetsCached,this.needDisabling&&(t=t.map(i=>{var n;const o=(n=this.dataLayer.searchFacets)==null?void 0:n.find(c=>c.name===i.name);return o?{...i,values:i.values.map(c=>{const h=o.values.find(d=>c.type==="range"?!1:c.type==="checkbox"?d.value===c.value:!1);return{...c,disabled:!h,isMobile:e}})}:{...i,values:i.values.map(c=>({...c,disabled:!0})),isMobile:e}}))),this.config.specificFacets&&(t=t.filter(i=>{var n;return(n=this.config.specificFacets)==null?void 0:n.includes(i.name)}));const r={facets:this.applyFacetLimits(t,e),...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(r),r}else{const t={facets:[],...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(t),t}}createFacetItem(e,t,r){var i,n,o,c,h,d,u,g,p,v,S,k;const y=document.createElement("div");y.classList.add("searchstax-facet-container"),this.deactivatedFacets[e.name]||y.classList.add("active");const b=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.facetItemContainerTemplate)==null?void 0:o.template)||((c=f.facets.facetItemContainerTemplate)==null?void 0:c.template);y.innerHTML=C.render(b,e),t.appendChild(y);const x=y.querySelector("."+(((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.facetItemContainerTemplate)==null?void 0:u.facetListTitleContainerClass)||((g=f.facets.facetItemContainerTemplate)==null?void 0:g.facetListTitleContainerClass)));x==null||x.addEventListener("click",()=>{y.classList.toggle("active")});const T=y.querySelector("."+(((S=(v=(p=this.config)==null?void 0:p.templates)==null?void 0:v.facetItemContainerTemplate)==null?void 0:S.facetListContainerClass)||((k=f.facets.facetItemContainerTemplate)==null?void 0:k.facetListContainerClass)));T&&(e.values.forEach(F=>{this.createFacetListItem(F,T)}),e.hasMoreFacets&&this.createHasMoreComponent(e,T,r))}isChecked(e){var t;return!!((t=this.dataLayer.searchObject.facets)!=null&&t.find(r=>D.deepEqual(r,this.extractFacetValue(e))))}createFacetListItem(e,t){var r,i,n,o,c,h,d,u,g,p,v,S,k;const y=document.createElement("div");y.classList.add("searchstax-facet-value-container"),e.disabled&&y.classList.add("searchstax-facet-value-disabled");const b=this.isChecked(e),x=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.facetItemTemplate)==null?void 0:n.template)||((o=f.facets.facetItemTemplate)==null?void 0:o.template);y.innerHTML=C.render(x,{...e,isChecked:b});let T=(c=f.facets.facetItemTemplate)==null?void 0:c.checkTriggerClasses;T=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.facetItemTemplate)==null?void 0:u.checkTriggerClasses)||T,T.forEach(F=>{var E;(E=y.querySelector("."+F))==null||E.addEventListener("click",M=>{this.onFacetSelect(M,e,y)})}),(k=y.querySelector("."+(((v=(p=(g=this.config)==null?void 0:g.templates)==null?void 0:p.facetItemTemplate)==null?void 0:v.inputCheckboxClass)||((S=f.facets.facetItemTemplate)==null?void 0:S.inputCheckboxClass))))==null||k.addEventListener("click",F=>{this.onFacetSelect(F,e,y,!0)}),t.appendChild(y)}createHasMoreComponent(e,t,r){var i,n,o,c,h,d,u,g;const p=document.createElement("div");p.classList.add("searchstax-facet-show-more-container");const v=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.showMoreButtonContainerTemplate)==null?void 0:o.template)||((c=f.facets.showMoreButtonContainerTemplate)==null?void 0:c.template);p.innerHTML=C.render(v,e);const S=p.querySelector("."+(((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.showMoreButtonContainerTemplate)==null?void 0:u.showMoreButtonClass)||((g=f.facets.showMoreButtonContainerTemplate)==null?void 0:g.showMoreButtonClass)));S&&(this.attachOnclickToShowMore(e,S,r),t&&t.appendChild(S))}attachOnclickToShowMore(e,t,r){t.addEventListener("click",i=>{this.onShowMoreLessClick(i,e,r)})}onShowMoreLessClick(e,t,r){e.preventDefault();const i=r?this.facetPaginationStepMobile:this.facetPaginationStep,n=r?this.facetLimits:this.facetLimitsMobile;n[t.name]===void 0?n[t.name]=i*2:n[t.name]<=t.values.length?n[t.name]=n[t.name]+i:n[t.name]=i,this.generateTemplateData(r),this.renderMainTemplate(this.generateTemplateData())}renderMainTemplate(e,t){var r,i,n,o,c,h,d,u,g,p,v;if(e&&(!D.deepEqual(this.cachedData??{},e)||t)){this.cachedData=e;const S=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.mainTemplateDesktop)==null?void 0:n.template)||((o=f.facets.mainTemplateDesktop)==null?void 0:o.template);if(this.dataLayer.renderingEngine===R.mustache&&this.searchFacetsMainContainer){this.searchFacetsMainContainer.innerHTML=C.render(S,{...e});const k=(u=this.searchFacetsMainContainer)==null?void 0:u.querySelector("."+(((d=(h=(c=this.config)==null?void 0:c.templates)==null?void 0:h.mainTemplateDesktop)==null?void 0:d.facetsContainerClass)||f.facets.mainTemplateDesktop.facetsContainerClass));if(k){k.innerHTML="";for(const y of e.facets)this.createFacetItem(y,k);if(this.searchFacetsMainContainer){const y=this.searchFacetsMainContainer.querySelector("."+(((v=(p=(g=this.config)==null?void 0:g.templates)==null?void 0:p.mainTemplateDesktop)==null?void 0:v.selectedFacetsContainerClass)||f.facets.mainTemplateDesktop.selectedFacetsContainerClass));y&&(this.createSelectedFacetsComponents(y),this.createClearFacetsComponents(y))}}}this.renderMobileTemplate(this.generateTemplateData(!0))}else this.generateSelectedFacetsData()}generateSelectedFacetsData(){const e=[],t=this.dataLayer.searchObject.facets;for(const r of t){const i=decodeURIComponent(r.name),n=decodeURIComponent(r.value);if(this.dataLayer.searchFacets){const o=this.needCache?this.dataLayer.searchFacetsCached:this.dataLayer.searchFacets,c=o==null?void 0:o.find(h=>h.name===i);if(c){const h=c.values.find(d=>d.type==="range"?!1:d.type==="checkbox"?`"${d.value}"`==`"${n}"`:!1);h&&e.push(h)}}}this.dataLayer.setSelectedFacetsTemplateData(e)}createSelectedFacetsComponents(e){var t;this.generateSelectedFacetsData(),(t=this.dataLayer.selectedFacetsTemplateData)==null||t.forEach(r=>{this.createSelectedFacetsComponent(e,r)})}createClearFacetsComponents(e){var t,r,i,n,o,c,h,d;const u=this.dataLayer.searchObject,g=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.clearFacetsTemplate)==null?void 0:i.template)||((n=f.facets.clearFacetsTemplate)==null?void 0:n.template),p=document.createElement("div");p.innerHTML=C.render(g,{shouldShow:u.facets.length>0});const v=p.querySelector("."+(((h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.clearFacetsTemplate)==null?void 0:h.containerClass)||((d=f.facets.clearFacetsTemplate)==null?void 0:d.containerClass)));v&&(v.addEventListener("click",()=>{this.removeSelectedFacets()}),e.appendChild(v))}createSelectedFacetsComponent(e,t){var r,i,n,o,c,h,d,u;const g=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.selectedFacetsTemplate)==null?void 0:n.template)||((o=f.facets.selectedFacetsTemplate)==null?void 0:o.template),p=document.createElement("div");p.innerHTML=C.render(g,t);const v=p.querySelector("."+(((d=(h=(c=this.config)==null?void 0:c.templates)==null?void 0:h.selectedFacetsTemplate)==null?void 0:d.containerClass)||((u=f.facets.selectedFacetsTemplate)==null?void 0:u.containerClass)));v&&(v.addEventListener("click",()=>{this.unselectFacet(t)}),e.appendChild(v))}unselectFacet(e){const t=this.dataLayer.searchObject;let r=[...t.facets];e.type==="checkbox"&&(r=r.filter(i=>JSON.stringify(i)!==JSON.stringify(this.extractFacetValue(e)))),setTimeout(()=>{this.dataLayer.setSearchObject({...t,facets:r}),this.generateSelectedFacetsData()},0)}removeSelectedFacets(){const e=this.dataLayer.searchObject;this.dataLayer.setSearchObject({...e,facets:[]})}createFilterByComponent(e){var t,r,i,n,o,c,h,d;const u=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.filterByTemplate)==null?void 0:i.template)||((n=f.facets.filterByTemplate)==null?void 0:n.template),g=document.createElement("div");g.innerHTML=C.render(u,{});const p=g.querySelector("."+(((h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.filterByTemplate)==null?void 0:h.containerClass)||((d=f.facets.filterByTemplate)==null?void 0:d.containerClass)));p&&(e.prepend(p),p.addEventListener("click",this.openOverlay.bind(this)))}openOverlay(){var e;this.overlayOpened=!0,this.searchFacetsMainContainer&&(document.body.classList.toggle("searchstax-no-scroll"),(e=this.searchFacetsMainContainer.querySelector(".searchstax-facets-mobile-overlay"))==null||e.classList.add("searchstax-show"))}closeOverlay(){var e;this.overlayOpened=!1,this.searchFacetsMainContainer&&(document.body.classList.toggle("searchstax-no-scroll"),(e=this.searchFacetsMainContainer.querySelector(".searchstax-facets-mobile-overlay"))==null||e.classList.remove("searchstax-show"))}renderMobileTemplate(e){var t,r,i,n,o,c,h,d,u,g,p,v,S,k,y,b,x,T,F;if(e){const E=document.createElement("div");E.classList.add("searchstax-facets-container-mobile");const M=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplateMobile)==null?void 0:i.template)||((n=f.facets.mainTemplateMobile)==null?void 0:n.template);if(this.dataLayer.renderingEngine===R.mustache){if(E.innerHTML=C.render(M,{...e,overlayOpened:this.overlayOpened}),(o=this.searchFacetsMainContainer)==null||o.appendChild(E),(h=(c=this.config)==null?void 0:c.templates)!=null&&h.mainTemplateMobile)for(const V of((g=(u=(d=this.config)==null?void 0:d.templates)==null?void 0:u.mainTemplateMobile)==null?void 0:g.closeOverlayTriggerClasses)||[]){const N=E.querySelector("."+V);N&&N.addEventListener("click",this.closeOverlay.bind(this))}else for(const V of f.facets.mainTemplateMobile.closeOverlayTriggerClasses){const N=E.querySelector("."+V);N&&N.addEventListener("click",this.closeOverlay.bind(this))}const _=E.querySelector("."+(((S=(v=(p=this.config)==null?void 0:p.templates)==null?void 0:v.mainTemplateMobile)==null?void 0:S.filterByContainerClass)||f.facets.mainTemplateMobile.filterByContainerClass));_&&this.createFilterByComponent(_);const P=E.querySelector("."+(((b=(y=(k=this.config)==null?void 0:k.templates)==null?void 0:y.mainTemplateMobile)==null?void 0:b.selectedFacetsContainerClass)||f.facets.mainTemplateMobile.selectedFacetsContainerClass));P&&(this.createSelectedFacetsComponents(P),this.createClearFacetsComponents(P));const U=E.querySelector("."+(((F=(T=(x=this.config)==null?void 0:x.templates)==null?void 0:T.mainTemplateMobile)==null?void 0:F.facetsContainerClass)||f.facets.mainTemplateMobile.facetsContainerClass));if(U){U.innerHTML="";for(const V of e.facets)this.createFacetItem(V,U,!0)}}}}}class De{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"previousButtonClass"),l(this,"nextButtonClass"),l(this,"loadMoreButtonClass"),l(this,"routerHelper"),l(this,"searchPaginationMainContainer",null);var t,r,i,n,o,c,h,d,u;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.previousButtonClass=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplate)==null?void 0:i.previousButtonClass)??f.pagination.mainTemplate.previousButtonClass,this.nextButtonClass=((c=(o=(n=this.config)==null?void 0:n.templates)==null?void 0:o.mainTemplate)==null?void 0:c.nextButtonClass)??f.pagination.mainTemplate.nextButtonClass,this.loadMoreButtonClass=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:u.loadMoreButtonClass)??f.pagination.infiniteScrollTemplate.loadMoreButtonClass,this.searchPaginationMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}get isFirstPage(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.page)===1}get isLastPage(){return this.dataLayer.parsedData.data.isLastPage}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){var e,t,r,i;const n={...this.dataLayer.parsedData.data,previousPageLink:(t=this.routerHelper)==null?void 0:t.searchObjectToUrl({...this.dataLayer.searchObject,page:((e=this.dataLayer.searchObject)==null?void 0:e.page)-1}),nextPageLink:(i=this.routerHelper)==null?void 0:i.searchObjectToUrl({...this.dataLayer.searchObject,page:((r=this.dataLayer.searchObject)==null?void 0:r.page)+1})};return this.dataLayer.setPaginationData(n),n}goToPage(e,t){const r=this.dataLayer.searchObject;r&&(r.page=e,this.dataLayer.setSearchObject(r)),t||window.scrollTo(0,0)}nextPage(e){var t;e.preventDefault(),e.stopPropagation(),this.isLastPage||this.goToPage(((t=this.dataLayer.searchObject)==null?void 0:t.page)+1,this.dataLayer.isInfiniteScroll)}previousPage(e){var t;e.preventDefault(),e.stopPropagation(),this.isFirstPage||this.goToPage(((t=this.dataLayer.searchObject)==null?void 0:t.page)-1)}overridePaginationEvents(){if(this.searchPaginationMainContainer){const e=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass),t=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass),r=this.searchPaginationMainContainer.querySelector("."+this.loadMoreButtonClass);e&&e.addEventListener("click",this.previousPage.bind(this)),t&&t.addEventListener("click",this.nextPage.bind(this)),r&&r.addEventListener("click",this.nextPage.bind(this))}}renderMainTemplate(e){var t,r,i,n,o,c,h,d,u,g;this.searchPaginationMainContainer&&((t=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass))==null||t.removeEventListener("click",this.previousPage),(r=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass))==null||r.removeEventListener("click",this.nextPage));let p=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.mainTemplate)==null?void 0:o.template)||((c=f.pagination.mainTemplate)==null?void 0:c.template);this.dataLayer.isInfiniteScroll&&(p=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:u.template)||((g=f.pagination.infiniteScrollTemplate)==null?void 0:g.template)),this.dataLayer.renderingEngine===R.mustache&&(this.searchPaginationMainContainer.innerHTML=C.render(p,e),setTimeout(()=>{this.overridePaginationEvents()},0))}}class we{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"relatedSearchesContainerClass"),l(this,"searchRelatedSearchesMainContainer",null),l(this,"track");var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.relatedSearchesContainerClass=((r=(t=this.config.templates)==null?void 0:t.main)==null?void 0:r.relatedSearchesContainerClass)||f.relatedSearches.main.relatedSearchesContainerClass,this.searchRelatedSearchesMainContainer=document.getElementById(this.containerId),this.track=e.trackRelatedSearchClick,this.initializeSubscriptions()}initializeSubscriptions(){this.dataLayer.$searchRelatedSearches.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setRelatedSearchesData(e),e}addRelatedSearchComponent(e,t){var r,i,n,o,c;const h=document.createElement("div"),d=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.relatedSearch)==null?void 0:n.template)||f.relatedSearches.relatedSearch.template;if(this.dataLayer.renderingEngine===R.mustache){h.innerHTML=C.render(d,e);const u=h.querySelector("."+(((c=(o=this.config.templates)==null?void 0:o.relatedSearch)==null?void 0:c.relatedSearchContainerClass)||f.relatedSearches.relatedSearch.relatedSearchContainerClass));u&&(t.appendChild(u),u.addEventListener("click",()=>{this.executeSearch(e)}))}}executeSearch(e){const t=this.dataLayer.searchObject;t.query=e.related_search,this.dataLayer.setSearchObject(t),this.track(e)}renderMainTemplate(e){var t,r,i,n;const o=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.relatedSearches.main.template;if(this.dataLayer.renderingEngine===R.mustache&&this.searchRelatedSearchesMainContainer){this.searchRelatedSearchesMainContainer.innerHTML="",this.searchRelatedSearchesMainContainer.innerHTML=C.render(o,e);const c=(n=this.searchRelatedSearchesMainContainer)==null?void 0:n.querySelector(`.${this.relatedSearchesContainerClass}`);if(c)for(const h of e.relatedSearches)this.addRelatedSearchComponent(h,c)}}}class $e{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"searchFeedbackMainContainer",null),l(this,"searchTrigger"),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.searchTrigger=e.searchTrigger,this.searchFeedbackMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions()}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setSearchFeedbackData(e),e}onOriginalQueryClick(e){var t;e.stopPropagation(),e.preventDefault();const r=(t=e.target)==null?void 0:t.innerHTML;this.searchTrigger(r,!0)}attachClick(){var e,t,r,i,n;const o=(n=this.searchFeedbackMainContainer)==null?void 0:n.querySelector("."+(((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.main)==null?void 0:r.originalQueryClass)||((i=f.searchFeedback.main)==null?void 0:i.originalQueryClass)));o&&o.addEventListener("click",this.onOriginalQueryClick.bind(this))}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.searchFeedback.main.template;this.dataLayer.renderingEngine===R.mustache&&(this.searchFeedbackMainContainer.innerHTML=C.render(n,e),setTimeout(()=>{this.attachClick()},0))}}class Me{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"suggestAfterMinChars"),l(this,"containerId"),l(this,"currentInputValue",""),l(this,"autosuggestResults"),l(this,"searchInput"),l(this,"actionButton"),l(this,"autosuggestContainer"),l(this,"buttonState","search"),l(this,"selectedAutosuggestItem",-1),l(this,"suggestTrigger"),l(this,"searchTrigger"),this.dataLayer=e.dataLayer,this.config=e.config,this.searchTrigger=e.searchTrigger,this.suggestTrigger=e.suggestTrigger,this.containerId=e.containerId,this.suggestAfterMinChars=e.config.suggestAfterMinChars,this.renderMainTemplate(),this.actionButtonInit(),this.updateActionButtonState("search"),this.searchInput&&(this.createAutosuggestContainer(),this.attachSubscriptions())}renderMainTemplate(){var e,t,r,i;const n=document.getElementById(this.containerId);if(!n)throw new Error("Search input container not found");const o=((t=(e=this.config.templates)==null?void 0:e.mainTemplate)==null?void 0:t.template)||f.searchInput.mainTemplate.template;if(this.dataLayer.renderingEngine===R.mustache){const d=C.render(o,{});n.innerHTML=d}const c=((i=(r=this.config.templates)==null?void 0:r.mainTemplate)==null?void 0:i.searchInputId)||f.searchInput.mainTemplate.searchInputId,h=document.querySelector(`#${c}`);if(h)this.searchInput=h,h.addEventListener("keyup",this.inputKeyupEvent.bind(this)),h.addEventListener("blur",this.hideAutosuggest.bind(this)),h.addEventListener("paste",this.inputPasteEvent.bind(this));else throw new Error("Input not found")}createAutosuggestContainer(){var e;this.dataLayer.renderingEngine===R.mustache&&(this.autosuggestContainer=document.createElement("div"),this.autosuggestContainer.classList.add("searchstax-autosuggest-container"),this.autosuggestContainer.addEventListener("mouseleave",()=>{this.resetAutosuggestSelection(),this.markActiveAutosuggestItem()}),(e=this.searchInput)==null||e.after(this.autosuggestContainer))}actionButtonInit(){this.actionButton=document.getElementById("searchstax-search-input-action-button"),this.actionButton&&this.actionButton.addEventListener("click",()=>{var e;this.buttonState==="search"?this.executeSearch(((e=this.searchInput)==null?void 0:e.value)??""):this.buttonState==="close"&&this.searchInput&&(this.searchInput.value="",this.executeSearch(""))})}attachSubscriptions(){this.dataLayer.$searchTermChange.subscribe(()=>{this.handleSearchTermChange()}),this.dataLayer.$loadingChange.subscribe(()=>{this.handleLoadingChange()}),this.dataLayer.$searchAutosuggest.subscribe(e=>{e&&this.appendSuggestions(e)}),this.dataLayer.$searchObject.subscribe(e=>{e.query!=="undefined"&&e.query!==void 0&&e.query!=="*"&&this.searchInput&&(this.searchInput.value=this.cleanSuggestionTerm(e.query??""))})}handleLoadingChange(){this.dataLayer.loading?this.updateActionButtonState("loading"):this.handleSearchTermChange()}handleSearchTermChange(){var e;this.dataLayer.searchTerm===((e=this.searchInput)==null?void 0:e.value)&&this.searchInput.value!==""?this.updateActionButtonState("close"):this.updateActionButtonState("search")}updateActionButtonState(e){if(this.buttonState=e,this.actionButton)switch(this.actionButton.classList.remove("searchstax-spinner-icon"),this.actionButton.classList.remove("searchstax-search-close"),this.actionButton.classList.remove("searchstax-search-icon"),e){case"loading":this.actionButton.classList.add("searchstax-spinner-icon");break;case"search":this.actionButton.classList.add("searchstax-search-icon");break;case"close":this.actionButton.classList.add("searchstax-search-close");break}}selectPreviousAutosuggestItem(){this.selectedAutosuggestItem>0?this.selectedAutosuggestItem--:this.selectedAutosuggestItem=this.autosuggestResults.suggestions.length-1,this.markActiveAutosuggestItem()}selectNextAutosuggestItem(){this.selectedAutosuggestItem<this.autosuggestResults.suggestions.length-1?this.selectedAutosuggestItem++:this.selectedAutosuggestItem=0,this.markActiveAutosuggestItem()}resetAutosuggestSelection(){this.selectedAutosuggestItem=-1,this.markActiveAutosuggestItem()}markActiveAutosuggestItem(){const e=document.getElementsByClassName("searchstax-autosuggest-item");for(let t=0;t<e.length;t++){const r=e[t];t===this.selectedAutosuggestItem?r.classList.add("active"):r.classList.remove("active")}}inputKeyupEvent(e){const t=e.key;this.currentInputValue=e.target.value,t==="Enter"?this.suggestionChosen():t==="Escape"?this.hideAutosuggest():t==="ArrowUp"?this.selectPreviousAutosuggestItem():t==="ArrowDown"?this.selectNextAutosuggestItem():this.autosuggestHandling(e),this.handleSearchTermChange()}autosuggestHandling(e){e.target&&e.target.value.length>=this.suggestAfterMinChars?this.executeSuggest(e.target.value):this.hideAutosuggest()}inputPasteEvent(e){setTimeout(()=>{this.autosuggestHandling(e),this.handleSearchTermChange()},0)}executeSuggest(e){this.suggestTrigger(e)}executeSearch(e){this.hideAutosuggest(),this.searchTrigger(e===""?"*":e)}suggestionChosen(){this.selectedAutosuggestItem>-1?this.autosuggestItemClicked(this.autosuggestResults.suggestions[this.selectedAutosuggestItem]):this.executeSearch(this.currentInputValue)}hideAutosuggest(){setTimeout(()=>{this.dataLayer.setAutosuggestResults({numFound:0,suggestions:[]}),this.autosuggestContainer&&(this.autosuggestContainer.innerHTML="",this.autosuggestContainer.classList.add("hidden")),this.resetAutosuggestSelection()},100)}cleanSuggestionTerm(e){return w.removeXSSRiskyTags(e.replace(/(<([^>]+)>)/gi,"")).trim()}autosuggestItemClicked(e){this.searchInput.value=this.cleanSuggestionTerm(e.term??""),this.executeSearch(this.cleanSuggestionTerm(e.term))}createAutosuggestItem(e){var t,r,i;const n=document.createElement("div");n.classList.add("searchstax-autosuggest-item"),n.addEventListener("click",()=>{this.autosuggestItemClicked(e)}),n.addEventListener("mouseenter",()=>{this.onSuggestionEnter(e)});const o=((r=(t=this.config.templates)==null?void 0:t.autosuggestItemTemplate)==null?void 0:r.template)||((i=f.searchInput.autosuggestItemTemplate)==null?void 0:i.template);return n.innerHTML=C.render(o,e),n}onSuggestionEnter(e){var t;this.selectedAutosuggestItem=((t=this.autosuggestResults)==null?void 0:t.suggestions.indexOf(e))||0,this.markActiveAutosuggestItem()}appendSuggestions(e){this.autosuggestContainer&&(this.autosuggestContainer.innerHTML="",this.autosuggestContainer.classList.remove("hidden"));for(const t in e.suggest)if(Object.prototype.hasOwnProperty.call(e.suggest,t)){const r=e.suggest[t];for(const i in r)if(Object.prototype.hasOwnProperty.call(r,i)){const n=r[i];this.autosuggestResults=n,this.dataLayer.setAutosuggestResults(n),n.numFound>0?n.suggestions.forEach(o=>{this.autosuggestContainer&&this.autosuggestContainer.appendChild(this.createAutosuggestItem(o))}):this.autosuggestContainer&&this.autosuggestContainer.classList.add("hidden")}}}}class Be{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"linkClickCallback"),l(this,"searchCallback"),l(this,"containerId"),l(this,"searchResultsMainContainer"),l(this,"searchResultsContainer"),l(this,"searchResultLinks",[]),this.linkClickCallback=e.linkClickCallback,this.searchCallback=e.searchTrigger,this.dataLayer=e.dataLayer,this.config=e.config,setTimeout(()=>{this.dataLayer.setSearchObject({...this.dataLayer.searchObject,itemsPerPage:this.config.resultsPerPage||10})},0),this.containerId=e.containerId;const t=document.getElementById(this.containerId);if(t)this.searchResultsMainContainer=t;else throw new Error(`Search Results Main Container with id ${this.containerId} not found`);this.dataLayer.setIsInfiniteScroll(e.config.renderMethod==="infiniteScroll"),this.initializeSubscriptions(),this.renderMainTemplate()}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.searchResultsContainer&&this.renderResults(e)})}changeTemplate(){this.dataLayer.searchResults&&this.renderResults(this.dataLayer.searchResults)}renderNoResultsTemplate(){var e,t,r,i,n;const o=((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.noSearchResultTemplate)==null?void 0:r.template)||((i=f.searchResults.noSearchResultTemplate)==null?void 0:i.template),c=((n=this.dataLayer.searchResultsMetadata)==null?void 0:n.spellingSuggestion)??"";if(this.dataLayer.renderingEngine===R.mustache&&this.searchResultsContainer&&(this.searchResultsContainer.innerHTML=C.render(o,{spellingSuggestion:c,searchTerm:this.dataLayer.searchTerm})),c&&this.searchResultsContainer){const h=this.searchResultsContainer.querySelector("a");h&&h.addEventListener("click",d=>{d.preventDefault(),d.stopPropagation(),this.searchCallback(c)})}}renderResults(e){var t,r,i,n,o;if(this.dataLayer.renderingEngine===R.mustache&&this.searchResultsContainer)if(this.removeLinkClickEvents(),e.length===0)this.renderNoResultsTemplate();else{const c=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.searchResultTemplate)==null?void 0:i.template)||((n=f.searchResults.searchResultTemplate)==null?void 0:n.template),h=e.map(d=>C.render(c,d));((o=this.config)==null?void 0:o.renderMethod)==="infiniteScroll"&&this.dataLayer.searchObject.page>1?this.searchResultsContainer.innerHTML+=h.join(""):this.searchResultsContainer.innerHTML=h.join(""),this.searchResultLinks=Array.from(this.searchResultsContainer.querySelectorAll(`[${this.uniqueIdAttribute}]`)),this.attachLinkClickEvents()}}removeLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.removeEventListener("click",()=>{})})}get uniqueIdAttribute(){var e,t,r,i;return((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.searchResultTemplate)==null?void 0:r.searchResultUniqueIdAttribute)||((i=f.searchResults.searchResultTemplate)==null?void 0:i.searchResultUniqueIdAttribute)}attachLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();const r=e.getAttribute(this.uniqueIdAttribute)??"";r&&this.linkClickCallback(r)})})}renderMainTemplate(){var e,t,r,i;const n=((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.mainTemplate)==null?void 0:r.template)||((i=f.searchResults.mainTemplate)==null?void 0:i.template);this.dataLayer.renderingEngine===R.mustache&&(this.searchResultsMainContainer.innerHTML=C.render(n,{}),setTimeout(()=>{var o,c,h,d,u,g,p;const v=(h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.mainTemplate)!=null&&h.searchResultsContainerId?(g=(u=(d=this.config)==null?void 0:d.templates)==null?void 0:u.mainTemplate)==null?void 0:g.searchResultsContainerId:(p=f.searchResults.mainTemplate)==null?void 0:p.searchResultsContainerId,S=document.getElementById(v);if(S)this.searchResultsContainer=S;else throw new Error(`Search Results Container with id ${v} not found`)},0))}}class Oe{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"selectId"),l(this,"searchSortingMainContainer",null);var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.selectId=((r=(t=this.config.templates)==null?void 0:t.main)==null?void 0:r.selectId)||f.sorting.main.selectId,this.searchSortingMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setSearchSortingData(e),e}setOrderQuery(e){const t=this.dataLayer.searchObject;t&&(t.order=e,this.dataLayer.setSearchObject(t))}markOptionSelected(){const e=document.getElementById(this.selectId);if(e){const t=e.querySelector(`option[value="${decodeURIComponent(this.dataLayer.searchObject.order)}"]`);t&&(t.selected=!0)}}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.sorting.main.template;if(this.dataLayer.renderingEngine===R.mustache){this.searchSortingMainContainer.innerHTML=C.render(n,e),this.markOptionSelected();const o=document.getElementById(this.selectId);o&&o.addEventListener("change",c=>{this.setOrderQuery(c.target.value)})}}}class Ae{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"answerContainer",null),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.answerContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.dataLayer.setIsAnswerWidgetCreated(!0)}initializeSubscriptions(){this.dataLayer.$answer.subscribe(()=>{this.renderMainTemplate(this.dataLayer.parsedData.data)}),this.dataLayer.$paginationData.subscribe(()=>{this.renderMainTemplate(this.dataLayer.parsedData.data)})}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.answer.main.template;this.dataLayer.renderingEngine===R.mustache&&(this.answerContainer.innerHTML=C.render(n,e))}}class Ve{constructor(e=R.mustache){l(this,"routerEnabled",!1),l(this,"cachedQuery",""),l(this,"routerHelper"),l(this,"searchHelper"),l(this,"searchResultsConfig"),l(this,"searchPaginationConfig"),l(this,"searchFeedbackConfig"),l(this,"searchSortingConfig"),l(this,"searchFacetsConfig"),l(this,"relatedSearchesConfig"),l(this,"externalPromotionsConfig"),l(this,"searchInputWidget"),l(this,"searchResultsWidget"),l(this,"searchFacetsWidget"),l(this,"searchPaginationWidget"),l(this,"searchFeedbackWidget"),l(this,"searchSortingWidget"),l(this,"relatedSearchesWidget"),l(this,"externalPromotionsWidget"),l(this,"answerWidget"),l(this,"dataLayer"),l(this,"firstRequest",!0),this.dataLayer=new te("searchstax_session_id"),e&&this.dataLayer.setRenderingEngine(e),this.handleHooks()}setRenderingEngine(e=R.mustache){this.dataLayer.setRenderingEngine(e)}handleHooks(){var e,t;(t=(e=this.dataLayer.searchstaxConfig)==null?void 0:e.hooks)!=null&&t.afterSearch&&this.dataLayer.$searchResults.subscribe(r=>{this.dataLayer.searchstaxConfig.hooks.afterSearch(r)}),this.dataLayer.$searchObject.subscribe(r=>{var i;r.query!==""&&r.query!==void 0&&r.query!=="undefined"&&(this.search(r),this.dataLayer.turnAIAnswerGenerationOn===!0&&((i=this.searchHelper)==null||i.startSSE(r.query,this.parseAnswerResultsResponse.bind(this))))}),this.dataLayer.$searchResults.subscribe(r=>{r&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&j.trackSearch({...this.dataLayer.parsedData.trackingData,impressions:this.dataLayer.searchResultsMetadata.impressions})})}initialize(e){var t,r;e.turnAIAnswerGenerationOn===!0&&(this.dataLayer.turnAIAnswerGenerationOn=!0),e.autoCorrect===!1&&(this.dataLayer.autoCorrect=!1),this.dataLayer.searchstaxConfig||(this.dataLayer.setSearchstaxConfig(e),this.searchHelper=new se({...e,sessionId:this.dataLayer.sessionId},this.dataLayer)),((t=e.router)==null?void 0:t.enabled)===void 0||((r=e.router)==null?void 0:r.enabled)===!0?(this.routerEnabled=!0,this.routerHelper=new J(e.router?e.router:{enabled:!0}),this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href)),addEventListener("popstate",()=>{this.routerHelper&&this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href))})):this.routerHelper=new J({})}search(e){if(this.searchHelper){const t=this.dataLayer.forceNotCorrect;this.searchHelper.search(e,this.parseSearchResultsResponse.bind(this),this.firstRequest,t),this.firstRequest=!1,this.getRelatedSearches()}}getRelatedSearches(){this.searchHelper&&this.relatedSearchesConfig&&this.searchHelper.getRelatedSearches(this.dataLayer.searchObject,this.relatedSearchesConfig.relatedSearchesURL,this.relatedSearchesConfig.relatedSearchesAPIKey,this.parseRelatedSearchesResponse.bind(this))}parseRelatedSearchesResponse(e){var t;const r=(((t=e.response)==null?void 0:t.docs)??[]).map((n,o)=>({...n,position:o+1})),i=[];for(const n of r)i.push({relatedSearch:n.related_search,position:n.position});this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&j.trackRelatedSearches({...this.dataLayer.parsedData.trackingData,impressions:i}),this.dataLayer.setSearchRelatedSearches(r)}handleRouter(){if(this.routerEnabled){const e={...this.dataLayer.searchObject};this.dataLayer.isInfiniteScroll&&delete e.page,this.routerHelper.updateUrl(e)}}parseSearchResultsResponse(e){var t,r;this.handleRouter();let i=q.combineResultsWithMetadata(e),n=q.extractFacets(e);this.dataLayer.setSearchFacets(n),(r=(t=this.dataLayer.searchstaxConfig)==null?void 0:t.hooks)!=null&&r.afterSearch&&(i=this.dataLayer.searchstaxConfig.hooks.afterSearch(i)),this.dataLayer.setSearchExternalPromotions(e.externalLinks??[]);const o=q.extractSearchResultsMetadata(e);this.dataLayer.setSearchResultsMetadata(o),this.dataLayer.setSearchResults(i)}parseAnswerResultsResponse(e){this.handleRouter(),e!==B.question&&e!==B.notQuestion&&this.dataLayer.setAnswerData(this.dataLayer.getAnswerData+e)}cacheFacets(){var e;(e=this.searchHelper)==null||e.cacheFacets()}parseSuggestSuggestResponse(e){var t,r;let i=e;(r=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&r.afterAutosuggest&&(i=this.dataLayer.searchInputConfig.hooks.afterAutosuggest(e)),this.dataLayer.setSearchAutosuggest(i)}suggest(e,t){this.searchHelper&&this.searchHelper.suggest(e,this.parseSuggestSuggestResponse.bind(this),t)}changeLanguage(e){this.searchHelper&&this.dataLayer.setLanguage(e)}addSearchInputWidget(e,t){this.dataLayer.searchInputConfig||(this.dataLayer.setSearchInputConfig(t),this.searchInputWidget=new Me({containerId:e,config:t,searchTrigger:this.executeSearch.bind(this),suggestTrigger:this.executeSuggest.bind(this),dataLayer:this.dataLayer}))}addAnswerWidget(e,t){this.dataLayer.setAnswerData(""),this.answerWidget=new Ae({containerId:e,config:t,dataLayer:this.dataLayer})}addSearchResultsWidget(e,t){this.searchResultsConfig||(this.searchResultsConfig=t,this.searchResultsWidget=new Be({containerId:e,linkClickCallback:this.executeLinkClick.bind(this),searchTrigger:this.executeSearch.bind(this),config:t,dataLayer:this.dataLayer}))}addPaginationWidget(e,t){this.searchPaginationConfig=t,this.searchPaginationWidget=new De({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper})}addSearchFeedbackWidget(e,t){this.searchFeedbackConfig||(this.searchFeedbackConfig=t,this.searchFeedbackWidget=new $e({containerId:e,config:t,dataLayer:this.dataLayer,searchTrigger:this.executeSearch.bind(this)}))}addSearchSortingWidget(e,t){this.searchSortingConfig||(this.searchSortingConfig=t,this.searchSortingWidget=new Oe({containerId:e,config:t,dataLayer:this.dataLayer}))}addRelatedSearchesWidget(e,t){this.relatedSearchesConfig||(this.relatedSearchesConfig=t,this.relatedSearchesWidget=new we({containerId:e,config:t,dataLayer:this.dataLayer,trackRelatedSearchClick:this.trackRelatedSearchClick.bind(this)}),setTimeout(()=>{this.getRelatedSearches()},0))}addExternalPromotionsWidget(e,t){this.externalPromotionsConfig||(this.externalPromotionsConfig=t,this.externalPromotionsWidget=new Fe({containerId:e,config:t,dataLayer:this.dataLayer}))}addFacetsWidget(e,t){this.searchFacetsConfig=t,this.searchFacetsWidget=new Pe({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper},this.cacheFacets.bind(this))}executeSearch(e,t){var r,i;const n={...this.dataLayer.searchObject};n.query=w.removeXSSRiskyTags(e),n.page=1,n.facets=[],this.dataLayer.forceNotCorrect=!!t;let o=(r=this.routerHelper)==null?void 0:r.searchObjectToParams(n);o&&(o=(i=this.routerHelper)==null?void 0:i.extractParamsThatDoNotStartWithRouteName(o)),o&&(n.additionalProps=Object.keys(o).map(c=>o?{key:c,value:o[c]}:{key:"",value:""})),this.dataLayer.setSearchObject(n),this.dataLayer.lastSearchValue=n.query}executeSuggest(e){var t,r;let i={term:e,queryParams:[]};(r=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&r.beforeAutosuggest&&(i=this.dataLayer.searchInputConfig.hooks.beforeAutosuggest(i)),i&&i.term!==void 0&&i.queryParams!==void 0&&this.suggest(i.term,i.queryParams)}trackRelatedSearchClick(e){this.dataLayer.searchResultsMetadata&&this.dataLayer.searchRelatedSearches&&!this.dataLayer.cookiesDisabled&&j.trackRelatedSearchClick({...this.dataLayer.parsedData.trackingData,relatedSearch:e})}executeLinkClick(e){var t,r;let i=q.findResultByUniqueId(e,this.dataLayer.searchResults??[]);i&&((r=(t=this.searchResultsConfig)==null?void 0:t.hooks)!=null&&r.afterLinkClick&&(i=this.searchResultsConfig.hooks.afterLinkClick(i)),i&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&(j.trackClick({result:i,...this.dataLayer.parsedData.trackingData}),setTimeout(()=>{window.location.href=(i==null?void 0:i.url)??""},0)))}setPage(e){var t;(t=this.searchPaginationWidget)==null||t.goToPage(e)}setCookiesDisabled(e){this.dataLayer.setCookiesDisabled(e)}changeResultTemplate(e){var t,r,i;this.searchResultsConfig&&(this.searchResultsConfig.templates=(t=this.searchResultsConfig)!=null&&t.templates?{...(r=this.searchResultsConfig)==null?void 0:r.templates,...e}:e,(i=this.searchResultsWidget)==null||i.changeTemplate())}}const m=s.reactive({searchstax:new Ve("vue")}),Ne=s.defineComponent({name:"SearchstaxWrapper",props:{language:{type:String,required:!1,default:"en"},searchURL:{type:String,required:!0},suggesterURL:{type:String,required:!0},trackApiKey:{type:String,required:!0},searchAuth:{type:String,required:!0},authType:{type:String,required:!1,default:"basic"},autoCorrect:{type:Boolean,required:!1,default:!0},router:{type:Object,required:!1},beforeSearch:{type:Function,required:!1},afterSearch:{type:Function,required:!1}},mounted(){const a={};this.beforeSearch&&(a.beforeSearch=this.beforeSearch),this.afterSearch&&(a.afterSearch=this.afterSearch),m.searchstax.initialize({language:this.language,searchURL:this.searchURL,suggesterURL:this.suggesterURL,trackApiKey:this.trackApiKey,searchAuth:this.searchAuth,authType:this.authType,autoCorrect:this.autoCorrect,router:this.router,hooks:a}),this.$emit("initialized",m.searchstax)}}),$=(a,e)=>{const t=a.__vccOpts||a;for(const[r,i]of e)t[r]=i;return t};function qe(a,e,t,r,i,n){return s.renderSlot(a.$slots,"default")}const je=$(Ne,[["render",qe]]),He=s.defineComponent({name:"SearchstaxInputWidget",props:{afterAutosuggest:{type:Function,required:!1},beforeAutosuggest:{type:Function,required:!1},searchInputId:{type:String,required:!1},suggestAfterMinChars:{type:Number,required:!1,default:3}},data(){return{suggestions:[]}},methods:{onMouseLeave(){m.searchstax.searchInputWidget.resetAutosuggestSelection(),m.searchstax.searchInputWidget.markActiveAutosuggestItem()},onMouseOver(a){m.searchstax.searchInputWidget.onSuggestionEnter(a)},onMouseClick(){m.searchstax.searchInputWidget.suggestionChosen()},attachObservables(){m.searchstax.dataLayer.$autosuggestResults.subscribe(a=>{this.suggestions=(a==null?void 0:a.suggestions)??[]})}},computed:{hasInputSlot(){return!!this.$slots.input}},mounted(){if(m.searchstax){this.attachObservables();const a={};this.afterAutosuggest&&(a.afterAutosuggest=this.afterAutosuggest),this.beforeAutosuggest&&(a.beforeAutosuggest=this.beforeAutosuggest),m.searchstax.addSearchInputWidget("searchstax-input-container",{suggestAfterMinChars:this.suggestAfterMinChars,hooks:a,templates:{mainTemplate:{template:"",searchInputId:this.searchInputId??"searchstax-search-input"}}})}else throw Error("Searchstax instance needs to be passed via props")}}),We={id:"searchstax-input-container"},_e={class:"searchstax-search-input-container"},Ue={key:0,class:"searchstax-search-input-wrapper"},Qe=s.createElementVNode("input",{type:"text",id:"searchstax-search-input",class:"searchstax-search-input",placeholder:"SEARCH FOR..."},null,-1),Ke=["innerHTML","onMouseover"],ze=s.createElementVNode("button",{class:"searchstax-spinner-icon",id:"searchstax-search-input-action-button"},null,-1);function Je(a,e,t,r,i,n){return s.openBlock(),s.createElementBlock("div",We,[s.createElementVNode("div",_e,[a.hasInputSlot?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",Ue,[Qe,s.createElementVNode("div",{class:s.normalizeClass(["searchstax-autosuggest-container",{hidden:a.suggestions.length===0}]),onMouseleave:e[1]||(e[1]=(...o)=>a.onMouseLeave&&a.onMouseLeave(...o))},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.suggestions,o=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-autosuggest-item",key:o.term},[s.createElementVNode("div",{class:"searchstax-autosuggest-item-term-container",innerHTML:o.term,onMouseover:c=>a.onMouseOver(o),onClick:e[0]||(e[0]=s.withModifiers(c=>a.onMouseClick(),["stop"]))},null,40,Ke)]))),128))],34),ze])),s.renderSlot(a.$slots,"input",{suggestions:a.suggestions,onMouseClick:a.onMouseClick,onMouseOver:a.onMouseOver,onMouseLeave:a.onMouseLeave})])])}const Ge=$(He,[["render",Je]]),Xe=s.defineComponent({name:"SearchstaxResultsWidget",props:{afterLinkClick:{type:Function,required:!1},resultsPerPage:{type:Number,required:!1},renderMethod:{type:String,required:!1}},computed:{hasNoResultsSlot(){return!!this.$slots.noResult},hasResultSlot(){return!!this.$slots.results},hooks(){const a={};return this.afterLinkClick&&(a.afterLinkClick=this.afterLinkClick),a}},data(){return{searchResults:null,metadata:null,searchTerm:"",store:m}},methods:{resultClicked(a,e){e.preventDefault(),e.stopPropagation(),m.searchstax.executeLinkClick(a.uniqueId)},attachObservables(){m.searchstax.dataLayer.$searchResults.subscribe(a=>{var i;const e=this.searchResults??[];console.log("current",e);const t=a??[],r=this.renderMethod==="infiniteScroll"?[...e,...t]:a;((i=m.searchstax.dataLayer.$searchObject.value)==null?void 0:i.page)===1?this.searchResults=a:this.searchResults=r}),m.searchstax.dataLayer.$searchTermChange.subscribe(a=>{this.searchTerm=a}),m.searchstax.dataLayer.$searchResultsMetadata.subscribe(a=>{this.metadata=a})}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchResultsWidget("searchstax-results-container",{templates:{},resultsPerPage:this.resultsPerPage??10,renderMethod:this.renderMethod??"pagination",hooks:this.hooks});else throw Error("Searchstax instance needs to be passed via props")}}),Ye={id:"searchstax-results-container"},Ze={class:"searchstax-search-results-container"},et={id:"searchstax-result-container"},tt={key:0},at={class:"searchstax-no-results"},st=s.createElementVNode("strong",null,"no results",-1),rt=s.createElementVNode("br",null,null,-1),it={key:0},nt={href:"#",class:"searchstax-suggestion-term"},ot=s.createElementVNode("div",null,[s.createElementVNode("p",null," Try searching for search related terms or topics. We offer a wide variety of content to help you get the information you need. "),s.createElementVNode("p",null,"Lost? Click on the ‘X” in the Search Box to reset your search.")],-1),ct={key:2,class:"searchstax-search-results"},lt={key:0,class:"searchstax-search-result-promoted"},ht=["href","data-searchstax-unique-result-id","onClick"],dt={key:2,class:"searchstax-search-result-ribbon"},ut=["src"],gt={class:"searchstax-search-result-title-container"},pt={class:"searchstax-search-result-title"},mt={key:4,class:"searchstax-search-result-common"},ft={key:5,class:"searchstax-search-result-description searchstax-search-result-common"},vt={key:0,class:"searchstax-search-result-image-container"},yt=["src"],kt={key:1},Ct={class:"searchstax-search-result-common"},bt={key:3};function St(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",Ye,[s.createElementVNode("div",Ze,[s.createElementVNode("div",et,[a.searchResults&&a.searchResults.length===0&&!a.hasNoResultsSlot&&a.searchTerm!==""&&a.searchTerm!=="*"?(s.openBlock(),s.createElementBlock("div",tt,[s.createElementVNode("div",at,[s.createTextVNode(" Showing "),st,s.createTextVNode(" for "),s.createElementVNode("strong",null,'"'+s.toDisplayString(a.searchTerm)+'"',1),rt,(o=a.metadata)!=null&&o.spellingSuggestion?(s.openBlock(),s.createElementBlock("span",it,[s.createTextVNode(" Did you mean "),s.createElementVNode("a",nt,s.toDisplayString((c=a.metadata)==null?void 0:c.spellingSuggestion),1),s.createTextVNode("?")])):s.createCommentVNode("",!0)]),ot])):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length===0&&a.hasNoResultsSlot&&a.searchTerm!==""&&a.searchTerm!=="*"?s.renderSlot(a.$slots,"noResult",{key:1}):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length&&!a.hasResultSlot?(s.openBlock(),s.createElementBlock("div",ct,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.searchResults,h=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["searchstax-search-result",{"has-thumbnail":h.thumbnail}]),key:h.uniqueId},[h.promoted?(s.openBlock(),s.createElementBlock("div",lt)):s.createCommentVNode("",!0),h.url?(s.openBlock(),s.createElementBlock("a",{key:1,href:h.url,"data-searchstax-unique-result-id":h.uniqueId,onClick:d=>a.resultClicked(h,d),class:"searchstax-result-item-link"},null,8,ht)):s.createCommentVNode("",!0),h.ribbon?(s.openBlock(),s.createElementBlock("div",dt,s.toDisplayString(h.ribbon),1)):s.createCommentVNode("",!0),h.thumbnail?(s.openBlock(),s.createElementBlock("img",{key:3,src:h.thumbnail,class:"searchstax-thumbnail"},null,8,ut)):s.createCommentVNode("",!0),s.createElementVNode("div",gt,[s.createElementVNode("span",pt,s.toDisplayString(h.title),1)]),h.paths?(s.openBlock(),s.createElementBlock("p",mt,s.toDisplayString(h.paths),1)):s.createCommentVNode("",!0),h.description?(s.openBlock(),s.createElementBlock("p",ft,s.toDisplayString(h.description),1)):s.createCommentVNode("",!0),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(h.unmappedFields,d=>(s.openBlock(),s.createElementBlock("div",{key:d.key},[d.isImage&&typeof d.value=="string"?(s.openBlock(),s.createElementBlock("div",vt,[s.createElementVNode("img",{src:d.value,class:"searchstax-result-image"},null,8,yt)])):(s.openBlock(),s.createElementBlock("div",kt,[s.createElementVNode("p",Ct,s.toDisplayString(d.value),1)]))]))),128))],2))),128))])):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length&&a.hasResultSlot?(s.openBlock(),s.createElementBlock("div",bt,[s.renderSlot(a.$slots,"results",{searchResults:a.searchResults,resultClicked:a.resultClicked})])):s.createCommentVNode("",!0)])])])}const xt=$(Xe,[["render",St]]),Lt=s.defineComponent({name:"SearchstaxFacetsWidget",props:{facetingType:{type:String,required:!0},itemsPerPageDesktop:{type:Number,required:!0},itemsPerPageMobile:{type:Number,required:!0},specificFacets:{type:Array,required:!1}},data(){return{facetsTemplateDataDesktop:null,facetsTemplateDataMobile:null,store:m,facetContainers:s.ref([]),mainFacetContainers:s.ref([]),selectedFacetsCheckboxes:[],selectedFacetsRange:[],rand:Math.random()}},computed:{hasDesktopFacetsSlot(){return!!this.$slots.desktopFacets},hasMobileFacetsSlot(){return!!this.$slots.mobileFacets}},methods:{attachObservables(){m.searchstax.dataLayer.$facetsTemplateData.subscribe(a=>{a!=null&&a.isMobile?this.facetsTemplateDataMobile=a:this.facetsTemplateDataDesktop=a}),m.searchstax.dataLayer.$selectedFacetsTemplateData.subscribe(a=>{const e=a??[];this.selectedFacetsCheckboxes=e.filter(t=>t.type==="checkbox")})},unselectFacet(a){m.searchstax.searchFacetsWidget.unselectFacet(a)},unselectAll(){m.searchstax.searchFacetsWidget.removeSelectedFacets()},isNotDeactivated(a){return!m.searchstax.searchFacetsWidget.deactivatedFacets[a]},toggleFacetGroup(a){this.isNotDeactivated(a)?m.searchstax.searchFacetsWidget.deactivatedFacets[a]=!0:m.searchstax.searchFacetsWidget.deactivatedFacets[a]=!1},isChecked(a){return m.searchstax.searchFacetsWidget.isChecked(a)},selectFacet(a,e,t,r){const i=document.createElement("div");i.innerHTML=this.facetContainers[a].outerHTML,m.searchstax.searchFacetsWidget.onFacetSelect(e,t,this.facetContainers[a],r)},showMoreLessDesktop(a,e){m.searchstax.searchFacetsWidget.onShowMoreLessClick(a,e,!1)},showMoreLessMobile(a,e){m.searchstax.searchFacetsWidget.onShowMoreLessClick(a,e,!0)},openOverlay(){m.searchstax.searchFacetsWidget.openOverlay()},closeOverlay(){m.searchstax.searchFacetsWidget.closeOverlay()}},mounted(){m.searchstax.addFacetsWidget("searchstax-facets-container"+this.rand,{facetingType:this.facetingType,specificFacets:this.specificFacets,itemsPerPageDesktop:this.itemsPerPageDesktop,itemsPerPageMobile:this.itemsPerPageMobile}),this.attachObservables()}}),Tt=["id"],Et={key:0,class:"searchstax-facets-container-desktop"},Rt=["onClick"],It={class:"searchstax-facet-title"},Ft=s.createElementVNode("div",{class:"searchstax-facet-title-arrow active"},null,-1),Pt={class:"searchstax-facet-values-container"},Dt={class:"searchstax-facet-input"},wt=["checked","disabled","onClick"],$t=["onClick"],Mt=["onClick"],Bt={key:0,class:"searchstax-facet-show-more-container"},Ot=["onClick"],At={key:0,class:"searchstax-facet-show-less-button searchstax-facet-show-button"},Vt={key:1,class:"searchstax-facet-show-more-button searchstax-facet-show-button"},Nt={key:1},qt={key:2,class:"searchstax-facets-container-mobile"},jt={class:"searchstax-facets-pills-container"},Ht=s.createElementVNode("div",{class:"searchstax-facets-pill-label"},"Filter By",-1),Wt=[Ht],_t={class:"searchstax-facets-pills-selected"},Ut=["onClick"],Qt={class:"searchstax-facets-pill-label"},Kt=s.createElementVNode("div",{class:"searchstax-facets-pill-icon-close"},null,-1),zt=s.createElementVNode("div",{class:"searchstax-facets-pill-label"},"Clear Filters",-1),Jt=[zt],Gt={class:"searchstax-facets-mobile-overlay-header"},Xt=s.createElementVNode("div",{class:"searchstax-facets-mobile-overlay-header-title"},"Filter By",-1),Yt={class:"searchstax-facets-container-mobile"},Zt=["onClick"],ea={class:"searchstax-facet-title"},ta=s.createElementVNode("div",{class:"searchstax-facet-title-arrow active"},null,-1),aa={class:"searchstax-facet-values-container"},sa={class:"searchstax-facet-input"},ra=["checked","disabled","onClick"],ia=["onClick"],na=["onClick"],oa={key:0,class:"searchstax-facet-show-more-container"},ca=["onClick"],la={key:0,class:"searchstax-facet-show-less-button searchstax-facet-show-button"},ha={key:1,class:"searchstax-facet-show-more-button searchstax-facet-show-button"},da={key:3};function ua(a,e,t,r,i,n){var o,c,h,d;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-facets-container"+a.rand},[(o=a.facetsTemplateDataDesktop)!=null&&o.hasResultsOrExternalPromotions&&!a.hasDesktopFacetsSlot?(s.openBlock(),s.createElementBlock("div",Et,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.facetsTemplateDataDesktop.facets,u=>(s.openBlock(),s.createElementBlock("div",{key:u.name+"desktop",class:s.normalizeClass(["searchstax-facet-container",{active:a.isNotDeactivated(u.name)}])},[s.createElementVNode("div",null,[s.createElementVNode("div",{class:"searchstax-facet-title-container",onClick:g=>a.toggleFacetGroup(u.name)},[s.createElementVNode("div",It,s.toDisplayString(u.label),1),Ft],8,Rt),s.createElementVNode("div",Pt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(u.values,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:g.value+g.parentName,class:s.normalizeClass(["searchstax-facet-value-container",{"searchstax-facet-value-disabled":g.disabled}]),ref_for:!0,ref:v=>{a.facetContainers[p+u.name]=v}},[s.createElementVNode("div",Dt,[s.createElementVNode("input",{type:"checkbox",class:"searchstax-facet-input-checkbox",checked:a.isChecked(g),disabled:g.disabled,onClick:v=>a.selectFacet(p+u.name,v,g,!0)},null,8,wt)]),s.createElementVNode("div",{class:"searchstax-facet-value-label",onClick:v=>a.selectFacet(p+u.name,v,g,!1)},s.toDisplayString(g.value),9,$t),s.createElementVNode("div",{class:"searchstax-facet-value-count",onClick:v=>a.selectFacet(p+u.name,v,g,!1)},"("+s.toDisplayString(g.count)+")",9,Mt)],2))),128)),u.hasMoreFacets?(s.openBlock(),s.createElementBlock("div",Bt,[s.createElementVNode("div",{class:"searchstax-facet-show-more-container",onClick:g=>a.showMoreLessDesktop(g,u)},[u.showingAllFacets?(s.openBlock(),s.createElementBlock("div",At,"less")):(s.openBlock(),s.createElementBlock("div",Vt,"more"))],8,Ot)])):s.createCommentVNode("",!0)])])],2))),128))])):s.createCommentVNode("",!0),a.hasDesktopFacetsSlot?(s.openBlock(),s.createElementBlock("div",Nt,[s.renderSlot(a.$slots,"desktopFacets",{facetsTemplateDataDesktop:a.facetsTemplateDataDesktop,isNotDeactivated:a.isNotDeactivated,toggleFacetGroup:a.toggleFacetGroup,isChecked:a.isChecked,selectFacet:a.selectFacet,showMoreLessDesktop:a.showMoreLessDesktop,facetContainers:a.facetContainers})])):s.createCommentVNode("",!0),(c=a.facetsTemplateDataMobile)!=null&&c.hasResultsOrExternalPromotions&&!a.hasMobileFacetsSlot?(s.openBlock(),s.createElementBlock("div",qt,[s.createElementVNode("div",jt,[s.createElementVNode("div",{class:"searchstax-facets-pill searchstax-facets-pill-filter-by",onClick:e[0]||(e[0]=(...u)=>a.openOverlay&&a.openOverlay(...u))},Wt),s.createElementVNode("div",_t,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.selectedFacetsCheckboxes,u=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-facets-pill searchstax-facets-pill-facets",key:u.value,onClick:g=>a.unselectFacet(u)},[s.createElementVNode("div",Qt,s.toDisplayString(u.value)+" ("+s.toDisplayString(u.count)+")",1),Kt],8,Ut))),128))]),a.selectedFacetsCheckboxes.length?(s.openBlock(),s.createElementBlock("div",{key:0,class:"searchstax-facets-pill searchstax-clear-filters searchstax-facets-pill-clear-all",onClick:e[1]||(e[1]=(...u)=>a.unselectAll&&a.unselectAll(...u))},Jt)):s.createCommentVNode("",!0)]),s.createElementVNode("div",{class:s.normalizeClass(["searchstax-facets-mobile-overlay",{"searchstax-show":(h=a.facetsTemplateDataMobile)==null?void 0:h.overlayOpened}])},[s.createElementVNode("div",Gt,[Xt,s.createElementVNode("div",{class:"searchstax-search-close",onClick:e[2]||(e[2]=(...u)=>a.closeOverlay&&a.closeOverlay(...u))})]),s.createElementVNode("div",Yt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList((d=a.facetsTemplateDataMobile)==null?void 0:d.facets,u=>(s.openBlock(),s.createElementBlock("div",{key:u.name+"mobile",class:s.normalizeClass(["searchstax-facet-container",{active:a.isNotDeactivated(u.name)}])},[s.createElementVNode("div",null,[s.createElementVNode("div",{class:"searchstax-facet-title-container",onClick:g=>a.toggleFacetGroup(u.name)},[s.createElementVNode("div",ea,s.toDisplayString(u.label),1),ta],8,Zt),s.createElementVNode("div",aa,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(u.values,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:g.value+g.parentName,class:s.normalizeClass(["searchstax-facet-value-container",{"searchstax-facet-value-disabled":g.disabled}]),ref_for:!0,ref:v=>{a.facetContainers[p+u.name]=v}},[s.createElementVNode("div",sa,[s.createElementVNode("input",{type:"checkbox",class:"searchstax-facet-input-checkbox",checked:a.isChecked(g),disabled:g.disabled,onClick:v=>a.selectFacet(p+u.name,v,g,!0)},null,8,ra)]),s.createElementVNode("div",{class:"searchstax-facet-value-label",onClick:v=>a.selectFacet(p+u.name,v,g,!1)},s.toDisplayString(g.value),9,ia),s.createElementVNode("div",{class:"searchstax-facet-value-count",onClick:v=>a.selectFacet(p+u.name,v,g,!1)},"("+s.toDisplayString(g.count)+")",9,na)],2))),128)),u.hasMoreFacets?(s.openBlock(),s.createElementBlock("div",oa,[s.createElementVNode("div",{class:"searchstax-facet-show-more-container",onClick:g=>a.showMoreLessMobile(g,u)},[u.showingAllFacets?(s.openBlock(),s.createElementBlock("div",la,"less")):(s.openBlock(),s.createElementBlock("div",ha,"more"))],8,ca)])):s.createCommentVNode("",!0)])])],2))),128))]),s.createElementVNode("button",{class:"searchstax-facets-mobile-overlay-done",onClick:e[3]||(e[3]=(...u)=>a.closeOverlay&&a.closeOverlay(...u))},"Done")],2)])):s.createCommentVNode("",!0),a.hasMobileFacetsSlot?(s.openBlock(),s.createElementBlock("div",da,[s.renderSlot(a.$slots,"mobileFacets",{facetsTemplateDataMobile:a.facetsTemplateDataMobile,selectedFacetsCheckboxes:a.selectedFacetsCheckboxes,isNotDeactivated:a.isNotDeactivated,toggleFacetGroup:a.toggleFacetGroup,isChecked:a.isChecked,selectFacet:a.selectFacet,showMoreLessDesktop:a.showMoreLessDesktop,facetContainers:a.facetContainers,openOverlay:a.openOverlay,unselectFacet:a.unselectFacet,unselectAll:a.unselectAll,closeOverlay:a.closeOverlay})])):s.createCommentVNode("",!0)],8,Tt)}const ga=$(Lt,[["render",ua]]),pa=s.defineComponent({name:"SearchstaxPaginationWidget",data(){return{paginationData:null,rand:Math.random(),paginationAdded:!1}},methods:{nextPage(a){m.searchstax.searchPaginationWidget.nextPage(a)},previousPage(a){m.searchstax.searchPaginationWidget.previousPage(a)},attachObservables(){m.searchstax.dataLayer.$searchObject.subscribe(a=>{this.addWidget()}),m.searchstax.dataLayer.$paginationData.subscribe(a=>{this.paginationData=a})},addWidget(){console.log("store.searchstax.routerHelper",m.searchstax.routerHelper),!this.paginationAdded&&m.searchstax.routerHelper&&(this.paginationAdded=!0,m.searchstax.addPaginationWidget("searchstax-pagination-container"+this.rand,{}))}},computed:{hasPaginationSlot(){return!!this.$slots.pagination},hasInfiniteScrollSlot(){return!!this.$slots.infiniteScroll}},mounted(){if(m.searchstax)this.attachObservables(),this.addWidget();else throw Error("Searchstax instance needs to be passed via props")}}),ma=["id"],fa={key:0,class:"searchstax-pagination-container"},va={class:"searchstax-pagination-content"},ya=["disabled"],ka={class:"searchstax-pagination-details"},Ca=["disabled"],ba={key:1},Sa={key:2,className:"searchstax-pagination-container"},xa={key:3};function La(a,e,t,r,i,n){var o,c,h,d,u,g,p,v,S,k,y,b,x;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-pagination-container"+a.rand},[a.paginationData&&!((o=a.paginationData)!=null&&o.isInfiniteScroll)&&!a.hasPaginationSlot?(s.openBlock(),s.createElementBlock("div",fa,[s.createElementVNode("div",va,[s.createElementVNode("a",{class:"searchstax-pagination-previous",disabled:(c=a.paginationData)==null?void 0:c.isFirstPage,onClick:e[0]||(e[0]=(...T)=>a.previousPage&&a.previousPage(...T)),id:"searchstax-pagination-previous"}," < Previous ",8,ya),s.createElementVNode("div",ka,s.toDisplayString((h=a.paginationData)==null?void 0:h.startResultIndex)+" - "+s.toDisplayString((d=a.paginationData)==null?void 0:d.endResultIndex)+" of "+s.toDisplayString((u=a.paginationData)==null?void 0:u.totalResults),1),s.createElementVNode("a",{class:"searchstax-pagination-next",disabled:(g=a.paginationData)==null?void 0:g.isLastPage,onClick:e[1]||(e[1]=(...T)=>a.nextPage&&a.nextPage(...T)),id:"searchstax-pagination-next"},"Next >",8,Ca)])])):s.createCommentVNode("",!0),a.hasPaginationSlot&&!((p=a.paginationData)!=null&&p.isInfiniteScroll)?(s.openBlock(),s.createElementBlock("div",ba,[s.renderSlot(a.$slots,"pagination",{paginationData:a.paginationData,nextPage:a.nextPage,previousPage:a.previousPage})])):s.createCommentVNode("",!0),a.paginationData&&((v=a.paginationData)!=null&&v.isInfiniteScroll)&&!((S=a.paginationData)!=null&&S.isLastPage)&&((k=a.paginationData)!=null&&k.hasResults)&&!a.hasInfiniteScrollSlot?(s.openBlock(),s.createElementBlock("div",Sa,[s.createElementVNode("a",{class:"searchstax-pagination-load-more",onClick:e[2]||(e[2]=(...T)=>a.nextPage&&a.nextPage(...T))},"Load More")])):s.createCommentVNode("",!0),a.hasInfiniteScrollSlot&&!((y=a.paginationData)!=null&&y.isLastPage)&&((b=a.paginationData)!=null&&b.hasResults)&&((x=a.paginationData)!=null&&x.isInfiniteScroll)?(s.openBlock(),s.createElementBlock("div",xa,[s.renderSlot(a.$slots,"infiniteScroll",{paginationData:a.paginationData,nextPage:a.nextPage})])):s.createCommentVNode("",!0)],8,ma)}const Ta=$(pa,[["render",La]]),Ea=s.defineComponent({name:"SearchstaxSearchFeedbackWidget",data(){return{searchFeedbackData:null,rand:Math.random()}},methods:{onOriginalQueryClick(a){m.searchstax.searchFeedbackWidget.onOriginalQueryClick(a)},attachObservables(){m.searchstax.dataLayer.$searchFeedbackData.subscribe(a=>{this.searchFeedbackData=a})}},computed:{hasFeedbackSlot(){return!!this.$slots.searchFeedback}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchFeedbackWidget("search-feedback-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ra=["id"],Ia={key:0,class:"searchstax-feedback-container"},Fa={key:0},Pa={class:"searchstax-feedback-container-suggested"},Da={key:0};function wa(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{class:"search-feedback-container",id:"search-feedback-container"+a.rand},[a.searchFeedbackData&&((o=a.searchFeedbackData)!=null&&o.searchExecuted)&&!a.hasFeedbackSlot&&((c=a.searchFeedbackData)!=null&&c.totalResults)?(s.openBlock(),s.createElementBlock("div",Ia,[s.createTextVNode(" Showing "),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.startResultIndex)+" - "+s.toDisplayString(a.searchFeedbackData.endResultIndex),1),s.createTextVNode(" of "),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.totalResults),1),s.createTextVNode(" results "),a.searchFeedbackData.searchTerm?(s.openBlock(),s.createElementBlock("span",Fa,[s.createTextVNode('for "'),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.searchTerm),1),s.createTextVNode('" ')])):s.createCommentVNode("",!0),s.createElementVNode("div",Pa,[a.searchFeedbackData.autoCorrectedQuery?(s.openBlock(),s.createElementBlock("div",Da,[s.createTextVNode(" Search instead for "),s.createElementVNode("a",{href:"#",onClick:e[0]||(e[0]=s.withModifiers(h=>a.onOriginalQueryClick(h),["prevent"])),class:"searchstax-feedback-original-query"},s.toDisplayString(a.searchFeedbackData.originalQuery),1)])):s.createCommentVNode("",!0)])])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"searchFeedback",{searchFeedbackData:a.searchFeedbackData,onOriginalQueryClick:a.onOriginalQueryClick})],8,Ra)}const $a=$(Ea,[["render",wa]]),Ma=s.defineComponent({name:"SearchstaxSortingWidget",data(){return{sortingData:null,selectedSorting:"",rand:Math.random()}},methods:{orderChange(a){m.searchstax.searchSortingWidget.setOrderQuery(a.target.value)},attachObservables(){m.searchstax.dataLayer.$searchSortingData.subscribe(a=>{this.sortingData=a}),m.searchstax.dataLayer.$searchObject.subscribe(a=>{this.selectedSorting=decodeURIComponent(a.order)})}},computed:{hasSortingSlot(){return!!this.$slots.sorting}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchSortingWidget("search-sorting-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ba=["id"],Oa={key:0,class:"searchstax-sorting-container"},Aa=s.createElementVNode("label",{class:"searchstax-sorting-label",for:"sort-by"},"Sort By",-1),Va=["value"],Na=s.createElementVNode("option",{value:""}," Relevance ",-1),qa=s.createElementVNode("option",{value:"date desc"}," Newest Content ",-1),ja=s.createElementVNode("option",{value:"date asc"}," Oldest Content ",-1),Ha=[Na,qa,ja];function Wa(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{id:"search-sorting-container"+a.rand},[a.sortingData&&((o=a.sortingData)!=null&&o.searchExecuted)&&((c=a.sortingData)!=null&&c.hasResultsOrExternalPromotions)&&!a.hasSortingSlot?(s.openBlock(),s.createElementBlock("div",Oa,[Aa,s.createElementVNode("select",{id:"searchstax-search-order-select",class:"searchstax-search-order-select",value:a.selectedSorting,onChange:e[0]||(e[0]=h=>a.orderChange(h))},Ha,40,Va)])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"sorting",{sortingData:a.sortingData,orderChange:a.orderChange,selectedSorting:a.selectedSorting})],8,Ba)}const _a=$(Ma,[["render",Wa]]),Ua=s.defineComponent({name:"SearchstaxExternalPromotionsWidget",data(){return{externalPromotionsData:null,rand:Math.random()}},methods:{attachObservables(){m.searchstax.dataLayer.$searchExternalPromotionsData.subscribe(a=>{this.externalPromotionsData=a})},trackClick(a,e){m.searchstax.externalPromotionsWidget.trackClick(a,e)}},computed:{hasExternalPromotionsSlot(){return!!this.$slots.externalPromotions}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addExternalPromotionsWidget("searchstax-external-promotions-layout-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Qa=["id"],Ka={key:0,class:"searchstax-external-promotions-container",id:"searchstax-external-promotions-container"},za=s.createElementVNode("div",{class:"icon-elevated"},null,-1),Ja=["onClick"],Ga={class:"searchstax-search-result-title-container"},Xa={class:"searchstax-search-result-title"},Ya={key:1,class:"searchstax-search-result-description searchstax-search-result-common"},Za={key:2,class:"searchstax-search-result-description searchstax-search-result-common"};function es(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-external-promotions-layout-container"+a.rand},[a.externalPromotionsData&&((o=a.externalPromotionsData)!=null&&o.searchExecuted)&&((c=a.externalPromotionsData)!=null&&c.hasExternalPromotions)&&!a.hasExternalPromotionsSlot?(s.openBlock(),s.createElementBlock("div",Ka,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.externalPromotionsData.externalPromotions,h=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-external-promotion searchstax-search-result",key:h.id},[za,h.url?(s.openBlock(),s.createElementBlock("a",{key:0,href:"{{externalPromotion.url}}",onClick:d=>a.trackClick(h,d),class:"searchstax-result-item-link"},null,8,Ja)):s.createCommentVNode("",!0),s.createElementVNode("div",Ga,[s.createElementVNode("span",Xa,s.toDisplayString(h.name),1)]),h.description?(s.openBlock(),s.createElementBlock("p",Ya,s.toDisplayString(h.description),1)):s.createCommentVNode("",!0),h.url?(s.openBlock(),s.createElementBlock("p",Za,s.toDisplayString(h.url),1)):s.createCommentVNode("",!0)]))),128))])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"externalPromotions",{externalPromotionsData:a.externalPromotionsData,trackClick:a.trackClick})],8,Qa)}const ts=$(Ua,[["render",es]]),as=s.defineComponent({name:"SearchstaxRelatedSearchesWidget",data(){return{relatedData:null,rand:Math.random()}},props:{relatedSearchesURL:{type:String,required:!0},relatedSearchesAPIKey:{type:String,required:!0}},methods:{executeSearch(a){m.searchstax.relatedSearchesWidget.executeSearch(a)},attachObservables(){m.searchstax.dataLayer.$searchRelatedSearchesData.subscribe(a=>{this.relatedData=a})}},computed:{hasRelatedSlot(){return!!this.$slots.related}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addRelatedSearchesWidget("searchstax-related-searches-container"+this.rand,{relatedSearchesURL:this.relatedSearchesURL,relatedSearchesAPIKey:this.relatedSearchesAPIKey});else throw Error("Searchstax instance needs to be passed via props")}}),ss={key:0,class:"searchstax-related-searches-container",id:"searchstax-related-searches-container"},rs=s.createElementVNode("span",{id:"searchstax-related-searches"},null,-1),is={key:0,class:"searchstax-related-search"},ns=["onClick"],os={key:0};function cs(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock(s.Fragment,null,[a.relatedData&&((o=a.relatedData)!=null&&o.searchExecuted)&&((c=a.relatedData)!=null&&c.hasRelatedSearches)&&!a.hasRelatedSlot?(s.openBlock(),s.createElementBlock("div",ss,[s.createTextVNode(" Related searches: "),rs,a.relatedData.relatedSearches?(s.openBlock(),s.createElementBlock("span",is,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.relatedData.relatedSearches,h=>(s.openBlock(),s.createElementBlock("span",{key:h.related_search,onClick:d=>a.executeSearch(h),class:"searchstax-related-search searchstax-related-search-item"},[s.createTextVNode(s.toDisplayString(h.related_search),1),h.last?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("span",os,","))],8,ns))),128))])):s.createCommentVNode("",!0)])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"related",{relatedData:a.relatedData,executeSearch:a.executeSearch})],64)}const ls=$(as,[["render",cs]]);exports.SearchstaxExternalPromotionsWidget=ts;exports.SearchstaxFacetsWidget=ga;exports.SearchstaxInputWidget=Ge;exports.SearchstaxPaginationWidget=Ta;exports.SearchstaxRelatedSearchesWidget=ls;exports.SearchstaxResultWidget=xt;exports.SearchstaxSearchFeedbackWidget=$a;exports.SearchstaxSortingWidget=_a;exports.SearchstaxWrapper=je;
@@ -237,4 +237,4 @@
237
237
  </div>
238
238
  {{/hasResultsOrExternalPromotions}}
239
239
  {{/searchExecuted}}
240
- `,selectId:"searchstax-search-order-select"}};class f{}l(f,"answer",Se),l(f,"externalPromotions",ve),l(f,"facets",Le),l(f,"pagination",xe),l(f,"relatedSearches",Te),l(f,"searchFeedback",Ee),l(f,"searchInput",Re),l(f,"searchResults",Ie),l(f,"sorting",Fe);class Pe{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"externalPromotionsContainerId"),l(this,"searchExternalPromotionsMainContainer",null);var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.externalPromotionsContainerId=((r=(t=this.config.templates)==null?void 0:t.mainTemplate)==null?void 0:r.externalPromotionsContainerId)||f.externalPromotions.mainTemplate.externalPromotionsContainerId,this.searchExternalPromotionsMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}initializeSubscriptions(){this.dataLayer.$searchExternalPromotions.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data,externalPromotions:this.dataLayer.parsedData.externalPromotions};return this.dataLayer.setExternalPromotionsData(e),e}addExternalSearch(e){var t,r,i,n;const o=document.getElementById(this.externalPromotionsContainerId);if(o){const c=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.externalPromotion)==null?void 0:i.template)||((n=f.externalPromotions.externalPromotion)==null?void 0:n.template),h=document.createElement("div");h.classList.add("searchstax-external-promotion"),h.addEventListener("click",d=>{this.trackClick(e,d)}),h.innerHTML=b.render(c,e),o.appendChild(h)}}trackClick(e,t){t.stopPropagation(),t.preventDefault(),window.open(e.url,"_blank")}renderMainTemplate(e){var t,r,i,n;const o=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplate)==null?void 0:i.template)||((n=f.externalPromotions.mainTemplate)==null?void 0:n.template);if(this.dataLayer.renderingEngine===R.mustache){this.searchExternalPromotionsMainContainer.innerHTML=b.render(o,e);const c=document.getElementById(this.externalPromotionsContainerId);c&&(c.innerHTML="");for(const h of e.externalPromotions)this.addExternalSearch(h)}}}class De{constructor(e,t){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"routerHelper"),l(this,"cachedPhrase",""),l(this,"isCached",!1),l(this,"overlayOpened",!1),l(this,"facetPaginationStep"),l(this,"facetPaginationStepMobile"),l(this,"searchFacetsMainContainer",null),l(this,"searchFacetsMobileContainer",null),l(this,"searchFacetsDesktopContainer",null),l(this,"facetLimits",{}),l(this,"facetLimitsMobile",{}),l(this,"deactivatedFacets",{}),l(this,"cachedData",null),l(this,"cacheFacets"),l(this,"onFacetSelect",(r,i,n,o)=>{if(r.stopPropagation(),!i.disabled){const c=n.querySelector("input");c.checked=o?c.checked:!c.checked;const h=this.dataLayer.searchObject;let d=[...h.facets];const u=this.extractFacetValue(i);c.checked?d.find(g=>D.deepEqual(g,u)?g:!1)||(this.config.facetingType==="tabs"&&(d=d.filter(g=>g.name!==u.name)),d.push(u)):d=d.filter(g=>!D.deepEqual(g,u)),setTimeout(()=>{this.dataLayer.setSearchObject({...h,facets:d,page:1}),this.config.facetingType==="tabs"&&this.renderMainTemplate(this.generateTemplateData(),!0)},0)}}),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.cacheFacets=t,this.facetPaginationStep=this.config.itemsPerPageDesktop,this.facetPaginationStepMobile=this.config.itemsPerPageMobile,this.searchFacetsMainContainer=document.getElementById(this.containerId),this.needCache&&t(),this.initializeSubscriptions()}get needCache(){return this.config.facetingType==="showUnavailable"||this.config.facetingType==="or"||this.config.facetingType==="tabs"}get needDisabling(){return this.config.facetingType==="showUnavailable"}initializeSubscriptions(){this.needCache&&this.dataLayer.$searchFacetsCached.subscribe(e=>{e&&this.dataLayer.searchFacets&&this.renderMainTemplate(this.generateTemplateData())}),this.dataLayer.$searchResults.subscribe(e=>{e&&(this.needCache&&!this.isCached&&(this.dataLayer.searchFacets&&!this.dataLayer.searchFacetsCached&&this.dataLayer.setSearchFacetsCached(this.dataLayer.searchFacets),this.cacheFacets()),this.renderMainTemplate(this.generateTemplateData()))}),this.dataLayer.$searchObject.subscribe(e=>{this.cachedPhrase!==e.query?(this.cachedPhrase=e.query,this.isCached=!1):this.isCached=!0})}extractFacetValue(e){return{type:this.config.facetingType,name:e.parentName,value:e.value}}applyFacetLimits(e,t){const r=t?this.facetPaginationStepMobile:this.facetPaginationStep,i=t?this.facetLimits:this.facetLimitsMobile;return e.forEach(n=>{i[n.name]||(i[n.name]=r)}),e.map(n=>({...n,values:n.values.slice(0,i[n.name]),showingAllFacets:n.values.length<=i[n.name],hasMoreFacets:n.values.length>r}))}generateTemplateData(e){if(this.generateSelectedFacetsData(),this.dataLayer.searchFacets){let t=this.dataLayer.searchFacets;this.needCache&&this.dataLayer.searchFacetsCached&&(t=this.dataLayer.searchFacetsCached,this.needDisabling&&(t=t.map(i=>{var n;const o=(n=this.dataLayer.searchFacets)==null?void 0:n.find(c=>c.name===i.name);return o?{...i,values:i.values.map(c=>{const h=o.values.find(d=>c.type==="range"?!1:c.type==="checkbox"?d.value===c.value:!1);return{...c,disabled:!h,isMobile:e}})}:{...i,values:i.values.map(c=>({...c,disabled:!0})),isMobile:e}}))),this.config.specificFacets&&(t=t.filter(i=>{var n;return(n=this.config.specificFacets)==null?void 0:n.includes(i.name)}));const r={facets:this.applyFacetLimits(t,e),...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(r),r}else{const t={facets:[],...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(t),t}}createFacetItem(e,t,r){var i,n,o,c,h,d,u,g,p,y,L,C;const k=document.createElement("div");k.classList.add("searchstax-facet-container"),this.deactivatedFacets[e.name]||k.classList.add("active");const S=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.facetItemContainerTemplate)==null?void 0:o.template)||((c=f.facets.facetItemContainerTemplate)==null?void 0:c.template);k.innerHTML=b.render(S,e),t.appendChild(k);const x=k.querySelector("."+(((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.facetItemContainerTemplate)==null?void 0:u.facetListTitleContainerClass)||((g=f.facets.facetItemContainerTemplate)==null?void 0:g.facetListTitleContainerClass)));x==null||x.addEventListener("click",()=>{k.classList.toggle("active")});const T=k.querySelector("."+(((L=(y=(p=this.config)==null?void 0:p.templates)==null?void 0:y.facetItemContainerTemplate)==null?void 0:L.facetListContainerClass)||((C=f.facets.facetItemContainerTemplate)==null?void 0:C.facetListContainerClass)));T&&(e.values.forEach(F=>{this.createFacetListItem(F,T)}),e.hasMoreFacets&&this.createHasMoreComponent(e,T,r))}isChecked(e){var t;return!!((t=this.dataLayer.searchObject.facets)!=null&&t.find(r=>D.deepEqual(r,this.extractFacetValue(e))))}createFacetListItem(e,t){var r,i,n,o,c,h,d,u,g,p,y,L,C;const k=document.createElement("div");k.classList.add("searchstax-facet-value-container"),e.disabled&&k.classList.add("searchstax-facet-value-disabled");const S=this.isChecked(e),x=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.facetItemTemplate)==null?void 0:n.template)||((o=f.facets.facetItemTemplate)==null?void 0:o.template);k.innerHTML=b.render(x,{...e,isChecked:S});let T=(c=f.facets.facetItemTemplate)==null?void 0:c.checkTriggerClasses;T=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.facetItemTemplate)==null?void 0:u.checkTriggerClasses)||T,T.forEach(F=>{var E;(E=k.querySelector("."+F))==null||E.addEventListener("click",B=>{this.onFacetSelect(B,e,k)})}),(C=k.querySelector("."+(((y=(p=(g=this.config)==null?void 0:g.templates)==null?void 0:p.facetItemTemplate)==null?void 0:y.inputCheckboxClass)||((L=f.facets.facetItemTemplate)==null?void 0:L.inputCheckboxClass))))==null||C.addEventListener("click",F=>{this.onFacetSelect(F,e,k,!0)}),t.appendChild(k)}createHasMoreComponent(e,t,r){var i,n,o,c,h,d,u,g;const p=document.createElement("div");p.classList.add("searchstax-facet-show-more-container");const y=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.showMoreButtonContainerTemplate)==null?void 0:o.template)||((c=f.facets.showMoreButtonContainerTemplate)==null?void 0:c.template);p.innerHTML=b.render(y,e);const L=p.querySelector("."+(((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.showMoreButtonContainerTemplate)==null?void 0:u.showMoreButtonClass)||((g=f.facets.showMoreButtonContainerTemplate)==null?void 0:g.showMoreButtonClass)));L&&(this.attachOnclickToShowMore(e,L,r),t&&t.appendChild(L))}attachOnclickToShowMore(e,t,r){t.addEventListener("click",i=>{this.onShowMoreLessClick(i,e,r)})}onShowMoreLessClick(e,t,r){e.preventDefault();const i=r?this.facetPaginationStepMobile:this.facetPaginationStep,n=r?this.facetLimits:this.facetLimitsMobile;n[t.name]===void 0?n[t.name]=i*2:n[t.name]<=t.values.length?n[t.name]=n[t.name]+i:n[t.name]=i,this.generateTemplateData(r),this.renderMainTemplate(this.generateTemplateData())}renderMainTemplate(e,t){var r,i,n,o,c,h,d,u,g,p,y;if(e&&(!D.deepEqual(this.cachedData??{},e)||t)){this.cachedData=e;const L=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.mainTemplateDesktop)==null?void 0:n.template)||((o=f.facets.mainTemplateDesktop)==null?void 0:o.template);if(this.dataLayer.renderingEngine===R.mustache&&this.searchFacetsMainContainer){this.searchFacetsMainContainer.innerHTML=b.render(L,{...e});const C=(u=this.searchFacetsMainContainer)==null?void 0:u.querySelector("."+(((d=(h=(c=this.config)==null?void 0:c.templates)==null?void 0:h.mainTemplateDesktop)==null?void 0:d.facetsContainerClass)||f.facets.mainTemplateDesktop.facetsContainerClass));if(C){C.innerHTML="";for(const k of e.facets)this.createFacetItem(k,C);if(this.searchFacetsMainContainer){const k=this.searchFacetsMainContainer.querySelector("."+(((y=(p=(g=this.config)==null?void 0:g.templates)==null?void 0:p.mainTemplateDesktop)==null?void 0:y.selectedFacetsContainerClass)||f.facets.mainTemplateDesktop.selectedFacetsContainerClass));k&&(this.createSelectedFacetsComponents(k),this.createClearFacetsComponents(k))}}}this.renderMobileTemplate(this.generateTemplateData(!0))}else this.generateSelectedFacetsData()}generateSelectedFacetsData(){const e=[],t=this.dataLayer.searchObject.facets;for(const r of t){const i=decodeURIComponent(r.name),n=decodeURIComponent(r.value);if(this.dataLayer.searchFacets){const o=this.needCache?this.dataLayer.searchFacetsCached:this.dataLayer.searchFacets,c=o==null?void 0:o.find(h=>h.name===i);if(c){const h=c.values.find(d=>d.type==="range"?!1:d.type==="checkbox"?`"${d.value}"`==`"${n}"`:!1);h&&e.push(h)}}}this.dataLayer.setSelectedFacetsTemplateData(e)}createSelectedFacetsComponents(e){var t;this.generateSelectedFacetsData(),(t=this.dataLayer.selectedFacetsTemplateData)==null||t.forEach(r=>{this.createSelectedFacetsComponent(e,r)})}createClearFacetsComponents(e){var t,r,i,n,o,c,h,d;const u=this.dataLayer.searchObject,g=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.clearFacetsTemplate)==null?void 0:i.template)||((n=f.facets.clearFacetsTemplate)==null?void 0:n.template),p=document.createElement("div");p.innerHTML=b.render(g,{shouldShow:u.facets.length>0});const y=p.querySelector("."+(((h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.clearFacetsTemplate)==null?void 0:h.containerClass)||((d=f.facets.clearFacetsTemplate)==null?void 0:d.containerClass)));y&&(y.addEventListener("click",()=>{this.removeSelectedFacets()}),e.appendChild(y))}createSelectedFacetsComponent(e,t){var r,i,n,o,c,h,d,u;const g=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.selectedFacetsTemplate)==null?void 0:n.template)||((o=f.facets.selectedFacetsTemplate)==null?void 0:o.template),p=document.createElement("div");p.innerHTML=b.render(g,t);const y=p.querySelector("."+(((d=(h=(c=this.config)==null?void 0:c.templates)==null?void 0:h.selectedFacetsTemplate)==null?void 0:d.containerClass)||((u=f.facets.selectedFacetsTemplate)==null?void 0:u.containerClass)));y&&(y.addEventListener("click",()=>{this.unselectFacet(t)}),e.appendChild(y))}unselectFacet(e){const t=this.dataLayer.searchObject;let r=[...t.facets];e.type==="checkbox"&&(r=r.filter(i=>JSON.stringify(i)!==JSON.stringify(this.extractFacetValue(e)))),setTimeout(()=>{this.dataLayer.setSearchObject({...t,facets:r}),this.generateSelectedFacetsData()},0)}removeSelectedFacets(){const e=this.dataLayer.searchObject;this.dataLayer.setSearchObject({...e,facets:[]})}createFilterByComponent(e){var t,r,i,n,o,c,h,d;const u=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.filterByTemplate)==null?void 0:i.template)||((n=f.facets.filterByTemplate)==null?void 0:n.template),g=document.createElement("div");g.innerHTML=b.render(u,{});const p=g.querySelector("."+(((h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.filterByTemplate)==null?void 0:h.containerClass)||((d=f.facets.filterByTemplate)==null?void 0:d.containerClass)));p&&(e.prepend(p),p.addEventListener("click",this.openOverlay.bind(this)))}openOverlay(){var e;this.overlayOpened=!0,this.searchFacetsMainContainer&&(document.body.classList.toggle("searchstax-no-scroll"),(e=this.searchFacetsMainContainer.querySelector(".searchstax-facets-mobile-overlay"))==null||e.classList.add("searchstax-show"))}closeOverlay(){var e;this.overlayOpened=!1,this.searchFacetsMainContainer&&(document.body.classList.toggle("searchstax-no-scroll"),(e=this.searchFacetsMainContainer.querySelector(".searchstax-facets-mobile-overlay"))==null||e.classList.remove("searchstax-show"))}renderMobileTemplate(e){var t,r,i,n,o,c,h,d,u,g,p,y,L,C,k,S,x,T,F;if(e){const E=document.createElement("div");E.classList.add("searchstax-facets-container-mobile");const B=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplateMobile)==null?void 0:i.template)||((n=f.facets.mainTemplateMobile)==null?void 0:n.template);if(this.dataLayer.renderingEngine===R.mustache){if(E.innerHTML=b.render(B,{...e,overlayOpened:this.overlayOpened}),(o=this.searchFacetsMainContainer)==null||o.appendChild(E),(h=(c=this.config)==null?void 0:c.templates)!=null&&h.mainTemplateMobile)for(const _ of((g=(u=(d=this.config)==null?void 0:d.templates)==null?void 0:u.mainTemplateMobile)==null?void 0:g.closeOverlayTriggerClasses)||[]){const W=E.querySelector("."+_);W&&W.addEventListener("click",this.closeOverlay.bind(this))}else for(const _ of f.facets.mainTemplateMobile.closeOverlayTriggerClasses){const W=E.querySelector("."+_);W&&W.addEventListener("click",this.closeOverlay.bind(this))}const U=E.querySelector("."+(((L=(y=(p=this.config)==null?void 0:p.templates)==null?void 0:y.mainTemplateMobile)==null?void 0:L.filterByContainerClass)||f.facets.mainTemplateMobile.filterByContainerClass));U&&this.createFilterByComponent(U);const P=E.querySelector("."+(((S=(k=(C=this.config)==null?void 0:C.templates)==null?void 0:k.mainTemplateMobile)==null?void 0:S.selectedFacetsContainerClass)||f.facets.mainTemplateMobile.selectedFacetsContainerClass));P&&(this.createSelectedFacetsComponents(P),this.createClearFacetsComponents(P));const J=E.querySelector("."+(((F=(T=(x=this.config)==null?void 0:x.templates)==null?void 0:T.mainTemplateMobile)==null?void 0:F.facetsContainerClass)||f.facets.mainTemplateMobile.facetsContainerClass));if(J){J.innerHTML="";for(const _ of e.facets)this.createFacetItem(_,J,!0)}}}}}class $e{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"previousButtonClass"),l(this,"nextButtonClass"),l(this,"loadMoreButtonClass"),l(this,"routerHelper"),l(this,"searchPaginationMainContainer",null);var t,r,i,n,o,c,h,d,u;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.previousButtonClass=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplate)==null?void 0:i.previousButtonClass)??f.pagination.mainTemplate.previousButtonClass,this.nextButtonClass=((c=(o=(n=this.config)==null?void 0:n.templates)==null?void 0:o.mainTemplate)==null?void 0:c.nextButtonClass)??f.pagination.mainTemplate.nextButtonClass,this.loadMoreButtonClass=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:u.loadMoreButtonClass)??f.pagination.infiniteScrollTemplate.loadMoreButtonClass,this.searchPaginationMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}get isFirstPage(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.page)===1}get isLastPage(){return this.dataLayer.parsedData.data.isLastPage}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){var e,t,r,i;const n={...this.dataLayer.parsedData.data,previousPageLink:(t=this.routerHelper)==null?void 0:t.searchObjectToUrl({...this.dataLayer.searchObject,page:((e=this.dataLayer.searchObject)==null?void 0:e.page)-1}),nextPageLink:(i=this.routerHelper)==null?void 0:i.searchObjectToUrl({...this.dataLayer.searchObject,page:((r=this.dataLayer.searchObject)==null?void 0:r.page)+1})};return this.dataLayer.setPaginationData(n),n}goToPage(e,t){const r=this.dataLayer.searchObject;r&&(r.page=e,this.dataLayer.setSearchObject(r)),t||window.scrollTo(0,0)}nextPage(e){var t;e.preventDefault(),e.stopPropagation(),this.isLastPage||this.goToPage(((t=this.dataLayer.searchObject)==null?void 0:t.page)+1,this.dataLayer.isInfiniteScroll)}previousPage(e){var t;e.preventDefault(),e.stopPropagation(),this.isFirstPage||this.goToPage(((t=this.dataLayer.searchObject)==null?void 0:t.page)-1)}overridePaginationEvents(){if(this.searchPaginationMainContainer){const e=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass),t=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass),r=this.searchPaginationMainContainer.querySelector("."+this.loadMoreButtonClass);e&&e.addEventListener("click",this.previousPage.bind(this)),t&&t.addEventListener("click",this.nextPage.bind(this)),r&&r.addEventListener("click",this.nextPage.bind(this))}}renderMainTemplate(e){var t,r,i,n,o,c,h,d,u,g;this.searchPaginationMainContainer&&((t=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass))==null||t.removeEventListener("click",this.previousPage),(r=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass))==null||r.removeEventListener("click",this.nextPage));let p=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.mainTemplate)==null?void 0:o.template)||((c=f.pagination.mainTemplate)==null?void 0:c.template);this.dataLayer.isInfiniteScroll&&(p=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:u.template)||((g=f.pagination.infiniteScrollTemplate)==null?void 0:g.template)),this.dataLayer.renderingEngine===R.mustache&&(this.searchPaginationMainContainer.innerHTML=b.render(p,e),setTimeout(()=>{this.overridePaginationEvents()},0))}}class we{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"relatedSearchesContainerClass"),l(this,"searchRelatedSearchesMainContainer",null),l(this,"track");var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.relatedSearchesContainerClass=((r=(t=this.config.templates)==null?void 0:t.main)==null?void 0:r.relatedSearchesContainerClass)||f.relatedSearches.main.relatedSearchesContainerClass,this.searchRelatedSearchesMainContainer=document.getElementById(this.containerId),this.track=e.trackRelatedSearchClick,this.initializeSubscriptions()}initializeSubscriptions(){this.dataLayer.$searchRelatedSearches.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setRelatedSearchesData(e),e}addRelatedSearchComponent(e,t){var r,i,n,o,c;const h=document.createElement("div"),d=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.relatedSearch)==null?void 0:n.template)||f.relatedSearches.relatedSearch.template;if(this.dataLayer.renderingEngine===R.mustache){h.innerHTML=b.render(d,e);const u=h.querySelector("."+(((c=(o=this.config.templates)==null?void 0:o.relatedSearch)==null?void 0:c.relatedSearchContainerClass)||f.relatedSearches.relatedSearch.relatedSearchContainerClass));u&&(t.appendChild(u),u.addEventListener("click",()=>{this.executeSearch(e)}))}}executeSearch(e){const t=this.dataLayer.searchObject;t.query=e.related_search,this.dataLayer.setSearchObject(t),this.track(e)}renderMainTemplate(e){var t,r,i,n;const o=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.relatedSearches.main.template;if(this.dataLayer.renderingEngine===R.mustache&&this.searchRelatedSearchesMainContainer){this.searchRelatedSearchesMainContainer.innerHTML="",this.searchRelatedSearchesMainContainer.innerHTML=b.render(o,e);const c=(n=this.searchRelatedSearchesMainContainer)==null?void 0:n.querySelector(`.${this.relatedSearchesContainerClass}`);if(c)for(const h of e.relatedSearches)this.addRelatedSearchComponent(h,c)}}}class Me{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"searchFeedbackMainContainer",null),l(this,"searchTrigger"),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.searchTrigger=e.searchTrigger,this.searchFeedbackMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions()}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setSearchFeedbackData(e),e}onOriginalQueryClick(e){var t;e.stopPropagation(),e.preventDefault();const r=(t=e.target)==null?void 0:t.innerHTML;this.searchTrigger(r,!0)}attachClick(){var e,t,r,i,n;const o=(n=this.searchFeedbackMainContainer)==null?void 0:n.querySelector("."+(((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.main)==null?void 0:r.originalQueryClass)||((i=f.searchFeedback.main)==null?void 0:i.originalQueryClass)));o&&o.addEventListener("click",this.onOriginalQueryClick.bind(this))}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.searchFeedback.main.template;this.dataLayer.renderingEngine===R.mustache&&(this.searchFeedbackMainContainer.innerHTML=b.render(n,e),setTimeout(()=>{this.attachClick()},0))}}class Be{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"suggestAfterMinChars"),l(this,"containerId"),l(this,"currentInputValue",""),l(this,"autosuggestResults"),l(this,"searchInput"),l(this,"actionButton"),l(this,"autosuggestContainer"),l(this,"buttonState","search"),l(this,"selectedAutosuggestItem",-1),l(this,"suggestTrigger"),l(this,"searchTrigger"),this.dataLayer=e.dataLayer,this.config=e.config,this.searchTrigger=e.searchTrigger,this.suggestTrigger=e.suggestTrigger,this.containerId=e.containerId,this.suggestAfterMinChars=e.config.suggestAfterMinChars,this.renderMainTemplate(),this.actionButtonInit(),this.updateActionButtonState("search"),this.searchInput&&(this.createAutosuggestContainer(),this.attachSubscriptions())}renderMainTemplate(){var e,t,r,i;const n=document.getElementById(this.containerId);if(!n)throw new Error("Search input container not found");const o=((t=(e=this.config.templates)==null?void 0:e.mainTemplate)==null?void 0:t.template)||f.searchInput.mainTemplate.template;if(this.dataLayer.renderingEngine===R.mustache){const d=b.render(o,{});n.innerHTML=d}const c=((i=(r=this.config.templates)==null?void 0:r.mainTemplate)==null?void 0:i.searchInputId)||f.searchInput.mainTemplate.searchInputId,h=document.querySelector(`#${c}`);if(h)this.searchInput=h,h.addEventListener("keyup",this.inputKeyupEvent.bind(this)),h.addEventListener("blur",this.hideAutosuggest.bind(this)),h.addEventListener("paste",this.inputPasteEvent.bind(this));else throw new Error("Input not found")}createAutosuggestContainer(){var e;this.dataLayer.renderingEngine===R.mustache&&(this.autosuggestContainer=document.createElement("div"),this.autosuggestContainer.classList.add("searchstax-autosuggest-container"),this.autosuggestContainer.addEventListener("mouseleave",()=>{this.resetAutosuggestSelection(),this.markActiveAutosuggestItem()}),(e=this.searchInput)==null||e.after(this.autosuggestContainer))}actionButtonInit(){this.actionButton=document.getElementById("searchstax-search-input-action-button"),this.actionButton&&this.actionButton.addEventListener("click",()=>{var e;this.buttonState==="search"?this.executeSearch(((e=this.searchInput)==null?void 0:e.value)??""):this.buttonState==="close"&&this.searchInput&&(this.searchInput.value="",this.executeSearch(""))})}attachSubscriptions(){this.dataLayer.$searchTermChange.subscribe(()=>{this.handleSearchTermChange()}),this.dataLayer.$loadingChange.subscribe(()=>{this.handleLoadingChange()}),this.dataLayer.$searchAutosuggest.subscribe(e=>{e&&this.appendSuggestions(e)}),this.dataLayer.$searchObject.subscribe(e=>{e.query!=="undefined"&&e.query!==void 0&&e.query!=="*"&&this.searchInput&&(this.searchInput.value=this.cleanSuggestionTerm(e.query??""))})}handleLoadingChange(){this.dataLayer.loading?this.updateActionButtonState("loading"):this.handleSearchTermChange()}handleSearchTermChange(){var e;this.dataLayer.searchTerm===((e=this.searchInput)==null?void 0:e.value)&&this.searchInput.value!==""?this.updateActionButtonState("close"):this.updateActionButtonState("search")}updateActionButtonState(e){if(this.buttonState=e,this.actionButton)switch(this.actionButton.classList.remove("searchstax-spinner-icon"),this.actionButton.classList.remove("searchstax-search-close"),this.actionButton.classList.remove("searchstax-search-icon"),e){case"loading":this.actionButton.classList.add("searchstax-spinner-icon");break;case"search":this.actionButton.classList.add("searchstax-search-icon");break;case"close":this.actionButton.classList.add("searchstax-search-close");break}}selectPreviousAutosuggestItem(){this.selectedAutosuggestItem>0?this.selectedAutosuggestItem--:this.selectedAutosuggestItem=this.autosuggestResults.suggestions.length-1,this.markActiveAutosuggestItem()}selectNextAutosuggestItem(){this.selectedAutosuggestItem<this.autosuggestResults.suggestions.length-1?this.selectedAutosuggestItem++:this.selectedAutosuggestItem=0,this.markActiveAutosuggestItem()}resetAutosuggestSelection(){this.selectedAutosuggestItem=-1,this.markActiveAutosuggestItem()}markActiveAutosuggestItem(){const e=document.getElementsByClassName("searchstax-autosuggest-item");for(let t=0;t<e.length;t++){const r=e[t];t===this.selectedAutosuggestItem?r.classList.add("active"):r.classList.remove("active")}}inputKeyupEvent(e){const t=e.key;this.currentInputValue=e.target.value,t==="Enter"?this.suggestionChosen():t==="Escape"?this.hideAutosuggest():t==="ArrowUp"?this.selectPreviousAutosuggestItem():t==="ArrowDown"?this.selectNextAutosuggestItem():this.autosuggestHandling(e),this.handleSearchTermChange()}autosuggestHandling(e){e.target&&e.target.value.length>=this.suggestAfterMinChars?this.executeSuggest(e.target.value):this.hideAutosuggest()}inputPasteEvent(e){setTimeout(()=>{this.autosuggestHandling(e),this.handleSearchTermChange()},0)}executeSuggest(e){this.suggestTrigger(e)}executeSearch(e){this.hideAutosuggest(),this.searchTrigger(e===""?"*":e)}suggestionChosen(){this.selectedAutosuggestItem>-1?this.autosuggestItemClicked(this.autosuggestResults.suggestions[this.selectedAutosuggestItem]):this.executeSearch(this.currentInputValue)}hideAutosuggest(){setTimeout(()=>{this.dataLayer.setAutosuggestResults({numFound:0,suggestions:[]}),this.autosuggestContainer&&(this.autosuggestContainer.innerHTML="",this.autosuggestContainer.classList.add("hidden")),this.resetAutosuggestSelection()},100)}cleanSuggestionTerm(e){return w.removeXSSRiskyTags(e.replace(/(<([^>]+)>)/gi,"")).trim()}autosuggestItemClicked(e){this.searchInput.value=this.cleanSuggestionTerm(e.term??""),this.executeSearch(this.cleanSuggestionTerm(e.term))}createAutosuggestItem(e){var t,r,i;const n=document.createElement("div");n.classList.add("searchstax-autosuggest-item"),n.addEventListener("click",()=>{this.autosuggestItemClicked(e)}),n.addEventListener("mouseenter",()=>{this.onSuggestionEnter(e)});const o=((r=(t=this.config.templates)==null?void 0:t.autosuggestItemTemplate)==null?void 0:r.template)||((i=f.searchInput.autosuggestItemTemplate)==null?void 0:i.template);return n.innerHTML=b.render(o,e),n}onSuggestionEnter(e){var t;this.selectedAutosuggestItem=((t=this.autosuggestResults)==null?void 0:t.suggestions.indexOf(e))||0,this.markActiveAutosuggestItem()}appendSuggestions(e){this.autosuggestContainer&&(this.autosuggestContainer.innerHTML="",this.autosuggestContainer.classList.remove("hidden"));for(const t in e.suggest)if(Object.prototype.hasOwnProperty.call(e.suggest,t)){const r=e.suggest[t];for(const i in r)if(Object.prototype.hasOwnProperty.call(r,i)){const n=r[i];this.autosuggestResults=n,this.dataLayer.setAutosuggestResults(n),n.numFound>0?n.suggestions.forEach(o=>{this.autosuggestContainer&&this.autosuggestContainer.appendChild(this.createAutosuggestItem(o))}):this.autosuggestContainer&&this.autosuggestContainer.classList.add("hidden")}}}}class Oe{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"linkClickCallback"),l(this,"searchCallback"),l(this,"containerId"),l(this,"searchResultsMainContainer"),l(this,"searchResultsContainer"),l(this,"searchResultLinks",[]),this.linkClickCallback=e.linkClickCallback,this.searchCallback=e.searchTrigger,this.dataLayer=e.dataLayer,this.config=e.config,setTimeout(()=>{this.dataLayer.setSearchObject({...this.dataLayer.searchObject,itemsPerPage:this.config.resultsPerPage||10})},0),this.containerId=e.containerId;const t=document.getElementById(this.containerId);if(t)this.searchResultsMainContainer=t;else throw new Error(`Search Results Main Container with id ${this.containerId} not found`);this.dataLayer.setIsInfiniteScroll(e.config.renderMethod==="infiniteScroll"),this.initializeSubscriptions(),this.renderMainTemplate()}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.searchResultsContainer&&this.renderResults(e)})}changeTemplate(){this.dataLayer.searchResults&&this.renderResults(this.dataLayer.searchResults)}renderNoResultsTemplate(){var e,t,r,i,n;const o=((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.noSearchResultTemplate)==null?void 0:r.template)||((i=f.searchResults.noSearchResultTemplate)==null?void 0:i.template),c=((n=this.dataLayer.searchResultsMetadata)==null?void 0:n.spellingSuggestion)??"";if(this.dataLayer.renderingEngine===R.mustache&&this.searchResultsContainer&&(this.searchResultsContainer.innerHTML=b.render(o,{spellingSuggestion:c,searchTerm:this.dataLayer.searchTerm})),c&&this.searchResultsContainer){const h=this.searchResultsContainer.querySelector("a");h&&h.addEventListener("click",d=>{d.preventDefault(),d.stopPropagation(),this.searchCallback(c)})}}renderResults(e){var t,r,i,n,o;if(this.dataLayer.renderingEngine===R.mustache&&this.searchResultsContainer)if(this.removeLinkClickEvents(),e.length===0)this.renderNoResultsTemplate();else{const c=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.searchResultTemplate)==null?void 0:i.template)||((n=f.searchResults.searchResultTemplate)==null?void 0:n.template),h=e.map(d=>b.render(c,d));((o=this.config)==null?void 0:o.renderMethod)==="infiniteScroll"&&this.dataLayer.searchObject.page>1?this.searchResultsContainer.innerHTML+=h.join(""):this.searchResultsContainer.innerHTML=h.join(""),this.searchResultLinks=Array.from(this.searchResultsContainer.querySelectorAll(`[${this.uniqueIdAttribute}]`)),this.attachLinkClickEvents()}}removeLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.removeEventListener("click",()=>{})})}get uniqueIdAttribute(){var e,t,r,i;return((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.searchResultTemplate)==null?void 0:r.searchResultUniqueIdAttribute)||((i=f.searchResults.searchResultTemplate)==null?void 0:i.searchResultUniqueIdAttribute)}attachLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();const r=e.getAttribute(this.uniqueIdAttribute)??"";r&&this.linkClickCallback(r)})})}renderMainTemplate(){var e,t,r,i;const n=((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.mainTemplate)==null?void 0:r.template)||((i=f.searchResults.mainTemplate)==null?void 0:i.template);this.dataLayer.renderingEngine===R.mustache&&(this.searchResultsMainContainer.innerHTML=b.render(n,{}),setTimeout(()=>{var o,c,h,d,u,g,p;const y=(h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.mainTemplate)!=null&&h.searchResultsContainerId?(g=(u=(d=this.config)==null?void 0:d.templates)==null?void 0:u.mainTemplate)==null?void 0:g.searchResultsContainerId:(p=f.searchResults.mainTemplate)==null?void 0:p.searchResultsContainerId,L=document.getElementById(y);if(L)this.searchResultsContainer=L;else throw new Error(`Search Results Container with id ${y} not found`)},0))}}class Ve{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"selectId"),l(this,"searchSortingMainContainer",null);var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.selectId=((r=(t=this.config.templates)==null?void 0:t.main)==null?void 0:r.selectId)||f.sorting.main.selectId,this.searchSortingMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setSearchSortingData(e),e}setOrderQuery(e){const t=this.dataLayer.searchObject;t&&(t.order=e,this.dataLayer.setSearchObject(t))}markOptionSelected(){const e=document.getElementById(this.selectId);if(e){const t=e.querySelector(`option[value="${decodeURIComponent(this.dataLayer.searchObject.order)}"]`);t&&(t.selected=!0)}}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.sorting.main.template;if(this.dataLayer.renderingEngine===R.mustache){this.searchSortingMainContainer.innerHTML=b.render(n,e),this.markOptionSelected();const o=document.getElementById(this.selectId);o&&o.addEventListener("change",c=>{this.setOrderQuery(c.target.value)})}}}class Ae{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"answerContainer",null),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.answerContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.dataLayer.setIsAnswerWidgetCreated(!0)}initializeSubscriptions(){this.dataLayer.$answer.subscribe(()=>{this.renderMainTemplate(this.dataLayer.parsedData.data)}),this.dataLayer.$paginationData.subscribe(()=>{this.renderMainTemplate(this.dataLayer.parsedData.data)})}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.answer.main.template;this.dataLayer.renderingEngine===R.mustache&&(this.answerContainer.innerHTML=b.render(n,e))}}class Ne{constructor(e=R.mustache){l(this,"routerEnabled",!1),l(this,"cachedQuery",""),l(this,"routerHelper"),l(this,"searchHelper"),l(this,"searchResultsConfig"),l(this,"searchPaginationConfig"),l(this,"searchFeedbackConfig"),l(this,"searchSortingConfig"),l(this,"searchFacetsConfig"),l(this,"relatedSearchesConfig"),l(this,"externalPromotionsConfig"),l(this,"searchInputWidget"),l(this,"searchResultsWidget"),l(this,"searchFacetsWidget"),l(this,"searchPaginationWidget"),l(this,"searchFeedbackWidget"),l(this,"searchSortingWidget"),l(this,"relatedSearchesWidget"),l(this,"externalPromotionsWidget"),l(this,"answerWidget"),l(this,"dataLayer"),l(this,"firstRequest",!0),this.dataLayer=new ae("searchstax_session_id"),e&&this.dataLayer.setRenderingEngine(e),this.handleHooks()}setRenderingEngine(e=R.mustache){this.dataLayer.setRenderingEngine(e)}handleHooks(){var e,t;(t=(e=this.dataLayer.searchstaxConfig)==null?void 0:e.hooks)!=null&&t.afterSearch&&this.dataLayer.$searchResults.subscribe(r=>{this.dataLayer.searchstaxConfig.hooks.afterSearch(r)}),this.dataLayer.$searchObject.subscribe(r=>{var i;r.query!==""&&r.query!==void 0&&r.query!=="undefined"&&(this.search(r),this.dataLayer.turnAIAnswerGenerationOn===!0&&((i=this.searchHelper)==null||i.startSSE(r.query,this.parseAnswerResultsResponse.bind(this))))}),this.dataLayer.$searchResults.subscribe(r=>{r&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&q.trackSearch({...this.dataLayer.parsedData.trackingData,impressions:this.dataLayer.searchResultsMetadata.impressions})})}initialize(e){var t,r;e.turnAIAnswerGenerationOn===!0&&(this.dataLayer.turnAIAnswerGenerationOn=!0),e.autoCorrect===!1&&(this.dataLayer.autoCorrect=!1),this.dataLayer.searchstaxConfig||(this.dataLayer.setSearchstaxConfig(e),this.searchHelper=new re({...e,sessionId:this.dataLayer.sessionId},this.dataLayer)),((t=e.router)==null?void 0:t.enabled)===void 0||((r=e.router)==null?void 0:r.enabled)===!0?(this.routerEnabled=!0,this.routerHelper=new G(e.router?e.router:{enabled:!0}),this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href)),addEventListener("popstate",()=>{this.routerHelper&&this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href))})):this.routerHelper=new G({})}search(e){if(this.searchHelper){const t=this.dataLayer.forceNotCorrect;this.searchHelper.search(e,this.parseSearchResultsResponse.bind(this),this.firstRequest,t),this.firstRequest=!1,this.getRelatedSearches()}}getRelatedSearches(){this.searchHelper&&this.relatedSearchesConfig&&this.searchHelper.getRelatedSearches(this.dataLayer.searchObject,this.relatedSearchesConfig.relatedSearchesURL,this.relatedSearchesConfig.relatedSearchesAPIKey,this.parseRelatedSearchesResponse.bind(this))}parseRelatedSearchesResponse(e){var t;const r=(((t=e.response)==null?void 0:t.docs)??[]).map((n,o)=>({...n,position:o+1})),i=[];for(const n of r)i.push({relatedSearch:n.related_search,position:n.position});this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&q.trackRelatedSearches({...this.dataLayer.parsedData.trackingData,impressions:i}),this.dataLayer.setSearchRelatedSearches(r)}handleRouter(){if(this.routerEnabled){const e={...this.dataLayer.searchObject};this.dataLayer.isInfiniteScroll&&delete e.page,this.routerHelper.updateUrl(e)}}parseSearchResultsResponse(e){var t,r;this.handleRouter();let i=N.combineResultsWithMetadata(e),n=N.extractFacets(e);this.dataLayer.setSearchFacets(n),(r=(t=this.dataLayer.searchstaxConfig)==null?void 0:t.hooks)!=null&&r.afterSearch&&(i=this.dataLayer.searchstaxConfig.hooks.afterSearch(i)),this.dataLayer.setSearchExternalPromotions(e.externalLinks??[]);const o=N.extractSearchResultsMetadata(e);this.dataLayer.setSearchResultsMetadata(o),this.dataLayer.setSearchResults(i)}parseAnswerResultsResponse(e){this.handleRouter(),e!==O.question&&e!==O.notQuestion&&this.dataLayer.setAnswerData(this.dataLayer.getAnswerData+e)}cacheFacets(){var e;(e=this.searchHelper)==null||e.cacheFacets()}parseSuggestSuggestResponse(e){var t,r;let i=e;(r=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&r.afterAutosuggest&&(i=this.dataLayer.searchInputConfig.hooks.afterAutosuggest(e)),this.dataLayer.setSearchAutosuggest(i)}suggest(e,t){this.searchHelper&&this.searchHelper.suggest(e,this.parseSuggestSuggestResponse.bind(this),t)}changeLanguage(e){this.searchHelper&&this.dataLayer.setLanguage(e)}addSearchInputWidget(e,t){this.dataLayer.searchInputConfig||(this.dataLayer.setSearchInputConfig(t),this.searchInputWidget=new Be({containerId:e,config:t,searchTrigger:this.executeSearch.bind(this),suggestTrigger:this.executeSuggest.bind(this),dataLayer:this.dataLayer}))}addAnswerWidget(e,t){this.dataLayer.setAnswerData(""),this.answerWidget=new Ae({containerId:e,config:t,dataLayer:this.dataLayer})}addSearchResultsWidget(e,t){this.searchResultsConfig||(this.searchResultsConfig=t,this.searchResultsWidget=new Oe({containerId:e,linkClickCallback:this.executeLinkClick.bind(this),searchTrigger:this.executeSearch.bind(this),config:t,dataLayer:this.dataLayer}))}addPaginationWidget(e,t){this.searchPaginationConfig=t,this.searchPaginationWidget=new $e({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper})}addSearchFeedbackWidget(e,t){this.searchFeedbackConfig||(this.searchFeedbackConfig=t,this.searchFeedbackWidget=new Me({containerId:e,config:t,dataLayer:this.dataLayer,searchTrigger:this.executeSearch.bind(this)}))}addSearchSortingWidget(e,t){this.searchSortingConfig||(this.searchSortingConfig=t,this.searchSortingWidget=new Ve({containerId:e,config:t,dataLayer:this.dataLayer}))}addRelatedSearchesWidget(e,t){this.relatedSearchesConfig||(this.relatedSearchesConfig=t,this.relatedSearchesWidget=new we({containerId:e,config:t,dataLayer:this.dataLayer,trackRelatedSearchClick:this.trackRelatedSearchClick.bind(this)}),setTimeout(()=>{this.getRelatedSearches()},0))}addExternalPromotionsWidget(e,t){this.externalPromotionsConfig||(this.externalPromotionsConfig=t,this.externalPromotionsWidget=new Pe({containerId:e,config:t,dataLayer:this.dataLayer}))}addFacetsWidget(e,t){this.searchFacetsConfig=t,this.searchFacetsWidget=new De({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper},this.cacheFacets.bind(this))}executeSearch(e,t){var r,i;const n={...this.dataLayer.searchObject};n.query=w.removeXSSRiskyTags(e),n.page=1,n.facets=[],this.dataLayer.forceNotCorrect=!!t;let o=(r=this.routerHelper)==null?void 0:r.searchObjectToParams(n);o&&(o=(i=this.routerHelper)==null?void 0:i.extractParamsThatDoNotStartWithRouteName(o)),o&&(n.additionalProps=Object.keys(o).map(c=>o?{key:c,value:o[c]}:{key:"",value:""})),this.dataLayer.setSearchObject(n),this.dataLayer.lastSearchValue=n.query}executeSuggest(e){var t,r;let i={term:e,queryParams:[]};(r=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&r.beforeAutosuggest&&(i=this.dataLayer.searchInputConfig.hooks.beforeAutosuggest(i)),i&&i.term!==void 0&&i.queryParams!==void 0&&this.suggest(i.term,i.queryParams)}trackRelatedSearchClick(e){this.dataLayer.searchResultsMetadata&&this.dataLayer.searchRelatedSearches&&!this.dataLayer.cookiesDisabled&&q.trackRelatedSearchClick({...this.dataLayer.parsedData.trackingData,relatedSearch:e})}executeLinkClick(e){var t,r;let i=N.findResultByUniqueId(e,this.dataLayer.searchResults??[]);i&&((r=(t=this.searchResultsConfig)==null?void 0:t.hooks)!=null&&r.afterLinkClick&&(i=this.searchResultsConfig.hooks.afterLinkClick(i)),i&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&(q.trackClick({result:i,...this.dataLayer.parsedData.trackingData}),setTimeout(()=>{window.location.href=(i==null?void 0:i.url)??""},0)))}setPage(e){var t;(t=this.searchPaginationWidget)==null||t.goToPage(e)}setCookiesDisabled(e){this.dataLayer.setCookiesDisabled(e)}changeResultTemplate(e){var t,r,i;this.searchResultsConfig&&(this.searchResultsConfig.templates=(t=this.searchResultsConfig)!=null&&t.templates?{...(r=this.searchResultsConfig)==null?void 0:r.templates,...e}:e,(i=this.searchResultsWidget)==null||i.changeTemplate())}}const m=s.reactive({searchstax:new Ne("vue")}),qe=s.defineComponent({name:"SearchstaxWrapper",props:{language:{type:String,required:!1,default:"en"},searchURL:{type:String,required:!0},suggesterURL:{type:String,required:!0},trackApiKey:{type:String,required:!0},searchAuth:{type:String,required:!0},authType:{type:String,required:!1,default:"basic"},autoCorrect:{type:Boolean,required:!1,default:!0},router:{type:Object,required:!1},beforeSearch:{type:Function,required:!1},afterSearch:{type:Function,required:!1}},mounted(){const a={};this.beforeSearch&&(a.beforeSearch=this.beforeSearch),this.afterSearch&&(a.afterSearch=this.afterSearch),m.searchstax.initialize({language:this.language,searchURL:this.searchURL,suggesterURL:this.suggesterURL,trackApiKey:this.trackApiKey,searchAuth:this.searchAuth,authType:this.authType,autoCorrect:this.autoCorrect,router:this.router,hooks:a}),this.$emit("initialized",m.searchstax)}}),M=(a,e)=>{const t=a.__vccOpts||a;for(const[r,i]of e)t[r]=i;return t};function je(a,e,t,r,i,n){return s.renderSlot(a.$slots,"default")}const He=M(qe,[["render",je]]),_e=s.defineComponent({name:"SearchstaxInputWidget",props:{afterAutosuggest:{type:Function,required:!1},beforeAutosuggest:{type:Function,required:!1},searchInputId:{type:String,required:!1},suggestAfterMinChars:{type:Number,required:!1,default:3}},data(){return{suggestions:[]}},methods:{onMouseLeave(){m.searchstax.searchInputWidget.resetAutosuggestSelection(),m.searchstax.searchInputWidget.markActiveAutosuggestItem()},onMouseOver(a){m.searchstax.searchInputWidget.onSuggestionEnter(a)},onMouseClick(){m.searchstax.searchInputWidget.suggestionChosen()},attachObservables(){m.searchstax.dataLayer.$autosuggestResults.subscribe(a=>{this.suggestions=(a==null?void 0:a.suggestions)??[]})}},computed:{hasInputSlot(){return!!this.$slots.input}},mounted(){if(m.searchstax){this.attachObservables();const a={};this.afterAutosuggest&&(a.afterAutosuggest=this.afterAutosuggest),this.beforeAutosuggest&&(a.beforeAutosuggest=this.beforeAutosuggest),m.searchstax.addSearchInputWidget("searchstax-input-container",{suggestAfterMinChars:this.suggestAfterMinChars,hooks:a,templates:{mainTemplate:{template:"",searchInputId:this.searchInputId??"searchstax-search-input"}}})}else throw Error("Searchstax instance needs to be passed via props")}}),We={id:"searchstax-input-container"},Ue={class:"searchstax-search-input-container"},Qe={key:0,class:"searchstax-search-input-wrapper"},Ke=s.createElementVNode("input",{type:"text",id:"searchstax-search-input",class:"searchstax-search-input",placeholder:"SEARCH FOR..."},null,-1),ze=["innerHTML","onMouseover"],Je=s.createElementVNode("button",{class:"searchstax-spinner-icon",id:"searchstax-search-input-action-button"},null,-1);function Ge(a,e,t,r,i,n){return s.openBlock(),s.createElementBlock("div",We,[s.createElementVNode("div",Ue,[a.hasInputSlot?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",Qe,[Ke,s.createElementVNode("div",{class:s.normalizeClass(["searchstax-autosuggest-container",{hidden:a.suggestions.length===0}]),onMouseleave:e[1]||(e[1]=(...o)=>a.onMouseLeave&&a.onMouseLeave(...o))},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.suggestions,o=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-autosuggest-item",key:o.term},[s.createElementVNode("div",{class:"searchstax-autosuggest-item-term-container",innerHTML:o.term,onMouseover:c=>a.onMouseOver(o),onClick:e[0]||(e[0]=s.withModifiers(c=>a.onMouseClick(),["stop"]))},null,40,ze)]))),128))],34),Je])),s.renderSlot(a.$slots,"input",{suggestions:a.suggestions,onMouseClick:a.onMouseClick,onMouseOver:a.onMouseOver,onMouseLeave:a.onMouseLeave})])])}const Xe=M(_e,[["render",Ge]]),Ye=s.defineComponent({name:"SearchstaxResultsWidget",props:{afterLinkClick:{type:Function,required:!1},resultsPerPage:{type:Number,required:!1},renderMethod:{type:String,required:!1}},computed:{hasNoResultsSlot(){return!!this.$slots.noResult},hasResultSlot(){return!!this.$slots.results},hooks(){const a={};return this.afterLinkClick&&(a.afterLinkClick=this.afterLinkClick),a}},data(){return{searchResults:null,metadata:null,searchTerm:"",store:m}},methods:{resultClicked(a,e){e.preventDefault(),e.stopPropagation(),m.searchstax.executeLinkClick(a.uniqueId)},attachObservables(){m.searchstax.dataLayer.$searchResults.subscribe(a=>{var i;const e=this.searchResults??[];console.log("current",e);const t=a??[],r=this.renderMethod==="infiniteScroll"?[...e,...t]:a;((i=m.searchstax.dataLayer.$searchObject.value)==null?void 0:i.page)===1?this.searchResults=a:this.searchResults=r}),m.searchstax.dataLayer.$searchTermChange.subscribe(a=>{this.searchTerm=a}),m.searchstax.dataLayer.$searchResultsMetadata.subscribe(a=>{this.metadata=a})}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchResultsWidget("searchstax-results-container",{templates:{},resultsPerPage:this.resultsPerPage??10,renderMethod:this.renderMethod??"pagination",hooks:this.hooks});else throw Error("Searchstax instance needs to be passed via props")}}),Ze={id:"searchstax-results-container"},et={class:"searchstax-search-results-container"},tt={id:"searchstax-result-container"},at={key:0},st={class:"searchstax-no-results"},rt=s.createElementVNode("strong",null,"no results",-1),it=s.createElementVNode("br",null,null,-1),nt={key:0},ot={href:"#",class:"searchstax-suggestion-term"},ct=s.createElementVNode("div",null,[s.createElementVNode("p",null," Try searching for search related terms or topics. We offer a wide variety of content to help you get the information you need. "),s.createElementVNode("p",null,"Lost? Click on the ‘X” in the Search Box to reset your search.")],-1),lt={key:2,class:"searchstax-search-results"},ht={key:0,class:"searchstax-search-result-promoted"},dt=["href","data-searchstax-unique-result-id","onClick"],ut={key:2,class:"searchstax-search-result-ribbon"},gt=["src"],pt={class:"searchstax-search-result-title-container"},mt={class:"searchstax-search-result-title"},ft={key:4,class:"searchstax-search-result-common"},yt={key:5,class:"searchstax-search-result-description searchstax-search-result-common"},kt={key:0,class:"searchstax-search-result-image-container"},Ct=["src"],bt={key:1},St={class:"searchstax-search-result-common"},vt={key:3};function Lt(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",Ze,[s.createElementVNode("div",et,[s.createElementVNode("div",tt,[a.searchResults&&a.searchResults.length===0&&!a.hasNoResultsSlot&&a.searchTerm!==""?(s.openBlock(),s.createElementBlock("div",at,[s.createElementVNode("div",st,[s.createTextVNode(" Showing "),rt,s.createTextVNode(" for "),s.createElementVNode("strong",null,'"'+s.toDisplayString(a.searchTerm)+'"',1),it,(o=a.metadata)!=null&&o.spellingSuggestion?(s.openBlock(),s.createElementBlock("span",nt,[s.createTextVNode(" Did you mean "),s.createElementVNode("a",ot,s.toDisplayString((c=a.metadata)==null?void 0:c.spellingSuggestion),1),s.createTextVNode("?")])):s.createCommentVNode("",!0)]),ct])):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length===0&&a.hasNoResultsSlot&&a.searchTerm!==""?s.renderSlot(a.$slots,"noResult",{key:1}):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length&&!a.hasResultSlot?(s.openBlock(),s.createElementBlock("div",lt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.searchResults,h=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["searchstax-search-result",{"has-thumbnail":h.thumbnail}]),key:h.uniqueId},[h.promoted?(s.openBlock(),s.createElementBlock("div",ht)):s.createCommentVNode("",!0),h.url?(s.openBlock(),s.createElementBlock("a",{key:1,href:h.url,"data-searchstax-unique-result-id":h.uniqueId,onClick:d=>a.resultClicked(h,d),class:"searchstax-result-item-link"},null,8,dt)):s.createCommentVNode("",!0),h.ribbon?(s.openBlock(),s.createElementBlock("div",ut,s.toDisplayString(h.ribbon),1)):s.createCommentVNode("",!0),h.thumbnail?(s.openBlock(),s.createElementBlock("img",{key:3,src:h.thumbnail,class:"searchstax-thumbnail"},null,8,gt)):s.createCommentVNode("",!0),s.createElementVNode("div",pt,[s.createElementVNode("span",mt,s.toDisplayString(h.title),1)]),h.paths?(s.openBlock(),s.createElementBlock("p",ft,s.toDisplayString(h.paths),1)):s.createCommentVNode("",!0),h.description?(s.openBlock(),s.createElementBlock("p",yt,s.toDisplayString(h.description),1)):s.createCommentVNode("",!0),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(h.unmappedFields,d=>(s.openBlock(),s.createElementBlock("div",{key:d.key},[d.isImage&&typeof d.value=="string"?(s.openBlock(),s.createElementBlock("div",kt,[s.createElementVNode("img",{src:d.value,class:"searchstax-result-image"},null,8,Ct)])):(s.openBlock(),s.createElementBlock("div",bt,[s.createElementVNode("p",St,s.toDisplayString(d.value),1)]))]))),128))],2))),128))])):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length&&a.hasResultSlot?(s.openBlock(),s.createElementBlock("div",vt,[s.renderSlot(a.$slots,"results",{searchResults:a.searchResults,resultClicked:a.resultClicked})])):s.createCommentVNode("",!0)])])])}const xt=M(Ye,[["render",Lt]]),Tt=s.defineComponent({name:"SearchstaxFacetsWidget",props:{facetingType:{type:String,required:!0},itemsPerPageDesktop:{type:Number,required:!0},itemsPerPageMobile:{type:Number,required:!0},specificFacets:{type:Array,required:!1}},data(){return{facetsTemplateDataDesktop:null,facetsTemplateDataMobile:null,store:m,facetContainers:s.ref([]),mainFacetContainers:s.ref([]),selectedFacetsCheckboxes:[],selectedFacetsRange:[],rand:Math.random()}},computed:{hasDesktopFacetsSlot(){return!!this.$slots.desktopFacets},hasMobileFacetsSlot(){return!!this.$slots.mobileFacets}},methods:{attachObservables(){m.searchstax.dataLayer.$facetsTemplateData.subscribe(a=>{a!=null&&a.isMobile?this.facetsTemplateDataMobile=a:this.facetsTemplateDataDesktop=a}),m.searchstax.dataLayer.$selectedFacetsTemplateData.subscribe(a=>{const e=a??[];this.selectedFacetsCheckboxes=e.filter(t=>t.type==="checkbox")})},unselectFacet(a){m.searchstax.searchFacetsWidget.unselectFacet(a)},unselectAll(){m.searchstax.searchFacetsWidget.removeSelectedFacets()},isNotDeactivated(a){return!m.searchstax.searchFacetsWidget.deactivatedFacets[a]},toggleFacetGroup(a){this.isNotDeactivated(a)?m.searchstax.searchFacetsWidget.deactivatedFacets[a]=!0:m.searchstax.searchFacetsWidget.deactivatedFacets[a]=!1},isChecked(a){return m.searchstax.searchFacetsWidget.isChecked(a)},selectFacet(a,e,t,r){const i=document.createElement("div");i.innerHTML=this.facetContainers[a].outerHTML,m.searchstax.searchFacetsWidget.onFacetSelect(e,t,this.facetContainers[a],r)},showMoreLessDesktop(a,e){m.searchstax.searchFacetsWidget.onShowMoreLessClick(a,e,!1)},showMoreLessMobile(a,e){m.searchstax.searchFacetsWidget.onShowMoreLessClick(a,e,!0)},openOverlay(){m.searchstax.searchFacetsWidget.openOverlay()},closeOverlay(){m.searchstax.searchFacetsWidget.closeOverlay()}},mounted(){m.searchstax.addFacetsWidget("searchstax-facets-container"+this.rand,{facetingType:this.facetingType,specificFacets:this.specificFacets,itemsPerPageDesktop:this.itemsPerPageDesktop,itemsPerPageMobile:this.itemsPerPageMobile}),this.attachObservables()}}),Et=["id"],Rt={key:0,class:"searchstax-facets-container-desktop"},It=["onClick"],Ft={class:"searchstax-facet-title"},Pt=s.createElementVNode("div",{class:"searchstax-facet-title-arrow active"},null,-1),Dt={class:"searchstax-facet-values-container"},$t={class:"searchstax-facet-input"},wt=["checked","disabled","onClick"],Mt=["onClick"],Bt=["onClick"],Ot={key:0,class:"searchstax-facet-show-more-container"},Vt=["onClick"],At={key:0,class:"searchstax-facet-show-less-button searchstax-facet-show-button"},Nt={key:1,class:"searchstax-facet-show-more-button searchstax-facet-show-button"},qt={key:1},jt={key:2,class:"searchstax-facets-container-mobile"},Ht={class:"searchstax-facets-pills-container"},_t=[s.createElementVNode("div",{class:"searchstax-facets-pill-label"},"Filter By",-1)],Wt={class:"searchstax-facets-pills-selected"},Ut=["onClick"],Qt={class:"searchstax-facets-pill-label"},Kt=s.createElementVNode("div",{class:"searchstax-facets-pill-icon-close"},null,-1),zt=[s.createElementVNode("div",{class:"searchstax-facets-pill-label"},"Clear Filters",-1)],Jt={class:"searchstax-facets-mobile-overlay-header"},Gt=s.createElementVNode("div",{class:"searchstax-facets-mobile-overlay-header-title"},"Filter By",-1),Xt={class:"searchstax-facets-container-mobile"},Yt=["onClick"],Zt={class:"searchstax-facet-title"},ea=s.createElementVNode("div",{class:"searchstax-facet-title-arrow active"},null,-1),ta={class:"searchstax-facet-values-container"},aa={class:"searchstax-facet-input"},sa=["checked","disabled","onClick"],ra=["onClick"],ia=["onClick"],na={key:0,class:"searchstax-facet-show-more-container"},oa=["onClick"],ca={key:0,class:"searchstax-facet-show-less-button searchstax-facet-show-button"},la={key:1,class:"searchstax-facet-show-more-button searchstax-facet-show-button"},ha={key:3};function da(a,e,t,r,i,n){var o,c,h,d;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-facets-container"+a.rand},[(o=a.facetsTemplateDataDesktop)!=null&&o.hasResultsOrExternalPromotions&&!a.hasDesktopFacetsSlot?(s.openBlock(),s.createElementBlock("div",Rt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.facetsTemplateDataDesktop.facets,u=>(s.openBlock(),s.createElementBlock("div",{key:u.name+"desktop",class:s.normalizeClass(["searchstax-facet-container",{active:a.isNotDeactivated(u.name)}])},[s.createElementVNode("div",null,[s.createElementVNode("div",{class:"searchstax-facet-title-container",onClick:g=>a.toggleFacetGroup(u.name)},[s.createElementVNode("div",Ft,s.toDisplayString(u.label),1),Pt],8,It),s.createElementVNode("div",Dt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(u.values,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:g.value+g.parentName,class:s.normalizeClass(["searchstax-facet-value-container",{"searchstax-facet-value-disabled":g.disabled}]),ref_for:!0,ref:y=>{a.facetContainers[p+u.name]=y}},[s.createElementVNode("div",$t,[s.createElementVNode("input",{type:"checkbox",class:"searchstax-facet-input-checkbox",checked:a.isChecked(g),disabled:g.disabled,onClick:y=>a.selectFacet(p+u.name,y,g,!0)},null,8,wt)]),s.createElementVNode("div",{class:"searchstax-facet-value-label",onClick:y=>a.selectFacet(p+u.name,y,g,!1)},s.toDisplayString(g.value),9,Mt),s.createElementVNode("div",{class:"searchstax-facet-value-count",onClick:y=>a.selectFacet(p+u.name,y,g,!1)},"("+s.toDisplayString(g.count)+")",9,Bt)],2))),128)),u.hasMoreFacets?(s.openBlock(),s.createElementBlock("div",Ot,[s.createElementVNode("div",{class:"searchstax-facet-show-more-container",onClick:g=>a.showMoreLessDesktop(g,u)},[u.showingAllFacets?(s.openBlock(),s.createElementBlock("div",At,"less")):(s.openBlock(),s.createElementBlock("div",Nt,"more"))],8,Vt)])):s.createCommentVNode("",!0)])])],2))),128))])):s.createCommentVNode("",!0),a.hasDesktopFacetsSlot?(s.openBlock(),s.createElementBlock("div",qt,[s.renderSlot(a.$slots,"desktopFacets",{facetsTemplateDataDesktop:a.facetsTemplateDataDesktop,isNotDeactivated:a.isNotDeactivated,toggleFacetGroup:a.toggleFacetGroup,isChecked:a.isChecked,selectFacet:a.selectFacet,showMoreLessDesktop:a.showMoreLessDesktop,facetContainers:a.facetContainers})])):s.createCommentVNode("",!0),(c=a.facetsTemplateDataMobile)!=null&&c.hasResultsOrExternalPromotions&&!a.hasMobileFacetsSlot?(s.openBlock(),s.createElementBlock("div",jt,[s.createElementVNode("div",Ht,[s.createElementVNode("div",{class:"searchstax-facets-pill searchstax-facets-pill-filter-by",onClick:e[0]||(e[0]=(...u)=>a.openOverlay&&a.openOverlay(...u))},_t),s.createElementVNode("div",Wt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.selectedFacetsCheckboxes,u=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-facets-pill searchstax-facets-pill-facets",key:u.value,onClick:g=>a.unselectFacet(u)},[s.createElementVNode("div",Qt,s.toDisplayString(u.value)+" ("+s.toDisplayString(u.count)+")",1),Kt],8,Ut))),128))]),a.selectedFacetsCheckboxes.length?(s.openBlock(),s.createElementBlock("div",{key:0,class:"searchstax-facets-pill searchstax-clear-filters searchstax-facets-pill-clear-all",onClick:e[1]||(e[1]=(...u)=>a.unselectAll&&a.unselectAll(...u))},zt)):s.createCommentVNode("",!0)]),s.createElementVNode("div",{class:s.normalizeClass(["searchstax-facets-mobile-overlay",{"searchstax-show":(h=a.facetsTemplateDataMobile)==null?void 0:h.overlayOpened}])},[s.createElementVNode("div",Jt,[Gt,s.createElementVNode("div",{class:"searchstax-search-close",onClick:e[2]||(e[2]=(...u)=>a.closeOverlay&&a.closeOverlay(...u))})]),s.createElementVNode("div",Xt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList((d=a.facetsTemplateDataMobile)==null?void 0:d.facets,u=>(s.openBlock(),s.createElementBlock("div",{key:u.name+"mobile",class:s.normalizeClass(["searchstax-facet-container",{active:a.isNotDeactivated(u.name)}])},[s.createElementVNode("div",null,[s.createElementVNode("div",{class:"searchstax-facet-title-container",onClick:g=>a.toggleFacetGroup(u.name)},[s.createElementVNode("div",Zt,s.toDisplayString(u.label),1),ea],8,Yt),s.createElementVNode("div",ta,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(u.values,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:g.value+g.parentName,class:s.normalizeClass(["searchstax-facet-value-container",{"searchstax-facet-value-disabled":g.disabled}]),ref_for:!0,ref:y=>{a.facetContainers[p+u.name]=y}},[s.createElementVNode("div",aa,[s.createElementVNode("input",{type:"checkbox",class:"searchstax-facet-input-checkbox",checked:a.isChecked(g),disabled:g.disabled,onClick:y=>a.selectFacet(p+u.name,y,g,!0)},null,8,sa)]),s.createElementVNode("div",{class:"searchstax-facet-value-label",onClick:y=>a.selectFacet(p+u.name,y,g,!1)},s.toDisplayString(g.value),9,ra),s.createElementVNode("div",{class:"searchstax-facet-value-count",onClick:y=>a.selectFacet(p+u.name,y,g,!1)},"("+s.toDisplayString(g.count)+")",9,ia)],2))),128)),u.hasMoreFacets?(s.openBlock(),s.createElementBlock("div",na,[s.createElementVNode("div",{class:"searchstax-facet-show-more-container",onClick:g=>a.showMoreLessMobile(g,u)},[u.showingAllFacets?(s.openBlock(),s.createElementBlock("div",ca,"less")):(s.openBlock(),s.createElementBlock("div",la,"more"))],8,oa)])):s.createCommentVNode("",!0)])])],2))),128))]),s.createElementVNode("button",{class:"searchstax-facets-mobile-overlay-done",onClick:e[3]||(e[3]=(...u)=>a.closeOverlay&&a.closeOverlay(...u))},"Done")],2)])):s.createCommentVNode("",!0),a.hasMobileFacetsSlot?(s.openBlock(),s.createElementBlock("div",ha,[s.renderSlot(a.$slots,"mobileFacets",{facetsTemplateDataMobile:a.facetsTemplateDataMobile,selectedFacetsCheckboxes:a.selectedFacetsCheckboxes,isNotDeactivated:a.isNotDeactivated,toggleFacetGroup:a.toggleFacetGroup,isChecked:a.isChecked,selectFacet:a.selectFacet,showMoreLessDesktop:a.showMoreLessDesktop,facetContainers:a.facetContainers,openOverlay:a.openOverlay,unselectFacet:a.unselectFacet,unselectAll:a.unselectAll,closeOverlay:a.closeOverlay})])):s.createCommentVNode("",!0)],8,Et)}const ua=M(Tt,[["render",da]]),ga=s.defineComponent({name:"SearchstaxPaginationWidget",data(){return{paginationData:null,rand:Math.random(),paginationAdded:!1}},methods:{nextPage(a){m.searchstax.searchPaginationWidget.nextPage(a)},previousPage(a){m.searchstax.searchPaginationWidget.previousPage(a)},attachObservables(){m.searchstax.dataLayer.$searchObject.subscribe(a=>{this.addWidget()}),m.searchstax.dataLayer.$paginationData.subscribe(a=>{this.paginationData=a})},addWidget(){console.log("store.searchstax.routerHelper",m.searchstax.routerHelper),!this.paginationAdded&&m.searchstax.routerHelper&&(this.paginationAdded=!0,m.searchstax.addPaginationWidget("searchstax-pagination-container"+this.rand,{}))}},computed:{hasPaginationSlot(){return!!this.$slots.pagination},hasInfiniteScrollSlot(){return!!this.$slots.infiniteScroll}},mounted(){if(m.searchstax)this.attachObservables(),this.addWidget();else throw Error("Searchstax instance needs to be passed via props")}}),pa=["id"],ma={key:0,class:"searchstax-pagination-container"},fa={class:"searchstax-pagination-content"},ya=["disabled"],ka={class:"searchstax-pagination-details"},Ca=["disabled"],ba={key:1},Sa={key:2,className:"searchstax-pagination-container"},va={key:3};function La(a,e,t,r,i,n){var o,c,h,d,u,g,p,y,L,C,k,S,x;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-pagination-container"+a.rand},[a.paginationData&&!((o=a.paginationData)!=null&&o.isInfiniteScroll)&&!a.hasPaginationSlot?(s.openBlock(),s.createElementBlock("div",ma,[s.createElementVNode("div",fa,[s.createElementVNode("a",{class:"searchstax-pagination-previous",disabled:(c=a.paginationData)==null?void 0:c.isFirstPage,onClick:e[0]||(e[0]=(...T)=>a.previousPage&&a.previousPage(...T)),id:"searchstax-pagination-previous"}," < Previous ",8,ya),s.createElementVNode("div",ka,s.toDisplayString((h=a.paginationData)==null?void 0:h.startResultIndex)+" - "+s.toDisplayString((d=a.paginationData)==null?void 0:d.endResultIndex)+" of "+s.toDisplayString((u=a.paginationData)==null?void 0:u.totalResults),1),s.createElementVNode("a",{class:"searchstax-pagination-next",disabled:(g=a.paginationData)==null?void 0:g.isLastPage,onClick:e[1]||(e[1]=(...T)=>a.nextPage&&a.nextPage(...T)),id:"searchstax-pagination-next"},"Next >",8,Ca)])])):s.createCommentVNode("",!0),a.hasPaginationSlot&&!((p=a.paginationData)!=null&&p.isInfiniteScroll)?(s.openBlock(),s.createElementBlock("div",ba,[s.renderSlot(a.$slots,"pagination",{paginationData:a.paginationData,nextPage:a.nextPage,previousPage:a.previousPage})])):s.createCommentVNode("",!0),a.paginationData&&((y=a.paginationData)!=null&&y.isInfiniteScroll)&&!((L=a.paginationData)!=null&&L.isLastPage)&&((C=a.paginationData)!=null&&C.hasResults)&&!a.hasInfiniteScrollSlot?(s.openBlock(),s.createElementBlock("div",Sa,[s.createElementVNode("a",{class:"searchstax-pagination-load-more",onClick:e[2]||(e[2]=(...T)=>a.nextPage&&a.nextPage(...T))},"Load More")])):s.createCommentVNode("",!0),a.hasInfiniteScrollSlot&&!((k=a.paginationData)!=null&&k.isLastPage)&&((S=a.paginationData)!=null&&S.hasResults)&&((x=a.paginationData)!=null&&x.isInfiniteScroll)?(s.openBlock(),s.createElementBlock("div",va,[s.renderSlot(a.$slots,"infiniteScroll",{paginationData:a.paginationData,nextPage:a.nextPage})])):s.createCommentVNode("",!0)],8,pa)}const xa=M(ga,[["render",La]]),Ta=s.defineComponent({name:"SearchstaxSearchFeedbackWidget",data(){return{searchFeedbackData:null,rand:Math.random()}},methods:{onOriginalQueryClick(a){m.searchstax.searchFeedbackWidget.onOriginalQueryClick(a)},attachObservables(){m.searchstax.dataLayer.$searchFeedbackData.subscribe(a=>{this.searchFeedbackData=a})}},computed:{hasFeedbackSlot(){return!!this.$slots.searchFeedback}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchFeedbackWidget("search-feedback-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ea=["id"],Ra={key:0,class:"searchstax-feedback-container"},Ia={key:0},Fa={class:"searchstax-feedback-container-suggested"},Pa={key:0};function Da(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{class:"search-feedback-container",id:"search-feedback-container"+a.rand},[a.searchFeedbackData&&((o=a.searchFeedbackData)!=null&&o.searchExecuted)&&!a.hasFeedbackSlot&&((c=a.searchFeedbackData)!=null&&c.totalResults)?(s.openBlock(),s.createElementBlock("div",Ra,[s.createTextVNode(" Showing "),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.startResultIndex)+" - "+s.toDisplayString(a.searchFeedbackData.endResultIndex),1),s.createTextVNode(" of "),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.totalResults),1),s.createTextVNode(" results "),a.searchFeedbackData.searchTerm?(s.openBlock(),s.createElementBlock("span",Ia,[s.createTextVNode('for "'),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.searchTerm),1),s.createTextVNode('" ')])):s.createCommentVNode("",!0),s.createElementVNode("div",Fa,[a.searchFeedbackData.autoCorrectedQuery?(s.openBlock(),s.createElementBlock("div",Pa,[s.createTextVNode(" Search instead for "),s.createElementVNode("a",{href:"#",onClick:e[0]||(e[0]=s.withModifiers(h=>a.onOriginalQueryClick(h),["prevent"])),class:"searchstax-feedback-original-query"},s.toDisplayString(a.searchFeedbackData.originalQuery),1)])):s.createCommentVNode("",!0)])])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"searchFeedback",{searchFeedbackData:a.searchFeedbackData,onOriginalQueryClick:a.onOriginalQueryClick})],8,Ea)}const $a=M(Ta,[["render",Da]]),wa=s.defineComponent({name:"SearchstaxSortingWidget",data(){return{sortingData:null,selectedSorting:"",rand:Math.random()}},methods:{orderChange(a){m.searchstax.searchSortingWidget.setOrderQuery(a.target.value)},attachObservables(){m.searchstax.dataLayer.$searchSortingData.subscribe(a=>{this.sortingData=a}),m.searchstax.dataLayer.$searchObject.subscribe(a=>{this.selectedSorting=decodeURIComponent(a.order)})}},computed:{hasSortingSlot(){return!!this.$slots.sorting}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchSortingWidget("search-sorting-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ma=["id"],Ba={key:0,class:"searchstax-sorting-container"},Oa=s.createElementVNode("label",{class:"searchstax-sorting-label",for:"sort-by"},"Sort By",-1),Va=["value"],Aa=[s.createElementVNode("option",{value:""}," Relevance ",-1),s.createElementVNode("option",{value:"date desc"}," Newest Content ",-1),s.createElementVNode("option",{value:"date asc"}," Oldest Content ",-1)];function Na(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{id:"search-sorting-container"+a.rand},[a.sortingData&&((o=a.sortingData)!=null&&o.searchExecuted)&&((c=a.sortingData)!=null&&c.hasResultsOrExternalPromotions)&&!a.hasSortingSlot?(s.openBlock(),s.createElementBlock("div",Ba,[Oa,s.createElementVNode("select",{id:"searchstax-search-order-select",class:"searchstax-search-order-select",value:a.selectedSorting,onChange:e[0]||(e[0]=h=>a.orderChange(h))},Aa,40,Va)])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"sorting",{sortingData:a.sortingData,orderChange:a.orderChange,selectedSorting:a.selectedSorting})],8,Ma)}const qa=M(wa,[["render",Na]]),ja=s.defineComponent({name:"SearchstaxExternalPromotionsWidget",data(){return{externalPromotionsData:null,rand:Math.random()}},methods:{attachObservables(){m.searchstax.dataLayer.$searchExternalPromotionsData.subscribe(a=>{this.externalPromotionsData=a})},trackClick(a,e){m.searchstax.externalPromotionsWidget.trackClick(a,e)}},computed:{hasExternalPromotionsSlot(){return!!this.$slots.externalPromotions}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addExternalPromotionsWidget("searchstax-external-promotions-layout-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ha=["id"],_a={key:0,class:"searchstax-external-promotions-container",id:"searchstax-external-promotions-container"},Wa=s.createElementVNode("div",{class:"icon-elevated"},null,-1),Ua=["onClick"],Qa={class:"searchstax-search-result-title-container"},Ka={class:"searchstax-search-result-title"},za={key:1,class:"searchstax-search-result-description searchstax-search-result-common"},Ja={key:2,class:"searchstax-search-result-description searchstax-search-result-common"};function Ga(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-external-promotions-layout-container"+a.rand},[a.externalPromotionsData&&((o=a.externalPromotionsData)!=null&&o.searchExecuted)&&((c=a.externalPromotionsData)!=null&&c.hasExternalPromotions)&&!a.hasExternalPromotionsSlot?(s.openBlock(),s.createElementBlock("div",_a,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.externalPromotionsData.externalPromotions,h=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-external-promotion searchstax-search-result",key:h.id},[Wa,h.url?(s.openBlock(),s.createElementBlock("a",{key:0,href:"{{externalPromotion.url}}",onClick:d=>a.trackClick(h,d),class:"searchstax-result-item-link"},null,8,Ua)):s.createCommentVNode("",!0),s.createElementVNode("div",Qa,[s.createElementVNode("span",Ka,s.toDisplayString(h.name),1)]),h.description?(s.openBlock(),s.createElementBlock("p",za,s.toDisplayString(h.description),1)):s.createCommentVNode("",!0),h.url?(s.openBlock(),s.createElementBlock("p",Ja,s.toDisplayString(h.url),1)):s.createCommentVNode("",!0)]))),128))])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"externalPromotions",{externalPromotionsData:a.externalPromotionsData,trackClick:a.trackClick})],8,Ha)}const Xa=M(ja,[["render",Ga]]),Ya=s.defineComponent({name:"SearchstaxRelatedSearchesWidget",data(){return{relatedData:null,rand:Math.random()}},props:{relatedSearchesURL:{type:String,required:!0},relatedSearchesAPIKey:{type:String,required:!0}},methods:{executeSearch(a){m.searchstax.relatedSearchesWidget.executeSearch(a)},attachObservables(){m.searchstax.dataLayer.$searchRelatedSearchesData.subscribe(a=>{this.relatedData=a})}},computed:{hasRelatedSlot(){return!!this.$slots.related}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addRelatedSearchesWidget("searchstax-related-searches-container"+this.rand,{relatedSearchesURL:this.relatedSearchesURL,relatedSearchesAPIKey:this.relatedSearchesAPIKey});else throw Error("Searchstax instance needs to be passed via props")}}),Za={key:0,class:"searchstax-related-searches-container",id:"searchstax-related-searches-container"},es=s.createElementVNode("span",{id:"searchstax-related-searches"},null,-1),ts={key:0,class:"searchstax-related-search"},as=["onClick"],ss={key:0};function rs(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock(s.Fragment,null,[a.relatedData&&((o=a.relatedData)!=null&&o.searchExecuted)&&((c=a.relatedData)!=null&&c.hasRelatedSearches)&&!a.hasRelatedSlot?(s.openBlock(),s.createElementBlock("div",Za,[s.createTextVNode(" Related searches: "),es,a.relatedData.relatedSearches?(s.openBlock(),s.createElementBlock("span",ts,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.relatedData.relatedSearches,h=>(s.openBlock(),s.createElementBlock("span",{key:h.related_search,onClick:d=>a.executeSearch(h),class:"searchstax-related-search searchstax-related-search-item"},[s.createTextVNode(s.toDisplayString(h.related_search),1),h.last?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("span",ss,","))],8,as))),128))])):s.createCommentVNode("",!0)])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"related",{relatedData:a.relatedData,executeSearch:a.executeSearch})],64)}const is=M(Ya,[["render",rs]]);$.SearchstaxExternalPromotionsWidget=Xa,$.SearchstaxFacetsWidget=ua,$.SearchstaxInputWidget=Xe,$.SearchstaxPaginationWidget=xa,$.SearchstaxRelatedSearchesWidget=is,$.SearchstaxResultWidget=xt,$.SearchstaxSearchFeedbackWidget=$a,$.SearchstaxSortingWidget=qa,$.SearchstaxWrapper=He,Object.defineProperty($,Symbol.toStringTag,{value:"Module"})})(this["@searchstaxInc/searchstudioUxVue"]=this["@searchstaxInc/searchstudioUxVue"]||{},vue);
240
+ `,selectId:"searchstax-search-order-select"}};class f{}l(f,"answer",Se),l(f,"externalPromotions",ve),l(f,"facets",Le),l(f,"pagination",xe),l(f,"relatedSearches",Te),l(f,"searchFeedback",Ee),l(f,"searchInput",Re),l(f,"searchResults",Ie),l(f,"sorting",Fe);class Pe{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"externalPromotionsContainerId"),l(this,"searchExternalPromotionsMainContainer",null);var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.externalPromotionsContainerId=((r=(t=this.config.templates)==null?void 0:t.mainTemplate)==null?void 0:r.externalPromotionsContainerId)||f.externalPromotions.mainTemplate.externalPromotionsContainerId,this.searchExternalPromotionsMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}initializeSubscriptions(){this.dataLayer.$searchExternalPromotions.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data,externalPromotions:this.dataLayer.parsedData.externalPromotions};return this.dataLayer.setExternalPromotionsData(e),e}addExternalSearch(e){var t,r,i,n;const o=document.getElementById(this.externalPromotionsContainerId);if(o){const c=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.externalPromotion)==null?void 0:i.template)||((n=f.externalPromotions.externalPromotion)==null?void 0:n.template),h=document.createElement("div");h.classList.add("searchstax-external-promotion"),h.addEventListener("click",d=>{this.trackClick(e,d)}),h.innerHTML=b.render(c,e),o.appendChild(h)}}trackClick(e,t){t.stopPropagation(),t.preventDefault(),window.open(e.url,"_blank")}renderMainTemplate(e){var t,r,i,n;const o=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplate)==null?void 0:i.template)||((n=f.externalPromotions.mainTemplate)==null?void 0:n.template);if(this.dataLayer.renderingEngine===R.mustache){this.searchExternalPromotionsMainContainer.innerHTML=b.render(o,e);const c=document.getElementById(this.externalPromotionsContainerId);c&&(c.innerHTML="");for(const h of e.externalPromotions)this.addExternalSearch(h)}}}class De{constructor(e,t){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"routerHelper"),l(this,"cachedPhrase",""),l(this,"isCached",!1),l(this,"overlayOpened",!1),l(this,"facetPaginationStep"),l(this,"facetPaginationStepMobile"),l(this,"searchFacetsMainContainer",null),l(this,"searchFacetsMobileContainer",null),l(this,"searchFacetsDesktopContainer",null),l(this,"facetLimits",{}),l(this,"facetLimitsMobile",{}),l(this,"deactivatedFacets",{}),l(this,"cachedData",null),l(this,"cacheFacets"),l(this,"onFacetSelect",(r,i,n,o)=>{if(r.stopPropagation(),!i.disabled){const c=n.querySelector("input");c.checked=o?c.checked:!c.checked;const h=this.dataLayer.searchObject;let d=[...h.facets];const u=this.extractFacetValue(i);c.checked?d.find(g=>D.deepEqual(g,u)?g:!1)||(this.config.facetingType==="tabs"&&(d=d.filter(g=>g.name!==u.name)),d.push(u)):d=d.filter(g=>!D.deepEqual(g,u)),setTimeout(()=>{this.dataLayer.setSearchObject({...h,facets:d,page:1}),this.config.facetingType==="tabs"&&this.renderMainTemplate(this.generateTemplateData(),!0)},0)}}),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.cacheFacets=t,this.facetPaginationStep=this.config.itemsPerPageDesktop,this.facetPaginationStepMobile=this.config.itemsPerPageMobile,this.searchFacetsMainContainer=document.getElementById(this.containerId),this.needCache&&t(),this.initializeSubscriptions()}get needCache(){return this.config.facetingType==="showUnavailable"||this.config.facetingType==="or"||this.config.facetingType==="tabs"}get needDisabling(){return this.config.facetingType==="showUnavailable"}initializeSubscriptions(){this.needCache&&this.dataLayer.$searchFacetsCached.subscribe(e=>{e&&this.dataLayer.searchFacets&&this.renderMainTemplate(this.generateTemplateData())}),this.dataLayer.$searchResults.subscribe(e=>{e&&(this.needCache&&!this.isCached&&(this.dataLayer.searchFacets&&!this.dataLayer.searchFacetsCached&&this.dataLayer.setSearchFacetsCached(this.dataLayer.searchFacets),this.cacheFacets()),this.renderMainTemplate(this.generateTemplateData()))}),this.dataLayer.$searchObject.subscribe(e=>{this.cachedPhrase!==e.query?(this.cachedPhrase=e.query,this.isCached=!1):this.isCached=!0})}extractFacetValue(e){return{type:this.config.facetingType,name:e.parentName,value:e.value}}applyFacetLimits(e,t){const r=t?this.facetPaginationStepMobile:this.facetPaginationStep,i=t?this.facetLimits:this.facetLimitsMobile;return e.forEach(n=>{i[n.name]||(i[n.name]=r)}),e.map(n=>({...n,values:n.values.slice(0,i[n.name]),showingAllFacets:n.values.length<=i[n.name],hasMoreFacets:n.values.length>r}))}generateTemplateData(e){if(this.generateSelectedFacetsData(),this.dataLayer.searchFacets){let t=this.dataLayer.searchFacets;this.needCache&&this.dataLayer.searchFacetsCached&&(t=this.dataLayer.searchFacetsCached,this.needDisabling&&(t=t.map(i=>{var n;const o=(n=this.dataLayer.searchFacets)==null?void 0:n.find(c=>c.name===i.name);return o?{...i,values:i.values.map(c=>{const h=o.values.find(d=>c.type==="range"?!1:c.type==="checkbox"?d.value===c.value:!1);return{...c,disabled:!h,isMobile:e}})}:{...i,values:i.values.map(c=>({...c,disabled:!0})),isMobile:e}}))),this.config.specificFacets&&(t=t.filter(i=>{var n;return(n=this.config.specificFacets)==null?void 0:n.includes(i.name)}));const r={facets:this.applyFacetLimits(t,e),...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(r),r}else{const t={facets:[],...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(t),t}}createFacetItem(e,t,r){var i,n,o,c,h,d,u,g,p,y,L,C;const k=document.createElement("div");k.classList.add("searchstax-facet-container"),this.deactivatedFacets[e.name]||k.classList.add("active");const S=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.facetItemContainerTemplate)==null?void 0:o.template)||((c=f.facets.facetItemContainerTemplate)==null?void 0:c.template);k.innerHTML=b.render(S,e),t.appendChild(k);const x=k.querySelector("."+(((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.facetItemContainerTemplate)==null?void 0:u.facetListTitleContainerClass)||((g=f.facets.facetItemContainerTemplate)==null?void 0:g.facetListTitleContainerClass)));x==null||x.addEventListener("click",()=>{k.classList.toggle("active")});const T=k.querySelector("."+(((L=(y=(p=this.config)==null?void 0:p.templates)==null?void 0:y.facetItemContainerTemplate)==null?void 0:L.facetListContainerClass)||((C=f.facets.facetItemContainerTemplate)==null?void 0:C.facetListContainerClass)));T&&(e.values.forEach(F=>{this.createFacetListItem(F,T)}),e.hasMoreFacets&&this.createHasMoreComponent(e,T,r))}isChecked(e){var t;return!!((t=this.dataLayer.searchObject.facets)!=null&&t.find(r=>D.deepEqual(r,this.extractFacetValue(e))))}createFacetListItem(e,t){var r,i,n,o,c,h,d,u,g,p,y,L,C;const k=document.createElement("div");k.classList.add("searchstax-facet-value-container"),e.disabled&&k.classList.add("searchstax-facet-value-disabled");const S=this.isChecked(e),x=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.facetItemTemplate)==null?void 0:n.template)||((o=f.facets.facetItemTemplate)==null?void 0:o.template);k.innerHTML=b.render(x,{...e,isChecked:S});let T=(c=f.facets.facetItemTemplate)==null?void 0:c.checkTriggerClasses;T=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.facetItemTemplate)==null?void 0:u.checkTriggerClasses)||T,T.forEach(F=>{var E;(E=k.querySelector("."+F))==null||E.addEventListener("click",B=>{this.onFacetSelect(B,e,k)})}),(C=k.querySelector("."+(((y=(p=(g=this.config)==null?void 0:g.templates)==null?void 0:p.facetItemTemplate)==null?void 0:y.inputCheckboxClass)||((L=f.facets.facetItemTemplate)==null?void 0:L.inputCheckboxClass))))==null||C.addEventListener("click",F=>{this.onFacetSelect(F,e,k,!0)}),t.appendChild(k)}createHasMoreComponent(e,t,r){var i,n,o,c,h,d,u,g;const p=document.createElement("div");p.classList.add("searchstax-facet-show-more-container");const y=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.showMoreButtonContainerTemplate)==null?void 0:o.template)||((c=f.facets.showMoreButtonContainerTemplate)==null?void 0:c.template);p.innerHTML=b.render(y,e);const L=p.querySelector("."+(((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.showMoreButtonContainerTemplate)==null?void 0:u.showMoreButtonClass)||((g=f.facets.showMoreButtonContainerTemplate)==null?void 0:g.showMoreButtonClass)));L&&(this.attachOnclickToShowMore(e,L,r),t&&t.appendChild(L))}attachOnclickToShowMore(e,t,r){t.addEventListener("click",i=>{this.onShowMoreLessClick(i,e,r)})}onShowMoreLessClick(e,t,r){e.preventDefault();const i=r?this.facetPaginationStepMobile:this.facetPaginationStep,n=r?this.facetLimits:this.facetLimitsMobile;n[t.name]===void 0?n[t.name]=i*2:n[t.name]<=t.values.length?n[t.name]=n[t.name]+i:n[t.name]=i,this.generateTemplateData(r),this.renderMainTemplate(this.generateTemplateData())}renderMainTemplate(e,t){var r,i,n,o,c,h,d,u,g,p,y;if(e&&(!D.deepEqual(this.cachedData??{},e)||t)){this.cachedData=e;const L=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.mainTemplateDesktop)==null?void 0:n.template)||((o=f.facets.mainTemplateDesktop)==null?void 0:o.template);if(this.dataLayer.renderingEngine===R.mustache&&this.searchFacetsMainContainer){this.searchFacetsMainContainer.innerHTML=b.render(L,{...e});const C=(u=this.searchFacetsMainContainer)==null?void 0:u.querySelector("."+(((d=(h=(c=this.config)==null?void 0:c.templates)==null?void 0:h.mainTemplateDesktop)==null?void 0:d.facetsContainerClass)||f.facets.mainTemplateDesktop.facetsContainerClass));if(C){C.innerHTML="";for(const k of e.facets)this.createFacetItem(k,C);if(this.searchFacetsMainContainer){const k=this.searchFacetsMainContainer.querySelector("."+(((y=(p=(g=this.config)==null?void 0:g.templates)==null?void 0:p.mainTemplateDesktop)==null?void 0:y.selectedFacetsContainerClass)||f.facets.mainTemplateDesktop.selectedFacetsContainerClass));k&&(this.createSelectedFacetsComponents(k),this.createClearFacetsComponents(k))}}}this.renderMobileTemplate(this.generateTemplateData(!0))}else this.generateSelectedFacetsData()}generateSelectedFacetsData(){const e=[],t=this.dataLayer.searchObject.facets;for(const r of t){const i=decodeURIComponent(r.name),n=decodeURIComponent(r.value);if(this.dataLayer.searchFacets){const o=this.needCache?this.dataLayer.searchFacetsCached:this.dataLayer.searchFacets,c=o==null?void 0:o.find(h=>h.name===i);if(c){const h=c.values.find(d=>d.type==="range"?!1:d.type==="checkbox"?`"${d.value}"`==`"${n}"`:!1);h&&e.push(h)}}}this.dataLayer.setSelectedFacetsTemplateData(e)}createSelectedFacetsComponents(e){var t;this.generateSelectedFacetsData(),(t=this.dataLayer.selectedFacetsTemplateData)==null||t.forEach(r=>{this.createSelectedFacetsComponent(e,r)})}createClearFacetsComponents(e){var t,r,i,n,o,c,h,d;const u=this.dataLayer.searchObject,g=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.clearFacetsTemplate)==null?void 0:i.template)||((n=f.facets.clearFacetsTemplate)==null?void 0:n.template),p=document.createElement("div");p.innerHTML=b.render(g,{shouldShow:u.facets.length>0});const y=p.querySelector("."+(((h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.clearFacetsTemplate)==null?void 0:h.containerClass)||((d=f.facets.clearFacetsTemplate)==null?void 0:d.containerClass)));y&&(y.addEventListener("click",()=>{this.removeSelectedFacets()}),e.appendChild(y))}createSelectedFacetsComponent(e,t){var r,i,n,o,c,h,d,u;const g=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.selectedFacetsTemplate)==null?void 0:n.template)||((o=f.facets.selectedFacetsTemplate)==null?void 0:o.template),p=document.createElement("div");p.innerHTML=b.render(g,t);const y=p.querySelector("."+(((d=(h=(c=this.config)==null?void 0:c.templates)==null?void 0:h.selectedFacetsTemplate)==null?void 0:d.containerClass)||((u=f.facets.selectedFacetsTemplate)==null?void 0:u.containerClass)));y&&(y.addEventListener("click",()=>{this.unselectFacet(t)}),e.appendChild(y))}unselectFacet(e){const t=this.dataLayer.searchObject;let r=[...t.facets];e.type==="checkbox"&&(r=r.filter(i=>JSON.stringify(i)!==JSON.stringify(this.extractFacetValue(e)))),setTimeout(()=>{this.dataLayer.setSearchObject({...t,facets:r}),this.generateSelectedFacetsData()},0)}removeSelectedFacets(){const e=this.dataLayer.searchObject;this.dataLayer.setSearchObject({...e,facets:[]})}createFilterByComponent(e){var t,r,i,n,o,c,h,d;const u=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.filterByTemplate)==null?void 0:i.template)||((n=f.facets.filterByTemplate)==null?void 0:n.template),g=document.createElement("div");g.innerHTML=b.render(u,{});const p=g.querySelector("."+(((h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.filterByTemplate)==null?void 0:h.containerClass)||((d=f.facets.filterByTemplate)==null?void 0:d.containerClass)));p&&(e.prepend(p),p.addEventListener("click",this.openOverlay.bind(this)))}openOverlay(){var e;this.overlayOpened=!0,this.searchFacetsMainContainer&&(document.body.classList.toggle("searchstax-no-scroll"),(e=this.searchFacetsMainContainer.querySelector(".searchstax-facets-mobile-overlay"))==null||e.classList.add("searchstax-show"))}closeOverlay(){var e;this.overlayOpened=!1,this.searchFacetsMainContainer&&(document.body.classList.toggle("searchstax-no-scroll"),(e=this.searchFacetsMainContainer.querySelector(".searchstax-facets-mobile-overlay"))==null||e.classList.remove("searchstax-show"))}renderMobileTemplate(e){var t,r,i,n,o,c,h,d,u,g,p,y,L,C,k,S,x,T,F;if(e){const E=document.createElement("div");E.classList.add("searchstax-facets-container-mobile");const B=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplateMobile)==null?void 0:i.template)||((n=f.facets.mainTemplateMobile)==null?void 0:n.template);if(this.dataLayer.renderingEngine===R.mustache){if(E.innerHTML=b.render(B,{...e,overlayOpened:this.overlayOpened}),(o=this.searchFacetsMainContainer)==null||o.appendChild(E),(h=(c=this.config)==null?void 0:c.templates)!=null&&h.mainTemplateMobile)for(const _ of((g=(u=(d=this.config)==null?void 0:d.templates)==null?void 0:u.mainTemplateMobile)==null?void 0:g.closeOverlayTriggerClasses)||[]){const W=E.querySelector("."+_);W&&W.addEventListener("click",this.closeOverlay.bind(this))}else for(const _ of f.facets.mainTemplateMobile.closeOverlayTriggerClasses){const W=E.querySelector("."+_);W&&W.addEventListener("click",this.closeOverlay.bind(this))}const U=E.querySelector("."+(((L=(y=(p=this.config)==null?void 0:p.templates)==null?void 0:y.mainTemplateMobile)==null?void 0:L.filterByContainerClass)||f.facets.mainTemplateMobile.filterByContainerClass));U&&this.createFilterByComponent(U);const P=E.querySelector("."+(((S=(k=(C=this.config)==null?void 0:C.templates)==null?void 0:k.mainTemplateMobile)==null?void 0:S.selectedFacetsContainerClass)||f.facets.mainTemplateMobile.selectedFacetsContainerClass));P&&(this.createSelectedFacetsComponents(P),this.createClearFacetsComponents(P));const J=E.querySelector("."+(((F=(T=(x=this.config)==null?void 0:x.templates)==null?void 0:T.mainTemplateMobile)==null?void 0:F.facetsContainerClass)||f.facets.mainTemplateMobile.facetsContainerClass));if(J){J.innerHTML="";for(const _ of e.facets)this.createFacetItem(_,J,!0)}}}}}class $e{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"previousButtonClass"),l(this,"nextButtonClass"),l(this,"loadMoreButtonClass"),l(this,"routerHelper"),l(this,"searchPaginationMainContainer",null);var t,r,i,n,o,c,h,d,u;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.previousButtonClass=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.mainTemplate)==null?void 0:i.previousButtonClass)??f.pagination.mainTemplate.previousButtonClass,this.nextButtonClass=((c=(o=(n=this.config)==null?void 0:n.templates)==null?void 0:o.mainTemplate)==null?void 0:c.nextButtonClass)??f.pagination.mainTemplate.nextButtonClass,this.loadMoreButtonClass=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:u.loadMoreButtonClass)??f.pagination.infiniteScrollTemplate.loadMoreButtonClass,this.searchPaginationMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}get isFirstPage(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.page)===1}get isLastPage(){return this.dataLayer.parsedData.data.isLastPage}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){var e,t,r,i;const n={...this.dataLayer.parsedData.data,previousPageLink:(t=this.routerHelper)==null?void 0:t.searchObjectToUrl({...this.dataLayer.searchObject,page:((e=this.dataLayer.searchObject)==null?void 0:e.page)-1}),nextPageLink:(i=this.routerHelper)==null?void 0:i.searchObjectToUrl({...this.dataLayer.searchObject,page:((r=this.dataLayer.searchObject)==null?void 0:r.page)+1})};return this.dataLayer.setPaginationData(n),n}goToPage(e,t){const r=this.dataLayer.searchObject;r&&(r.page=e,this.dataLayer.setSearchObject(r)),t||window.scrollTo(0,0)}nextPage(e){var t;e.preventDefault(),e.stopPropagation(),this.isLastPage||this.goToPage(((t=this.dataLayer.searchObject)==null?void 0:t.page)+1,this.dataLayer.isInfiniteScroll)}previousPage(e){var t;e.preventDefault(),e.stopPropagation(),this.isFirstPage||this.goToPage(((t=this.dataLayer.searchObject)==null?void 0:t.page)-1)}overridePaginationEvents(){if(this.searchPaginationMainContainer){const e=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass),t=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass),r=this.searchPaginationMainContainer.querySelector("."+this.loadMoreButtonClass);e&&e.addEventListener("click",this.previousPage.bind(this)),t&&t.addEventListener("click",this.nextPage.bind(this)),r&&r.addEventListener("click",this.nextPage.bind(this))}}renderMainTemplate(e){var t,r,i,n,o,c,h,d,u,g;this.searchPaginationMainContainer&&((t=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass))==null||t.removeEventListener("click",this.previousPage),(r=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass))==null||r.removeEventListener("click",this.nextPage));let p=((o=(n=(i=this.config)==null?void 0:i.templates)==null?void 0:n.mainTemplate)==null?void 0:o.template)||((c=f.pagination.mainTemplate)==null?void 0:c.template);this.dataLayer.isInfiniteScroll&&(p=((u=(d=(h=this.config)==null?void 0:h.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:u.template)||((g=f.pagination.infiniteScrollTemplate)==null?void 0:g.template)),this.dataLayer.renderingEngine===R.mustache&&(this.searchPaginationMainContainer.innerHTML=b.render(p,e),setTimeout(()=>{this.overridePaginationEvents()},0))}}class we{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"relatedSearchesContainerClass"),l(this,"searchRelatedSearchesMainContainer",null),l(this,"track");var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.relatedSearchesContainerClass=((r=(t=this.config.templates)==null?void 0:t.main)==null?void 0:r.relatedSearchesContainerClass)||f.relatedSearches.main.relatedSearchesContainerClass,this.searchRelatedSearchesMainContainer=document.getElementById(this.containerId),this.track=e.trackRelatedSearchClick,this.initializeSubscriptions()}initializeSubscriptions(){this.dataLayer.$searchRelatedSearches.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setRelatedSearchesData(e),e}addRelatedSearchComponent(e,t){var r,i,n,o,c;const h=document.createElement("div"),d=((n=(i=(r=this.config)==null?void 0:r.templates)==null?void 0:i.relatedSearch)==null?void 0:n.template)||f.relatedSearches.relatedSearch.template;if(this.dataLayer.renderingEngine===R.mustache){h.innerHTML=b.render(d,e);const u=h.querySelector("."+(((c=(o=this.config.templates)==null?void 0:o.relatedSearch)==null?void 0:c.relatedSearchContainerClass)||f.relatedSearches.relatedSearch.relatedSearchContainerClass));u&&(t.appendChild(u),u.addEventListener("click",()=>{this.executeSearch(e)}))}}executeSearch(e){const t=this.dataLayer.searchObject;t.query=e.related_search,this.dataLayer.setSearchObject(t),this.track(e)}renderMainTemplate(e){var t,r,i,n;const o=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.relatedSearches.main.template;if(this.dataLayer.renderingEngine===R.mustache&&this.searchRelatedSearchesMainContainer){this.searchRelatedSearchesMainContainer.innerHTML="",this.searchRelatedSearchesMainContainer.innerHTML=b.render(o,e);const c=(n=this.searchRelatedSearchesMainContainer)==null?void 0:n.querySelector(`.${this.relatedSearchesContainerClass}`);if(c)for(const h of e.relatedSearches)this.addRelatedSearchComponent(h,c)}}}class Me{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"searchFeedbackMainContainer",null),l(this,"searchTrigger"),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.searchTrigger=e.searchTrigger,this.searchFeedbackMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions()}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setSearchFeedbackData(e),e}onOriginalQueryClick(e){var t;e.stopPropagation(),e.preventDefault();const r=(t=e.target)==null?void 0:t.innerHTML;this.searchTrigger(r,!0)}attachClick(){var e,t,r,i,n;const o=(n=this.searchFeedbackMainContainer)==null?void 0:n.querySelector("."+(((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.main)==null?void 0:r.originalQueryClass)||((i=f.searchFeedback.main)==null?void 0:i.originalQueryClass)));o&&o.addEventListener("click",this.onOriginalQueryClick.bind(this))}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.searchFeedback.main.template;this.dataLayer.renderingEngine===R.mustache&&(this.searchFeedbackMainContainer.innerHTML=b.render(n,e),setTimeout(()=>{this.attachClick()},0))}}class Be{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"suggestAfterMinChars"),l(this,"containerId"),l(this,"currentInputValue",""),l(this,"autosuggestResults"),l(this,"searchInput"),l(this,"actionButton"),l(this,"autosuggestContainer"),l(this,"buttonState","search"),l(this,"selectedAutosuggestItem",-1),l(this,"suggestTrigger"),l(this,"searchTrigger"),this.dataLayer=e.dataLayer,this.config=e.config,this.searchTrigger=e.searchTrigger,this.suggestTrigger=e.suggestTrigger,this.containerId=e.containerId,this.suggestAfterMinChars=e.config.suggestAfterMinChars,this.renderMainTemplate(),this.actionButtonInit(),this.updateActionButtonState("search"),this.searchInput&&(this.createAutosuggestContainer(),this.attachSubscriptions())}renderMainTemplate(){var e,t,r,i;const n=document.getElementById(this.containerId);if(!n)throw new Error("Search input container not found");const o=((t=(e=this.config.templates)==null?void 0:e.mainTemplate)==null?void 0:t.template)||f.searchInput.mainTemplate.template;if(this.dataLayer.renderingEngine===R.mustache){const d=b.render(o,{});n.innerHTML=d}const c=((i=(r=this.config.templates)==null?void 0:r.mainTemplate)==null?void 0:i.searchInputId)||f.searchInput.mainTemplate.searchInputId,h=document.querySelector(`#${c}`);if(h)this.searchInput=h,h.addEventListener("keyup",this.inputKeyupEvent.bind(this)),h.addEventListener("blur",this.hideAutosuggest.bind(this)),h.addEventListener("paste",this.inputPasteEvent.bind(this));else throw new Error("Input not found")}createAutosuggestContainer(){var e;this.dataLayer.renderingEngine===R.mustache&&(this.autosuggestContainer=document.createElement("div"),this.autosuggestContainer.classList.add("searchstax-autosuggest-container"),this.autosuggestContainer.addEventListener("mouseleave",()=>{this.resetAutosuggestSelection(),this.markActiveAutosuggestItem()}),(e=this.searchInput)==null||e.after(this.autosuggestContainer))}actionButtonInit(){this.actionButton=document.getElementById("searchstax-search-input-action-button"),this.actionButton&&this.actionButton.addEventListener("click",()=>{var e;this.buttonState==="search"?this.executeSearch(((e=this.searchInput)==null?void 0:e.value)??""):this.buttonState==="close"&&this.searchInput&&(this.searchInput.value="",this.executeSearch(""))})}attachSubscriptions(){this.dataLayer.$searchTermChange.subscribe(()=>{this.handleSearchTermChange()}),this.dataLayer.$loadingChange.subscribe(()=>{this.handleLoadingChange()}),this.dataLayer.$searchAutosuggest.subscribe(e=>{e&&this.appendSuggestions(e)}),this.dataLayer.$searchObject.subscribe(e=>{e.query!=="undefined"&&e.query!==void 0&&e.query!=="*"&&this.searchInput&&(this.searchInput.value=this.cleanSuggestionTerm(e.query??""))})}handleLoadingChange(){this.dataLayer.loading?this.updateActionButtonState("loading"):this.handleSearchTermChange()}handleSearchTermChange(){var e;this.dataLayer.searchTerm===((e=this.searchInput)==null?void 0:e.value)&&this.searchInput.value!==""?this.updateActionButtonState("close"):this.updateActionButtonState("search")}updateActionButtonState(e){if(this.buttonState=e,this.actionButton)switch(this.actionButton.classList.remove("searchstax-spinner-icon"),this.actionButton.classList.remove("searchstax-search-close"),this.actionButton.classList.remove("searchstax-search-icon"),e){case"loading":this.actionButton.classList.add("searchstax-spinner-icon");break;case"search":this.actionButton.classList.add("searchstax-search-icon");break;case"close":this.actionButton.classList.add("searchstax-search-close");break}}selectPreviousAutosuggestItem(){this.selectedAutosuggestItem>0?this.selectedAutosuggestItem--:this.selectedAutosuggestItem=this.autosuggestResults.suggestions.length-1,this.markActiveAutosuggestItem()}selectNextAutosuggestItem(){this.selectedAutosuggestItem<this.autosuggestResults.suggestions.length-1?this.selectedAutosuggestItem++:this.selectedAutosuggestItem=0,this.markActiveAutosuggestItem()}resetAutosuggestSelection(){this.selectedAutosuggestItem=-1,this.markActiveAutosuggestItem()}markActiveAutosuggestItem(){const e=document.getElementsByClassName("searchstax-autosuggest-item");for(let t=0;t<e.length;t++){const r=e[t];t===this.selectedAutosuggestItem?r.classList.add("active"):r.classList.remove("active")}}inputKeyupEvent(e){const t=e.key;this.currentInputValue=e.target.value,t==="Enter"?this.suggestionChosen():t==="Escape"?this.hideAutosuggest():t==="ArrowUp"?this.selectPreviousAutosuggestItem():t==="ArrowDown"?this.selectNextAutosuggestItem():this.autosuggestHandling(e),this.handleSearchTermChange()}autosuggestHandling(e){e.target&&e.target.value.length>=this.suggestAfterMinChars?this.executeSuggest(e.target.value):this.hideAutosuggest()}inputPasteEvent(e){setTimeout(()=>{this.autosuggestHandling(e),this.handleSearchTermChange()},0)}executeSuggest(e){this.suggestTrigger(e)}executeSearch(e){this.hideAutosuggest(),this.searchTrigger(e===""?"*":e)}suggestionChosen(){this.selectedAutosuggestItem>-1?this.autosuggestItemClicked(this.autosuggestResults.suggestions[this.selectedAutosuggestItem]):this.executeSearch(this.currentInputValue)}hideAutosuggest(){setTimeout(()=>{this.dataLayer.setAutosuggestResults({numFound:0,suggestions:[]}),this.autosuggestContainer&&(this.autosuggestContainer.innerHTML="",this.autosuggestContainer.classList.add("hidden")),this.resetAutosuggestSelection()},100)}cleanSuggestionTerm(e){return w.removeXSSRiskyTags(e.replace(/(<([^>]+)>)/gi,"")).trim()}autosuggestItemClicked(e){this.searchInput.value=this.cleanSuggestionTerm(e.term??""),this.executeSearch(this.cleanSuggestionTerm(e.term))}createAutosuggestItem(e){var t,r,i;const n=document.createElement("div");n.classList.add("searchstax-autosuggest-item"),n.addEventListener("click",()=>{this.autosuggestItemClicked(e)}),n.addEventListener("mouseenter",()=>{this.onSuggestionEnter(e)});const o=((r=(t=this.config.templates)==null?void 0:t.autosuggestItemTemplate)==null?void 0:r.template)||((i=f.searchInput.autosuggestItemTemplate)==null?void 0:i.template);return n.innerHTML=b.render(o,e),n}onSuggestionEnter(e){var t;this.selectedAutosuggestItem=((t=this.autosuggestResults)==null?void 0:t.suggestions.indexOf(e))||0,this.markActiveAutosuggestItem()}appendSuggestions(e){this.autosuggestContainer&&(this.autosuggestContainer.innerHTML="",this.autosuggestContainer.classList.remove("hidden"));for(const t in e.suggest)if(Object.prototype.hasOwnProperty.call(e.suggest,t)){const r=e.suggest[t];for(const i in r)if(Object.prototype.hasOwnProperty.call(r,i)){const n=r[i];this.autosuggestResults=n,this.dataLayer.setAutosuggestResults(n),n.numFound>0?n.suggestions.forEach(o=>{this.autosuggestContainer&&this.autosuggestContainer.appendChild(this.createAutosuggestItem(o))}):this.autosuggestContainer&&this.autosuggestContainer.classList.add("hidden")}}}}class Oe{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"linkClickCallback"),l(this,"searchCallback"),l(this,"containerId"),l(this,"searchResultsMainContainer"),l(this,"searchResultsContainer"),l(this,"searchResultLinks",[]),this.linkClickCallback=e.linkClickCallback,this.searchCallback=e.searchTrigger,this.dataLayer=e.dataLayer,this.config=e.config,setTimeout(()=>{this.dataLayer.setSearchObject({...this.dataLayer.searchObject,itemsPerPage:this.config.resultsPerPage||10})},0),this.containerId=e.containerId;const t=document.getElementById(this.containerId);if(t)this.searchResultsMainContainer=t;else throw new Error(`Search Results Main Container with id ${this.containerId} not found`);this.dataLayer.setIsInfiniteScroll(e.config.renderMethod==="infiniteScroll"),this.initializeSubscriptions(),this.renderMainTemplate()}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.searchResultsContainer&&this.renderResults(e)})}changeTemplate(){this.dataLayer.searchResults&&this.renderResults(this.dataLayer.searchResults)}renderNoResultsTemplate(){var e,t,r,i,n;const o=((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.noSearchResultTemplate)==null?void 0:r.template)||((i=f.searchResults.noSearchResultTemplate)==null?void 0:i.template),c=((n=this.dataLayer.searchResultsMetadata)==null?void 0:n.spellingSuggestion)??"";if(this.dataLayer.renderingEngine===R.mustache&&this.searchResultsContainer&&(this.searchResultsContainer.innerHTML=b.render(o,{spellingSuggestion:c,searchTerm:this.dataLayer.searchTerm})),c&&this.searchResultsContainer){const h=this.searchResultsContainer.querySelector("a");h&&h.addEventListener("click",d=>{d.preventDefault(),d.stopPropagation(),this.searchCallback(c)})}}renderResults(e){var t,r,i,n,o;if(this.dataLayer.renderingEngine===R.mustache&&this.searchResultsContainer)if(this.removeLinkClickEvents(),e.length===0)this.renderNoResultsTemplate();else{const c=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.searchResultTemplate)==null?void 0:i.template)||((n=f.searchResults.searchResultTemplate)==null?void 0:n.template),h=e.map(d=>b.render(c,d));((o=this.config)==null?void 0:o.renderMethod)==="infiniteScroll"&&this.dataLayer.searchObject.page>1?this.searchResultsContainer.innerHTML+=h.join(""):this.searchResultsContainer.innerHTML=h.join(""),this.searchResultLinks=Array.from(this.searchResultsContainer.querySelectorAll(`[${this.uniqueIdAttribute}]`)),this.attachLinkClickEvents()}}removeLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.removeEventListener("click",()=>{})})}get uniqueIdAttribute(){var e,t,r,i;return((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.searchResultTemplate)==null?void 0:r.searchResultUniqueIdAttribute)||((i=f.searchResults.searchResultTemplate)==null?void 0:i.searchResultUniqueIdAttribute)}attachLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();const r=e.getAttribute(this.uniqueIdAttribute)??"";r&&this.linkClickCallback(r)})})}renderMainTemplate(){var e,t,r,i;const n=((r=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.mainTemplate)==null?void 0:r.template)||((i=f.searchResults.mainTemplate)==null?void 0:i.template);this.dataLayer.renderingEngine===R.mustache&&(this.searchResultsMainContainer.innerHTML=b.render(n,{}),setTimeout(()=>{var o,c,h,d,u,g,p;const y=(h=(c=(o=this.config)==null?void 0:o.templates)==null?void 0:c.mainTemplate)!=null&&h.searchResultsContainerId?(g=(u=(d=this.config)==null?void 0:d.templates)==null?void 0:u.mainTemplate)==null?void 0:g.searchResultsContainerId:(p=f.searchResults.mainTemplate)==null?void 0:p.searchResultsContainerId,L=document.getElementById(y);if(L)this.searchResultsContainer=L;else throw new Error(`Search Results Container with id ${y} not found`)},0))}}class Ve{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"selectId"),l(this,"searchSortingMainContainer",null);var t,r;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.selectId=((r=(t=this.config.templates)==null?void 0:t.main)==null?void 0:r.selectId)||f.sorting.main.selectId,this.searchSortingMainContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.renderMainTemplate(this.generateTemplateData())}initializeSubscriptions(){this.dataLayer.$searchResults.subscribe(e=>{e&&this.renderMainTemplate(this.generateTemplateData())})}generateTemplateData(){const e={...this.dataLayer.parsedData.data};return this.dataLayer.setSearchSortingData(e),e}setOrderQuery(e){const t=this.dataLayer.searchObject;t&&(t.order=e,this.dataLayer.setSearchObject(t))}markOptionSelected(){const e=document.getElementById(this.selectId);if(e){const t=e.querySelector(`option[value="${decodeURIComponent(this.dataLayer.searchObject.order)}"]`);t&&(t.selected=!0)}}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.sorting.main.template;if(this.dataLayer.renderingEngine===R.mustache){this.searchSortingMainContainer.innerHTML=b.render(n,e),this.markOptionSelected();const o=document.getElementById(this.selectId);o&&o.addEventListener("change",c=>{this.setOrderQuery(c.target.value)})}}}class Ae{constructor(e){l(this,"dataLayer"),l(this,"config"),l(this,"containerId"),l(this,"answerContainer",null),this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.answerContainer=document.getElementById(this.containerId),this.initializeSubscriptions(),this.dataLayer.setIsAnswerWidgetCreated(!0)}initializeSubscriptions(){this.dataLayer.$answer.subscribe(()=>{this.renderMainTemplate(this.dataLayer.parsedData.data)}),this.dataLayer.$paginationData.subscribe(()=>{this.renderMainTemplate(this.dataLayer.parsedData.data)})}renderMainTemplate(e){var t,r,i;const n=((i=(r=(t=this.config)==null?void 0:t.templates)==null?void 0:r.main)==null?void 0:i.template)||f.answer.main.template;this.dataLayer.renderingEngine===R.mustache&&(this.answerContainer.innerHTML=b.render(n,e))}}class Ne{constructor(e=R.mustache){l(this,"routerEnabled",!1),l(this,"cachedQuery",""),l(this,"routerHelper"),l(this,"searchHelper"),l(this,"searchResultsConfig"),l(this,"searchPaginationConfig"),l(this,"searchFeedbackConfig"),l(this,"searchSortingConfig"),l(this,"searchFacetsConfig"),l(this,"relatedSearchesConfig"),l(this,"externalPromotionsConfig"),l(this,"searchInputWidget"),l(this,"searchResultsWidget"),l(this,"searchFacetsWidget"),l(this,"searchPaginationWidget"),l(this,"searchFeedbackWidget"),l(this,"searchSortingWidget"),l(this,"relatedSearchesWidget"),l(this,"externalPromotionsWidget"),l(this,"answerWidget"),l(this,"dataLayer"),l(this,"firstRequest",!0),this.dataLayer=new ae("searchstax_session_id"),e&&this.dataLayer.setRenderingEngine(e),this.handleHooks()}setRenderingEngine(e=R.mustache){this.dataLayer.setRenderingEngine(e)}handleHooks(){var e,t;(t=(e=this.dataLayer.searchstaxConfig)==null?void 0:e.hooks)!=null&&t.afterSearch&&this.dataLayer.$searchResults.subscribe(r=>{this.dataLayer.searchstaxConfig.hooks.afterSearch(r)}),this.dataLayer.$searchObject.subscribe(r=>{var i;r.query!==""&&r.query!==void 0&&r.query!=="undefined"&&(this.search(r),this.dataLayer.turnAIAnswerGenerationOn===!0&&((i=this.searchHelper)==null||i.startSSE(r.query,this.parseAnswerResultsResponse.bind(this))))}),this.dataLayer.$searchResults.subscribe(r=>{r&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&q.trackSearch({...this.dataLayer.parsedData.trackingData,impressions:this.dataLayer.searchResultsMetadata.impressions})})}initialize(e){var t,r;e.turnAIAnswerGenerationOn===!0&&(this.dataLayer.turnAIAnswerGenerationOn=!0),e.autoCorrect===!1&&(this.dataLayer.autoCorrect=!1),this.dataLayer.searchstaxConfig||(this.dataLayer.setSearchstaxConfig(e),this.searchHelper=new re({...e,sessionId:this.dataLayer.sessionId},this.dataLayer)),((t=e.router)==null?void 0:t.enabled)===void 0||((r=e.router)==null?void 0:r.enabled)===!0?(this.routerEnabled=!0,this.routerHelper=new G(e.router?e.router:{enabled:!0}),this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href)),addEventListener("popstate",()=>{this.routerHelper&&this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href))})):this.routerHelper=new G({})}search(e){if(this.searchHelper){const t=this.dataLayer.forceNotCorrect;this.searchHelper.search(e,this.parseSearchResultsResponse.bind(this),this.firstRequest,t),this.firstRequest=!1,this.getRelatedSearches()}}getRelatedSearches(){this.searchHelper&&this.relatedSearchesConfig&&this.searchHelper.getRelatedSearches(this.dataLayer.searchObject,this.relatedSearchesConfig.relatedSearchesURL,this.relatedSearchesConfig.relatedSearchesAPIKey,this.parseRelatedSearchesResponse.bind(this))}parseRelatedSearchesResponse(e){var t;const r=(((t=e.response)==null?void 0:t.docs)??[]).map((n,o)=>({...n,position:o+1})),i=[];for(const n of r)i.push({relatedSearch:n.related_search,position:n.position});this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&q.trackRelatedSearches({...this.dataLayer.parsedData.trackingData,impressions:i}),this.dataLayer.setSearchRelatedSearches(r)}handleRouter(){if(this.routerEnabled){const e={...this.dataLayer.searchObject};this.dataLayer.isInfiniteScroll&&delete e.page,this.routerHelper.updateUrl(e)}}parseSearchResultsResponse(e){var t,r;this.handleRouter();let i=N.combineResultsWithMetadata(e),n=N.extractFacets(e);this.dataLayer.setSearchFacets(n),(r=(t=this.dataLayer.searchstaxConfig)==null?void 0:t.hooks)!=null&&r.afterSearch&&(i=this.dataLayer.searchstaxConfig.hooks.afterSearch(i)),this.dataLayer.setSearchExternalPromotions(e.externalLinks??[]);const o=N.extractSearchResultsMetadata(e);this.dataLayer.setSearchResultsMetadata(o),this.dataLayer.setSearchResults(i)}parseAnswerResultsResponse(e){this.handleRouter(),e!==O.question&&e!==O.notQuestion&&this.dataLayer.setAnswerData(this.dataLayer.getAnswerData+e)}cacheFacets(){var e;(e=this.searchHelper)==null||e.cacheFacets()}parseSuggestSuggestResponse(e){var t,r;let i=e;(r=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&r.afterAutosuggest&&(i=this.dataLayer.searchInputConfig.hooks.afterAutosuggest(e)),this.dataLayer.setSearchAutosuggest(i)}suggest(e,t){this.searchHelper&&this.searchHelper.suggest(e,this.parseSuggestSuggestResponse.bind(this),t)}changeLanguage(e){this.searchHelper&&this.dataLayer.setLanguage(e)}addSearchInputWidget(e,t){this.dataLayer.searchInputConfig||(this.dataLayer.setSearchInputConfig(t),this.searchInputWidget=new Be({containerId:e,config:t,searchTrigger:this.executeSearch.bind(this),suggestTrigger:this.executeSuggest.bind(this),dataLayer:this.dataLayer}))}addAnswerWidget(e,t){this.dataLayer.setAnswerData(""),this.answerWidget=new Ae({containerId:e,config:t,dataLayer:this.dataLayer})}addSearchResultsWidget(e,t){this.searchResultsConfig||(this.searchResultsConfig=t,this.searchResultsWidget=new Oe({containerId:e,linkClickCallback:this.executeLinkClick.bind(this),searchTrigger:this.executeSearch.bind(this),config:t,dataLayer:this.dataLayer}))}addPaginationWidget(e,t){this.searchPaginationConfig=t,this.searchPaginationWidget=new $e({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper})}addSearchFeedbackWidget(e,t){this.searchFeedbackConfig||(this.searchFeedbackConfig=t,this.searchFeedbackWidget=new Me({containerId:e,config:t,dataLayer:this.dataLayer,searchTrigger:this.executeSearch.bind(this)}))}addSearchSortingWidget(e,t){this.searchSortingConfig||(this.searchSortingConfig=t,this.searchSortingWidget=new Ve({containerId:e,config:t,dataLayer:this.dataLayer}))}addRelatedSearchesWidget(e,t){this.relatedSearchesConfig||(this.relatedSearchesConfig=t,this.relatedSearchesWidget=new we({containerId:e,config:t,dataLayer:this.dataLayer,trackRelatedSearchClick:this.trackRelatedSearchClick.bind(this)}),setTimeout(()=>{this.getRelatedSearches()},0))}addExternalPromotionsWidget(e,t){this.externalPromotionsConfig||(this.externalPromotionsConfig=t,this.externalPromotionsWidget=new Pe({containerId:e,config:t,dataLayer:this.dataLayer}))}addFacetsWidget(e,t){this.searchFacetsConfig=t,this.searchFacetsWidget=new De({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper},this.cacheFacets.bind(this))}executeSearch(e,t){var r,i;const n={...this.dataLayer.searchObject};n.query=w.removeXSSRiskyTags(e),n.page=1,n.facets=[],this.dataLayer.forceNotCorrect=!!t;let o=(r=this.routerHelper)==null?void 0:r.searchObjectToParams(n);o&&(o=(i=this.routerHelper)==null?void 0:i.extractParamsThatDoNotStartWithRouteName(o)),o&&(n.additionalProps=Object.keys(o).map(c=>o?{key:c,value:o[c]}:{key:"",value:""})),this.dataLayer.setSearchObject(n),this.dataLayer.lastSearchValue=n.query}executeSuggest(e){var t,r;let i={term:e,queryParams:[]};(r=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&r.beforeAutosuggest&&(i=this.dataLayer.searchInputConfig.hooks.beforeAutosuggest(i)),i&&i.term!==void 0&&i.queryParams!==void 0&&this.suggest(i.term,i.queryParams)}trackRelatedSearchClick(e){this.dataLayer.searchResultsMetadata&&this.dataLayer.searchRelatedSearches&&!this.dataLayer.cookiesDisabled&&q.trackRelatedSearchClick({...this.dataLayer.parsedData.trackingData,relatedSearch:e})}executeLinkClick(e){var t,r;let i=N.findResultByUniqueId(e,this.dataLayer.searchResults??[]);i&&((r=(t=this.searchResultsConfig)==null?void 0:t.hooks)!=null&&r.afterLinkClick&&(i=this.searchResultsConfig.hooks.afterLinkClick(i)),i&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&(q.trackClick({result:i,...this.dataLayer.parsedData.trackingData}),setTimeout(()=>{window.location.href=(i==null?void 0:i.url)??""},0)))}setPage(e){var t;(t=this.searchPaginationWidget)==null||t.goToPage(e)}setCookiesDisabled(e){this.dataLayer.setCookiesDisabled(e)}changeResultTemplate(e){var t,r,i;this.searchResultsConfig&&(this.searchResultsConfig.templates=(t=this.searchResultsConfig)!=null&&t.templates?{...(r=this.searchResultsConfig)==null?void 0:r.templates,...e}:e,(i=this.searchResultsWidget)==null||i.changeTemplate())}}const m=s.reactive({searchstax:new Ne("vue")}),qe=s.defineComponent({name:"SearchstaxWrapper",props:{language:{type:String,required:!1,default:"en"},searchURL:{type:String,required:!0},suggesterURL:{type:String,required:!0},trackApiKey:{type:String,required:!0},searchAuth:{type:String,required:!0},authType:{type:String,required:!1,default:"basic"},autoCorrect:{type:Boolean,required:!1,default:!0},router:{type:Object,required:!1},beforeSearch:{type:Function,required:!1},afterSearch:{type:Function,required:!1}},mounted(){const a={};this.beforeSearch&&(a.beforeSearch=this.beforeSearch),this.afterSearch&&(a.afterSearch=this.afterSearch),m.searchstax.initialize({language:this.language,searchURL:this.searchURL,suggesterURL:this.suggesterURL,trackApiKey:this.trackApiKey,searchAuth:this.searchAuth,authType:this.authType,autoCorrect:this.autoCorrect,router:this.router,hooks:a}),this.$emit("initialized",m.searchstax)}}),M=(a,e)=>{const t=a.__vccOpts||a;for(const[r,i]of e)t[r]=i;return t};function je(a,e,t,r,i,n){return s.renderSlot(a.$slots,"default")}const He=M(qe,[["render",je]]),_e=s.defineComponent({name:"SearchstaxInputWidget",props:{afterAutosuggest:{type:Function,required:!1},beforeAutosuggest:{type:Function,required:!1},searchInputId:{type:String,required:!1},suggestAfterMinChars:{type:Number,required:!1,default:3}},data(){return{suggestions:[]}},methods:{onMouseLeave(){m.searchstax.searchInputWidget.resetAutosuggestSelection(),m.searchstax.searchInputWidget.markActiveAutosuggestItem()},onMouseOver(a){m.searchstax.searchInputWidget.onSuggestionEnter(a)},onMouseClick(){m.searchstax.searchInputWidget.suggestionChosen()},attachObservables(){m.searchstax.dataLayer.$autosuggestResults.subscribe(a=>{this.suggestions=(a==null?void 0:a.suggestions)??[]})}},computed:{hasInputSlot(){return!!this.$slots.input}},mounted(){if(m.searchstax){this.attachObservables();const a={};this.afterAutosuggest&&(a.afterAutosuggest=this.afterAutosuggest),this.beforeAutosuggest&&(a.beforeAutosuggest=this.beforeAutosuggest),m.searchstax.addSearchInputWidget("searchstax-input-container",{suggestAfterMinChars:this.suggestAfterMinChars,hooks:a,templates:{mainTemplate:{template:"",searchInputId:this.searchInputId??"searchstax-search-input"}}})}else throw Error("Searchstax instance needs to be passed via props")}}),We={id:"searchstax-input-container"},Ue={class:"searchstax-search-input-container"},Qe={key:0,class:"searchstax-search-input-wrapper"},Ke=s.createElementVNode("input",{type:"text",id:"searchstax-search-input",class:"searchstax-search-input",placeholder:"SEARCH FOR..."},null,-1),ze=["innerHTML","onMouseover"],Je=s.createElementVNode("button",{class:"searchstax-spinner-icon",id:"searchstax-search-input-action-button"},null,-1);function Ge(a,e,t,r,i,n){return s.openBlock(),s.createElementBlock("div",We,[s.createElementVNode("div",Ue,[a.hasInputSlot?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",Qe,[Ke,s.createElementVNode("div",{class:s.normalizeClass(["searchstax-autosuggest-container",{hidden:a.suggestions.length===0}]),onMouseleave:e[1]||(e[1]=(...o)=>a.onMouseLeave&&a.onMouseLeave(...o))},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.suggestions,o=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-autosuggest-item",key:o.term},[s.createElementVNode("div",{class:"searchstax-autosuggest-item-term-container",innerHTML:o.term,onMouseover:c=>a.onMouseOver(o),onClick:e[0]||(e[0]=s.withModifiers(c=>a.onMouseClick(),["stop"]))},null,40,ze)]))),128))],34),Je])),s.renderSlot(a.$slots,"input",{suggestions:a.suggestions,onMouseClick:a.onMouseClick,onMouseOver:a.onMouseOver,onMouseLeave:a.onMouseLeave})])])}const Xe=M(_e,[["render",Ge]]),Ye=s.defineComponent({name:"SearchstaxResultsWidget",props:{afterLinkClick:{type:Function,required:!1},resultsPerPage:{type:Number,required:!1},renderMethod:{type:String,required:!1}},computed:{hasNoResultsSlot(){return!!this.$slots.noResult},hasResultSlot(){return!!this.$slots.results},hooks(){const a={};return this.afterLinkClick&&(a.afterLinkClick=this.afterLinkClick),a}},data(){return{searchResults:null,metadata:null,searchTerm:"",store:m}},methods:{resultClicked(a,e){e.preventDefault(),e.stopPropagation(),m.searchstax.executeLinkClick(a.uniqueId)},attachObservables(){m.searchstax.dataLayer.$searchResults.subscribe(a=>{var i;const e=this.searchResults??[];console.log("current",e);const t=a??[],r=this.renderMethod==="infiniteScroll"?[...e,...t]:a;((i=m.searchstax.dataLayer.$searchObject.value)==null?void 0:i.page)===1?this.searchResults=a:this.searchResults=r}),m.searchstax.dataLayer.$searchTermChange.subscribe(a=>{this.searchTerm=a}),m.searchstax.dataLayer.$searchResultsMetadata.subscribe(a=>{this.metadata=a})}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchResultsWidget("searchstax-results-container",{templates:{},resultsPerPage:this.resultsPerPage??10,renderMethod:this.renderMethod??"pagination",hooks:this.hooks});else throw Error("Searchstax instance needs to be passed via props")}}),Ze={id:"searchstax-results-container"},et={class:"searchstax-search-results-container"},tt={id:"searchstax-result-container"},at={key:0},st={class:"searchstax-no-results"},rt=s.createElementVNode("strong",null,"no results",-1),it=s.createElementVNode("br",null,null,-1),nt={key:0},ot={href:"#",class:"searchstax-suggestion-term"},ct=s.createElementVNode("div",null,[s.createElementVNode("p",null," Try searching for search related terms or topics. We offer a wide variety of content to help you get the information you need. "),s.createElementVNode("p",null,"Lost? Click on the ‘X” in the Search Box to reset your search.")],-1),lt={key:2,class:"searchstax-search-results"},ht={key:0,class:"searchstax-search-result-promoted"},dt=["href","data-searchstax-unique-result-id","onClick"],ut={key:2,class:"searchstax-search-result-ribbon"},gt=["src"],pt={class:"searchstax-search-result-title-container"},mt={class:"searchstax-search-result-title"},ft={key:4,class:"searchstax-search-result-common"},yt={key:5,class:"searchstax-search-result-description searchstax-search-result-common"},kt={key:0,class:"searchstax-search-result-image-container"},Ct=["src"],bt={key:1},St={class:"searchstax-search-result-common"},vt={key:3};function Lt(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",Ze,[s.createElementVNode("div",et,[s.createElementVNode("div",tt,[a.searchResults&&a.searchResults.length===0&&!a.hasNoResultsSlot&&a.searchTerm!==""&&a.searchTerm!=="*"?(s.openBlock(),s.createElementBlock("div",at,[s.createElementVNode("div",st,[s.createTextVNode(" Showing "),rt,s.createTextVNode(" for "),s.createElementVNode("strong",null,'"'+s.toDisplayString(a.searchTerm)+'"',1),it,(o=a.metadata)!=null&&o.spellingSuggestion?(s.openBlock(),s.createElementBlock("span",nt,[s.createTextVNode(" Did you mean "),s.createElementVNode("a",ot,s.toDisplayString((c=a.metadata)==null?void 0:c.spellingSuggestion),1),s.createTextVNode("?")])):s.createCommentVNode("",!0)]),ct])):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length===0&&a.hasNoResultsSlot&&a.searchTerm!==""&&a.searchTerm!=="*"?s.renderSlot(a.$slots,"noResult",{key:1}):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length&&!a.hasResultSlot?(s.openBlock(),s.createElementBlock("div",lt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.searchResults,h=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["searchstax-search-result",{"has-thumbnail":h.thumbnail}]),key:h.uniqueId},[h.promoted?(s.openBlock(),s.createElementBlock("div",ht)):s.createCommentVNode("",!0),h.url?(s.openBlock(),s.createElementBlock("a",{key:1,href:h.url,"data-searchstax-unique-result-id":h.uniqueId,onClick:d=>a.resultClicked(h,d),class:"searchstax-result-item-link"},null,8,dt)):s.createCommentVNode("",!0),h.ribbon?(s.openBlock(),s.createElementBlock("div",ut,s.toDisplayString(h.ribbon),1)):s.createCommentVNode("",!0),h.thumbnail?(s.openBlock(),s.createElementBlock("img",{key:3,src:h.thumbnail,class:"searchstax-thumbnail"},null,8,gt)):s.createCommentVNode("",!0),s.createElementVNode("div",pt,[s.createElementVNode("span",mt,s.toDisplayString(h.title),1)]),h.paths?(s.openBlock(),s.createElementBlock("p",ft,s.toDisplayString(h.paths),1)):s.createCommentVNode("",!0),h.description?(s.openBlock(),s.createElementBlock("p",yt,s.toDisplayString(h.description),1)):s.createCommentVNode("",!0),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(h.unmappedFields,d=>(s.openBlock(),s.createElementBlock("div",{key:d.key},[d.isImage&&typeof d.value=="string"?(s.openBlock(),s.createElementBlock("div",kt,[s.createElementVNode("img",{src:d.value,class:"searchstax-result-image"},null,8,Ct)])):(s.openBlock(),s.createElementBlock("div",bt,[s.createElementVNode("p",St,s.toDisplayString(d.value),1)]))]))),128))],2))),128))])):s.createCommentVNode("",!0),a.searchResults&&a.searchResults.length&&a.hasResultSlot?(s.openBlock(),s.createElementBlock("div",vt,[s.renderSlot(a.$slots,"results",{searchResults:a.searchResults,resultClicked:a.resultClicked})])):s.createCommentVNode("",!0)])])])}const xt=M(Ye,[["render",Lt]]),Tt=s.defineComponent({name:"SearchstaxFacetsWidget",props:{facetingType:{type:String,required:!0},itemsPerPageDesktop:{type:Number,required:!0},itemsPerPageMobile:{type:Number,required:!0},specificFacets:{type:Array,required:!1}},data(){return{facetsTemplateDataDesktop:null,facetsTemplateDataMobile:null,store:m,facetContainers:s.ref([]),mainFacetContainers:s.ref([]),selectedFacetsCheckboxes:[],selectedFacetsRange:[],rand:Math.random()}},computed:{hasDesktopFacetsSlot(){return!!this.$slots.desktopFacets},hasMobileFacetsSlot(){return!!this.$slots.mobileFacets}},methods:{attachObservables(){m.searchstax.dataLayer.$facetsTemplateData.subscribe(a=>{a!=null&&a.isMobile?this.facetsTemplateDataMobile=a:this.facetsTemplateDataDesktop=a}),m.searchstax.dataLayer.$selectedFacetsTemplateData.subscribe(a=>{const e=a??[];this.selectedFacetsCheckboxes=e.filter(t=>t.type==="checkbox")})},unselectFacet(a){m.searchstax.searchFacetsWidget.unselectFacet(a)},unselectAll(){m.searchstax.searchFacetsWidget.removeSelectedFacets()},isNotDeactivated(a){return!m.searchstax.searchFacetsWidget.deactivatedFacets[a]},toggleFacetGroup(a){this.isNotDeactivated(a)?m.searchstax.searchFacetsWidget.deactivatedFacets[a]=!0:m.searchstax.searchFacetsWidget.deactivatedFacets[a]=!1},isChecked(a){return m.searchstax.searchFacetsWidget.isChecked(a)},selectFacet(a,e,t,r){const i=document.createElement("div");i.innerHTML=this.facetContainers[a].outerHTML,m.searchstax.searchFacetsWidget.onFacetSelect(e,t,this.facetContainers[a],r)},showMoreLessDesktop(a,e){m.searchstax.searchFacetsWidget.onShowMoreLessClick(a,e,!1)},showMoreLessMobile(a,e){m.searchstax.searchFacetsWidget.onShowMoreLessClick(a,e,!0)},openOverlay(){m.searchstax.searchFacetsWidget.openOverlay()},closeOverlay(){m.searchstax.searchFacetsWidget.closeOverlay()}},mounted(){m.searchstax.addFacetsWidget("searchstax-facets-container"+this.rand,{facetingType:this.facetingType,specificFacets:this.specificFacets,itemsPerPageDesktop:this.itemsPerPageDesktop,itemsPerPageMobile:this.itemsPerPageMobile}),this.attachObservables()}}),Et=["id"],Rt={key:0,class:"searchstax-facets-container-desktop"},It=["onClick"],Ft={class:"searchstax-facet-title"},Pt=s.createElementVNode("div",{class:"searchstax-facet-title-arrow active"},null,-1),Dt={class:"searchstax-facet-values-container"},$t={class:"searchstax-facet-input"},wt=["checked","disabled","onClick"],Mt=["onClick"],Bt=["onClick"],Ot={key:0,class:"searchstax-facet-show-more-container"},Vt=["onClick"],At={key:0,class:"searchstax-facet-show-less-button searchstax-facet-show-button"},Nt={key:1,class:"searchstax-facet-show-more-button searchstax-facet-show-button"},qt={key:1},jt={key:2,class:"searchstax-facets-container-mobile"},Ht={class:"searchstax-facets-pills-container"},_t=[s.createElementVNode("div",{class:"searchstax-facets-pill-label"},"Filter By",-1)],Wt={class:"searchstax-facets-pills-selected"},Ut=["onClick"],Qt={class:"searchstax-facets-pill-label"},Kt=s.createElementVNode("div",{class:"searchstax-facets-pill-icon-close"},null,-1),zt=[s.createElementVNode("div",{class:"searchstax-facets-pill-label"},"Clear Filters",-1)],Jt={class:"searchstax-facets-mobile-overlay-header"},Gt=s.createElementVNode("div",{class:"searchstax-facets-mobile-overlay-header-title"},"Filter By",-1),Xt={class:"searchstax-facets-container-mobile"},Yt=["onClick"],Zt={class:"searchstax-facet-title"},ea=s.createElementVNode("div",{class:"searchstax-facet-title-arrow active"},null,-1),ta={class:"searchstax-facet-values-container"},aa={class:"searchstax-facet-input"},sa=["checked","disabled","onClick"],ra=["onClick"],ia=["onClick"],na={key:0,class:"searchstax-facet-show-more-container"},oa=["onClick"],ca={key:0,class:"searchstax-facet-show-less-button searchstax-facet-show-button"},la={key:1,class:"searchstax-facet-show-more-button searchstax-facet-show-button"},ha={key:3};function da(a,e,t,r,i,n){var o,c,h,d;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-facets-container"+a.rand},[(o=a.facetsTemplateDataDesktop)!=null&&o.hasResultsOrExternalPromotions&&!a.hasDesktopFacetsSlot?(s.openBlock(),s.createElementBlock("div",Rt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.facetsTemplateDataDesktop.facets,u=>(s.openBlock(),s.createElementBlock("div",{key:u.name+"desktop",class:s.normalizeClass(["searchstax-facet-container",{active:a.isNotDeactivated(u.name)}])},[s.createElementVNode("div",null,[s.createElementVNode("div",{class:"searchstax-facet-title-container",onClick:g=>a.toggleFacetGroup(u.name)},[s.createElementVNode("div",Ft,s.toDisplayString(u.label),1),Pt],8,It),s.createElementVNode("div",Dt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(u.values,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:g.value+g.parentName,class:s.normalizeClass(["searchstax-facet-value-container",{"searchstax-facet-value-disabled":g.disabled}]),ref_for:!0,ref:y=>{a.facetContainers[p+u.name]=y}},[s.createElementVNode("div",$t,[s.createElementVNode("input",{type:"checkbox",class:"searchstax-facet-input-checkbox",checked:a.isChecked(g),disabled:g.disabled,onClick:y=>a.selectFacet(p+u.name,y,g,!0)},null,8,wt)]),s.createElementVNode("div",{class:"searchstax-facet-value-label",onClick:y=>a.selectFacet(p+u.name,y,g,!1)},s.toDisplayString(g.value),9,Mt),s.createElementVNode("div",{class:"searchstax-facet-value-count",onClick:y=>a.selectFacet(p+u.name,y,g,!1)},"("+s.toDisplayString(g.count)+")",9,Bt)],2))),128)),u.hasMoreFacets?(s.openBlock(),s.createElementBlock("div",Ot,[s.createElementVNode("div",{class:"searchstax-facet-show-more-container",onClick:g=>a.showMoreLessDesktop(g,u)},[u.showingAllFacets?(s.openBlock(),s.createElementBlock("div",At,"less")):(s.openBlock(),s.createElementBlock("div",Nt,"more"))],8,Vt)])):s.createCommentVNode("",!0)])])],2))),128))])):s.createCommentVNode("",!0),a.hasDesktopFacetsSlot?(s.openBlock(),s.createElementBlock("div",qt,[s.renderSlot(a.$slots,"desktopFacets",{facetsTemplateDataDesktop:a.facetsTemplateDataDesktop,isNotDeactivated:a.isNotDeactivated,toggleFacetGroup:a.toggleFacetGroup,isChecked:a.isChecked,selectFacet:a.selectFacet,showMoreLessDesktop:a.showMoreLessDesktop,facetContainers:a.facetContainers})])):s.createCommentVNode("",!0),(c=a.facetsTemplateDataMobile)!=null&&c.hasResultsOrExternalPromotions&&!a.hasMobileFacetsSlot?(s.openBlock(),s.createElementBlock("div",jt,[s.createElementVNode("div",Ht,[s.createElementVNode("div",{class:"searchstax-facets-pill searchstax-facets-pill-filter-by",onClick:e[0]||(e[0]=(...u)=>a.openOverlay&&a.openOverlay(...u))},_t),s.createElementVNode("div",Wt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.selectedFacetsCheckboxes,u=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-facets-pill searchstax-facets-pill-facets",key:u.value,onClick:g=>a.unselectFacet(u)},[s.createElementVNode("div",Qt,s.toDisplayString(u.value)+" ("+s.toDisplayString(u.count)+")",1),Kt],8,Ut))),128))]),a.selectedFacetsCheckboxes.length?(s.openBlock(),s.createElementBlock("div",{key:0,class:"searchstax-facets-pill searchstax-clear-filters searchstax-facets-pill-clear-all",onClick:e[1]||(e[1]=(...u)=>a.unselectAll&&a.unselectAll(...u))},zt)):s.createCommentVNode("",!0)]),s.createElementVNode("div",{class:s.normalizeClass(["searchstax-facets-mobile-overlay",{"searchstax-show":(h=a.facetsTemplateDataMobile)==null?void 0:h.overlayOpened}])},[s.createElementVNode("div",Jt,[Gt,s.createElementVNode("div",{class:"searchstax-search-close",onClick:e[2]||(e[2]=(...u)=>a.closeOverlay&&a.closeOverlay(...u))})]),s.createElementVNode("div",Xt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList((d=a.facetsTemplateDataMobile)==null?void 0:d.facets,u=>(s.openBlock(),s.createElementBlock("div",{key:u.name+"mobile",class:s.normalizeClass(["searchstax-facet-container",{active:a.isNotDeactivated(u.name)}])},[s.createElementVNode("div",null,[s.createElementVNode("div",{class:"searchstax-facet-title-container",onClick:g=>a.toggleFacetGroup(u.name)},[s.createElementVNode("div",Zt,s.toDisplayString(u.label),1),ea],8,Yt),s.createElementVNode("div",ta,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(u.values,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:g.value+g.parentName,class:s.normalizeClass(["searchstax-facet-value-container",{"searchstax-facet-value-disabled":g.disabled}]),ref_for:!0,ref:y=>{a.facetContainers[p+u.name]=y}},[s.createElementVNode("div",aa,[s.createElementVNode("input",{type:"checkbox",class:"searchstax-facet-input-checkbox",checked:a.isChecked(g),disabled:g.disabled,onClick:y=>a.selectFacet(p+u.name,y,g,!0)},null,8,sa)]),s.createElementVNode("div",{class:"searchstax-facet-value-label",onClick:y=>a.selectFacet(p+u.name,y,g,!1)},s.toDisplayString(g.value),9,ra),s.createElementVNode("div",{class:"searchstax-facet-value-count",onClick:y=>a.selectFacet(p+u.name,y,g,!1)},"("+s.toDisplayString(g.count)+")",9,ia)],2))),128)),u.hasMoreFacets?(s.openBlock(),s.createElementBlock("div",na,[s.createElementVNode("div",{class:"searchstax-facet-show-more-container",onClick:g=>a.showMoreLessMobile(g,u)},[u.showingAllFacets?(s.openBlock(),s.createElementBlock("div",ca,"less")):(s.openBlock(),s.createElementBlock("div",la,"more"))],8,oa)])):s.createCommentVNode("",!0)])])],2))),128))]),s.createElementVNode("button",{class:"searchstax-facets-mobile-overlay-done",onClick:e[3]||(e[3]=(...u)=>a.closeOverlay&&a.closeOverlay(...u))},"Done")],2)])):s.createCommentVNode("",!0),a.hasMobileFacetsSlot?(s.openBlock(),s.createElementBlock("div",ha,[s.renderSlot(a.$slots,"mobileFacets",{facetsTemplateDataMobile:a.facetsTemplateDataMobile,selectedFacetsCheckboxes:a.selectedFacetsCheckboxes,isNotDeactivated:a.isNotDeactivated,toggleFacetGroup:a.toggleFacetGroup,isChecked:a.isChecked,selectFacet:a.selectFacet,showMoreLessDesktop:a.showMoreLessDesktop,facetContainers:a.facetContainers,openOverlay:a.openOverlay,unselectFacet:a.unselectFacet,unselectAll:a.unselectAll,closeOverlay:a.closeOverlay})])):s.createCommentVNode("",!0)],8,Et)}const ua=M(Tt,[["render",da]]),ga=s.defineComponent({name:"SearchstaxPaginationWidget",data(){return{paginationData:null,rand:Math.random(),paginationAdded:!1}},methods:{nextPage(a){m.searchstax.searchPaginationWidget.nextPage(a)},previousPage(a){m.searchstax.searchPaginationWidget.previousPage(a)},attachObservables(){m.searchstax.dataLayer.$searchObject.subscribe(a=>{this.addWidget()}),m.searchstax.dataLayer.$paginationData.subscribe(a=>{this.paginationData=a})},addWidget(){console.log("store.searchstax.routerHelper",m.searchstax.routerHelper),!this.paginationAdded&&m.searchstax.routerHelper&&(this.paginationAdded=!0,m.searchstax.addPaginationWidget("searchstax-pagination-container"+this.rand,{}))}},computed:{hasPaginationSlot(){return!!this.$slots.pagination},hasInfiniteScrollSlot(){return!!this.$slots.infiniteScroll}},mounted(){if(m.searchstax)this.attachObservables(),this.addWidget();else throw Error("Searchstax instance needs to be passed via props")}}),pa=["id"],ma={key:0,class:"searchstax-pagination-container"},fa={class:"searchstax-pagination-content"},ya=["disabled"],ka={class:"searchstax-pagination-details"},Ca=["disabled"],ba={key:1},Sa={key:2,className:"searchstax-pagination-container"},va={key:3};function La(a,e,t,r,i,n){var o,c,h,d,u,g,p,y,L,C,k,S,x;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-pagination-container"+a.rand},[a.paginationData&&!((o=a.paginationData)!=null&&o.isInfiniteScroll)&&!a.hasPaginationSlot?(s.openBlock(),s.createElementBlock("div",ma,[s.createElementVNode("div",fa,[s.createElementVNode("a",{class:"searchstax-pagination-previous",disabled:(c=a.paginationData)==null?void 0:c.isFirstPage,onClick:e[0]||(e[0]=(...T)=>a.previousPage&&a.previousPage(...T)),id:"searchstax-pagination-previous"}," < Previous ",8,ya),s.createElementVNode("div",ka,s.toDisplayString((h=a.paginationData)==null?void 0:h.startResultIndex)+" - "+s.toDisplayString((d=a.paginationData)==null?void 0:d.endResultIndex)+" of "+s.toDisplayString((u=a.paginationData)==null?void 0:u.totalResults),1),s.createElementVNode("a",{class:"searchstax-pagination-next",disabled:(g=a.paginationData)==null?void 0:g.isLastPage,onClick:e[1]||(e[1]=(...T)=>a.nextPage&&a.nextPage(...T)),id:"searchstax-pagination-next"},"Next >",8,Ca)])])):s.createCommentVNode("",!0),a.hasPaginationSlot&&!((p=a.paginationData)!=null&&p.isInfiniteScroll)?(s.openBlock(),s.createElementBlock("div",ba,[s.renderSlot(a.$slots,"pagination",{paginationData:a.paginationData,nextPage:a.nextPage,previousPage:a.previousPage})])):s.createCommentVNode("",!0),a.paginationData&&((y=a.paginationData)!=null&&y.isInfiniteScroll)&&!((L=a.paginationData)!=null&&L.isLastPage)&&((C=a.paginationData)!=null&&C.hasResults)&&!a.hasInfiniteScrollSlot?(s.openBlock(),s.createElementBlock("div",Sa,[s.createElementVNode("a",{class:"searchstax-pagination-load-more",onClick:e[2]||(e[2]=(...T)=>a.nextPage&&a.nextPage(...T))},"Load More")])):s.createCommentVNode("",!0),a.hasInfiniteScrollSlot&&!((k=a.paginationData)!=null&&k.isLastPage)&&((S=a.paginationData)!=null&&S.hasResults)&&((x=a.paginationData)!=null&&x.isInfiniteScroll)?(s.openBlock(),s.createElementBlock("div",va,[s.renderSlot(a.$slots,"infiniteScroll",{paginationData:a.paginationData,nextPage:a.nextPage})])):s.createCommentVNode("",!0)],8,pa)}const xa=M(ga,[["render",La]]),Ta=s.defineComponent({name:"SearchstaxSearchFeedbackWidget",data(){return{searchFeedbackData:null,rand:Math.random()}},methods:{onOriginalQueryClick(a){m.searchstax.searchFeedbackWidget.onOriginalQueryClick(a)},attachObservables(){m.searchstax.dataLayer.$searchFeedbackData.subscribe(a=>{this.searchFeedbackData=a})}},computed:{hasFeedbackSlot(){return!!this.$slots.searchFeedback}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchFeedbackWidget("search-feedback-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ea=["id"],Ra={key:0,class:"searchstax-feedback-container"},Ia={key:0},Fa={class:"searchstax-feedback-container-suggested"},Pa={key:0};function Da(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{class:"search-feedback-container",id:"search-feedback-container"+a.rand},[a.searchFeedbackData&&((o=a.searchFeedbackData)!=null&&o.searchExecuted)&&!a.hasFeedbackSlot&&((c=a.searchFeedbackData)!=null&&c.totalResults)?(s.openBlock(),s.createElementBlock("div",Ra,[s.createTextVNode(" Showing "),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.startResultIndex)+" - "+s.toDisplayString(a.searchFeedbackData.endResultIndex),1),s.createTextVNode(" of "),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.totalResults),1),s.createTextVNode(" results "),a.searchFeedbackData.searchTerm?(s.openBlock(),s.createElementBlock("span",Ia,[s.createTextVNode('for "'),s.createElementVNode("b",null,s.toDisplayString(a.searchFeedbackData.searchTerm),1),s.createTextVNode('" ')])):s.createCommentVNode("",!0),s.createElementVNode("div",Fa,[a.searchFeedbackData.autoCorrectedQuery?(s.openBlock(),s.createElementBlock("div",Pa,[s.createTextVNode(" Search instead for "),s.createElementVNode("a",{href:"#",onClick:e[0]||(e[0]=s.withModifiers(h=>a.onOriginalQueryClick(h),["prevent"])),class:"searchstax-feedback-original-query"},s.toDisplayString(a.searchFeedbackData.originalQuery),1)])):s.createCommentVNode("",!0)])])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"searchFeedback",{searchFeedbackData:a.searchFeedbackData,onOriginalQueryClick:a.onOriginalQueryClick})],8,Ea)}const $a=M(Ta,[["render",Da]]),wa=s.defineComponent({name:"SearchstaxSortingWidget",data(){return{sortingData:null,selectedSorting:"",rand:Math.random()}},methods:{orderChange(a){m.searchstax.searchSortingWidget.setOrderQuery(a.target.value)},attachObservables(){m.searchstax.dataLayer.$searchSortingData.subscribe(a=>{this.sortingData=a}),m.searchstax.dataLayer.$searchObject.subscribe(a=>{this.selectedSorting=decodeURIComponent(a.order)})}},computed:{hasSortingSlot(){return!!this.$slots.sorting}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addSearchSortingWidget("search-sorting-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ma=["id"],Ba={key:0,class:"searchstax-sorting-container"},Oa=s.createElementVNode("label",{class:"searchstax-sorting-label",for:"sort-by"},"Sort By",-1),Va=["value"],Aa=[s.createElementVNode("option",{value:""}," Relevance ",-1),s.createElementVNode("option",{value:"date desc"}," Newest Content ",-1),s.createElementVNode("option",{value:"date asc"}," Oldest Content ",-1)];function Na(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{id:"search-sorting-container"+a.rand},[a.sortingData&&((o=a.sortingData)!=null&&o.searchExecuted)&&((c=a.sortingData)!=null&&c.hasResultsOrExternalPromotions)&&!a.hasSortingSlot?(s.openBlock(),s.createElementBlock("div",Ba,[Oa,s.createElementVNode("select",{id:"searchstax-search-order-select",class:"searchstax-search-order-select",value:a.selectedSorting,onChange:e[0]||(e[0]=h=>a.orderChange(h))},Aa,40,Va)])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"sorting",{sortingData:a.sortingData,orderChange:a.orderChange,selectedSorting:a.selectedSorting})],8,Ma)}const qa=M(wa,[["render",Na]]),ja=s.defineComponent({name:"SearchstaxExternalPromotionsWidget",data(){return{externalPromotionsData:null,rand:Math.random()}},methods:{attachObservables(){m.searchstax.dataLayer.$searchExternalPromotionsData.subscribe(a=>{this.externalPromotionsData=a})},trackClick(a,e){m.searchstax.externalPromotionsWidget.trackClick(a,e)}},computed:{hasExternalPromotionsSlot(){return!!this.$slots.externalPromotions}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addExternalPromotionsWidget("searchstax-external-promotions-layout-container"+this.rand,{});else throw Error("Searchstax instance needs to be passed via props")}}),Ha=["id"],_a={key:0,class:"searchstax-external-promotions-container",id:"searchstax-external-promotions-container"},Wa=s.createElementVNode("div",{class:"icon-elevated"},null,-1),Ua=["onClick"],Qa={class:"searchstax-search-result-title-container"},Ka={class:"searchstax-search-result-title"},za={key:1,class:"searchstax-search-result-description searchstax-search-result-common"},Ja={key:2,class:"searchstax-search-result-description searchstax-search-result-common"};function Ga(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock("div",{id:"searchstax-external-promotions-layout-container"+a.rand},[a.externalPromotionsData&&((o=a.externalPromotionsData)!=null&&o.searchExecuted)&&((c=a.externalPromotionsData)!=null&&c.hasExternalPromotions)&&!a.hasExternalPromotionsSlot?(s.openBlock(),s.createElementBlock("div",_a,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.externalPromotionsData.externalPromotions,h=>(s.openBlock(),s.createElementBlock("div",{class:"searchstax-external-promotion searchstax-search-result",key:h.id},[Wa,h.url?(s.openBlock(),s.createElementBlock("a",{key:0,href:"{{externalPromotion.url}}",onClick:d=>a.trackClick(h,d),class:"searchstax-result-item-link"},null,8,Ua)):s.createCommentVNode("",!0),s.createElementVNode("div",Qa,[s.createElementVNode("span",Ka,s.toDisplayString(h.name),1)]),h.description?(s.openBlock(),s.createElementBlock("p",za,s.toDisplayString(h.description),1)):s.createCommentVNode("",!0),h.url?(s.openBlock(),s.createElementBlock("p",Ja,s.toDisplayString(h.url),1)):s.createCommentVNode("",!0)]))),128))])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"externalPromotions",{externalPromotionsData:a.externalPromotionsData,trackClick:a.trackClick})],8,Ha)}const Xa=M(ja,[["render",Ga]]),Ya=s.defineComponent({name:"SearchstaxRelatedSearchesWidget",data(){return{relatedData:null,rand:Math.random()}},props:{relatedSearchesURL:{type:String,required:!0},relatedSearchesAPIKey:{type:String,required:!0}},methods:{executeSearch(a){m.searchstax.relatedSearchesWidget.executeSearch(a)},attachObservables(){m.searchstax.dataLayer.$searchRelatedSearchesData.subscribe(a=>{this.relatedData=a})}},computed:{hasRelatedSlot(){return!!this.$slots.related}},mounted(){if(m.searchstax)this.attachObservables(),m.searchstax.addRelatedSearchesWidget("searchstax-related-searches-container"+this.rand,{relatedSearchesURL:this.relatedSearchesURL,relatedSearchesAPIKey:this.relatedSearchesAPIKey});else throw Error("Searchstax instance needs to be passed via props")}}),Za={key:0,class:"searchstax-related-searches-container",id:"searchstax-related-searches-container"},es=s.createElementVNode("span",{id:"searchstax-related-searches"},null,-1),ts={key:0,class:"searchstax-related-search"},as=["onClick"],ss={key:0};function rs(a,e,t,r,i,n){var o,c;return s.openBlock(),s.createElementBlock(s.Fragment,null,[a.relatedData&&((o=a.relatedData)!=null&&o.searchExecuted)&&((c=a.relatedData)!=null&&c.hasRelatedSearches)&&!a.hasRelatedSlot?(s.openBlock(),s.createElementBlock("div",Za,[s.createTextVNode(" Related searches: "),es,a.relatedData.relatedSearches?(s.openBlock(),s.createElementBlock("span",ts,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(a.relatedData.relatedSearches,h=>(s.openBlock(),s.createElementBlock("span",{key:h.related_search,onClick:d=>a.executeSearch(h),class:"searchstax-related-search searchstax-related-search-item"},[s.createTextVNode(s.toDisplayString(h.related_search),1),h.last?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("span",ss,","))],8,as))),128))])):s.createCommentVNode("",!0)])):s.createCommentVNode("",!0),s.renderSlot(a.$slots,"related",{relatedData:a.relatedData,executeSearch:a.executeSearch})],64)}const is=M(Ya,[["render",rs]]);$.SearchstaxExternalPromotionsWidget=Xa,$.SearchstaxFacetsWidget=ua,$.SearchstaxInputWidget=Xe,$.SearchstaxPaginationWidget=xa,$.SearchstaxRelatedSearchesWidget=is,$.SearchstaxResultWidget=xt,$.SearchstaxSearchFeedbackWidget=$a,$.SearchstaxSortingWidget=qa,$.SearchstaxWrapper=He,Object.defineProperty($,Symbol.toStringTag,{value:"Module"})})(this["@searchstaxInc/searchstudioUxVue"]=this["@searchstaxInc/searchstudioUxVue"]||{},vue);
@@ -2737,7 +2737,7 @@ function Mt(a, e, t, s, r, i) {
2737
2737
  return p(), m("div", lt, [
2738
2738
  g("div", ht, [
2739
2739
  g("div", dt, [
2740
- a.searchResults && a.searchResults.length === 0 && !a.hasNoResultsSlot && a.searchTerm !== "" ? (p(), m("div", ut, [
2740
+ a.searchResults && a.searchResults.length === 0 && !a.hasNoResultsSlot && a.searchTerm !== "" && a.searchTerm !== "*" ? (p(), m("div", ut, [
2741
2741
  g("div", gt, [
2742
2742
  O(" Showing "),
2743
2743
  pt,
@@ -2752,7 +2752,7 @@ function Mt(a, e, t, s, r, i) {
2752
2752
  ]),
2753
2753
  yt
2754
2754
  ])) : k("", !0),
2755
- a.searchResults && a.searchResults.length === 0 && a.hasNoResultsSlot && a.searchTerm !== "" ? A(a.$slots, "noResult", { key: 1 }) : k("", !0),
2755
+ a.searchResults && a.searchResults.length === 0 && a.hasNoResultsSlot && a.searchTerm !== "" && a.searchTerm !== "*" ? A(a.$slots, "noResult", { key: 1 }) : k("", !0),
2756
2756
  a.searchResults && a.searchResults.length && !a.hasResultSlot ? (p(), m("div", bt, [
2757
2757
  (p(!0), m(j, null, H(a.searchResults, (l) => (p(), m("div", {
2758
2758
  class: N(["searchstax-search-result", { "has-thumbnail": l.thumbnail }]),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@searchstax-inc/searchstudio-ux-vue",
3
- "version": "0.2.6",
3
+ "version": "0.2.7",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"