PageSourceSearch

https://baselgovernance.org/_nuxt/DZPYjQLc.js

js baselgovernance.org collected 2026-10-02 02:24:02 UTC 7,919 bytes, 1 lines download raw bytes

1import{_ as ve}from"./mB4aOhNQ.js";import{T as fe,u as _e,I as ye,z as K,y as he,i as Q,f as k,x as be,C as W,k as n,o as E,a as i,d as y,_ as we,e as J,b as s,H as w,m as Ce,J as xe,D as ke,c as Ve,F as $e,r as Ie,h as Ue,G as Te,s as O}from"./Wb91U3dY.js";import{_ as Fe}from"./Ba8LlYQP.js";import{_ as Ne}from"./BaN2J4jB.js";import{u as Oe,_ as Se}from"./DJX0xiW8.js";import{_ as He}from"./DvspWSrM.js";import{_ as Be}from"./CjbXGmff.js";import{_ as Le}from"./0pXWRKzj.js";import{w as Pe}from"./BzS7hXh1.js";import{u as qe}from"./DqUT9jOQ.js";import{u as ze}from"./B2qGby-e.js";import{t as Ae}from"./BynQdxt0.js";import"./DrqDAL7u.js";import"./Dop-DfbR.js";import"./DWbQ2rpz.js";import"./BqZcP81Y.js";import"./BlJ7QmEB.js";import"./BdyL01m5.js";import"./D-pctMGk.js";import"./BatJnHR9.js";import"./D_Fwpsbi.js";import"./CjEk7D_a.js";import"./CssEkixt.js";import"./BWBUny11.js";import"./CDyIH4nH.js";import"./q2Hv5tAE.js";import"./lnduddv4.js";import"./BMvmjEkM.js";import"./WLNHwP00.js";import"./CgWNTrFG.js";const De={class:"mb-12 sm:mb-24"},Ee={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 my-6"},Re={class:"flex gap-2 md:col-span-2 lg:col-span-2"},Me={class:"grid gap-12 pt-6"},je={class:"flex items-center justify-center my-12"},S="__all__",It={__name:"index",async setup(Ye){let m,V;const R=be(),{getItems:X}=qe();ze();let H="Publications",M="Research, policy briefs, working papers and practical guidance from the Basel Institute on Governance on anti-corruption, asset recovery and good governance.";const Z=fe().url.replace(/\/$/,"");_e({title:H,meta:[{name:"description",content:M}]}),ye({ogTitle:H,ogDescription:M,twitterCard:"summary_large_image",ogUrl:"https://baselgovernance.org/resources/publications",ogSiteName:"baselgovernance.org",ogImage:{url:`${Z}/og-publications.jpg`,width:2400,height:1260,alt:H}});const r=n(1),B=n(25),ee=()=>{c(),v()},h=new Pe({host:R.public.MEILI_HOST,apiKey:R.public.MEILI_SEARCH_KEY}).index("publications"),$=n([]),d=n(""),I=n([]),p=n([]),U=n([]),u=n(""),te=O(()=>u.value?Ae(u.value):""),T=n([]),g=n(""),F=n([]),ae=()=>{r.value=1,c(),v()},L=(t,e)=>[{label:t,value:S},...e.map(b=>({label:b,value:b}))],le=O(()=>L("All types",I.value)),se=O(()=>L("All languages",T.value)),oe=O(()=>L("All countries",F.value)),ne=t=>{t===S&&(d.value=""),r.value=1,c(),v()},ie=t=>{t===S&&(u.value=""),r.value=1,c(),v()},re=t=>{t===S&&(g.value=""),r.value=1,c(),v()},j=()=>{r.value=1,c(),v()},ue=()=>{o.value="",j()},Y=t=>t.replace(/"/g,'\\"'),ce=`type NOT IN [${["Newsletter"].map(t=>`'${t}'`).join(", ")}]`,o=n(""),N=n(0),c=async()=>{let t=["external = false",ce];const e=d.value?`type = '${d.value}'`:null;if(e&&t.push(e),u.value&&t.push(`languages = '${u.value}'`),g.value&&t.push(`countries.countries_id.name = "${Y(g.value)}"`),p.value.length){const a=p.value.map(_=>`"${Y(_)}"`).join(", ");t.push(`tags.tags_id.name IN [${a}]`)}const b=await h.search(o.value,{limit:B.value,offset:(r.value-1)*B.value,filter:t,sort:["date_published:desc"]});$.value=b.hits;const C=await h.searchForFacetValues({q:o.value,facetName:"type",filter:t.filter(a=>a!==e)});I.value=C.facetHits.map(a=>a.value);const x=await h.searchForFacetValues({q:o.value,facetName:"tags.tags_id.name",filter:t.filter(a=>!a.startsWith("tags.tags_id.name"))});new Set(p.value);const P=x.facetHits.filter(a=>a.count>0).map(a=>a.value),q=Array.from(new Set([...P,...p.value]));U.value=q.sort((a,_)=>a.localeCompare(_));const z=await h.searchForFacetValues({q:o.value,facetName:"languages",filter:t.filter(a=>!a.startsWith("languages"))});T.value=z.facetHits.map(a=>a.value);const A=await h.searchForFacetValues({q:o.value,facetName:"countries.countries_id.name",filter:t.filter(a=>!a.includes("countries"))});F.value=A.facetHits.map(a=>a.value).sort((a,_)=>a.localeCompare(_));const D=await h.search(o.value,{limit:2e3,filter:t,attributesToRetrieve:["id"]});N.value=D.hits.length},G=[{key:"type",ref:d},{key:"language",ref:u},{key:"country",ref:g},{key:"tag",ref:p,multi:!0},{key:"q",ref:o},{key:"page",ref:r,number:!0}],{sync:v,applyFromUrl:pe}=Oe(G,c);pe();const{data:f}=([m,V]=K(async()=>W("publications-listing",async()=>{try{await c()}catch(t){console.warn("[publications] prerender search failed:",t?.message||t)}return{publications:$.value,total:N.value,typeOptions:I.value,tagsOptions:U.value,languageOptions:T.value,countriesOptions:F.value}})),m=await m,V(),m);f.value&&($.value=f.value.publications,N.value=f.value.total,I.value=f.value.typeOptions,U.value=f.value.tagsOptions,T.value=f.value.languageOptions,F.value=f.value.countriesOptions);const me=he();G.some(t=>me.query[t.key]!==void 0)&&c();const de=()=>{d.value="",p.value=[],u.value="",g.value="",o.value="",r.value=1,c(),v()},{data:We}=([m,V]=K(async()=>W("featured",async()=>await X({collection:"publications",params:{filter:{status:"published",featured:!0},fields:"*.*.*",limit:4,sort:"-date_published"}}))),m=await m,V(),m),ge=[{label:"Home",to:"/"},{label:"News and resources"},{label:"Publications",to:"/resources/publications"}];return(t,e)=>{const b=ve,C=we,x=Fe,P=Ne,q=Ce,z=ke,A=Se,D=He,a=Be,_=Le;return E(),Q(_,null,{default:k(()=>[i(b,{items:ge,class:"hidden sm:block"}),e[11]||(e[11]=y("h1",{class:"text-5xl font-thin mt-12 mb-4 sm:mt-30"},"Publications",-1)),e[12]||(e[12]=y("p",{class:"mb-4 max-w-2xl"}," Publications are central to the Basel Institute’s anti-corruption mission. They allow us to capture and share evidence and insights from our research and our work with partners in government, business and civil society all over the world. By turning this knowledge into practical and thought-provoking analysis, we aim to help practitioners and policymakers strengthen anti-corruption policy and practice. ",-1)),y("div",De,[i(C,{to:"/about/publication-quality-standards",variant:"outline",class:"rounded-full bg-transparent px-6 inline-block",size:"sm",color:"primary"},{default:k(()=>[...e[9]||(e[9]=[J(" How we ensure publication quality ",-1)])]),_:1})]),y("div",Ee,[i(x,{class:"w-full",modelValue:s(d),"onUpdate:modelValue":[e[0]||(e[0]=l=>w(d)?d.value=l:null),ne],size:"xl",variant:"outline",items:s(le),placeholder:"Type",icon:"i-lucide-file-text"}
1,null,8,["modelValue","items"]),i(P,{modelValue:s(p),"onUpdate:modelValue":[e[1]||(e[1]=l=>w(p)?p.value=l:null),ae],items:s(U),multiple:"",size:"xl",variant:"outline",placeholder:"Tags",icon:"i-lucide-tag",class:"w-full"},null,8,["modelValue","items"]),i(x,{class:"w-full",modelValue:s(u),"onUpdate:modelValue":[e[2]||(e[2]=l=>w(u)?u.value=l:null),ie],size:"xl",variant:"outline",items:s(se),placeholder:"Language",icon:"i-lucide-languages"},null,8,["modelValue","items"]),i(x,{class:"w-full",modelValue:s(g),"onUpdate:modelValue":[e[3]||(e[3]=l=>w(g)?g.value=l:null),re],size:"xl",variant:"outline",items:s(oe),placeholder:"Country",icon:"i-lucide-map-pin"},null,8,["modelValue","items"]),y("div",Re,[i(q,{onChange:e[5]||(e[5]=l=>j()),modelValue:s(o),"onUpdate:modelValue":e[6]||(e[6]=l=>w(o)?o.value=l:null),size:"xl",placeholder:"Search...",variant:"outline",icon:"i-lucide-search",class:"flex-1",ui:{trailing:"pe-1"}},xe({_:2},[s(o)?.length?{name:"trailing",fn:k(()=>[i(C,{color:"neutral",variant:"link",size:"lg",icon:"i-lucide-circle-x","aria-label":"Clear input",onClick:e[4]||(e[4]=l=>ue())})]),key:"0"}:void 0]),1032,["modelValue"]),i(A,{text:"Clear all filters",placement:"right"},{default:k(()=>[i(C,{onClick:e[7]||(e[7]=l=>de()),variant:"soft",size:"xl","aria-label":"Clear all filters",class:"cursor-pointer"},{default:k(()=>[i(z,{name:"i-lucide-x"}),e[10]||(e[10]=J(" Clear filters ",-1))]),_:1})]),_:1})])]),y("div",Me,[(E(!0),Ve($e,null,Ie(s($),l=>Ue((E(),Q(D,{key:l.id,item:l,"prefer-lang":s(te)},null,8,["item","prefer-lang"])),[[Te,l.slug]])),128))]),y("div",je,[i(a,{page:s(r),"onUpdate:page":[e[8]||(e[8]=l=>w(r)?r.value=l:null),ee],total:s(N),"items-per-page":s(B)},null,8,["page","total","items-per-page"])])]),_:1})}}};export{It as default};

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.