+`,"all-people-groups");const o=De("profileConfig"),n=De("mapboxToken"),t=De("dataSource"),a=De("dataStore"),s=De("mapStore"),r=$e(()=>{var J;return((J=o.value)==null?void 0:J.isDark)===!0}),i=Sc(o),l=$e(()=>nu((o==null?void 0:o.value)||{})),c={title:"All People Groups",locations:"{n} group–country locations",doxa:"DOXA people groups",frontier:"Frontier — nothing started",unreached:"Unreached — work beginning",reached:"Reached — church is there",hint:"Click a row to see all of them · click again for everything",loading:"Loading every people group…",loadError:"The map could not be loaded.",pray:"Pray for them →",population:"pop {n}"};let u=null;try{u=In()}catch{}function g(J,te){const Z="allPeopleGroups."+J;if(u&&u.te&&u.te(Z))return u.t(Z,te||{});let ue=c[J];if(te)for(const Y in te)ue=String(ue).split("{"+Y+"}").join(String(te[Y]));return ue}const m=$e(()=>u&&u.locale&&u.locale.value||"en"),_=J=>{try{return Number(J).toLocaleString(m.value)}catch{return Number(J).toLocaleString()}},A=[{id:"doxa",color:"#111827"},{id:"frontier",color:"#e0392b"},{id:"unreached",color:"#e6a800"},{id:"reached",color:"#23a45a"}],P=Object.fromEntries(A.map(J=>[J.id,J.color])),E=pe({doxa:0,frontier:0,unreached:0,reached:0}),x=pe(!1);function S(J,te){if(te.has(String(J.ROP3Code||"")))return"doxa";const Z=Number(J.GSEC);return!Number.isFinite(Z)||Z<=1?"frontier":Z<=3?"unreached":"reached"}function v(){var Z;let J="";try{J=new URLSearchParams(window.location.search).get("utm_source")||""}catch{}const te=(Z=o==null?void 0:o.value)==null?void 0:Z.utmSource;return encodeURIComponent(String(J||te||"agwm"))}const y=pe(null),C=pe(!1),N=pe(null),{map:f,initializeMap:w,destroy:$}=Xy({containerRef:y,accessToken:n.value,provider:i,style:((Re=o==null?void 0:o.value)==null?void 0:Re.style)??"paper",center:[20,12],zoom:1.6}),D=new ru,G=wv({mapId:"all-people-groups",dataSourceId:t.value,dataSourceManager:D,dataStore:a,markRaw:J=>J});let B=[],X=new Map;function ee(J){return String(J??"").replace(/[&<>"']/g,te=>({"&":"&","<":"<",">":">",'"':""","'":"'"})[te])}async function j(){const J=l.value,te=await fetch(`${J}/people-groups/people-groups-points.json`);if(te.ok){const Y=await te.json(),be=Y.dicts||{};return(Y.rows||[]).map(Q=>({lng:Q[0],lat:Q[1],gsec:Q[2],rop3:Q[3],name:Q[4],country:(be.country||[])[Q[5]]||"",population:Q[6],language:(be.language||[])[Q[7]]||"",religion:(be.religion||[])[Q[8]]||"",evangelical:(be.evangelical||[])[Q[9]]||""}))}const Z=await fetch(`${J}/people-groups/people-groups-slim.json`);if(!Z.ok)throw new Error(`people-groups-points.json ${te.status}`);return((await Z.json()).rows||[]).map(Y=>({lng:Number(Y.Long),lat:Number(Y.Lat),gsec:Y.GSEC,rop3:String(Y.ROP3Code||""),name:Y.Name||"",country:Y.CountryName||"",population:Number(Y.Population)||0,language:Y.LanguageName||"",religion:Y.ReligionName||"",evangelical:Y.EvangelicalLevel||""}))}function q(J,te){const Z=[],ue={doxa:0,frontier:0,unreached:0,reached:0};for(const Y of J){const be=Number(Y.lat),Q=Number(Y.lng);if(!Number.isFinite(be)||!Number.isFinite(Q)||be===0&&Q===0)continue;const ie=S({ROP3Code:Y.rop3,GSEC:Y.gsec},te);ue[ie]++,Z.push({type:"Feature",geometry:{type:"Point",coordinates:[Q,be]},properties:{name:Y.name,country:Y.country,population:Number(Y.population)||0,gsec:Y.gsec,evangelical:Y.evangelical,language:Y.language,religion:Y.religion,rop3:String(Y.rop3||""),category:ie}})}return E.value=ue,B=Z,{type:"FeatureCollection",features:Z}}async function W(){let J=[];try{await G.loadData(),J=G.normalizedPeopleGroups.value||[]}catch(Z){console.warn("[all-people-groups] DOXA overlay unavailable (map still renders by GSEC):",Z)}const te=new Set;for(const Z of J){const ue=String(Z.peopleGroupId||Z.rop3||Z.peopleGroupCountry||"");ue&&(te.add(ue),X.has(ue)||X.set(ue,{slug:Z.slug||"",name:Z.name||""}))}return te}function ne(J){const te=f.value;te.addSource("apg",{type:"geojson",data:J}),te.addLayer({id:"apg-pins",type:"circle",source:"apg",layout:{"circle-sort-key":["match",["get","category"],"doxa",4,"frontier",3,"unreached",2,1]},paint:{"circle-color":["match",["get","category"],"doxa",P.doxa,"frontier",P.frontier,"unreached",P.unreached,P.reached],"circle-stroke-color":"#1f2937","circle-stroke-width":["interpolate",["linear"],["zoom"],0,.3,6,.6,12,1],"circle-stroke-opacity":.55,"circle-radius":["interpolate",["linear"],["zoom"],0,2.2,4,3.4,8,6,12,9],"circle-opacity":.92}}),te.on("mouseenter","apg-pins",()=>{te.getCanvas().style.cursor="pointer"}),te.on("mouseleave","apg-pins",()=>{te.getCanvas().style.cursor=""}),te.on("click","apg-pins",Z=>{const ue=Z.features&&Z.features[0];if(!ue)return;const Y=ue.properties,be=Y.category==="doxa"?X.get(Y.rop3):null,Q=A.find(h=>h.id===Y.category),ie=be&&be.slug?`
${ee(g("pray"))}`:"",Te=i==="maplibre"?window.maplibregl:window.mapboxgl;new Te.Popup({closeButton:!0,maxWidth:"290px"}).setLngLat(Z.lngLat).setHTML(`
${ee(Y.name)} ${ee(g(Q.id).split(" — ")[0])}
${ee(Y.country)} · ${ee(g("population",{n:_(Y.population)}))}
${ee(Y.evangelical||"GSEC "+Y.gsec)}
${ee(Y.language)}${Y.religion?" · "+ee(Y.religion):""}
${ie}
-
`).addTo(te)})}const Ce=pe(null);function Ue(J){const te=f.value;if(!te||!te.getLayer("apg-pins"))return;if(Ce.value===J){Ce.value=null,te.setFilter("apg-pins",null),te.fitBounds([[-170,-55],[179,72]],{padding:20,duration:900});return}Ce.value=J,te.setFilter("apg-pins",["==",["get","category"],J]);let X=180,ue=85,Y=-180,be=-85,Q=0;for(const ie of U){if(ie.properties.category!==J)continue;const[Ne,h]=ie.geometry.coordinates;Ne
Y&&(Y=Ne),hbe&&(be=h),Q++}Q&&te.fitBounds([[X,ue],[Y,be]],{padding:60,duration:900,maxZoom:6})}Ln(async()=>{const J=j().catch(X=>(T.value=String((X==null?void 0:X.message)||X),null)),te=W();try{await w()}catch(X){T.value=String((X==null?void 0:X.message)||X);return}if(!f.value){y.value&&(T.value="Map failed to initialize — check token and container");return}f.value.once("style.load",async()=>{var X;try{const ue=await J;if(!ue||!f.value)return;try{f.value.setProjection("mercator")}catch{}ne(q(ue,new Set)),(X=s==null?void 0:s.registerMap)==null||X.call(s,"all-people-groups",f.value),C.value=!0;const Y=await te;Y.size&&f.value&&f.value.getSource("apg")&&f.value.getSource("apg").setData(q(ue,Y)),x.value=!0}catch(ue){T.value=String((ue==null?void 0:ue.message)||ue)}})}),tt(()=>{var J;(J=s==null?void 0:s.unregisterMap)==null||J.call(s,"all-people-groups"),$()});const Ee=$e(()=>E.value.doxa+E.value.frontier+E.value.unreached+E.value.reached);return(J,te)=>(ye(),Me("div",Rv,[!C.value&&!T.value?(ye(),Me("div",Mv,je(g("loading")),1)):Go("",!0),T.value?(ye(),Me("div",Iv,je(g("loadError"))+" "+je(T.value),1)):Go("",!0),se("div",{ref_key:"mapContainer",ref:y,class:"apg-canvas"},null,512),xe(rv,{"has-geocoder":!1},{default:Ut(()=>[xe(xv,{"is-dark":r.value,"embed-path":jv},null,8,["is-dark"])]),_:1}),C.value?(ye(),Me("div",Fv,[se("div",Dv,je(g("title")),1),se("div",Ov,je(g("locations",{n:_(Ee.value)})),1),(ye(),Me(Ve,null,Ua(A,X=>se("div",{key:X.id,class:oo(["apg-row",{active:Ce.value===X.id}]),onClick:ue=>Ue(X.id)},[se("span",{class:"apg-dot",style:zn({background:X.color})},null,4),mo(" "+je(g(X.id))+" ",1),se("span",Uv,je(X.id==="doxa"&&!x.value?"…":_(E.value[X.id]||0)),1)],10,Gv)),64)),se("div",Bv,je(g("hint")),1)])):Go("",!0)]))}}},Symbol.toStringTag,{value:"Module"}))})();
+ `).addTo(te)})}const Ce=pe(null);function Be(J){const te=f.value;if(!te||!te.getLayer("apg-pins"))return;if(Ce.value===J){Ce.value=null,te.setFilter("apg-pins",null),te.fitBounds([[-170,-55],[179,72]],{padding:20,duration:900});return}Ce.value=J,te.setFilter("apg-pins",["==",["get","category"],J]);let Z=180,ue=85,Y=-180,be=-85,Q=0;for(const ie of B){if(ie.properties.category!==J)continue;const[Te,h]=ie.geometry.coordinates;Te