PageSourceSearch

https://interreg.eu/app/assets/globalSearch.js

js interreg.eu collected 2026-10-02 05:10:33 UTC 6,959 bytes, 9 lines download raw bytes

1import{v as U,z as F,F as N,U as R,s as _,t as D,x as k,N as W,y as j,r as B,H as C,q as O}from"./connectHits.js";import{h as y,s as E}from"./helpers.js";import{t as Q}from"./main.js";import{c as K}from"./connectHitsPerPage.js";import{h as V}from"./hits.js";import"./_commonjsHelpers.js";import"./find.js";var L="5.52.1";function z(t){return[{url:`${t}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${t}.algolia.net`,accept:"write",protocol:"https"}].concat(R([{url:`${t}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${t}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${t}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))}function G({appId:t,apiKey:f,authMode:l,algoliaAgents:a,...m}){const n=_(t,f,l),i=F({hosts:z(t),...m,algoliaAgent:N({algoliaAgents:a,client:"Lite",version:L}),baseHeaders:{"content-type":"text/plain",...n.headers(),...m.baseHeaders},baseQueryParameters:{...n.queryParameters(),...m.baseQueryParameters}});return{transporter:i,appId:t,apiKey:f,clearCache(){return Promise.all([i.requestsCache.clear(),i.responsesCache.clear()]).then(()=>{})},get _ua(){return i.algoliaAgent.value},addAlgoliaAgent(e,o){i.algoliaAgent.add({segment:e,version:o})},setClientApiKey({apiKey:e}){!l||l==="WithinHeaders"?i.baseHeaders["x-algolia-api-key"]=e:i.baseQueryParameters["x-algolia-api-key"]=e},searchForHits(e,o){return this.search(e,o)},searchForFacets(e,o){return this.search(e,o)},customPost({path:e,parameters:o,body:q},p){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const b={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:o||{},headers:{},data:q||{}};return i.request(b,p)},getRecommendations(e,o){if(e&&Array.isArray(e)&&(e={requests:e}),!e)throw new Error("Parameter `getRecommendationsParams` is required when calling `getRecommendations`.");if(!e.requests)throw new Error("Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.");const w={method:"POST",path:"/1/indexes/*/recommendations",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return i.request(w,o)},search(e,o){if(e&&Array.isArray(e)&&(e={requests:e.map(({params:b,...x})=>x.type==="facet"?{...x,...b,type:"facet"}:{...x,...b,facet:void 0,maxFacetHits:void 0,facetQuery:void 0})}),!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");const w={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return i.request(w,o)}}}function J(t,f,l){const{compression:a,...m}={};return G({appId:t,apiKey:f,timeouts:{connect:1e3,read:2e3,write:3e4},logger:j(),requester:W(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:k(),requestsCache:k({serializable:!1}),hostsCache:U({caches:[D({key:`${L}-${t}`}),k()]}),...m})}const ne=async t=>{const f=document.querySelector("[data-search]"),l=t.querySelector("input"),a=document.querySelector(".searchactive .hits");document.querySelector("[data-mobile-search]");const m=document.querySelector("[data-mobile-search]"),n=t.querySelector("[data-reset]"),i=document.querySelectorAll("[data-closesearch]");document.querySelector('[data-widget="search-keywords"]');const e="prod_en-us_content",o=B(()=>null),q=K(()=>null),p=J("2E032DRCNS","afcd3bc5094a8f54ceb9cb221c74dbc7");i.forEach(r=>{r.addEventListener("click",()=>{Q(),m?.classList.remove("searchactive"),y(a,t)})}),n.addEventListener("click",()=>{t.querySelector("input").value="",y(a,t),u.setUiState(r=>({...r,[e]:{...r[e],query:""}}))}),document.addEventListener("click",r=>{r.target!=f&&r.target!=a&&r.target!=l&&!r.target.hasAttribute("data-select-keyword")&&(y(a,t),n.tabIndex=-1)}),a?.addEventListener("focusin",()=>{a&&t&&(E(a,t),n.tabIndex=0)}),a?.addEventListener("focusout",()=>{a&&t&&(y(a,t),n.tabIndex=0)});const H=t.querySelector(".searchactive .hits-result");l?.addEventListener("focusin",()=>{l.value!=""&&(E(a,t),n.tabIndex=0)}),document.addEventListener("keydown",r=>{document.activeElement?.closest(".searchactive")&&r.key=="Escape"&&(y(a,t),document.activeElement.blur(),n.tabIndex=-1)});const w=p.search;p.search=async r=>{const c=await w(r),v=await fetch("/api/search/GetSearchDataFromPageIds",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({pageIds:c.results[0].hits.map(d=>d.pageId)})});if(v.ok){var h=await v.json();h.forEach(d=>{const P=c.results[0].hits.find(A=>A.pageId==d.pageId);P!=null&&(P.imageUrl=d.imageUrl,P.imageAltText=d.imageAltText,P.contentTypeDisplayName=d.contentTypeDisplayName)})}return c};const u=C({future:{preserveSharedStateOnUnmount:!0},indexName:e,searchClient:p,initialUiState:{[e]:{query:""}}}),b=O((r,c)=>{const{hits:v,widgetParams:h}=r;c&&(h.container.innerHTML="<div class='px-4 flex gap-3 overflow-x-scroll scrollbar-none'></div>");const $=v.map(s=>s._highlightResult.keywords).flat().filter(s=>s?.matchLevel==="full").map(s=>s.value.replace(/<\/?mark>/g,"")).reduce((s,g)=>(g&&(s[g]=(s[g]||0)+1),s),{}),I=Object.entries($).sort((s,g)=>g[1]-s[1]).map(s=>s[0]),T=h.container.querySelector("div");T.innerHTML=I.slice(0,5).map(s=>`<button aria-label="Search suggestion for ${s}" type="button" data-select-keyword class="text-p1 rounded-extrasmall whitespace-nowrap bg-white px-2 flex gap-2 items-center flex-row hover:bg-generic-grey-100">${s}</button>`).join(""),T.querySelectorAll("[data-select-keyword]").forEach(s=>{s.addEventListener("click",g=>{l.value=g.target.innerText,u.setUiState(S=>({...S,[e]:{...S[e],query:g.target.innerText}})),l.focus()})})});u.addWidgets([b({container:document.querySelector('.searchactive [data-widget="search-keywords"]')}),o({}),q({items:[{default:!0,label:"",value:6}]}),V({container:H,templates:{item:(r,{html:c,components:v})=>{const h=r.contentType==="callForProjectsPage",d=h?r.callExternalUrl:r.contentUrl;return c` <a href="${d}" target="${h?"_blank":"_self"}" rel="${h?"noopener noreferrer":""}" class="flex items-center gap-3 px-4 py-4 hover:bg-white">
2						<i class="search_icon"></i>
3						<div class="grid">
4							<span class="text-p2 lg:text-p1 line-clamp-1 lg:line-clamp-2"
5								>${v.Highlight({hit:r,attribute:"title"})}</span
6							>
7							<span class="text-p3">${r.contentTypeDisplayName}</span>
8						</div>
9					</a>`}}})]),u.on("render",()=>{l.value==""?(y(a,t),n.tabIndex=-1):(E(a,t),n.tabIndex=0)});let x;l.addEventListener("input",r=>{r.target.value!=""?(clearTimeout(x),x=setTimeout(()=>{u.setUiState(c=>({...c,[e]:{...c[e],query:r.target.value}}))},350),n.tabIndex=0):(n.tabIndex=-1,y(a,t))}),t.querySelector("form")?.addEventListener("submit",r=>{r.preventDefault();const c=t.querySelector("input").value.trim();window.location.href=c?`/search-page?query=${encodeURIComponent(c)}`:"/search-page"}),u.start()};export{ne as initAlgolia};

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.