PageSourceSearch

https://www.hudson4site.co.uk/sb/bundle-js.js.v128

js hudson4site.co.uk collected 2026-10-02 01:09:43 UTC 8,769 bytes, 14 lines download raw bytes

vendor: 4,393 bytes, line 1
1var Autocomplete=function(){"use strict";const t=(t,s)=>{for(let i in s)"addClass"===i?h(t,"add",s[i]):"removeClass"===i?h(t,"remove",s[i]):t.setAttribute(i,s[i])},s=t=>(t.firstElementChild||t).textContent.trim(),i=(t,s)=>{t.scrollTop=t.offsetTop-s.offsetHeight},h=(t,s,i)=>t.classList[s](i),e=(s,i)=>{t(s,{"aria-activedescendant":i||""})},a=(t,s,i,h)=>{const e=h.previousSibling,a=e?e.offsetHeight:0;if("0"==t.getAttribute("aria-posinset")&&(h.scrollTop=t.offsetTop-((t,s)=>{const i=document.querySelectorAll("#"+t+" > li:not(."+s+")");let h=0;return[].slice.call(i).map(t=>h+=t.offsetHeight),h})(s,i)),t.offsetTop-a<h.scrollTop)h.scrollTop=t.offsetTop-a;else{const s=t.offsetTop+t.offsetHeight-a;s>h.scrollTop+h.offsetHeight&&(h.scrollTop=s-h.offsetHeight)}},n=t=>document.createElement(t),l=t=>document.querySelector(t),o=(t,s,i)=>{t.addEventListener(s,i)},r=(t,s,i)=>{t.removeEventListener(s,i)},c=27,d=13,u=38,m=40,p=9;return class{constructor(v,b){let{delay:f=500,clearButton:x=!0,howManyCharacters:C=1,selectFirst:y=!1,insertToInput:k=!1,showAllValues:w=!1,cache:g=!1,disableCloseOnSelect:j=!1,classGroup:V,classPreventClosing:S,classPrefix:O,ariaLabelClear:A,onSearch:I,onResults:R=(()=>{}),onSubmit:P=(()=>{}),onOpened:T=(()=>{}),onReset:B=(()=>{}),onRender:G=(()=>{}),onClose:J=(()=>{}),noResults:N=(()=>{}),onSelectedItem:$=(()=>{})}=b;var q;this.t=()=>{var s,i,h,e,a;this.s(),s=this.i,i=this.h,h=this.l,e=this.o,a=this.u,t(i,{id:h,tabIndex:"0",role:"listbox"}),t(e,{addClass:a+"-results-wrapper"}),e.insertAdjacentElement("beforeend",i),s.parentNode.insertBefore(e,s.nextSibling),o(this.i,"input",this.m),this.p&&o(this.i,"click",this.m),this.v({element:this.i,results:this.h})},this.C=(t,s)=>{this.k&&("update"===t?this.i.setAttribute(this.g,s.value):"remove"===t?this.i.removeAttribute(this.g):this.i.value=this.i.getAttribute(this.g))},this.m=t=>{let{target:s,type:i}=t;if("true"===this.i.getAttribute("aria-expanded")&&"click"===i)return;const h=s.value.replace(this.j,"\\$&");this.C("update",s);const e=this.p?0:this.V;clearTimeout(this.S),this.S=setTimeout(()=>{this.O(h.trim())},e)},this.A=()=>{var s;t(this.i,{"aria-owns":this.I+"-list","aria-expanded":"false","aria-autocomplete":"list","aria-activedescendant":"",role:"combobox",removeClass:"auto-expanded"}),h(this.o,"remove",this.R),this.P(l("."+this.T)),(0==(null==(s=this.B)?void 0:s.length)&&!this.G||this.p)&&(this.h.textContent=""),this.J=this.N?0:-1,this.$()},this.O=t=>{this.q=t,this.F(!0),function(t,s){void 0===t&&(t=!1),t&&(h(t,"remove","hidden"),o(t,"click",s))}(this.L,this.destroy),0==t.length&&this.M&&h(this.L,"add","hidden"),this.D>t.length&&!this.p?this.F():this.H({currentValue:t,element:this.i}).then(s=>{const i=this.i.value.length,e=s.length;this.B=Array.isArray(s)?s:JSON.parse(JSON.stringify(s)),this.F(),this.K(),0==e&&0==i&&h(this.L,"add","hidden"),0==e&&i?(h(this.i,"remove","auto-expanded"),this.A(),this.U({element:this.i,currentValue:t,template:this.W}),this.X()):(e>0||(t=>t&&"object"==typeof t&&t.constructor===Object)(s))&&(this.J=this.N?0:-1,this.W(),this.X())}).catch(()=>{this.F(),this.A()})},this.F=t=>this.i.parentNode.classList[t?"add":"remove"](this.Y),this.K=()=>h(this.i,"remove",this.Z),this.X=()=>{o(this.i,"keydown",this._),o(this.i,"click",this.tt),o(document,"click",this.st),["mousemove","click"].map(t=>{o(this.h,t,this.it)})},this.W=s=>{t(this.i,{"aria-expanded":"true",addClass:this.u+"-expanded"}),this.h.textContent="";const e=0===this.B.length?this.ht({currentValue:this.q,matches:0,template:s}):this.ht({currentValue:this.q,matches:this.B,classGroup:this.et});this.h.insertAdjacentHTML("afterbegin",e),h(this.o,"add",this.R);const a=this.et?":not(."+this.et+")":"";this.nt=document.querySelectorAll("#"+this.l+" > li"+a),(s=>{for(let i=0;i<s.length;i++)t(s[i],{role:"option",tabindex:"-1","aria-selected":"false","aria-setsize":s.length,"aria-posinset":i})})(this.nt),this.lt({type:"results",element:this.i,results:this.h}),this.ot(),i(this.h,this.o)},this.st=t=>{let{target:s}=t,i=null;(s.closest("ul")&&this.rt||s.closest("."+this.ct))&&(i=!0),s.id===this.I||i||this.A()},this.ot=()=>{if(this.P(l("."+this.T)),!this.N)return;const{firstElementChild:s}=this.h,i=this.et&&this.B.length>0&&this.N?s.nextElementSibling:s;this.dt({index:this.J,element:this.i,object:this.B[this.J]}),t(i,{id:this.ut+"-0",addClass:this.T,"aria-selected":"true"}),e(this.i,this.ut+"-0")}
1,this.tt=()=>{this.h.textContent.length>0&&!h(this.o,"contains",this.R)&&(t(this.i,{"aria-expanded":"true",addClass:this.u+"-expanded"}),h(this.o,"add",this.R),i(this.h,this.o),this.ot(),this.lt({type:"showItems",element:this.i,results:this.h}))},this.it=t=>{t.preventDefault();const{target:s,type:i}=t,e=s.closest("li"),a=null==e?void 0:e.hasAttribute("role"),n=this.T,o=l("."+n);e&&a&&!s.closest("."+this.ct)&&("click"===i&&this.pt(e),"mousemove"!==i||h(e,"contains",n)||(this.P(o),this.vt(e),this.J=this.bt(e),this.dt({index:this.J,element:this.i,object:this.B[this.J]})))},this.pt=t=>{t&&0!==this.B.length?(this.M&&h(this.L,"remove","hidden"),this.i.value=s(t),this.ft({index:this.J,element:this.i,object:this.B[this.J],results:this.h}),this.rt||(this.P(t),this.A()),this.C("remove")):!this.rt&&this.A()},this.bt=t=>Array.prototype.indexOf.call(this.nt,t),this._=t=>{const{keyCode:i}=t,a=h(this.o,"contains",this.R),n=this.B.length+1;switch(this.xt=l("."+this.T),i){case u:case m:if(t.preventDefault(),n<=1&&this.N||!a)return;if(i===u?(this.J<0&&(this.J=n-1),this.J-=1):(this.J+=1,this.J>=n&&(this.J=0)),this.P(this.xt),this.J>=0&&this.J<n-1){const t=this.nt[this.J];this.G&&a&&(this.i.value=s(t)),this.dt({index:this.J,element:this.i,object:this.B[this.J]}),this.vt(t)}else this.C(),e(this.i),this.dt({index:null,element:this.i,object:null});break;case d:t.preventDefault(),this.pt(this.xt);break;case p:case c:t.stopPropagation(),this.A()}},this.vt=s=>{const i=this.ut+"-"+this.bt(s);t(s,{id:i,"aria-selected":"true",addClass:this.T}),e(this.i,i),a(s,this.l,this.et,this.h)},this.P=s=>{s&&t(s,{id:"",removeClass:this.T,"aria-selected":"false"})},this.s=()=>{this.M&&(t(this.L,{class:this.u+"-clear hidden",type:"button",title:this.Ct,"aria-label":this.Ct}),this.i.insertAdjacentElement("afterend",this.L))},this.destroy=()=>{this.M&&h(this.L,"add","hidden"),this.i.value="",this.i.focus(),this.h.textContent="",this.A(),this.K(),this.yt(this.i),r(this.i,"keydown",this._),r(this.i,"click",this.tt),r(document,"click",this.st)},this.I=v,this.i=document.getElementById(v),this.H=(q=I,Boolean(q&&"function"==typeof q.then)?I:t=>{let{currentValue:s,element:i}=t;return Promise.resolve(I({currentValue:s,element:i}))}),this.ht=R,this.v=G,this.ft=P,this.dt=$,this.lt=T,this.yt=B,this.U=N,this.$=J,this.V=f,this.D=C,this.M=x,this.N=y,this.G=k,this.p=w,this.et=V,this.ct=S,this.Ct=A||"clear the search query",this.u=O?O+"-auto":"auto",this.rt=j,this.k=g,this.l=this.u+"-"+this.I+"-results",this.g="data-cache-auto-"+this.I,this.Y=this.u+"-is-loading",this.R=this.u+"-is-active",this.T=this.u+"-selected",this.ut=this.u+"-selected-option",this.Z=this.u+"-error",this.j=/[|\\{}()[\]^$+*?.]/g,this.S=null,this.o=n("div"),this.h=n("ul"),this.L=n("button"),this.t()}}}();;
2new Autocomplete("global-search",getACSettings(false));new Autocomplete("global-search-mobile",getACSettings(false));if(document.getElementById("news-search")){new Autocomplete("news-search",getACSettings(true));}
3function submitSearch(event){if(event.target.value==='See more results...'){event.target.value=event.target.dataset.query;}
4event.target.parentElement.parentElement.submit();}
5function getACSettings(isNews){return{onSearch:({currentValue,element})=>{element.dataset.query=currentValue;const api=`/umbraco/api/search/GetResults?page=1&autoComplete=true&isNews=${isNews}&searchTerm=${encodeURI(
6                    currentValue
7                )}`;return new Promise((resolve)=>{fetch(api).then((response)=>response.json()).then((data)=>{resolve(data.results);}).catch((error)=>{console.error(error);});});},onSubmit:({index,element,object,results})=>{element.parentElement.parentElement.submit();},onResults:({matches})=>{return matches.map((el)=>`<li>${el.title}</li>`).join("");}}}
8function onSubmitRightToWorkForm(token){validateCaptcha(token,"#rightToWorkForm form");}
9function onSubmitNews(token){validateCaptcha(token,"#update form");}
10function onSubmitAppointment(token){validateCaptcha(token,"#appointment form");}
11function onSubmitContact(token){validateCaptcha(token,"#contact-form");}
12function onSubmitRewards(token){validateCaptcha(token,"#referral form");}
13function onSubmitNewsPopup(token){validateCaptcha(token,"#lightbox-update form");}
14function validateCaptcha(token,selector){document.querySelector(selector+" #gctoken").value=token;document.querySelector(selector).submit();};;

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.