@searchstax-inc/searchstudio-ux-react 0.2.13 → 0.2.14
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.
|
@@ -14,23 +14,23 @@
|
|
|
14
14
|
*
|
|
15
15
|
* This source code is licensed under the MIT license found in the
|
|
16
16
|
* LICENSE file in the root directory of this source tree.
|
|
17
|
-
*/var Oe;function nt(){return Oe||(Oe=1,process.env.NODE_ENV!=="production"&&function(){var i=w,e=Symbol.for("react.element"),t=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),g=Symbol.for("react.suspense_list"),m=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),k=Symbol.for("react.offscreen"),
|
|
18
|
-
`+ke+n}}var Re=!1,fe;{var ia=typeof WeakMap=="function"?WeakMap:Map;fe=new ia}function Ue(n,p){if(!n||Re)return"";{var v=fe.get(n);if(v!==void 0)return v}var
|
|
19
|
-
`),U=
|
|
17
|
+
*/var Oe;function nt(){return Oe||(Oe=1,process.env.NODE_ENV!=="production"&&function(){var i=w,e=Symbol.for("react.element"),t=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),g=Symbol.for("react.suspense_list"),m=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),k=Symbol.for("react.offscreen"),M=Symbol.iterator,R="@@iterator";function T(n){if(n===null||typeof n!="object")return null;var p=M&&n[M]||n[R];return typeof p=="function"?p:null}var P=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function L(n){{for(var p=arguments.length,v=new Array(p>1?p-1:0),C=1;C<p;C++)v[C-1]=arguments[C];_("error",n,v)}}function _(n,p,v){{var C=P.ReactDebugCurrentFrame,F=C.getStackAddendum();F!==""&&(p+="%s",v=v.concat([F]));var A=v.map(function(I){return String(I)});A.unshift("Warning: "+p),Function.prototype.apply.call(console[n],console,A)}}var V=!1,D=!1,Q=!1,f=!1,b=!1,O;O=Symbol.for("react.module.reference");function H(n){return!!(typeof n=="string"||typeof n=="function"||n===s||n===r||b||n===a||n===d||n===g||f||n===k||V||D||Q||typeof n=="object"&&n!==null&&(n.$$typeof===y||n.$$typeof===m||n.$$typeof===c||n.$$typeof===l||n.$$typeof===u||n.$$typeof===O||n.getModuleId!==void 0))}function Z(n,p,v){var C=n.displayName;if(C)return C;var F=p.displayName||p.name||"";return F!==""?v+"("+F+")":v}function pe(n){return n.displayName||"Context"}function K(n){if(n==null)return null;if(typeof n.tag=="number"&&L("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n;switch(n){case s:return"Fragment";case t:return"Portal";case r:return"Profiler";case a:return"StrictMode";case d:return"Suspense";case g:return"SuspenseList"}if(typeof n=="object")switch(n.$$typeof){case l:var p=n;return pe(p)+".Consumer";case c:var v=n;return pe(v._context)+".Provider";case u:return Z(n,n.render,"ForwardRef");case m:var C=n.displayName||null;return C!==null?C:K(n.type)||"Memo";case y:{var F=n,A=F._payload,I=F._init;try{return K(I(A))}catch{return null}}}return null}var G=Object.assign,de=0,Ne,_e,He,We,qe,Be,Ve;function $e(){}$e.__reactDisabledLog=!0;function sa(){{if(de===0){Ne=console.log,_e=console.info,He=console.warn,We=console.error,qe=console.group,Be=console.groupCollapsed,Ve=console.groupEnd;var n={configurable:!0,enumerable:!0,value:$e,writable:!0};Object.defineProperties(console,{info:n,log:n,warn:n,error:n,group:n,groupCollapsed:n,groupEnd:n})}de++}}function ra(){{if(de--,de===0){var n={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:G({},n,{value:Ne}),info:G({},n,{value:_e}),warn:G({},n,{value:He}),error:G({},n,{value:We}),group:G({},n,{value:qe}),groupCollapsed:G({},n,{value:Be}),groupEnd:G({},n,{value:Ve})})}de<0&&L("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var Te=P.ReactCurrentDispatcher,ke;function me(n,p,v){{if(ke===void 0)try{throw Error()}catch(F){var C=F.stack.trim().match(/\n( *(at )?)/);ke=C&&C[1]||""}return`
|
|
18
|
+
`+ke+n}}var Re=!1,fe;{var ia=typeof WeakMap=="function"?WeakMap:Map;fe=new ia}function Ue(n,p){if(!n||Re)return"";{var v=fe.get(n);if(v!==void 0)return v}var C;Re=!0;var F=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var A;A=Te.current,Te.current=null,sa();try{if(p){var I=function(){throw Error()};if(Object.defineProperty(I.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(I,[])}catch(ee){C=ee}Reflect.construct(n,[],I)}else{try{I.call()}catch(ee){C=ee}n.call(I.prototype)}}else{try{throw Error()}catch(ee){C=ee}n()}}catch(ee){if(ee&&C&&typeof ee.stack=="string"){for(var E=ee.stack.split(`
|
|
19
|
+
`),U=C.stack.split(`
|
|
20
20
|
`),W=E.length-1,q=U.length-1;W>=1&&q>=0&&E[W]!==U[q];)q--;for(;W>=1&&q>=0;W--,q--)if(E[W]!==U[q]){if(W!==1||q!==1)do if(W--,q--,q<0||E[W]!==U[q]){var z=`
|
|
21
|
-
`+E[W].replace(" at new "," at ");return n.displayName&&z.includes("<anonymous>")&&(z=z.replace("<anonymous>",n.displayName)),typeof n=="function"&&fe.set(n,z),z}while(W>=1&&q>=0);break}}}finally{Re=!1,Te.current=A,ra(),Error.prepareStackTrace=F}var ie=n?n.displayName||n.name:"",rt=ie?me(ie):"";return typeof n=="function"&&fe.set(n,rt),rt}function na(n,p,v){return Ue(n,!1)}function ca(n){var p=n.prototype;return!!(p&&p.isReactComponent)}function ve(n,p,v){if(n==null)return"";if(typeof n=="function")return Ue(n,ca(n));if(typeof n=="string")return me(n);switch(n){case d:return me("Suspense");case g:return me("SuspenseList")}if(typeof n=="object")switch(n.$$typeof){case u:return na(n.render);case m:return ve(n.type,p,v);case y:{var
|
|
21
|
+
`+E[W].replace(" at new "," at ");return n.displayName&&z.includes("<anonymous>")&&(z=z.replace("<anonymous>",n.displayName)),typeof n=="function"&&fe.set(n,z),z}while(W>=1&&q>=0);break}}}finally{Re=!1,Te.current=A,ra(),Error.prepareStackTrace=F}var ie=n?n.displayName||n.name:"",rt=ie?me(ie):"";return typeof n=="function"&&fe.set(n,rt),rt}function na(n,p,v){return Ue(n,!1)}function ca(n){var p=n.prototype;return!!(p&&p.isReactComponent)}function ve(n,p,v){if(n==null)return"";if(typeof n=="function")return Ue(n,ca(n));if(typeof n=="string")return me(n);switch(n){case d:return me("Suspense");case g:return me("SuspenseList")}if(typeof n=="object")switch(n.$$typeof){case u:return na(n.render);case m:return ve(n.type,p,v);case y:{var C=n,F=C._payload,A=C._init;try{return ve(A(F),p,v)}catch{}}}return""}var ye=Object.prototype.hasOwnProperty,Qe={},Ke=P.ReactDebugCurrentFrame;function xe(n){if(n){var p=n._owner,v=ve(n.type,n._source,p?p.type:null);Ke.setExtraStackFrame(v)}else Ke.setExtraStackFrame(null)}function la(n,p,v,C,F){{var A=Function.call.bind(ye);for(var I in n)if(A(n,I)){var E=void 0;try{if(typeof n[I]!="function"){var U=Error((C||"React class")+": "+v+" type `"+I+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof n[I]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw U.name="Invariant Violation",U}E=n[I](p,I,C,v,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(W){E=W}E&&!(E instanceof Error)&&(xe(F),L("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",C||"React class",v,I,typeof E),xe(null)),E instanceof Error&&!(E.message in Qe)&&(Qe[E.message]=!0,xe(F),L("Failed %s type: %s",v,E.message),xe(null))}}}var oa=Array.isArray;function Ee(n){return oa(n)}function ha(n){{var p=typeof Symbol=="function"&&Symbol.toStringTag,v=p&&n[Symbol.toStringTag]||n.constructor.name||"Object";return v}}function ua(n){try{return ze(n),!1}catch{return!0}}function ze(n){return""+n}function Je(n){if(ua(n))return L("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",ha(n)),ze(n)}var ge=P.ReactCurrentOwner,da={key:!0,ref:!0,__self:!0,__source:!0},Ye,Ge,we;we={};function ga(n){if(ye.call(n,"ref")){var p=Object.getOwnPropertyDescriptor(n,"ref").get;if(p&&p.isReactWarning)return!1}return n.ref!==void 0}function pa(n){if(ye.call(n,"key")){var p=Object.getOwnPropertyDescriptor(n,"key").get;if(p&&p.isReactWarning)return!1}return n.key!==void 0}function ma(n,p){if(typeof n.ref=="string"&&ge.current&&p&&ge.current.stateNode!==p){var v=K(ge.current.type);we[v]||(L('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',K(ge.current.type),n.ref),we[v]=!0)}}function fa(n,p){{var v=function(){Ye||(Ye=!0,L("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",p))};v.isReactWarning=!0,Object.defineProperty(n,"key",{get:v,configurable:!0})}}function va(n,p){{var v=function(){Ge||(Ge=!0,L("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",p))};v.isReactWarning=!0,Object.defineProperty(n,"ref",{get:v,configurable:!0})}}var ya=function(n,p,v,C,F,A,I){var E={$$typeof:e,type:n,key:p,ref:v,props:I,_owner:A};return E._store={},Object.defineProperty(E._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(E,"_self",{configurable:!1,enumerable:!1,writable:!1,value:C}),Object.defineProperty(E,"_source",{configurable:!1,enumerable:!1,writable:!1,value:F}),Object.freeze&&(Object.freeze(E.props),Object.freeze(E)),E};function xa(n,p,v,C,F){{var A,I={},E=null,U=null;v!==void 0&&(Je(v),E=""+v),pa(p)&&(Je(p.key),E=""+p.key),ga(p)&&(U=p.ref,ma(p,F));for(A in p)ye.call(p,A)&&!da.hasOwnProperty(A)&&(I[A]=p[A]);if(n&&n.defaultProps){var W=n.defaultProps;for(A in W)I[A]===void 0&&(I[A]=W[A])}if(E||U){var q=typeof n=="function"?n.displayName||n.name||"Unknown":n;E&&fa(I,q),U&&va(I,q)}return ya(n,E,U,F,C,ge.current,I)}}var Ie=P.ReactCurrentOwner,Xe=P.ReactDebugCurrentFrame;function re(n){if(n){var p=n._owner,v=ve(n.type,n._source,p?p.type:null);Xe.setExtraStackFrame(v)}else Xe.setExtraStackFrame(null)}var Pe;Pe=!1;function je(n){return typeof n=="object"&&n!==null&&n.$$typeof===e}function Ze(){{if(Ie.current){var n=K(Ie.current.type);if(n)return`
|
|
22
22
|
|
|
23
23
|
Check the render method of \``+n+"`."}return""}}function ba(n){{if(n!==void 0){var p=n.fileName.replace(/^.*[\\\/]/,""),v=n.lineNumber;return`
|
|
24
24
|
|
|
25
|
-
Check your code at `+p+":"+v+"."}return""}}var et={};function
|
|
25
|
+
Check your code at `+p+":"+v+"."}return""}}var et={};function Sa(n){{var p=Ze();if(!p){var v=typeof n=="string"?n:n.displayName||n.name;v&&(p=`
|
|
26
26
|
|
|
27
|
-
Check the top-level render call using <`+v+">.")}return p}}function tt(n,p){{if(!n._store||n._store.validated||n.key!=null)return;n._store.validated=!0;var v=Ca(p);if(et[v])return;et[v]=!0;var S="";n&&n._owner&&n._owner!==Ie.current&&(S=" It was passed a child from "+K(n._owner.type)+"."),re(n),L('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',v,S),re(null)}}function at(n,p){{if(typeof n!="object")return;if(Ee(n))for(var v=0;v<n.length;v++){var S=n[v];je(S)&&tt(S,p)}else if(je(n))n._store&&(n._store.validated=!0);else if(n){var F=T(n);if(typeof F=="function"&&F!==n.entries)for(var A=F.call(n),I;!(I=A.next()).done;)je(I.value)&&tt(I.value,p)}}}function Sa(n){{var p=n.type;if(p==null||typeof p=="string")return;var v;if(typeof p=="function")v=p.propTypes;else if(typeof p=="object"&&(p.$$typeof===u||p.$$typeof===m))v=p.propTypes;else return;if(v){var S=K(p);la(v,n.props,"prop",S,n)}else if(p.PropTypes!==void 0&&!Pe){Pe=!0;var F=K(p);L("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",F||"Unknown")}typeof p.getDefaultProps=="function"&&!p.getDefaultProps.isReactClassApproved&&L("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function La(n){{for(var p=Object.keys(n.props),v=0;v<p.length;v++){var S=p[v];if(S!=="children"&&S!=="key"){re(n),L("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",S),re(null);break}}n.ref!==null&&(re(n),L("Invalid attribute `ref` supplied to `React.Fragment`."),re(null))}}function st(n,p,v,S,F,A){{var I=H(n);if(!I){var E="";(n===void 0||typeof n=="object"&&n!==null&&Object.keys(n).length===0)&&(E+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var U=ba(F);U?E+=U:E+=Ze();var W;n===null?W="null":Ee(n)?W="array":n!==void 0&&n.$$typeof===e?(W="<"+(K(n.type)||"Unknown")+" />",E=" Did you accidentally export a JSX literal instead of a component?"):W=typeof n,L("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",W,E)}var q=xa(n,p,v,F,A);if(q==null)return q;if(I){var z=p.children;if(z!==void 0)if(S)if(Ee(z)){for(var ie=0;ie<z.length;ie++)at(z[ie],n);Object.freeze&&Object.freeze(z)}else L("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else at(z,n)}return n===s?La(q):Sa(q),q}}function Ta(n,p,v){return st(n,p,v,!0)}function ka(n,p,v){return st(n,p,v,!1)}var Ra=ka,Ea=Ta;ce.Fragment=s,ce.jsx=Ra,ce.jsxs=Ea}()),ce}process.env.NODE_ENV==="production"?be.exports=it():be.exports=nt();var o=be.exports,ct=Object.defineProperty,lt=(i,e,t)=>e in i?ct(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,h=(i,e,t)=>(lt(i,typeof e!="symbol"?e+"":e,t),t),B=(i=>(i[i.mustache=0]="mustache",i[i.vue=1]="vue",i[i.react=2]="react",i[i.angular=3]="angular",i))(B||{});class ot{constructor(e){h(this,"dataLayer"),this.dataLayer=e}get currentPage(){var e;return(e=this.dataLayer.searchObject)==null?void 0:e.page}get totalResults(){var e;return((e=this.dataLayer.searchResultsMetadata)==null?void 0:e.totalResultsValue)||0}get resultsPerPage(){return this.dataLayer.searchObject.itemsPerPage||0}get startResultIndex(){var e;return(((e=this.dataLayer.searchObject)==null?void 0:e.page)-1)*this.resultsPerPage+1}get endResultIndex(){var e;const t=(((e=this.dataLayer.searchObject)==null?void 0:e.page)-1)*this.resultsPerPage+(this.resultsPerPage??0);return t>this.totalResults?this.totalResults:t}get isFirstPage(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.page)===1}get isLastPage(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.page)>=Math.ceil(this.totalResults/this.resultsPerPage)}get percentageOfResultsLoaded(){return this.endResultIndex/this.totalResults*100}get results(){return this.dataLayer.searchResults??[]}get autoCorrectedQuery(){var e;return((e=this.dataLayer.searchResultsMetadata)==null?void 0:e.autoCorrectedQuery)||""}get originalQuery(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.query)||""}get getAnswerData(){return this.dataLayer.getAnswerData||""}get shouldShowAnswer(){return this.isFirstPage&&this.dataLayer.getAnswerData!==""&&this.dataLayer.searchObject.query!=="*"&&this.dataLayer.searchObject.facets.length===0}get searchTerm(){var e,t;return((e=this.dataLayer.searchResultsMetadata)==null?void 0:e.autoCorrectedQuery)||((t=this.dataLayer.searchObject)==null?void 0:t.query)||""}get searchingEverything(){return this.searchTerm==="*"}get isInfiniteScroll(){return this.dataLayer.isInfiniteScroll??!1}get searchExecuted(){var e,t,s;return((e=this.dataLayer.searchObject)==null?void 0:e.query)!==void 0&&((t=this.dataLayer.searchObject)==null?void 0:t.query)!=="undefined"&&((s=this.dataLayer.searchObject)==null?void 0:s.query)!==""}get selectedFacets(){var e;const t=this.dataLayer.searchFacetsCached??this.dataLayer.searchFacets;return t?(((e=this.dataLayer.searchObject)==null?void 0:e.facets)??[]).map(s=>{const a=s.name,r=s.value,c=t.find(l=>l.name===a);if(c){const l=c.values.find(u=>u.type==="range"?!1:u.type==="checkbox"?'"'+u.value+'"'===r:!1);if(l)return l}return null}).filter(s=>s!==null):[]}get relatedSearches(){const e=this.dataLayer.searchRelatedSearches??[];return e[e.length-1]&&(e[e.length-1].last=!0),e}get externalPromotions(){return this.dataLayer.searchExternalPromotions??[]}get data(){return{currentPage:this.currentPage,totalResults:this.totalResults,resultsPerPage:this.resultsPerPage,startResultIndex:this.startResultIndex,endResultIndex:this.endResultIndex,isFirstPage:this.isFirstPage,isLastPage:this.isLastPage,results:this.results,searchTerm:this.searchTerm!=="undefined"?this.searchTerm:"",autoCorrectedQuery:this.autoCorrectedQuery,originalQuery:this.originalQuery,selectedFacets:this.selectedFacets,searchExecuted:this.searchExecuted,searchingEverything:this.searchingEverything,relatedSearches:this.relatedSearches,hasRelatedSearches:this.relatedSearches.length>0,externalPromotions:this.externalPromotions,hasExternalPromotions:this.externalPromotions.length>0,hasResults:this.results.length>0,hasResultsOrExternalPromotions:this.results.length>0||this.externalPromotions.length>0,answer:this.getAnswerData,shouldShowAnswer:this.shouldShowAnswer,isInfiniteScroll:this.isInfiniteScroll,percentageOfResultsLoaded:this.percentageOfResultsLoaded}}get trackingData(){var e,t,s,a;return{searchTerm:this.dataLayer.searchTerm!=="undefined"?this.dataLayer.searchTerm:"",trackApiKey:((e=this.dataLayer.searchstaxConfig)==null?void 0:e.trackApiKey)??"",session:this.dataLayer.sessionId,language:this.dataLayer.language,recordsPerPage:((t=this.dataLayer.searchResultsMetadata)==null?void 0:t.recordsPerPageValue)??0,totalResults:((s=this.dataLayer.searchResultsMetadata)==null?void 0:s.totalResultsValue)??0,currentPage:this.dataLayer.currentPage,latencyVal:((a=this.dataLayer.searchResultsMetadata)==null?void 0:a.latency)??0}}}class J{static deepEqual(e,t){const s=Object.keys(e),a=Object.keys(t);if(s.length!==a.length)return!1;for(const r of s){const c=e[r],l=t[r],u=this.isObject(c)&&this.isObject(l);if(u&&!this.deepEqual(c,l)||!u&&c!==l)return!1}return!0}static isObject(e){return e!=null&&typeof e=="object"}}class N{constructor(e){h(this,"value"),h(this,"observers",[]),this.value=e,this.observers=[]}subscribe(e){this.observers.push(e),e(this.value)}unsubscribe(e){const t=this.observers.indexOf(e);t!==-1&&this.observers.splice(t,1)}setValue(e){this.value=e,this.notify()}getValue(){return this.value}notify(){this.observers.forEach(e=>e(this.value))}}class Ce{static getOrSetCookie(e){let t=this.getCookie(e);return t==null&&(t=this.makeid(25),this.setCookie(e,t,{secure:!0,"max-age":3600})),t}static deleteCookie(e){this.getCookie(e)&&this.setCookie(e,"",{secure:!0,"max-age":-1})}static makeid(e){let t="";const s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=s.length;for(let r=0;r<e;r++)t+=s.charAt(Math.floor(Math.random()*a));return t}static getCookie(e){const t=document.cookie.match(new RegExp("(?:^|; )"+e.replace(/([.$?*|{}()[\]\\/+^])/g,"\\$1")+"=([^;]*)"));return t?decodeURIComponent(t[1]):void 0}static setCookie(e,t,s){const a={path:"/",...s};s.expires instanceof Date&&(a.expires=s.expires.toUTCString());let r=encodeURIComponent(e)+"="+encodeURIComponent(t);for(const c in a){r+="; "+c;const l=a[c];l!==!0&&(r+="="+l)}document.cookie=r}}class X{static removeXSSRiskyTags(e){var t="script|style|iframe|object|embed|form|input|button",s=new RegExp("</?("+t+")(\\s[^>]*)?>","gi");return e?e.replace(s,""):""}}class ht{constructor(e){h(this,"$searchTermChange",new N("")),h(this,"$loadingChange",new N(!1)),h(this,"$searchResults",new N(null)),h(this,"$searchResultsMetadata",new N(null)),h(this,"$searchAutosuggest",new N(null)),h(this,"$searchFacets",new N(null)),h(this,"$searchFacetsCached",new N(null)),h(this,"$searchstaxConfig",new N(null)),h(this,"$autosuggestResults",new N(null)),h(this,"$searchObject",new N({query:"",itemsPerPage:null,page:99999999,order:"",facets:[],additionalProps:[]})),h(this,"$searchRelatedSearches",new N(null)),h(this,"$searchInputConfig",new N(null)),h(this,"$searchExternalPromotions",new N(null)),h(this,"$facetsTemplateData",new N(null)),h(this,"$selectedFacetsTemplateData",new N(null)),h(this,"$paginationData",new N(null)),h(this,"$searchFeedbackData",new N(null)),h(this,"$searchSortingData",new N(null)),h(this,"$searchRelatedSearchesData",new N(null)),h(this,"$searchExternalPromotionsData",new N(null)),h(this,"$cookiesDisabled",new N(null)),h(this,"$answer",new N("")),h(this,"$language",new N("en")),h(this,"currentPageValue",1),h(this,"isAnswerWidgetCreatedValue",!1),h(this,"renderingEngineValue",B.mustache),h(this,"parsedData",new ot(this)),h(this,"sessionId"),h(this,"autoCorrect",!0),h(this,"forceNotCorrect",!1),h(this,"lastSearchValue",""),h(this,"turnAIAnswerGenerationOn",!1),h(this,"isInfiniteScroll",!1),this.sessionId=e,this.cookieHandlingCallback(),this.$cookiesDisabled.subscribe(()=>{this.cookieHandlingCallback()})}cookieHandlingCallback(){this.cookiesDisabled?(Ce.deleteCookie(this.sessionId),Ce.deleteCookie("ms_visitorid")):Ce.getOrSetCookie(this.sessionId)}setIsInfiniteScroll(e){this.isInfiniteScroll=e}setSearchTerm(e){this.$searchTermChange.setValue(X.removeXSSRiskyTags(e))}setRenderingEngine(e){this.renderingEngineValue=e}setCurrentPage(e){this.currentPageValue=e}setIsAnswerWidgetCreated(e){this.isAnswerWidgetCreatedValue=e}setLoading(e){this.$loadingChange.setValue(e)}setSearchResults(e){J.deepEqual(e,this.searchResults??[""])||this.$searchResults.setValue(e)}setSearchResultsMetadata(e){J.deepEqual(e,this.searchResultsMetadata??{})||this.$searchResultsMetadata.setValue(e)}setSearchAutosuggest(e){this.$searchAutosuggest.setValue(e)}setSearchObject(e){var t,s;let a=e;(s=(t=this.searchstaxConfig)==null?void 0:t.hooks)!=null&&s.beforeSearch&&a&&(a=this.searchstaxConfig.hooks.beforeSearch(a)),a&&(!J.deepEqual(a,this.searchObject??{})||this.forceNotCorrect)&&this.$searchObject.setValue(a)}setSearchFacets(e){J.deepEqual(e,this.searchFacets??[])||this.$searchFacets.setValue(e)}setSearchFacetsCached(e){J.deepEqual(e,this.searchFacetsCached??[])||this.$searchFacetsCached.setValue(e)}setSearchRelatedSearches(e){J.deepEqual(e,this.searchRelatedSearches??[])||this.$searchRelatedSearches.setValue(e)}setSearchExternalPromotions(e){J.deepEqual(e,this.searchExternalPromotions??[])||this.$searchExternalPromotions.setValue(e)}setLanguage(e){this.$language.setValue(e)}setSearchstaxConfig(e){this.$searchstaxConfig.setValue(e)}setSearchInputConfig(e){this.$searchInputConfig.setValue(e)}setAutosuggestResults(e){this.$autosuggestResults.setValue(e)}setFacetsTemplateData(e){this.$facetsTemplateData.setValue(e)}setSelectedFacetsTemplateData(e){this.$selectedFacetsTemplateData.setValue(e)}setPaginationData(e){this.$paginationData.setValue(e)}setSearchFeedbackData(e){this.$searchFeedbackData.setValue(e)}setSearchSortingData(e){this.$searchSortingData.setValue(e)}setRelatedSearchesData(e){this.$searchRelatedSearchesData.setValue(e)}setExternalPromotionsData(e){this.$searchExternalPromotionsData.setValue(e)}setCookiesDisabled(e){this.$cookiesDisabled.setValue(e)}setAnswerData(e){this.$answer.setValue(e)}get getAnswerData(){return this.$answer.getValue()}get searchstaxConfig(){return this.$searchstaxConfig.getValue()}get searchFacets(){return this.$searchFacets.getValue()?JSON.parse(JSON.stringify(this.$searchFacets.getValue())):null}get searchFacetsCached(){return this.$searchFacetsCached.getValue()?JSON.parse(JSON.stringify(this.$searchFacetsCached.getValue())):null}get searchResults(){return this.$searchResults.getValue()?JSON.parse(JSON.stringify(this.$searchResults.getValue())):null}get searchTerm(){return this.$searchTermChange.getValue()}get loading(){return this.$loadingChange.getValue()}get searchAutosuggest(){return this.$searchAutosuggest.getValue()}get searchResultsMetadata(){return this.$searchResultsMetadata.getValue()?JSON.parse(JSON.stringify(this.$searchResultsMetadata.getValue())):null}get currentPage(){return this.currentPageValue}get isAnswerWidgetCreated(){return this.isAnswerWidgetCreatedValue}get renderingEngine(){return this.renderingEngineValue}get searchObject(){return JSON.parse(JSON.stringify(this.$searchObject.getValue()))}get searchRelatedSearches(){return this.$searchRelatedSearches.getValue()?JSON.parse(JSON.stringify(this.$searchRelatedSearches.getValue())):null}get searchExternalPromotions(){return this.$searchExternalPromotions.getValue()?JSON.parse(JSON.stringify(this.$searchExternalPromotions.getValue())):null}get language(){return this.$language.getValue()}get searchInputConfig(){return this.$searchInputConfig.getValue()}get answerConfig(){return this.$answer.getValue()}get autosuggestResults(){return this.$autosuggestResults.getValue()}get facetsTemplateData(){return this.$facetsTemplateData.getValue()}get selectedFacetsTemplateData(){return this.$selectedFacetsTemplateData.getValue()}get paginationData(){return this.$paginationData.getValue()}get searchFeedbackData(){return this.$searchFeedbackData.getValue()}get searchSortingData(){return this.$searchSortingData.getValue()}get searchRelatedSearchesData(){return this.$searchRelatedSearchesData.getValue()}get searchExternalPromotionsData(){return this.$searchExternalPromotionsData.getValue()}get cookiesDisabled(){return(this.$cookiesDisabled.getValue()??!1)||!navigator.cookieEnabled}}class le{static combineResultsWithMetadata(e){const t=[],s=parseInt(e.response.start+"")-1,a=parseInt(e.responseHeader.params.rows);return e.response.docs.forEach((r,c)=>{const l={custom:null,uniqueId:this.getValueByKey(e.responseHeader.params.uniqueId,r,e)??"",position:s*a+1+c,ribbon:this.doesMapExist("ribbon",e)?this.getValueByKey("ribbon",r,e):null,paths:this.doesMapExist("paths",e)?this.getValueByKey("paths",r,e):null,url:this.doesMapExist("url",e)?this.getValueByKey("url",r,e):null,title:this.doesMapExist("title",e)?this.getValueByKey("title",r,e):null,promoted:r["[elevated]"]?r["[elevated]"]:!1,thumbnail:this.doesMapExist("thumbnail",e)?this.getValueByKey("thumbnail",r,e):null,date:this.doesMapExist("date",e)?this.getValueByKey("date",r,e):null,snippet:this.doesMapExist("snippet",e)?this.getValueByKey("snippet",r,e):null,description:this.doesMapExist("description",e)?this.getValueByKey("description",r,e):null,unmappedFields:this.getUnmappedFields(r,e),allFields:this.getAllFields(r,e)};t.push(l)}),t}static extractFacets(e){const t=[];for(const s of e.metadata.facets){let a={values:[]};if(a.name=s.name,a.label=s.label,s.name in e.facet_counts.facet_fields){const r=e.facet_counts.facet_fields[s.name];for(let c=0;c<r.length;c+=2){const l={};l.value=r[c],l.parentName=a.name,l.count=r[c+1],l.type="checkbox",a.values.push(l)}}a.values.length>0&&t.push(a)}return t}static extractSearchResultsMetadata(e){var t,s,a,r;let c="";return c=((r=(a=(s=(t=e==null?void 0:e.spellcheck)==null?void 0:t.suggestions)==null?void 0:s[0])==null?void 0:a.suggestion)==null?void 0:r[0])??"",typeof c!="string"&&(c=(c==null?void 0:c.word)??""),{recordsPerPageValue:parseInt(e.responseHeader.params.rows),startDocVal:parseInt(e.response.start+""),totalResultsValue:parseInt(e.response.numFound+""),latency:parseInt(e.responseHeader.QTime+""),endDocValue:parseInt(e.responseHeader.params.rows)+parseInt(e.response.start+""),spellingSuggestion:c,autoCorrectedQuery:e.responseHeader.params.autoCorrectedQ??"",impressions:this.getImpressions(e)}}static getImpressions(e){const t=[],s=this.combineResultsWithMetadata(e);for(const a in s){const r=s[a],c={};c.cDocId=this.getDataForAnalytics(r.uniqueId),r.title&&(c.cDocTitle=this.getDataForAnalytics(r.title)),c.position=r.position,t.push(c)}return t}static getDataForAnalytics(e){return e!==null?typeof e>"u"?"":typeof e=="string"?e:typeof e.join<"u"?e[0]:e:""}static findResultByUniqueId(e,t){return t.find(s=>s.uniqueId===e)??null}static getUnmappedFields(e,t){const s=t.metadata.results.filter(r=>r.result_card==="").map(r=>r.name),a=[];for(const r of Object.keys(e))if(s.indexOf(r)!==-1){const c=Array.isArray(e[r])?e[r].join(", "):e[r];a.push({key:r,value:c,isImage:this.checkIfImage(e[r])})}return a}static checkIfImage(e){return e===void 0?!1:typeof e!="string"?Array.isArray(e)&&e[0]?/\.(gif|jpe?g|tiff?|png|webp|bmp)$/i.test(e[0]):!1:/\.(gif|jpe?g|tiff?|png|webp|bmp)$/i.test(e)}static getAllFields(e,t){const s=t.metadata.results.map(r=>r.name),a=[];for(const r of Object.keys(e))s.indexOf(r)!==-1&&a.push({key:r,value:e[r],isImage:this.checkIfImage(e[r])});return a}static doesMapExist(e,t){return t.metadata.results.find(s=>s.result_card===e)!==void 0}static getValueByKey(e,t,s){const a=s.metadata.results.find(c=>c.result_card===e);if(a===void 0)return null;const r=t[a.name];return r===void 0?null:typeof r=="string"?r:Array.isArray(r)?r.join(", "):null}}class Me{constructor(e){h(this,"routeName","searchstax"),h(this,"ignoredKeys",[]),h(this,"queryStringHelper"),h(this,"titleParser"),e.routeName&&(this.routeName=e.routeName),e.ignoredKeys&&(this.ignoredKeys=e.ignoredKeys),e.title&&(this.titleParser=e.title),this.queryStringHelper=new ut(this.routeName)}updateUrl(e){const t=this.searchObjectToUrl(e);let s=document.title;this.titleParser&&(s=this.titleParser(e)),document.title=s,window.location.href!==t&&window.history.pushState({},s,t)}searchObjectToUrl(e){return this.queryStringHelper.urlHasQueryParams(window.location.href)?window.location.href.split("?")[0]+"?"+this.queryStringHelper.stringify(this.searchObjectToParams(e),{ignoredKeys:this.ignoredKeys}):window.location.href+"?"+this.queryStringHelper.stringify(this.searchObjectToParams(e),{ignoredKeys:this.ignoredKeys})}searchObjectToParams(e){const t={},s=e.page||1;if(e.query&&(t[this.routeName+"[query]"]=encodeURIComponent(e.query)),e.page&&(t[this.routeName+"[page]"]=s+""),e.order&&(t[this.routeName+"[order]"]=e.order),e.facets)for(const a in e.facets){const r=e.facets[a].type+":"+encodeURIComponent(e.facets[a].name)+":"+encodeURIComponent(e.facets[a].value);t[this.routeName+`[facets][${a}]`]=r}if(this.queryStringHelper.urlHasQueryParams(window.location.href)){const a=this.queryStringHelper.urlToParams(window.location.href);for(const r in a)r.startsWith(this.routeName)&&delete a[r];return{...a,...t}}else return t}extractParamsThatDoNotStartWithRouteName(e){const t={};for(const s in e)s.startsWith(this.routeName)||(t[s]=e[s]);return t}extractArrayOfFacetsFromQueryParameters(e){var t,s,a;const r=[];for(const c in e)if(c.startsWith(this.routeName+"[facets]")){const l=X.removeXSSRiskyTags((t=e[c].split(":"))==null?void 0:t[0]),u=X.removeXSSRiskyTags(decodeURIComponent((s=e[c].split(":"))==null?void 0:s[1])),d=X.removeXSSRiskyTags(decodeURIComponent((a=e[c].split(":"))==null?void 0:a[2]));r.push({type:l,name:u,value:d})}return r}urlToSearchObject(e){const t=this.queryStringHelper.urlToParams(e),s=X.removeXSSRiskyTags(decodeURIComponent(t[this.routeName+"[page]"])),a=parseInt(s),r=isNaN(a)?1:a;return{query:X.removeXSSRiskyTags(decodeURIComponent(t[this.routeName+"[query]"]))||"",page:r,itemsPerPage:void 0,order:X.removeXSSRiskyTags(t[this.routeName+"[order]"])||"",facets:this.extractArrayOfFacetsFromQueryParameters(t)||[]}}}class ut{constructor(e){h(this,"routeName",""),h(this,"stringify",(t,s)=>{const a=this.filterOutIgnoredKeys(t,s.ignoredKeys);return Object.keys(a).map(r=>{const c=a[r];return Array.isArray(c)?c.map(l=>`${r}=${l}`).join("&"):`${r}=${c}`}).join("&")}),this.routeName=e}filterOutIgnoredKeys(e,t){const s=t||[],a={};return Object.keys(e).forEach(r=>{s.includes(r)||e[r]!==""&&(a[r]=e[r])}),a}urlToParams(e){const t={},s=e.split("?")[1];return s&&s.split("&").forEach(a=>{const[r,c]=a.split("=");t[r]=c}),t}doesParamContainRouteName(e){return e.indexOf(this.routeName)!==-1}urlHasQueryParams(e){return e.indexOf("?")!==-1}}const te={questionURL:"http://smartsearch-dev.searchstax.co/completion/?q=",question:"I_AM_A_QUESTION",notQuestion:"I_AM_NOT_A_QUESTION",close:"CLOSE"};class dt{constructor(e,t){h(this,"cachedQuery",""),h(this,"url",""),h(this,"relatedSearches",""),h(this,"suggester",""),h(this,"authHeader"),h(this,"authHeaderRelated"),h(this,"trackApiKey",""),h(this,"session",""),h(this,"searchAuthType"),h(this,"searchAuth",""),h(this,"controllerSearch"),h(this,"signalSearch"),h(this,"controllerSuggest"),h(this,"signalSuggest"),h(this,"dataLayer"),this.dataLayer=t,this.url=e.searchURL,this.dataLayer.setLanguage(e.language),this.suggester=e.suggesterURL,this.trackApiKey=e.trackApiKey,this.session=e.sessionId,this.searchAuthType=e.authType,this.searchAuth=e.searchAuth,this.authHeader=new Headers,this.authHeader.append("Accept","application/json");const s=this.searchAuthType==="token"?`Token ${e.searchAuth}`:`Basic ${e.searchAuth}`;this.authHeader.append("Authorization",s),this.authHeaderRelated=new Headers,this.authHeaderRelated.append("Accept","application/json"),this.authHeaderRelated.append("Authorization",e.searchAuth)}generateFacetQuery(e,t){let s=[];if(!t)e.forEach(function(a){const r=a.name+':"'+a.value+'"';s=s.concat("fq="+decodeURIComponent(r).replace(" "," "))});else{const a={};e.forEach(function(r){const c=r.name+":"+r.value,l=decodeURIComponent(c).replace(" "," ").split(":");a[l[0]]?a[l[0]].push(l[1]):a[l[0]]=[l[1]]});for(const r in a)if(Object.prototype.hasOwnProperty.call(a,r)){const c=a[r],l=r;let u="";for(const d of c)u+=` ${l}:"${d}"`;s=s.concat("fq="+u.trim())}}return s.length?"&"+s.join("&"):""}getRelatedSearches(e,t,s,a){const r=new Headers;r.append("Accept","application/json"),r.append("Authorization",s),fetch(t+"?search="+encodeURIComponent(e.query)+"&language="+this.dataLayer.language,{method:"GET",headers:r,credentials:"same-origin"}).then(c=>c.json()).then(c=>{a(c)})}cacheFacets(){this.dataLayer.searchObject.query!==this.cachedQuery&&(this.cachedQuery=this.dataLayer.searchObject.query,this.search({query:this.dataLayer.searchObject.query??"*",itemsPerPage:10,page:1,order:"",facets:[],additionalProps:this.dataLayer.searchObject.additionalProps},this.cacheFacetsCallback.bind(this),!0))}cacheFacetsCallback(e){let t=le.extractFacets(e);this.dataLayer.setSearchFacetsCached(t)}search(e,t,s=!1,a=!1){if(e.query&&e.query!=="undefined"&&e.itemsPerPage!==void 0){this.dataLayer.setSearchTerm(e.query),this.dataLayer.setLoading(!0),this.controllerSearch&&this.controllerSearch.abort(),this.controllerSearch=new AbortController,this.signalSearch=this.controllerSearch.signal;const r=new Proxy(new URLSearchParams(window.location.search),{get:(y,k)=>y.get(k)??""}),c=r.languageVariant?"&fq=_language:"+r.languageVariant:"";let l=e.itemsPerPage,u=e.itemsPerPage*(e.page-1),d=e.order?`&sort=${e.order}`:"";const g=this.url+"?q="+encodeURIComponent(e.query.trim())+"&start="+u+this.toQueryString(e.additionalProps??[])+this.generateFacetQuery(e.facets.filter(y=>y.type==="or"||y.type==="showUnavailable"),!0)+this.generateFacetQuery(e.facets.filter(y=>y.type==="and"||y.type==="tabs"),!1)+d+`&spellcheck.correct=${this.dataLayer.autoCorrect&&!a}&rows=${l}&language=`+this.dataLayer.language+c,m={method:"GET",headers:this.authHeader,credentials:"same-origin",signal:this.signalSearch};s&&delete m.signal,fetch(g,m).then(y=>y.json()).then(y=>{this.dataLayer.setLoading(!1),t(y)}).catch(()=>{this.dataLayer.setLoading(!1)})}}startSSE(e,t){if(!this.dataLayer.turnAIAnswerGenerationOn||e==="*"||this.dataLayer.lastSearchValue===e||this.dataLayer.searchObject.facets.length>0||this.dataLayer.searchObject.page!==1)return;const s=new EventSource(te.questionURL+e),a=this.dataLayer;s.onmessage=function(r){if(r.data===te.question||r.data===te.notQuestion){a.setAnswerData("");return}if(r.data===te.close){s.close();return}t(r.data)},s.onerror=function(r){console.log(r),s.close()}}suggest(e,t,s){this.controllerSuggest&&this.controllerSuggest.abort(),this.controllerSuggest=new AbortController,this.signalSuggest=this.controllerSuggest.signal;const a=this.suggester+"?q="+e.trim()+this.toQueryString(s)+"&language="+this.dataLayer.language;fetch(a,{method:"GET",headers:this.authHeader,credentials:"same-origin",signal:this.signalSuggest}).then(r=>r.json()).then(r=>{t(r)}).catch(()=>()=>{})}fields(){return this.fields}toQueryString(e){if(e.length===0)return"";const t=[];for(const s of e)t.push(encodeURIComponent(s.key)+"="+encodeURIComponent(s.value));return"&"+t.join("&")}}class oe{static trackClick(e){const t={key:e.trackApiKey,query:e.searchTerm,shownHits:e.recordsPerPage,totalHits:e.totalResults,pageNo:e.currentPage,latency:e.latencyVal,session:e.session,cDocId:e.result.uniqueId,cDocTitle:e.result.title,position:e.result.position,language:e.language};setTimeout(()=>{t.key&&this.msq.push(["trackClick",t])},0)}static trackSearch(e){const t={key:e.trackApiKey,query:e.searchTerm,shownHits:e.recordsPerPage,totalHits:e.totalResults,pageNo:e.currentPage,latency:e.latencyVal,session:e.session,language:e.language,impressions:e.impressions};setTimeout(()=>{t.key&&this.msq.push(["trackSearch",t])},0)}static trackRelatedSearchClick(e){const t={session:e.session,key:e.trackApiKey,query:e.relatedSearch.search_term,position:e.relatedSearch.position,relatedSearch:e.relatedSearch.related_search,pageNo:e.currentPage,shownHits:e.recordsPerPage,totalHits:e.totalResults,language:e.language};setTimeout(()=>{t.key&&this.msq.push(["trackRelatedSearchClick",t])},0)}static trackRelatedSearches(e){const t={session:e.session,key:e.trackApiKey,query:e.searchTerm,shownHits:e.recordsPerPage,latency:e.latencyVal,language:e.language,impressions:e.impressions};setTimeout(()=>{t.key&&this.msq.push(["trackRelatedSearch",t])},0)}}h(oe,"msq",window._msq||[]);/*!
|
|
27
|
+
Check the top-level render call using <`+v+">.")}return p}}function tt(n,p){{if(!n._store||n._store.validated||n.key!=null)return;n._store.validated=!0;var v=Sa(p);if(et[v])return;et[v]=!0;var C="";n&&n._owner&&n._owner!==Ie.current&&(C=" It was passed a child from "+K(n._owner.type)+"."),re(n),L('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',v,C),re(null)}}function at(n,p){{if(typeof n!="object")return;if(Ee(n))for(var v=0;v<n.length;v++){var C=n[v];je(C)&&tt(C,p)}else if(je(n))n._store&&(n._store.validated=!0);else if(n){var F=T(n);if(typeof F=="function"&&F!==n.entries)for(var A=F.call(n),I;!(I=A.next()).done;)je(I.value)&&tt(I.value,p)}}}function Ca(n){{var p=n.type;if(p==null||typeof p=="string")return;var v;if(typeof p=="function")v=p.propTypes;else if(typeof p=="object"&&(p.$$typeof===u||p.$$typeof===m))v=p.propTypes;else return;if(v){var C=K(p);la(v,n.props,"prop",C,n)}else if(p.PropTypes!==void 0&&!Pe){Pe=!0;var F=K(p);L("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",F||"Unknown")}typeof p.getDefaultProps=="function"&&!p.getDefaultProps.isReactClassApproved&&L("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function La(n){{for(var p=Object.keys(n.props),v=0;v<p.length;v++){var C=p[v];if(C!=="children"&&C!=="key"){re(n),L("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",C),re(null);break}}n.ref!==null&&(re(n),L("Invalid attribute `ref` supplied to `React.Fragment`."),re(null))}}function st(n,p,v,C,F,A){{var I=H(n);if(!I){var E="";(n===void 0||typeof n=="object"&&n!==null&&Object.keys(n).length===0)&&(E+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var U=ba(F);U?E+=U:E+=Ze();var W;n===null?W="null":Ee(n)?W="array":n!==void 0&&n.$$typeof===e?(W="<"+(K(n.type)||"Unknown")+" />",E=" Did you accidentally export a JSX literal instead of a component?"):W=typeof n,L("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",W,E)}var q=xa(n,p,v,F,A);if(q==null)return q;if(I){var z=p.children;if(z!==void 0)if(C)if(Ee(z)){for(var ie=0;ie<z.length;ie++)at(z[ie],n);Object.freeze&&Object.freeze(z)}else L("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else at(z,n)}return n===s?La(q):Ca(q),q}}function Ta(n,p,v){return st(n,p,v,!0)}function ka(n,p,v){return st(n,p,v,!1)}var Ra=ka,Ea=Ta;ce.Fragment=s,ce.jsx=Ra,ce.jsxs=Ea}()),ce}process.env.NODE_ENV==="production"?be.exports=it():be.exports=nt();var o=be.exports,ct=Object.defineProperty,lt=(i,e,t)=>e in i?ct(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,h=(i,e,t)=>(lt(i,typeof e!="symbol"?e+"":e,t),t),B=(i=>(i[i.mustache=0]="mustache",i[i.vue=1]="vue",i[i.react=2]="react",i[i.angular=3]="angular",i))(B||{});class ot{constructor(e){h(this,"dataLayer"),this.dataLayer=e}get currentPage(){var e;return(e=this.dataLayer.searchObject)==null?void 0:e.page}get totalResults(){var e;return((e=this.dataLayer.searchResultsMetadata)==null?void 0:e.totalResultsValue)||0}get resultsPerPage(){return this.dataLayer.searchObject.itemsPerPage||0}get startResultIndex(){var e;return(((e=this.dataLayer.searchObject)==null?void 0:e.page)-1)*this.resultsPerPage+1}get endResultIndex(){var e;const t=(((e=this.dataLayer.searchObject)==null?void 0:e.page)-1)*this.resultsPerPage+(this.resultsPerPage??0);return t>this.totalResults?this.totalResults:t}get isFirstPage(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.page)===1}get isLastPage(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.page)>=Math.ceil(this.totalResults/this.resultsPerPage)}get percentageOfResultsLoaded(){return this.endResultIndex/this.totalResults*100}get results(){return this.dataLayer.searchResults??[]}get autoCorrectedQuery(){var e;return((e=this.dataLayer.searchResultsMetadata)==null?void 0:e.autoCorrectedQuery)||""}get originalQuery(){var e;return((e=this.dataLayer.searchObject)==null?void 0:e.query)||""}get getAnswerData(){return this.dataLayer.getAnswerData||""}get shouldShowAnswer(){return this.isFirstPage&&this.dataLayer.getAnswerData!==""&&this.dataLayer.searchObject.query!=="*"&&this.dataLayer.searchObject.facets.length===0}get searchTerm(){var e,t;return((e=this.dataLayer.searchResultsMetadata)==null?void 0:e.autoCorrectedQuery)||((t=this.dataLayer.searchObject)==null?void 0:t.query)||""}get searchingEverything(){return this.searchTerm==="*"}get firstSearchHappened(){return this.dataLayer.firstSearchHappened}get isInfiniteScroll(){return this.dataLayer.isInfiniteScroll??!1}get searchExecuted(){var e,t,s;return((e=this.dataLayer.searchObject)==null?void 0:e.query)!==void 0&&((t=this.dataLayer.searchObject)==null?void 0:t.query)!=="undefined"&&((s=this.dataLayer.searchObject)==null?void 0:s.query)!==""}get selectedFacets(){var e;const t=this.dataLayer.searchFacetsCached??this.dataLayer.searchFacets;return t?(((e=this.dataLayer.searchObject)==null?void 0:e.facets)??[]).map(s=>{const a=s.name,r=s.value,c=t.find(l=>l.name===a);if(c){const l=c.values.find(u=>u.type==="range"?!1:u.type==="checkbox"?'"'+u.value+'"'===r:!1);if(l)return l}return null}).filter(s=>s!==null):[]}get relatedSearches(){const e=this.dataLayer.searchRelatedSearches??[];return e[e.length-1]&&(e[e.length-1].last=!0),e}get externalPromotions(){return this.dataLayer.searchExternalPromotions??[]}get data(){return{currentPage:this.currentPage,totalResults:this.totalResults,resultsPerPage:this.resultsPerPage,startResultIndex:this.startResultIndex,endResultIndex:this.endResultIndex,isFirstPage:this.isFirstPage,isLastPage:this.isLastPage,results:this.results,searchTerm:this.searchTerm!=="undefined"?this.searchTerm:"",autoCorrectedQuery:this.autoCorrectedQuery,originalQuery:this.originalQuery,selectedFacets:this.selectedFacets,searchExecuted:this.searchExecuted,searchingEverything:this.searchingEverything,relatedSearches:this.relatedSearches,hasRelatedSearches:this.relatedSearches.length>0,externalPromotions:this.externalPromotions,hasExternalPromotions:this.externalPromotions.length>0,hasResults:this.results.length>0,hasResultsOrExternalPromotions:this.results.length>0||this.externalPromotions.length>0,answer:this.getAnswerData,shouldShowAnswer:this.shouldShowAnswer,isInfiniteScroll:this.isInfiniteScroll,percentageOfResultsLoaded:this.percentageOfResultsLoaded,firstSearchHappened:this.firstSearchHappened}}get trackingData(){var e,t,s,a;return{searchTerm:this.dataLayer.searchTerm!=="undefined"?this.dataLayer.searchTerm:"",trackApiKey:((e=this.dataLayer.searchstaxConfig)==null?void 0:e.trackApiKey)??"",session:this.dataLayer.sessionId,language:this.dataLayer.language,recordsPerPage:((t=this.dataLayer.searchResultsMetadata)==null?void 0:t.recordsPerPageValue)??0,totalResults:((s=this.dataLayer.searchResultsMetadata)==null?void 0:s.totalResultsValue)??0,currentPage:this.dataLayer.currentPage,latencyVal:((a=this.dataLayer.searchResultsMetadata)==null?void 0:a.latency)??0}}}class J{static deepEqual(e,t){const s=Object.keys(e),a=Object.keys(t);if(s.length!==a.length)return!1;for(const r of s){const c=e[r],l=t[r],u=this.isObject(c)&&this.isObject(l);if(u&&!this.deepEqual(c,l)||!u&&c!==l)return!1}return!0}static isObject(e){return e!=null&&typeof e=="object"}}class N{constructor(e){h(this,"value"),h(this,"observers",[]),this.value=e,this.observers=[]}subscribe(e){this.observers.push(e),e(this.value)}unsubscribe(e){const t=this.observers.indexOf(e);t!==-1&&this.observers.splice(t,1)}setValue(e){this.value=e,this.notify()}getValue(){return this.value}notify(){this.observers.forEach(e=>e(this.value))}}class Se{static getOrSetCookie(e){let t=this.getCookie(e);return t==null&&(t=this.makeid(25),this.setCookie(e,t,{secure:!0,"max-age":3600})),t}static deleteCookie(e){this.getCookie(e)&&this.setCookie(e,"",{secure:!0,"max-age":-1})}static makeid(e){let t="";const s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",a=s.length;for(let r=0;r<e;r++)t+=s.charAt(Math.floor(Math.random()*a));return t}static getCookie(e){const t=document.cookie.match(new RegExp("(?:^|; )"+e.replace(/([.$?*|{}()[\]\\/+^])/g,"\\$1")+"=([^;]*)"));return t?decodeURIComponent(t[1]):void 0}static setCookie(e,t,s){const a={path:"/",...s};s.expires instanceof Date&&(a.expires=s.expires.toUTCString());let r=encodeURIComponent(e)+"="+encodeURIComponent(t);for(const c in a){r+="; "+c;const l=a[c];l!==!0&&(r+="="+l)}document.cookie=r}}class X{static removeXSSRiskyTags(e){var t="script|style|iframe|object|embed|form|input|button",s=new RegExp("</?("+t+")(\\s[^>]*)?>","gi");return e?e.replace(s,""):""}}class ht{constructor(e){h(this,"$searchTermChange",new N("")),h(this,"$loadingChange",new N(!1)),h(this,"$searchResults",new N(null)),h(this,"$searchResultsMetadata",new N(null)),h(this,"$searchAutosuggest",new N(null)),h(this,"$searchFacets",new N(null)),h(this,"$searchFacetsCached",new N(null)),h(this,"$searchstaxConfig",new N(null)),h(this,"$autosuggestResults",new N(null)),h(this,"$searchObject",new N({query:"",itemsPerPage:null,page:99999999,order:"",facets:[],additionalProps:[]})),h(this,"$searchRelatedSearches",new N(null)),h(this,"$searchInputConfig",new N(null)),h(this,"$searchExternalPromotions",new N(null)),h(this,"$facetsTemplateData",new N(null)),h(this,"$selectedFacetsTemplateData",new N(null)),h(this,"$paginationData",new N(null)),h(this,"$searchFeedbackData",new N(null)),h(this,"$searchSortingData",new N(null)),h(this,"$searchRelatedSearchesData",new N(null)),h(this,"$searchExternalPromotionsData",new N(null)),h(this,"$cookiesDisabled",new N(null)),h(this,"$answer",new N("")),h(this,"$language",new N("en")),h(this,"currentPageValue",1),h(this,"isAnswerWidgetCreatedValue",!1),h(this,"renderingEngineValue",B.mustache),h(this,"parsedData",new ot(this)),h(this,"sessionId"),h(this,"autoCorrect",!0),h(this,"forceNotCorrect",!1),h(this,"lastSearchValue",""),h(this,"turnAIAnswerGenerationOn",!1),h(this,"isInfiniteScroll",!1),h(this,"firstSearchHappened",!1),this.sessionId=e,this.cookieHandlingCallback(),this.$cookiesDisabled.subscribe(()=>{this.cookieHandlingCallback()})}cookieHandlingCallback(){this.cookiesDisabled?(Se.deleteCookie(this.sessionId),Se.deleteCookie("ms_visitorid")):Se.getOrSetCookie(this.sessionId)}setIsInfiniteScroll(e){this.isInfiniteScroll=e}setSearchTerm(e){this.$searchTermChange.setValue(X.removeXSSRiskyTags(e))}setRenderingEngine(e){this.renderingEngineValue=e}setCurrentPage(e){this.currentPageValue=e}setIsAnswerWidgetCreated(e){this.isAnswerWidgetCreatedValue=e}setLoading(e){this.$loadingChange.setValue(e)}setSearchResults(e){this.firstSearchHappened=!0,J.deepEqual(e,this.searchResults??[""])||this.$searchResults.setValue(e)}setSearchResultsMetadata(e){J.deepEqual(e,this.searchResultsMetadata??{})||this.$searchResultsMetadata.setValue(e)}setSearchAutosuggest(e){this.$searchAutosuggest.setValue(e)}setSearchObject(e){var t,s;let a=e;(s=(t=this.searchstaxConfig)==null?void 0:t.hooks)!=null&&s.beforeSearch&&a&&(a=this.searchstaxConfig.hooks.beforeSearch(a)),a&&(!J.deepEqual(a,this.searchObject??{})||this.forceNotCorrect)&&this.$searchObject.setValue(a)}setSearchFacets(e){J.deepEqual(e,this.searchFacets??[])||this.$searchFacets.setValue(e)}setSearchFacetsCached(e){J.deepEqual(e,this.searchFacetsCached??[])||this.$searchFacetsCached.setValue(e)}setSearchRelatedSearches(e){J.deepEqual(e,this.searchRelatedSearches??[])||this.$searchRelatedSearches.setValue(e)}setSearchExternalPromotions(e){J.deepEqual(e,this.searchExternalPromotions??[])||this.$searchExternalPromotions.setValue(e)}setLanguage(e){this.$language.setValue(e)}setSearchstaxConfig(e){this.$searchstaxConfig.setValue(e)}setSearchInputConfig(e){this.$searchInputConfig.setValue(e)}setAutosuggestResults(e){this.$autosuggestResults.setValue(e)}setFacetsTemplateData(e){this.$facetsTemplateData.setValue(e)}setSelectedFacetsTemplateData(e){this.$selectedFacetsTemplateData.setValue(e)}setPaginationData(e){this.$paginationData.setValue(e)}setSearchFeedbackData(e){this.$searchFeedbackData.setValue(e)}setSearchSortingData(e){this.$searchSortingData.setValue(e)}setRelatedSearchesData(e){this.$searchRelatedSearchesData.setValue(e)}setExternalPromotionsData(e){this.$searchExternalPromotionsData.setValue(e)}setCookiesDisabled(e){this.$cookiesDisabled.setValue(e)}setAnswerData(e){this.$answer.setValue(e)}get getAnswerData(){return this.$answer.getValue()}get searchstaxConfig(){return this.$searchstaxConfig.getValue()}get searchFacets(){return this.$searchFacets.getValue()?JSON.parse(JSON.stringify(this.$searchFacets.getValue())):null}get searchFacetsCached(){return this.$searchFacetsCached.getValue()?JSON.parse(JSON.stringify(this.$searchFacetsCached.getValue())):null}get searchResults(){return this.$searchResults.getValue()?JSON.parse(JSON.stringify(this.$searchResults.getValue())):null}get searchTerm(){return this.$searchTermChange.getValue()}get loading(){return this.$loadingChange.getValue()}get searchAutosuggest(){return this.$searchAutosuggest.getValue()}get searchResultsMetadata(){return this.$searchResultsMetadata.getValue()?JSON.parse(JSON.stringify(this.$searchResultsMetadata.getValue())):null}get currentPage(){return this.currentPageValue}get isAnswerWidgetCreated(){return this.isAnswerWidgetCreatedValue}get renderingEngine(){return this.renderingEngineValue}get searchObject(){return JSON.parse(JSON.stringify(this.$searchObject.getValue()))}get searchRelatedSearches(){return this.$searchRelatedSearches.getValue()?JSON.parse(JSON.stringify(this.$searchRelatedSearches.getValue())):null}get searchExternalPromotions(){return this.$searchExternalPromotions.getValue()?JSON.parse(JSON.stringify(this.$searchExternalPromotions.getValue())):null}get language(){return this.$language.getValue()}get searchInputConfig(){return this.$searchInputConfig.getValue()}get answerConfig(){return this.$answer.getValue()}get autosuggestResults(){return this.$autosuggestResults.getValue()}get facetsTemplateData(){return this.$facetsTemplateData.getValue()}get selectedFacetsTemplateData(){return this.$selectedFacetsTemplateData.getValue()}get paginationData(){return this.$paginationData.getValue()}get searchFeedbackData(){return this.$searchFeedbackData.getValue()}get searchSortingData(){return this.$searchSortingData.getValue()}get searchRelatedSearchesData(){return this.$searchRelatedSearchesData.getValue()}get searchExternalPromotionsData(){return this.$searchExternalPromotionsData.getValue()}get cookiesDisabled(){return(this.$cookiesDisabled.getValue()??!1)||!navigator.cookieEnabled}}class le{static combineResultsWithMetadata(e){const t=[],s=parseInt(e.response.start+"")-1,a=parseInt(e.responseHeader.params.rows);return e.response.docs.forEach((r,c)=>{const l={custom:null,uniqueId:r[e.responseHeader.params.uniqueId]??"",position:s*a+1+c,ribbon:this.doesMapExist("ribbon",e)?this.getValueByKey("ribbon",r,e):null,paths:this.doesMapExist("paths",e)?this.getValueByKey("paths",r,e):null,url:this.doesMapExist("url",e)?this.getValueByKey("url",r,e):null,title:this.doesMapExist("title",e)?this.getValueByKey("title",r,e):null,promoted:r["[elevated]"]?r["[elevated]"]:!1,thumbnail:this.doesMapExist("thumbnail",e)?this.getValueByKey("thumbnail",r,e):null,date:this.doesMapExist("date",e)?this.getValueByKey("date",r,e):null,snippet:this.doesMapExist("snippet",e)?this.getValueByKey("snippet",r,e):null,description:this.doesMapExist("description",e)?this.getValueByKey("description",r,e):null,unmappedFields:this.getUnmappedFields(r,e),allFields:this.getAllFields(r,e)};t.push(l)}),t}static extractFacets(e){const t=[];for(const s of e.metadata.facets){let a={values:[]};if(a.name=s.name,a.label=s.label,s.name in e.facet_counts.facet_fields){const r=e.facet_counts.facet_fields[s.name];for(let c=0;c<r.length;c+=2){const l={};l.value=r[c],l.parentName=a.name,l.count=r[c+1],l.type="checkbox",a.values.push(l)}}a.values.length>0&&t.push(a)}return t}static extractSearchResultsMetadata(e){var t,s,a,r;let c="";return c=((r=(a=(s=(t=e==null?void 0:e.spellcheck)==null?void 0:t.suggestions)==null?void 0:s[0])==null?void 0:a.suggestion)==null?void 0:r[0])??"",typeof c!="string"&&(c=(c==null?void 0:c.word)??""),{recordsPerPageValue:parseInt(e.responseHeader.params.rows),startDocVal:parseInt(e.response.start+""),totalResultsValue:parseInt(e.response.numFound+""),latency:parseInt(e.responseHeader.QTime+""),endDocValue:parseInt(e.responseHeader.params.rows)+parseInt(e.response.start+""),spellingSuggestion:c,autoCorrectedQuery:e.responseHeader.params.autoCorrectedQ??"",impressions:this.getImpressions(e)}}static getImpressions(e){const t=[],s=this.combineResultsWithMetadata(e);for(const a in s){const r=s[a],c={};c.cDocId=this.getDataForAnalytics(r.uniqueId),r.title&&(c.cDocTitle=this.getDataForAnalytics(r.title)),c.position=r.position,t.push(c)}return t}static getDataForAnalytics(e){return e!==null?typeof e>"u"?"":typeof e=="string"?e:typeof e.join<"u"?e[0]:e:""}static findResultByUniqueId(e,t){return t.find(s=>s.uniqueId===e)??null}static getUnmappedFields(e,t){const s=t.metadata.results.filter(r=>r.result_card==="").map(r=>r.name),a=[];for(const r of Object.keys(e))if(s.indexOf(r)!==-1){const c=Array.isArray(e[r])?e[r].join(", "):e[r];a.push({key:r,value:c,isImage:this.checkIfImage(e[r])})}return a}static checkIfImage(e){return e===void 0?!1:typeof e!="string"?Array.isArray(e)&&e[0]?/\.(gif|jpe?g|tiff?|png|webp|bmp)$/i.test(e[0]):!1:/\.(gif|jpe?g|tiff?|png|webp|bmp)$/i.test(e)}static getAllFields(e,t){const s=t.metadata.results.map(r=>r.name),a=[];for(const r of Object.keys(e))s.indexOf(r)!==-1&&a.push({key:r,value:e[r],isImage:this.checkIfImage(e[r])});return a}static doesMapExist(e,t){return t.metadata.results.find(s=>s.result_card===e)!==void 0}static getValueByKey(e,t,s){const a=s.metadata.results.find(c=>c.result_card===e);if(a===void 0)return null;const r=t[a.name];return r===void 0?null:typeof r=="string"?r:Array.isArray(r)?r.join(", "):null}}class Me{constructor(e){h(this,"routeName","searchstax"),h(this,"ignoredKeys",[]),h(this,"queryStringHelper"),h(this,"titleParser"),e.routeName&&(this.routeName=e.routeName),e.ignoredKeys&&(this.ignoredKeys=e.ignoredKeys),e.title&&(this.titleParser=e.title),this.queryStringHelper=new ut(this.routeName)}updateUrl(e){const t=this.searchObjectToUrl(e);let s=document.title;this.titleParser&&(s=this.titleParser(e)),document.title=s,window.location.href!==t&&window.history.pushState({},s,t)}searchObjectToUrl(e){return this.queryStringHelper.urlHasQueryParams(window.location.href)?window.location.href.split("?")[0]+"?"+this.queryStringHelper.stringify(this.searchObjectToParams(e),{ignoredKeys:this.ignoredKeys}):window.location.href+"?"+this.queryStringHelper.stringify(this.searchObjectToParams(e),{ignoredKeys:this.ignoredKeys})}searchObjectToParams(e){const t={},s=e.page||1;if(e.query&&(t[this.routeName+"[query]"]=encodeURIComponent(e.query)),e.page&&(t[this.routeName+"[page]"]=s+""),e.order&&(t[this.routeName+"[order]"]=e.order),e.facets)for(const a in e.facets){const r=e.facets[a].type+":"+encodeURIComponent(e.facets[a].name)+":"+encodeURIComponent(e.facets[a].value);t[this.routeName+`[facets][${a}]`]=r}if(this.queryStringHelper.urlHasQueryParams(window.location.href)){const a=this.queryStringHelper.urlToParams(window.location.href);for(const r in a)r.startsWith(this.routeName)&&delete a[r];return{...a,...t}}else return t}extractParamsThatDoNotStartWithRouteName(e){const t={};for(const s in e)s.startsWith(this.routeName)||(t[s]=e[s]);return t}extractArrayOfFacetsFromQueryParameters(e){var t,s,a;const r=[];for(const c in e)if(c.startsWith(this.routeName+"[facets]")){const l=X.removeXSSRiskyTags((t=e[c].split(":"))==null?void 0:t[0]),u=X.removeXSSRiskyTags(decodeURIComponent((s=e[c].split(":"))==null?void 0:s[1])),d=X.removeXSSRiskyTags(decodeURIComponent((a=e[c].split(":"))==null?void 0:a[2]));r.push({type:l,name:u,value:d})}return r}urlToSearchObject(e,t){const s=this.queryStringHelper.urlToParams(e),a=X.removeXSSRiskyTags(decodeURIComponent(s[this.routeName+"[page]"])),r=parseInt(a),c=isNaN(r)?1:r;return{query:X.removeXSSRiskyTags(decodeURIComponent(s[this.routeName+"[query]"]))||"",page:c,itemsPerPage:t,order:X.removeXSSRiskyTags(s[this.routeName+"[order]"])||"",facets:this.extractArrayOfFacetsFromQueryParameters(s)||[]}}}class ut{constructor(e){h(this,"routeName",""),h(this,"stringify",(t,s)=>{const a=this.filterOutIgnoredKeys(t,s.ignoredKeys);return Object.keys(a).map(r=>{const c=a[r];return Array.isArray(c)?c.map(l=>`${r}=${l}`).join("&"):`${r}=${c}`}).join("&")}),this.routeName=e}filterOutIgnoredKeys(e,t){const s=t||[],a={};return Object.keys(e).forEach(r=>{s.includes(r)||e[r]!==""&&(a[r]=e[r])}),a}urlToParams(e){const t={},s=e.split("?")[1];return s&&s.split("&").forEach(a=>{const[r,c]=a.split("=");t[r]=c}),t}doesParamContainRouteName(e){return e.indexOf(this.routeName)!==-1}urlHasQueryParams(e){return e.indexOf("?")!==-1}}const te={questionURL:"http://smartsearch-dev.searchstax.co/completion/?q=",question:"I_AM_A_QUESTION",notQuestion:"I_AM_NOT_A_QUESTION",close:"CLOSE"};class dt{constructor(e,t){h(this,"cachedQuery",""),h(this,"url",""),h(this,"relatedSearches",""),h(this,"suggester",""),h(this,"authHeader"),h(this,"authHeaderRelated"),h(this,"trackApiKey",""),h(this,"session",""),h(this,"searchAuthType"),h(this,"searchAuth",""),h(this,"controllerSearch"),h(this,"signalSearch"),h(this,"controllerSuggest"),h(this,"signalSuggest"),h(this,"dataLayer"),this.dataLayer=t,this.url=e.searchURL,this.dataLayer.setLanguage(e.language),this.suggester=e.suggesterURL,this.trackApiKey=e.trackApiKey,this.session=e.sessionId,this.searchAuthType=e.authType,this.searchAuth=e.searchAuth,this.authHeader=new Headers,this.authHeader.append("Accept","application/json");const s=this.searchAuthType==="token"?`Token ${e.searchAuth}`:`Basic ${e.searchAuth}`;this.authHeader.append("Authorization",s),this.authHeaderRelated=new Headers,this.authHeaderRelated.append("Accept","application/json"),this.authHeaderRelated.append("Authorization",e.searchAuth)}generateFacetQuery(e,t){let s=[];if(!t)e.forEach(function(a){const r=a.name+':"'+a.value+'"';s=s.concat("fq="+decodeURIComponent(r).replace(" "," "))});else{const a={};e.forEach(function(r){const c=r.name+":"+r.value,l=decodeURIComponent(c).replace(" "," ").split(":");a[l[0]]?a[l[0]].push(l[1]):a[l[0]]=[l[1]]});for(const r in a)if(Object.prototype.hasOwnProperty.call(a,r)){const c=a[r],l=r;let u="";for(const d of c)u+=` ${l}:"${d}"`;s=s.concat("fq="+u.trim())}}return s.length?"&"+s.join("&"):""}getRelatedSearches(e,t,s,a){const r=new Headers;r.append("Accept","application/json"),r.append("Authorization",s),fetch(t+"?search="+encodeURIComponent(e.query)+"&language="+this.dataLayer.language,{method:"GET",headers:r,credentials:"same-origin"}).then(c=>c.json()).then(c=>{a(c)})}cacheFacets(){this.dataLayer.searchObject.query!==this.cachedQuery&&(this.cachedQuery=this.dataLayer.searchObject.query,this.search({query:this.dataLayer.searchObject.query??"*",itemsPerPage:10,page:1,order:"",facets:[],additionalProps:this.dataLayer.searchObject.additionalProps},this.cacheFacetsCallback.bind(this),!0))}cacheFacetsCallback(e){let t=le.extractFacets(e);this.dataLayer.setSearchFacetsCached(t)}search(e,t,s=!1,a=!1){if(e.query&&e.query!=="undefined"&&e.itemsPerPage!==void 0){this.dataLayer.setSearchTerm(e.query),this.dataLayer.setLoading(!0),this.controllerSearch&&this.controllerSearch.abort(),this.controllerSearch=new AbortController,this.signalSearch=this.controllerSearch.signal;const r=new Proxy(new URLSearchParams(window.location.search),{get:(y,k)=>y.get(k)??""}),c=r.languageVariant?"&fq=_language:"+r.languageVariant:"";let l=e.itemsPerPage,u=e.itemsPerPage*(e.page-1),d=e.order?`&sort=${e.order}`:"";const g=this.url+"?q="+encodeURIComponent(e.query.trim())+"&start="+u+this.toQueryString(e.additionalProps??[])+this.generateFacetQuery(e.facets.filter(y=>y.type==="or"||y.type==="showUnavailable"),!0)+this.generateFacetQuery(e.facets.filter(y=>y.type==="and"||y.type==="tabs"),!1)+d+`&spellcheck.correct=${this.dataLayer.autoCorrect&&!a}&rows=${l}&language=`+this.dataLayer.language+c,m={method:"GET",headers:this.authHeader,credentials:"same-origin",signal:this.signalSearch};s&&delete m.signal,fetch(g,m).then(y=>y.json()).then(y=>{this.dataLayer.setLoading(!1),t(y)}).catch(()=>{this.dataLayer.setLoading(!1)})}}startSSE(e,t){if(!this.dataLayer.turnAIAnswerGenerationOn||e==="*"||this.dataLayer.lastSearchValue===e||this.dataLayer.searchObject.facets.length>0||this.dataLayer.searchObject.page!==1)return;const s=new EventSource(te.questionURL+e),a=this.dataLayer;s.onmessage=function(r){if(r.data===te.question||r.data===te.notQuestion){a.setAnswerData("");return}if(r.data===te.close){s.close();return}t(r.data)},s.onerror=function(){s.close()}}suggest(e,t,s){this.controllerSuggest&&this.controllerSuggest.abort(),this.controllerSuggest=new AbortController,this.signalSuggest=this.controllerSuggest.signal;const a=this.suggester+"?q="+e.trim()+this.toQueryString(s)+"&language="+this.dataLayer.language;fetch(a,{method:"GET",headers:this.authHeader,credentials:"same-origin",signal:this.signalSuggest}).then(r=>r.json()).then(r=>{t(r)}).catch(()=>()=>{})}fields(){return this.fields}toQueryString(e){if(e.length===0)return"";const t=[];for(const s of e)t.push(encodeURIComponent(s.key)+"="+encodeURIComponent(s.value));return"&"+t.join("&")}}class oe{static trackClick(e){const t={key:e.trackApiKey,query:e.searchTerm,shownHits:e.recordsPerPage,totalHits:e.totalResults,pageNo:e.currentPage,latency:e.latencyVal,session:e.session,cDocId:e.result.uniqueId,cDocTitle:e.result.title,position:e.result.position,language:e.language};setTimeout(()=>{t.key&&this.msq.push(["trackClick",t])},0)}static trackSearch(e){const t={key:e.trackApiKey,query:e.searchTerm,shownHits:e.recordsPerPage,totalHits:e.totalResults,pageNo:e.currentPage,latency:e.latencyVal,session:e.session,language:e.language,impressions:e.impressions};setTimeout(()=>{t.key&&this.msq.push(["track",t])},0)}static trackRelatedSearchClick(e){const t={session:e.session,key:e.trackApiKey,query:e.relatedSearch.search_term,position:e.relatedSearch.position,relatedSearch:e.relatedSearch.related_search,pageNo:e.currentPage,shownHits:e.recordsPerPage,totalHits:e.totalResults,language:e.language};setTimeout(()=>{t.key&&this.msq.push(["trackRelatedSearchClick",t])},0)}static trackRelatedSearches(e){const t={session:e.session,key:e.trackApiKey,query:e.searchTerm,shownHits:e.recordsPerPage,latency:e.latencyVal,language:e.language,impressions:e.impressions};setTimeout(()=>{t.key&&this.msq.push(["trackRelatedSearch",t])},0)}}h(oe,"msq",window._msq||[]);/*!
|
|
28
28
|
* mustache.js - Logic-less {{mustache}} templates with JavaScript
|
|
29
29
|
* http://github.com/janl/mustache.js
|
|
30
|
-
*/var gt=Object.prototype.toString,ae=Array.isArray||function(i){return gt.call(i)==="[object Array]"};function
|
|
31
|
-
`&&(g(),u="",d=0,t=!1);if(!R.scan(m))break;if(c=!0,P=R.scan(kt)||"name",R.scan(
|
|
30
|
+
*/var gt=Object.prototype.toString,ae=Array.isArray||function(i){return gt.call(i)==="[object Array]"};function Ce(i){return typeof i=="function"}function pt(i){return ae(i)?"array":typeof i}function Le(i){return i.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Ae(i,e){return i!=null&&typeof i=="object"&&e in i}function mt(i,e){return i!=null&&typeof i!="object"&&i.hasOwnProperty&&i.hasOwnProperty(e)}var ft=RegExp.prototype.test;function vt(i,e){return ft.call(i,e)}var yt=/\S/;function xt(i){return!vt(yt,i)}var bt={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function St(i){return String(i).replace(/[&<>"'`=\/]/g,function(e){return bt[e]})}var Ct=/\s*/,Lt=/\s+/,De=/\s*=/,Tt=/\s*\}/,kt=/#|\^|\/|>|\{|&|=|!/;function Rt(i,e){if(!i)return[];var t=!1,s=[],a=[],r=[],c=!1,l=!1,u="",d=0;function g(){if(c&&!l)for(;r.length;)delete a[r.pop()];else r=[];c=!1,l=!1}var m,y,k;function M(b){if(typeof b=="string"&&(b=b.split(Lt,2)),!ae(b)||b.length!==2)throw new Error("Invalid tags: "+b);m=new RegExp(Le(b[0])+"\\s*"),y=new RegExp("\\s*"+Le(b[1])),k=new RegExp("\\s*"+Le("}"+b[1]))}M(e||j.tags);for(var R=new he(i),T,P,L,_,V,D;!R.eos();){if(T=R.pos,L=R.scanUntil(m),L)for(var Q=0,f=L.length;Q<f;++Q)_=L.charAt(Q),xt(_)?(r.push(a.length),u+=_):(l=!0,t=!0,u+=" "),a.push(["text",_,T,T+1]),T+=1,_===`
|
|
31
|
+
`&&(g(),u="",d=0,t=!1);if(!R.scan(m))break;if(c=!0,P=R.scan(kt)||"name",R.scan(Ct),P==="="?(L=R.scanUntil(De),R.scan(De),R.scanUntil(y)):P==="{"?(L=R.scanUntil(k),R.scan(Tt),R.scanUntil(y),P="&"):L=R.scanUntil(y),!R.scan(y))throw new Error("Unclosed tag at "+R.pos);if(P==">"?V=[P,L,T,R.pos,u,d,t]:V=[P,L,T,R.pos],d++,a.push(V),P==="#"||P==="^")s.push(V);else if(P==="/"){if(D=s.pop(),!D)throw new Error('Unopened section "'+L+'" at '+T);if(D[1]!==L)throw new Error('Unclosed section "'+D[1]+'" at '+T)}else P==="name"||P==="{"||P==="&"?l=!0:P==="="&&M(L)}if(g(),D=s.pop(),D)throw new Error('Unclosed section "'+D[1]+'" at '+R.pos);return wt(Et(a))}function Et(i){for(var e=[],t,s,a=0,r=i.length;a<r;++a)t=i[a],t&&(t[0]==="text"&&s&&s[0]==="text"?(s[1]+=t[1],s[3]=t[3]):(e.push(t),s=t));return e}function wt(i){for(var e=[],t=e,s=[],a,r,c=0,l=i.length;c<l;++c)switch(a=i[c],a[0]){case"#":case"^":t.push(a),s.push(a),t=a[4]=[];break;case"/":r=s.pop(),r[5]=a[2],t=s.length>0?s[s.length-1][4]:e;break;default:t.push(a)}return e}function he(i){this.string=i,this.tail=i,this.pos=0}he.prototype.eos=function(){return this.tail===""},he.prototype.scan=function(i){var e=this.tail.match(i);if(!e||e.index!==0)return"";var t=e[0];return this.tail=this.tail.substring(t.length),this.pos+=t.length,t},he.prototype.scanUntil=function(i){var e=this.tail.search(i),t;switch(e){case-1:t=this.tail,this.tail="";break;case 0:t="";break;default:t=this.tail.substring(0,e),this.tail=this.tail.substring(e)}return this.pos+=t.length,t};function se(i,e){this.view=i,this.cache={".":this.view},this.parent=e}se.prototype.push=function(i){return new se(i,this)},se.prototype.lookup=function(i){var e=this.cache,t;if(e.hasOwnProperty(i))t=e[i];else{for(var s=this,a,r,c,l=!1;s;){if(i.indexOf(".")>0)for(a=s.view,r=i.split("."),c=0;a!=null&&c<r.length;)c===r.length-1&&(l=Ae(a,r[c])||mt(a,r[c])),a=a[r[c++]];else a=s.view[i],l=Ae(s.view,i);if(l){t=a;break}s=s.parent}e[i]=t}return Ce(t)&&(t=t.call(this.view)),t};function $(){this.templateCache={_cache:{},set:function(i,e){this._cache[i]=e},get:function(i){return this._cache[i]},clear:function(){this._cache={}}}}$.prototype.clearCache=function(){typeof this.templateCache<"u"&&this.templateCache.clear()},$.prototype.parse=function(i,e){var t=this.templateCache,s=i+":"+(e||j.tags).join(":"),a=typeof t<"u",r=a?t.get(s):void 0;return r==null&&(r=Rt(i,e),a&&t.set(s,r)),r},$.prototype.render=function(i,e,t,s){var a=this.getConfigTags(s),r=this.parse(i,a),c=e instanceof se?e:new se(e,void 0);return this.renderTokens(r,c,t,i,s)},$.prototype.renderTokens=function(i,e,t,s,a){for(var r="",c,l,u,d=0,g=i.length;d<g;++d)u=void 0,c=i[d],l=c[0],l==="#"?u=this.renderSection(c,e,t,s,a):l==="^"?u=this.renderInverted(c,e,t,s,a):l===">"?u=this.renderPartial(c,e,t,a):l==="&"?u=this.unescapedValue(c,e):l==="name"?u=this.escapedValue(c,e,a):l==="text"&&(u=this.rawValue(c)),u!==void 0&&(r+=u);return r},$.prototype.renderSection=function(i,e,t,s,a){var r=this,c="",l=e.lookup(i[1]);function u(m){return r.render(m,e,t,a)}if(l){if(ae(l))for(var d=0,g=l.length;d<g;++d)c+=this.renderTokens(i[4],e.push(l[d]),t,s,a);else if(typeof l=="object"||typeof l=="string"||typeof l=="number")c+=this.renderTokens(i[4],e.push(l),t,s,a);else if(Ce(l)){if(typeof s!="string")throw new Error("Cannot use higher-order sections without the original template");l=l.call(e.view,s.slice(i[3],i[5]),u),l!=null&&(c+=l)}else c+=this.renderTokens(i[4],e,t,s,a);return c}},$.prototype.renderInverted=function(i,e,t,s,a){var r=e.lookup(i[1]);if(!r||ae(r)&&r.length===0)return this.renderTokens(i[4],e,t,s,a)},$.prototype.indentPartial=function(i,e,t){for(var s=e.replace(/[^ \t]/g,""),a=i.split(`
|
|
32
32
|
`),r=0;r<a.length;r++)a[r].length&&(r>0||!t)&&(a[r]=s+a[r]);return a.join(`
|
|
33
|
-
`)},$.prototype.renderPartial=function(i,e,t,s){if(t){var a=this.getConfigTags(s),r=
|
|
33
|
+
`)},$.prototype.renderPartial=function(i,e,t,s){if(t){var a=this.getConfigTags(s),r=Ce(t)?t(i[1]):t[i[1]];if(r!=null){var c=i[6],l=i[5],u=i[4],d=r;l==0&&u&&(d=this.indentPartial(r,u,c));var g=this.parse(d,a);return this.renderTokens(g,e,t,d,s)}}},$.prototype.unescapedValue=function(i,e){var t=e.lookup(i[1]);if(t!=null)return t},$.prototype.escapedValue=function(i,e,t){var s=this.getConfigEscape(t)||j.escape,a=e.lookup(i[1]);if(a!=null)return typeof a=="number"&&s===j.escape?String(a):s(a)},$.prototype.rawValue=function(i){return i[1]},$.prototype.getConfigTags=function(i){return ae(i)?i:i&&typeof i=="object"?i.tags:void 0},$.prototype.getConfigEscape=function(i){if(i&&typeof i=="object"&&!ae(i))return i.escape};var j={name:"mustache.js",version:"4.2.0",tags:["{{","}}"],clearCache:void 0,escape:void 0,parse:void 0,render:void 0,Scanner:void 0,Context:void 0,Writer:void 0,set templateCache(i){ue.templateCache=i},get templateCache(){return ue.templateCache}},ue=new $;j.clearCache=function(){return ue.clearCache()},j.parse=function(i,e){return ue.parse(i,e)},j.render=function(i,e,t,s){if(typeof i!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+pt(i)+'" was given as the first argument for mustache#render(template, view, partials)');return ue.render(i,e,t,s)},j.escape=St,j.Scanner=he,j.Context=se,j.Writer=$;const It={main:{template:`
|
|
34
34
|
{{#shouldShowAnswer}}
|
|
35
35
|
<div class="searchstax-answer-container">
|
|
36
36
|
<div class="searchstax-answer-title">Answer</div>
|
|
@@ -159,14 +159,14 @@ Check the top-level render call using <`+v+">.")}return p}}function tt(n,p){{if(
|
|
|
159
159
|
`,relatedSearchContainerClass:"searchstax-related-search-item"}},Mt={main:{template:`
|
|
160
160
|
{{#searchExecuted}}
|
|
161
161
|
<div class="searchstax-feedback-container">
|
|
162
|
-
{{#
|
|
162
|
+
{{#hasResults}}
|
|
163
163
|
Showing <b>{{startResultIndex}} - {{endResultIndex}}</b> of <b>{{totalResults}}</b> results {{#searchTerm}} for "<b>{{searchTerm}}</b>" {{/searchTerm}}
|
|
164
164
|
<div class="searchstax-feedback-container-suggested">
|
|
165
165
|
{{#autoCorrectedQuery}}
|
|
166
166
|
Search instead for <a href="#" class="searchstax-feedback-original-query">{{originalQuery}}</a>
|
|
167
167
|
{{/autoCorrectedQuery}}
|
|
168
168
|
</div>
|
|
169
|
-
{{/
|
|
169
|
+
{{/hasResults}}
|
|
170
170
|
</div>
|
|
171
171
|
{{/searchExecuted}}
|
|
172
172
|
`,originalQueryClass:"searchstax-feedback-original-query"}},At={mainTemplate:{template:`
|
|
@@ -263,4 +263,4 @@ Check the top-level render call using <`+v+">.")}return p}}function tt(n,p){{if(
|
|
|
263
263
|
</div>
|
|
264
264
|
{{/hasResultsOrExternalPromotions}}
|
|
265
265
|
{{/searchExecuted}}
|
|
266
|
-
`,selectId:"searchstax-search-order-select"}};class x{}h(x,"answer",It),h(x,"externalPromotions",Pt),h(x,"facets",jt),h(x,"pagination",Ft),h(x,"relatedSearches",Ot),h(x,"searchFeedback",Mt),h(x,"searchInput",At),h(x,"searchResults",Dt),h(x,"sorting",Nt);class _t{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"externalPromotionsContainerId"),h(this,"searchExternalPromotionsMainContainer",null);var t,s;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.externalPromotionsContainerId=((s=(t=this.config.templates)==null?void 0:t.mainTemplate)==null?void 0:s.externalPromotionsContainerId)||x.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,s,a,r;const c=document.getElementById(this.externalPromotionsContainerId);if(c){const l=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.externalPromotion)==null?void 0:a.template)||((r=x.externalPromotions.externalPromotion)==null?void 0:r.template),u=document.createElement("div");u.classList.add("searchstax-external-promotion"),u.addEventListener("click",d=>{this.trackClick(e,d)}),u.innerHTML=j.render(l,e),c.appendChild(u)}}trackClick(e,t){t.stopPropagation(),t.preventDefault(),window.open(e.url,"_blank")}renderMainTemplate(e){var t,s,a,r;const c=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.mainTemplate)==null?void 0:a.template)||((r=x.externalPromotions.mainTemplate)==null?void 0:r.template);if(this.dataLayer.renderingEngine===B.mustache){this.searchExternalPromotionsMainContainer.innerHTML=j.render(c,e);const l=document.getElementById(this.externalPromotionsContainerId);l&&(l.innerHTML="");for(const u of e.externalPromotions)this.addExternalSearch(u)}}}class Ht{constructor(e,t){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"routerHelper"),h(this,"cachedPhrase",""),h(this,"isCached",!1),h(this,"overlayOpened",!1),h(this,"facetPaginationStep"),h(this,"facetPaginationStepMobile"),h(this,"searchFacetsMainContainer",null),h(this,"searchFacetsMobileContainer",null),h(this,"searchFacetsDesktopContainer",null),h(this,"facetLimits",{}),h(this,"facetLimitsMobile",{}),h(this,"deactivatedFacets",{}),h(this,"cachedData",null),h(this,"cacheFacets"),h(this,"onFacetSelect",(s,a,r,c)=>{if(s.stopPropagation(),!a.disabled){const l=r.querySelector("input");l.checked=c?l.checked:!l.checked;const u=this.dataLayer.searchObject;let d=[...u.facets];const g=this.extractFacetValue(a);l.checked?d.find(m=>J.deepEqual(m,g)?m:!1)||(this.config.facetingType==="tabs"&&(d=d.filter(m=>m.name!==g.name)),d.push(g)):d=d.filter(m=>!J.deepEqual(m,g)),setTimeout(()=>{this.dataLayer.setSearchObject({...u,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 s=t?this.facetPaginationStepMobile:this.facetPaginationStep,a=t?this.facetLimits:this.facetLimitsMobile;return e.forEach(r=>{a[r.name]||(a[r.name]=s)}),e.map(r=>({...r,values:r.values.slice(0,a[r.name]),showingAllFacets:r.values.length<=a[r.name],hasMoreFacets:r.values.length>s}))}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(a=>{var r;const c=(r=this.dataLayer.searchFacets)==null?void 0:r.find(l=>l.name===a.name);return c?{...a,values:a.values.map(l=>{const u=c.values.find(d=>l.type==="range"?!1:l.type==="checkbox"?d.value===l.value:!1);return{...l,disabled:!u,isMobile:e}})}:{...a,values:a.values.map(l=>({...l,disabled:!0})),isMobile:e}}))),this.config.specificFacets&&(t=t.filter(a=>{var r;return(r=this.config.specificFacets)==null?void 0:r.includes(a.name)}));const s={facets:this.applyFacetLimits(t,e),...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(s),s}else{const t={facets:[],...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(t),t}}createFacetItem(e,t,s){var a,r,c,l,u,d,g,m,y,k,O,R;const T=document.createElement("div");T.classList.add("searchstax-facet-container"),this.deactivatedFacets[e.name]||T.classList.add("active");const P=((c=(r=(a=this.config)==null?void 0:a.templates)==null?void 0:r.facetItemContainerTemplate)==null?void 0:c.template)||((l=x.facets.facetItemContainerTemplate)==null?void 0:l.template);T.innerHTML=j.render(P,e),t.appendChild(T);const L=T.querySelector("."+(((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.facetItemContainerTemplate)==null?void 0:g.facetListTitleContainerClass)||((m=x.facets.facetItemContainerTemplate)==null?void 0:m.facetListTitleContainerClass)));L==null||L.addEventListener("click",()=>{T.classList.toggle("active")});const _=T.querySelector("."+(((O=(k=(y=this.config)==null?void 0:y.templates)==null?void 0:k.facetItemContainerTemplate)==null?void 0:O.facetListContainerClass)||((R=x.facets.facetItemContainerTemplate)==null?void 0:R.facetListContainerClass)));_&&(e.values.forEach(V=>{this.createFacetListItem(V,_)}),e.hasMoreFacets&&this.createHasMoreComponent(e,_,s))}isChecked(e){var t;return!!((t=this.dataLayer.searchObject.facets)!=null&&t.find(s=>J.deepEqual(s,this.extractFacetValue(e))))}createFacetListItem(e,t){var s,a,r,c,l,u,d,g,m,y,k,O,R;const T=document.createElement("div");T.classList.add("searchstax-facet-value-container"),e.disabled&&T.classList.add("searchstax-facet-value-disabled");const P=this.isChecked(e),L=((r=(a=(s=this.config)==null?void 0:s.templates)==null?void 0:a.facetItemTemplate)==null?void 0:r.template)||((c=x.facets.facetItemTemplate)==null?void 0:c.template);T.innerHTML=j.render(L,{...e,isChecked:P});let _=(l=x.facets.facetItemTemplate)==null?void 0:l.checkTriggerClasses;_=((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.facetItemTemplate)==null?void 0:g.checkTriggerClasses)||_,_.forEach(V=>{var D;(D=T.querySelector("."+V))==null||D.addEventListener("click",Q=>{this.onFacetSelect(Q,e,T)})}),(R=T.querySelector("."+(((k=(y=(m=this.config)==null?void 0:m.templates)==null?void 0:y.facetItemTemplate)==null?void 0:k.inputCheckboxClass)||((O=x.facets.facetItemTemplate)==null?void 0:O.inputCheckboxClass))))==null||R.addEventListener("click",V=>{this.onFacetSelect(V,e,T,!0)}),t.appendChild(T)}createHasMoreComponent(e,t,s){var a,r,c,l,u,d,g,m;const y=document.createElement("div");y.classList.add("searchstax-facet-show-more-container");const k=((c=(r=(a=this.config)==null?void 0:a.templates)==null?void 0:r.showMoreButtonContainerTemplate)==null?void 0:c.template)||((l=x.facets.showMoreButtonContainerTemplate)==null?void 0:l.template);y.innerHTML=j.render(k,e);const O=y.querySelector("."+(((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.showMoreButtonContainerTemplate)==null?void 0:g.showMoreButtonClass)||((m=x.facets.showMoreButtonContainerTemplate)==null?void 0:m.showMoreButtonClass)));O&&(this.attachOnclickToShowMore(e,O,s),t&&t.appendChild(O))}attachOnclickToShowMore(e,t,s){t.addEventListener("click",a=>{this.onShowMoreLessClick(a,e,s)})}onShowMoreLessClick(e,t,s){e.preventDefault();const a=s?this.facetPaginationStepMobile:this.facetPaginationStep,r=s?this.facetLimits:this.facetLimitsMobile;r[t.name]===void 0?r[t.name]=a*2:r[t.name]<=t.values.length?r[t.name]=r[t.name]+a:r[t.name]=a,this.generateTemplateData(s),this.renderMainTemplate(this.generateTemplateData())}renderMainTemplate(e,t){var s,a,r,c,l,u,d,g,m,y,k;if(e&&(!J.deepEqual(this.cachedData??{},e)||t)){this.cachedData=e;const O=((r=(a=(s=this.config)==null?void 0:s.templates)==null?void 0:a.mainTemplateDesktop)==null?void 0:r.template)||((c=x.facets.mainTemplateDesktop)==null?void 0:c.template);if(this.dataLayer.renderingEngine===B.mustache&&this.searchFacetsMainContainer){this.searchFacetsMainContainer.innerHTML=j.render(O,{...e});const R=(g=this.searchFacetsMainContainer)==null?void 0:g.querySelector("."+(((d=(u=(l=this.config)==null?void 0:l.templates)==null?void 0:u.mainTemplateDesktop)==null?void 0:d.facetsContainerClass)||x.facets.mainTemplateDesktop.facetsContainerClass));if(R){R.innerHTML="";for(const T of e.facets)this.createFacetItem(T,R);if(this.searchFacetsMainContainer){const T=this.searchFacetsMainContainer.querySelector("."+(((k=(y=(m=this.config)==null?void 0:m.templates)==null?void 0:y.mainTemplateDesktop)==null?void 0:k.selectedFacetsContainerClass)||x.facets.mainTemplateDesktop.selectedFacetsContainerClass));T&&(this.createSelectedFacetsComponents(T),this.createClearFacetsComponents(T))}}}this.renderMobileTemplate(this.generateTemplateData(!0))}else this.generateSelectedFacetsData()}generateSelectedFacetsData(){const e=[],t=this.dataLayer.searchObject.facets;for(const s of t){const a=decodeURIComponent(s.name),r=decodeURIComponent(s.value);if(this.dataLayer.searchFacets){const c=this.needCache?this.dataLayer.searchFacetsCached:this.dataLayer.searchFacets,l=c==null?void 0:c.find(u=>u.name===a);if(l){const u=l.values.find(d=>d.type==="range"?!1:d.type==="checkbox"?`"${d.value}"`==`"${r}"`:!1);u&&e.push(u)}}}this.dataLayer.setSelectedFacetsTemplateData(e)}createSelectedFacetsComponents(e){var t;this.generateSelectedFacetsData(),(t=this.dataLayer.selectedFacetsTemplateData)==null||t.forEach(s=>{this.createSelectedFacetsComponent(e,s)})}createClearFacetsComponents(e){var t,s,a,r,c,l,u,d;const g=this.dataLayer.searchObject,m=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.clearFacetsTemplate)==null?void 0:a.template)||((r=x.facets.clearFacetsTemplate)==null?void 0:r.template),y=document.createElement("div");y.innerHTML=j.render(m,{shouldShow:g.facets.length>0});const k=y.querySelector("."+(((u=(l=(c=this.config)==null?void 0:c.templates)==null?void 0:l.clearFacetsTemplate)==null?void 0:u.containerClass)||((d=x.facets.clearFacetsTemplate)==null?void 0:d.containerClass)));k&&(k.addEventListener("click",()=>{this.removeSelectedFacets()}),e.appendChild(k))}createSelectedFacetsComponent(e,t){var s,a,r,c,l,u,d,g;const m=((r=(a=(s=this.config)==null?void 0:s.templates)==null?void 0:a.selectedFacetsTemplate)==null?void 0:r.template)||((c=x.facets.selectedFacetsTemplate)==null?void 0:c.template),y=document.createElement("div");y.innerHTML=j.render(m,t);const k=y.querySelector("."+(((d=(u=(l=this.config)==null?void 0:l.templates)==null?void 0:u.selectedFacetsTemplate)==null?void 0:d.containerClass)||((g=x.facets.selectedFacetsTemplate)==null?void 0:g.containerClass)));k&&(k.addEventListener("click",()=>{this.unselectFacet(t)}),e.appendChild(k))}unselectFacet(e){const t=this.dataLayer.searchObject;let s=[...t.facets];e.type==="checkbox"&&(s=s.filter(a=>JSON.stringify(a)!==JSON.stringify(this.extractFacetValue(e)))),setTimeout(()=>{this.dataLayer.setSearchObject({...t,facets:s}),this.generateSelectedFacetsData()},0)}removeSelectedFacets(){const e=this.dataLayer.searchObject;this.dataLayer.setSearchObject({...e,facets:[]})}createFilterByComponent(e){var t,s,a,r,c,l,u,d;const g=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.filterByTemplate)==null?void 0:a.template)||((r=x.facets.filterByTemplate)==null?void 0:r.template),m=document.createElement("div");m.innerHTML=j.render(g,{});const y=m.querySelector("."+(((u=(l=(c=this.config)==null?void 0:c.templates)==null?void 0:l.filterByTemplate)==null?void 0:u.containerClass)||((d=x.facets.filterByTemplate)==null?void 0:d.containerClass)));y&&(e.prepend(y),y.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,s,a,r,c,l,u,d,g,m,y,k,O,R,T,P,L,_,V;if(e){const D=document.createElement("div");D.classList.add("searchstax-facets-container-mobile");const Q=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.mainTemplateMobile)==null?void 0:a.template)||((r=x.facets.mainTemplateMobile)==null?void 0:r.template);if(this.dataLayer.renderingEngine===B.mustache){if(D.innerHTML=j.render(Q,{...e,overlayOpened:this.overlayOpened}),(c=this.searchFacetsMainContainer)==null||c.appendChild(D),(u=(l=this.config)==null?void 0:l.templates)!=null&&u.mainTemplateMobile)for(const H of((m=(g=(d=this.config)==null?void 0:d.templates)==null?void 0:g.mainTemplateMobile)==null?void 0:m.closeOverlayTriggerClasses)||[]){const Z=D.querySelector("."+H);Z&&Z.addEventListener("click",this.closeOverlay.bind(this))}else for(const H of x.facets.mainTemplateMobile.closeOverlayTriggerClasses){const Z=D.querySelector("."+H);Z&&Z.addEventListener("click",this.closeOverlay.bind(this))}const f=D.querySelector("."+(((O=(k=(y=this.config)==null?void 0:y.templates)==null?void 0:k.mainTemplateMobile)==null?void 0:O.filterByContainerClass)||x.facets.mainTemplateMobile.filterByContainerClass));f&&this.createFilterByComponent(f);const b=D.querySelector("."+(((P=(T=(R=this.config)==null?void 0:R.templates)==null?void 0:T.mainTemplateMobile)==null?void 0:P.selectedFacetsContainerClass)||x.facets.mainTemplateMobile.selectedFacetsContainerClass));b&&(this.createSelectedFacetsComponents(b),this.createClearFacetsComponents(b));const M=D.querySelector("."+(((V=(_=(L=this.config)==null?void 0:L.templates)==null?void 0:_.mainTemplateMobile)==null?void 0:V.facetsContainerClass)||x.facets.mainTemplateMobile.facetsContainerClass));if(M){M.innerHTML="";for(const H of e.facets)this.createFacetItem(H,M,!0)}}}}}class Wt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"previousButtonClass"),h(this,"nextButtonClass"),h(this,"loadMoreButtonClass"),h(this,"routerHelper"),h(this,"searchPaginationMainContainer",null);var t,s,a,r,c,l,u,d,g;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.previousButtonClass=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.mainTemplate)==null?void 0:a.previousButtonClass)??x.pagination.mainTemplate.previousButtonClass,this.nextButtonClass=((l=(c=(r=this.config)==null?void 0:r.templates)==null?void 0:c.mainTemplate)==null?void 0:l.nextButtonClass)??x.pagination.mainTemplate.nextButtonClass,this.loadMoreButtonClass=((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:g.loadMoreButtonClass)??x.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,s,a;const r={...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:(a=this.routerHelper)==null?void 0:a.searchObjectToUrl({...this.dataLayer.searchObject,page:((s=this.dataLayer.searchObject)==null?void 0:s.page)+1})};return this.dataLayer.setPaginationData(r),r}goToPage(e,t){const s=this.dataLayer.searchObject;s&&(s.page=e,this.dataLayer.setSearchObject(s)),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),s=this.searchPaginationMainContainer.querySelector("."+this.loadMoreButtonClass);e&&e.addEventListener("click",this.previousPage.bind(this)),t&&t.addEventListener("click",this.nextPage.bind(this)),s&&s.addEventListener("click",this.nextPage.bind(this))}}renderMainTemplate(e){var t,s,a,r,c,l,u,d,g,m;this.searchPaginationMainContainer&&((t=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass))==null||t.removeEventListener("click",this.previousPage),(s=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass))==null||s.removeEventListener("click",this.nextPage));let y=((c=(r=(a=this.config)==null?void 0:a.templates)==null?void 0:r.mainTemplate)==null?void 0:c.template)||((l=x.pagination.mainTemplate)==null?void 0:l.template);this.dataLayer.isInfiniteScroll&&(y=((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:g.template)||((m=x.pagination.infiniteScrollTemplate)==null?void 0:m.template)),this.dataLayer.renderingEngine===B.mustache&&(this.searchPaginationMainContainer.innerHTML=j.render(y,e),setTimeout(()=>{this.overridePaginationEvents()},0))}}class qt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"relatedSearchesContainerClass"),h(this,"searchRelatedSearchesMainContainer",null),h(this,"track");var t,s;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.relatedSearchesContainerClass=((s=(t=this.config.templates)==null?void 0:t.main)==null?void 0:s.relatedSearchesContainerClass)||x.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 s,a,r,c,l;const u=document.createElement("div"),d=((r=(a=(s=this.config)==null?void 0:s.templates)==null?void 0:a.relatedSearch)==null?void 0:r.template)||x.relatedSearches.relatedSearch.template;if(this.dataLayer.renderingEngine===B.mustache){u.innerHTML=j.render(d,e);const g=u.querySelector("."+(((l=(c=this.config.templates)==null?void 0:c.relatedSearch)==null?void 0:l.relatedSearchContainerClass)||x.relatedSearches.relatedSearch.relatedSearchContainerClass));g&&(t.appendChild(g),g.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,s,a,r;const c=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.main)==null?void 0:a.template)||x.relatedSearches.main.template;if(this.dataLayer.renderingEngine===B.mustache&&this.searchRelatedSearchesMainContainer){this.searchRelatedSearchesMainContainer.innerHTML="",this.searchRelatedSearchesMainContainer.innerHTML=j.render(c,e);const l=(r=this.searchRelatedSearchesMainContainer)==null?void 0:r.querySelector(`.${this.relatedSearchesContainerClass}`);if(l)for(const u of e.relatedSearches)this.addRelatedSearchComponent(u,l)}}}class Bt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"searchFeedbackMainContainer",null),h(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 s=(t=e.target)==null?void 0:t.innerHTML;this.searchTrigger(s,!0)}attachClick(){var e,t,s,a,r;const c=(r=this.searchFeedbackMainContainer)==null?void 0:r.querySelector("."+(((s=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.main)==null?void 0:s.originalQueryClass)||((a=x.searchFeedback.main)==null?void 0:a.originalQueryClass)));c&&c.addEventListener("click",this.onOriginalQueryClick.bind(this))}renderMainTemplate(e){var t,s,a;const r=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.main)==null?void 0:a.template)||x.searchFeedback.main.template;this.dataLayer.renderingEngine===B.mustache&&(this.searchFeedbackMainContainer.innerHTML=j.render(r,e),setTimeout(()=>{this.attachClick()},0))}}class Vt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"suggestAfterMinChars"),h(this,"containerId"),h(this,"currentInputValue",""),h(this,"autosuggestResults"),h(this,"searchInput"),h(this,"actionButton"),h(this,"autosuggestContainer"),h(this,"buttonState","search"),h(this,"selectedAutosuggestItem",-1),h(this,"suggestTrigger"),h(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,s,a;const r=document.getElementById(this.containerId);if(!r)throw new Error("Search input container not found");const c=((t=(e=this.config.templates)==null?void 0:e.mainTemplate)==null?void 0:t.template)||x.searchInput.mainTemplate.template;if(this.dataLayer.renderingEngine===B.mustache){const d=j.render(c,{});r.innerHTML=d}const l=((a=(s=this.config.templates)==null?void 0:s.mainTemplate)==null?void 0:a.searchInputId)||x.searchInput.mainTemplate.searchInputId,u=document.querySelector(`#${l}`);if(u)this.searchInput=u,u.addEventListener("keyup",this.inputKeyupEvent.bind(this)),u.addEventListener("blur",this.hideAutosuggest.bind(this)),u.addEventListener("paste",this.inputPasteEvent.bind(this));else throw new Error("Input not found")}createAutosuggestContainer(){var e;this.dataLayer.renderingEngine===B.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 s=e[t];t===this.selectedAutosuggestItem?s.classList.add("active"):s.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 X.removeXSSRiskyTags(e.replace(/(<([^>]+)>)/gi,"")).trim()}autosuggestItemClicked(e){this.searchInput.value=this.cleanSuggestionTerm(e.term??""),this.executeSearch(this.cleanSuggestionTerm(e.term))}createAutosuggestItem(e){var t,s,a;const r=document.createElement("div");r.classList.add("searchstax-autosuggest-item"),r.addEventListener("click",()=>{this.autosuggestItemClicked(e)}),r.addEventListener("mouseenter",()=>{this.onSuggestionEnter(e)});const c=((s=(t=this.config.templates)==null?void 0:t.autosuggestItemTemplate)==null?void 0:s.template)||((a=x.searchInput.autosuggestItemTemplate)==null?void 0:a.template);return r.innerHTML=j.render(c,e),r}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 s=e.suggest[t];for(const a in s)if(Object.prototype.hasOwnProperty.call(s,a)){const r=s[a];this.autosuggestResults=r,this.dataLayer.setAutosuggestResults(r),r.numFound>0?r.suggestions.forEach(c=>{this.autosuggestContainer&&this.autosuggestContainer.appendChild(this.createAutosuggestItem(c))}):this.autosuggestContainer&&this.autosuggestContainer.classList.add("hidden")}}}}class $t{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"linkClickCallback"),h(this,"searchCallback"),h(this,"containerId"),h(this,"searchResultsMainContainer"),h(this,"searchResultsContainer"),h(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,s,a,r;const c=((s=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.noSearchResultTemplate)==null?void 0:s.template)||((a=x.searchResults.noSearchResultTemplate)==null?void 0:a.template),l=((r=this.dataLayer.searchResultsMetadata)==null?void 0:r.spellingSuggestion)??"";if(this.dataLayer.renderingEngine===B.mustache&&this.searchResultsContainer&&(this.searchResultsContainer.innerHTML=j.render(c,{spellingSuggestion:l,searchTerm:this.dataLayer.searchTerm})),l&&this.searchResultsContainer){const u=this.searchResultsContainer.querySelector("a");u&&u.addEventListener("click",d=>{d.preventDefault(),d.stopPropagation(),this.searchCallback(l)})}}renderResults(e){var t,s,a,r,c;if(this.dataLayer.renderingEngine===B.mustache&&this.searchResultsContainer)if(this.removeLinkClickEvents(),e.length===0)this.renderNoResultsTemplate();else{const l=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.searchResultTemplate)==null?void 0:a.template)||((r=x.searchResults.searchResultTemplate)==null?void 0:r.template),u=e.map(d=>j.render(l,d));((c=this.config)==null?void 0:c.renderMethod)==="infiniteScroll"&&this.dataLayer.searchObject.page>1?this.searchResultsContainer.innerHTML+=u.join(""):this.searchResultsContainer.innerHTML=u.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,s,a;return((s=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.searchResultTemplate)==null?void 0:s.searchResultUniqueIdAttribute)||((a=x.searchResults.searchResultTemplate)==null?void 0:a.searchResultUniqueIdAttribute)}attachLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();const s=e.getAttribute(this.uniqueIdAttribute)??"";s&&this.linkClickCallback(s)})})}renderMainTemplate(){var e,t,s,a;const r=((s=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.mainTemplate)==null?void 0:s.template)||((a=x.searchResults.mainTemplate)==null?void 0:a.template);this.dataLayer.renderingEngine===B.mustache&&(this.searchResultsMainContainer.innerHTML=j.render(r,{}),setTimeout(()=>{var c,l,u,d,g,m,y;const k=(u=(l=(c=this.config)==null?void 0:c.templates)==null?void 0:l.mainTemplate)!=null&&u.searchResultsContainerId?(m=(g=(d=this.config)==null?void 0:d.templates)==null?void 0:g.mainTemplate)==null?void 0:m.searchResultsContainerId:(y=x.searchResults.mainTemplate)==null?void 0:y.searchResultsContainerId,O=document.getElementById(k);if(O)this.searchResultsContainer=O;else throw new Error(`Search Results Container with id ${k} not found`)},0))}}class Ut{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"selectId"),h(this,"searchSortingMainContainer",null);var t,s;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.selectId=((s=(t=this.config.templates)==null?void 0:t.main)==null?void 0:s.selectId)||x.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,s,a;const r=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.main)==null?void 0:a.template)||x.sorting.main.template;if(this.dataLayer.renderingEngine===B.mustache){this.searchSortingMainContainer.innerHTML=j.render(r,e),this.markOptionSelected();const c=document.getElementById(this.selectId);c&&c.addEventListener("change",l=>{this.setOrderQuery(l.target.value)})}}}class Qt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(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,s,a;const r=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.main)==null?void 0:a.template)||x.answer.main.template;this.dataLayer.renderingEngine===B.mustache&&(this.answerContainer.innerHTML=j.render(r,e))}}class Kt{constructor(e=B.mustache){h(this,"routerEnabled",!1),h(this,"cachedQuery",""),h(this,"routerHelper"),h(this,"searchHelper"),h(this,"searchResultsConfig"),h(this,"searchPaginationConfig"),h(this,"searchFeedbackConfig"),h(this,"searchSortingConfig"),h(this,"searchFacetsConfig"),h(this,"relatedSearchesConfig"),h(this,"externalPromotionsConfig"),h(this,"searchInputWidget"),h(this,"searchResultsWidget"),h(this,"searchFacetsWidget"),h(this,"searchPaginationWidget"),h(this,"searchFeedbackWidget"),h(this,"searchSortingWidget"),h(this,"relatedSearchesWidget"),h(this,"externalPromotionsWidget"),h(this,"answerWidget"),h(this,"dataLayer"),h(this,"firstRequest",!0),this.dataLayer=new ht("searchstax_session_id"),e&&this.dataLayer.setRenderingEngine(e),this.handleHooks()}setRenderingEngine(e=B.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(s=>{this.dataLayer.searchstaxConfig.hooks.afterSearch(s)}),this.dataLayer.$searchObject.subscribe(s=>{var a;s.query!==""&&s.query!==void 0&&s.query!=="undefined"&&(this.search(s),this.dataLayer.turnAIAnswerGenerationOn===!0&&((a=this.searchHelper)==null||a.startSSE(s.query,this.parseAnswerResultsResponse.bind(this))))}),this.dataLayer.$searchResults.subscribe(s=>{s&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&oe.trackSearch({...this.dataLayer.parsedData.trackingData,impressions:this.dataLayer.searchResultsMetadata.impressions})})}initialize(e){var t,s;e.turnAIAnswerGenerationOn===!0&&(this.dataLayer.turnAIAnswerGenerationOn=!0),e.autoCorrect===!1&&(this.dataLayer.autoCorrect=!1),this.dataLayer.searchstaxConfig||(this.dataLayer.setSearchstaxConfig(e),this.searchHelper=new dt({...e,sessionId:this.dataLayer.sessionId},this.dataLayer)),((t=e.router)==null?void 0:t.enabled)===void 0||((s=e.router)==null?void 0:s.enabled)===!0?(this.routerEnabled=!0,this.routerHelper=new Me(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 Me({})}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 s=(((t=e.response)==null?void 0:t.docs)??[]).map((r,c)=>({...r,position:c+1})),a=[];for(const r of s)a.push({relatedSearch:r.related_search,position:r.position});this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&oe.trackRelatedSearches({...this.dataLayer.parsedData.trackingData,impressions:a}),this.dataLayer.setSearchRelatedSearches(s)}handleRouter(){if(this.routerEnabled){const e={...this.dataLayer.searchObject};this.dataLayer.isInfiniteScroll&&delete e.page,this.routerHelper.updateUrl(e)}}parseSearchResultsResponse(e){var t,s;this.handleRouter();let a=le.combineResultsWithMetadata(e),r=le.extractFacets(e);this.dataLayer.setSearchFacets(r),(s=(t=this.dataLayer.searchstaxConfig)==null?void 0:t.hooks)!=null&&s.afterSearch&&(a=this.dataLayer.searchstaxConfig.hooks.afterSearch(a)),this.dataLayer.setSearchExternalPromotions(e.externalLinks??[]);const c=le.extractSearchResultsMetadata(e);this.dataLayer.setSearchResultsMetadata(c),this.dataLayer.setSearchResults(a)}parseAnswerResultsResponse(e){this.handleRouter(),e!==te.question&&e!==te.notQuestion&&this.dataLayer.setAnswerData(this.dataLayer.getAnswerData+e)}cacheFacets(){var e;(e=this.searchHelper)==null||e.cacheFacets()}parseSuggestSuggestResponse(e){var t,s;let a=e;(s=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&s.afterAutosuggest&&(a=this.dataLayer.searchInputConfig.hooks.afterAutosuggest(e)),this.dataLayer.setSearchAutosuggest(a)}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 Vt({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 Qt({containerId:e,config:t,dataLayer:this.dataLayer})}addSearchResultsWidget(e,t){this.searchResultsConfig||(this.searchResultsConfig=t,this.searchResultsWidget=new $t({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 Wt({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper})}addSearchFeedbackWidget(e,t){this.searchFeedbackConfig||(this.searchFeedbackConfig=t,this.searchFeedbackWidget=new Bt({containerId:e,config:t,dataLayer:this.dataLayer,searchTrigger:this.executeSearch.bind(this)}))}addSearchSortingWidget(e,t){this.searchSortingConfig||(this.searchSortingConfig=t,this.searchSortingWidget=new Ut({containerId:e,config:t,dataLayer:this.dataLayer}))}addRelatedSearchesWidget(e,t){this.relatedSearchesConfig||(this.relatedSearchesConfig=t,this.relatedSearchesWidget=new qt({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 _t({containerId:e,config:t,dataLayer:this.dataLayer}))}addFacetsWidget(e,t){this.searchFacetsConfig=t,this.searchFacetsWidget=new Ht({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper},this.cacheFacets.bind(this))}executeSearch(e,t){var s,a;const r={...this.dataLayer.searchObject};r.query=X.removeXSSRiskyTags(e),r.page=1,r.facets=[],this.dataLayer.forceNotCorrect=!!t;let c=(s=this.routerHelper)==null?void 0:s.searchObjectToParams(r);c&&(c=(a=this.routerHelper)==null?void 0:a.extractParamsThatDoNotStartWithRouteName(c)),c&&(r.additionalProps=Object.keys(c).map(l=>c?{key:l,value:c[l]}:{key:"",value:""})),this.dataLayer.setSearchObject(r),this.dataLayer.lastSearchValue=r.query}executeSuggest(e){var t,s;let a={term:e,queryParams:[]};(s=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&s.beforeAutosuggest&&(a=this.dataLayer.searchInputConfig.hooks.beforeAutosuggest(a)),a&&a.term!==void 0&&a.queryParams!==void 0&&this.suggest(a.term,a.queryParams)}trackRelatedSearchClick(e){this.dataLayer.searchResultsMetadata&&this.dataLayer.searchRelatedSearches&&!this.dataLayer.cookiesDisabled&&oe.trackRelatedSearchClick({...this.dataLayer.parsedData.trackingData,relatedSearch:e})}executeLinkClick(e){var t,s;let a=le.findResultByUniqueId(e,this.dataLayer.searchResults??[]);a&&((s=(t=this.searchResultsConfig)==null?void 0:t.hooks)!=null&&s.afterLinkClick&&(a=this.searchResultsConfig.hooks.afterLinkClick(a)),a&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&(oe.trackClick({result:a,...this.dataLayer.parsedData.trackingData}),setTimeout(()=>{window.location.href=(a==null?void 0:a.url)??""},0)))}setPage(e){var t;(t=this.searchPaginationWidget)==null||t.goToPage(e)}setCookiesDisabled(e){this.dataLayer.setCookiesDisabled(e)}changeResultTemplate(e){var t,s,a;this.searchResultsConfig&&(this.searchResultsConfig.templates=(t=this.searchResultsConfig)!=null&&t.templates?{...(s=this.searchResultsConfig)==null?void 0:s.templates,...e}:e,(a=this.searchResultsWidget)==null||a.changeTemplate())}}const C={searchstax:new Kt("react")};function zt(i){let e=!1;const[t,s]=w.useState([]);w.useEffect(()=>{if(a(),C.searchstax){const u={};i.afterAutosuggest&&(u.afterAutosuggest=i.afterAutosuggest),i.beforeAutosuggest&&(u.beforeAutosuggest=i.beforeAutosuggest),C.searchstax.addSearchInputWidget("searchstax-input-container",{suggestAfterMinChars:i.suggestAfterMinChars??3,hooks:u,templates:{mainTemplate:{template:"",searchInputId:i.searchInputId??"searchstax-search-input"}}})}else throw Error("Searchstax instance needs to be passed via props")},[]);function a(){e||(C.searchstax.dataLayer.$autosuggestResults.subscribe(u=>{s((u==null?void 0:u.suggestions)??[])}),e=!0)}function r(){var u,d;(u=C.searchstax.searchInputWidget)==null||u.resetAutosuggestSelection(),(d=C.searchstax.searchInputWidget)==null||d.markActiveAutosuggestItem()}function c(u){var d;(d=C.searchstax.searchInputWidget)==null||d.onSuggestionEnter(u)}function l(){var u;(u=C.searchstax.searchInputWidget)==null||u.suggestionChosen()}return o.jsx(o.Fragment,{children:o.jsx("div",{id:"searchstax-input-container",children:o.jsxs("div",{className:"searchstax-search-input-container",children:[!i.inputTemplate&&o.jsxs("div",{className:"searchstax-search-input-wrapper",children:[o.jsx("input",{type:"text",id:"searchstax-search-input",className:"searchstax-search-input",placeholder:"SEARCH FOR..."}),o.jsx("div",{className:`searchstax-autosuggest-container ${t.length===0?"hidden":""}`,onMouseLeave:r,children:t.map(function(u){return o.jsx("div",{className:"searchstax-autosuggest-item",children:o.jsx("div",{className:"searchstax-autosuggest-item-term-container",dangerouslySetInnerHTML:{__html:u.term},onMouseOver:()=>{c(u)},onClick:()=>{l()}})},u.term)})}),o.jsx("button",{className:"searchstax-spinner-icon",id:"searchstax-search-input-action-button"})]}),i.inputTemplate&&o.jsx(o.Fragment,{children:i.inputTemplate(t,r,c,l)})]})})})}function Jt(i){return w.useEffect(()=>{const e={};i.beforeSearch&&(e.beforeSearch=i.beforeSearch),i!=null&&i.afterSearch&&(e.afterSearch=i.afterSearch),C.searchstax.initialize({language:i.language??"en",searchURL:i.searchURL,suggesterURL:i.suggesterURL,trackApiKey:i.trackApiKey,searchAuth:i.searchAuth,authType:i.authType??"basic",autoCorrect:i.autoCorrect,router:i.router,hooks:e}),i.initialized(C.searchstax)},[i.initialized]),o.jsx(o.Fragment,{children:i.children})}function Yt(i){const[e,t]=w.useState(null),s=w.useRef();s.current=e;const[a,r]=w.useState(""),[c,l]=w.useState(null),u=(g,m)=>{m.preventDefault(),m.stopPropagation(),C.searchstax.executeLinkClick(g.uniqueId)};w.useEffect(()=>{d();const g={};i.afterLinkClick&&(g.afterLinkClick=i.afterLinkClick),C.searchstax.addSearchResultsWidget("searchstax-results-container",{templates:{},resultsPerPage:i.resultsPerPage??10,renderMethod:i.renderMethod??"pagination",hooks:g})},[]);function d(){C.searchstax.dataLayer.$searchResults.subscribe(g=>{var O;const m=s.current??[],y=g??[],k=i.renderMethod==="infiniteScroll"?[...m,...y]:g;((O=C.searchstax.dataLayer.$searchObject.value)==null?void 0:O.page)===1?t(y):t(k)}),C.searchstax.dataLayer.$searchTermChange.subscribe(g=>{r(g)}),C.searchstax.dataLayer.$searchResultsMetadata.subscribe(g=>{l(g)})}return o.jsx(o.Fragment,{children:o.jsx("div",{id:"searchstax-results-container",children:o.jsx("div",{className:"searchstax-search-results-container",children:o.jsxs("div",{id:"searchstax-result-container",children:[e&&e.length===0&&a!==""&&a!=="*"&&!i.noResultTemplate&&o.jsxs("div",{children:[o.jsxs("div",{className:"searchstax-no-results",children:[" ","Showing ",o.jsx("strong",{children:"no results"})," for"," ",o.jsxs("strong",{children:['"',a,'"']}),o.jsx("br",{}),(c==null?void 0:c.spellingSuggestion)&&o.jsxs("span",{children:[" Did you mean"," ",o.jsx("a",{href:"#",className:"searchstax-suggestion-term",children:c==null?void 0:c.spellingSuggestion}),"?"]})]}),o.jsxs("div",{children:[o.jsxs("p",{children:[" ","Try searching for search related terms or topics. We offer a wide variety of content to help you get the information you need."," "]}),o.jsx("p",{children:"Lost? Click on the ‘X” in the Search Box to reset your search."})]})]}),e&&e.length===0&&a!==""&&a!=="*"&&i.noResultTemplate&&o.jsx(o.Fragment,{children:i.noResultTemplate(a,c)}),e&&e.length>0&&!i.resultsTemplate&&o.jsx("div",{className:"searchstax-search-results",children:e!==null&&e.map(function(g){return o.jsxs("div",{className:`searchstax-search-result ${g.thumbnail?"has-thumbnail":""}`,children:[g.promoted&&o.jsx("div",{className:"searchstax-search-result-promoted"}),g.url&&o.jsx("a",{href:g.url,"data-searchstax-unique-result-id":g.uniqueId,onClick:m=>{u(g,m)},className:"searchstax-result-item-link"}),g.ribbon&&o.jsx("div",{className:"searchstax-search-result-ribbon",children:g.ribbon}),g.thumbnail&&o.jsx("img",{src:g.thumbnail,className:"searchstax-thumbnail"}),o.jsx("div",{className:"searchstax-search-result-title-container",children:o.jsx("span",{className:"searchstax-search-result-title",children:g.title})}),g.paths&&o.jsx("p",{className:"searchstax-search-result-common",children:g.paths}),g.description&&o.jsx("p",{className:"searchstax-search-result-description searchstax-search-result-common",children:g.description}),g.unmappedFields.map(function(m){return o.jsxs("div",{children:[m.isImage&&typeof m.value=="string"&&o.jsx("div",{className:"searchstax-search-result-image-container",children:o.jsx("img",{src:m.value,className:"searchstax-result-image"})}),!m.isImage&&o.jsx("div",{children:o.jsx("p",{className:"searchstax-search-result-common",children:m.value})})]},m.key)})]},g.uniqueId)})}),e&&e.length>0&&i.resultsTemplate&&o.jsx(o.Fragment,{children:i.resultsTemplate(e,u)})]})})})})}function Gt(i){let e=!1;const[t,s]=w.useState(!1),[a,r]=w.useState(null),[c]=w.useState(Math.random());w.useEffect(()=>{if(l(),C.searchstax)C.searchstax.addPaginationWidget("searchstax-pagination-container"+c,{});else throw Error("Searchstax instance needs to be passed via props")},[]);function l(){e||(C.searchstax.dataLayer.$searchObject.subscribe(()=>{u()}),C.searchstax.dataLayer.$paginationData.subscribe(m=>{r(m)}),e=!0)}function u(){!t&&C.searchstax.routerHelper&&(s(!0),C.searchstax.addPaginationWidget("searchstax-pagination-container"+c,{}))}function d(m){var y;(y=C.searchstax.searchPaginationWidget)==null||y.nextPage(m)}function g(m){var y;(y=C.searchstax.searchPaginationWidget)==null||y.previousPage(m)}return o.jsx(o.Fragment,{children:o.jsxs("div",{id:"searchstax-pagination-container"+c,children:[!i.paginationTemplate&&a&&!a.isInfiniteScroll&&(a==null?void 0:a.totalResults)!==0&&o.jsx("div",{className:"searchstax-pagination-container",children:o.jsxs("div",{className:"searchstax-pagination-content",children:[o.jsxs("a",{className:"searchstax-pagination-previous",style:a!=null&&a.isFirstPage?{pointerEvents:"none"}:{},onClick:m=>{g(m)},id:"searchstax-pagination-previous",children:[" ","< Previous"," "]}),o.jsxs("div",{className:"searchstax-pagination-details",children:[" ",a==null?void 0:a.startResultIndex," -"," ",a==null?void 0:a.endResultIndex," of"," ",a==null?void 0:a.totalResults]}),o.jsx("a",{className:"searchstax-pagination-next",style:a!=null&&a.isLastPage?{pointerEvents:"none"}:{},onClick:m=>{d(m)},id:"searchstax-pagination-next",children:"Next >"})]})}),i.paginationTemplate&&a&&!a.isInfiniteScroll&&o.jsx(o.Fragment,{children:i.paginationTemplate(a,d,g)}),!i.infiniteScrollTemplate&&a&&a.isInfiniteScroll&&(a==null?void 0:a.totalResults)!==0&&!(a!=null&&a.isLastPage)&&o.jsx("div",{className:"searchstax-pagination-container",children:o.jsx("a",{className:"searchstax-pagination-load-more",onClick:m=>{d(m)},children:"Show More"})}),i.infiniteScrollTemplate&&a&&a.isInfiniteScroll&&(a==null?void 0:a.totalResults)!==0&&!(a!=null&&a.isLastPage)&&o.jsx(o.Fragment,{children:i.infiniteScrollTemplate(a,d)})]})})}function Xt(i){let e=!1;const[t,s]=w.useState(null),[a,r]=w.useState(""),[c]=w.useState(Math.random());w.useEffect(()=>{if(l(),C.searchstax)C.searchstax.addSearchSortingWidget("search-sorting-container"+c,{});else throw Error("Searchstax instance needs to be passed via props")},[]);function l(){e||(C.searchstax.dataLayer.$searchSortingData.subscribe(d=>{s(d)}),C.searchstax.dataLayer.$searchObject.subscribe(d=>{r(decodeURIComponent((d==null?void 0:d.order)??""))}),e=!0)}function u(d){var g;(g=C.searchstax.searchSortingWidget)==null||g.setOrderQuery(d)}return o.jsx(o.Fragment,{children:o.jsxs("div",{id:"search-sorting-container"+c,children:[!i.searchSortingTemplate&&t&&(t==null?void 0:t.searchExecuted)&&(t==null?void 0:t.hasResultsOrExternalPromotions)&&o.jsxs("div",{className:"searchstax-sorting-container",children:[o.jsx("label",{className:"searchstax-sorting-label",htmlFor:"sort-by",children:"Sort By"}),o.jsxs("select",{id:"searchstax-search-order-select",className:"searchstax-search-order-select",value:a,onChange:d=>{u(d.target.value)},children:[o.jsx("option",{value:"",children:" Relevance "}),o.jsx("option",{value:"date desc",children:" Newest Content "}),o.jsx("option",{value:"date asc",children:" Oldest Content "})]})]}),i.searchSortingTemplate&&o.jsx(o.Fragment,{children:i.searchSortingTemplate(t,u,a)})]})})}function Zt(i){let e=!1;const[t,s]=w.useState(null),[a]=w.useState(Math.random());w.useEffect(()=>{if(r(),C.searchstax)C.searchstax.addSearchFeedbackWidget("search-feedback-container"+a,{});else throw Error("Searchstax instance needs to be passed via props")},[]);function r(){e||(C.searchstax.dataLayer.$searchFeedbackData.subscribe(l=>{s(l)}),e=!0)}function c(l){var u;(u=C.searchstax.searchFeedbackWidget)==null||u.onOriginalQueryClick(l)}return o.jsx(o.Fragment,{children:o.jsxs("div",{className:"search-feedback-container",id:"search-feedback-container"+a,children:[!i.searchOverviewTemplate&&t&&(t==null?void 0:t.searchExecuted)&&(t==null?void 0:t.totalResults)>0&&o.jsxs(o.Fragment,{children:["Showing"," ",o.jsxs("b",{children:[t.startResultIndex," - ",t.endResultIndex]})," ","of",o.jsxs("b",{children:[" ",t.totalResults]})," results",t.searchTerm&&o.jsxs("span",{children:[' for "',o.jsx("b",{children:t.searchTerm}),'"'," "]}),o.jsx("div",{className:"searchstax-feedback-container-suggested",children:t.autoCorrectedQuery&&o.jsxs("div",{children:[" ","Search instead for"," ",o.jsx("a",{href:"#",onClick:l=>{c(l)},className:"searchstax-feedback-original-query",children:t.originalQuery})]})})]}),i.searchOverviewTemplate&&o.jsx(o.Fragment,{children:i.searchOverviewTemplate(t,c)})]})})}function ea(i){const[e,t]=w.useState(null),[s,a]=w.useState(null),[r,c]=w.useState([]),[l,u]=w.useState({}),d={},g=Math.random();let m=!1;w.useEffect(()=>{if(y(),C.searchstax)C.searchstax.addFacetsWidget("searchstax-facets-container"+g,{facetingType:i.facetingType,specificFacets:i.specificFacets,itemsPerPageDesktop:i.itemsPerPageDesktop,itemsPerPageMobile:i.itemsPerPageMobile});else throw Error("Searchstax instance needs to be passed via props")},[]);function y(){m||(C.searchstax.dataLayer.$facetsTemplateData.subscribe(f=>{f!=null&&f.isMobile?a(f):t(f)}),C.searchstax.dataLayer.$selectedFacetsTemplateData.subscribe(f=>{c((f??[]).filter(M=>M.type==="checkbox"))}),m=!0)}function k(f){var b;(b=C.searchstax.searchFacetsWidget)==null||b.unselectFacet(f)}function O(){var f;(f=C.searchstax.searchFacetsWidget)==null||f.removeSelectedFacets()}function R(f){return!l[f]}function T(f){R(f)?u({...l,[f]:!0}):u({...l,[f]:!1})}function P(f){var b;return(b=C.searchstax.searchFacetsWidget)==null?void 0:b.isChecked(f)}function L(f,b,M,H){var K,G;const Z=document.createElement("div"),de=(K=d[f])==null?void 0:K.current;Z.innerHTML=de.outerHTML,(G=C.searchstax.searchFacetsWidget)==null||G.onFacetSelect(b,M,de,H)}function _(f,b){var M;(M=C.searchstax.searchFacetsWidget)==null||M.onShowMoreLessClick(f,b,!1)}function V(f,b){var M;(M=C.searchstax.searchFacetsWidget)==null||M.onShowMoreLessClick(f,b,!0)}function D(){var f;(f=C.searchstax.searchFacetsWidget)==null||f.openOverlay()}function Q(){var f;(f=C.searchstax.searchFacetsWidget)==null||f.closeOverlay()}return o.jsx(o.Fragment,{children:o.jsxs("div",{id:"searchstax-facets-container"+g,children:[(e==null?void 0:e.hasResultsOrExternalPromotions)&&!i.facetsTemplateDesktop&&o.jsx("div",{className:"searchstax-facets-container-desktop",children:e==null?void 0:e.facets.map(f=>o.jsx("div",{className:`searchstax-facet-container ${R(f.name)?"active":""}`,children:o.jsxs("div",{children:[o.jsxs("div",{className:"searchstax-facet-title-container",onClick:()=>{T(f.name)},children:[o.jsxs("div",{className:"searchstax-facet-title",children:[" ",f.label," "]}),o.jsx("div",{className:"searchstax-facet-title-arrow active"})]}),o.jsxs("div",{className:"searchstax-facet-values-container",children:[f.values.map((b,M)=>(d[M+f.name]=w.createRef(),o.jsxs("div",{className:`searchstax-facet-value-container ${b.disabled?"searchstax-facet-value-disabled":""}`,ref:d[M+f.name],children:[o.jsx("div",{className:"searchstax-facet-input",children:o.jsx("input",{type:"checkbox",className:"searchstax-facet-input-checkbox",checked:P(b),readOnly:!0,disabled:b.disabled,onClick:H=>{L(M+f.name,H,b,!0)}})}),o.jsx("div",{className:"searchstax-facet-value-label",onClick:H=>{L(M+f.name,H,b,!1)},children:b.value}),o.jsxs("div",{className:"searchstax-facet-value-count",onClick:H=>{L(M+f.name,H,b,!1)},children:["(",b.count,")"]})]},b.value+b.parentName))),f.hasMoreFacets&&o.jsx("div",{className:"searchstax-facet-show-more-container",children:o.jsxs("div",{className:"searchstax-facet-show-more-container",onClick:b=>{_(b,f)},children:[f.showingAllFacets&&o.jsx("div",{className:"searchstax-facet-show-less-button searchstax-facet-show-button",children:"less"}),!f.showingAllFacets&&o.jsx("div",{className:"searchstax-facet-show-more-button searchstax-facet-show-button",children:"more"})]})})]})]})},f.name+"desktop"))}),i.facetsTemplateDesktop&&o.jsx(o.Fragment,{children:i.facetsTemplateDesktop(e,d,R,T,L,P,_)}),(s==null?void 0:s.hasResultsOrExternalPromotions)&&!i.facetsTemplateMobile&&o.jsx("div",{className:"searchstax-facets-container-mobile",children:o.jsxs("div",{className:"searchstax-facets-pills-container",children:[o.jsx("div",{className:"searchstax-facets-pill searchstax-facets-pill-filter-by",onClick:()=>{D()},children:o.jsx("div",{className:"searchstax-facets-pill-label",children:"Filter By"})}),o.jsxs("div",{className:"searchstax-facets-pills-selected",children:[r.map(f=>o.jsxs("div",{className:"searchstax-facets-pill searchstax-facets-pill-facets",onClick:()=>{k(f)},children:[o.jsxs("div",{className:"searchstax-facets-pill-label",children:[f.value," (",f.count,")"]}),o.jsx("div",{className:"searchstax-facets-pill-icon-close"})]},f.value)),r.length!==0&&o.jsx("div",{className:"searchstax-facets-pill searchstax-clear-filters searchstax-facets-pill-clear-all",onClick:()=>{O()},children:o.jsx("div",{className:"searchstax-facets-pill-label",children:"Clear Filters"})})]}),o.jsxs("div",{className:`searchstax-facets-mobile-overlay ${s.overlayOpened?"searchstax-show":""}`,children:[o.jsxs("div",{className:"searchstax-facets-mobile-overlay-header",children:[o.jsx("div",{className:"searchstax-facets-mobile-overlay-header-title",children:"Filter By"}),o.jsx("div",{className:"searchstax-search-close",onClick:()=>{Q()}})]}),o.jsx("div",{className:"searchstax-facets-container-mobile",children:s==null?void 0:s.facets.map(f=>o.jsx("div",{className:`searchstax-facet-container ${R(f.name)?"active":""}`,children:o.jsxs("div",{children:[o.jsxs("div",{className:"searchstax-facet-title-container",onClick:()=>{T(f.name)},children:[o.jsxs("div",{className:"searchstax-facet-title",children:[" ",f.label," "]}),o.jsx("div",{className:"searchstax-facet-title-arrow active"})]}),o.jsxs("div",{className:"searchstax-facet-values-container",children:[f.values.map((b,M)=>(d[M+f.name]=w.createRef(),o.jsxs("div",{className:`searchstax-facet-value-container ${b.disabled?"searchstax-facet-value-disabled":""}`,ref:d[M+f.name],children:[o.jsx("div",{className:"searchstax-facet-input",children:o.jsx("input",{type:"checkbox",className:"searchstax-facet-input-checkbox",checked:P(b),readOnly:!0,disabled:b.disabled,onClick:H=>{L(M+f.name,H,b,!0)}})}),o.jsx("div",{className:"searchstax-facet-value-label",onClick:H=>{L(M+f.name,H,b,!1)},children:b.value}),o.jsxs("div",{className:"searchstax-facet-value-count",onClick:H=>{L(M+f.name,H,b,!1)},children:["(",b.count,")"]})]},b.value+b.parentName))),o.jsx("div",{className:"searchstax-facet-show-more-container","v-if":"facet.hasMoreFacets",children:o.jsxs("div",{className:"searchstax-facet-show-more-container",onClick:b=>{V(b,f)},children:[f.showingAllFacets&&o.jsx("div",{className:"searchstax-facet-show-less-button searchstax-facet-show-button",children:"less"}),!f.showingAllFacets&&o.jsx("div",{className:"searchstax-facet-show-more-button searchstax-facet-show-button",children:"more"})]})})]})]})},f.name+"mobile"))}),o.jsx("button",{className:"searchstax-facets-mobile-overlay-done",onClick:()=>{Q()},children:"Done"})]})]})}),i.facetsTemplateMobile&&o.jsx(o.Fragment,{children:i.facetsTemplateMobile(s,r,d,R,T,L,P,k,V,D,Q,O)})]})})}function ta(i){let e=!1;const[t,s]=w.useState(null),[a]=w.useState(Math.random());w.useEffect(()=>{if(r(),C.searchstax)C.searchstax.addRelatedSearchesWidget("searchstax-related-searches-container"+a,{relatedSearchesURL:i.relatedSearchesURL,relatedSearchesAPIKey:i.relatedSearchesAPIKey});else throw Error("Searchstax instance needs to be passed via props")},[]);function r(){e||(C.searchstax.dataLayer.$searchRelatedSearchesData.subscribe(l=>{s(l)}),e=!0)}function c(l){var u;(u=C.searchstax.relatedSearchesWidget)==null||u.executeSearch(l)}return o.jsxs(o.Fragment,{children:[!i.searchRelatedSearchesTemplate&&t&&(t==null?void 0:t.searchExecuted)&&(t==null?void 0:t.hasRelatedSearches)&&o.jsxs("div",{className:"searchstax-related-searches-container",id:"searchstax-related-searches-container",children:[" ","Related searches: ",o.jsx("span",{id:"searchstax-related-searches"}),t.relatedSearches&&o.jsx("span",{className:"searchstax-related-search",children:t.relatedSearches.map(l=>o.jsxs("span",{onClick:()=>{c(l)},className:"searchstax-related-search searchstax-related-search-item",children:[" ",l.related_search,!l.last&&o.jsx("span",{children:","})]},l.related_search))})]}),i.searchRelatedSearchesTemplate&&o.jsx(o.Fragment,{children:i.searchRelatedSearchesTemplate(t,c)})]})}function aa(i){let e=!1;const[t,s]=w.useState(null),[a]=w.useState(Math.random());w.useEffect(()=>{if(r(),C.searchstax)C.searchstax.addExternalPromotionsWidget("searchstax-external-promotions-layout-container"+a,{});else throw Error("Searchstax instance needs to be passed via props")},[]);function r(){e||(C.searchstax.dataLayer.$searchExternalPromotionsData.subscribe(l=>{s(l)}),e=!0)}function c(l,u){var d;(d=C.searchstax.externalPromotionsWidget)==null||d.trackClick(l,u)}return o.jsx(o.Fragment,{children:o.jsxs("div",{id:"searchstax-external-promotions-layout-container"+a,children:[!i.searchExternalPromotionsTemplate&&t&&(t==null?void 0:t.searchExecuted)&&(t==null?void 0:t.hasExternalPromotions)&&o.jsx(o.Fragment,{children:t.externalPromotions.map(l=>o.jsxs("div",{className:"searchstax-external-promotion searchstax-search-result",children:[o.jsx("div",{className:"icon-elevated"}),l.url&&o.jsx("a",{href:l.url,onClick:u=>{c(l,u)},className:"searchstax-result-item-link"}),o.jsx("div",{className:"searchstax-search-result-title-container",children:o.jsx("span",{className:"searchstax-search-result-title",children:l.name})}),l.description&&o.jsxs("p",{className:"searchstax-search-result-description searchstax-search-result-common",children:[" ",l.description," "]}),l.url&&o.jsxs("p",{className:"searchstax-search-result-description searchstax-search-result-common",children:[" ",l.url," "]})]},l.id))}),i.searchExternalPromotionsTemplate&&o.jsx(o.Fragment,{children:i.searchExternalPromotionsTemplate(t,c)})]})})}Y.SearchstaxExternalPromotionsWidget=aa,Y.SearchstaxFacetsWidget=ea,Y.SearchstaxInputWidget=zt,Y.SearchstaxOverviewWidget=Zt,Y.SearchstaxPaginationWidget=Gt,Y.SearchstaxRelatedSearchesWidget=ta,Y.SearchstaxResultWidget=Yt,Y.SearchstaxSortingWidget=Xt,Y.SearchstaxWrapper=Jt,Object.defineProperty(Y,Symbol.toStringTag,{value:"Module"})})(this["@searchstaxInc/searchstudioUxReact"]=this["@searchstaxInc/searchstudioUxReact"]||{},React);
|
|
266
|
+
`,selectId:"searchstax-search-order-select"}};class x{}h(x,"answer",It),h(x,"externalPromotions",Pt),h(x,"facets",jt),h(x,"pagination",Ft),h(x,"relatedSearches",Ot),h(x,"searchFeedback",Mt),h(x,"searchInput",At),h(x,"searchResults",Dt),h(x,"sorting",Nt);class _t{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"externalPromotionsContainerId"),h(this,"searchExternalPromotionsMainContainer",null);var t,s;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.externalPromotionsContainerId=((s=(t=this.config.templates)==null?void 0:t.mainTemplate)==null?void 0:s.externalPromotionsContainerId)||x.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,s,a,r;const c=document.getElementById(this.externalPromotionsContainerId);if(c){const l=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.externalPromotion)==null?void 0:a.template)||((r=x.externalPromotions.externalPromotion)==null?void 0:r.template),u=document.createElement("div");u.classList.add("searchstax-external-promotion"),u.addEventListener("click",d=>{this.trackClick(e,d)}),u.innerHTML=j.render(l,e),c.appendChild(u)}}trackClick(e,t){t.stopPropagation(),t.preventDefault(),window.open(e.url,"_blank")}renderMainTemplate(e){var t,s,a,r;const c=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.mainTemplate)==null?void 0:a.template)||((r=x.externalPromotions.mainTemplate)==null?void 0:r.template);if(this.dataLayer.renderingEngine===B.mustache){this.searchExternalPromotionsMainContainer.innerHTML=j.render(c,e);const l=document.getElementById(this.externalPromotionsContainerId);l&&(l.innerHTML="");for(const u of e.externalPromotions)this.addExternalSearch(u)}}}class Ht{constructor(e,t){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"routerHelper"),h(this,"cachedPhrase",""),h(this,"isCached",!1),h(this,"overlayOpened",!1),h(this,"facetPaginationStep"),h(this,"facetPaginationStepMobile"),h(this,"searchFacetsMainContainer",null),h(this,"searchFacetsMobileContainer",null),h(this,"searchFacetsDesktopContainer",null),h(this,"facetLimits",{}),h(this,"facetLimitsMobile",{}),h(this,"deactivatedFacets",{}),h(this,"cachedData",null),h(this,"cacheFacets"),h(this,"onFacetSelect",(s,a,r,c)=>{if(s.stopPropagation(),!a.disabled){const l=r.querySelector("input");l.checked=c?l.checked:!l.checked;const u=this.dataLayer.searchObject;let d=[...u.facets];const g=this.extractFacetValue(a);l.checked?d.find(m=>J.deepEqual(m,g)?m:!1)||(this.config.facetingType==="tabs"&&(d=d.filter(m=>m.name!==g.name)),d.push(g)):d=d.filter(m=>!J.deepEqual(m,g)),setTimeout(()=>{this.dataLayer.setSearchObject({...u,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 s=t?this.facetPaginationStepMobile:this.facetPaginationStep,a=t?this.facetLimits:this.facetLimitsMobile;return e.forEach(r=>{a[r.name]||(a[r.name]=s)}),e.map(r=>({...r,values:r.values.slice(0,a[r.name]),showingAllFacets:r.values.length<=a[r.name],hasMoreFacets:r.values.length>s}))}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(a=>{var r;const c=(r=this.dataLayer.searchFacets)==null?void 0:r.find(l=>l.name===a.name);return c?{...a,values:a.values.map(l=>{const u=c.values.find(d=>l.type==="range"?!1:l.type==="checkbox"?d.value===l.value:!1);return{...l,disabled:!u,isMobile:e}})}:{...a,values:a.values.map(l=>({...l,disabled:!0})),isMobile:e}}))),this.config.specificFacets&&(t=t.filter(a=>{var r;return(r=this.config.specificFacets)==null?void 0:r.includes(a.name)}));const s={facets:this.applyFacetLimits(t,e),...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(s),s}else{const t={facets:[],...this.dataLayer.parsedData.data,isMobile:e};return this.dataLayer.setFacetsTemplateData(t),t}}createFacetItem(e,t,s){var a,r,c,l,u,d,g,m,y,k,M,R;const T=document.createElement("div");T.classList.add("searchstax-facet-container"),this.deactivatedFacets[e.name]||T.classList.add("active");const P=((c=(r=(a=this.config)==null?void 0:a.templates)==null?void 0:r.facetItemContainerTemplate)==null?void 0:c.template)||((l=x.facets.facetItemContainerTemplate)==null?void 0:l.template);T.innerHTML=j.render(P,e),t.appendChild(T);const L=T.querySelector("."+(((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.facetItemContainerTemplate)==null?void 0:g.facetListTitleContainerClass)||((m=x.facets.facetItemContainerTemplate)==null?void 0:m.facetListTitleContainerClass)));L==null||L.addEventListener("click",()=>{T.classList.toggle("active")});const _=T.querySelector("."+(((M=(k=(y=this.config)==null?void 0:y.templates)==null?void 0:k.facetItemContainerTemplate)==null?void 0:M.facetListContainerClass)||((R=x.facets.facetItemContainerTemplate)==null?void 0:R.facetListContainerClass)));_&&(e.values.forEach(V=>{this.createFacetListItem(V,_)}),e.hasMoreFacets&&this.createHasMoreComponent(e,_,s))}isChecked(e){var t;return!!((t=this.dataLayer.searchObject.facets)!=null&&t.find(s=>J.deepEqual(s,this.extractFacetValue(e))))}createFacetListItem(e,t){var s,a,r,c,l,u,d,g,m,y,k,M,R;const T=document.createElement("div");T.classList.add("searchstax-facet-value-container"),e.disabled&&T.classList.add("searchstax-facet-value-disabled");const P=this.isChecked(e),L=((r=(a=(s=this.config)==null?void 0:s.templates)==null?void 0:a.facetItemTemplate)==null?void 0:r.template)||((c=x.facets.facetItemTemplate)==null?void 0:c.template);T.innerHTML=j.render(L,{...e,isChecked:P});let _=(l=x.facets.facetItemTemplate)==null?void 0:l.checkTriggerClasses;_=((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.facetItemTemplate)==null?void 0:g.checkTriggerClasses)||_,_.forEach(V=>{var D;(D=T.querySelector("."+V))==null||D.addEventListener("click",Q=>{this.onFacetSelect(Q,e,T)})}),(R=T.querySelector("."+(((k=(y=(m=this.config)==null?void 0:m.templates)==null?void 0:y.facetItemTemplate)==null?void 0:k.inputCheckboxClass)||((M=x.facets.facetItemTemplate)==null?void 0:M.inputCheckboxClass))))==null||R.addEventListener("click",V=>{this.onFacetSelect(V,e,T,!0)}),t.appendChild(T)}createHasMoreComponent(e,t,s){var a,r,c,l,u,d,g,m;const y=document.createElement("div");y.classList.add("searchstax-facet-show-more-container");const k=((c=(r=(a=this.config)==null?void 0:a.templates)==null?void 0:r.showMoreButtonContainerTemplate)==null?void 0:c.template)||((l=x.facets.showMoreButtonContainerTemplate)==null?void 0:l.template);y.innerHTML=j.render(k,e);const M=y.querySelector("."+(((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.showMoreButtonContainerTemplate)==null?void 0:g.showMoreButtonClass)||((m=x.facets.showMoreButtonContainerTemplate)==null?void 0:m.showMoreButtonClass)));M&&(this.attachOnclickToShowMore(e,M,s),t&&t.appendChild(M))}attachOnclickToShowMore(e,t,s){t.addEventListener("click",a=>{this.onShowMoreLessClick(a,e,s)})}onShowMoreLessClick(e,t,s){e.preventDefault();const a=s?this.facetPaginationStepMobile:this.facetPaginationStep,r=s?this.facetLimits:this.facetLimitsMobile;r[t.name]===void 0?r[t.name]=a*2:r[t.name]<=t.values.length?r[t.name]=r[t.name]+a:r[t.name]=a,this.generateTemplateData(s),this.renderMainTemplate(this.generateTemplateData())}renderMainTemplate(e,t){var s,a,r,c,l,u,d,g,m,y,k;if(e&&(!J.deepEqual(this.cachedData??{},e)||t)){this.cachedData=e;const M=((r=(a=(s=this.config)==null?void 0:s.templates)==null?void 0:a.mainTemplateDesktop)==null?void 0:r.template)||((c=x.facets.mainTemplateDesktop)==null?void 0:c.template);if(this.dataLayer.renderingEngine===B.mustache&&this.searchFacetsMainContainer){this.searchFacetsMainContainer.innerHTML=j.render(M,{...e});const R=(g=this.searchFacetsMainContainer)==null?void 0:g.querySelector("."+(((d=(u=(l=this.config)==null?void 0:l.templates)==null?void 0:u.mainTemplateDesktop)==null?void 0:d.facetsContainerClass)||x.facets.mainTemplateDesktop.facetsContainerClass));if(R){R.innerHTML="";for(const T of e.facets)this.createFacetItem(T,R);if(this.searchFacetsMainContainer){const T=this.searchFacetsMainContainer.querySelector("."+(((k=(y=(m=this.config)==null?void 0:m.templates)==null?void 0:y.mainTemplateDesktop)==null?void 0:k.selectedFacetsContainerClass)||x.facets.mainTemplateDesktop.selectedFacetsContainerClass));T&&(this.createSelectedFacetsComponents(T),this.createClearFacetsComponents(T))}}}this.renderMobileTemplate(this.generateTemplateData(!0))}else this.generateSelectedFacetsData()}generateSelectedFacetsData(){const e=[],t=this.dataLayer.searchObject.facets;for(const s of t){const a=decodeURIComponent(s.name),r=decodeURIComponent(s.value);if(this.dataLayer.searchFacets){const c=this.needCache?this.dataLayer.searchFacetsCached:this.dataLayer.searchFacets,l=c==null?void 0:c.find(u=>u.name===a);if(l){const u=l.values.find(d=>d.type==="range"?!1:d.type==="checkbox"?`"${d.value}"`==`"${r}"`:!1);u&&e.push(u)}}}this.dataLayer.setSelectedFacetsTemplateData(e)}createSelectedFacetsComponents(e){var t;this.generateSelectedFacetsData(),(t=this.dataLayer.selectedFacetsTemplateData)==null||t.forEach(s=>{this.createSelectedFacetsComponent(e,s)})}createClearFacetsComponents(e){var t,s,a,r,c,l,u,d;const g=this.dataLayer.searchObject,m=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.clearFacetsTemplate)==null?void 0:a.template)||((r=x.facets.clearFacetsTemplate)==null?void 0:r.template),y=document.createElement("div");y.innerHTML=j.render(m,{shouldShow:g.facets.length>0});const k=y.querySelector("."+(((u=(l=(c=this.config)==null?void 0:c.templates)==null?void 0:l.clearFacetsTemplate)==null?void 0:u.containerClass)||((d=x.facets.clearFacetsTemplate)==null?void 0:d.containerClass)));k&&(k.addEventListener("click",()=>{this.removeSelectedFacets()}),e.appendChild(k))}createSelectedFacetsComponent(e,t){var s,a,r,c,l,u,d,g;const m=((r=(a=(s=this.config)==null?void 0:s.templates)==null?void 0:a.selectedFacetsTemplate)==null?void 0:r.template)||((c=x.facets.selectedFacetsTemplate)==null?void 0:c.template),y=document.createElement("div");y.innerHTML=j.render(m,t);const k=y.querySelector("."+(((d=(u=(l=this.config)==null?void 0:l.templates)==null?void 0:u.selectedFacetsTemplate)==null?void 0:d.containerClass)||((g=x.facets.selectedFacetsTemplate)==null?void 0:g.containerClass)));k&&(k.addEventListener("click",()=>{this.unselectFacet(t)}),e.appendChild(k))}unselectFacet(e){const t=this.dataLayer.searchObject;let s=[...t.facets];e.type==="checkbox"&&(s=s.filter(a=>JSON.stringify(a)!==JSON.stringify(this.extractFacetValue(e)))),setTimeout(()=>{this.dataLayer.setSearchObject({...t,facets:s}),this.generateSelectedFacetsData()},0)}removeSelectedFacets(){const e=this.dataLayer.searchObject;this.dataLayer.setSearchObject({...e,facets:[]})}createFilterByComponent(e){var t,s,a,r,c,l,u,d;const g=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.filterByTemplate)==null?void 0:a.template)||((r=x.facets.filterByTemplate)==null?void 0:r.template),m=document.createElement("div");m.innerHTML=j.render(g,{});const y=m.querySelector("."+(((u=(l=(c=this.config)==null?void 0:c.templates)==null?void 0:l.filterByTemplate)==null?void 0:u.containerClass)||((d=x.facets.filterByTemplate)==null?void 0:d.containerClass)));y&&(e.prepend(y),y.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,s,a,r,c,l,u,d,g,m,y,k,M,R,T,P,L,_,V;if(e){const D=document.createElement("div");D.classList.add("searchstax-facets-container-mobile");const Q=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.mainTemplateMobile)==null?void 0:a.template)||((r=x.facets.mainTemplateMobile)==null?void 0:r.template);if(this.dataLayer.renderingEngine===B.mustache){if(D.innerHTML=j.render(Q,{...e,overlayOpened:this.overlayOpened}),(c=this.searchFacetsMainContainer)==null||c.appendChild(D),(u=(l=this.config)==null?void 0:l.templates)!=null&&u.mainTemplateMobile)for(const H of((m=(g=(d=this.config)==null?void 0:d.templates)==null?void 0:g.mainTemplateMobile)==null?void 0:m.closeOverlayTriggerClasses)||[]){const Z=D.querySelector("."+H);Z&&Z.addEventListener("click",this.closeOverlay.bind(this))}else for(const H of x.facets.mainTemplateMobile.closeOverlayTriggerClasses){const Z=D.querySelector("."+H);Z&&Z.addEventListener("click",this.closeOverlay.bind(this))}const f=D.querySelector("."+(((M=(k=(y=this.config)==null?void 0:y.templates)==null?void 0:k.mainTemplateMobile)==null?void 0:M.filterByContainerClass)||x.facets.mainTemplateMobile.filterByContainerClass));f&&this.createFilterByComponent(f);const b=D.querySelector("."+(((P=(T=(R=this.config)==null?void 0:R.templates)==null?void 0:T.mainTemplateMobile)==null?void 0:P.selectedFacetsContainerClass)||x.facets.mainTemplateMobile.selectedFacetsContainerClass));b&&(this.createSelectedFacetsComponents(b),this.createClearFacetsComponents(b));const O=D.querySelector("."+(((V=(_=(L=this.config)==null?void 0:L.templates)==null?void 0:_.mainTemplateMobile)==null?void 0:V.facetsContainerClass)||x.facets.mainTemplateMobile.facetsContainerClass));if(O){O.innerHTML="";for(const H of e.facets)this.createFacetItem(H,O,!0)}}}}}class Wt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"previousButtonClass"),h(this,"nextButtonClass"),h(this,"loadMoreButtonClass"),h(this,"routerHelper"),h(this,"searchPaginationMainContainer",null);var t,s,a,r,c,l,u,d,g;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.routerHelper=e.routerHelper,this.previousButtonClass=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.mainTemplate)==null?void 0:a.previousButtonClass)??x.pagination.mainTemplate.previousButtonClass,this.nextButtonClass=((l=(c=(r=this.config)==null?void 0:r.templates)==null?void 0:c.mainTemplate)==null?void 0:l.nextButtonClass)??x.pagination.mainTemplate.nextButtonClass,this.loadMoreButtonClass=((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:g.loadMoreButtonClass)??x.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,s,a;const r={...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:(a=this.routerHelper)==null?void 0:a.searchObjectToUrl({...this.dataLayer.searchObject,page:((s=this.dataLayer.searchObject)==null?void 0:s.page)+1})};return this.dataLayer.setPaginationData(r),r}goToPage(e,t){const s=this.dataLayer.searchObject;s&&(s.page=e,this.dataLayer.setSearchObject(s)),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),s=this.searchPaginationMainContainer.querySelector("."+this.loadMoreButtonClass);e&&e.addEventListener("click",this.previousPage.bind(this)),t&&t.addEventListener("click",this.nextPage.bind(this)),s&&s.addEventListener("click",this.nextPage.bind(this))}}renderMainTemplate(e){var t,s,a,r,c,l,u,d,g,m;this.searchPaginationMainContainer&&((t=this.searchPaginationMainContainer.querySelector("."+this.previousButtonClass))==null||t.removeEventListener("click",this.previousPage),(s=this.searchPaginationMainContainer.querySelector("."+this.nextButtonClass))==null||s.removeEventListener("click",this.nextPage));let y=((c=(r=(a=this.config)==null?void 0:a.templates)==null?void 0:r.mainTemplate)==null?void 0:c.template)||((l=x.pagination.mainTemplate)==null?void 0:l.template);this.dataLayer.isInfiniteScroll&&(y=((g=(d=(u=this.config)==null?void 0:u.templates)==null?void 0:d.infiniteScrollTemplate)==null?void 0:g.template)||((m=x.pagination.infiniteScrollTemplate)==null?void 0:m.template)),this.dataLayer.renderingEngine===B.mustache&&(this.searchPaginationMainContainer.innerHTML=j.render(y,e),setTimeout(()=>{this.overridePaginationEvents()},0))}}class qt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"relatedSearchesContainerClass"),h(this,"searchRelatedSearchesMainContainer",null),h(this,"track");var t,s;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.relatedSearchesContainerClass=((s=(t=this.config.templates)==null?void 0:t.main)==null?void 0:s.relatedSearchesContainerClass)||x.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 s,a,r,c,l;const u=document.createElement("div"),d=((r=(a=(s=this.config)==null?void 0:s.templates)==null?void 0:a.relatedSearch)==null?void 0:r.template)||x.relatedSearches.relatedSearch.template;if(this.dataLayer.renderingEngine===B.mustache){u.innerHTML=j.render(d,e);const g=u.querySelector("."+(((l=(c=this.config.templates)==null?void 0:c.relatedSearch)==null?void 0:l.relatedSearchContainerClass)||x.relatedSearches.relatedSearch.relatedSearchContainerClass));g&&(t.appendChild(g),g.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,s,a,r;const c=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.main)==null?void 0:a.template)||x.relatedSearches.main.template;if(this.dataLayer.renderingEngine===B.mustache&&this.searchRelatedSearchesMainContainer){this.searchRelatedSearchesMainContainer.innerHTML="",this.searchRelatedSearchesMainContainer.innerHTML=j.render(c,e);const l=(r=this.searchRelatedSearchesMainContainer)==null?void 0:r.querySelector(`.${this.relatedSearchesContainerClass}`);if(l)for(const u of e.relatedSearches)this.addRelatedSearchComponent(u,l)}}}class Bt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"searchFeedbackMainContainer",null),h(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 s=(t=e.target)==null?void 0:t.innerHTML;this.searchTrigger(s,!0)}attachClick(){var e,t,s,a,r;const c=(r=this.searchFeedbackMainContainer)==null?void 0:r.querySelector("."+(((s=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.main)==null?void 0:s.originalQueryClass)||((a=x.searchFeedback.main)==null?void 0:a.originalQueryClass)));c&&c.addEventListener("click",this.onOriginalQueryClick.bind(this))}renderMainTemplate(e){var t,s,a;const r=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.main)==null?void 0:a.template)||x.searchFeedback.main.template;this.dataLayer.renderingEngine===B.mustache&&(this.searchFeedbackMainContainer.innerHTML=j.render(r,e),setTimeout(()=>{this.attachClick()},0))}}class Vt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"suggestAfterMinChars"),h(this,"containerId"),h(this,"currentInputValue",""),h(this,"autosuggestResults"),h(this,"searchInput"),h(this,"actionButton"),h(this,"autosuggestContainer"),h(this,"buttonState","search"),h(this,"selectedAutosuggestItem",-1),h(this,"suggestTrigger"),h(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,s,a;const r=document.getElementById(this.containerId);if(!r)throw new Error("Search input container not found");const c=((t=(e=this.config.templates)==null?void 0:e.mainTemplate)==null?void 0:t.template)||x.searchInput.mainTemplate.template;if(this.dataLayer.renderingEngine===B.mustache){const d=j.render(c,{});r.innerHTML=d}const l=((a=(s=this.config.templates)==null?void 0:s.mainTemplate)==null?void 0:a.searchInputId)||x.searchInput.mainTemplate.searchInputId,u=document.querySelector(`#${l}`);if(u)this.searchInput=u,u.addEventListener("keyup",this.inputKeyupEvent.bind(this)),u.addEventListener("blur",this.hideAutosuggest.bind(this)),u.addEventListener("paste",this.inputPasteEvent.bind(this));else throw new Error("Input not found")}createAutosuggestContainer(){var e;this.dataLayer.renderingEngine===B.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 s=e[t];t===this.selectedAutosuggestItem?s.classList.add("active"):s.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()},200)}cleanSuggestionTerm(e){return X.removeXSSRiskyTags(e.replace(/(<([^>]+)>)/gi,"")).trim()}autosuggestItemClicked(e){this.searchInput.value=this.cleanSuggestionTerm(e.term??""),this.executeSearch(this.cleanSuggestionTerm(e.term))}createAutosuggestItem(e){var t,s,a;const r=document.createElement("div");r.classList.add("searchstax-autosuggest-item"),r.addEventListener("click",()=>{this.autosuggestItemClicked(e)}),r.addEventListener("mouseenter",()=>{this.onSuggestionEnter(e)});const c=((s=(t=this.config.templates)==null?void 0:t.autosuggestItemTemplate)==null?void 0:s.template)||((a=x.searchInput.autosuggestItemTemplate)==null?void 0:a.template);return r.innerHTML=j.render(c,e),r}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 s=e.suggest[t];for(const a in s)if(Object.prototype.hasOwnProperty.call(s,a)){const r=s[a];this.autosuggestResults=r,this.dataLayer.setAutosuggestResults(r),r.numFound>0?r.suggestions.forEach(c=>{this.autosuggestContainer&&this.autosuggestContainer.appendChild(this.createAutosuggestItem(c))}):this.autosuggestContainer&&this.autosuggestContainer.classList.add("hidden")}}}}class $t{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"linkClickCallback"),h(this,"searchCallback"),h(this,"containerId"),h(this,"searchResultsMainContainer"),h(this,"searchResultsContainer"),h(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,s,a,r;const c=((s=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.noSearchResultTemplate)==null?void 0:s.template)||((a=x.searchResults.noSearchResultTemplate)==null?void 0:a.template),l=((r=this.dataLayer.searchResultsMetadata)==null?void 0:r.spellingSuggestion)??"";if(this.dataLayer.renderingEngine===B.mustache&&this.searchResultsContainer&&(this.searchResultsContainer.innerHTML=j.render(c,{spellingSuggestion:l,...this.dataLayer.parsedData.data})),l&&this.searchResultsContainer){const u=this.searchResultsContainer.querySelector("a");u&&u.addEventListener("click",d=>{d.preventDefault(),d.stopPropagation(),this.searchCallback(l)})}}renderResults(e){var t,s,a,r,c;if(this.dataLayer.renderingEngine===B.mustache&&this.searchResultsContainer)if(this.removeLinkClickEvents(),e.length===0)this.renderNoResultsTemplate();else{const l=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.searchResultTemplate)==null?void 0:a.template)||((r=x.searchResults.searchResultTemplate)==null?void 0:r.template),u=e.map(d=>j.render(l,d));((c=this.config)==null?void 0:c.renderMethod)==="infiniteScroll"&&this.dataLayer.searchObject.page>1?this.searchResultsContainer.innerHTML+=u.join(""):this.searchResultsContainer.innerHTML=u.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,s,a;return((s=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.searchResultTemplate)==null?void 0:s.searchResultUniqueIdAttribute)||((a=x.searchResults.searchResultTemplate)==null?void 0:a.searchResultUniqueIdAttribute)}attachLinkClickEvents(){this.searchResultLinks.forEach(e=>{e.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();const s=e.getAttribute(this.uniqueIdAttribute)??"";s&&this.linkClickCallback(s)})})}renderMainTemplate(){var e,t,s,a;const r=((s=(t=(e=this.config)==null?void 0:e.templates)==null?void 0:t.mainTemplate)==null?void 0:s.template)||((a=x.searchResults.mainTemplate)==null?void 0:a.template);this.dataLayer.renderingEngine===B.mustache&&(this.searchResultsMainContainer.innerHTML=j.render(r,{}),setTimeout(()=>{var c,l,u,d,g,m,y;const k=(u=(l=(c=this.config)==null?void 0:c.templates)==null?void 0:l.mainTemplate)!=null&&u.searchResultsContainerId?(m=(g=(d=this.config)==null?void 0:d.templates)==null?void 0:g.mainTemplate)==null?void 0:m.searchResultsContainerId:(y=x.searchResults.mainTemplate)==null?void 0:y.searchResultsContainerId,M=document.getElementById(k);if(M)this.searchResultsContainer=M;else throw new Error(`Search Results Container with id ${k} not found`)},0))}}class Ut{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(this,"selectId"),h(this,"searchSortingMainContainer",null);var t,s;this.dataLayer=e.dataLayer,this.config=e.config,this.containerId=e.containerId,this.selectId=((s=(t=this.config.templates)==null?void 0:t.main)==null?void 0:s.selectId)||x.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,s,a;const r=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.main)==null?void 0:a.template)||x.sorting.main.template;if(this.dataLayer.renderingEngine===B.mustache){this.searchSortingMainContainer.innerHTML=j.render(r,e),this.markOptionSelected();const c=document.getElementById(this.selectId);c&&c.addEventListener("change",l=>{this.setOrderQuery(l.target.value)})}}}class Qt{constructor(e){h(this,"dataLayer"),h(this,"config"),h(this,"containerId"),h(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,s,a;const r=((a=(s=(t=this.config)==null?void 0:t.templates)==null?void 0:s.main)==null?void 0:a.template)||x.answer.main.template;this.dataLayer.renderingEngine===B.mustache&&(this.answerContainer.innerHTML=j.render(r,e))}}class Kt{constructor(e=B.mustache){h(this,"routerEnabled",!1),h(this,"cachedQuery",""),h(this,"routerHelper"),h(this,"searchHelper"),h(this,"searchResultsConfig"),h(this,"searchPaginationConfig"),h(this,"searchFeedbackConfig"),h(this,"searchSortingConfig"),h(this,"searchFacetsConfig"),h(this,"relatedSearchesConfig"),h(this,"externalPromotionsConfig"),h(this,"searchInputWidget"),h(this,"searchResultsWidget"),h(this,"searchFacetsWidget"),h(this,"searchPaginationWidget"),h(this,"searchFeedbackWidget"),h(this,"searchSortingWidget"),h(this,"relatedSearchesWidget"),h(this,"externalPromotionsWidget"),h(this,"answerWidget"),h(this,"dataLayer"),h(this,"firstRequest",!0),this.dataLayer=new ht("searchstax_session_id"),e&&this.dataLayer.setRenderingEngine(e),this.handleHooks()}setRenderingEngine(e=B.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(s=>{this.dataLayer.searchstaxConfig.hooks.afterSearch(s)}),this.dataLayer.$searchObject.subscribe(s=>{var a;s.query!==""&&s.query!==void 0&&s.query!=="undefined"&&(this.search(s),this.dataLayer.turnAIAnswerGenerationOn===!0&&((a=this.searchHelper)==null||a.startSSE(s.query,this.parseAnswerResultsResponse.bind(this))))}),this.dataLayer.$searchResults.subscribe(s=>{s&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&oe.trackSearch({...this.dataLayer.parsedData.trackingData,impressions:this.dataLayer.searchResultsMetadata.impressions})})}initialize(e){var t,s;e.turnAIAnswerGenerationOn===!0&&(this.dataLayer.turnAIAnswerGenerationOn=!0),e.autoCorrect===!1&&(this.dataLayer.autoCorrect=!1),this.dataLayer.searchstaxConfig||(this.dataLayer.setSearchstaxConfig(e),this.searchHelper=new dt({...e,sessionId:this.dataLayer.sessionId},this.dataLayer)),((t=e.router)==null?void 0:t.enabled)===void 0||((s=e.router)==null?void 0:s.enabled)===!0?(this.routerEnabled=!0,this.routerHelper=new Me(e.router?e.router:{enabled:!0}),this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href,this.dataLayer.searchObject.itemsPerPage)),addEventListener("popstate",()=>{this.routerHelper&&this.dataLayer.setSearchObject(this.routerHelper.urlToSearchObject(window.location.href,this.dataLayer.searchObject.itemsPerPage))})):this.routerHelper=new Me({})}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 s=(((t=e.response)==null?void 0:t.docs)??[]).map((r,c)=>({...r,position:c+1})),a=[];for(const r of s)a.push({relatedSearch:r.related_search,position:r.position});this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&oe.trackRelatedSearches({...this.dataLayer.parsedData.trackingData,impressions:a}),this.dataLayer.setSearchRelatedSearches(s)}handleRouter(){if(this.routerEnabled){const e={...this.dataLayer.searchObject};this.dataLayer.isInfiniteScroll&&delete e.page,this.routerHelper.updateUrl(e)}}parseSearchResultsResponse(e){var t,s;this.handleRouter();let a=le.combineResultsWithMetadata(e),r=le.extractFacets(e);this.dataLayer.setSearchFacets(r),(s=(t=this.dataLayer.searchstaxConfig)==null?void 0:t.hooks)!=null&&s.afterSearch&&(a=this.dataLayer.searchstaxConfig.hooks.afterSearch(a)),this.dataLayer.setSearchExternalPromotions(e.externalLinks??[]);const c=le.extractSearchResultsMetadata(e);this.dataLayer.setSearchResultsMetadata(c),this.dataLayer.setSearchResults(a)}parseAnswerResultsResponse(e){this.handleRouter(),e!==te.question&&e!==te.notQuestion&&this.dataLayer.setAnswerData(this.dataLayer.getAnswerData+e)}cacheFacets(){var e;(e=this.searchHelper)==null||e.cacheFacets()}parseSuggestSuggestResponse(e){var t,s;let a=e;(s=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&s.afterAutosuggest&&(a=this.dataLayer.searchInputConfig.hooks.afterAutosuggest(e)),this.dataLayer.setSearchAutosuggest(a)}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 Vt({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 Qt({containerId:e,config:t,dataLayer:this.dataLayer})}addSearchResultsWidget(e,t){this.searchResultsConfig||(this.searchResultsConfig=t,this.searchResultsWidget=new $t({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 Wt({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper})}addSearchFeedbackWidget(e,t){this.searchFeedbackConfig||(this.searchFeedbackConfig=t,this.searchFeedbackWidget=new Bt({containerId:e,config:t,dataLayer:this.dataLayer,searchTrigger:this.executeSearch.bind(this)}))}addSearchSortingWidget(e,t){this.searchSortingConfig||(this.searchSortingConfig=t,this.searchSortingWidget=new Ut({containerId:e,config:t,dataLayer:this.dataLayer}))}addRelatedSearchesWidget(e,t){this.relatedSearchesConfig||(this.relatedSearchesConfig=t,this.relatedSearchesWidget=new qt({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 _t({containerId:e,config:t,dataLayer:this.dataLayer}))}addFacetsWidget(e,t){this.searchFacetsConfig=t,this.searchFacetsWidget=new Ht({containerId:e,config:t,dataLayer:this.dataLayer,routerHelper:this.routerHelper},this.cacheFacets.bind(this))}executeSearch(e,t){var s,a;const r={...this.dataLayer.searchObject};r.query=X.removeXSSRiskyTags(e),r.page=1,r.facets=[],this.dataLayer.forceNotCorrect=!!t;let c=(s=this.routerHelper)==null?void 0:s.searchObjectToParams(r);c&&(c=(a=this.routerHelper)==null?void 0:a.extractParamsThatDoNotStartWithRouteName(c)),c&&(r.additionalProps=Object.keys(c).map(l=>c?{key:l,value:c[l]}:{key:"",value:""})),this.dataLayer.setSearchObject(r),this.dataLayer.lastSearchValue=r.query}executeSuggest(e){var t,s;let a={term:e,queryParams:[]};(s=(t=this.dataLayer.searchInputConfig)==null?void 0:t.hooks)!=null&&s.beforeAutosuggest&&(a=this.dataLayer.searchInputConfig.hooks.beforeAutosuggest(a)),a&&a.term!==void 0&&a.queryParams!==void 0&&this.suggest(a.term,a.queryParams)}trackRelatedSearchClick(e){this.dataLayer.searchResultsMetadata&&this.dataLayer.searchRelatedSearches&&!this.dataLayer.cookiesDisabled&&oe.trackRelatedSearchClick({...this.dataLayer.parsedData.trackingData,relatedSearch:e})}executeLinkClick(e){var t,s;let a=le.findResultByUniqueId(e,this.dataLayer.searchResults??[]);a&&((s=(t=this.searchResultsConfig)==null?void 0:t.hooks)!=null&&s.afterLinkClick&&(a=this.searchResultsConfig.hooks.afterLinkClick(a)),a&&this.dataLayer.searchResultsMetadata&&!this.dataLayer.cookiesDisabled&&(oe.trackClick({result:a,...this.dataLayer.parsedData.trackingData}),setTimeout(()=>{window.location.href=(a==null?void 0:a.url)??""},0)))}setPage(e){var t;(t=this.searchPaginationWidget)==null||t.goToPage(e)}setCookiesDisabled(e){this.dataLayer.setCookiesDisabled(e)}changeResultTemplate(e){var t,s,a;this.searchResultsConfig&&(this.searchResultsConfig.templates=(t=this.searchResultsConfig)!=null&&t.templates?{...(s=this.searchResultsConfig)==null?void 0:s.templates,...e}:e,(a=this.searchResultsWidget)==null||a.changeTemplate())}}const S={searchstax:new Kt("react")};function zt(i){let e=!1;const[t,s]=w.useState([]);w.useEffect(()=>{if(a(),S.searchstax){const u={};i.afterAutosuggest&&(u.afterAutosuggest=i.afterAutosuggest),i.beforeAutosuggest&&(u.beforeAutosuggest=i.beforeAutosuggest),S.searchstax.addSearchInputWidget("searchstax-input-container",{suggestAfterMinChars:i.suggestAfterMinChars??3,hooks:u,templates:{mainTemplate:{template:"",searchInputId:i.searchInputId??"searchstax-search-input"}}})}else throw Error("Searchstax instance needs to be passed via props")},[]);function a(){e||(S.searchstax.dataLayer.$autosuggestResults.subscribe(u=>{s((u==null?void 0:u.suggestions)??[])}),e=!0)}function r(){var u,d;(u=S.searchstax.searchInputWidget)==null||u.resetAutosuggestSelection(),(d=S.searchstax.searchInputWidget)==null||d.markActiveAutosuggestItem()}function c(u){var d;(d=S.searchstax.searchInputWidget)==null||d.onSuggestionEnter(u)}function l(){var u;(u=S.searchstax.searchInputWidget)==null||u.suggestionChosen()}return o.jsx(o.Fragment,{children:o.jsx("div",{id:"searchstax-input-container",children:o.jsxs("div",{className:"searchstax-search-input-container",children:[!i.inputTemplate&&o.jsxs("div",{className:"searchstax-search-input-wrapper",children:[o.jsx("input",{type:"text",id:"searchstax-search-input",className:"searchstax-search-input",placeholder:"SEARCH FOR..."}),o.jsx("div",{className:`searchstax-autosuggest-container ${t.length===0?"hidden":""}`,onMouseLeave:r,children:t.map(function(u){return o.jsx("div",{className:"searchstax-autosuggest-item",children:o.jsx("div",{className:"searchstax-autosuggest-item-term-container",dangerouslySetInnerHTML:{__html:u.term},onMouseOver:()=>{c(u)},onClick:()=>{l()}})},u.term)})}),o.jsx("button",{className:"searchstax-spinner-icon",id:"searchstax-search-input-action-button"})]}),i.inputTemplate&&o.jsx(o.Fragment,{children:i.inputTemplate(t,r,c,l)})]})})})}function Jt(i){return w.useEffect(()=>{const e={};i.beforeSearch&&(e.beforeSearch=i.beforeSearch),i!=null&&i.afterSearch&&(e.afterSearch=i.afterSearch),S.searchstax.initialize({language:i.language??"en",searchURL:i.searchURL,suggesterURL:i.suggesterURL,trackApiKey:i.trackApiKey,searchAuth:i.searchAuth,authType:i.authType??"basic",autoCorrect:i.autoCorrect,router:i.router,hooks:e}),i.initialized(S.searchstax)},[i.initialized]),o.jsx(o.Fragment,{children:i.children})}function Yt(i){const[e,t]=w.useState(null),s=w.useRef();s.current=e;const[a,r]=w.useState(""),[c,l]=w.useState(null),u=(g,m)=>{m.preventDefault(),m.stopPropagation(),S.searchstax.executeLinkClick(g.uniqueId)};w.useEffect(()=>{d();const g={};i.afterLinkClick&&(g.afterLinkClick=i.afterLinkClick),S.searchstax.addSearchResultsWidget("searchstax-results-container",{templates:{},resultsPerPage:i.resultsPerPage??10,renderMethod:i.renderMethod??"pagination",hooks:g})},[]);function d(){S.searchstax.dataLayer.$searchResults.subscribe(g=>{var M;const m=s.current??[],y=g??[],k=i.renderMethod==="infiniteScroll"?[...m,...y]:g;((M=S.searchstax.dataLayer.$searchObject.value)==null?void 0:M.page)===1?t(y):t(k)}),S.searchstax.dataLayer.$searchTermChange.subscribe(g=>{r(g)}),S.searchstax.dataLayer.$searchResultsMetadata.subscribe(g=>{l(g)})}return o.jsx(o.Fragment,{children:o.jsx("div",{id:"searchstax-results-container",children:o.jsx("div",{className:"searchstax-search-results-container",children:o.jsxs("div",{id:"searchstax-result-container",children:[e&&e.length===0&&a!==""&&a!=="*"&&S.searchstax.dataLayer.parsedData.firstSearchHappened&&!i.noResultTemplate&&o.jsxs("div",{children:[o.jsxs("div",{className:"searchstax-no-results",children:[" ","Showing ",o.jsx("strong",{children:"no results"})," for"," ",o.jsxs("strong",{children:['"',a,'"']}),o.jsx("br",{}),(c==null?void 0:c.spellingSuggestion)&&o.jsxs("span",{children:[" Did you mean"," ",o.jsx("a",{href:"#",className:"searchstax-suggestion-term",children:c==null?void 0:c.spellingSuggestion}),"?"]})]}),o.jsxs("div",{children:[o.jsxs("p",{children:[" ","Try searching for search related terms or topics. We offer a wide variety of content to help you get the information you need."," "]}),o.jsx("p",{children:"Lost? Click on the ‘X” in the Search Box to reset your search."})]})]}),e&&e.length===0&&a!==""&&a!=="*"&&i.noResultTemplate&&o.jsx(o.Fragment,{children:i.noResultTemplate(a,c)}),e&&e.length>0&&!i.resultsTemplate&&o.jsx("div",{className:"searchstax-search-results",children:e!==null&&e.map(function(g){return o.jsxs("div",{className:`searchstax-search-result ${g.thumbnail?"has-thumbnail":""}`,children:[g.promoted&&o.jsx("div",{className:"searchstax-search-result-promoted"}),g.url&&o.jsx("a",{href:g.url,"data-searchstax-unique-result-id":g.uniqueId,onClick:m=>{u(g,m)},className:"searchstax-result-item-link"}),g.ribbon&&o.jsx("div",{className:"searchstax-search-result-ribbon",children:g.ribbon}),g.thumbnail&&o.jsx("img",{src:g.thumbnail,className:"searchstax-thumbnail"}),o.jsx("div",{className:"searchstax-search-result-title-container",children:o.jsx("span",{className:"searchstax-search-result-title",children:g.title})}),g.paths&&o.jsx("p",{className:"searchstax-search-result-common",children:g.paths}),g.description&&o.jsx("p",{className:"searchstax-search-result-description searchstax-search-result-common",children:g.description}),g.unmappedFields.map(function(m){return o.jsxs("div",{children:[m.isImage&&typeof m.value=="string"&&o.jsx("div",{className:"searchstax-search-result-image-container",children:o.jsx("img",{src:m.value,className:"searchstax-result-image"})}),!m.isImage&&o.jsx("div",{children:o.jsx("p",{className:"searchstax-search-result-common",children:m.value})})]},m.key)})]},g.uniqueId)})}),e&&e.length>0&&i.resultsTemplate&&o.jsx(o.Fragment,{children:i.resultsTemplate(e,u)})]})})})})}function Gt(i){let e=!1;const[t,s]=w.useState(!1),[a,r]=w.useState(null),[c]=w.useState(Math.random());w.useEffect(()=>{if(l(),S.searchstax)S.searchstax.addPaginationWidget("searchstax-pagination-container"+c,{});else throw Error("Searchstax instance needs to be passed via props")},[]);function l(){e||(S.searchstax.dataLayer.$searchObject.subscribe(()=>{u()}),S.searchstax.dataLayer.$paginationData.subscribe(m=>{r(m)}),e=!0)}function u(){!t&&S.searchstax.routerHelper&&(s(!0),S.searchstax.addPaginationWidget("searchstax-pagination-container"+c,{}))}function d(m){var y;(y=S.searchstax.searchPaginationWidget)==null||y.nextPage(m)}function g(m){var y;(y=S.searchstax.searchPaginationWidget)==null||y.previousPage(m)}return o.jsx(o.Fragment,{children:o.jsxs("div",{id:"searchstax-pagination-container"+c,children:[!i.paginationTemplate&&a&&!a.isInfiniteScroll&&(a==null?void 0:a.totalResults)!==0&&o.jsx("div",{className:"searchstax-pagination-container",children:o.jsxs("div",{className:"searchstax-pagination-content",children:[o.jsxs("a",{className:"searchstax-pagination-previous",style:a!=null&&a.isFirstPage?{pointerEvents:"none"}:{},onClick:m=>{g(m)},id:"searchstax-pagination-previous",children:[" ","< Previous"," "]}),o.jsxs("div",{className:"searchstax-pagination-details",children:[" ",a==null?void 0:a.startResultIndex," -"," ",a==null?void 0:a.endResultIndex," of"," ",a==null?void 0:a.totalResults]}),o.jsx("a",{className:"searchstax-pagination-next",style:a!=null&&a.isLastPage?{pointerEvents:"none"}:{},onClick:m=>{d(m)},id:"searchstax-pagination-next",children:"Next >"})]})}),i.paginationTemplate&&a&&!a.isInfiniteScroll&&o.jsx(o.Fragment,{children:i.paginationTemplate(a,d,g)}),!i.infiniteScrollTemplate&&a&&a.isInfiniteScroll&&(a==null?void 0:a.totalResults)!==0&&!(a!=null&&a.isLastPage)&&o.jsx("div",{className:"searchstax-pagination-container",children:o.jsx("a",{className:"searchstax-pagination-load-more",onClick:m=>{d(m)},children:"Show More"})}),i.infiniteScrollTemplate&&a&&a.isInfiniteScroll&&(a==null?void 0:a.totalResults)!==0&&!(a!=null&&a.isLastPage)&&o.jsx(o.Fragment,{children:i.infiniteScrollTemplate(a,d)})]})})}function Xt(i){let e=!1;const[t,s]=w.useState(null),[a,r]=w.useState(""),[c]=w.useState(Math.random());w.useEffect(()=>{if(l(),S.searchstax)S.searchstax.addSearchSortingWidget("search-sorting-container"+c,{});else throw Error("Searchstax instance needs to be passed via props")},[]);function l(){e||(S.searchstax.dataLayer.$searchSortingData.subscribe(d=>{s(d)}),S.searchstax.dataLayer.$searchObject.subscribe(d=>{r(decodeURIComponent((d==null?void 0:d.order)??""))}),e=!0)}function u(d){var g;(g=S.searchstax.searchSortingWidget)==null||g.setOrderQuery(d)}return o.jsx(o.Fragment,{children:o.jsxs("div",{id:"search-sorting-container"+c,children:[!i.searchSortingTemplate&&t&&(t==null?void 0:t.searchExecuted)&&(t==null?void 0:t.hasResultsOrExternalPromotions)&&o.jsxs("div",{className:"searchstax-sorting-container",children:[o.jsx("label",{className:"searchstax-sorting-label",htmlFor:"sort-by",children:"Sort By"}),o.jsxs("select",{id:"searchstax-search-order-select",className:"searchstax-search-order-select",value:a,onChange:d=>{u(d.target.value)},children:[o.jsx("option",{value:"",children:" Relevance "}),o.jsx("option",{value:"date desc",children:" Newest Content "}),o.jsx("option",{value:"date asc",children:" Oldest Content "})]})]}),i.searchSortingTemplate&&o.jsx(o.Fragment,{children:i.searchSortingTemplate(t,u,a)})]})})}function Zt(i){let e=!1;const[t,s]=w.useState(null),[a]=w.useState(Math.random());w.useEffect(()=>{if(r(),S.searchstax)S.searchstax.addSearchFeedbackWidget("search-feedback-container"+a,{});else throw Error("Searchstax instance needs to be passed via props")},[]);function r(){e||(S.searchstax.dataLayer.$searchFeedbackData.subscribe(l=>{s(l)}),e=!0)}function c(l){var u;(u=S.searchstax.searchFeedbackWidget)==null||u.onOriginalQueryClick(l)}return o.jsx(o.Fragment,{children:o.jsxs("div",{className:"search-feedback-container",id:"search-feedback-container"+a,children:[!i.searchOverviewTemplate&&t&&(t==null?void 0:t.searchExecuted)&&(t==null?void 0:t.totalResults)>0&&o.jsxs(o.Fragment,{children:["Showing"," ",o.jsxs("b",{children:[t.startResultIndex," - ",t.endResultIndex]})," ","of",o.jsxs("b",{children:[" ",t.totalResults]})," results",t.searchTerm&&o.jsxs("span",{children:[' for "',o.jsx("b",{children:t.searchTerm}),'"'," "]}),o.jsx("div",{className:"searchstax-feedback-container-suggested",children:t.autoCorrectedQuery&&o.jsxs("div",{children:[" ","Search instead for"," ",o.jsx("a",{href:"#",onClick:l=>{c(l)},className:"searchstax-feedback-original-query",children:t.originalQuery})]})})]}),i.searchOverviewTemplate&&o.jsx(o.Fragment,{children:i.searchOverviewTemplate(t,c)})]})})}function ea(i){const[e,t]=w.useState(null),[s,a]=w.useState(null),[r,c]=w.useState([]),[l,u]=w.useState({}),d={},g=Math.random();let m=!1;w.useEffect(()=>{if(y(),S.searchstax)S.searchstax.addFacetsWidget("searchstax-facets-container"+g,{facetingType:i.facetingType,specificFacets:i.specificFacets,itemsPerPageDesktop:i.itemsPerPageDesktop,itemsPerPageMobile:i.itemsPerPageMobile});else throw Error("Searchstax instance needs to be passed via props")},[]);function y(){m||(S.searchstax.dataLayer.$facetsTemplateData.subscribe(f=>{f!=null&&f.isMobile?a(f):t(f)}),S.searchstax.dataLayer.$selectedFacetsTemplateData.subscribe(f=>{c((f??[]).filter(O=>O.type==="checkbox"))}),m=!0)}function k(f){var b;(b=S.searchstax.searchFacetsWidget)==null||b.unselectFacet(f)}function M(){var f;(f=S.searchstax.searchFacetsWidget)==null||f.removeSelectedFacets()}function R(f){return!l[f]}function T(f){R(f)?u({...l,[f]:!0}):u({...l,[f]:!1})}function P(f){var b;return(b=S.searchstax.searchFacetsWidget)==null?void 0:b.isChecked(f)}function L(f,b,O,H,Z){var G;const pe=Z?"mobile-":"desktop-",K=document.getElementsByClassName(pe+f);K[0]&&((G=S.searchstax.searchFacetsWidget)==null||G.onFacetSelect(b,O,K[0],H))}function _(f,b){var O;(O=S.searchstax.searchFacetsWidget)==null||O.onShowMoreLessClick(f,b,!1)}function V(f,b){var O;(O=S.searchstax.searchFacetsWidget)==null||O.onShowMoreLessClick(f,b,!0)}function D(){var f;(f=S.searchstax.searchFacetsWidget)==null||f.openOverlay()}function Q(){var f;(f=S.searchstax.searchFacetsWidget)==null||f.closeOverlay()}return o.jsx(o.Fragment,{children:o.jsxs("div",{id:"searchstax-facets-container"+g,children:[(e==null?void 0:e.hasResultsOrExternalPromotions)&&!i.facetsTemplateDesktop&&o.jsx("div",{className:"searchstax-facets-container-desktop",children:e==null?void 0:e.facets.map(f=>o.jsx("div",{className:`searchstax-facet-container ${R(f.name)?"active":""}`,children:o.jsxs("div",{children:[o.jsxs("div",{className:"searchstax-facet-title-container",onClick:()=>{T(f.name)},children:[o.jsxs("div",{className:"searchstax-facet-title",children:[" ",f.label," "]}),o.jsx("div",{className:"searchstax-facet-title-arrow active"})]}),o.jsxs("div",{className:"searchstax-facet-values-container",children:[f.values.map((b,O)=>(d[O+f.name]=w.createRef(),o.jsxs("div",{className:`searchstax-facet-value-container ${b.disabled?"searchstax-facet-value-disabled":""}`,ref:d[O+f.name],children:[o.jsx("div",{className:"searchstax-facet-input desktop-"+O+f.name,children:o.jsx("input",{type:"checkbox",className:"searchstax-facet-input-checkbox",checked:P(b),readOnly:!0,disabled:b.disabled,onClick:H=>{L(O+f.name,H,b,!0)}})}),o.jsx("div",{className:"searchstax-facet-value-label",onClick:H=>{L(O+f.name,H,b,!1)},children:b.value}),o.jsxs("div",{className:"searchstax-facet-value-count",onClick:H=>{L(O+f.name,H,b,!1)},children:["(",b.count,")"]})]},b.value+b.parentName))),f.hasMoreFacets&&o.jsx("div",{className:"searchstax-facet-show-more-container",children:o.jsxs("div",{className:"searchstax-facet-show-more-container",onClick:b=>{_(b,f)},children:[f.showingAllFacets&&o.jsx("div",{className:"searchstax-facet-show-less-button searchstax-facet-show-button",children:"less"}),!f.showingAllFacets&&o.jsx("div",{className:"searchstax-facet-show-more-button searchstax-facet-show-button",children:"more"})]})})]})]})},f.name+"desktop"))}),i.facetsTemplateDesktop&&o.jsx(o.Fragment,{children:i.facetsTemplateDesktop(e,d,R,T,L,P,_)}),(s==null?void 0:s.hasResultsOrExternalPromotions)&&!i.facetsTemplateMobile&&o.jsx("div",{className:"searchstax-facets-container-mobile",children:o.jsxs("div",{className:"searchstax-facets-pills-container",children:[o.jsx("div",{className:"searchstax-facets-pill searchstax-facets-pill-filter-by",onClick:()=>{D()},children:o.jsx("div",{className:"searchstax-facets-pill-label",children:"Filter By"})}),o.jsxs("div",{className:"searchstax-facets-pills-selected",children:[r.map(f=>o.jsxs("div",{className:"searchstax-facets-pill searchstax-facets-pill-facets",onClick:()=>{k(f)},children:[o.jsxs("div",{className:"searchstax-facets-pill-label",children:[f.value," (",f.count,")"]}),o.jsx("div",{className:"searchstax-facets-pill-icon-close"})]},f.value)),r.length!==0&&o.jsx("div",{className:"searchstax-facets-pill searchstax-clear-filters searchstax-facets-pill-clear-all",onClick:()=>{M()},children:o.jsx("div",{className:"searchstax-facets-pill-label",children:"Clear Filters"})})]}),o.jsxs("div",{className:`searchstax-facets-mobile-overlay ${s.overlayOpened?"searchstax-show":""}`,children:[o.jsxs("div",{className:"searchstax-facets-mobile-overlay-header",children:[o.jsx("div",{className:"searchstax-facets-mobile-overlay-header-title",children:"Filter By"}),o.jsx("div",{className:"searchstax-search-close",onClick:()=>{Q()}})]}),o.jsx("div",{className:"searchstax-facets-container-mobile",children:s==null?void 0:s.facets.map(f=>o.jsx("div",{className:`searchstax-facet-container ${R(f.name)?"active":""}`,children:o.jsxs("div",{children:[o.jsxs("div",{className:"searchstax-facet-title-container",onClick:()=>{T(f.name)},children:[o.jsxs("div",{className:"searchstax-facet-title",children:[" ",f.label," "]}),o.jsx("div",{className:"searchstax-facet-title-arrow active"})]}),o.jsxs("div",{className:"searchstax-facet-values-container",children:[f.values.map((b,O)=>(d[O+f.name]=w.createRef(),o.jsxs("div",{className:`searchstax-facet-value-container ${b.disabled?"searchstax-facet-value-disabled":""}`,ref:d[O+f.name],children:[o.jsx("div",{className:"searchstax-facet-input mobile-"+O+f.name,children:o.jsx("input",{type:"checkbox",className:"searchstax-facet-input-checkbox",checked:P(b),readOnly:!0,disabled:b.disabled,onClick:H=>{L(O+f.name,H,b,!0,!0)}})}),o.jsx("div",{className:"searchstax-facet-value-label",onClick:H=>{L(O+f.name,H,b,!1)},children:b.value}),o.jsxs("div",{className:"searchstax-facet-value-count",onClick:H=>{L(O+f.name,H,b,!1)},children:["(",b.count,")"]})]},b.value+b.parentName))),o.jsx("div",{className:"searchstax-facet-show-more-container","v-if":"facet.hasMoreFacets",children:o.jsxs("div",{className:"searchstax-facet-show-more-container",onClick:b=>{V(b,f)},children:[f.showingAllFacets&&o.jsx("div",{className:"searchstax-facet-show-less-button searchstax-facet-show-button",children:"less"}),!f.showingAllFacets&&o.jsx("div",{className:"searchstax-facet-show-more-button searchstax-facet-show-button",children:"more"})]})})]})]})},f.name+"mobile"))}),o.jsx("button",{className:"searchstax-facets-mobile-overlay-done",onClick:()=>{Q()},children:"Done"})]})]})}),i.facetsTemplateMobile&&o.jsx(o.Fragment,{children:i.facetsTemplateMobile(s,r,d,R,T,L,P,k,V,D,Q,M)})]})})}function ta(i){let e=!1;const[t,s]=w.useState(null),[a]=w.useState(Math.random());w.useEffect(()=>{if(r(),S.searchstax)S.searchstax.addRelatedSearchesWidget("searchstax-related-searches-container"+a,{relatedSearchesURL:i.relatedSearchesURL,relatedSearchesAPIKey:i.relatedSearchesAPIKey});else throw Error("Searchstax instance needs to be passed via props")},[]);function r(){e||(S.searchstax.dataLayer.$searchRelatedSearchesData.subscribe(l=>{s(l)}),e=!0)}function c(l){var u;(u=S.searchstax.relatedSearchesWidget)==null||u.executeSearch(l)}return o.jsxs(o.Fragment,{children:[!i.searchRelatedSearchesTemplate&&t&&(t==null?void 0:t.searchExecuted)&&(t==null?void 0:t.hasRelatedSearches)&&o.jsxs("div",{className:"searchstax-related-searches-container",id:"searchstax-related-searches-container",children:[" ","Related searches: ",o.jsx("span",{id:"searchstax-related-searches"}),t.relatedSearches&&o.jsx("span",{className:"searchstax-related-search",children:t.relatedSearches.map(l=>o.jsxs("span",{onClick:()=>{c(l)},className:"searchstax-related-search searchstax-related-search-item",children:[" ",l.related_search,!l.last&&o.jsx("span",{children:","})]},l.related_search))})]}),i.searchRelatedSearchesTemplate&&o.jsx(o.Fragment,{children:i.searchRelatedSearchesTemplate(t,c)})]})}function aa(i){let e=!1;const[t,s]=w.useState(null),[a]=w.useState(Math.random());w.useEffect(()=>{if(r(),S.searchstax)S.searchstax.addExternalPromotionsWidget("searchstax-external-promotions-layout-container"+a,{});else throw Error("Searchstax instance needs to be passed via props")},[]);function r(){e||(S.searchstax.dataLayer.$searchExternalPromotionsData.subscribe(l=>{s(l)}),e=!0)}function c(l,u){var d;(d=S.searchstax.externalPromotionsWidget)==null||d.trackClick(l,u)}return o.jsx(o.Fragment,{children:o.jsxs("div",{id:"searchstax-external-promotions-layout-container"+a,children:[!i.searchExternalPromotionsTemplate&&t&&(t==null?void 0:t.searchExecuted)&&(t==null?void 0:t.hasExternalPromotions)&&o.jsx(o.Fragment,{children:t.externalPromotions.map(l=>o.jsxs("div",{className:"searchstax-external-promotion searchstax-search-result",children:[o.jsx("div",{className:"icon-elevated"}),l.url&&o.jsx("a",{href:l.url,onClick:u=>{c(l,u)},className:"searchstax-result-item-link"}),o.jsx("div",{className:"searchstax-search-result-title-container",children:o.jsx("span",{className:"searchstax-search-result-title",children:l.name})}),l.description&&o.jsxs("p",{className:"searchstax-search-result-description searchstax-search-result-common",children:[" ",l.description," "]}),l.url&&o.jsxs("p",{className:"searchstax-search-result-description searchstax-search-result-common",children:[" ",l.url," "]})]},l.id))}),i.searchExternalPromotionsTemplate&&o.jsx(o.Fragment,{children:i.searchExternalPromotionsTemplate(t,c)})]})})}Y.SearchstaxExternalPromotionsWidget=aa,Y.SearchstaxFacetsWidget=ea,Y.SearchstaxInputWidget=zt,Y.SearchstaxOverviewWidget=Zt,Y.SearchstaxPaginationWidget=Gt,Y.SearchstaxRelatedSearchesWidget=ta,Y.SearchstaxResultWidget=Yt,Y.SearchstaxSortingWidget=Xt,Y.SearchstaxWrapper=Jt,Object.defineProperty(Y,Symbol.toStringTag,{value:"Module"})})(this["@searchstaxInc/searchstudioUxReact"]=this["@searchstaxInc/searchstudioUxReact"]||{},React);
|