519 lines
486 KiB
JavaScript
519 lines
486 KiB
JavaScript
(function(){"use strict";var ko=typeof document<"u"?document.currentScript:null;const k$="modulepreload",P$=function(e){return"/"+e},T$={},hd=function(t,o,n){let a=Promise.resolve();function s(r){const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=r,window.dispatchEvent(i),!i.defaultPrevented)throw r}return a.then(r=>{for(const i of r||[])i.status==="rejected"&&s(i.reason);return t().catch(s)})},Dr=null,Vo={pin:"#8b5cf6"},md=Vo.pin;function jr(){return Vo.pin}function Ia(){return["to-color",Vo.pin]}const Br=Ia,bd=Object.freeze(Object.defineProperty({__proto__:null,PALETTE:Vo,PROPERTY_KEY:Dr,applyColor:Ia,buildColorExpression:Br,default:{name:"Single Color",propertyKey:Dr,palette:Vo,getColor:jr,applyColor:Ia,buildColorExpression:Br,fallback:md},getColor:jr},Symbol.toStringTag,{value:"Module"}));/**
|
||
* @vue/shared v3.5.42
|
||
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
||
* @license MIT
|
||
**/function Oa(e){const t=Object.create(null);for(const o of e.split(","))t[o]=1;return o=>o in t}const ve={},Po=[],St=()=>{},zr=()=>!1,Mn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),xn=e=>e.startsWith("onUpdate:"),xe=Object.assign,Fa=(e,t)=>{const o=e.indexOf(t);o>-1&&e.splice(o,1)},yd=Object.prototype.hasOwnProperty,me=(e,t)=>yd.call(e,t),ne=Array.isArray,Zt=e=>Yo(e)==="[object Map]",In=e=>Yo(e)==="[object Set]",Gr=e=>Yo(e)==="[object Date]",re=e=>typeof e=="function",Ae=e=>typeof e=="string",rt=e=>typeof e=="symbol",be=e=>e!==null&&typeof e=="object",Ur=e=>(be(e)||re(e))&&re(e.then)&&re(e.catch),Kr=Object.prototype.toString,Yo=e=>Kr.call(e),_d=e=>Yo(e).slice(8,-1),On=e=>Yo(e)==="[object Object]",Fn=e=>Ae(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Xo=Oa(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Rn=e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))},$d=/-\w/g,je=Rn(e=>e.replace($d,t=>t.slice(1).toUpperCase())),vd=/\B([A-Z])/g,dt=Rn(e=>e.replace(vd,"-$1").toLowerCase()),Dn=Rn(e=>e.charAt(0).toUpperCase()+e.slice(1)),Ra=Rn(e=>e?`on${Dn(e)}`:""),wt=(e,t)=>!Object.is(e,t),Da=(e,...t)=>{for(let o=0;o<e.length;o++)e[o](...t)},Hr=(e,t,o,n=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:o})},Ad=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Wr=e=>{const t=Ae(e)?Number(e):NaN;return isNaN(t)?e:t};let qr;const jn=()=>qr||(qr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Jo(e){if(ne(e)){const t={};for(let o=0;o<e.length;o++){const n=e[o],a=Ae(n)?Pd(n):Jo(n);if(a)for(const s in a)t[s]=a[s]}return t}else if(Ae(e)||be(e))return e}const Sd=/;(?![^(]*\))/g,wd=/:([^]+)/,kd=/\/\*[^]*?\*\//g;function Pd(e){const t={};return e.replace(kd,"").split(Sd).forEach(o=>{if(o){const n=o.split(wd);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function ot(e){let t="";if(Ae(e))t=e;else if(ne(e))for(let o=0;o<e.length;o++){const n=ot(e[o]);n&&(t+=n+" ")}else if(be(e))for(const o in e)e[o]&&(t+=o+" ");return t.trim()}const Td=Oa("itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly");function Vr(e){return!!e||e===""}function Ed(e,t){if(e.length!==t.length)return!1;let o=!0;for(let n=0;o&&n<e.length;n++)o=Bn(e[n],t[n]);return o}function Yr(e,t){if(e.size!==t.size)return!1;const o=Array.from(t),n=new Uint8Array(o.length);for(const a of e){let s=-1;for(let r=0;r<o.length;r++)if(!n[r]&&Bn(a,o[r])){s=r;break}if(s<0)return!1;n[s]=1}return!0}function Bn(e,t){if(e===t)return!0;let o=Gr(e),n=Gr(t);if(o||n)return o&&n?e.getTime()===t.getTime():!1;if(o=rt(e),n=rt(t),o||n)return e===t;if(o=ne(e),n=ne(t),o||n)return o&&n?Ed(e,t):!1;if(o=be(e),n=be(t),o||n){if(!o||!n)return!1;if(o=Zt(e),n=Zt(t),o||n||(o=In(e),n=In(t),o||n))return o&&n?Yr(e,t):!1;const a=Object.keys(e).length,s=Object.keys(t).length;if(a!==s)return!1;for(const r in e){const i=e.hasOwnProperty(r),l=t.hasOwnProperty(r);if(i&&!l||!i&&l||!Bn(e[r],t[r]))return!1}}return String(e)===String(t)}const Xr=e=>!!(e&&e.__v_isRef===!0),nt=e=>Ae(e)?e:e==null?"":ne(e)||be(e)&&(e.toString===Kr||!re(e.toString))?Xr(e)?nt(e.value):JSON.stringify(e,Jr,2):String(e),Jr=(e,t)=>Xr(t)?Jr(e,t.value):Zt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[n,a],s)=>(o[ja(n,s)+" =>"]=a,o),{})}:In(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>ja(o))}:rt(t)?ja(t):be(t)&&!ne(t)&&!On(t)?String(t):t,ja=(e,t="")=>{var o;return rt(e)?`Symbol(${(o=e.description)!=null?o:t})`:e};/**
|
||
* @vue/reactivity v3.5.42
|
||
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
||
* @license MIT
|
||
**/let Fe;class Zr{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&Fe&&(Fe.active?(this.parent=Fe,this.index=(Fe.scopes||(Fe.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,o;if(this.scopes){const n=this.scopes.slice();for(t=0,o=n.length;t<o;t++)n[t].pause()}for(t=0,o=this.effects.length;t<o;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,o;if(this.scopes){const a=this.scopes.slice();for(t=0,o=a.length;t<o;t++)a[t].resume()}const n=this.effects.slice();for(t=0,o=n.length;t<o;t++)n[t].resume()}}run(t){if(this._active){const o=Fe;try{return Fe=this,t()}finally{Fe=o}}}on(){++this._on===1&&(this.prevScope=Fe,Fe=this)}off(){if(this._on>0&&--this._on===0){if(Fe===this)Fe=this.prevScope;else{let t=Fe;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let o,n;for(o=0,n=this.effects.length;o<n;o++)this.effects[o].stop();for(this.effects.length=0,o=0,n=this.cleanups.length;o<n;o++)this.cleanups[o]();if(this.cleanups.length=0,this.scopes){const a=this.scopes.slice();for(o=0,n=a.length;o<n;o++)a[o].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const a=this.parent.scopes.pop();a&&a!==this&&(this.parent.scopes[this.index]=a,a.index=this.index)}this.parent=void 0}}}function Ba(e){return new Zr(e)}function Qr(){return Fe}function Cd(e,t=!1){Fe&&Fe.cleanups.push(e)}let Se;const za=new WeakSet;class ei{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,Fe&&(Fe.active?Fe.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,za.has(this)&&(za.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||oi(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,ii(this),ni(this);const t=Se,o=mt;Se=this,mt=!0;try{return this.fn()}finally{ai(this),Se=t,mt=o,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Ha(t);this.deps=this.depsTail=void 0,ii(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?za.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Ka(this)&&this.run()}get dirty(){return Ka(this)}}let ti=0,Zo,Qo;function oi(e,t=!1){if(e.flags|=8,t){e.next=Qo,Qo=e;return}e.next=Zo,Zo=e}function Ga(){ti++}function Ua(){if(--ti>0)return;if(Qo){let t=Qo;for(Qo=void 0;t;){const o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;Zo;){let t=Zo;for(Zo=void 0;t;){const o=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=o}}if(e)throw e}function ni(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ai(e){let t,o=e.depsTail,n=o;for(;n;){const a=n.prevDep;n.version===-1?(n===o&&(o=a),Ha(n),Ld(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=a}e.deps=t,e.depsTail=o}function Ka(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(si(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function si(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===en)||(e.globalVersion=en,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Ka(e))))return;e.flags|=2;const t=e.dep,o=Se,n=mt;Se=e,mt=!0;try{ni(e);const a=e.fn(e._value);(t.version===0||wt(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{Se=o,mt=n,ai(e),e.flags&=-3}}function Ha(e,t=!1){const{dep:o,prevSub:n,nextSub:a}=e;if(n&&(n.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=n,e.nextSub=void 0),o.subs===e&&(o.subs=n,!n&&o.computed)){o.computed.flags&=-5;for(let s=o.computed.deps;s;s=s.nextDep)Ha(s,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function Ld(e){const{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}let mt=!0;const ri=[];function kt(){ri.push(mt),mt=!1}function Pt(){const e=ri.pop();mt=e===void 0?!0:e}function ii(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const o=Se;Se=void 0;try{t()}finally{Se=o}}}let en=0;class Nd{constructor(t,o){this.sub=t,this.dep=o,this.version=o.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Wa{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!Se||!mt||Se===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==Se)o=this.activeLink=new Nd(Se,this),Se.deps?(o.prevDep=Se.depsTail,Se.depsTail.nextDep=o,Se.depsTail=o):Se.deps=Se.depsTail=o,li(o);else if(o.version===-1&&(o.version=this.version,o.nextDep)){const n=o.nextDep;n.prevDep=o.prevDep,o.prevDep&&(o.prevDep.nextDep=n),o.prevDep=Se.depsTail,o.nextDep=void 0,Se.depsTail.nextDep=o,Se.depsTail=o,Se.deps===o&&(Se.deps=n)}return o}trigger(t){this.version++,en++,this.notify(t)}notify(t){Ga();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{Ua()}}}function li(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)li(n)}const o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}const zn=new WeakMap,ho=Symbol(""),qa=Symbol(""),tn=Symbol("");function qe(e,t,o){if(mt&&Se){let n=zn.get(e);n||zn.set(e,n=new Map);let a=n.get(o);a||(n.set(o,a=new Wa),a.map=n,a.key=o),a.track()}}function Rt(e,t,o,n,a,s){const r=zn.get(e);if(!r){en++;return}const i=l=>{l&&l.trigger()};if(Ga(),t==="clear")r.forEach(i);else{const l=ne(e),c=l&&Fn(o);if(l&&o==="length"){const u=Number(n);r.forEach((g,b)=>{(b==="length"||b===tn||!rt(b)&&b>=u)&&i(g)})}else switch((o!==void 0||r.has(void 0))&&i(r.get(o)),c&&i(r.get(tn)),t){case"add":l?c&&i(r.get("length")):(i(r.get(ho)),Zt(e)&&i(r.get(qa)));break;case"delete":l||(i(r.get(ho)),Zt(e)&&i(r.get(qa)));break;case"set":Zt(e)&&i(r.get(ho));break}}Ua()}function Md(e,t){const o=zn.get(e);return o&&o.get(t)}function To(e){const t=pe(e);return t===e?t:(qe(t,"iterate",tn),it(e)?t:t.map(bt))}function Gn(e){return qe(e=pe(e),"iterate",tn),e}function Tt(e,t){return Bt(e)?Eo(jt(e)?bt(t):t):bt(t)}const xd={__proto__:null,[Symbol.iterator](){return Va(this,Symbol.iterator,e=>Tt(this,e))},concat(...e){return To(this).concat(...e.map(t=>ne(t)?To(t):t))},entries(){return Va(this,"entries",e=>(e[1]=Tt(this,e[1]),e))},every(e,t){return Dt(this,"every",e,t,void 0,arguments)},filter(e,t){return Dt(this,"filter",e,t,o=>o.map(n=>Tt(this,n)),arguments)},find(e,t){return Dt(this,"find",e,t,o=>Tt(this,o),arguments)},findIndex(e,t){return Dt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Dt(this,"findLast",e,t,o=>Tt(this,o),arguments)},findLastIndex(e,t){return Dt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Dt(this,"forEach",e,t,void 0,arguments)},includes(...e){return Ya(this,"includes",e)},indexOf(...e){return Ya(this,"indexOf",e)},join(e){return To(this).join(e)},lastIndexOf(...e){return Ya(this,"lastIndexOf",e)},map(e,t){return Dt(this,"map",e,t,void 0,arguments)},pop(){return on(this,"pop")},push(...e){return on(this,"push",e)},reduce(e,...t){return ci(this,"reduce",e,t)},reduceRight(e,...t){return ci(this,"reduceRight",e,t)},shift(){return on(this,"shift")},some(e,t){return Dt(this,"some",e,t,void 0,arguments)},splice(...e){return on(this,"splice",e)},toReversed(){return To(this).toReversed()},toSorted(e){return To(this).toSorted(e)},toSpliced(...e){return To(this).toSpliced(...e)},unshift(...e){return on(this,"unshift",e)},values(){return Va(this,"values",e=>Tt(this,e))}};function Va(e,t,o){const n=Gn(e),a=n[t]();return n!==e&&!it(e)&&(a._next=a.next,a.next=()=>{const s=a._next();return s.done||(s.value=o(s.value)),s}),a}const Id=Array.prototype;function Dt(e,t,o,n,a,s){const r=Gn(e),i=r!==e&&!it(e),l=r[t];if(l!==Id[t]){const g=l.apply(e,s);return i?bt(g):g}let c=o;r!==e&&(i?c=function(g,b){return o.call(this,Tt(e,g),b,e)}:o.length>2&&(c=function(g,b){return o.call(this,g,b,e)}));const u=l.call(r,c,n);return i&&a?a(u):u}function ci(e,t,o,n){const a=Gn(e),s=a!==e&&!it(e);let r=o,i=!1;a!==e&&(s?(i=n.length===0,r=function(c,u,g){return i&&(i=!1,c=Tt(e,c)),o.call(this,c,Tt(e,u),g,e)}):o.length>3&&(r=function(c,u,g){return o.call(this,c,u,g,e)}));const l=a[t](r,...n);return i?Tt(e,l):l}function Ya(e,t,o){const n=pe(e);qe(n,"iterate",tn);const a=n[t](...o);return(a===-1||a===!1)&&Vn(o[0])?(o[0]=pe(o[0]),n[t](...o)):a}function on(e,t,o=[]){kt(),Ga();const n=pe(e)[t].apply(e,o);return Ua(),Pt(),n}const Od=Oa("__proto__,__v_isRef,__isVue"),ui=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(rt));function Fd(e){rt(e)||(e=String(e));const t=pe(this);return qe(t,"has",e),t.hasOwnProperty(e)}class di{constructor(t=!1,o=!1){this._isReadonly=t,this._isShallow=o}get(t,o,n){if(o==="__v_skip")return t.__v_skip;const a=this._isReadonly,s=this._isShallow;if(o==="__v_isReactive")return!a;if(o==="__v_isReadonly")return a;if(o==="__v_isShallow")return s;if(o==="__v_raw")return n===(a?s?bi:mi:s?hi:fi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const r=ne(t);if(!a){let l;if(r&&(l=xd[o]))return l;if(o==="hasOwnProperty")return Fd}const i=Reflect.get(t,o,Te(t)?t:n);if((rt(o)?ui.has(o):Od(o))||(a||qe(t,"get",o),s))return i;if(Te(i)){const l=r&&Fn(o)?i:i.value;return a&&be(l)?Ja(l):l}return be(i)?a?Ja(i):Wn(i):i}}class pi extends di{constructor(t=!1){super(!1,t)}set(t,o,n,a){let s=t[o];const r=ne(t)&&Fn(o);if(!this._isShallow){const c=Bt(s);if(!it(n)&&!Bt(n)&&(s=pe(s),n=pe(n)),!r&&Te(s)&&!Te(n))return c||(s.value=n),!0}const i=r?Number(o)<t.length:me(t,o),l=Reflect.set(t,o,n,Te(t)?t:a);return t===pe(a)&&l&&(i?wt(n,s)&&Rt(t,"set",o,n):Rt(t,"add",o,n)),l}deleteProperty(t,o){const n=me(t,o);t[o];const a=Reflect.deleteProperty(t,o);return a&&n&&Rt(t,"delete",o,void 0),a}has(t,o){const n=Reflect.has(t,o);return(!rt(o)||!ui.has(o))&&qe(t,"has",o),n}ownKeys(t){return qe(t,"iterate",ne(t)?"length":ho),Reflect.ownKeys(t)}}class gi extends di{constructor(t=!1){super(!0,t)}set(t,o){return!0}deleteProperty(t,o){return!0}}const Rd=new pi,Dd=new gi,jd=new pi(!0),Bd=new gi(!0),Xa=e=>e,Un=e=>Reflect.getPrototypeOf(e);function zd(e,t,o){return function(...n){const a=this.__v_raw,s=pe(a),r=Zt(s),i=e==="entries"||e===Symbol.iterator&&r,l=e==="keys"&&r,c=a[e](...n),u=o?Xa:t?Eo:bt;return!t&&qe(s,"iterate",l?qa:ho),xe(Object.create(c),{next(){const{value:g,done:b}=c.next();return b?{value:g,done:b}:{value:i?[u(g[0]),u(g[1])]:u(g),done:b}}})}}function Kn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Gd(e,t){const o={get(a){const s=this.__v_raw,r=pe(s),i=pe(a);e||(wt(a,i)&&qe(r,"get",a),qe(r,"get",i));const{has:l}=Un(r),c=t?Xa:e?Eo:bt;if(l.call(r,a))return c(s.get(a));if(l.call(r,i))return c(s.get(i));s!==r&&s.get(a)},get size(){const a=this.__v_raw;return!e&&qe(pe(a),"iterate",ho),a.size},has(a){const s=this.__v_raw,r=pe(s),i=pe(a);return e||(wt(a,i)&&qe(r,"has",a),qe(r,"has",i)),a===i?s.has(a):s.has(a)||s.has(i)},forEach(a,s){const r=this,i=r.__v_raw,l=pe(i),c=t?Xa:e?Eo:bt;return!e&&qe(l,"iterate",ho),i.forEach((u,g)=>a.call(s,c(u),c(g),r))}};return xe(o,e?{add:Kn("add"),set:Kn("set"),delete:Kn("delete"),clear:Kn("clear")}:{add(a){const s=pe(this),r=Un(s),i=pe(a),l=!t&&!it(a)&&!Bt(a)?i:a;return r.has.call(s,l)||wt(a,l)&&r.has.call(s,a)||wt(i,l)&&r.has.call(s,i)||(s.add(l),Rt(s,"add",l,l)),this},set(a,s){!t&&!it(s)&&!Bt(s)&&(s=pe(s));const r=pe(this),{has:i,get:l}=Un(r);let c=i.call(r,a);c||(a=pe(a),c=i.call(r,a));const u=l.call(r,a);return r.set(a,s),c?wt(s,u)&&Rt(r,"set",a,s):Rt(r,"add",a,s),this},delete(a){const s=pe(this),{has:r,get:i}=Un(s);let l=r.call(s,a);l||(a=pe(a),l=r.call(s,a)),i&&i.call(s,a);const c=s.delete(a);return l&&Rt(s,"delete",a,void 0),c},clear(){const a=pe(this),s=a.size!==0,r=a.clear();return s&&Rt(a,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(a=>{o[a]=zd(a,e,t)}),o}function Hn(e,t){const o=Gd(e,t);return(n,a,s)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?n:Reflect.get(me(o,a)&&a in n?o:n,a,s)}const Ud={get:Hn(!1,!1)},Kd={get:Hn(!1,!0)},Hd={get:Hn(!0,!1)},Wd={get:Hn(!0,!0)},fi=new WeakMap,hi=new WeakMap,mi=new WeakMap,bi=new WeakMap;function qd(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Wn(e){return Bt(e)?e:qn(e,!1,Rd,Ud,fi)}function Vd(e){return qn(e,!1,jd,Kd,hi)}function Ja(e){return qn(e,!0,Dd,Hd,mi)}function L$(e){return qn(e,!0,Bd,Wd,bi)}function qn(e,t,o,n,a){if(!be(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const s=a.get(e);if(s)return s;const r=qd(_d(e));if(r===0)return e;const i=new Proxy(e,r===2?n:o);return a.set(e,i),i}function jt(e){return Bt(e)?jt(e.__v_raw):!!(e&&e.__v_isReactive)}function Bt(e){return!!(e&&e.__v_isReadonly)}function it(e){return!!(e&&e.__v_isShallow)}function Vn(e){return e?!!e.__v_raw:!1}function pe(e){const t=e&&e.__v_raw;return t?pe(t):e}function nn(e){return!me(e,"__v_skip")&&Object.isExtensible(e)&&Hr(e,"__v_skip",!0),e}const bt=e=>be(e)?Wn(e):e,Eo=e=>be(e)?Ja(e):e;function Te(e){return e?e.__v_isRef===!0:!1}function ie(e){return yi(e,!1)}function Za(e){return yi(e,!0)}function yi(e,t){return Te(e)?e:new Yd(e,t)}class Yd{constructor(t,o){this.dep=new Wa,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=o?t:pe(t),this._value=o?t:bt(t),this.__v_isShallow=o}get value(){return this.dep.track(),this._value}set value(t){const o=this._rawValue,n=this.__v_isShallow||it(t)||Bt(t);t=n?t:pe(t),wt(t,o)&&(this._rawValue=t,this._value=n?t:bt(t),this.dep.trigger())}}function Ue(e){return Te(e)?e.value:e}const Xd={get:(e,t,o)=>t==="__v_raw"?e:Ue(Reflect.get(e,t,o)),set:(e,t,o,n)=>{const a=e[t];return Te(a)&&!Te(o)?(a.value=o,!0):Reflect.set(e,t,o,n)}};function _i(e){return jt(e)?e:new Proxy(e,Xd)}function Jd(e){const t=ne(e)?new Array(e.length):{};for(const o in e)t[o]=Qd(e,o);return t}class Zd{constructor(t,o,n){this._object=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._key=rt(o)?o:String(o),this._raw=pe(t);let a=!0,s=t;if(!ne(t)||rt(this._key)||!Fn(this._key))do a=!Vn(s)||it(s);while(a&&(s=s.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=Ue(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Te(this._raw[this._key])){const o=this._object[this._key];if(Te(o)){o.value=t;return}}this._object[this._key]=t}get dep(){return Md(this._raw,this._key)}}function Qd(e,t,o){return new Zd(e,t,o)}class ep{constructor(t,o,n){this.fn=t,this.setter=o,this._value=void 0,this.dep=new Wa(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=en-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&Se!==this)return oi(this,!0),!0}get value(){const t=this.dep.track();return si(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function tp(e,t,o=!1){let n,a;return re(e)?n=e:(n=e.get,a=e.set),new ep(n,a,o)}const Yn={},Xn=new WeakMap;let mo;function op(e,t=!1,o=mo){if(o){let n=Xn.get(o);n||Xn.set(o,n=[]),n.push(e)}}function np(e,t,o=ve){const{immediate:n,deep:a,once:s,scheduler:r,augmentJob:i,call:l}=o,c=y=>a?y:it(y)||a===!1||a===0?Qt(y,1):Qt(y);let u,g,b,v,P=!1,T=!1;if(Te(e)?(g=()=>e.value,P=it(e)):jt(e)?(g=()=>c(e),P=!0):ne(e)?(T=!0,P=e.some(y=>jt(y)||it(y)),g=()=>e.map(y=>{if(Te(y))return y.value;if(jt(y))return c(y);if(re(y))return l?l(y,2):y()})):re(e)?t?g=l?()=>l(e,2):e:g=()=>{if(b){kt();try{b()}finally{Pt()}}const y=mo;mo=u;try{return l?l(e,3,[v]):e(v)}finally{mo=y}}:g=St,t&&a){const y=g,E=a===!0?1/0:a;g=()=>Qt(y(),E)}const x=Qr(),I=()=>{u.stop(),x&&x.active&&Fa(x.effects,u)};if(s&&t){const y=t;t=(...E)=>{const C=y(...E);return I(),C}}let w=T?new Array(e.length).fill(Yn):Yn;const f=y=>{if(!(!(u.flags&1)||!u.dirty&&!y))if(t){const E=u.run();if(y||a||P||(T?E.some((C,_)=>wt(C,w[_])):wt(E,w))){b&&b();const C=mo;mo=u;try{const _=[E,w===Yn?void 0:T&&w[0]===Yn?[]:w,v];w=E,l?l(t,3,_):t(..._)}finally{mo=C}}}else u.run()};return i&&i(f),u=new ei(g),u.scheduler=r?()=>r(f,!1):f,v=y=>op(y,!1,u),b=u.onStop=()=>{const y=Xn.get(u);if(y){if(l)l(y,4);else for(const E of y)E();Xn.delete(u)}},t?n?f(!0):w=u.run():r?r(f.bind(null,!0),!0):u.run(),I.pause=u.pause.bind(u),I.resume=u.resume.bind(u),I.stop=I,I}function Qt(e,t=1/0,o){if(t<=0||!be(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,Te(e))Qt(e.value,t,o);else if(ne(e))for(let n=0;n<e.length;n++)Qt(e[n],t,o);else if(In(e)||Zt(e))e.forEach(n=>{Qt(n,t,o)});else if(On(e)){for(const n in e)Qt(e[n],t,o);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&Qt(e[n],t,o)}return e}/**
|
||
* @vue/runtime-core v3.5.42
|
||
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
||
* @license MIT
|
||
**/const an=[];let Qa=!1;function N$(e,...t){if(Qa)return;Qa=!0,kt();const o=an.length?an[an.length-1].component:null,n=o&&o.appContext.config.warnHandler,a=ap();if(n)Co(n,o,11,[e+t.map(s=>{var r,i;return(i=(r=s.toString)==null?void 0:r.call(s))!=null?i:JSON.stringify(s)}).join(""),o&&o.proxy,a.map(({vnode:s})=>`at <${yl(o,s.type)}>`).join(`
|
||
`),a]);else{const s=[`[Vue warn]: ${e}`,...t];a.length&&s.push(`
|
||
`,...sp(a)),console.warn(...s)}Pt(),Qa=!1}function ap(){let e=an[an.length-1];if(!e)return[];const t=[];for(;e;){const o=t[0];o&&o.vnode===e?o.recurseCount++:t.push({vnode:e,recurseCount:0});const n=e.component&&e.component.parent;e=n&&n.vnode}return t}function sp(e){const t=[];return e.forEach((o,n)=>{t.push(...n===0?[]:[`
|
||
`],...rp(o))}),t}function rp({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:"",n=e.component?e.component.parent==null:!1,a=` at <${yl(e.component,e.type,n)}`,s=">"+o;return e.props?[a,...ip(e.props),s]:[a+s]}function ip(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach(n=>{t.push(...$i(n,e[n]))}),o.length>3&&t.push(" ..."),t}function $i(e,t,o){return Ae(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?o?t:[`${e}=${t}`]:Te(t)?(t=$i(e,pe(t.value),!0),o?t:[`${e}=Ref<`,t,">"]):re(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=pe(t),o?t:[`${e}=`,t])}function Co(e,t,o,n){try{return n?e(...n):e()}catch(a){sn(a,t,o)}}function yt(e,t,o,n){if(re(e)){const a=Co(e,t,o,n);return a&&Ur(a)&&a.catch(s=>{sn(s,t,o)}),a}if(ne(e)){const a=[];for(let s=0;s<e.length;s++)a.push(yt(e[s],t,o,n));return a}}function sn(e,t,o,n=!0){const a=t?t.vnode:null,{errorHandler:s,throwUnhandledErrorInProduction:r}=t&&t.appContext.config||ve;if(t){let i=t.parent;const l=t.proxy,c=`https://vuejs.org/error-reference/#runtime-${o}`;for(;i;){const u=i.ec;if(u){for(let g=0;g<u.length;g++)if(u[g](e,l,c)===!1)return}i=i.parent}if(s){kt(),Co(s,null,10,[e,l,c]),Pt();return}}lp(e,o,a,n,r)}function lp(e,t,o,n=!0,a=!1){if(a)throw e;console.error(e)}const Xe=[];let Et=-1;const Lo=[];let eo=null,No=0;const vi=Promise.resolve();let Jn=null;function rn(e){const t=Jn||vi;return e?t.then(this?e.bind(this):e):t}function cp(e){let t=Et+1,o=Xe.length;for(;t<o;){const n=t+o>>>1,a=Xe[n],s=ln(a);s<e||s===e&&a.flags&2?t=n+1:o=n}return t}function es(e){if(!(e.flags&1)){const t=ln(e),o=Xe[Xe.length-1];!o||!(e.flags&2)&&t>=ln(o)?Xe.push(e):Xe.splice(cp(t),0,e),e.flags|=1,Ai()}}function Ai(){Jn||(Jn=vi.then(ki))}function up(e){if(!ne(e))eo&&e.id===-1?eo.splice(No+1,0,e):e.flags&1||(Lo.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)Lo.push(e[t]);Ai()}function Si(e,t,o=Et+1){for(;o<Xe.length;o++){const n=Xe[o];if(n&&n.flags&2){if(e&&n.id!==e.uid)continue;Xe.splice(o,1),o--,n.flags&4&&(n.flags&=-2),n(),n.flags&4||(n.flags&=-2)}}}function wi(e){if(Lo.length){const t=[...new Set(Lo)].sort((o,n)=>ln(o)-ln(n));if(Lo.length=0,eo){for(let o=0;o<t.length;o++)eo.push(t[o]);return}for(eo=t,No=0;No<eo.length;No++){const o=eo[No];o.flags&4&&(o.flags&=-2),o.flags&8||o(),o.flags&=-2}eo=null,No=0}}const ln=e=>e.id==null?e.flags&2?-1:1/0:e.id;function ki(e){try{for(Et=0;Et<Xe.length;Et++){const t=Xe[Et];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),Co(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Et<Xe.length;Et++){const t=Xe[Et];t&&(t.flags&=-2)}Et=-1,Xe.length=0,wi(),Jn=null,(Xe.length||Lo.length)&&ki()}}let Je=null,Pi=null;function Zn(e){const t=Je;return Je=e,Pi=e&&e.type.__scopeId||null,t}function to(e,t=Je,o){if(!t||e._n)return e;const n=(...a)=>{n._d&&ca(-1);const s=Zn(t),r=Gt.length;let i;try{i=e(...a)}finally{for(let l=Gt.length;l>r;l--)ys();Zn(s),n._d&&ca(1)}return i};return n._n=!0,n._c=!0,n._d=!0,n}function bo(e,t,o,n){const a=e.dirs,s=t&&t.dirs;for(let r=0;r<a.length;r++){const i=a[r];s&&(i.oldValue=s[r].value);let l=i.dir[n];l&&(kt(),yt(l,o,8,[e.el,i,e,t]),Pt())}}function lt(e,t){if(Ke){let o=Ke.provides;const n=Ke.parent&&Ke.parent.provides;n===o&&(o=Ke.provides=Object.create(n)),o[e]=t}}function Ee(e,t,o=!1){const n=Kt();if(n||$o){let a=$o?$o._context.provides:n?n.parent==null||n.ce?n.vnode.appContext&&n.vnode.appContext.provides:n.parent.provides:void 0;if(a&&e in a)return a[e];if(arguments.length>1)return o&&re(t)?t.call(n&&n.proxy):t}}function dp(){return!!(Kt()||$o)}const pp=Symbol.for("v-scx"),gp=()=>Ee(pp);function fp(e,t){return ts(e,null,t)}function pt(e,t,o){return ts(e,t,o)}function ts(e,t,o=ve){const{immediate:n,deep:a,flush:s,once:r}=o,i=xe({},o),l=t&&n||!t&&s!=="post";let c;if(Oo){if(s==="sync"){const v=gp();c=v.__watcherHandles||(v.__watcherHandles=[])}else if(!l){const v=()=>{};return v.stop=St,v.resume=St,v.pause=St,v}}const u=Ke;i.call=(v,P,T)=>yt(v,u,P,T);let g=!1;s==="post"?i.scheduler=v=>{Qe(v,u&&u.suspense)}:s!=="sync"&&(g=!0,i.scheduler=(v,P)=>{P?v():es(v)}),i.augmentJob=v=>{t&&(v.flags|=4),g&&(v.flags|=2,u&&(v.id=u.uid,v.i=u))};const b=np(e,t,i);return Oo&&(c?c.push(b):l&&b()),b}function hp(e,t,o){const n=this.proxy,a=Ae(e)?e.includes(".")?Ti(n,e):()=>n[e]:e.bind(n,n);let s;re(t)?s=t:(s=t.handler,o=t);const r=_n(this),i=ts(a,s.bind(n),o);return r(),i}function Ti(e,t){const o=t.split(".");return()=>{let n=e;for(let a=0;a<o.length&&n;a++)n=n[o[a]];return n}}const oo=new WeakMap,Ei=Symbol("_vte"),Qn=e=>e.__isTeleport,yo=e=>e&&(e.disabled||e.disabled===""),mp=e=>e&&(e.defer||e.defer===""),Ci=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Li=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,os=(e,t)=>{const o=e&&e.to;return Ae(o)?t?t(o):null:o},bp={name:"Teleport",__isTeleport:!0,process(e,t,o,n,a,s,r,i,l,c){const{mc:u,pc:g,pbc:b,o:{insert:v,querySelector:P,createText:T,createComment:x,parentNode:I}}=c,w=yo(t.props);let{dynamicChildren:f}=t;const y=(_,A,m)=>{_.shapeFlag&16&&u(_.children,A,m,a,s,r,i,l)},E=(_=t)=>{const A=yo(_.props),m=_.target=os(_.props,P),M=ns(m,_,T,v);m&&(r!=="svg"&&Ci(m)?r="svg":r!=="mathml"&&Li(m)&&(r="mathml"),a&&a.isCE&&(a.ce._teleportTargets||(a.ce._teleportTargets=new Set)).add(m),A||(y(_,m,M),cn(_,!1)))},C=_=>{const A=()=>{if(oo.get(_)===A){if(oo.delete(_),yo(_.props)){const m=I(_.el)||o;y(_,m,_.anchor),cn(_,!0)}E(_)}};oo.set(_,A),Qe(A,s)};if(e==null){const _=t.el=T(""),A=t.anchor=T("");if(v(_,o,n),v(A,o,n),mp(t.props)||s&&s.pendingBranch){C(t);return}w&&(y(t,o,A),cn(t,!0)),E()}else{t.el=e.el;const _=t.anchor=e.anchor,A=oo.get(e);if(A){A.flags|=8,oo.delete(e),C(t);return}t.targetStart=e.targetStart;const m=t.target=e.target,M=t.targetAnchor=e.targetAnchor,D=yo(e.props),G=D?o:m,Y=D?_:M;if(r==="svg"||Ci(m)?r="svg":(r==="mathml"||Li(m))&&(r="mathml"),f?(b(e.dynamicChildren,f,G,a,s,r,i),ms(e,t,!0)):l||g(e,t,G,Y,a,s,r,i,!1),w)D?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):ea(t,o,_,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const Q=os(t.props,P);Q&&(t.target=Q,ea(t,Q,null,c,0))}else D&&ea(t,m,M,c,1);cn(t,w)}},remove(e,t,o,{um:n,o:{remove:a}},s){const{shapeFlag:r,children:i,anchor:l,targetStart:c,targetAnchor:u,target:g,props:b}=e,v=yo(b),P=s||!v,T=oo.get(e);if(T&&(T.flags|=8,oo.delete(e)),g&&(a(c),a(u)),s&&a(l),!T&&(v||g)&&r&16)for(let x=0;x<i.length;x++){const I=i[x];n(I,t,o,P,!!I.dynamicChildren)}},move:ea,hydrate:yp};function ea(e,t,o,{o:{insert:n},m:a},s=2){s===0&&n(e.targetAnchor,t,o);const{el:r,anchor:i,shapeFlag:l,children:c,props:u}=e,g=s===2;if(g&&n(r,t,o),!oo.has(e)&&(!g||yo(u))&&l&16)for(let b=0;b<c.length;b++)a(c[b],t,o,2);g&&n(i,t,o)}function yp(e,t,o,n,a,s,{o:{nextSibling:r,parentNode:i,querySelector:l,insert:c,createText:u}},g){function b(x,I){let w=I;for(;w;){if(w&&w.nodeType===8){if(w.data==="teleport start anchor")t.targetStart=w;else if(w.data==="teleport anchor"){t.targetAnchor=w,x._lpa=t.targetAnchor&&r(t.targetAnchor);break}}w=r(w)}}function v(x,I){I.anchor=g(r(x),I,i(x),o,n,a,s)}const P=t.target=os(t.props,l),T=yo(t.props);if(P){const x=P._lpa||P.firstChild;t.shapeFlag&16&&(T?(v(e,t),b(P,x),t.targetAnchor||ns(P,t,u,c,i(e)===P?e:null)):(t.anchor=r(e),b(P,x),t.targetAnchor||ns(P,t,u,c),g(x&&r(x),t,P,o,n,a,s))),cn(t,T)}else T&&t.shapeFlag&16&&(v(e,t),t.targetStart=e,t.targetAnchor=r(e));return t.anchor&&r(t.anchor)}const _p=bp;function cn(e,t){const o=e.ctx;if(o&&o.ut){let n,a;for(t?(n=e.el,a=e.anchor):(n=e.targetStart,a=e.targetAnchor);n&&n!==a;)n.nodeType===1&&n.setAttribute("data-v-owner",o.uid),n=n.nextSibling;o.ut()}}function ns(e,t,o,n,a=null){const s=t.targetStart=o(""),r=t.targetAnchor=o("");return s[Ei]=r,e&&(n(s,e,a),n(r,e,a)),r}const as=Symbol("_leaveCb");function $p(e){let t=e[0];if(e.length>1){for(const o of e)if(o.type!==Ct){t=o;break}}return t}function Ni(e){if(!na(e))return Qn(e.type)&&e.children?$p(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:o}=e;if(o){if(t&16)return o[0];if(t&32&&re(o.default))return o.default()}}function ss(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const o=e.component.subTree;ss(Qn(o.type)&&Ni(o)||o,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function un(e,t){return re(e)?xe({name:e.name},t,{setup:e}):e}function rs(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Mi(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}const ta=new WeakMap;function dn(e,t,o,n,a=!1){if(ne(e)){e.forEach((T,x)=>dn(T,t&&(ne(t)?t[x]:t),o,n,a));return}if(Mo(n)&&!a){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&dn(e,t,o,n.component.subTree);return}const s=n.shapeFlag&4?_s(n.component):n.el,r=a?null:s,{i,r:l}=e,c=t&&t.r,u=i.refs===ve?i.refs={}:i.refs,g=i.setupState,b=pe(g),v=g===ve?zr:T=>Mi(u,T)?!1:me(b,T),P=(T,x)=>!(x&&Mi(u,x));if(c!=null&&c!==l){if(xi(t),Ae(c))u[c]=null,v(c)&&(g[c]=null);else if(Te(c)){const T=t;P(c,T.k)&&(c.value=null),T.k&&(u[T.k]=null)}}if(re(l))Co(l,i,12,[r,u]);else{const T=Ae(l),x=Te(l);if(T||x){const I=()=>{if(e.f){const w=T?v(l)?g[l]:u[l]:P()||!e.k?l.value:u[e.k];if(a)ne(w)&&Fa(w,s);else if(ne(w))w.includes(s)||w.push(s);else if(T)u[l]=[s],v(l)&&(g[l]=u[l]);else{const f=[s];P(l,e.k)&&(l.value=f),e.k&&(u[e.k]=f)}}else T?(u[l]=r,v(l)&&(g[l]=r)):x&&(P(l,e.k)&&(l.value=r),e.k&&(u[e.k]=r))};if(r){const w=()=>{I(),ta.delete(e)};w.id=-1,ta.set(e,w),Qe(w,o)}else xi(e),I()}}}function xi(e){const t=ta.get(e);t&&(t.flags|=8,ta.delete(e))}const Ii=e=>e.nodeType===8;jn().requestIdleCallback,jn().cancelIdleCallback;function vp(e,t){if(Ii(e)&&e.data==="["){let o=1,n=e.nextSibling;for(;n;){if(n.nodeType===1){if(t(n)===!1)break}else if(Ii(n))if(n.data==="]"){if(--o===0)break}else n.data==="["&&o++;n=n.nextSibling}}else t(e)}const Mo=e=>!!e.type.__asyncLoader;function Ap(e){re(e)&&(e={loader:e});const{loader:t,loadingComponent:o,errorComponent:n,delay:a=200,hydrate:s,timeout:r,suspensible:i=!0,onError:l}=e;let c=null,u,g=0;const b=()=>(g++,c=null,v()),v=()=>{let P;return c||(P=c=t().catch(T=>{if(T=T instanceof Error?T:new Error(String(T)),l)return new Promise((x,I)=>{l(T,()=>x(b()),()=>I(T),g+1)});throw T}).then(T=>P!==c&&c?c:(T&&(T.__esModule||T[Symbol.toStringTag]==="Module")&&(T=T.default),u=T,T)))};return un({name:"AsyncComponentWrapper",__asyncLoader:v,__asyncHydrate(P,T,x){const I=P.isConnected;let w=!1;(T.bu||(T.bu=[])).push(()=>w=!0);const f=()=>{w||!P.parentNode||I&&!P.isConnected||x()},y=s?()=>{const E=s(f,C=>vp(P,C));E&&(T.bum||(T.bum=[])).push(E)}:f;u?y():v().then(()=>!T.isUnmounted&&y())},get __asyncResolved(){return u},setup(){const P=Ke;if(rs(P),u)return()=>oa(u,P);const T=E=>{c=null,sn(E,P,13,!n)};if(i&&P.suspense||Oo)return v().then(E=>()=>oa(E,P)).catch(E=>(T(E),()=>n?we(n,{error:E}):null));const x=ie(!1),I=ie(),w=ie(!!a);let f,y;return sa(()=>{f!=null&&clearTimeout(f),y!=null&&clearTimeout(y)}),a&&(y=setTimeout(()=>{P.isUnmounted||(w.value=!1)},a)),r!=null&&(f=setTimeout(()=>{if(!P.isUnmounted&&!x.value&&!I.value){const E=new Error(`Async component timed out after ${r}ms.`);T(E),I.value=E}},r)),v().then(()=>{P.isUnmounted||(x.value=!0,P.parent&&na(P.parent.vnode)&&P.parent.update())}).catch(E=>{if(P.isUnmounted){c=null;return}T(E),I.value=E}),()=>{if(x.value&&u)return oa(u,P);if(I.value&&n)return we(n,{error:I.value});if(o&&!w.value)return oa(o,P)}}})}function oa(e,t){const{ref:o,props:n,children:a,ce:s}=t.vnode,r=we(e,n,a);return r.ref=o,r.ce=s,delete t.vnode.ce,r}const na=e=>e.type.__isKeepAlive;function Sp(e,t){Oi(e,"a",t)}function wp(e,t){Oi(e,"da",t)}function Oi(e,t,o=Ke){const n=e.__wdc||(e.__wdc=()=>{let a=o;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(aa(t,n,o),o){let a=o.parent;for(;a&&a.parent;)na(a.parent.vnode)&&kp(n,t,o,a),a=a.parent}}function kp(e,t,o,n){const a=aa(t,e,n,!0);sa(()=>{Fa(n[t],a)},o)}function aa(e,t,o=Ke,n=!1){if(o){const a=o[e]||(o[e]=[]),s=t.__weh||(t.__weh=(...r)=>{kt();const i=_n(o),l=yt(t,o,e,r);return i(),Pt(),l});return n?a.unshift(s):a.push(s),s}}const zt=e=>(t,o=Ke)=>{(!Oo||e==="sp")&&aa(e,(...n)=>t(...n),o)},Fi=zt("bm"),_o=zt("m"),Pp=zt("bu"),Tp=zt("u"),xo=zt("bum"),sa=zt("um"),Ep=zt("sp"),Cp=zt("rtg"),Lp=zt("rtc");function Np(e,t=Ke){aa("ec",e,t)}const Mp="components",Ri=Symbol.for("v-ndc");function Di(e){return Ae(e)?xp(Mp,e,!1)||e:e||Ri}function xp(e,t,o=!0,n=!1){const a=Je||Ke;if(a){const s=a.type;{const i=bl(s,!1);if(i&&(i===t||i===je(t)||i===Dn(je(t))))return s}const r=ji(a[e]||s[e],t)||ji(a.appContext[e],t);return!r&&n?s:r}}function ji(e,t){return e&&(e[t]||e[je(t)]||e[Dn(je(t))])}function ra(e,t,o,n){let a;const s=o,r=ne(e);if(r||Ae(e)){const i=r&&jt(e);let l=!1,c=!1;i&&(l=!it(e),c=Bt(e),e=Gn(e)),a=new Array(e.length);for(let u=0,g=e.length;u<g;u++)a[u]=t(l?c?Eo(bt(e[u])):bt(e[u]):e[u],u,void 0,s)}else if(typeof e=="number"){a=new Array(e);for(let i=0;i<e;i++)a[i]=t(i+1,i,void 0,s)}else if(be(e))if(e[Symbol.iterator])a=Array.from(e,(i,l)=>t(i,l,void 0,s));else{const i=Object.keys(e);a=new Array(i.length);for(let l=0,c=i.length;l<c;l++){const u=i[l];a[l]=t(e[u],u,l,s)}}else a=[];return a}function is(e,t,o,n,a,s){if(o==null&&(o={}),Je.ce||Je.parent&&Mo(Je.parent)&&Je.parent.ce){const c=o,u=Object.keys(c).length>0;return ue(),gt(Be,null,[we("slot",c,n)],u?-2:64)}let r=e[t];r&&r._c&&(r._d=!1);const i=Gt.length;ue();let l;try{const c=r&&Bi(r(o)),u=o.key||s||c&&c.key;l=gt(Be,{key:(u&&!rt(u)?u:`_${t}`)+(!c&&n?"_fb":"")},c||(n?n():[]),c&&e._===1?64:-2)}catch(c){for(let u=Gt.length;u>i;u--)ys();throw c}finally{r&&r._c&&(r._d=!0)}return l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),l}function Bi(e){return e.some(t=>mn(t)?!(t.type===Ct||t.type===Be&&!Bi(t.children)):!0)?e:null}const ls=e=>e?fl(e)?_s(e):ls(e.parent):null,pn=xe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ls(e.parent),$root:e=>ls(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ki(e),$forceUpdate:e=>e.f||(e.f=()=>{es(e.update)}),$nextTick:e=>e.n||(e.n=rn.bind(e.proxy)),$watch:e=>hp.bind(e)}),cs=(e,t)=>e!==ve&&!e.__isScriptSetup&&me(e,t),Ip={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:o,setupState:n,data:a,props:s,accessCache:r,type:i,appContext:l}=e;if(t[0]!=="$"){const b=r[t];if(b!==void 0)switch(b){case 1:return n[t];case 2:return a[t];case 4:return o[t];case 3:return s[t]}else{if(cs(n,t))return r[t]=1,n[t];if(a!==ve&&me(a,t))return r[t]=2,a[t];if(me(s,t))return r[t]=3,s[t];if(o!==ve&&me(o,t))return r[t]=4,o[t];us&&(r[t]=0)}}const c=pn[t];let u,g;if(c)return t==="$attrs"&&qe(e.attrs,"get",""),c(e);if((u=i.__cssModules)&&(u=u[t]))return u;if(o!==ve&&me(o,t))return r[t]=4,o[t];if(g=l.config.globalProperties,me(g,t))return g[t]},set({_:e},t,o){const{data:n,setupState:a,ctx:s}=e;return cs(a,t)?(a[t]=o,!0):n!==ve&&me(n,t)?(n[t]=o,!0):me(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:n,appContext:a,props:s,type:r}},i){let l;return!!(o[i]||e!==ve&&i[0]!=="$"&&me(e,i)||cs(t,i)||me(s,i)||me(n,i)||me(pn,i)||me(a.config.globalProperties,i)||(l=r.__cssModules)&&l[i])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:me(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function zi(e){return ne(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}let us=!0;function Op(e){const t=Ki(e),o=e.proxy,n=e.ctx;us=!1,t.beforeCreate&&Gi(t.beforeCreate,e,"bc");const{data:a,computed:s,methods:r,watch:i,provide:l,inject:c,created:u,beforeMount:g,mounted:b,beforeUpdate:v,updated:P,activated:T,deactivated:x,beforeDestroy:I,beforeUnmount:w,destroyed:f,unmounted:y,render:E,renderTracked:C,renderTriggered:_,errorCaptured:A,serverPrefetch:m,expose:M,inheritAttrs:D,components:G,directives:Y,filters:Q}=t;if(c&&Fp(c,n,null),r)for(const q in r){const ee=r[q];re(ee)&&(n[q]=ee.bind(o))}if(a){const q=a.call(o,o);be(q)&&(e.data=Wn(q))}if(us=!0,s)for(const q in s){const ee=s[q],he=re(ee)?ee.bind(o,o):re(ee.get)?ee.get.bind(o,o):St,De=!re(ee)&&re(ee.set)?ee.set.bind(o):St,Le=ge({get:he,set:De});Object.defineProperty(n,q,{enumerable:!0,configurable:!0,get:()=>Le.value,set:Ne=>Le.value=Ne})}if(i)for(const q in i)Ui(i[q],n,o,q);if(l){const q=re(l)?l.call(o):l;Reflect.ownKeys(q).forEach(ee=>{lt(ee,q[ee])})}u&&Gi(u,e,"c");function R(q,ee){ne(ee)?ee.forEach(he=>q(he.bind(o))):ee&&q(ee.bind(o))}if(R(Fi,g),R(_o,b),R(Pp,v),R(Tp,P),R(Sp,T),R(wp,x),R(Np,A),R(Lp,C),R(Cp,_),R(xo,w),R(sa,y),R(Ep,m),ne(M))if(M.length){const q=e.exposed||(e.exposed={});M.forEach(ee=>{Object.defineProperty(q,ee,{get:()=>o[ee],set:he=>o[ee]=he,enumerable:!0})})}else e.exposed||(e.exposed={});E&&e.render===St&&(e.render=E),D!=null&&(e.inheritAttrs=D),G&&(e.components=G),Y&&(e.directives=Y),m&&rs(e)}function Fp(e,t,o=St){ne(e)&&(e=ds(e));for(const n in e){const a=e[n];let s;be(a)?"default"in a?s=Ee(a.from||n,a.default,!0):s=Ee(a.from||n):s=Ee(a),Te(s)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>s.value,set:r=>s.value=r}):t[n]=s}}function Gi(e,t,o){yt(ne(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,o)}function Ui(e,t,o,n){let a=n.includes(".")?Ti(o,n):()=>o[n];if(Ae(e)){const s=t[e];re(s)&&pt(a,s)}else if(re(e))pt(a,e.bind(o));else if(be(e))if(ne(e))e.forEach(s=>Ui(s,t,o,n));else{const s=re(e.handler)?e.handler.bind(o):t[e.handler];re(s)&&pt(a,s,e)}}function Ki(e){const t=e.type,{mixins:o,extends:n}=t,{mixins:a,optionsCache:s,config:{optionMergeStrategies:r}}=e.appContext,i=s.get(t);let l;return i?l=i:!a.length&&!o&&!n?l=t:(l={},a.length&&a.forEach(c=>ia(l,c,r,!0)),ia(l,t,r)),be(t)&&s.set(t,l),l}function ia(e,t,o,n=!1){const{mixins:a,extends:s}=t;s&&ia(e,s,o,!0),a&&a.forEach(r=>ia(e,r,o,!0));for(const r in t)if(!(n&&r==="expose")){const i=Rp[r]||o&&o[r];e[r]=i?i(e[r],t[r]):t[r]}return e}const Rp={data:Hi,props:Wi,emits:Wi,methods:gn,computed:gn,beforeCreate:Ze,created:Ze,beforeMount:Ze,mounted:Ze,beforeUpdate:Ze,updated:Ze,beforeDestroy:Ze,beforeUnmount:Ze,destroyed:Ze,unmounted:Ze,activated:Ze,deactivated:Ze,errorCaptured:Ze,serverPrefetch:Ze,components:gn,directives:gn,watch:jp,provide:Hi,inject:Dp};function Hi(e,t){return t?e?function(){return xe(re(e)?e.call(this,this):e,re(t)?t.call(this,this):t)}:t:e}function Dp(e,t){return gn(ds(e),ds(t))}function ds(e){if(ne(e)){const t={};for(let o=0;o<e.length;o++)t[e[o]]=e[o];return t}return e}function Ze(e,t){return e?[...new Set([].concat(e,t))]:t}function gn(e,t){return e?xe(Object.create(null),e,t):t}function Wi(e,t){return e?ne(e)&&ne(t)?[...new Set([...e,...t])]:xe(Object.create(null),zi(e),zi(t??{})):t}function jp(e,t){if(!e)return t;if(!t)return e;const o=xe(Object.create(null),e);for(const n in t)o[n]=Ze(e[n],t[n]);return o}function qi(){return{app:null,config:{isNativeTag:zr,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Bp=0;function zp(e,t){return function(n,a=null){re(n)||(n=xe({},n)),a!=null&&!be(a)&&(a=null);const s=qi(),r=new WeakSet,i=[];let l=!1;const c=s.app={_uid:Bp++,_component:n,_props:a,_container:null,_context:s,_instance:null,version:_g,get config(){return s.config},set config(u){},use(u,...g){return r.has(u)||(u&&re(u.install)?(r.add(u),u.install(c,...g)):re(u)&&(r.add(u),u(c,...g))),c},mixin(u){return s.mixins.includes(u)||s.mixins.push(u),c},component(u,g){return g?(s.components[u]=g,c):s.components[u]},directive(u,g){return g?(s.directives[u]=g,c):s.directives[u]},mount(u,g,b){if(!l){const v=c._ceVNode||we(n,a);return v.appContext=s,b===!0?b="svg":b===!1&&(b=void 0),e(v,u,b),l=!0,c._container=u,u.__vue_app__=c,_s(v.component)}},onUnmount(u){i.push(u)},unmount(){l&&(yt(i,c._instance,16),e(null,c._container),delete c._container.__vue_app__)},provide(u,g){return s.provides[u]=g,c},runWithContext(u){const g=$o;$o=c;try{return u()}finally{$o=g}}};return c}}let $o=null;const Gp=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${je(t)}Modifiers`]||e[`${dt(t)}Modifiers`];function Up(e,t,...o){if(e.isUnmounted)return;const n=e.vnode.props||ve;let a=o;const s=t.startsWith("update:"),r=s&&Gp(n,t.slice(7));r&&(r.trim&&(a=o.map(u=>Ae(u)?u.trim():u)),r.number&&(a=a.map(Ad)));let i,l=n[i=Ra(t)]||n[i=Ra(je(t))];!l&&s&&(l=n[i=Ra(dt(t))]),l&&yt(l,e,6,a);const c=n[i+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,yt(c,e,6,a)}}const Kp=new WeakMap;function Vi(e,t,o=!1){const n=o?Kp:t.emitsCache,a=n.get(e);if(a!==void 0)return a;const s=e.emits;let r={},i=!1;if(!re(e)){const l=c=>{const u=Vi(c,t,!0);u&&(i=!0,xe(r,u))};!o&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!s&&!i?(be(e)&&n.set(e,null),null):(ne(s)?s.forEach(l=>r[l]=null):xe(r,s),be(e)&&n.set(e,r),r)}function la(e,t){return!e||!Mn(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),me(e,t[0].toLowerCase()+t.slice(1))||me(e,dt(t))||me(e,t))}function M$(){}function Yi(e){const{type:t,vnode:o,proxy:n,withProxy:a,propsOptions:[s],slots:r,attrs:i,emit:l,render:c,renderCache:u,props:g,data:b,setupState:v,ctx:P,inheritAttrs:T}=e,x=Zn(e);let I,w;try{if(o.shapeFlag&4){const y=a||n,E=y;I=Nt(c.call(E,y,u,g,v,b,P)),w=i}else{const y=t;I=Nt(y.length>1?y(g,{attrs:i,slots:r,emit:l}):y(g,null)),w=t.props?i:Hp(i)}}catch(y){Gt.length=0,sn(y,e,1),I=we(Ct)}let f=I;if(w&&T!==!1){const y=Object.keys(w),{shapeFlag:E}=f;y.length&&E&7&&(s&&y.some(xn)&&(w=Wp(w,s)),f=Io(f,w,!1,!0))}if(o.dirs&&(f=Io(f,null,!1,!0),f.dirs=f.dirs?f.dirs.concat(o.dirs):o.dirs),o.transition){const y=Qn(f.type)&&Ni(f)||f;ss(y,o.transition)}return I=f,Zn(x),I}const Hp=e=>{let t;for(const o in e)(o==="class"||o==="style"||Mn(o))&&((t||(t={}))[o]=e[o]);return t},Wp=(e,t)=>{const o={};for(const n in e)(!xn(n)||!(n.slice(9)in t))&&(o[n]=e[n]);return o};function qp(e,t,o){const{props:n,children:a,component:s}=e,{props:r,children:i,patchFlag:l}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&l>=0){if(l&1024)return!0;if(l&16)return n?Xi(n,r,c):!!r;if(l&8){const u=t.dynamicProps;for(let g=0;g<u.length;g++){const b=u[g];if(Ji(r,n,b)&&!la(c,b))return!0}}}else return(a||i)&&(!i||!i.$stable)?!0:n===r?!1:n?r?Xi(n,r,c):!0:!!r;return!1}function Xi(e,t,o){const n=Object.keys(t);if(n.length!==Object.keys(e).length)return!0;for(let a=0;a<n.length;a++){const s=n[a];if(Ji(t,e,s)&&!la(o,s))return!0}return!1}function Ji(e,t,o){const n=e[o],a=t[o];return o==="style"&&be(n)&&be(a)?!Bn(n,a):n!==a}function Vp({vnode:e,parent:t,suspense:o},n){for(;t;){const a=t.subTree;if(a.suspense&&a.suspense.activeBranch===e&&(a.suspense.vnode.el=a.el=n,e=a),a===e)(e=t.vnode).el=n,t=t.parent;else break}o&&o.activeBranch===e&&(o.vnode.el=n)}const Zi={},Qi=()=>Object.create(Zi),el=e=>Object.getPrototypeOf(e)===Zi;function Yp(e,t,o,n=!1){const a={},s=Qi();e.propsDefaults=Object.create(null),tl(e,t,a,s);for(const r in e.propsOptions[0])r in a||(a[r]=void 0);o?e.props=n?a:Vd(a):e.type.props?e.props=a:e.props=s,e.attrs=s}function Xp(e,t,o,n){const{props:a,attrs:s,vnode:{patchFlag:r}}=e,i=pe(a),[l]=e.propsOptions;let c=!1;if((n||r>0)&&!(r&16)){if(r&8){const u=e.vnode.dynamicProps;for(let g=0;g<u.length;g++){let b=u[g];if(la(e.emitsOptions,b))continue;const v=t[b];if(l)if(me(s,b))v!==s[b]&&(s[b]=v,c=!0);else{const P=je(b);a[P]=ps(l,i,P,v,e,!1)}else v!==s[b]&&(s[b]=v,c=!0)}}}else{tl(e,t,a,s)&&(c=!0);let u;for(const g in i)(!t||!me(t,g)&&((u=dt(g))===g||!me(t,u)))&&(l?o&&(o[g]!==void 0||o[u]!==void 0)&&(a[g]=ps(l,i,g,void 0,e,!0)):delete a[g]);if(s!==i)for(const g in s)(!t||!me(t,g))&&(delete s[g],c=!0)}c&&Rt(e.attrs,"set","")}function tl(e,t,o,n){const[a,s]=e.propsOptions;let r=!1,i;if(t)for(let l in t){if(Xo(l))continue;const c=t[l];let u;a&&me(a,u=je(l))?!s||!s.includes(u)?o[u]=c:(i||(i={}))[u]=c:la(e.emitsOptions,l)||(!(l in n)||c!==n[l])&&(n[l]=c,r=!0)}if(s){const l=pe(o),c=i||ve;for(let u=0;u<s.length;u++){const g=s[u];o[g]=ps(a,l,g,c[g],e,!me(c,g))}}return r}function ps(e,t,o,n,a,s){const r=e[o];if(r!=null){const i=me(r,"default");if(i&&n===void 0){const l=r.default;if(r.type!==Function&&!r.skipFactory&&re(l)){const{propsDefaults:c}=a;if(o in c)n=c[o];else{const u=_n(a);n=c[o]=l.call(null,t),u()}}else n=l;a.ce&&a.ce._setProp(o,n)}r[0]&&(s&&!i?n=!1:r[1]&&(n===""||n===dt(o))&&(n=!0))}return n}const Jp=new WeakMap;function ol(e,t,o=!1){const n=o?Jp:t.propsCache,a=n.get(e);if(a)return a;const s=e.props,r={},i=[];let l=!1;if(!re(e)){const u=g=>{l=!0;const[b,v]=ol(g,t,!0);xe(r,b),v&&i.push(...v)};!o&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!s&&!l)return be(e)&&n.set(e,Po),Po;if(ne(s))for(let u=0;u<s.length;u++){const g=je(s[u]);nl(g)&&(r[g]=ve)}else if(s)for(const u in s){const g=je(u);if(nl(g)){const b=s[u],v=r[g]=ne(b)||re(b)?{type:b}:xe({},b),P=v.type;let T=!1,x=!0;if(ne(P))for(let I=0;I<P.length;++I){const w=P[I],f=re(w)&&w.name;if(f==="Boolean"){T=!0;break}else f==="String"&&(x=!1)}else T=re(P)&&P.name==="Boolean";v[0]=T,v[1]=x,(T||me(v,"default"))&&i.push(g)}}const c=[r,i];return be(e)&&n.set(e,c),c}function nl(e){return e[0]!=="$"&&!Xo(e)}const gs=e=>e==="_"||e==="_ctx"||e==="$stable",fs=e=>ne(e)?e.map(Nt):[Nt(e)],Zp=(e,t,o)=>{if(t._n)return t;const n=to((...a)=>fs(t(...a)),o);return n._c=!1,n},al=(e,t,o)=>{const n=e._ctx;for(const a in e){if(gs(a))continue;const s=e[a];if(re(s))t[a]=Zp(a,s,n);else if(s!=null){const r=fs(s);t[a]=()=>r}}},sl=(e,t)=>{const o=fs(t);e.slots.default=()=>o},rl=(e,t,o)=>{for(const n in t)(o||!gs(n))&&(e[n]=t[n])},Qp=(e,t,o)=>{const n=e.slots=Qi();if(e.vnode.shapeFlag&32){const a=t._;a?(rl(n,t,o),o&&Hr(n,"_",a,!0)):al(t,n)}else t&&sl(e,t)},eg=(e,t,o)=>{const{vnode:n,slots:a}=e;let s=!0,r=ve;if(n.shapeFlag&32){const i=t._;i?o&&i===1?s=!1:rl(a,t,o):(s=!t.$stable,al(t,a)),r=t}else t&&(sl(e,t),r={default:1});if(s)for(const i in a)!gs(i)&&r[i]==null&&delete a[i]},Qe=sg;function tg(e){return og(e)}function og(e,t){const o=jn();o.__VUE__=!0;const{insert:n,remove:a,patchProp:s,createElement:r,createText:i,createComment:l,setText:c,setElementText:u,parentNode:g,nextSibling:b,setScopeId:v=St,insertStaticContent:P}=e,T=(h,S,$,O=null,B=null,k=null,K=void 0,U=null,p=!!S.dynamicChildren)=>{if(h===S)return;h&&!bn(h,S)&&(O=Me(h),Ne(h,B,k,!0),h=null),S.patchFlag===-2&&(p=!1,S.dynamicChildren=null);const{type:d,ref:L,shapeFlag:j}=S;switch(d){case fn:x(h,S,$,O);break;case Ct:I(h,S,$,O);break;case bs:h==null&&w(S,$,O,K);break;case Be:G(h,S,$,O,B,k,K,U,p);break;default:j&1?E(h,S,$,O,B,k,K,U,p):j&6?Y(h,S,$,O,B,k,K,U,p):(j&64||j&128)&&d.process(h,S,$,O,B,k,K,U,p,H)}L!=null&&B?dn(L,h&&h.ref,k,S||h,!S):L==null&&h&&h.ref!=null&&dn(h.ref,null,k,h,!0)},x=(h,S,$,O)=>{if(h==null)n(S.el=i(S.children),$,O);else{const B=S.el=h.el;S.children!==h.children&&c(B,S.children)}},I=(h,S,$,O)=>{h==null?n(S.el=l(S.children||""),$,O):S.el=h.el},w=(h,S,$,O)=>{[h.el,h.anchor]=P(h.children,S,$,O,h.el,h.anchor)},f=({el:h,anchor:S},$,O)=>{let B;for(;h&&h!==S;)B=b(h),n(h,$,O),h=B;n(S,$,O)},y=({el:h,anchor:S})=>{let $;for(;h&&h!==S;)$=b(h),a(h),h=$;a(S)},E=(h,S,$,O,B,k,K,U,p)=>{if(S.type==="svg"?K="svg":S.type==="math"&&(K="mathml"),h==null)C(S,$,O,B,k,K,U,p);else{const d=h.el&&h.el._isVueCE?h.el:null;try{d&&d._beginPatch(),m(h,S,B,k,K,U,p)}finally{d&&d._endPatch()}}},C=(h,S,$,O,B,k,K,U)=>{let p,d;const{props:L,shapeFlag:j,transition:X,dirs:W}=h;if(p=h.el=r(h.type,k,L&&L.is,L),j&8?u(p,h.children):j&16&&A(h.children,p,null,O,B,hs(h,k),K,U),W&&bo(h,null,O,"created"),_(p,h,h.scopeId,K,O),L){for(const z in L)z!=="value"&&!Xo(z)&&s(p,z,null,L[z],k,O);"value"in L&&s(p,"value",null,L.value,k),(d=L.onVnodeBeforeMount)&&Mt(d,O,h)}W&&bo(h,null,O,"beforeMount");const N=ng(B,X);N&&X.beforeEnter(p),n(p,S,$),((d=L&&L.onVnodeMounted)||N||W)&&Qe(()=>{try{d&&Mt(d,O,h),N&&X.enter(p),W&&bo(h,null,O,"mounted")}finally{}},B)},_=(h,S,$,O,B)=>{if($&&v(h,$),O)for(let k=0;k<O.length;k++)v(h,O[k]);if(B){let k=B.subTree;if(S===k||ul(k.type)&&(k.ssContent===S||k.ssFallback===S)){const K=B.vnode;_(h,K,K.scopeId,K.slotScopeIds,B.parent)}}},A=(h,S,$,O,B,k,K,U,p=0)=>{for(let d=p;d<h.length;d++){const L=h[d]=U?Ut(h[d]):Nt(h[d]);T(null,L,S,$,O,B,k,K,U)}},m=(h,S,$,O,B,k,K)=>{const U=S.el=h.el;let{patchFlag:p,dynamicChildren:d,dirs:L}=S;p|=h.patchFlag&16;const j=h.props||ve,X=S.props||ve;let W;if($&&vo($,!1),(W=X.onVnodeBeforeUpdate)&&Mt(W,$,S,h),L&&bo(S,h,$,"beforeUpdate"),$&&vo($,!0),d&&(!h.dynamicChildren||h.dynamicChildren.length!==d.length)&&(p=0,K=!1,d=null),(j.innerHTML&&X.innerHTML==null||j.textContent&&X.textContent==null)&&u(U,""),d?M(h.dynamicChildren,d,U,$,O,hs(S,B),k):K||ee(h,S,U,null,$,O,hs(S,B),k,!1),p>0){if(p&16)D(U,j,X,$,B);else if(p&2&&j.class!==X.class&&s(U,"class",null,X.class,B),p&4&&s(U,"style",j.style,X.style,B),p&8){const N=S.dynamicProps;for(let z=0;z<N.length;z++){const te=N[z],ce=j[te],ye=X[te];(ye!==ce||te==="value")&&s(U,te,ce,ye,B,$)}}p&1&&h.children!==S.children&&u(U,S.children)}else!K&&d==null&&D(U,j,X,$,B);((W=X.onVnodeUpdated)||L)&&Qe(()=>{W&&Mt(W,$,S,h),L&&bo(S,h,$,"updated")},O)},M=(h,S,$,O,B,k,K)=>{for(let U=0;U<S.length;U++){const p=h[U],d=S[U],L=p.el&&(p.type===Be||!bn(p,d)||p.shapeFlag&198)?g(p.el):$;T(p,d,L,null,O,B,k,K,!0)}},D=(h,S,$,O,B)=>{if(S!==$){if(S!==ve)for(const k in S)!Xo(k)&&!(k in $)&&s(h,k,S[k],null,B,O);for(const k in $){if(Xo(k))continue;const K=$[k],U=S[k];K!==U&&k!=="value"&&s(h,k,U,K,B,O)}"value"in $&&s(h,"value",S.value,$.value,B)}},G=(h,S,$,O,B,k,K,U,p)=>{const d=S.el=h?h.el:i(""),L=S.anchor=h?h.anchor:i("");let{patchFlag:j,dynamicChildren:X,slotScopeIds:W}=S;W&&(U=U?U.concat(W):W),h==null?(n(d,$,O),n(L,$,O),A(S.children||[],$,L,B,k,K,U,p)):j>0&&j&64&&X&&h.dynamicChildren&&h.dynamicChildren.length===X.length?(M(h.dynamicChildren,X,$,B,k,K,U),(S.key!=null||B&&S===B.subTree)&&ms(h,S,!0)):ee(h,S,$,L,B,k,K,U,p)},Y=(h,S,$,O,B,k,K,U,p)=>{S.slotScopeIds=U,h==null?S.shapeFlag&512?B.ctx.activate(S,$,O,K,p):Q(S,$,O,B,k,K,p):F(h,S,p)},Q=(h,S,$,O,B,k,K)=>{const U=h.component=dg(h,O,B);if(na(h)&&(U.ctx.renderer=H),pg(U,!1,K),U.asyncDep){if(B&&B.registerDep(U,R,K),!h.el){const p=U.subTree=we(Ct);I(null,p,S,$),h.placeholder=p.el}}else R(U,h,S,$,B,k,K)},F=(h,S,$)=>{const O=S.component=h.component;if(qp(h,S,$))if(O.asyncDep&&!O.asyncResolved){q(O,S,$);return}else O.next=S,O.update();else S.el=h.el,O.vnode=S},R=(h,S,$,O,B,k,K)=>{const U=()=>{if(h.isMounted){let{next:j,bu:X,u:W,parent:N,vnode:z}=h;{const Oe=il(h);if(Oe){j&&(j.el=z.el,q(h,j,K)),Oe.asyncDep.then(()=>{Qe(()=>{h.isUnmounted||d()},B)});return}}let te=j,ce;vo(h,!1),j?(j.el=z.el,q(h,j,K)):j=z,X&&Da(X),(ce=j.props&&j.props.onVnodeBeforeUpdate)&&Mt(ce,N,j,z),vo(h,!0);const ye=Yi(h),Ge=h.subTree;h.subTree=ye,T(Ge,ye,g(Ge.el),Me(Ge),h,B,k),j.el=ye.el,te===null&&Vp(h,ye.el),W&&Qe(W,B),(ce=j.props&&j.props.onVnodeUpdated)&&Qe(()=>Mt(ce,N,j,z),B)}else{let j;const{el:X,props:W}=S,{bm:N,m:z,parent:te,root:ce,type:ye}=h,Ge=Mo(S);vo(h,!1),N&&Da(N),!Ge&&(j=W&&W.onVnodeBeforeMount)&&Mt(j,te,S),vo(h,!0);{ce.ce&&ce.ce._hasShadowRoot()&&ce.ce._injectChildStyle(ye,h.parent?h.parent.type:void 0);const Oe=h.subTree=Yi(h);T(null,Oe,$,O,h,B,k),S.el=Oe.el}if(z&&Qe(z,B),!Ge&&(j=W&&W.onVnodeMounted)){const Oe=S;Qe(()=>Mt(j,te,Oe),B)}(S.shapeFlag&256||te&&Mo(te.vnode)&&te.vnode.shapeFlag&256)&&h.a&&Qe(h.a,B),h.isMounted=!0,S=$=O=null}};h.scope.on();const p=h.effect=new ei(U);h.scope.off();const d=h.update=p.run.bind(p),L=h.job=p.runIfDirty.bind(p);L.i=h,L.id=h.uid,p.scheduler=()=>es(L),vo(h,!0),d()},q=(h,S,$)=>{S.component=h;const O=h.vnode.props;h.vnode=S,h.next=null,Xp(h,S.props,O,$),eg(h,S.children,$),kt(),Si(h),Pt()},ee=(h,S,$,O,B,k,K,U,p=!1)=>{const d=h&&h.children,L=h?h.shapeFlag:0,j=S.children,{patchFlag:X,shapeFlag:W}=S;if(X>0){if(X&128){De(d,j,$,O,B,k,K,U,p);return}else if(X&256){he(d,j,$,O,B,k,K,U,p);return}}W&8?(L&16&&We(d,B,k),j!==d&&u($,j)):L&16?W&16?De(d,j,$,O,B,k,K,U,p):We(d,B,k,!0):(L&8&&u($,""),W&16&&A(j,$,O,B,k,K,U,p))},he=(h,S,$,O,B,k,K,U,p)=>{h=h||Po,S=S||Po;const d=h.length,L=S.length,j=Math.min(d,L);let X;for(X=0;X<j;X++){const W=S[X]=p?Ut(S[X]):Nt(S[X]);T(h[X],W,$,null,B,k,K,U,p)}d>L?We(h,B,k,!0,!1,j):A(S,$,O,B,k,K,U,p,j)},De=(h,S,$,O,B,k,K,U,p)=>{let d=0;const L=S.length;let j=h.length-1,X=L-1;for(;d<=j&&d<=X;){const W=h[d],N=S[d]=p?Ut(S[d]):Nt(S[d]);if(bn(W,N))T(W,N,$,null,B,k,K,U,p);else break;d++}for(;d<=j&&d<=X;){const W=h[j],N=S[X]=p?Ut(S[X]):Nt(S[X]);if(bn(W,N))T(W,N,$,null,B,k,K,U,p);else break;j--,X--}if(d>j){if(d<=X){const W=X+1,N=W<L?S[W].el:O;for(;d<=X;)T(null,S[d]=p?Ut(S[d]):Nt(S[d]),$,N,B,k,K,U,p),d++}}else if(d>X)for(;d<=j;)Ne(h[d],B,k,!0),d++;else{const W=d,N=d,z=new Map;for(d=N;d<=X;d++){const Ye=S[d]=p?Ut(S[d]):Nt(S[d]);Ye.key!=null&&z.set(Ye.key,d)}let te,ce=0;const ye=X-N+1;let Ge=!1,Oe=0;const Ft=new Array(ye);for(d=0;d<ye;d++)Ft[d]=0;for(d=W;d<=j;d++){const Ye=h[d];if(ce>=ye){Ne(Ye,B,k,!0);continue}let ut;if(Ye.key!=null)ut=z.get(Ye.key);else for(te=N;te<=X;te++)if(Ft[te-N]===0&&bn(Ye,S[te])){ut=te;break}ut===void 0?Ne(Ye,B,k,!0):(Ft[ut-N]=d+1,ut>=Oe?Oe=ut:Ge=!0,T(Ye,S[ut],$,null,B,k,K,U,p),ce++)}const qo=Ge?ag(Ft):Po;for(te=qo.length-1,d=ye-1;d>=0;d--){const Ye=N+d,ut=S[Ye],gd=S[Ye+1],fd=Ye+1<L?gd.el||cl(gd):O;Ft[d]===0?T(null,ut,$,fd,B,k,K,U,p):Ge&&(te<0||d!==qo[te]?Le(ut,$,fd,2):te--)}}},Le=(h,S,$,O,B=null)=>{const{el:k,type:K,transition:U,children:p,shapeFlag:d}=h;if(d&6){Le(h.component.subTree,S,$,O);return}if(d&128){h.suspense.move(S,$,O);return}if(d&64){K.move(h,S,$,H);return}if(K===Be){n(k,S,$);for(let j=0;j<p.length;j++)Le(p[j],S,$,O);n(h.anchor,S,$);return}if(K===bs){f(h,S,$);return}if(O!==2&&d&1&&U)if(O===0)U.persisted&&!k[as]?n(k,S,$):(U.beforeEnter(k),n(k,S,$),Qe(()=>U.enter(k),B));else{const{leave:j,delayLeave:X,afterLeave:W}=U,N=()=>{h.ctx.isUnmounted?a(k):n(k,S,$)},z=()=>{const te=k._isLeaving||!!k[as];k._isLeaving&&k[as](!0),U.persisted&&!te?N():j(k,()=>{N(),W&&W()})};X?X(k,N,z):z()}else n(k,S,$)},Ne=(h,S,$,O=!1,B=!1)=>{const{type:k,props:K,ref:U,children:p,dynamicChildren:d,shapeFlag:L,patchFlag:j,dirs:X,cacheIndex:W,memo:N}=h;if(j===-2&&(B=!1),U!=null&&(kt(),dn(U,null,$,h,!0),Pt()),W!=null&&(S.renderCache[W]=void 0),L&256){S.ctx.deactivate(h);return}const z=L&1&&X,te=!Mo(h);let ce;if(te&&(ce=K&&K.onVnodeBeforeUnmount)&&Mt(ce,S,h),L&6)At(h.component,$,O);else{if(L&128){h.suspense.unmount($,O);return}z&&bo(h,null,S,"beforeUnmount"),L&64?h.type.remove(h,S,$,H,O):d&&!d.hasOnce&&(k!==Be||j>0&&j&64)?We(d,S,$,!1,!0):(k===Be&&j&384||!B&&L&16)&&We(p,S,$),O&&tt(h)}const ye=N!=null&&W==null;(te&&(ce=K&&K.onVnodeUnmounted)||z||ye)&&Qe(()=>{ce&&Mt(ce,S,h),z&&bo(h,null,S,"unmounted"),ye&&(h.el=null)},$)},tt=h=>{const{type:S,el:$,anchor:O,transition:B}=h;if(S===Be){st($,O);return}if(S===bs){y(h);return}const k=()=>{a($),B&&!B.persisted&&B.afterLeave&&B.afterLeave()};if(h.shapeFlag&1&&B&&!B.persisted){const{leave:K,delayLeave:U}=B,p=()=>K($,k);U?U(h.el,k,p):p()}else k()},st=(h,S)=>{let $;for(;h!==S;)$=b(h),a(h),h=$;a(S)},At=(h,S,$)=>{const{bum:O,scope:B,job:k,subTree:K,um:U,m:p,a:d}=h;ll(p),ll(d),O&&Da(O),B.stop(),k&&(k.flags|=8,Ne(K,h,S,$)),U&&Qe(U,S),Qe(()=>{h.isUnmounted=!0},S)},We=(h,S,$,O=!1,B=!1,k=0)=>{for(let K=k;K<h.length;K++)Ne(h[K],S,$,O,B)},Me=h=>{if(h.shapeFlag&6)return Me(h.component.subTree);if(h.shapeFlag&128)return h.suspense.next();const S=b(h.anchor||h.el),$=S&&S[Ei];return $?b($):S};let V=!1;const J=(h,S,$)=>{let O;h==null?S._vnode&&(Ne(S._vnode,null,null,!0),O=S._vnode.component):T(S._vnode||null,h,S,null,null,null,$),S._vnode=h,V||(V=!0,Si(O),wi(),V=!1)},H={p:T,um:Ne,m:Le,r:tt,mt:Q,mc:A,pc:ee,pbc:M,n:Me,o:e};return{render:J,hydrate:void 0,createApp:zp(J)}}function hs({type:e,props:t},o){return o==="svg"&&e==="foreignObject"||o==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:o}function vo({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function ng(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ms(e,t,o=!1){const n=e.children,a=t.children;if(ne(n)&&ne(a))for(let s=0;s<n.length;s++){const r=n[s];let i=a[s];i.shapeFlag&1&&!i.dynamicChildren&&((i.patchFlag<=0||i.patchFlag===32)&&(i=a[s]=Ut(a[s]),i.el=r.el),!o&&i.patchFlag!==-2&&ms(r,i)),i.type===fn&&(i.patchFlag===-1&&(i=a[s]=Ut(i)),i.el=r.el),i.type===Ct&&!i.el&&(i.el=r.el)}}function ag(e){const t=e.slice(),o=[0];let n,a,s,r,i;const l=e.length;for(n=0;n<l;n++){const c=e[n];if(c!==0){if(a=o[o.length-1],e[a]<c){t[n]=a,o.push(n);continue}for(s=0,r=o.length-1;s<r;)i=s+r>>1,e[o[i]]<c?s=i+1:r=i;c<e[o[s]]&&(s>0&&(t[n]=o[s-1]),o[s]=n)}}for(s=o.length,r=o[s-1];s-- >0;)o[s]=r,r=t[r];return o}function il(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:il(t)}function ll(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function cl(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?cl(t.subTree):null}const ul=e=>e.__isSuspense;function sg(e,t){t&&t.pendingBranch?ne(e)?t.effects.push(...e):t.effects.push(e):up(e)}const Be=Symbol.for("v-fgt"),fn=Symbol.for("v-txt"),Ct=Symbol.for("v-cmt"),bs=Symbol.for("v-stc"),Gt=[];let ct=null;function ue(e=!1){Gt.push(ct=e?null:[])}function ys(){Gt.pop(),ct=Gt[Gt.length-1]||null}let hn=1;function ca(e,t=!1){hn+=e,e<0&&ct&&t&&(ct.hasOnce=!0)}function dl(e){return e.dynamicChildren=hn>0?ct||Po:null,ys(),hn>0&&ct&&ct.push(e),e}function $e(e,t,o,n,a,s){return dl(oe(e,t,o,n,a,s,!0))}function gt(e,t,o,n,a){return dl(we(e,t,o,n,a,!0))}function mn(e){return e?e.__v_isVNode===!0:!1}function bn(e,t){return e.type===t.type&&e.key===t.key}const pl=({key:e})=>e??null,ua=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?Ae(e)||Te(e)||re(e)?{i:Je,r:e,k:t,f:!!o}:e:null);function oe(e,t=null,o=null,n=0,a=null,s=e===Be?0:1,r=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&pl(t),ref:t&&ua(t),scopeId:Pi,slotScopeIds:null,children:o,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:n,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:Je};return i?(da(l,o),s&128&&e.normalize(l)):o&&(l.shapeFlag|=Ae(o)?8:16),hn>0&&!r&&ct&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&ct.push(l),l}const we=rg;function rg(e,t=null,o=null,n=0,a=null,s=!1){if((!e||e===Ri)&&(e=Ct),mn(e)){const i=Io(e,t,!0);return o&&da(i,o),hn>0&&!s&&ct&&(i.shapeFlag&6?ct[ct.indexOf(e)]=i:ct.push(i)),i.patchFlag=-2,i}if(yg(e)&&(e=e.__vccOpts),t){t=ig(t);let{class:i,style:l}=t;i&&!Ae(i)&&(t.class=ot(i)),be(l)&&(Vn(l)&&!ne(l)&&(l=xe({},l)),t.style=Jo(l))}const r=Ae(e)?1:ul(e)?128:Qn(e)?64:be(e)?4:re(e)?2:0;return oe(e,t,o,n,a,r,s,!0)}function ig(e){return e?Vn(e)||el(e)?xe({},e):e:null}function Io(e,t,o=!1,n=!1){const{props:a,ref:s,patchFlag:r,children:i,transition:l}=e,c=t?lg(a||{},t):a,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&pl(c),ref:t&&t.ref?o&&s?ne(s)?s.concat(ua(t)):[s,ua(t)]:ua(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Be?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Io(e.ssContent),ssFallback:e.ssFallback&&Io(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&ss(u,l.clone(u)),u}function _t(e=" ",t=0){return we(fn,null,e,t)}function Lt(e="",t=!1){return t?(ue(),gt(Ct,null,e)):we(Ct,null,e)}function Nt(e){return e==null||typeof e=="boolean"?we(Ct):ne(e)?we(Be,null,e.slice()):mn(e)?Ut(e):we(fn,null,String(e))}function Ut(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Io(e)}function da(e,t){let o=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(ne(t))o=16;else if(typeof t=="object")if(n&65){const a=t.default;a&&(a._c&&(a._d=!1),da(e,a()),a._c&&(a._d=!0));return}else{o=32;const a=t._;!a&&!el(t)?t._ctx=Je:a===3&&Je&&(Je.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(re(t)){if(n&65){da(e,{default:t});return}t={default:t,_ctx:Je},o=32}else t=String(t),n&64?(o=16,t=[_t(t)]):o=8;e.children=t,e.shapeFlag|=o}function lg(...e){const t={};for(let o=0;o<e.length;o++){const n=e[o];for(const a in n)if(a==="class")t.class!==n.class&&(t.class=ot([t.class,n.class]));else if(a==="style")t.style=Jo([t.style,n.style]);else if(Mn(a)){const s=t[a],r=n[a];r&&s!==r&&!(ne(s)&&s.includes(r))?t[a]=s?[].concat(s,r):r:r==null&&s==null&&!xn(a)&&(t[a]=r)}else a!==""&&(t[a]=n[a])}return t}function Mt(e,t,o,n=null){yt(e,t,7,[o,n])}const cg=qi();let ug=0;function dg(e,t,o){const n=e.type,a=(t?t.appContext:e.appContext)||cg,s={uid:ug++,vnode:e,type:n,parent:t,appContext:a,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new Zr(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(a.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:ol(n,a),emitsOptions:Vi(n,a),emit:null,emitted:null,propsDefaults:ve,inheritAttrs:n.inheritAttrs,ctx:ve,data:ve,props:ve,attrs:ve,slots:ve,refs:ve,setupState:ve,setupContext:null,suspense:o,suspenseId:o?o.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return s.ctx={_:s},s.root=t?t.root:s,s.emit=Up.bind(null,s),e.ce&&e.ce(s),s}let Ke=null;const Kt=()=>Ke||Je;let pa,yn;{const e=jn(),t=(o,n)=>{let a;return(a=e[o])||(a=e[o]=[]),a.push(n),s=>{a.length>1?a.forEach(r=>r(s)):a[0](s)}};pa=t("__VUE_INSTANCE_SETTERS__",o=>Ke=o),yn=t("__VUE_SSR_SETTERS__",o=>Oo=o)}const _n=e=>{const t=Ke;return pa(e),e.scope.on(),()=>{e.scope.off(),pa(t)}},gl=()=>{Ke&&Ke.scope.off(),pa(null)};function fl(e){return e.vnode.shapeFlag&4}let Oo=!1;function pg(e,t=!1,o=!1){t&&yn(t);const{props:n,children:a}=e.vnode,s=fl(e);Yp(e,n,s,t),Qp(e,a,o||t);const r=s?gg(e,t):void 0;return t&&yn(!1),r}function gg(e,t){const o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Ip);const{setup:n}=o;if(n){kt();const a=e.setupContext=n.length>1?hg(e):null,s=_n(e),r=Co(n,e,0,[e.props,a]),i=Ur(r);if(Pt(),s(),(i||e.sp)&&!Mo(e)&&rs(e),i){if(r.then(gl,gl),t)return r.then(l=>{yn(!0);try{hl(e,l,t)}finally{yn(!1)}}).catch(l=>{sn(l,e,0)});e.asyncDep=r}else hl(e,r)}else ml(e)}function hl(e,t,o){re(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:be(t)&&(e.setupState=_i(t)),ml(e)}function ml(e,t,o){const n=e.type;e.render||(e.render=n.render||St);{const a=_n(e);kt();try{Op(e)}finally{Pt(),a()}}}const fg={get(e,t){return qe(e,"get",""),e[t]}};function hg(e){const t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,fg),slots:e.slots,emit:e.emit,expose:t}}function _s(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(_i(nn(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in pn)return pn[o](e)},has(t,o){return o in t||o in pn}})):e.proxy}const mg=/(?:^|[-_])\w/g,bg=e=>e.replace(mg,t=>t.toUpperCase()).replace(/[-_]/g,"");function bl(e,t=!0){return re(e)?e.displayName||e.name:e.name||t&&e.__name}function yl(e,t,o=!1){let n=bl(t);if(!n&&t.__file){const a=t.__file.match(/([^/\\]+)\.\w+$/);a&&(n=a[1])}if(!n&&e){const a=s=>{for(const r in s)if(s[r]===t)return r};n=a(e.components)||e.parent&&a(e.parent.type.components)||a(e.appContext.components)}return n?bg(n):o?"App":"Anonymous"}function yg(e){return re(e)&&"__vccOpts"in e}const ge=(e,t)=>tp(e,t,Oo);function _l(e,t,o){try{ca(-1);const n=arguments.length;return n===2?be(t)&&!ne(t)?mn(t)?we(e,null,[t]):we(e,t):we(e,null,t):(n>3?o=Array.prototype.slice.call(arguments,2):n===3&&mn(o)&&(o=[o]),we(e,t,o))}finally{ca(1)}}const _g="3.5.42";/**
|
||
* @vue/runtime-dom v3.5.42
|
||
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
||
* @license MIT
|
||
**/let $s;const $l=typeof window<"u"&&window.trustedTypes;if($l)try{$s=$l.createPolicy("vue",{createHTML:e=>e})}catch{}const vl=$s?e=>$s.createHTML(e):e=>e,$g="http://www.w3.org/2000/svg",vg="http://www.w3.org/1998/Math/MathML",Ht=typeof document<"u"?document:null,Al=Ht&&Ht.createElement("template"),Ag={insert:(e,t,o)=>{t.insertBefore(e,o||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,o,n)=>{const a=t==="svg"?Ht.createElementNS($g,e):t==="mathml"?Ht.createElementNS(vg,e):o?Ht.createElement(e,{is:o}):Ht.createElement(e);return e==="select"&&n&&n.multiple!=null&&a.setAttribute("multiple",n.multiple),a},createText:e=>Ht.createTextNode(e),createComment:e=>Ht.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ht.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,n,a,s){const r=o?o.previousSibling:t.lastChild;if(a&&(a===s||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),o),!(a===s||!(a=a.nextSibling)););else{Al.innerHTML=vl(n==="svg"?`<svg>${e}</svg>`:n==="mathml"?`<math>${e}</math>`:e);const i=Al.content;if(n==="svg"||n==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,o)}return[r?r.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}},Sg=Symbol("_vtc");function wg(e,t,o){const n=e[Sg];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}const Sl=Symbol("_vod"),kg=Symbol("_vsh"),Pg=Symbol(""),Tg=/(?:^|;)\s*display\s*:/;function Eg(e,t,o){const n=e.style,a=Ae(o);let s=!1;if(o&&!a){if(t)if(Ae(t))for(const r of t.split(";")){const i=r.slice(0,r.indexOf(":")).trim();o[i]==null&&$n(n,i,"")}else for(const r in t)o[r]==null&&$n(n,r,"");for(const r in o){r==="display"&&(s=!0);const i=o[r];i!=null?Lg(e,r,!Ae(t)&&t?t[r]:void 0,i)||$n(n,r,i):$n(n,r,"")}}else if(a){if(t!==o){const r=n[Pg];r&&(o+=";"+r),n.cssText=o,s=Tg.test(o)}}else t&&e.removeAttribute("style");Sl in e&&(e[Sl]=s?n.display:"",e[kg]&&(n.display="none"))}const ga=/\s*!important$/;function $n(e,t,o){if(ne(o))o.forEach(n=>$n(e,t,n));else if(o==null&&(o=""),t.startsWith("--"))ga.test(o)?e.setProperty(t,o.replace(ga,""),"important"):e.setProperty(t,o);else{const n=Cg(e,t);ga.test(o)?e.setProperty(dt(n),o.replace(ga,""),"important"):e[n]=o}}const wl=["Webkit","Moz","ms"],vs={};function Cg(e,t){const o=vs[t];if(o)return o;let n=je(t);if(n!=="filter"&&n in e)return vs[t]=n;n=Dn(n);for(let a=0;a<wl.length;a++){const s=wl[a]+n;if(s in e)return vs[t]=s}return t}function Lg(e,t,o,n){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&Ae(n)&&o===n}const kl="http://www.w3.org/1999/xlink";function Pl(e,t,o,n,a,s=Td(t)){n&&t.startsWith("xlink:")?o==null?e.removeAttributeNS(kl,t.slice(6,t.length)):e.setAttributeNS(kl,t,o):o==null||s&&!Vr(o)?e.removeAttribute(t):e.setAttribute(t,s?"":rt(o)?String(o):o)}function Tl(e,t,o,n,a){if(t==="innerHTML"||t==="textContent"){o!=null&&(e[t]=t==="innerHTML"?vl(o):o);return}const s=e.tagName;if(t==="value"&&s!=="PROGRESS"&&!s.includes("-")){const i=s==="OPTION"?e.getAttribute("value")||"":e.value,l=o==null?e.type==="checkbox"?"on":"":String(o);(i!==l||!("_value"in e))&&(e.value=l),o==null&&e.removeAttribute(t),e._value=o;return}let r=!1;if(o===""||o==null){const i=typeof e[t];i==="boolean"?o=Vr(o):o==null&&i==="string"?(o="",r=!0):i==="number"&&(o=0,r=!0)}try{e[t]=o}catch{}r&&e.removeAttribute(a||t)}function Ng(e,t,o,n){e.addEventListener(t,o,n)}function Mg(e,t,o,n){e.removeEventListener(t,o,n)}const El=Symbol("_vei");function xg(e,t,o,n,a=null){const s=e[El]||(e[El]={}),r=s[t];if(n&&r)r.value=n;else{const[i,l]=Fg(t);if(n){const c=s[t]=jg(n,a);Ng(e,i,c,l)}else r&&(Mg(e,i,r,l),s[t]=void 0)}}const Ig=/(Once|Passive|Capture)$/,Og=/^on:?(?:Once|Passive|Capture)$/;function Fg(e){let t,o;for(;(o=e.match(Ig))&&!Og.test(e);)t||(t={}),e=e.slice(0,e.length-o[1].length),t[o[1].toLowerCase()]=!0;return[e[2]===":"?e.slice(3):dt(e.slice(2)),t]}let As=0;const Rg=Promise.resolve(),Dg=()=>As||(Rg.then(()=>As=0),As=Date.now());function jg(e,t){const o=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=o.attached)return;const a=o.value;if(ne(a)){const s=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{s.call(n),n._stopped=!0};const r=a.slice(),i=[n];for(let l=0;l<r.length&&!n._stopped;l++){const c=r[l];c&&yt(c,t,5,i)}}else yt(a,t,5,[n])};return o.value=e,o.attached=Dg(),o}const Cl=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Bg=(e,t,o,n,a,s)=>{const r=a==="svg";t==="class"?wg(e,n,r):t==="style"?Eg(e,o,n):Mn(t)?xn(t)||xg(e,t,o,n,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):zg(e,t,n,r))?(Tl(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Pl(e,t,n,r,s,t!=="value")):e._isVueCE&&(Gg(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!Ae(n)))?Tl(e,je(t),n,s,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),Pl(e,t,n,r))};function zg(e,t,o,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&Cl(t)&&re(o));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const a=e.tagName;if(a==="IMG"||a==="VIDEO"||a==="CANVAS"||a==="SOURCE")return!1}return Cl(t)&&Ae(o)?!1:t in e}function Gg(e,t){const o=e._def.props;if(!o)return!1;const n=je(t);return Array.isArray(o)?o.some(a=>je(a)===n):Object.keys(o).some(a=>je(a)===n)}const Ll={};function Ug(e,t,o){let n=un(e,t);On(n)&&(n=xe({},n,t));class a extends Ss{constructor(r){super(n,r,o)}}return a.def=n,a}const Kg=typeof HTMLElement<"u"?HTMLElement:class{};class Ss extends Kg{constructor(t,o={},n=xl){super(),this._def=t,this._props=o,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&n!==xl?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(xe({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof Ss){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,rn(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const o of t)this._setAttr(o.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let n=0;n<this.attributes.length;n++)this._setAttr(this.attributes[n].name);this._ob=new MutationObserver(this._processMutations.bind(this)),this._ob.observe(this,{attributes:!0});const t=(n,a=!1)=>{this._resolved=!0,this._pendingResolve=void 0;const{props:s,styles:r}=n;let i;if(s&&!ne(s))for(const l in s){const c=s[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=Wr(this._props[l])),(i||(i=Object.create(null)))[je(l)]=!0)}this._numberProps=i,this._resolveProps(n),this.shadowRoot&&this._applyStyles(r),this._mount(n)},o=this._def.__asyncLoader;if(o)return this._pendingResolve=o().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const o=this._instance&&this._instance.exposed;if(o)for(const n in o)me(this,n)||Object.defineProperty(this,n,{get:()=>Ue(o[n])})}_resolveProps(t){const{props:o}=t,n=ne(o)?o:Object.keys(o||{});for(const a of Object.keys(this))a[0]!=="_"&&n.includes(a)&&this._setProp(a,this[a]);for(const a of n.map(je))Object.defineProperty(this,a,{get(){return this._getProp(a)},set(s){this._setProp(a,s,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const o=this.hasAttribute(t);let n=o?this.getAttribute(t):Ll;const a=je(t);o&&this._numberProps&&this._numberProps[a]&&(n=Wr(n)),this._setProp(a,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,o,n=!0,a=!1){if(o!==this._props[t]&&(this._dirty=!0,o===Ll?delete this._props[t]:(this._props[t]=o,t==="key"&&this._app&&(this._app._ceVNode.key=o)),a&&this._instance&&this._update(),n)){const s=this._ob;s&&(this._processMutations(s.takeRecords()),s.disconnect()),o===!0?this.setAttribute(dt(t),""):typeof o=="string"||typeof o=="number"?this.setAttribute(dt(t),o+""):o||this.removeAttribute(dt(t)),s&&s.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Wg(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const o=we(this._def,xe(t,this._props));return this._instance||(o.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const a=(s,r)=>{this.dispatchEvent(new CustomEvent(s,On(r[0])?xe({detail:r},r[0]):{detail:r}))};n.emit=(s,...r)=>{a(s,r),dt(s)!==s&&a(dt(s),r)},this._setParent()}),o}_applyStyles(t,o,n){if(!t)return;if(o){if(o===this._def||this._styleChildren.has(o))return;this._styleChildren.add(o)}const a=this._nonce,s=this.shadowRoot,r=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(s);let i=null;for(let l=t.length-1;l>=0;l--){const c=document.createElement("style");a&&c.setAttribute("nonce",a),c.textContent=t[l],s.insertBefore(c,i||r),i=c,l===0&&(n||this._styleAnchors.set(this._def,c),o&&this._styleAnchors.set(o,c))}}_getStyleAnchor(t){if(!t)return null;const o=this._styleAnchors.get(t);return o&&o.parentNode===this.shadowRoot?o:(o&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let o=0;o<t.childNodes.length;o++){const n=t.childNodes[o];if(!(n instanceof HTMLStyleElement))return n}return null}_parseSlots(){const t=this._slots={};let o;for(;o=this.firstChild;){const n=o.nodeType===1&&o.getAttribute("slot")||"default";(t[n]||(t[n]=[])).push(o),this.removeChild(o)}}_renderSlots(){const t=this._getSlots(),o=this._instance.type.__scopeId;for(let n=0;n<t.length;n++){const a=t[n],s=a.getAttribute("name")||"default",r=this._slots[s],i=a.parentNode;if(r)for(const l of r){if(o&&l.nodeType===1){const c=o+"-s",u=document.createTreeWalker(l,1);l.setAttribute(c,"");let g;for(;g=u.nextNode();)g.setAttribute(c,"")}i.insertBefore(l,a)}else for(;a.firstChild;)i.insertBefore(a.firstChild,a);i.removeChild(a)}}_getSlots(){const t=[this];this._teleportTargets&&t.push(...this._teleportTargets);const o=new Set;for(const n of t){const a=n.querySelectorAll("slot");for(let s=0;s<a.length;s++)o.add(a[s])}return Array.from(o)}_injectChildStyle(t,o){this._applyStyles(t.styles,t,o)}_beginPatch(){this._patching=!0,this._dirty=!1}_endPatch(){this._patching=!1,this._dirty&&this._instance&&this._update()}_hasShadowRoot(){return this._def.shadowRoot!==!1}_removeChildStyle(t){}}const Hg=xe({patchProp:Bg},Ag);let Nl;function Ml(){return Nl||(Nl=tg(Hg))}const Wg=(...e)=>{Ml().render(...e)},xl=(...e)=>{const t=Ml().createApp(...e),{mount:o}=t;return t.mount=n=>{const a=Vg(n);if(!a)return;const s=t._component;!re(s)&&!s.render&&!s.template&&(s.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const r=o(a,!1,qg(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),r},t};function qg(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Vg(e){return Ae(e)?document.querySelector(e):e}/*!
|
||
* pinia v2.3.1
|
||
* (c) 2025 Eduardo San Martin Morote
|
||
* @license MIT
|
||
*/let Il;const fa=e=>Il=e,Ol=Symbol();function ws(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var vn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(vn||(vn={}));function Yg(){const e=Ba(!0),t=e.run(()=>ie({}));let o=[],n=[];const a=nn({install(s){fa(a),a._a=s,s.provide(Ol,a),s.config.globalProperties.$pinia=a,n.forEach(r=>o.push(r)),n=[]},use(s){return this._a?o.push(s):n.push(s),this},_p:o,_a:null,_e:e,_s:new Map,state:t});return a}const Fl=()=>{};function Rl(e,t,o,n=Fl){e.push(t);const a=()=>{const s=e.indexOf(t);s>-1&&(e.splice(s,1),n())};return!o&&Qr()&&Cd(a),a}function Fo(e,...t){e.slice().forEach(o=>{o(...t)})}const Xg=e=>e(),Dl=Symbol(),ks=Symbol();function Ps(e,t){e instanceof Map&&t instanceof Map?t.forEach((o,n)=>e.set(n,o)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const o in t){if(!t.hasOwnProperty(o))continue;const n=t[o],a=e[o];ws(a)&&ws(n)&&e.hasOwnProperty(o)&&!Te(n)&&!jt(n)?e[o]=Ps(a,n):e[o]=n}return e}const Jg=Symbol();function Zg(e){return!ws(e)||!e.hasOwnProperty(Jg)}const{assign:no}=Object;function Qg(e){return!!(Te(e)&&e.effect)}function ef(e,t,o,n){const{state:a,actions:s,getters:r}=t,i=o.state.value[e];let l;function c(){i||(o.state.value[e]=a?a():{});const u=Jd(o.state.value[e]);return no(u,s,Object.keys(r||{}).reduce((g,b)=>(g[b]=nn(ge(()=>{fa(o);const v=o._s.get(e);return r[b].call(v,v)})),g),{}))}return l=jl(e,c,t,o,n,!0),l}function jl(e,t,o={},n,a,s){let r;const i=no({actions:{}},o),l={deep:!0};let c,u,g=[],b=[],v;const P=n.state.value[e];!s&&!P&&(n.state.value[e]={});let T;function x(A){let m;c=u=!1,typeof A=="function"?(A(n.state.value[e]),m={type:vn.patchFunction,storeId:e,events:v}):(Ps(n.state.value[e],A),m={type:vn.patchObject,payload:A,storeId:e,events:v});const M=T=Symbol();rn().then(()=>{T===M&&(c=!0)}),u=!0,Fo(g,m,n.state.value[e])}const I=s?function(){const{state:m}=o,M=m?m():{};this.$patch(D=>{no(D,M)})}:Fl;function w(){r.stop(),g=[],b=[],n._s.delete(e)}const f=(A,m="")=>{if(Dl in A)return A[ks]=m,A;const M=function(){fa(n);const D=Array.from(arguments),G=[],Y=[];function Q(q){G.push(q)}function F(q){Y.push(q)}Fo(b,{args:D,name:M[ks],store:E,after:Q,onError:F});let R;try{R=A.apply(this&&this.$id===e?this:E,D)}catch(q){throw Fo(Y,q),q}return R instanceof Promise?R.then(q=>(Fo(G,q),q)).catch(q=>(Fo(Y,q),Promise.reject(q))):(Fo(G,R),R)};return M[Dl]=!0,M[ks]=m,M},y={_p:n,$id:e,$onAction:Rl.bind(null,b),$patch:x,$reset:I,$subscribe(A,m={}){const M=Rl(g,A,m.detached,()=>D()),D=r.run(()=>pt(()=>n.state.value[e],G=>{(m.flush==="sync"?u:c)&&A({storeId:e,type:vn.direct,events:v},G)},no({},l,m)));return M},$dispose:w},E=Wn(y);n._s.set(e,E);const _=(n._a&&n._a.runWithContext||Xg)(()=>n._e.run(()=>(r=Ba()).run(()=>t({action:f}))));for(const A in _){const m=_[A];if(Te(m)&&!Qg(m)||jt(m))s||(P&&Zg(m)&&(Te(m)?m.value=P[A]:Ps(m,P[A])),n.state.value[e][A]=m);else if(typeof m=="function"){const M=f(m,A);_[A]=M,i.actions[A]=m}}return no(E,_),no(pe(E),_),Object.defineProperty(E,"$state",{get:()=>n.state.value[e],set:A=>{x(m=>{no(m,A)})}}),n._p.forEach(A=>{no(E,r.run(()=>A({store:E,app:n._a,pinia:n,options:i})))}),P&&s&&o.hydrate&&o.hydrate(E.$state,P),c=!0,u=!0,E}/*! #__NO_SIDE_EFFECTS__ */function Ts(e,t,o){let n,a;const s=typeof t=="function";typeof e=="string"?(n=e,a=s?o:t):(a=e,n=e.id);function r(i,l){const c=dp();return i=i||(c?Ee(Ol,null):null),i&&fa(i),i=Il,i._s.has(n)||(s?jl(n,t,a,i):ef(n,a,i)),i._s.get(n)}return r.$id=n,r}const Es="__doxaMapToken",Cs="doxa:map-token",Bl="__doxaMapTokenBridge",Ro=()=>{if(typeof window>"u")return"";const e=window[Es];return typeof e=="string"?e:""};function Ls(e){if(typeof window>"u")return"";zl();const t=typeof e=="string"?e.trim():"";if(!t||t===Ro())return Ro();window[Es]=t;try{window.dispatchEvent(new CustomEvent(Cs,{detail:t}))}catch{}return t}function zl(){var t;if(typeof window>"u"||window[Bl]&&((t=Object.getOwnPropertyDescriptor(window,"MAP_TOKEN"))!=null&&t.get))return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!Ro()&&(window[Es]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return Ro()},set(o){Ls(o)}}),window[Bl]=!0}catch{}}function tf(){zl();const e=ie(Ro());if(typeof window<"u"){const t=()=>{e.value=Ro()};window.addEventListener(Cs,t);try{xo(()=>window.removeEventListener(Cs,t))}catch{}}return e}function of(e){if(typeof window>"u"||!/^https?:\/\//i.test(String(e||"")))return Promise.resolve("");const t=window.__doxaMapTokenFetches=window.__doxaMapTokenFetches||{};if(t[e])return t[e];const o=fetch(e).then(n=>{if(!n.ok)throw new Error("HTTP "+n.status);return(n.headers.get("content-type")||"").includes("json")?n.json():n.text()}).then(n=>{const a=String((typeof n=="string"?n:n&&(n.token||n.tk||n.accessToken))||"").trim();return a.startsWith("pk.")?(Ls(a),a):""}).catch(n=>(console.warn(`[map token] ${e}: ${n&&n.message?n.message:n}`),"")).finally(()=>{window.__doxaMapTokenPending===o&&(window.__doxaMapTokenPending=null)});return window.__doxaMapTokenPending=o,t[e]=o,o}function nf(e){return Ap({loader:e,onError(t,o,n,a){a<=3?setTimeout(o,a*500):n()}})}const af={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين",posterMap:"خريطة الملصق",prayerList:"قائمة الصلاة",cardDeck:"مجموعة البطاقات",printOptions:"خيارات الطباعة",showOnMap:"أظهر على الخريطة",close:"إغلاق",showOnMapAria:"أظهر {label} على الخريطة",cardStockAria:"حجم بطاقة الصلاة",previewPrintPoster:"معاينة وطباعة ملصق {label}",share:"مشاركة",shareSteps:["ضع هذه الخريطة على موقعك","أعدّ قائمة بمواقع الويب في مدينتك","علّمهم أن يضعوها أيضًا","علّمهم أن يعلّموا غيرهم وضعها","لنكثر الخرائط في كل مكان ليسوع!"],clearSelection:"إلغاء التحديد",noOptions:"لا توجد نتائج",renderingLocal:"يتم إنشاء صورة بجودة الطباعة في متصفحك — لا يتم تحميل أي شيء.",postersPerRow:"الملصقات في كل صف"},sf={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},rf={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"الملاحظات التوضيحية أدناه باللغة الإنجليزية."},mode:{gap:"الفجوة",coverage:"الموارد المتوفرة"},search:{placeholder:"ابحث عن شعب أو لغة أو رمز ISO",clear:"مسح البحث",none:"لا شيء يطابق هذا الاسم أو اللغة أو الرمز.",placeholderShort:"شعب أو لغة أو رمز ISO"},legend:{title:"شعوب غير مبلَّغة ولا يوجد لها أي مورد إنجيلي",band60:"60%+ بلا أي مورد",band30:"30–59%",bandSome:"بعض الشعوب",bandAll:"كل الشعوب لديها شيء",tier2:"الكتاب المقدس والفيلم",tier1:"وُجد بعض الموارد",tier0:"لا شيء",hnr:"يمكنهم السماع، ولا يوجد نص",showAll:"عرض كل الشعوب",titleCoverage:"شعوب غير مبلَّغة ويوجد لها بعض الموارد الإنجيلية",cov80:"80%+ لديهم شيء",cov50:"50–79%",cov1:"1–49%",cov0:"لا شيء لأي منهم",tallyEach:"كل",tallyIs:"هو شعب واحد —",tallyOf:"منها،",tallyLink:"لديها رابط",doxa0:"لدى الجميع شيء",doxa1:"1–4 بلا شيء",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 لديهم موارد",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"شعوب دوكسا على هذه الخريطة",notPlaced:"ضمن القائمة، بلا موقع بعد",outOfScope:"لا توجد شعوب دوكسا — غير ملوَّنة"},tabs:{groups:"أكبر الشعوب",countries:"حسب البلد",regions:"حسب المنطقة",noprayer:"لا أحد يصلّي",hnr:"يسمعون، بلا نص"},stat:{language:"اللغة",population:"عدد السكان",countries:"البلدان",peopleGroups:"الشعوب",noResource:"لا يوجد أي مورد",peopleAffected:"الأشخاص المتأثرون",haveScripture:"لديهم الكتاب المقدس",haveFilm:"لديهم الفيلم",haveAudio:"لديهم كتاب مقدس مسموع",signLanguages:"لغات الإشارة",growingUnreached:"متزايدون وغير مبلَّغين",deathsDay:"الوفيات المقدَّرة يوميًا"},sheet:{ownLanguage:"بلغتهم الأم",close:"إغلاق",loading:"جارٍ تحميل الموارد…",pray:"صلِّ من أجل",everyResource:"كل الموارد بـ",alsoSpeak:"يتحدثون أيضًا"},res:{scripture:"الكتاب المقدس",film:"الفيلم",audio:"صوتي",bibleVideo:"فيديو كتابي",bibleStories:"Open Bible Stories",gospelAudio:"صوتيات الإنجيل",gospelPresentation:"عرض للإنجيل",scriptureEarth:"Scripture Earth",training:"تدريب على التلمذة",jesusFilm:"فيلم يسوع",audioScripture:"الكتاب المقدس الصوتي",bibleStoriesPlain:"قصص الكتاب المقدس"},state:{noneFound:"لا شيء",noneAtFcbh:"لا شيء في FCBH",noneAtGrn:"لا شيء في GRN",notInZume:"ليست ضمن لغات Zume الـ54",linkChecked:"تم التحقق من الرابط",unchecked:"لم يُتحقق منه",linkDead:"رابط معطّل",wrongLanguage:"لغة غير صحيحة",varietyNotStated:"(اللهجة غير محددة)",inLanguage:"بـ"},guide:{dotVsCountry:"كل نقطة هي شعب واحد من شعوب دوكسا ولغته؛ أما لون البلد فهو عدد تلك الشعوب.",noneFoundShort:"«لا شيء» تعني غير موجود في المصادر التي بحثنا فيها — وليست دليلًا على عدم وجوده.",tapCountry:"اضغط على بلد لترى الموارد الفعلية، شعبًا شعبًا."},tables:{title:"موارد الإنجيل — البيانات",showing:"عرض",of:"من",for:"لـ",filteredTo:"مصفّى حسب",showAll:"عرض كل الموارد",t_doxa:"دوكسا — الوصول إلى الإنجيل",t_links:"كل مورد ورابطه",t_nothing:"حيث لا يوجد شيء",t_countrygap:"الفجوة حسب البلد",t_translation:"يسمعون ولا نص لديهم",t_translationcountry:"أين نترجم",t_province:"الوصول إلى الإنجيل حسب المقاطعة — الهند والصين",t_gaps:"الفجوات والفرص",t_bridges:"جسور المدن",t_deaf:"فجوة الصم",t_resources:"الموارد حسب الشعب",t_languages:"اللغات حسب البلد",t_growth:"الوصول مقابل نمو السكان"},pages:{listTitle:"موارد الإنجيل حسب اللغة",chartsTitle:"موارد الإنجيل — حسب اللغة",loadingTables:"جارٍ تحميل جداول الموارد…"},list:{noText:"بلا نص مقدس",hasScripture:"لديها الكتاب المقدس",allLanguages:"كل اللغات",peopleGroup:"شعب",peopleGroups:"شعوب",scriptureHere:"الكتاب المقدس بهذه اللغة"},columns:{"People group":"الشعب",Country:"البلد",Region:"المنطقة",Language:"اللغة",Population:"عدد السكان",Religion:"الديانة","Gospel access":"الوصول إلى الإنجيل",Resources:"الموارد",Scripture:"الكتاب المقدس","Bible video":"فيديو كتابي","Gospel presentation":"عرض للإنجيل",Countries:"البلدان","People groups":"الشعوب"},charts:{scriptureAny:"الكتاب المقدس (أي نوع)",fullBible:"الكتاب المقدس كاملاً",newTestament:"العهد الجديد",filmAny:"الفيلم (أي نوع)",nothingInPools:"لا شيء في المصادر التي جرى البحث فيها",nothingInPoolsLower:"لا شيء في المصادر التي جرى البحث فيها",noResourceInPools:"لم يُعثر على أي مورد في المصادر التي جرى البحث فيها",aResourceFound:"وُجد مورد",tabCoverage:"تغطية الموارد",tabGap:"أكبر الفجوات",keyScripture:"الكتاب المقدس",keyFilmStories:"الفيلم / القصص",keyAudioEtc:"صوتيات / عرض / تدريب",unresolvedCode:"رمز خارج ISO 639-3 — غير محسوم، لم يُقَس",c1Title:"ما الذي وُجد، بحسب نوع المورد",c1Sub:"عبر جميع اللغات البالغة {n} في مجموعة البيانات. كل عمود يَعُدّ اللغات، لا الشعوب.",c1Unit:"لغات وُجد فيها المورد ضمن المصادر التي جرى البحث فيها",c2Title:"أكبر التجمعات السكانية التي لم يُعثر لها على شيء",c2Sub:"اللغات الـ{n} التي لا يوجد لها كتاب مقدس ولا فيلم في المصادر التي جرى البحث فيها، مرتَّبة بحسب عدد سكان الشعوب التي تتحدثها.",c2Unit:"أشخاص في الشعوب التي هذه لغتها الأساسية — لا المتحدثين بها عمومًا",c3Title:"البلدان الأكثر لغاتٍ غير مخدومة",c3Sub:"البلدان الـ{n} الأكثر لغاتٍ لم يُعثر لها على شيء. طول العمود هو كل لغة موجودة في ذلك البلد.",c3Unit:"لغات موجودة في البلد (اللغة العابرة للحدود تُحتسب في كل بلد)"}},lf={search:"ابحث عن الشعوب…",hide_filters:"إخفاء عوامل التصفية",show_filters:"إظهار عوامل التصفية",total:"الإجمالي",showing:"المعروض",load_more:"عرض المزيد",full_profile:"الملف الكامل",wagf_region:"المنطقة",wagf_block:"كتلة التقارب",rop1:"الشعب",religion:"الدين",exact_filter:"تطابق تام",clear_all:"مسح الكل",loading:"جارٍ التحميل…",no_results:"لا توجد شعوب مطابقة لهذا التصفية.",type_to_search:"اكتب للبحث...",load_failed:"تعذّر تحميل بيانات الشعوب. هذه مشكلة اتصال، وليست مشكلة في التصفية.",search_people_or_countries:"ابحث عن الشعوب أو الدول…"},cf={doxa:{label:"المشروع 2000: الشعوب التي تخدمها DOXA",definition:"الشعوب التي تخدمها DOXA كما تقدّمها قائمتها الحيّة"},unreached:{label:"المشروع 7000: الشعوب غير المُبشَّرة",definition:"أولوية الضياع لدى IMB من 0 إلى 2 (حدودية أو رائدة أو متوسّعة غير مُبشَّرة: أقل من 2% إنجيليون)"},frontier:{label:"المشروع 4700: الشعوب الحدودية",definition:"أولوية الضياع لدى IMB بقيمة 0 (حدودية غير مُبشَّرة: 0.1% إنجيليون أو أقل)"},"frontier-500k":{label:"المشروع 700: الشعوب الحدودية التي يبلغ عددها 500,000 أو أكثر",definition:"أولوية الضياع لدى IMB بقيمة 0 وعدد سكان لا يقل عن 500,000"},unengaged:{label:"الشعوب غير المُبشَّرة التي لم يُعمَل بينها",definition:"أولوية الضياع لدى IMB من 0 إلى 2 وحالة العمل: لم يُعمَل بينها"}},uf={map:"الخريطة",marker:"علامة على الخريطة",closePopup:"إغلاق النافذة المنبثقة",zoomIn:"تكبير",zoomOut:"تصغير",resetBearing:"اسحب لتدوير الخريطة، وانقر لإعادة الشمال",toggleAttribution:"إظهار/إخفاء المصادر",mapFeedback:"ملاحظات على الخريطة",enterFullscreen:"ملء الشاشة",exitFullscreen:"الخروج من ملء الشاشة",findMyLocation:"تحديد موقعي",locationNotAvailable:"الموقع غير متاح",enableGlobe:"تفعيل الكرة الأرضية",disableGlobe:"إيقاف الكرة الأرضية",ctrlScroll:"استخدم Ctrl مع التمرير لتكبير الخريطة",cmdScroll:"استخدم ⌘ مع التمرير لتكبير الخريطة",twoFingers:"استخدم إصبعين لتحريك الخريطة"},df={menuComingSoon:"القائمة قادمة قريباً",pinHint:{tapDot:"اضغط على نقطة ملوّنة — لا يزال هناك من يحتاج إلى الصلاة"},upg100WallHeading:"قائمتي UPG 100 — قوائم الصلاة والملصقات",upg100WallTag:"تعبئة للصلاة",upg100WallIntro:"وزّع مهمة الصلاة في مجموعات من خمسين ومئة — كما أطعم يسوع الخمسة آلاف (لوقا ٩:١٤). كل ملصق هو قائمة من 100 يمكنك أن تصلي بها وتطبعها وتعلّقها على الحائط — مصلّيًا لأجلهم <strong>باسم شعبهم</strong>."},pf={country:{wagfRegion:"منطقة WAGF",wagfBlock:"كتلة WAGF",country:"الدولة",uupgCount:"عدد UUPG"}},gf={"%count% people groups in %countries% countries":"%count% مجموعة شعبية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة شعبية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة الشعبية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"متبنَّاة","Adoption Progress":"تقدُّم التبنّي","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Choose a region":"اختر منطقة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مَخْدُومَة","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة شعبية غير مَخْدُومَة تتبنّاها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات الشعبية غير المبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات","Hide country posters":"إخفاء ملصقات الدولة",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...",Map:"الخريطة","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة شعبية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No poster has been generated for this country yet.":"لم يُنشأ أي ملصق لهذه الدولة بعد.","No unengaged people groups by 2033":"لا مجموعات شعبية غير مَخْدُومَة بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة شعبية","People Groups":"مجموعات شعبية","People committed to praying":"الأشخاص الذين التزموا بالصلاة","Pick a region above, or click any dot to open that people group's country.":"اختر منطقة أعلاه، أو انقر على أي نقطة لفتح دولة تلك المجموعة الشعبية.","Pick a region or a country on the Regions List tab to narrow this dashboard.":"اختر منطقة أو دولة من تبويب قائمة المناطق لتضييق نطاق لوحة المعلومات هذه.",Population:"عدد السكان","Prayer Coverage":"تغطية الصلاة","Prayer coverage progress":"تقدم تغطية الصلاة","Region Dashboards":"لوحات معلومات المناطق","Region dashboard":"لوحة معلومات المنطقة",Regions:"المناطق","Regions List":"قائمة المناطق",Religion:"الدين","Search names, country/continent, religions...":"ابحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Select View":"اختر العرض","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعة شعبية في %country%. تحقق من الخريطة لمعرفة المجموعات الشعبية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"المجموعات الشعبية غير المَخْدُومَة","View country posters":"عرض ملصقات الدولة",Views:"العروض","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"مجموعات شعبية متبنَّاة","people groups engaged":"مجموعات شعبية مَخْدُومَة","Outside this region":"خارج هذه المنطقة",Pray:"صلّي","Loading region dashboards…":"جارٍ تحميل لوحات المناطق…","No regions found.":"لم يتم العثور على مناطق.","Region data could not be loaded. This is a connection problem, not a filter.":"تعذّر تحميل بيانات المناطق. هذه مشكلة في الاتصال، وليست تصفية.","People groups could not be loaded. This is a connection problem, not a filter.":"تعذّر تحميل الشعوب. هذه مشكلة في الاتصال، وليست تصفية.","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"تعذّر تشغيل الخريطة. هذه مشكلة في رمز الخريطة أو في الاتصال، وليست تصفية — والأرقام أعلاه غير متأثرة."},ff={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten",posterMap:"Posterkarte",prayerList:"Gebetsliste",cardDeck:"Kartenset",printOptions:"Druckoptionen",showOnMap:"Auf der Karte zeigen",close:"Schließen",showOnMapAria:"{label} auf der Karte zeigen",cardStockAria:"Größe der Gebetskarte",previewPrintPoster:"Vorschau und Druck des Posters {label}",share:"Teilen",shareSteps:["Binde diese Karte auf deiner Website ein","Erstelle eine Liste der Websites in deiner Stadt","Zeige ihnen, wie sie sie ebenfalls einbinden","Zeige ihnen, wie sie es anderen beibringen","Lasst uns Karten überall vermehren – für Jesus!"],clearSelection:"Auswahl aufheben",noOptions:"Keine Optionen gefunden",renderingLocal:"Ein druckfähiges Bild wird in deinem Browser erzeugt — es wird nichts hochgeladen.",postersPerRow:"Poster pro Zeile"},hf={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},mf={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"Die erläuternden Hinweise unten sind auf Englisch."},mode:{gap:"Lücke",coverage:"Gefundene Ressourcen"},search:{placeholder:"Volksgruppe, Sprache oder ISO-Code suchen",clear:"Suche löschen",none:"Nichts passt zu diesem Namen, dieser Sprache oder diesem Code.",placeholderShort:"Gruppe, Sprache oder ISO-Code"},legend:{title:"Unerreichte Volksgruppen ohne gefundene Evangeliums-Ressource",band60:"60 %+ ohne jede Ressource",band30:"30–59 %",bandSome:"einige Gruppen",bandAll:"alle Gruppen haben etwas",tier2:"Bibeltext und Film",tier1:"etwas gefunden",tier0:"nichts gefunden",hnr:"können hören, kein Text",showAll:"Alle Gruppen anzeigen",titleCoverage:"Unerreichte Volksgruppen mit einer gefundenen Evangeliums-Ressource",cov80:"80 %+ haben etwas",cov50:"50–79 %",cov1:"1–49 %",cov0:"für keinen etwas gefunden",tallyEach:"Jeder",tallyIs:"ist EINE Volksgruppe —",tallyOf:"davon,",tallyLink:"mit einem Link",doxa0:"alle haben etwas",doxa1:"1–4 ohne",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 erreicht",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"Doxa-Volksgruppen auf dieser Karte",notPlaced:"auf der Liste, noch nicht verortet",outOfScope:"keine Doxa-Volksgruppen — nicht eingefärbt"},tabs:{groups:"Größte Gruppen",countries:"Nach Land",regions:"Nach Region",noprayer:"Niemand betet",hnr:"Hören ja, Text nein"},stat:{language:"Sprache",population:"Bevölkerung",countries:"Länder",peopleGroups:"Volksgruppen",noResource:"Keine Ressource gefunden",peopleAffected:"Betroffene Menschen",haveScripture:"Haben Bibeltext",haveFilm:"Haben Film",haveAudio:"Haben Hörbibel",signLanguages:"Gebärdensprachen",growingUnreached:"Wachsend & unerreicht",deathsDay:"Geschätzte Todesfälle/Tag"},sheet:{ownLanguage:"In ihrer eigenen Sprache",close:"Schließen",loading:"Ressourcen werden geladen…",pray:"Betet für",everyResource:"Alle Ressourcen auf",alsoSpeak:"Sprechen ebenfalls"},res:{scripture:"Bibeltext",film:"Film",audio:"Audio",bibleVideo:"Bibelvideo",bibleStories:"Open Bible Stories",gospelAudio:"Evangeliums-Audio",gospelPresentation:"Evangeliums-Darstellung",scriptureEarth:"Scripture Earth",training:"Jüngerschaftstraining",jesusFilm:"JESUS Film",audioScripture:"Audio-Bibeltext",bibleStoriesPlain:"Bibelgeschichten"},state:{noneFound:"nichts gefunden",noneAtFcbh:"nichts bei FCBH",noneAtGrn:"nichts bei GRN",notInZume:"nicht in Zumes 54",linkChecked:"Link geprüft",unchecked:"ungeprüft",linkDead:"Link tot",wrongLanguage:"falsche Sprache",varietyNotStated:"(Varietät nicht angegeben)",inLanguage:"auf"},guide:{dotVsCountry:"Ein Punkt ist EINE Volksgruppe von Doxa mit ihrer eigenen Sprache; ein Land ist die ANZAHL dieser Gruppen.",noneFoundShort:"„Nichts gefunden“ heißt: nicht in den geprüften Quellen — nie ein Beweis, dass es nichts gibt.",tapCountry:"Tippen Sie auf ein Land, um die Ressourcen Gruppe für Gruppe zu sehen."},tables:{title:"Evangeliums-Ressourcen — Daten",showing:"Zeige",of:"von",for:"für",filteredTo:"Gefiltert nach",showAll:"Alle Ressourcen zeigen",t_doxa:"Doxa — Zugang zum Evangelium",t_links:"Jede Ressource + Link",t_nothing:"Wo nichts gefunden wurde",t_countrygap:"Die Lücke nach Land",t_translation:"Hören ja, Text nein",t_translationcountry:"Wo übersetzen",t_province:"Zugang zum Evangelium nach Provinz — Indien und China",t_gaps:"Lücken & Chancen",t_bridges:"Stadt-Brücken",t_deaf:"Die Gehörlosen-Lücke",t_resources:"Ressourcen nach Volksgruppe",t_languages:"Sprachen nach Land",t_growth:"Zugang vs. Bevölkerungswachstum"},pages:{listTitle:"Evangeliums-Ressourcen nach Sprache",chartsTitle:"Evangeliums-Ressourcen — nach Sprache",loadingTables:"Ressourcentabellen werden geladen…"},list:{noText:"Kein Bibeltext",hasScripture:"Hat Bibeltext",allLanguages:"Alle Sprachen",peopleGroup:"Volksgruppe",peopleGroups:"Volksgruppen",scriptureHere:"Bibeltext in dieser Sprache"},columns:{"People group":"Volksgruppe",Country:"Land",Region:"Region",Language:"Sprache",Population:"Bevölkerung",Religion:"Religion","Gospel access":"Zugang zum Evangelium",Resources:"Ressourcen",Scripture:"Bibeltext","Bible video":"Bibelvideo","Gospel presentation":"Evangeliums-Darstellung",Countries:"Länder","People groups":"Volksgruppen"},charts:{scriptureAny:"Bibeltext (beliebig)",fullBible:"Vollbibel",newTestament:"Neues Testament",filmAny:"Film (beliebig)",nothingInPools:"Nichts in den geprüften Quellen gefunden",nothingInPoolsLower:"nichts in den geprüften Quellen gefunden",noResourceInPools:"keine Ressource in den geprüften Quellen gefunden",aResourceFound:"eine Ressource gefunden",tabCoverage:"Ressourcenabdeckung",tabGap:"Größte Lücken",keyScripture:"Bibeltext",keyFilmStories:"Film / Geschichten",keyAudioEtc:"Audio / Präsentation / Schulung",unresolvedCode:"Code außerhalb ISO 639-3 — ungeklärt, nicht gemessen",c1Title:"Was GEFUNDEN wurde, nach Ressourcentyp",c1Sub:"Über alle {n} Sprachen im Datenbestand. Jeder Balken zählt SPRACHEN, nicht Volksgruppen.",c1Unit:"Sprachen, in denen die Ressource in den geprüften Quellen gefunden wurde",c2Title:"Größte Bevölkerungen ohne jeden Fund",c2Sub:"Die {n} Sprachen ohne Bibeltext und ohne Film in den geprüften Quellen, sortiert nach der Bevölkerung der Volksgruppen, die sie sprechen.",c2Unit:"Menschen in den Volksgruppen, deren PRIMÄRE Sprache dies ist — nicht Sprecher der Sprache",c3Title:"Länder mit den meisten unversorgten Sprachen",c3Sub:"Die {n} Länder mit den meisten Sprachen, für die nichts gefunden wurde. Die Balkenlänge ist jede im Land vorhandene Sprache.",c3Unit:"im Land vorhandene Sprachen (eine grenzüberschreitende Sprache zählt in jedem Land)"}},bf={search:"Volksgruppen suchen…",hide_filters:"Filter ausblenden",show_filters:"Filter anzeigen",total:"Gesamt",showing:"Angezeigt",load_more:"Mehr laden",full_profile:"Vollständiges Profil",wagf_region:"Region",wagf_block:"Affinitätsblock",rop1:"Volk",religion:"Religion",exact_filter:"Exakt",clear_all:"Alle löschen",loading:"Wird geladen…",no_results:"Keine Volksgruppen entsprechen diesem Filter.",type_to_search:"Zum Suchen tippen...",load_failed:"Die Daten konnten nicht geladen werden. Das ist ein Verbindungsproblem, nicht Ihr Filter.",search_people_or_countries:"Volksgruppen oder Länder suchen…"},yf={doxa:{label:"Projekt 2000: die Volksgruppen von DOXA",definition:"Die Volksgruppen, denen DOXA dient, wie seine Live-Liste sie angibt"},unreached:{label:"Projekt 7000: unerreichte Volksgruppen",definition:"IMB Lostness Priority 0–2 (Frontier, Pioneer oder Expanding Unreached: unter 2 % Evangelikale)"},frontier:{label:"Projekt 4700: Frontier-Volksgruppen",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0,1 % Evangelikale oder weniger)"},"frontier-500k":{label:"Projekt 700: Frontier-Volksgruppen mit 500.000 oder mehr Menschen",definition:"IMB Lostness Priority 0 und eine Bevölkerung von mindestens 500.000"},unengaged:{label:"Unerreichte Volksgruppen ohne Engagement",definition:"IMB Lostness Priority 0–2 und Engagement-Status: ohne Engagement"}},_f={map:"Karte",marker:"Kartenmarkierung",closePopup:"Popup schließen",zoomIn:"Vergrößern",zoomOut:"Verkleinern",resetBearing:"Ziehen, um die Karte zu drehen; klicken, um nach Norden auszurichten",toggleAttribution:"Quellenangaben ein-/ausblenden",mapFeedback:"Feedback zur Karte",enterFullscreen:"Vollbild",exitFullscreen:"Vollbild beenden",findMyLocation:"Meinen Standort finden",locationNotAvailable:"Standort nicht verfügbar",enableGlobe:"Globus einschalten",disableGlobe:"Globus ausschalten",ctrlScroll:"Strg + Scrollen zum Zoomen der Karte",cmdScroll:"⌘ + Scrollen zum Zoomen der Karte",twoFingers:"Mit zwei Fingern die Karte bewegen"},$f={menuComingSoon:"Menü folgt in Kürze",pinHint:{tapDot:"Tippe auf einen farbigen Punkt — jemand braucht noch Gebet"},upg100WallHeading:"Meine UPG-100-Liste — Gebetslisten und Poster",upg100WallTag:"Gebetsmobilisierung",upg100WallIntro:"Teilen Sie die Gebetsaufgabe in Gruppen zu fünfzig und hundert auf — so wie Jesus die 5.000 speiste (Lukas 9,14). Jedes Poster ist eine 100er-Liste, die Sie beten, drucken und an die Wand hängen können — und für sie <strong>mit dem Namen ihrer Volksgruppe</strong> beten."},vf={country:{wagfRegion:"WAGF-Region",wagfBlock:"WAGF-Block",country:"Land",uupgCount:"Anzahl UUPG"}},Af={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Adoptiert","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Choose a region":"Region auswählen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Fortschritt der Arbeit vor Ort","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden","Hide country posters":"Länderposter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...",Map:"Karte","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No poster has been generated for this country yet.":"Für dieses Land wurde noch kein Poster erstellt.","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben","Pick a region above, or click any dot to open that people group's country.":"Wählen Sie oben eine Region aus oder klicken Sie auf einen Punkt, um das Land dieser Volksgruppe zu öffnen.","Pick a region or a country on the Regions List tab to narrow this dashboard.":"Wählen Sie im Tab „Regionenliste“ eine Region oder ein Land aus, um dieses Dashboard einzugrenzen.",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung","Region Dashboards":"Regionen-Dashboards","Region dashboard":"Regions-Dashboard",Regions:"Regionen","Regions List":"Regionenliste",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Select View":"Ansicht auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Unberührte Volksgruppen","View country posters":"Länderposter ansehen",Views:"Ansichten","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen","Outside this region":"Außerhalb dieser Region",Pray:"Ich bete","Loading region dashboards…":"Regions-Dashboards werden geladen…","No regions found.":"Keine Regionen gefunden.","Region data could not be loaded. This is a connection problem, not a filter.":"Regionsdaten konnten nicht geladen werden. Das ist ein Verbindungsproblem, kein Filter.","People groups could not be loaded. This is a connection problem, not a filter.":"Volksgruppen konnten nicht geladen werden. Das ist ein Verbindungsproblem, kein Filter.","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"Die Karte konnte nicht starten. Das ist ein Karten-Token- oder Verbindungsproblem, kein Filter — die Zahlen oben sind davon nicht betroffen."},Sf={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share",posterMap:"Poster Map",prayerList:"Prayer List",cardDeck:"Card Deck",printOptions:"Print Options",showOnMap:"Show on map",close:"Close",showOnMapAria:"Show {label} on the map",cardStockAria:"Prayer card size",previewPrintPoster:"Preview & print the {label} poster",clearSelection:"Clear selection",noOptions:"No options found",renderingLocal:"Rendering a print-quality image in your browser — nothing is uploaded.",postersPerRow:"Posters per row"},wf={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},kf={_note:'SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file: it carries doctrinal and statistical precision — which pools were searched, what "nothing found" does and does not claim, why Open Bible Stories is not Scripture — and a mistranslated caveat there would read as authoritative. `prose.english` is the one translated line that says so. When a human-reviewed translation of the prose exists, it gets its own area file and that line comes out.',prose:{english:"Explanatory notes below are in English."},mode:{gap:"Gap",coverage:"Resources found"},search:{placeholder:"Find a people group, language or ISO code",clear:"Clear search",none:"Nothing matches that name, language or code.",placeholderShort:"Group, language or ISO code"},legend:{title:"Unengaged groups with no gospel resource found",band60:"60%+ with nothing found",band30:"30–59%",bandSome:"some groups",bandAll:"all groups have some",tier2:"Scripture and film",tier1:"some resource found",tier0:"nothing found",hnr:"can hear it, no text found",showAll:"Show all groups",titleCoverage:"Unengaged groups with some gospel resource found",cov80:"80%+ have something found",cov50:"50–79%",cov1:"1–49%",cov0:"nothing found for any",tallyEach:"Each",tallyIs:"is ONE people group —",tallyOf:"of them,",tallyLink:"with a link",doxa0:"all have something",doxa1:"1–4 with nothing",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 reached",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"Doxa people groups on this map",notPlaced:"on the roster, not yet placed",outOfScope:"no Doxa people groups — not coloured"},tabs:{groups:"Largest groups",countries:"By country",regions:"By region",noprayer:"Nobody praying",hnr:"Can hear, no text"},stat:{language:"Language",population:"Population",countries:"Countries",peopleGroups:"People groups",noResource:"No resource found",peopleAffected:"People affected",haveScripture:"Have scripture",haveFilm:"Have film",haveAudio:"Have audio Scripture",signLanguages:"Sign languages",growingUnreached:"Growing & unreached",deathsDay:"Est. deaths/day"},sheet:{ownLanguage:"In their own language",close:"Close",loading:"Loading resources…",pray:"Pray for",everyResource:"Every resource in",alsoSpeak:"Also speak"},res:{scripture:"Scripture",film:"Film",audio:"Audio",bibleVideo:"Bible video",bibleStories:"Open Bible Stories",gospelAudio:"Gospel audio",gospelPresentation:"Gospel presentation",scriptureEarth:"Scripture Earth",training:"Discipleship training",jesusFilm:"JESUS Film",audioScripture:"Audio Scripture",bibleStoriesPlain:"Bible Stories"},state:{noneFound:"none found",noneAtFcbh:"none found at FCBH",noneAtGrn:"none found at GRN",notInZume:"not in Zume's 54",linkChecked:"link checked",unchecked:"unchecked",linkDead:"link dead",wrongLanguage:"wrong language",varietyNotStated:"(variety not stated)",inLanguage:"in"},guide:{dotVsCountry:"A dot is ONE of Doxa's people groups and its own language; a country is a COUNT of those groups.",noneFoundShort:"“None found” means not present in the pools this build checked — never proof that nothing exists.",tapCountry:"Tap a country to see the actual resources, group by group."},tables:{title:"Gospel Resources — Data",showing:"Showing",of:"of",for:"for",filteredTo:"Filtered to",showAll:"Show all resources",t_doxa:"Doxa — Gospel Access",t_links:"Every Resource + Link",t_nothing:"Where Nothing Was Found",t_countrygap:"The Gap by Country",t_translation:"Can Hear It, No Text",t_translationcountry:"Where to Translate",t_province:"Gospel access by province — India and China",t_gaps:"Gaps & Opportunities",t_bridges:"City Bridges",t_deaf:"The Deaf Gap",t_resources:"Resources by People Group",t_languages:"Languages by Country",t_growth:"Access vs Population Growth"},pages:{listTitle:"Gospel Resources by Language",chartsTitle:"Gospel Resources — by Language",loadingTables:"Loading resource tables…"},list:{noText:"No text Scripture",hasScripture:"Has scripture",allLanguages:"All languages",peopleGroup:"people group",peopleGroups:"people groups",scriptureHere:"Scripture in this language"},columns:{"People group":"People group",Country:"Country",Region:"Region",Language:"Language",Population:"Population",Religion:"Religion","Gospel access":"Gospel access",Resources:"Resources",Scripture:"Scripture","Bible video":"Bible video","Gospel presentation":"Gospel presentation",Countries:"Countries","People groups":"People groups"},charts:{scriptureAny:"Scripture (any)",fullBible:"Full Bible",newTestament:"New Testament",filmAny:"Film (any)",nothingInPools:"Nothing found in pools checked",nothingInPoolsLower:"nothing found in pools checked",noResourceInPools:"no resource found in pools checked",aResourceFound:"a resource found",tabCoverage:"Resource coverage",tabGap:"Largest gaps",keyScripture:"scripture",keyFilmStories:"film / stories",keyAudioEtc:"audio / presentation / training",unresolvedCode:"code outside ISO 639-3 — unresolved, not measured",c1Title:"What was FOUND, by resource type",c1Sub:"Across all {n} languages in the corpus. Each bar counts LANGUAGES, not people groups.",c1Unit:"languages where the resource was found in the pools checked",c2Title:"Largest populations with nothing found",c2Sub:"The {n} languages with no scripture and no film in the pools checked, ranked by the population of the people groups who speak them.",c2Unit:"people in the people groups whose PRIMARY language this is — not speakers of the language",c3Title:"Countries with the most unserved languages",c3Sub:"The {n} countries with the most languages that have nothing found. Bar length is every language present in that country.",c3Unit:"languages present in the country (a cross-border language counts in each)"}},Pf={search:"Search people groups…",hide_filters:"Hide Filters",show_filters:"Show Filters",total:"Total",showing:"Showing",load_more:"Load More",full_profile:"Full Profile",wagf_region:"Region",wagf_block:"Affinity Block",rop1:"People Group",religion:"Religion",exact_filter:"Exact",clear_all:"Clear All",loading:"Loading…",no_results:"No people groups match this filter.",type_to_search:"Type to search...",load_failed:"People-group data could not be loaded. This is a connection problem, not your filter.",search_people_or_countries:"Search people groups or countries…"},Tf={doxa:{label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them"},unreached:{label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)"},frontier:{label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)"},"frontier-500k":{label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000"},unengaged:{label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged"}},Ef={map:"Map",marker:"Map marker",closePopup:"Close popup",zoomIn:"Zoom in",zoomOut:"Zoom out",resetBearing:"Drag to rotate map, click to reset north",toggleAttribution:"Toggle attribution",mapFeedback:"Map feedback",enterFullscreen:"Enter fullscreen",exitFullscreen:"Exit fullscreen",findMyLocation:"Find my location",locationNotAvailable:"Location not available",enableGlobe:"Enable globe",disableGlobe:"Disable globe",ctrlScroll:"Use Ctrl + scroll to zoom the map",cmdScroll:"Use ⌘ + scroll to zoom the map",twoFingers:"Use two fingers to move the map"},Cf={menuComingSoon:"Menu coming soon",pinHint:{tapDot:"Tap a coloured dot — someone still needs prayer"},upg100WallHeading:"My UPG 100 List — Prayer Lists & Posters",upg100WallTag:"Prayer Mobilization",upg100WallIntro:"Hand away the prayer task in clusters of fifties and hundreds — the way Jesus fed the 5,000 (Luke 9:14). Each poster is a 100-list you can pray, print, and put on a wall — praying for them <strong>by their people group name</strong>."},Lf={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Nf={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Choose a region":"Choose a region","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters","Hide country posters":"Hide country posters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...",Map:"Map","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No poster has been generated for this country yet.":"No poster has been generated for this country yet.","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying","Pick a region above, or click any dot to open that people group's country.":"Pick a region above, or click any dot to open that people group's country.","Pick a region or a country on the Regions List tab to narrow this dashboard.":"Pick a region or a country on the Regions List tab to narrow this dashboard.",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress","Region Dashboards":"Region Dashboards","Region dashboard":"Region dashboard",Regions:"Regions","Regions List":"Regions List",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Select View":"Select View","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","View country posters":"View country posters",Views:"Views","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged","Outside this region":"Outside this region",Pray:"Pray","Loading region dashboards…":"Loading region dashboards…","No regions found.":"No regions found.","Region data could not be loaded. This is a connection problem, not a filter.":"Region data could not be loaded. This is a connection problem, not a filter.","People groups could not be loaded. This is a connection problem, not a filter.":"People groups could not be loaded. This is a connection problem, not a filter.","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected."},Mf={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar",posterMap:"Mapa del cartel",prayerList:"Lista de oración",cardDeck:"Baraja de tarjetas",printOptions:"Opciones de impresión",showOnMap:"Ver en el mapa",close:"Cerrar",showOnMapAria:"Ver {label} en el mapa",cardStockAria:"Tamaño de la tarjeta de oración",previewPrintPoster:"Previsualizar e imprimir el cartel de {label}",share:"Compartir",shareSteps:["Inserta este mapa en tu sitio","Haz una lista de los sitios web de tu ciudad","Enséñales a insertarlo también","Enséñales a enseñar a otros a insertarlo","¡Multiplica los mapas por todas partes para Jesús!"],clearSelection:"Borrar la selección",noOptions:"No se encontraron opciones",renderingLocal:"Se está generando una imagen con calidad de impresión en tu navegador: no se sube nada.",postersPerRow:"Pósteres por fila"},xf={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},If={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"Las notas explicativas siguientes están en inglés."},mode:{gap:"Brecha",coverage:"Recursos encontrados"},search:{placeholder:"Busca un pueblo, idioma o código ISO",clear:"Borrar búsqueda",none:"Nada coincide con ese nombre, idioma o código.",placeholderShort:"Pueblo, idioma o código ISO"},legend:{title:"Pueblos no alcanzados sin ningún recurso del evangelio",band60:"60 %+ sin nada encontrado",band30:"30–59 %",bandSome:"algunos pueblos",bandAll:"todos los pueblos tienen algo",tier2:"Escrituras y película",tier1:"se encontró algún recurso",tier0:"no se encontró nada",hnr:"pueden oírlo, sin texto",showAll:"Mostrar todos los pueblos",titleCoverage:"Pueblos no alcanzados con algún recurso del evangelio",cov80:"80 %+ tienen algo",cov50:"50–79 %",cov1:"1–49 %",cov0:"nada para ninguno",tallyEach:"Cada",tallyIs:"es UN pueblo —",tallyOf:"de ellos,",tallyLink:"con un enlace",doxa0:"todos tienen algo",doxa1:"1–4 sin nada",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 alcanzados",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"Pueblos de Doxa en este mapa",notPlaced:"en la lista, aún sin ubicar",outOfScope:"sin pueblos de Doxa — sin color"},tabs:{groups:"Pueblos más grandes",countries:"Por país",regions:"Por región",noprayer:"Nadie ora",hnr:"Oyen, sin texto"},stat:{language:"Idioma",population:"Población",countries:"Países",peopleGroups:"Pueblos",noResource:"Ningún recurso encontrado",peopleAffected:"Personas afectadas",haveScripture:"Tienen Escrituras",haveFilm:"Tienen película",haveAudio:"Tienen Escrituras en audio",signLanguages:"Lenguas de señas",growingUnreached:"En crecimiento y no alcanzados",deathsDay:"Muertes estimadas/día"},sheet:{ownLanguage:"En su propio idioma",close:"Cerrar",loading:"Cargando recursos…",pray:"Ora por",everyResource:"Todos los recursos en",alsoSpeak:"También hablan"},res:{scripture:"Escrituras",film:"Película",audio:"Audio",bibleVideo:"Video bíblico",bibleStories:"Open Bible Stories",gospelAudio:"Audio del evangelio",gospelPresentation:"Presentación del evangelio",scriptureEarth:"Scripture Earth",training:"Formación de discipulado",jesusFilm:"Película JESÚS",audioScripture:"Escrituras en audio",bibleStoriesPlain:"Historias bíblicas"},state:{noneFound:"nada encontrado",noneAtFcbh:"nada en FCBH",noneAtGrn:"nada en GRN",notInZume:"no está entre los 54 de Zume",linkChecked:"enlace verificado",unchecked:"sin verificar",linkDead:"enlace roto",wrongLanguage:"idioma incorrecto",varietyNotStated:"(variedad no indicada)",inLanguage:"en"},guide:{dotVsCountry:"Cada punto es UN pueblo de Doxa y su propio idioma; un país es el NÚMERO de esos pueblos.",noneFoundShort:"«Nada encontrado» significa ausente de las fuentes consultadas, nunca prueba de que no exista.",tapCountry:"Toca un país para ver los recursos, pueblo por pueblo."},tables:{title:"Recursos del evangelio — Datos",showing:"Mostrando",of:"de",for:"para",filteredTo:"Filtrado por",showAll:"Mostrar todos los recursos",t_doxa:"Doxa — Acceso al evangelio",t_links:"Cada recurso + enlace",t_nothing:"Donde no se encontró nada",t_countrygap:"La brecha por país",t_translation:"Pueden oírlo, sin texto",t_translationcountry:"Dónde traducir",t_province:"Acceso al Evangelio por provincia — India y China",t_gaps:"Brechas y oportunidades",t_bridges:"Puentes urbanos",t_deaf:"La brecha sorda",t_resources:"Recursos por pueblo",t_languages:"Idiomas por país",t_growth:"Acceso vs crecimiento"},pages:{listTitle:"Recursos del evangelio por idioma",chartsTitle:"Recursos del evangelio — por idioma",loadingTables:"Cargando tablas de recursos…"},list:{noText:"Sin texto bíblico",hasScripture:"Tiene Escrituras",allLanguages:"Todos los idiomas",peopleGroup:"pueblo",peopleGroups:"pueblos",scriptureHere:"Escrituras en este idioma"},columns:{"People group":"Pueblo",Country:"País",Region:"Región",Language:"Idioma",Population:"Población",Religion:"Religión","Gospel access":"Acceso al evangelio",Resources:"Recursos",Scripture:"Escrituras","Bible video":"Video bíblico","Gospel presentation":"Presentación del evangelio",Countries:"Países","People groups":"Pueblos"},charts:{scriptureAny:"Escrituras (cualquiera)",fullBible:"Biblia completa",newTestament:"Nuevo Testamento",filmAny:"Película (cualquiera)",nothingInPools:"No se encontró nada en las fuentes consultadas",nothingInPoolsLower:"no se encontró nada en las fuentes consultadas",noResourceInPools:"no se encontró ningún recurso en las fuentes consultadas",aResourceFound:"se encontró un recurso",tabCoverage:"Cobertura de recursos",tabGap:"Mayores brechas",keyScripture:"escrituras",keyFilmStories:"película / historias",keyAudioEtc:"audio / presentación / formación",unresolvedCode:"código fuera de ISO 639-3 — sin resolver, no medido",c1Title:"Qué se ENCONTRÓ, por tipo de recurso",c1Sub:"En las {n} lenguas del conjunto de datos. Cada barra cuenta LENGUAS, no etnias.",c1Unit:"lenguas en las que se encontró el recurso en las fuentes consultadas",c2Title:"Mayores poblaciones sin nada encontrado",c2Sub:"Las {n} lenguas sin escrituras ni película en las fuentes consultadas, ordenadas por la población de las etnias que las hablan.",c2Unit:"personas en las etnias cuya lengua PRINCIPAL es esta — no hablantes de la lengua",c3Title:"Países con más lenguas desatendidas",c3Sub:"Los {n} países con más lenguas sin nada encontrado. La longitud de la barra es cada lengua presente en ese país.",c3Unit:"lenguas presentes en el país (una lengua transfronteriza cuenta en cada uno)"}},Of={search:"Buscar pueblos…",hide_filters:"Ocultar filtros",show_filters:"Mostrar filtros",total:"Total",showing:"Mostrando",load_more:"Cargar más",full_profile:"Perfil completo",wagf_region:"Región",wagf_block:"Bloque de afinidad",rop1:"Pueblo",religion:"Religión",exact_filter:"Exacto",clear_all:"Borrar todo",loading:"Cargando…",no_results:"Ningún pueblo coincide con este filtro.",type_to_search:"Escribe para buscar...",load_failed:"No se pudieron cargar los datos de pueblos. Es un problema de conexión, no de tu filtro.",search_people_or_countries:"Buscar pueblos o países…"},Ff={doxa:{label:"Proyecto 2000: los pueblos de DOXA",definition:"Los pueblos a los que sirve DOXA, tal como los da su lista en vivo"},unreached:{label:"Proyecto 7000: pueblos no alcanzados",definition:"Prioridad de perdición de IMB 0–2 (no alcanzados de frontera, pioneros o en expansión: menos del 2 % evangélicos)"},frontier:{label:"Proyecto 4700: pueblos de frontera",definition:"Prioridad de perdición de IMB 0 (no alcanzados de frontera: 0,1 % evangélicos o menos)"},"frontier-500k":{label:"Proyecto 700: pueblos de frontera de 500.000 o más",definition:"Prioridad de perdición de IMB 0 y una población de al menos 500.000"},unengaged:{label:"Pueblos no alcanzados y no atendidos",definition:"Prioridad de perdición de IMB 0–2 y estado de compromiso: no atendido"}},Rf={map:"Mapa",marker:"Marcador del mapa",closePopup:"Cerrar ventana",zoomIn:"Acercar",zoomOut:"Alejar",resetBearing:"Arrastra para girar el mapa; haz clic para orientar al norte",toggleAttribution:"Mostrar u ocultar atribución",mapFeedback:"Comentarios sobre el mapa",enterFullscreen:"Pantalla completa",exitFullscreen:"Salir de pantalla completa",findMyLocation:"Buscar mi ubicación",locationNotAvailable:"Ubicación no disponible",enableGlobe:"Activar globo",disableGlobe:"Desactivar globo",ctrlScroll:"Usa Ctrl + desplazamiento para hacer zoom en el mapa",cmdScroll:"Usa ⌘ + desplazamiento para hacer zoom en el mapa",twoFingers:"Usa dos dedos para mover el mapa"},Df={menuComingSoon:"Menú próximamente",pinHint:{tapDot:"Toca un punto de color: alguien todavía necesita oración"},upg100WallHeading:"Mi lista UPG 100 — Listas de oración y carteles",upg100WallTag:"Movilización de oración",upg100WallIntro:"Reparte la tarea de la oración en grupos de cincuenta y de cien, como Jesús alimentó a los 5.000 (Lucas 9:14). Cada cartel es una lista de 100 que puedes orar, imprimir y poner en la pared — orando por ellos <strong>por el nombre de su pueblo</strong>."},jf={country:{wagfRegion:"Región WAGF",wagfBlock:"Bloque WAGF",country:"País",uupgCount:"Número de UUPG"}},Bf={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Adoptado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Choose a region":"Elige una región","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros","Hide country posters":"Ocultar los carteles del país",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...",Map:"Mapa","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No poster has been generated for this country yet.":"Todavía no se ha generado ningún cartel para este país.","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración","Pick a region above, or click any dot to open that people group's country.":"Elige una región arriba, o haz clic en cualquier punto para abrir el país de ese pueblo.","Pick a region or a country on the Regions List tab to narrow this dashboard.":"Elige una región o un país en la pestaña Lista de regiones para acotar este panel.",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración","Region Dashboards":"Paneles de regiones","Region dashboard":"Panel de la región",Regions:"Regiones","Regions List":"Lista de regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Select View":"Seleccionar vista","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","View country posters":"Ver los carteles del país",Views:"Vistas","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos étnicos adoptados","people groups engaged":"grupos étnicos comprometidos","Outside this region":"Fuera de esta región",Pray:"Oración","Loading region dashboards…":"Cargando los paneles de regiones…","No regions found.":"No se encontraron regiones.","Region data could not be loaded. This is a connection problem, not a filter.":"No se pudieron cargar los datos de las regiones. Es un problema de conexión, no un filtro.","People groups could not be loaded. This is a connection problem, not a filter.":"No se pudieron cargar los pueblos. Es un problema de conexión, no un filtro.","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"El mapa no pudo iniciarse. Es un problema del token del mapa o de conexión, no un filtro: las cifras de arriba no se ven afectadas."},zf={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer",posterMap:"Carte de l'affiche",prayerList:"Liste de prière",cardDeck:"Jeu de cartes",printOptions:"Options d'impression",showOnMap:"Voir sur la carte",close:"Fermer",showOnMapAria:"Voir {label} sur la carte",cardStockAria:"Taille de la carte de prière",previewPrintPoster:"Aperçu et impression de l’affiche {label}",share:"Partager",shareSteps:["Intégrez cette carte à votre site","Dressez la liste des sites web de votre ville","Apprenez-leur à l’intégrer aussi","Apprenez-leur à former d’autres personnes à l’intégrer","Multiplions les cartes partout pour Jésus !"],clearSelection:"Effacer la sélection",noOptions:"Aucune option trouvée",renderingLocal:"Une image de qualité impression est générée dans votre navigateur — rien n’est envoyé.",postersPerRow:"Affiches par ligne"},Gf={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},Uf={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"Les notes explicatives ci-dessous sont en anglais."},mode:{gap:"Écart",coverage:"Ressources trouvées"},search:{placeholder:"Chercher un peuple, une langue ou un code ISO",clear:"Effacer la recherche",none:"Rien ne correspond à ce nom, cette langue ou ce code.",placeholderShort:"Peuple, langue ou code ISO"},legend:{title:"Peuples non atteints sans aucune ressource de l'Évangile",band60:"60 %+ sans rien trouvé",band30:"30–59 %",bandSome:"quelques peuples",bandAll:"tous les peuples ont quelque chose",tier2:"Écritures et film",tier1:"une ressource trouvée",tier0:"rien trouvé",hnr:"peuvent l'entendre, aucun texte",showAll:"Afficher tous les peuples",titleCoverage:"Peuples non atteints avec une ressource de l'Évangile",cov80:"80 %+ ont quelque chose",cov50:"50–79 %",cov1:"1–49 %",cov0:"rien pour aucun",tallyEach:"Chaque",tallyIs:"est UN peuple —",tallyOf:"d'entre eux,",tallyLink:"avec un lien",doxa0:"tous ont quelque chose",doxa1:"1–4 sans rien",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 atteints",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"Peuples Doxa sur cette carte",notPlaced:"sur la liste, pas encore localisés",outOfScope:"aucun peuple Doxa — non coloré"},tabs:{groups:"Peuples les plus nombreux",countries:"Par pays",regions:"Par région",noprayer:"Personne ne prie",hnr:"Entendent, sans texte"},stat:{language:"Langue",population:"Population",countries:"Pays",peopleGroups:"Peuples",noResource:"Aucune ressource trouvée",peopleAffected:"Personnes concernées",haveScripture:"Ont les Écritures",haveFilm:"Ont le film",haveAudio:"Ont les Écritures en audio",signLanguages:"Langues des signes",growingUnreached:"En croissance et non atteints",deathsDay:"Décès estimés/jour"},sheet:{ownLanguage:"Dans leur propre langue",close:"Fermer",loading:"Chargement des ressources…",pray:"Priez pour",everyResource:"Toutes les ressources en",alsoSpeak:"Parlent aussi"},res:{scripture:"Écritures",film:"Film",audio:"Audio",bibleVideo:"Vidéo biblique",bibleStories:"Open Bible Stories",gospelAudio:"Audio de l'Évangile",gospelPresentation:"Présentation de l'Évangile",scriptureEarth:"Scripture Earth",training:"Formation au discipulat",jesusFilm:"Film JÉSUS",audioScripture:"Écritures en audio",bibleStoriesPlain:"Histoires bibliques"},state:{noneFound:"rien trouvé",noneAtFcbh:"rien chez FCBH",noneAtGrn:"rien chez GRN",notInZume:"pas dans les 54 de Zume",linkChecked:"lien vérifié",unchecked:"non vérifié",linkDead:"lien mort",wrongLanguage:"mauvaise langue",varietyNotStated:"(variété non précisée)",inLanguage:"en"},guide:{dotVsCountry:"Un point est UN peuple de Doxa et sa propre langue ; un pays est le NOMBRE de ces peuples.",noneFoundShort:"« Rien trouvé » signifie absent des sources consultées, jamais la preuve que rien n'existe.",tapCountry:"Touchez un pays pour voir les ressources, peuple par peuple."},tables:{title:"Ressources de l'Évangile — Données",showing:"Affichage de",of:"sur",for:"pour",filteredTo:"Filtré sur",showAll:"Afficher toutes les ressources",t_doxa:"Doxa — Accès à l'Évangile",t_links:"Chaque ressource + lien",t_nothing:"Où rien n'a été trouvé",t_countrygap:"L'écart par pays",t_translation:"Entendent, sans texte",t_translationcountry:"Où traduire",t_province:"Accès à l'Évangile par province — Inde et Chine",t_gaps:"Écarts et opportunités",t_bridges:"Ponts urbains",t_deaf:"L'écart sourd",t_resources:"Ressources par peuple",t_languages:"Langues par pays",t_growth:"Accès vs croissance"},pages:{listTitle:"Ressources de l'Évangile par langue",chartsTitle:"Ressources de l'Évangile — par langue",loadingTables:"Chargement des tableaux…"},list:{noText:"Pas de texte biblique",hasScripture:"A les Écritures",allLanguages:"Toutes les langues",peopleGroup:"peuple",peopleGroups:"peuples",scriptureHere:"Écritures dans cette langue"},columns:{"People group":"Peuple",Country:"Pays",Region:"Région",Language:"Langue",Population:"Population",Religion:"Religion","Gospel access":"Accès à l'Évangile",Resources:"Ressources",Scripture:"Écritures","Bible video":"Vidéo biblique","Gospel presentation":"Présentation de l'Évangile",Countries:"Pays","People groups":"Peuples"},charts:{scriptureAny:"Écritures (toutes)",fullBible:"Bible complète",newTestament:"Nouveau Testament",filmAny:"Film (tous)",nothingInPools:"Rien trouvé dans les sources consultées",nothingInPoolsLower:"rien trouvé dans les sources consultées",noResourceInPools:"aucune ressource trouvée dans les sources consultées",aResourceFound:"une ressource trouvée",tabCoverage:"Couverture des ressources",tabGap:"Plus grands écarts",keyScripture:"écritures",keyFilmStories:"film / histoires",keyAudioEtc:"audio / présentation / formation",unresolvedCode:"code hors ISO 639-3 — non résolu, non mesuré",c1Title:"Ce qui a été TROUVÉ, par type de ressource",c1Sub:"Sur l'ensemble des {n} langues du corpus. Chaque barre compte des LANGUES, pas des peuples.",c1Unit:"langues où la ressource a été trouvée dans les sources consultées",c2Title:"Populations les plus nombreuses sans rien de trouvé",c2Sub:"Les {n} langues sans Écritures ni film dans les sources consultées, classées selon la population des peuples qui les parlent.",c2Unit:"personnes dans les peuples dont c'est la langue PRINCIPALE — non les locuteurs de la langue",c3Title:"Pays comptant le plus de langues non desservies",c3Sub:"Les {n} pays comptant le plus de langues sans rien de trouvé. La longueur de la barre correspond à chaque langue présente dans ce pays.",c3Unit:"langues présentes dans le pays (une langue transfrontalière compte dans chacun)"}},Kf={search:"Rechercher des peuples…",hide_filters:"Masquer les filtres",show_filters:"Afficher les filtres",total:"Total",showing:"Affichage",load_more:"Charger plus",full_profile:"Profil complet",wagf_region:"Région",wagf_block:"Bloc d'affinité",rop1:"Peuple",religion:"Religion",exact_filter:"Exact",clear_all:"Tout effacer",loading:"Chargement…",no_results:"Aucun peuple ne correspond à ce filtre.",type_to_search:"Tapez pour rechercher...",load_failed:"Les données n’ont pas pu être chargées. C’est un problème de connexion, pas votre filtre.",search_people_or_countries:"Rechercher des peuples ou des pays…"},Hf={doxa:{label:"Projet 2000 : les peuples de DOXA",definition:"Les peuples que DOXA sert, tels que sa liste en direct les donne"},unreached:{label:"Projet 7000 : peuples non atteints",definition:"Priorité de perdition IMB 0–2 (non atteints frontières, pionniers ou en expansion : moins de 2 % d’évangéliques)"},frontier:{label:"Projet 4700 : peuples frontières",definition:"Priorité de perdition IMB 0 (non atteints frontières : 0,1 % d’évangéliques ou moins)"},"frontier-500k":{label:"Projet 700 : peuples frontières de 500 000 personnes ou plus",definition:"Priorité de perdition IMB 0 et une population d’au moins 500 000"},unengaged:{label:"Peuples non atteints et non engagés",definition:"Priorité de perdition IMB 0–2 et statut d’engagement : non engagé"}},Wf={map:"Carte",marker:"Marqueur de carte",closePopup:"Fermer la fenêtre",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",resetBearing:"Faites glisser pour faire pivoter la carte, cliquez pour revenir au nord",toggleAttribution:"Afficher/masquer l'attribution",mapFeedback:"Commentaires sur la carte",enterFullscreen:"Plein écran",exitFullscreen:"Quitter le plein écran",findMyLocation:"Trouver ma position",locationNotAvailable:"Position non disponible",enableGlobe:"Activer le globe",disableGlobe:"Désactiver le globe",ctrlScroll:"Utilisez Ctrl + molette pour zoomer sur la carte",cmdScroll:"Utilisez ⌘ + molette pour zoomer sur la carte",twoFingers:"Utilisez deux doigts pour déplacer la carte"},qf={menuComingSoon:"Menu bientôt disponible",pinHint:{tapDot:"Touchez un point coloré — quelqu’un a encore besoin de prière"},upg100WallHeading:"Ma liste UPG 100 — Listes de prière et affiches",upg100WallTag:"Mobilisation pour la prière",upg100WallIntro:"Répartissez la tâche de la prière par groupes de cinquante et de cent — comme Jésus a nourri les 5 000 (Luc 9:14). Chaque affiche est une liste de 100 que vous pouvez prier, imprimer et afficher au mur — en priant pour eux <strong>par le nom de leur peuple</strong>."},Vf={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},Yf={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Choose a region":"Choisissez une région","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres","Hide country posters":"Masquer les affiches du pays",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...",Map:"Carte","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No poster has been generated for this country yet.":"Aucune affiche n'a encore été générée pour ce pays.","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière","Pick a region above, or click any dot to open that people group's country.":"Choisissez une région ci-dessus, ou cliquez sur un point pour ouvrir le pays de ce peuple.","Pick a region or a country on the Regions List tab to narrow this dashboard.":"Choisissez une région ou un pays dans l’onglet Liste des régions pour affiner ce tableau de bord.",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière","Region Dashboards":"Tableaux de bord des régions","Region dashboard":"Tableau de bord de la région",Regions:"Régions","Regions List":"Liste des régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Select View":"Sélectionner la vue","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","View country posters":"Voir les affiches du pays",Views:"Vues","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés","Outside this region":"Hors de cette région",Pray:"Prier","Loading region dashboards…":"Chargement des tableaux de bord des régions…","No regions found.":"Aucune région trouvée.","Region data could not be loaded. This is a connection problem, not a filter.":"Les données des régions n'ont pas pu être chargées. Il s'agit d'un problème de connexion, pas d'un filtre.","People groups could not be loaded. This is a connection problem, not a filter.":"Les peuples n'ont pas pu être chargés. Il s'agit d'un problème de connexion, pas d'un filtre.","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"La carte n'a pas pu démarrer. Il s'agit d'un problème de jeton de carte ou de connexion, pas d'un filtre — les chiffres ci-dessus ne sont pas affectés."},Xf={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें",posterMap:"पोस्टर मानचित्र",prayerList:"प्रार्थना सूची",cardDeck:"कार्ड सेट",printOptions:"छपाई विकल्प",showOnMap:"मानचित्र पर देखें",close:"बंद करें",showOnMapAria:"{label} को मानचित्र पर देखें",cardStockAria:"प्रार्थना कार्ड का आकार",previewPrintPoster:"{label} पोस्टर देखें और प्रिंट करें",share:"साझा करें",shareSteps:["इस मानचित्र को अपनी वेबसाइट पर लगाएँ","अपने शहर की वेबसाइटों की सूची बनाएँ","उन्हें भी इसे लगाना सिखाएँ","उन्हें सिखाएँ कि वे औरों को लगाना सिखाएँ","यीशु के लिए हर जगह मानचित्र बढ़ाएँ!"],clearSelection:"चयन हटाएँ",noOptions:"कोई विकल्प नहीं मिला",renderingLocal:"आपके ब्राउज़र में प्रिंट-गुणवत्ता वाली छवि बन रही है — कुछ भी अपलोड नहीं किया जाता।",postersPerRow:"प्रति पंक्ति पोस्टर"},Jf={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},Zf={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"नीचे दी गई व्याख्यात्मक टिप्पणियाँ अंग्रेज़ी में हैं।"},mode:{gap:"कमी",coverage:"उपलब्ध संसाधन"},search:{placeholder:"जनसमूह, भाषा या ISO कोड खोजें",clear:"खोज साफ़ करें",none:"इस नाम, भाषा या कोड से कुछ भी मेल नहीं खाता।",placeholderShort:"जनसमूह, भाषा या ISO कोड"},legend:{title:"ऐसे जनसमूह जिन तक सुसमाचार नहीं पहुँचा और कोई संसाधन नहीं मिला",band60:"60%+ के पास कुछ नहीं",band30:"30–59%",bandSome:"कुछ जनसमूह",bandAll:"सभी जनसमूहों के पास कुछ है",tier2:"पवित्र शास्त्र और फ़िल्म",tier1:"कुछ संसाधन मिला",tier0:"कुछ नहीं मिला",hnr:"सुन सकते हैं, पाठ नहीं",showAll:"सभी जनसमूह दिखाएँ",titleCoverage:"ऐसे अनपहुँचे जनसमूह जिनके लिए कुछ सुसमाचार संसाधन मिला",cov80:"80%+ के पास कुछ है",cov50:"50–79%",cov1:"1–49%",cov0:"किसी के लिए कुछ नहीं",tallyEach:"हर",tallyIs:"एक जनसमूह है —",tallyOf:"में से,",tallyLink:"के पास लिंक है",doxa0:"सभी के पास कुछ है",doxa1:"1–4 के पास कुछ नहीं",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 तक पहुँच",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"इस मानचित्र पर दोक्सा जनसमूह",notPlaced:"सूची में, अभी स्थान नहीं",outOfScope:"कोई दोक्सा जनसमूह नहीं — रंग नहीं"},tabs:{groups:"सबसे बड़े जनसमूह",countries:"देश के अनुसार",regions:"क्षेत्र के अनुसार",noprayer:"कोई प्रार्थना नहीं कर रहा",hnr:"सुन सकते हैं, पाठ नहीं"},stat:{language:"भाषा",population:"जनसंख्या",countries:"देश",peopleGroups:"जनसमूह",noResource:"कोई संसाधन नहीं मिला",peopleAffected:"प्रभावित लोग",haveScripture:"पवित्र शास्त्र उपलब्ध",haveFilm:"फ़िल्म उपलब्ध",haveAudio:"ऑडियो शास्त्र उपलब्ध",signLanguages:"सांकेतिक भाषाएँ",growingUnreached:"बढ़ते और अनपहुँचे",deathsDay:"अनुमानित मृत्यु/दिन"},sheet:{ownLanguage:"उनकी अपनी भाषा में",close:"बंद करें",loading:"संसाधन लोड हो रहे हैं…",pray:"के लिए प्रार्थना करें",everyResource:"में सभी संसाधन",alsoSpeak:"यह भी बोलते हैं"},res:{scripture:"पवित्र शास्त्र",film:"फ़िल्म",audio:"ऑडियो",bibleVideo:"बाइबल वीडियो",bibleStories:"Open Bible Stories",gospelAudio:"सुसमाचार ऑडियो",gospelPresentation:"सुसमाचार प्रस्तुति",scriptureEarth:"Scripture Earth",training:"शिष्यत्व प्रशिक्षण",jesusFilm:"यीशु फ़िल्म",audioScripture:"ऑडियो पवित्र शास्त्र",bibleStoriesPlain:"बाइबल की कहानियाँ"},state:{noneFound:"कुछ नहीं मिला",noneAtFcbh:"FCBH में कुछ नहीं",noneAtGrn:"GRN में कुछ नहीं",notInZume:"Zume की 54 भाषाओं में नहीं",linkChecked:"लिंक जाँचा गया",unchecked:"अनजाँचा",linkDead:"लिंक निष्क्रिय",wrongLanguage:"ग़लत भाषा",varietyNotStated:"(उपभाषा नहीं बताई गई)",inLanguage:"में"},guide:{dotVsCountry:"हर बिंदु दोक्सा का एक जनसमूह और उसकी अपनी भाषा है; देश का रंग उन जनसमूहों की संख्या है।",noneFoundShort:"“कुछ नहीं मिला” का अर्थ है जाँचे गए स्रोतों में नहीं — यह प्रमाण नहीं कि कुछ है ही नहीं।",tapCountry:"संसाधन देखने के लिए किसी देश पर टैप करें, जनसमूह दर जनसमूह।"},tables:{title:"सुसमाचार संसाधन — डेटा",showing:"दिखा रहे हैं",of:"में से",for:"के लिए",filteredTo:"फ़िल्टर:",showAll:"सभी संसाधन दिखाएँ",t_doxa:"दोक्सा — सुसमाचार पहुँच",t_links:"हर संसाधन + लिंक",t_nothing:"जहाँ कुछ नहीं मिला",t_countrygap:"देश अनुसार कमी",t_translation:"सुन सकते हैं, पाठ नहीं",t_translationcountry:"अनुवाद कहाँ करें",t_province:"प्रांत के अनुसार सुसमाचार तक पहुँच — भारत और चीन",t_gaps:"कमियाँ और अवसर",t_bridges:"नगर सेतु",t_deaf:"बधिर कमी",t_resources:"जनसमूह अनुसार संसाधन",t_languages:"देश अनुसार भाषाएँ",t_growth:"पहुँच बनाम जनसंख्या वृद्धि"},pages:{listTitle:"भाषा अनुसार सुसमाचार संसाधन",chartsTitle:"सुसमाचार संसाधन — भाषा अनुसार",loadingTables:"संसाधन तालिकाएँ लोड हो रही हैं…"},list:{noText:"कोई लिखित शास्त्र नहीं",hasScripture:"शास्त्र उपलब्ध",allLanguages:"सभी भाषाएँ",peopleGroup:"जनसमूह",peopleGroups:"जनसमूह",scriptureHere:"इस भाषा में पवित्र शास्त्र"},columns:{"People group":"जनसमूह",Country:"देश",Region:"क्षेत्र",Language:"भाषा",Population:"जनसंख्या",Religion:"धर्म","Gospel access":"सुसमाचार पहुँच",Resources:"संसाधन",Scripture:"पवित्र शास्त्र","Bible video":"बाइबल वीडियो","Gospel presentation":"सुसमाचार प्रस्तुति",Countries:"देश","People groups":"जनसमूह"},charts:{scriptureAny:"पवित्र शास्त्र (कोई भी)",fullBible:"पूरी बाइबल",newTestament:"नया नियम",filmAny:"फ़िल्म (कोई भी)",nothingInPools:"जाँचे गए स्रोतों में कुछ नहीं मिला",nothingInPoolsLower:"जाँचे गए स्रोतों में कुछ नहीं मिला",noResourceInPools:"जाँचे गए स्रोतों में कोई संसाधन नहीं मिला",aResourceFound:"एक संसाधन मिला",tabCoverage:"संसाधन कवरेज",tabGap:"सबसे बड़े अंतराल",keyScripture:"पवित्र शास्त्र",keyFilmStories:"फ़िल्म / कहानियाँ",keyAudioEtc:"ऑडियो / प्रस्तुति / प्रशिक्षण",unresolvedCode:"ISO 639-3 से बाहर कोड — अनसुलझा, मापा नहीं गया",c1Title:"क्या मिला, संसाधन के प्रकार के अनुसार",c1Sub:"डेटा की सभी {n} भाषाओं में। हर बार भाषाओं की गिनती करता है, जनसमूहों की नहीं।",c1Unit:"भाषाएँ जिनमें जाँचे गए स्रोतों में संसाधन मिला",c2Title:"सबसे बड़ी आबादी जिनके लिए कुछ नहीं मिला",c2Sub:"{n} भाषाएँ जिनके लिए जाँचे गए स्रोतों में न पवित्र शास्त्र है न फ़िल्म, उन्हें बोलने वाले जनसमूहों की आबादी के क्रम में।",c2Unit:"उन जनसमूहों के लोग जिनकी मुख्य भाषा यही है — भाषा के सभी वक्ता नहीं",c3Title:"सबसे अधिक असेवित भाषाओं वाले देश",c3Sub:"{n} देश जिनमें सबसे अधिक भाषाओं के लिए कुछ नहीं मिला। बार की लंबाई उस देश में मौजूद हर भाषा है।",c3Unit:"देश में मौजूद भाषाएँ (सीमा-पार भाषा हर देश में गिनी जाती है)"}},Qf={search:"जनसमूह खोजें…",hide_filters:"फ़िल्टर छिपाएँ",show_filters:"फ़िल्टर दिखाएँ",total:"कुल",showing:"दिखा रहे हैं",load_more:"और देखें",full_profile:"पूरी प्रोफ़ाइल",wagf_region:"क्षेत्र",wagf_block:"समानता समूह",rop1:"जनसमूह",religion:"धर्म",exact_filter:"सटीक",clear_all:"सब हटाएँ",loading:"लोड हो रहा है…",no_results:"इस फ़िल्टर से कोई जनसमूह मेल नहीं खाता।",type_to_search:"खोजने के लिए लिखें...",load_failed:"जनसमूह डेटा लोड नहीं हो सका। यह कनेक्शन की समस्या है, आपके फ़िल्टर की नहीं।",search_people_or_countries:"जनसमूह या देश खोजें…"},eh={doxa:{label:"प्रोजेक्ट 2000: DOXA के जनसमूह",definition:"वे जनसमूह जिनकी DOXA सेवा करता है, जैसे उसकी लाइव सूची उन्हें देती है"},unreached:{label:"प्रोजेक्ट 7000: अपहुँचे जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 (फ़्रंटियर, पायनियर या एक्सपैंडिंग अपहुँचे: 2% से कम इवेंजेलिकल)"},frontier:{label:"प्रोजेक्ट 4700: फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 (फ़्रंटियर अपहुँचे: 0.1% या उससे कम इवेंजेलिकल)"},"frontier-500k":{label:"प्रोजेक्ट 700: 5,00,000 या उससे अधिक के फ़्रंटियर जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0 और कम से कम 5,00,000 की जनसंख्या"},unengaged:{label:"अपहुँचे और असंलग्न जनसमूह",definition:"IMB लॉस्टनेस प्राथमिकता 0–2 और संलग्नता स्थिति: असंलग्न"}},th={map:"मानचित्र",marker:"मानचित्र चिह्न",closePopup:"पॉपअप बंद करें",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",resetBearing:"मानचित्र घुमाने के लिए खींचें, उत्तर पर लौटने के लिए क्लिक करें",toggleAttribution:"श्रेय दिखाएँ/छिपाएँ",mapFeedback:"मानचित्र पर प्रतिक्रिया",enterFullscreen:"पूर्ण स्क्रीन",exitFullscreen:"पूर्ण स्क्रीन से बाहर निकलें",findMyLocation:"मेरा स्थान खोजें",locationNotAvailable:"स्थान उपलब्ध नहीं",enableGlobe:"ग्लोब चालू करें",disableGlobe:"ग्लोब बंद करें",ctrlScroll:"मानचित्र ज़ूम करने के लिए Ctrl + स्क्रॉल करें",cmdScroll:"मानचित्र ज़ूम करने के लिए ⌘ + स्क्रॉल करें",twoFingers:"मानचित्र हिलाने के लिए दो उँगलियों का उपयोग करें"},oh={menuComingSoon:"मेनू शीघ्र आ रहा है",pinHint:{tapDot:"किसी रंगीन बिंदु पर टैप करें — किसी को अभी भी प्रार्थना की आवश्यकता है"},upg100WallHeading:"मेरी UPG 100 सूची — प्रार्थना सूचियाँ और पोस्टर",upg100WallTag:"प्रार्थना लामबंदी",upg100WallIntro:"प्रार्थना के काम को पचास-पचास और सौ-सौ के समूहों में बाँटें — जैसे यीशु ने 5,000 लोगों को खिलाया (लूका 9:14)। हर पोस्टर 100 की एक सूची है जिसके लिए आप प्रार्थना कर सकते हैं, छाप सकते हैं और दीवार पर लगा सकते हैं — उनके लिए <strong>उनके जनसमूह के नाम से</strong> प्रार्थना करते हुए।"},nh={country:{wagfRegion:"WAGF क्षेत्र",wagfBlock:"WAGF ब्लॉक",country:"देश",uupgCount:"UUPG संख्या"}},ah={"%count% people groups in %countries% countries":"%countries% देशों में %count% जनसमूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"गोद लिया गया","Adoption Progress":"गोद लेने की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Choose a region":"क्षेत्र चुनें","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"संपर्कित","Engagement Progress":"संलग्नता की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूरी प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ","Hide country posters":"देश के पोस्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।",Map:"नक्शा","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No poster has been generated for this country yet.":"इस देश के लिए अभी तक कोई पोस्टर नहीं बना है।","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"जनसमूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग","Pick a region above, or click any dot to open that people group's country.":"ऊपर कोई क्षेत्र चुनें, या उस लोगों के समूह का देश खोलने के लिए किसी बिंदु पर क्लिक करें।","Pick a region or a country on the Regions List tab to narrow this dashboard.":"इस डैशबोर्ड को सीमित करने के लिए क्षेत्रों की सूची टैब में कोई क्षेत्र या देश चुनें।",Population:"जनसंख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति","Region Dashboards":"क्षेत्र डैशबोर्ड","Region dashboard":"क्षेत्र डैशबोर्ड",Regions:"क्षेत्र","Regions List":"क्षेत्रों की सूची",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें…","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Select View":"दृश्य चुनें","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनसंपर्कित जनसमूह","View country posters":"देश के पोस्टर देखें",Views:"दृश्य","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"जनसमूह गोद लिए गए","people groups engaged":"संपर्कित जनसमूह","Outside this region":"इस क्षेत्र के बाहर",Pray:"प्रार्थना करें","Loading region dashboards…":"क्षेत्र डैशबोर्ड लोड हो रहे हैं…","No regions found.":"कोई क्षेत्र नहीं मिला।","Region data could not be loaded. This is a connection problem, not a filter.":"क्षेत्र डेटा लोड नहीं हो सका। यह कनेक्शन की समस्या है, फ़िल्टर की नहीं।","People groups could not be loaded. This is a connection problem, not a filter.":"लोकसमूह लोड नहीं हो सके। यह कनेक्शन की समस्या है, फ़िल्टर की नहीं।","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"नक्शा शुरू नहीं हो सका। यह नक्शा-टोकन या कनेक्शन की समस्या है, फ़िल्टर की नहीं — ऊपर के आंकड़े प्रभावित नहीं हैं।"},sh={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora",posterMap:"Mappa del poster",prayerList:"Lista di preghiera",cardDeck:"Mazzo di carte",printOptions:"Opzioni di stampa",showOnMap:"Mostra sulla mappa",close:"Chiudi",showOnMapAria:"Mostra {label} sulla mappa",cardStockAria:"Formato della scheda di preghiera",previewPrintPoster:"Anteprima e stampa del poster {label}",share:"Condividi",shareSteps:["Incorpora questa mappa nel tuo sito","Fai un elenco dei siti web della tua città","Insegna loro a incorporarla a loro volta","Insegna loro a formare altri a incorporarla","Moltiplichiamo le mappe ovunque per Gesù!"],clearSelection:"Cancella la selezione",noOptions:"Nessuna opzione trovata",renderingLocal:"Un’immagine con qualità di stampa viene generata nel tuo browser: nulla viene caricato.",postersPerRow:"Poster per riga"},rh={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},ih={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"Le note esplicative qui sotto sono in inglese."},mode:{gap:"Divario",coverage:"Risorse trovate"},search:{placeholder:"Cerca un popolo, una lingua o un codice ISO",clear:"Cancella ricerca",none:"Nessuna corrispondenza per quel nome, lingua o codice.",placeholderShort:"Popolo, lingua o codice ISO"},legend:{title:"Popoli non raggiunti senza alcuna risorsa del vangelo",band60:"60%+ senza nulla",band30:"30–59%",bandSome:"alcuni popoli",bandAll:"tutti i popoli hanno qualcosa",tier2:"Scritture e film",tier1:"qualche risorsa trovata",tier0:"nulla trovato",hnr:"possono ascoltarlo, nessun testo",showAll:"Mostra tutti i popoli",titleCoverage:"Popoli non raggiunti con qualche risorsa del vangelo",cov80:"80%+ hanno qualcosa",cov50:"50–79%",cov1:"1–49%",cov0:"nulla per nessuno",tallyEach:"Ogni",tallyIs:"è UN popolo —",tallyOf:"di questi,",tallyLink:"con un link",doxa0:"tutti hanno qualcosa",doxa1:"1–4 senza nulla",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 raggiunti",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"Popoli Doxa su questa mappa",notPlaced:"in elenco, non ancora collocati",outOfScope:"nessun popolo Doxa — non colorato"},tabs:{groups:"Popoli più numerosi",countries:"Per paese",regions:"Per regione",noprayer:"Nessuno prega",hnr:"Ascoltano, senza testo"},stat:{language:"Lingua",population:"Popolazione",countries:"Paesi",peopleGroups:"Popoli",noResource:"Nessuna risorsa trovata",peopleAffected:"Persone coinvolte",haveScripture:"Hanno le Scritture",haveFilm:"Hanno il film",haveAudio:"Hanno le Scritture in audio",signLanguages:"Lingue dei segni",growingUnreached:"In crescita e non raggiunti",deathsDay:"Decessi stimati/giorno"},sheet:{ownLanguage:"Nella loro lingua",close:"Chiudi",loading:"Caricamento risorse…",pray:"Prega per",everyResource:"Tutte le risorse in",alsoSpeak:"Parlano anche"},res:{scripture:"Scritture",film:"Film",audio:"Audio",bibleVideo:"Video biblico",bibleStories:"Open Bible Stories",gospelAudio:"Audio del Vangelo",gospelPresentation:"Presentazione del Vangelo",scriptureEarth:"Scripture Earth",training:"Formazione al discepolato",jesusFilm:"Film GESÙ",audioScripture:"Scritture in audio",bibleStoriesPlain:"Storie bibliche"},state:{noneFound:"nulla trovato",noneAtFcbh:"nulla presso FCBH",noneAtGrn:"nulla presso GRN",notInZume:"non tra le 54 di Zume",linkChecked:"link verificato",unchecked:"non verificato",linkDead:"link non attivo",wrongLanguage:"lingua errata",varietyNotStated:"(varietà non indicata)",inLanguage:"in"},guide:{dotVsCountry:"Ogni punto è UN popolo di Doxa con la sua lingua; un paese è il NUMERO di quei popoli.",noneFoundShort:"«Nulla trovato» significa assente dalle fonti controllate, mai la prova che non esista.",tapCountry:"Tocca un paese per vedere le risorse, popolo per popolo."},tables:{title:"Risorse del Vangelo — Dati",showing:"Mostrando",of:"di",for:"per",filteredTo:"Filtrato per",showAll:"Mostra tutte le risorse",t_doxa:"Doxa — Accesso al Vangelo",t_links:"Ogni risorsa + link",t_nothing:"Dove non si è trovato nulla",t_countrygap:"Il divario per paese",t_translation:"Ascoltano, senza testo",t_translationcountry:"Dove tradurre",t_province:"Accesso al Vangelo per provincia — India e Cina",t_gaps:"Divari e opportunità",t_bridges:"Ponti urbani",t_deaf:"Il divario sordo",t_resources:"Risorse per popolo",t_languages:"Lingue per paese",t_growth:"Accesso vs crescita"},pages:{listTitle:"Risorse del Vangelo per lingua",chartsTitle:"Risorse del Vangelo — per lingua",loadingTables:"Caricamento delle tabelle…"},list:{noText:"Nessun testo biblico",hasScripture:"Ha le Scritture",allLanguages:"Tutte le lingue",peopleGroup:"popolo",peopleGroups:"popoli",scriptureHere:"Scritture in questa lingua"},columns:{"People group":"Popolo",Country:"Paese",Region:"Regione",Language:"Lingua",Population:"Popolazione",Religion:"Religione","Gospel access":"Accesso al Vangelo",Resources:"Risorse",Scripture:"Scritture","Bible video":"Video biblico","Gospel presentation":"Presentazione del Vangelo",Countries:"Paesi","People groups":"Popoli"},charts:{scriptureAny:"Scritture (qualsiasi)",fullBible:"Bibbia completa",newTestament:"Nuovo Testamento",filmAny:"Film (qualsiasi)",nothingInPools:"Nulla trovato nelle fonti controllate",nothingInPoolsLower:"nulla trovato nelle fonti controllate",noResourceInPools:"nessuna risorsa trovata nelle fonti controllate",aResourceFound:"una risorsa trovata",tabCoverage:"Copertura delle risorse",tabGap:"Lacune maggiori",keyScripture:"scritture",keyFilmStories:"film / storie",keyAudioEtc:"audio / presentazione / formazione",unresolvedCode:"codice fuori ISO 639-3 — non risolto, non misurato",c1Title:"Che cosa è stato TROVATO, per tipo di risorsa",c1Sub:"Su tutte le {n} lingue del corpus. Ogni barra conta LINGUE, non gruppi etnici.",c1Unit:"lingue in cui la risorsa è stata trovata nelle fonti controllate",c2Title:"Popolazioni più numerose senza nulla trovato",c2Sub:"Le {n} lingue senza Scritture né film nelle fonti controllate, ordinate per la popolazione dei gruppi che le parlano.",c2Unit:"persone nei gruppi la cui lingua PRINCIPALE è questa — non i parlanti della lingua",c3Title:"Paesi con più lingue non servite",c3Sub:"I {n} paesi con più lingue per cui non è stato trovato nulla. La lunghezza della barra è ogni lingua presente in quel paese.",c3Unit:"lingue presenti nel paese (una lingua transfrontaliera conta in ciascuno)"}},lh={search:"Cerca popoli…",hide_filters:"Nascondi filtri",show_filters:"Mostra filtri",total:"Totale",showing:"Mostrati",load_more:"Carica altro",full_profile:"Profilo completo",wagf_region:"Regione",wagf_block:"Blocco di affinità",rop1:"Popolo",religion:"Religione",exact_filter:"Esatto",clear_all:"Cancella tutto",loading:"Caricamento…",no_results:"Nessun popolo corrisponde a questo filtro.",type_to_search:"Digita per cercare...",load_failed:"Impossibile caricare i dati dei popoli. È un problema di connessione, non del filtro.",search_people_or_countries:"Cerca popoli o paesi…"},ch={doxa:{label:"Progetto 2000: i popoli di DOXA",definition:"I popoli che DOXA serve, come li fornisce la sua lista in tempo reale"},unreached:{label:"Progetto 7000: popoli non raggiunti",definition:"Priorità di perdizione IMB 0–2 (non raggiunti di frontiera, pionieri o in espansione: meno del 2% evangelici)"},frontier:{label:"Progetto 4700: popoli di frontiera",definition:"Priorità di perdizione IMB 0 (non raggiunti di frontiera: 0,1% evangelici o meno)"},"frontier-500k":{label:"Progetto 700: popoli di frontiera di 500.000 o più",definition:"Priorità di perdizione IMB 0 e una popolazione di almeno 500.000"},unengaged:{label:"Popoli non raggiunti e non coinvolti",definition:"Priorità di perdizione IMB 0–2 e stato di coinvolgimento: non coinvolto"}},uh={map:"Mappa",marker:"Indicatore sulla mappa",closePopup:"Chiudi popup",zoomIn:"Ingrandisci",zoomOut:"Riduci",resetBearing:"Trascina per ruotare la mappa, fai clic per tornare al nord",toggleAttribution:"Mostra/nascondi attribuzione",mapFeedback:"Feedback sulla mappa",enterFullscreen:"Schermo intero",exitFullscreen:"Esci da schermo intero",findMyLocation:"Trova la mia posizione",locationNotAvailable:"Posizione non disponibile",enableGlobe:"Attiva globo",disableGlobe:"Disattiva globo",ctrlScroll:"Usa Ctrl + scorrimento per ingrandire la mappa",cmdScroll:"Usa ⌘ + scorrimento per ingrandire la mappa",twoFingers:"Usa due dita per spostare la mappa"},dh={menuComingSoon:"Menu in arrivo",pinHint:{tapDot:"Tocca un punto colorato — qualcuno ha ancora bisogno di preghiera"},upg100WallHeading:"La mia lista UPG 100 — Liste di preghiera e poster",upg100WallTag:"Mobilitazione alla preghiera",upg100WallIntro:"Distribuisci il compito della preghiera in gruppi di cinquanta e di cento — come Gesù sfamò i 5.000 (Luca 9:14). Ogni poster è una lista di 100 che puoi pregare, stampare e appendere al muro — pregando per loro <strong>con il nome del loro popolo</strong>."},ph={country:{wagfRegion:"Regione WAGF",wagfBlock:"Blocco WAGF",country:"Paese",uupgCount:"Numero di UUPG"}},gh={"%count% people groups in %countries% countries":"%count% popoli in %countries% paesi","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% conta %count% popoli in %countries% paesi. Il colore di ogni punto indica quante persone pregano per quel popolo.","1+ People Praying":"1+ persone in preghiera","100+ People Praying":"100+ persone in preghiera",Adopted:"Adottato","Adoption Progress":"Avanzamento dell'adozione","All Regions":"Tutte le regioni","Alternate Names":"Nomi alternativi","Choose a region":"Scegli una regione","Clear All":"Cancella tutto",Countries:"Paesi","Countries in this region":"Paesi di questa regione",Country:"Paese",Engaged:"Coinvolto","Engagement Progress":"Avanzamento dell'impegno","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Ogni popolo non ancora raggiunto adottato da una chiesa impegnata nella preghiera, nel dare e nell'inviare","Exact Search":"Ricerca esatta","Find unreached people groups by region and country.":"Trova i popoli non raggiunti per regione e paese.","Full Profile":"Profilo completo",Goal:"Obiettivo","Hide Filters":"Nascondi i filtri","Hide country posters":"Nascondi i poster del paese",Intercessors:"Intercessori","Load More":"Carica altri","Loading results...":"Caricamento dei risultati…",Map:"Mappa","Mobilize 100+ people praying daily for each DOXA people group":"Mobilitare oltre 100 persone che pregano ogni giorno per ciascun popolo DOXA","No One Praying":"Nessuno prega","No options found":"Nessuna opzione trovata","No poster has been generated for this country yet.":"Per questo paese non è ancora stato generato alcun poster.","No unengaged people groups by 2033":"Nessun popolo senza impegno entro il 2033","Not Adopted":"Non adottato",Other:"Altro","Page Not Found":"Pagina non trovata","People Group":"Popolo","People Groups":"Popoli","People committed to praying":"Persone impegnate a pregare","Pick a region above, or click any dot to open that people group's country.":"Scegli una regione qui sopra, oppure clicca su un punto per aprire il paese di quel gruppo etnico.","Pick a region or a country on the Regions List tab to narrow this dashboard.":"Scegli una regione o un paese nella scheda Elenco delle regioni per restringere questo cruscotto.",Population:"Popolazione","Prayer Coverage":"Copertura della preghiera","Prayer coverage progress":"Avanzamento della copertura di preghiera","Region Dashboards":"Cruscotti delle regioni","Region dashboard":"Cruscotto della regione",Regions:"Regioni","Regions List":"Elenco delle regioni",Religion:"Religione","Search names, country/continent, religions...":"Cerca nomi, paese/continente, religioni…","See %region% dashboard":"Vedi il cruscotto di %region%","See All":"Vedi tutto",Select:"Seleziona","Select View":"Seleziona vista","Show Filters":"Mostra i filtri","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% ci sono %count% popoli. Controlla sulla mappa anche i popoli ai confini di questo paese.",Total:"Totale","Type to search...":"Digita per cercare…","Unengaged people groups":"Popoli senza impegno","View country posters":"Vedi i poster del paese",Views:"Viste","WAGF Block":"Blocco WAGF","WAGF Region":"Regione WAGF","people groups adopted":"popoli adottati","people groups engaged":"popoli coinvolti","Outside this region":"Fuori da questa regione",Pray:"Prega","Loading region dashboards…":"Caricamento delle dashboard delle regioni…","No regions found.":"Nessuna regione trovata.","Region data could not be loaded. This is a connection problem, not a filter.":"Non è stato possibile caricare i dati delle regioni. È un problema di connessione, non un filtro.","People groups could not be loaded. This is a connection problem, not a filter.":"Non è stato possibile caricare i gruppi di popolazione. È un problema di connessione, non un filtro.","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"La mappa non è potuta avviare. È un problema di token della mappa o di connessione, non un filtro: i dati sopra non sono interessati."},fh={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar",posterMap:"Mapa do cartaz",prayerList:"Lista de oração",cardDeck:"Baralho de cartões",printOptions:"Opções de impressão",showOnMap:"Ver no mapa",close:"Fechar",showOnMapAria:"Ver {label} no mapa",cardStockAria:"Tamanho do cartão de oração",previewPrintPoster:"Pré-visualizar e imprimir o cartaz de {label}",share:"Partilhar",shareSteps:["Incorpore este mapa no seu site","Faça uma lista dos sites da sua cidade","Ensine-os a incorporá-lo também","Ensine-os a ensinar outros a incorporá-lo","Multipliquemos mapas por toda a parte para Jesus!"],clearSelection:"Limpar a seleção",noOptions:"Nenhuma opção encontrada",renderingLocal:"Uma imagem com qualidade de impressão está a ser gerada no seu navegador — nada é enviado.",postersPerRow:"Cartazes por linha"},hh={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},mh={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"As notas explicativas abaixo estão em inglês."},mode:{gap:"Lacuna",coverage:"Recursos encontrados"},search:{placeholder:"Procure um povo, idioma ou código ISO",clear:"Limpar busca",none:"Nada corresponde a esse nome, idioma ou código.",placeholderShort:"Povo, idioma ou código ISO"},legend:{title:"Povos não alcançados sem nenhum recurso do evangelho",band60:"60%+ sem nada encontrado",band30:"30–59%",bandSome:"alguns povos",bandAll:"todos os povos têm algo",tier2:"Escrituras e filme",tier1:"algum recurso encontrado",tier0:"nada encontrado",hnr:"podem ouvir, sem texto",showAll:"Mostrar todos os povos",titleCoverage:"Povos não alcançados com algum recurso do evangelho",cov80:"80%+ têm algo",cov50:"50–79%",cov1:"1–49%",cov0:"nada para ninguém",tallyEach:"Cada",tallyIs:"é UM povo —",tallyOf:"deles,",tallyLink:"com um link",doxa0:"todos têm algo",doxa1:"1–4 sem nada",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 alcançados",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"Povos Doxa neste mapa",notPlaced:"na lista, ainda sem localização",outOfScope:"sem povos Doxa — sem cor"},tabs:{groups:"Maiores povos",countries:"Por país",regions:"Por região",noprayer:"Ninguém orando",hnr:"Ouvem, sem texto"},stat:{language:"Idioma",population:"População",countries:"Países",peopleGroups:"Povos",noResource:"Nenhum recurso encontrado",peopleAffected:"Pessoas afetadas",haveScripture:"Têm Escrituras",haveFilm:"Têm filme",haveAudio:"Têm Escrituras em áudio",signLanguages:"Línguas de sinais",growingUnreached:"Em crescimento e não alcançados",deathsDay:"Mortes estimadas/dia"},sheet:{ownLanguage:"No próprio idioma",close:"Fechar",loading:"Carregando recursos…",pray:"Ore por",everyResource:"Todos os recursos em",alsoSpeak:"Também falam"},res:{scripture:"Escrituras",film:"Filme",audio:"Áudio",bibleVideo:"Vídeo bíblico",bibleStories:"Open Bible Stories",gospelAudio:"Áudio do evangelho",gospelPresentation:"Apresentação do evangelho",scriptureEarth:"Scripture Earth",training:"Treinamento de discipulado",jesusFilm:"Filme JESUS",audioScripture:"Escrituras em áudio",bibleStoriesPlain:"Histórias bíblicas"},state:{noneFound:"nada encontrado",noneAtFcbh:"nada na FCBH",noneAtGrn:"nada na GRN",notInZume:"não está entre as 54 da Zume",linkChecked:"link verificado",unchecked:"não verificado",linkDead:"link inativo",wrongLanguage:"idioma incorreto",varietyNotStated:"(variedade não indicada)",inLanguage:"em"},guide:{dotVsCountry:"Cada ponto é UM povo da Doxa e o seu próprio idioma; um país é o NÚMERO desses povos.",noneFoundShort:"«Nada encontrado» significa ausente das fontes verificadas, nunca prova de que não exista.",tapCountry:"Toque num país para ver os recursos, povo a povo."},tables:{title:"Recursos do evangelho — Dados",showing:"Mostrando",of:"de",for:"para",filteredTo:"Filtrado por",showAll:"Mostrar todos os recursos",t_doxa:"Doxa — Acesso ao evangelho",t_links:"Cada recurso + link",t_nothing:"Onde nada foi encontrado",t_countrygap:"A lacuna por país",t_translation:"Ouvem, sem texto",t_translationcountry:"Onde traduzir",t_province:"Acesso ao Evangelho por província — Índia e China",t_gaps:"Lacunas e oportunidades",t_bridges:"Pontes urbanas",t_deaf:"A lacuna surda",t_resources:"Recursos por povo",t_languages:"Idiomas por país",t_growth:"Acesso vs crescimento"},pages:{listTitle:"Recursos do evangelho por idioma",chartsTitle:"Recursos do evangelho — por idioma",loadingTables:"Carregando tabelas de recursos…"},list:{noText:"Sem texto bíblico",hasScripture:"Tem Escrituras",allLanguages:"Todos os idiomas",peopleGroup:"povo",peopleGroups:"povos",scriptureHere:"Escrituras neste idioma"},columns:{"People group":"Povo",Country:"País",Region:"Região",Language:"Idioma",Population:"População",Religion:"Religião","Gospel access":"Acesso ao evangelho",Resources:"Recursos",Scripture:"Escrituras","Bible video":"Vídeo bíblico","Gospel presentation":"Apresentação do evangelho",Countries:"Países","People groups":"Povos"},charts:{scriptureAny:"Escrituras (qualquer)",fullBible:"Bíblia completa",newTestament:"Novo Testamento",filmAny:"Filme (qualquer)",nothingInPools:"Nada encontrado nas fontes consultadas",nothingInPoolsLower:"nada encontrado nas fontes consultadas",noResourceInPools:"nenhum recurso encontrado nas fontes consultadas",aResourceFound:"um recurso encontrado",tabCoverage:"Cobertura de recursos",tabGap:"Maiores lacunas",keyScripture:"escrituras",keyFilmStories:"filme / histórias",keyAudioEtc:"áudio / apresentação / treinamento",unresolvedCode:"código fora da ISO 639-3 — não resolvido, não medido",c1Title:"O que foi ENCONTRADO, por tipo de recurso",c1Sub:"Em todas as {n} línguas do conjunto de dados. Cada barra conta LÍNGUAS, não etnias.",c1Unit:"línguas em que o recurso foi encontrado nas fontes consultadas",c2Title:"Maiores populações sem nada encontrado",c2Sub:"As {n} línguas sem Escrituras e sem filme nas fontes consultadas, ordenadas pela população das etnias que as falam.",c2Unit:"pessoas nas etnias cuja língua PRINCIPAL é esta — não falantes da língua",c3Title:"Países com mais línguas desatendidas",c3Sub:"Os {n} países com mais línguas sem nada encontrado. O comprimento da barra é cada língua presente nesse país.",c3Unit:"línguas presentes no país (uma língua transfronteiriça conta em cada um)"}},bh={search:"Pesquisar povos…",hide_filters:"Ocultar filtros",show_filters:"Mostrar filtros",total:"Total",showing:"Mostrando",load_more:"Carregar mais",full_profile:"Perfil completo",wagf_region:"Região",wagf_block:"Bloco de afinidade",rop1:"Povo",religion:"Religião",exact_filter:"Exato",clear_all:"Limpar tudo",loading:"A carregar…",no_results:"Nenhum povo corresponde a este filtro.",type_to_search:"Escreva para pesquisar...",load_failed:"Não foi possível carregar os dados dos povos. É um problema de ligação, não do seu filtro.",search_people_or_countries:"Pesquisar povos ou países…"},yh={doxa:{label:"Projeto 2000: os povos da DOXA",definition:"Os povos que a DOXA serve, como a sua lista ao vivo os apresenta"},unreached:{label:"Projeto 7000: povos não alcançados",definition:"Prioridade de perdição do IMB 0–2 (não alcançados de fronteira, pioneiros ou em expansão: menos de 2% evangélicos)"},frontier:{label:"Projeto 4700: povos de fronteira",definition:"Prioridade de perdição do IMB 0 (não alcançados de fronteira: 0,1% evangélicos ou menos)"},"frontier-500k":{label:"Projeto 700: povos de fronteira de 500.000 ou mais",definition:"Prioridade de perdição do IMB 0 e uma população de pelo menos 500.000"},unengaged:{label:"Povos não alcançados e não engajados",definition:"Prioridade de perdição do IMB 0–2 e estado de engajamento: não engajado"}},_h={map:"Mapa",marker:"Marcador do mapa",closePopup:"Fechar janela",zoomIn:"Aumentar zoom",zoomOut:"Diminuir zoom",resetBearing:"Arraste para girar o mapa, clique para voltar ao norte",toggleAttribution:"Mostrar/ocultar atribuição",mapFeedback:"Comentários sobre o mapa",enterFullscreen:"Tela cheia",exitFullscreen:"Sair da tela cheia",findMyLocation:"Encontrar minha localização",locationNotAvailable:"Localização indisponível",enableGlobe:"Ativar globo",disableGlobe:"Desativar globo",ctrlScroll:"Use Ctrl + rolagem para ampliar o mapa",cmdScroll:"Use ⌘ + rolagem para ampliar o mapa",twoFingers:"Use dois dedos para mover o mapa"},$h={menuComingSoon:"Menu em breve",pinHint:{tapDot:"Toque num ponto colorido — alguém ainda precisa de oração"},upg100WallHeading:"A minha lista UPG 100 — Listas de oração e cartazes",upg100WallTag:"Mobilização de oração",upg100WallIntro:"Reparta a tarefa da oração em grupos de cinquenta e de cem — como Jesus alimentou os 5.000 (Lucas 9:14). Cada cartaz é uma lista de 100 que pode orar, imprimir e pôr na parede — orando por eles <strong>pelo nome do seu povo</strong>."},vh={country:{wagfRegion:"Região WAGF",wagfBlock:"Bloco WAGF",country:"País",uupgCount:"Número de UUPG"}},Ah={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Adotado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Choose a region":"Escolha uma região","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros","Hide country posters":"Ocultar os cartazes do país",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...",Map:"Mapa","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No poster has been generated for this country yet.":"Ainda não foi gerado nenhum cartaz para este país.","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração","Pick a region above, or click any dot to open that people group's country.":"Escolha uma região acima, ou clique em qualquer ponto para abrir o país desse povo.","Pick a region or a country on the Regions List tab to narrow this dashboard.":"Escolha uma região ou um país na aba Lista de regiões para restringir este painel.",Population:"População","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração","Region Dashboards":"Painéis das regiões","Region dashboard":"Painel da região",Regions:"Regiões","Regions List":"Lista de regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Select View":"Selecionar visualização","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","View country posters":"Ver os cartazes do país",Views:"Visualizações","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados","Outside this region":"Fora desta região",Pray:"Ore","Loading region dashboards…":"Carregando os painéis das regiões…","No regions found.":"Nenhuma região encontrada.","Region data could not be loaded. This is a connection problem, not a filter.":"Não foi possível carregar os dados das regiões. É um problema de conexão, não um filtro.","People groups could not be loaded. This is a connection problem, not a filter.":"Não foi possível carregar os povos. É um problema de conexão, não um filtro.","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"O mapa não pôde iniciar. É um problema do token do mapa ou de conexão, não um filtro — os números acima não são afetados."},Sh={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează",posterMap:"Harta afișului",prayerList:"Listă de rugăciune",cardDeck:"Pachet de cartonașe",printOptions:"Opțiuni de tipărire",showOnMap:"Arată pe hartă",close:"Închide",showOnMapAria:"Arată {label} pe hartă",cardStockAria:"Dimensiunea cardului de rugăciune",previewPrintPoster:"Previzualizează și tipărește posterul {label}",share:"Distribuie",shareSteps:["Încorporează această hartă pe site-ul tău","Fă o listă cu site-urile din orașul tău","Învață-i să o încorporeze și ei","Învață-i să îi formeze pe alții să o încorporeze","Să multiplicăm hărți pretutindeni pentru Isus!"],clearSelection:"Șterge selecția",noOptions:"Nicio opțiune găsită",renderingLocal:"O imagine de calitate pentru tipar este generată în browserul tău — nimic nu este încărcat.",postersPerRow:"Postere pe rând"},wh={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},kh={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"Notele explicative de mai jos sunt în limba engleză."},mode:{gap:"Golul",coverage:"Resurse găsite"},search:{placeholder:"Caută un popor, o limbă sau un cod ISO",clear:"Șterge căutarea",none:"Nimic nu se potrivește cu acel nume, limbă sau cod.",placeholderShort:"Popor, limbă sau cod ISO"},legend:{title:"Popoare neatinse, fără nicio resursă a Evangheliei",band60:"60%+ fără nimic găsit",band30:"30–59%",bandSome:"unele popoare",bandAll:"toate popoarele au ceva",tier2:"Scripturi și film",tier1:"s-a găsit o resursă",tier0:"nimic găsit",hnr:"pot auzi, fără text",showAll:"Arată toate popoarele",titleCoverage:"Popoare neatinse cu o resursă a Evangheliei",cov80:"80%+ au ceva",cov50:"50–79%",cov1:"1–49%",cov0:"nimic pentru niciunul",tallyEach:"Fiecare",tallyIs:"este UN popor —",tallyOf:"dintre ele,",tallyLink:"cu un link",doxa0:"toate au ceva",doxa1:"1–4 fără nimic",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 atinse",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"Popoare Doxa pe această hartă",notPlaced:"pe listă, încă nelocalizate",outOfScope:"niciun popor Doxa — necolorat"},tabs:{groups:"Cele mai mari popoare",countries:"După țară",regions:"După regiune",noprayer:"Nimeni nu se roagă",hnr:"Aud, fără text"},stat:{language:"Limba",population:"Populație",countries:"Țări",peopleGroups:"Popoare",noResource:"Nicio resursă găsită",peopleAffected:"Persoane afectate",haveScripture:"Au Scripturile",haveFilm:"Au filmul",haveAudio:"Au Scripturi audio",signLanguages:"Limbaje semne",growingUnreached:"În creștere și neatinse",deathsDay:"Decese estimate/zi"},sheet:{ownLanguage:"În limba lor",close:"Închide",loading:"Se încarcă resursele…",pray:"Roagă-te pentru",everyResource:"Toate resursele în",alsoSpeak:"Vorbesc și"},res:{scripture:"Scripturi",film:"Film",audio:"Audio",bibleVideo:"Video biblic",bibleStories:"Open Bible Stories",gospelAudio:"Audio cu Evanghelia",gospelPresentation:"Prezentarea Evangheliei",scriptureEarth:"Scripture Earth",training:"Instruire în ucenicie",jesusFilm:"Filmul ISUS",audioScripture:"Scripturi audio",bibleStoriesPlain:"Povestiri biblice"},state:{noneFound:"nimic găsit",noneAtFcbh:"nimic la FCBH",noneAtGrn:"nimic la GRN",notInZume:"nu este între cele 54 Zume",linkChecked:"link verificat",unchecked:"neverificat",linkDead:"link mort",wrongLanguage:"limbă greșită",varietyNotStated:"(varietate nespecificată)",inLanguage:"în"},guide:{dotVsCountry:"Fiecare punct este UN popor Doxa și limba lui; o țară este NUMĂRUL acelor popoare.",noneFoundShort:"„Nimic găsit” înseamnă absent din sursele verificate, niciodată dovada că nu există.",tapCountry:"Atinge o țară pentru a vedea resursele, popor cu popor."},tables:{title:"Resurse ale Evangheliei — Date",showing:"Se afișează",of:"din",for:"pentru",filteredTo:"Filtrat după",showAll:"Arată toate resursele",t_doxa:"Doxa — Acces la Evanghelie",t_links:"Fiecare resursă + link",t_nothing:"Unde nu s-a găsit nimic",t_countrygap:"Golul pe țări",t_translation:"Aud, fără text",t_translationcountry:"Unde să traducem",t_province:"Accesul la Evanghelie pe provincii — India și China",t_gaps:"Goluri și oportunități",t_bridges:"Punți urbane",t_deaf:"Golul surd",t_resources:"Resurse pe popoare",t_languages:"Limbi pe țări",t_growth:"Acces vs creștere"},pages:{listTitle:"Resurse ale Evangheliei pe limbi",chartsTitle:"Resurse ale Evangheliei — pe limbi",loadingTables:"Se încarcă tabelele…"},list:{noText:"Fără text biblic",hasScripture:"Are Scripturi",allLanguages:"Toate limbile",peopleGroup:"popor",peopleGroups:"popoare",scriptureHere:"Scripturi în această limbă"},columns:{"People group":"Popor",Country:"Țară",Region:"Regiune",Language:"Limbă",Population:"Populație",Religion:"Religie","Gospel access":"Acces la Evanghelie",Resources:"Resurse",Scripture:"Scripturi","Bible video":"Video biblic","Gospel presentation":"Prezentarea Evangheliei",Countries:"Țări","People groups":"Popoare"},charts:{scriptureAny:"Scripturi (oricare)",fullBible:"Biblia completă",newTestament:"Noul Testament",filmAny:"Film (oricare)",nothingInPools:"Nimic găsit în sursele verificate",nothingInPoolsLower:"nimic găsit în sursele verificate",noResourceInPools:"nicio resursă găsită în sursele verificate",aResourceFound:"o resursă găsită",tabCoverage:"Acoperirea resurselor",tabGap:"Cele mai mari lacune",keyScripture:"scripturi",keyFilmStories:"film / povestiri",keyAudioEtc:"audio / prezentare / instruire",unresolvedCode:"cod în afara ISO 639-3 — nerezolvat, nemăsurat",c1Title:"Ce s-a GĂSIT, după tipul resursei",c1Sub:"Pe toate cele {n} limbi din setul de date. Fiecare bară numără LIMBI, nu grupuri etnice.",c1Unit:"limbi în care resursa a fost găsită în sursele verificate",c2Title:"Cele mai mari populații fără nimic găsit",c2Sub:"Cele {n} limbi fără Scripturi și fără film în sursele verificate, ordonate după populația grupurilor care le vorbesc.",c2Unit:"persoane din grupurile a căror limbă PRINCIPALĂ este aceasta — nu vorbitorii limbii",c3Title:"Țări cu cele mai multe limbi neservite",c3Sub:"Cele {n} țări cu cele mai multe limbi pentru care nu s-a găsit nimic. Lungimea barei este fiecare limbă prezentă în acea țară.",c3Unit:"limbi prezente în țară (o limbă transfrontalieră se numără în fiecare)"}},Ph={search:"Caută popoare…",hide_filters:"Ascunde filtrele",show_filters:"Arată filtrele",total:"Total",showing:"Se afișează",load_more:"Încarcă mai mult",full_profile:"Profil complet",wagf_region:"Regiune",wagf_block:"Bloc de afinitate",rop1:"Popor",religion:"Religie",exact_filter:"Exact",clear_all:"Șterge tot",loading:"Se încarcă…",no_results:"Niciun popor nu corespunde acestui filtru.",type_to_search:"Scrie pentru a căuta...",load_failed:"Datele despre popoare nu au putut fi încărcate. Este o problemă de conexiune, nu a filtrului.",search_people_or_countries:"Caută popoare sau țări…"},Th={doxa:{label:"Proiectul 2000: popoarele DOXA",definition:"Popoarele pe care DOXA le slujește, așa cum le dă lista sa live"},unreached:{label:"Proiectul 7000: popoare neatinse",definition:"Prioritatea de pierzare IMB 0–2 (neatinse de frontieră, pionier sau în expansiune: sub 2% evanghelici)"},frontier:{label:"Proiectul 4700: popoare de frontieră",definition:"Prioritatea de pierzare IMB 0 (neatinse de frontieră: 0,1% evanghelici sau mai puțin)"},"frontier-500k":{label:"Proiectul 700: popoare de frontieră de 500.000 sau mai mult",definition:"Prioritatea de pierzare IMB 0 și o populație de cel puțin 500.000"},unengaged:{label:"Popoare neatinse și neangajate",definition:"Prioritatea de pierzare IMB 0–2 și starea de angajare: neangajat"}},Eh={map:"Hartă",marker:"Marcaj pe hartă",closePopup:"Închide fereastra",zoomIn:"Mărește",zoomOut:"Micșorează",resetBearing:"Trage pentru a roti harta, apasă pentru a reveni la nord",toggleAttribution:"Afișează/ascunde atribuirea",mapFeedback:"Feedback despre hartă",enterFullscreen:"Ecran complet",exitFullscreen:"Ieși din ecran complet",findMyLocation:"Găsește-mi locația",locationNotAvailable:"Locație indisponibilă",enableGlobe:"Activează globul",disableGlobe:"Dezactivează globul",ctrlScroll:"Folosește Ctrl + derulare pentru a mări harta",cmdScroll:"Folosește ⌘ + derulare pentru a mări harta",twoFingers:"Folosește două degete pentru a muta harta"},Ch={menuComingSoon:"Meniu în curând",pinHint:{tapDot:"Atinge un punct colorat — cineva are încă nevoie de rugăciune"},upg100WallHeading:"Lista mea UPG 100 — Liste de rugăciune și afișe",upg100WallTag:"Mobilizare pentru rugăciune",upg100WallIntro:"Împarte sarcina rugăciunii în grupuri de câte cincizeci și o sută — așa cum Isus a hrănit cei 5.000 (Luca 9:14). Fiecare afiș este o listă de 100 pe care o poți ruga, tipări și pune pe perete — rugându-te pentru ei <strong>pe numele poporului lor</strong>."},Lh={country:{wagfRegion:"Regiunea WAGF",wagfBlock:"Blocul WAGF",country:"Țară",uupgCount:"Număr de UUPG"}},Nh={"%count% people groups in %countries% countries":"%count% popoare în %countries% țări","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% are %count% popoare în %countries% țări. Culoarea fiecărui punct arată câți oameni se roagă pentru acel popor.","1+ People Praying":"1+ persoane se roagă","100+ People Praying":"100+ persoane se roagă",Adopted:"Adoptat","Adoption Progress":"Progresul adopției","All Regions":"Toate regiunile","Alternate Names":"Denumiri alternative","Choose a region":"Alege o regiune","Clear All":"Șterge tot",Countries:"Țări","Countries in this region":"Țările din această regiune",Country:"Țară",Engaged:"Implicat","Engagement Progress":"Progresul implicării","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Fiecare popor neimplicat adoptat de o biserică dedicată rugăciunii, dăruirii și trimiterii","Exact Search":"Căutare exactă","Find unreached people groups by region and country.":"Găsește popoarele neatinse după regiune și țară.","Full Profile":"Profil complet",Goal:"Obiectiv","Hide Filters":"Ascunde filtrele","Hide country posters":"Ascunde posterele țării",Intercessors:"Mijlocitori","Load More":"Încarcă mai multe","Loading results...":"Se încarcă rezultatele…",Map:"Hartă","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizarea a peste 100 de persoane care se roagă zilnic pentru fiecare popor DOXA","No One Praying":"Nimeni nu se roagă","No options found":"Nu s-a găsit nicio opțiune","No poster has been generated for this country yet.":"Pentru această țară nu a fost generat încă niciun poster.","No unengaged people groups by 2033":"Niciun popor neimplicat până în 2033","Not Adopted":"Neadoptat",Other:"Altele","Page Not Found":"Pagina nu a fost găsită","People Group":"Popor","People Groups":"Popoare","People committed to praying":"Persoane dedicate rugăciunii","Pick a region above, or click any dot to open that people group's country.":"Alege o regiune mai sus sau dă clic pe orice punct pentru a deschide țara acelui grup etnic.","Pick a region or a country on the Regions List tab to narrow this dashboard.":"Alege o regiune sau o țară din fila Lista regiunilor pentru a restrânge acest panou.",Population:"Populație","Prayer Coverage":"Acoperirea prin rugăciune","Prayer coverage progress":"Progresul acoperirii prin rugăciune","Region Dashboards":"Panouri ale regiunilor","Region dashboard":"Panoul regiunii",Regions:"Regiuni","Regions List":"Lista regiunilor",Religion:"Religie","Search names, country/continent, religions...":"Caută nume, țară/continent, religii…","See %region% dashboard":"Vezi panoul %region%","See All":"Vezi tot",Select:"Selectează","Select View":"Selectează vizualizarea","Show Filters":"Arată filtrele","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"În %country% există %count% popoare. Verifică pe hartă și popoarele de la granițele acestei țări.",Total:"Total","Type to search...":"Scrie pentru a căuta…","Unengaged people groups":"Popoare neimplicate","View country posters":"Vezi posterele țării",Views:"Vizualizări","WAGF Block":"Bloc WAGF","WAGF Region":"Regiune WAGF","people groups adopted":"popoare adoptate","people groups engaged":"popoare implicate","Outside this region":"În afara acestei regiuni",Pray:"Roagă-te","Loading region dashboards…":"Se încarcă panourile regiunilor…","No regions found.":"Nu au fost găsite regiuni.","Region data could not be loaded. This is a connection problem, not a filter.":"Datele regiunilor nu au putut fi încărcate. Este o problemă de conexiune, nu un filtru.","People groups could not be loaded. This is a connection problem, not a filter.":"Grupurile de popoare nu au putut fi încărcate. Este o problemă de conexiune, nu un filtru.","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"Harta nu a putut porni. Este o problemă de token al hărții sau de conexiune, nu un filtru — cifrele de mai sus nu sunt afectate."},Mh={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить",posterMap:"Карта плаката",prayerList:"Молитвенный список",cardDeck:"Набор карточек",printOptions:"Параметры печати",showOnMap:"Показать на карте",close:"Закрыть",showOnMapAria:"Показать {label} на карте",cardStockAria:"Размер молитвенной карточки",previewPrintPoster:"Просмотр и печать плаката {label}",share:"Поделиться",shareSteps:["Разместите эту карту на своём сайте","Составьте список сайтов вашего города","Научите их тоже размещать её","Научите их учить других размещать её","Умножим карты повсюду для Иисуса!"],clearSelection:"Снять выделение",noOptions:"Ничего не найдено",renderingLocal:"Изображение типографского качества создаётся в вашем браузере — ничего не загружается на сервер.",postersPerRow:"Плакатов в ряду"},xh={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},Ih={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"Пояснительные примечания ниже — на английском языке."},mode:{gap:"Пробел",coverage:"Найденные ресурсы"},search:{placeholder:"Найдите народ, язык или код ISO",clear:"Очистить поиск",none:"Ничего не найдено по этому названию, языку или коду.",placeholderShort:"Народ, язык или код ISO"},legend:{title:"Недостигнутые народы, для которых не найдено ни одного ресурса",band60:"60%+ без единого ресурса",band30:"30–59%",bandSome:"часть народов",bandAll:"у всех народов что-то есть",tier2:"Писание и фильм",tier1:"что-то найдено",tier0:"ничего не найдено",hnr:"могут услышать, текста нет",showAll:"Показать все народы",titleCoverage:"Недостигнутые народы, для которых найдены ресурсы",cov80:"у 80%+ что-то есть",cov50:"50–79%",cov1:"1–49%",cov0:"ни для кого ничего",tallyEach:"Каждая",tallyIs:"— это ОДИН народ,",tallyOf:"из них",tallyLink:"со ссылкой",doxa0:"у всех что-то есть",doxa1:"1–4 без ресурсов",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 достигнуты",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"Народы Doxa на этой карте",notPlaced:"в списке, пока без координат",outOfScope:"нет народов Doxa — не окрашено"},tabs:{groups:"Крупнейшие народы",countries:"По странам",regions:"По регионам",noprayer:"Никто не молится",hnr:"Слышат, но не читают"},stat:{language:"Язык",population:"Численность",countries:"Страны",peopleGroups:"Народы",noResource:"Ресурсов не найдено",peopleAffected:"Затронутые люди",haveScripture:"Есть Писание",haveFilm:"Есть фильм",haveAudio:"Есть аудио-Писание",signLanguages:"Жестовые языки",growingUnreached:"Растущие и недостигнутые",deathsDay:"Оценка смертей в день"},sheet:{ownLanguage:"На их родном языке",close:"Закрыть",loading:"Загрузка ресурсов…",pray:"Молитесь о",everyResource:"Все ресурсы на",alsoSpeak:"Также говорят на"},res:{scripture:"Писание",film:"Фильм",audio:"Аудио",bibleVideo:"Библейское видео",bibleStories:"Open Bible Stories",gospelAudio:"Аудио с Евангелием",gospelPresentation:"Изложение Евангелия",scriptureEarth:"Scripture Earth",training:"Обучение ученичеству",jesusFilm:"Фильм «Иисус»",audioScripture:"Аудио с Писанием",bibleStoriesPlain:"Библейские истории"},state:{noneFound:"ничего не найдено",noneAtFcbh:"нет в FCBH",noneAtGrn:"нет в GRN",notInZume:"нет среди 54 языков Zume",linkChecked:"ссылка проверена",unchecked:"не проверено",linkDead:"ссылка не работает",wrongLanguage:"не тот язык",varietyNotStated:"(вариант не указан)",inLanguage:"на"},guide:{dotVsCountry:"Точка — это ОДИН народ Doxa и его родной язык; цвет страны — это ЧИСЛО таких народов.",noneFoundShort:"«Ничего не найдено» значит: нет в проверенных источниках — но не доказательство отсутствия.",tapCountry:"Нажмите на страну, чтобы увидеть ресурсы по каждому народу."},tables:{title:"Ресурсы Евангелия — данные",showing:"Показано",of:"из",for:"для",filteredTo:"Фильтр:",showAll:"Показать все ресурсы",t_doxa:"Doxa — доступ к Евангелию",t_links:"Каждый ресурс и ссылка",t_nothing:"Где ничего не найдено",t_countrygap:"Пробел по странам",t_translation:"Слышат, но не читают",t_translationcountry:"Где переводить",t_province:"Доступ к Евангелию по провинциям — Индия и Китай",t_gaps:"Пробелы и возможности",t_bridges:"Городские мосты",t_deaf:"Пробел у глухих",t_resources:"Ресурсы по народам",t_languages:"Языки по странам",t_growth:"Доступ и рост населения"},pages:{listTitle:"Ресурсы Евангелия по языкам",chartsTitle:"Ресурсы Евангелия — по языкам",loadingTables:"Загрузка таблиц ресурсов…"},list:{noText:"Нет текста Писания",hasScripture:"Есть Писание",allLanguages:"Все языки",peopleGroup:"народ",peopleGroups:"народов",scriptureHere:"Писание на этом языке"},columns:{"People group":"Народ",Country:"Страна",Region:"Регион",Language:"Язык",Population:"Численность",Religion:"Религия","Gospel access":"Доступ к Евангелию",Resources:"Ресурсы",Scripture:"Писание","Bible video":"Библейское видео","Gospel presentation":"Изложение Евангелия",Countries:"Страны","People groups":"Народы"},charts:{scriptureAny:"Писание (любое)",fullBible:"Полная Библия",newTestament:"Новый Завет",filmAny:"Фильм (любой)",nothingInPools:"Ничего не найдено в проверенных источниках",nothingInPoolsLower:"ничего не найдено в проверенных источниках",noResourceInPools:"ни одного ресурса не найдено в проверенных источниках",aResourceFound:"ресурс найден",tabCoverage:"Охват ресурсами",tabGap:"Наибольшие пробелы",keyScripture:"писание",keyFilmStories:"фильм / истории",keyAudioEtc:"аудио / презентация / обучение",unresolvedCode:"код вне ISO 639-3 — не определён, не измерен",c1Title:"Что НАЙДЕНО, по типу ресурса",c1Sub:"По всем {n} языкам в наборе данных. Каждый столбец считает ЯЗЫКИ, а не народы.",c1Unit:"языки, в которых ресурс найден в проверенных источниках",c2Title:"Самые многочисленные народы, для которых ничего не найдено",c2Sub:"{n} языков, для которых в проверенных источниках нет ни Писания, ни фильма, упорядоченные по численности говорящих на них народов.",c2Unit:"люди в народах, для которых это ОСНОВНОЙ язык, — не все говорящие на нём",c3Title:"Страны с наибольшим числом неохваченных языков",c3Sub:"{n} стран с наибольшим числом языков, для которых ничего не найдено. Длина столбца — каждый язык, присутствующий в этой стране.",c3Unit:"языки, присутствующие в стране (трансграничный язык считается в каждой)"}},Oh={search:"Поиск народов…",hide_filters:"Скрыть фильтры",show_filters:"Показать фильтры",total:"Всего",showing:"Показано",load_more:"Показать ещё",full_profile:"Полный профиль",wagf_region:"Регион",wagf_block:"Блок родства",rop1:"Народ",religion:"Религия",exact_filter:"Точное совпадение",clear_all:"Очистить всё",loading:"Загрузка…",no_results:"Нет народов, соответствующих этому фильтру.",type_to_search:"Введите для поиска...",load_failed:"Не удалось загрузить данные о народах. Это проблема соединения, а не фильтра.",search_people_or_countries:"Поиск народов или стран…"},Fh={doxa:{label:"Проект 2000: народы DOXA",definition:"Народы, которым служит DOXA, как их даёт её живой список"},unreached:{label:"Проект 7000: недостигнутые народы",definition:"Приоритет потерянности IMB 0–2 (пограничные, первопроходческие или расширяющиеся недостигнутые: менее 2% евангельских христиан)"},frontier:{label:"Проект 4700: пограничные народы",definition:"Приоритет потерянности IMB 0 (пограничные недостигнутые: 0,1% евангельских христиан или меньше)"},"frontier-500k":{label:"Проект 700: пограничные народы численностью от 500 000",definition:"Приоритет потерянности IMB 0 и численность не менее 500 000"},unengaged:{label:"Недостигнутые народы без служения",definition:"Приоритет потерянности IMB 0–2 и статус служения: без служения"}},Rh={map:"Карта",marker:"Метка на карте",closePopup:"Закрыть окно",zoomIn:"Приблизить",zoomOut:"Отдалить",resetBearing:"Перетащите, чтобы повернуть карту; нажмите, чтобы вернуть север",toggleAttribution:"Показать/скрыть источники",mapFeedback:"Отзыв о карте",enterFullscreen:"Во весь экран",exitFullscreen:"Выйти из полноэкранного режима",findMyLocation:"Найти моё местоположение",locationNotAvailable:"Местоположение недоступно",enableGlobe:"Включить глобус",disableGlobe:"Выключить глобус",ctrlScroll:"Используйте Ctrl + прокрутку для масштабирования карты",cmdScroll:"Используйте ⌘ + прокрутку для масштабирования карты",twoFingers:"Используйте два пальца, чтобы перемещать карту"},Dh={menuComingSoon:"Меню скоро появится",pinHint:{tapDot:"Нажмите на цветную точку — кому-то всё ещё нужна молитва"},upg100WallHeading:"Мой список UPG 100 — молитвенные списки и плакаты",upg100WallTag:"Молитвенная мобилизация",upg100WallIntro:"Разделите молитвенный труд на группы по пятьдесят и по сто — так Иисус накормил 5000 (Луки 9:14). Каждый плакат — это список из 100, о котором можно молиться, распечатать и повесить на стену, молясь о них <strong>по имени их народа</strong>."},jh={country:{wagfRegion:"Регион WAGF",wagfBlock:"Блок WAGF",country:"Страна",uupgCount:"Число UUPG"}},Bh={"%count% people groups in %countries% countries":"%count% народов в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Ответственность взята","Adoption Progress":"Прогресс принятия ответственности","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Choose a region":"Выберите регион","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечён","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры","Hide country posters":"Скрыть плакаты страны",Intercessors:"Ходатаи","Load More":"Загрузить ещё","Loading results...":"Загрузка результатов...",Map:"Карта","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No poster has been generated for this country yet.":"Для этой страны плакат ещё не создан.","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Народы","People committed to praying":"Люди, посвятившие себя молитве","Pick a region above, or click any dot to open that people group's country.":"Выберите регион выше или нажмите на любую точку, чтобы открыть страну этой группы народа.","Pick a region or a country on the Regions List tab to narrow this dashboard.":"Выберите регион или страну на вкладке «Список регионов», чтобы сузить эту панель.",Population:"Население","Prayer Coverage":"Молитвенный охват","Prayer coverage progress":"Прогресс молитвенного покрытия","Region Dashboards":"Панели регионов","Region dashboard":"Панель региона",Regions:"Регионы","Regions List":"Список регионов",Religion:"Религия","Search names, country/continent, religions...":"Поиск по названиям, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Select View":"Выберите вид","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые народы","View country posters":"Показать плакаты страны",Views:"Виды","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"народов, за которые взята ответственность","people groups engaged":"вовлечённые народы","Outside this region":"За пределами этого региона",Pray:"Молиться","Loading region dashboards…":"Загрузка панелей по регионам…","No regions found.":"Регионы не найдены.","Region data could not be loaded. This is a connection problem, not a filter.":"Не удалось загрузить данные по регионам. Это проблема соединения, а не фильтра.","People groups could not be loaded. This is a connection problem, not a filter.":"Не удалось загрузить народы. Это проблема соединения, а не фильтра.","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"Карта не запустилась. Это проблема токена карты или соединения, а не фильтра — цифры выше не затронуты."},zh={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入",posterMap:"海报地图",prayerList:"禱告名單",cardDeck:"禱告卡組",printOptions:"列印選項",showOnMap:"在地圖上顯示",close:"關閉",showOnMapAria:"在地圖上顯示 {label}",cardStockAria:"祷告卡片尺寸",previewPrintPoster:"预览并打印 {label} 海报",share:"分享",shareSteps:["把這張地圖嵌入你的網站","列出你城市裡的網站","教他們也嵌入這張地圖","教他們去教別人嵌入","為耶穌讓地圖遍地繁增!"],clearSelection:"清除选择",noOptions:"未找到选项",renderingLocal:"正在您的浏览器中生成可打印质量的图片——不会上传任何内容。",postersPerRow:"每行海报数"},Gh={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},Uh={_note:"SHORT UI LABELS ONLY for the gospel-resources bundle. The explanatory prose on those surfaces stays in English on purpose and is NOT in this file; prose.english is the one translated line that says so.",prose:{english:"以下说明性文字为英文。"},mode:{gap:"缺口",coverage:"已找到的资源"},search:{placeholder:"搜索族群、语言或 ISO 代码",clear:"清除搜索",none:"没有符合该名称、语言或代码的结果。",placeholderShort:"族群、语言或 ISO 代码"},legend:{title:"尚未接触且未找到任何福音资源的族群",band60:"60% 以上一无所有",band30:"30–59%",bandSome:"部分族群",bandAll:"所有族群都有一些",tier2:"圣经与影片",tier1:"找到部分资源",tier0:"一无所获",hnr:"能听,但没有文字",showAll:"显示所有族群",titleCoverage:"尚未接触但已找到部分福音资源的族群",cov80:"80% 以上有资源",cov50:"50–79%",cov1:"1–49%",cov0:"无人拥有",tallyEach:"每个",tallyIs:"代表一个族群 —",tallyOf:"个族群中,",tallyLink:"个有链接",doxa0:"全部都有资源",doxa1:"1–4 个一无所有",doxa5:"5–14",doxa15:"15–39",doxa40:"40+",cvd1:"1–4 个已触及",cvd5:"5–14",cvd15:"15–39",cvd40:"40+",onMap:"本地图上的 Doxa 族群",notPlaced:"在名单上,尚未定位",outOfScope:"没有 Doxa 族群 — 不着色"},tabs:{groups:"最大的族群",countries:"按国家",regions:"按地区",noprayer:"无人代祷",hnr:"能听,无文字"},stat:{language:"语言",population:"人口",countries:"国家",peopleGroups:"族群",noResource:"未找到资源",peopleAffected:"受影响人数",haveScripture:"有圣经",haveFilm:"有影片",haveAudio:"有有声圣经",signLanguages:"手语",growingUnreached:"增长中且未接触",deathsDay:"每日估计死亡人数"},sheet:{ownLanguage:"以他们自己的语言",close:"关闭",loading:"正在加载资源…",pray:"为其代祷:",everyResource:"所有资源 —",alsoSpeak:"同样使用"},res:{scripture:"圣经",film:"影片",audio:"音频",bibleVideo:"圣经视频",bibleStories:"Open Bible Stories",gospelAudio:"福音音频",gospelPresentation:"福音简介",scriptureEarth:"Scripture Earth",training:"门徒训练",jesusFilm:"《耶稣传》",audioScripture:"音频圣经",bibleStoriesPlain:"圣经故事"},state:{noneFound:"一无所获",noneAtFcbh:"FCBH 没有",noneAtGrn:"GRN 没有",notInZume:"不在 Zume 的 54 种语言内",linkChecked:"链接已核实",unchecked:"未核实",linkDead:"链接失效",wrongLanguage:"语言不符",varietyNotStated:"(未注明变体)",inLanguage:"—"},guide:{dotVsCountry:"每个圆点代表 Doxa 的一个族群及其语言;国家的颜色代表这类族群的数量。",noneFoundShort:"“一无所获”指未见于本次查询的资源库,并不证明其不存在。",tapCountry:"点按国家,逐个族群查看实际资源。"},tables:{title:"福音资源 — 数据",showing:"显示",of:"/共",for:"—",filteredTo:"筛选:",showAll:"显示全部资源",t_doxa:"Doxa — 福音可及性",t_links:"每项资源与链接",t_nothing:"一无所获之处",t_countrygap:"各国缺口",t_translation:"能听,无文字",t_translationcountry:"何处需要翻译",t_province:"按省份划分的福音可及性 — 印度和中国",t_gaps:"缺口与机会",t_bridges:"城市桥梁",t_deaf:"聋人缺口",t_resources:"按族群列出资源",t_languages:"各国语言",t_growth:"可及性与人口增长"},pages:{listTitle:"按语言列出的福音资源",chartsTitle:"福音资源 — 按语言",loadingTables:"正在加载资源表…"},list:{noText:"没有文字圣经",hasScripture:"有圣经",allLanguages:"全部语言",peopleGroup:"个族群",peopleGroups:"个族群",scriptureHere:"本语言的圣经"},columns:{"People group":"族群",Country:"国家",Region:"地区",Language:"语言",Population:"人口",Religion:"宗教","Gospel access":"福音可及性",Resources:"资源",Scripture:"圣经","Bible video":"圣经视频","Gospel presentation":"福音简介",Countries:"国家","People groups":"族群"},charts:{scriptureAny:"圣经(任意)",fullBible:"全本圣经",newTestament:"新约",filmAny:"影片(任意)",nothingInPools:"在已检索的资源库中一无所获",nothingInPoolsLower:"在已检索的资源库中一无所获",noResourceInPools:"在已检索的资源库中未找到资源",aResourceFound:"找到资源",tabCoverage:"资源覆盖",tabGap:"最大缺口",keyScripture:"圣经",keyFilmStories:"影片 / 故事",keyAudioEtc:"音频 / 简介 / 训练",unresolvedCode:"ISO 639-3 之外的代码 — 未确定,未测量",c1Title:"按资源类型统计已找到的内容",c1Sub:"涵盖数据中全部 {n} 种语言。每个条形统计的是语言,不是族群。",c1Unit:"在已检索的资源库中找到该资源的语言",c2Title:"一无所获的最大人口",c2Sub:"在已检索的资源库中既无圣经也无影片的 {n} 种语言,按使用这些语言的族群人口排序。",c2Unit:"以该语言为主要语言的族群人口 — 不是该语言的全部使用者",c3Title:"未得服事语言最多的国家",c3Sub:"一无所获语言最多的 {n} 个国家。条形长度为该国存在的全部语言。",c3Unit:"该国存在的语言(跨境语言在每个国家各计一次)"}},Kh={search:"搜索民族…",hide_filters:"隐藏筛选",show_filters:"显示筛选",total:"总计",showing:"显示",load_more:"加载更多",full_profile:"完整档案",wagf_region:"区域",wagf_block:"亲缘板块",rop1:"民族",religion:"宗教",exact_filter:"精确",clear_all:"全部清除",loading:"加载中…",no_results:"没有符合此筛选条件的民族。",type_to_search:"输入以搜索...",load_failed:"无法加载民族数据。这是连接问题,而不是筛选问题。",search_people_or_countries:"搜索民族或国家…"},Hh={doxa:{label:"2000 计划:DOXA 服侍的族群",definition:"DOXA 服侍的族群,以其实时名单为准"},unreached:{label:"7000 计划:未得之民族群",definition:"IMB 失丧优先级 0–2(前沿、先锋或扩展中的未得之民:福音派少于 2%)"},frontier:{label:"4700 计划:前沿族群",definition:"IMB 失丧优先级 0(前沿未得之民:福音派 0.1% 或更少)"},"frontier-500k":{label:"700 计划:人口 50 万或以上的前沿族群",definition:"IMB 失丧优先级 0,且人口至少 50 万"},unengaged:{label:"尚无人参与的未得之民族群",definition:"IMB 失丧优先级 0–2,且参与状态为:无人参与"}},Wh={map:"地图",marker:"地图标记",closePopup:"关闭弹窗",zoomIn:"放大",zoomOut:"缩小",resetBearing:"拖动以旋转地图,点击以恢复正北",toggleAttribution:"显示/隐藏数据来源",mapFeedback:"地图反馈",enterFullscreen:"全屏",exitFullscreen:"退出全屏",findMyLocation:"查找我的位置",locationNotAvailable:"无法获取位置",enableGlobe:"启用地球仪",disableGlobe:"停用地球仪",ctrlScroll:"使用 Ctrl + 滚轮缩放地图",cmdScroll:"使用 ⌘ + 滚轮缩放地图",twoFingers:"使用两根手指移动地图"},qh={menuComingSoon:"菜单即将推出",pinHint:{tapDot:"点按一个彩色圆点——仍有人需要祷告"},upg100WallHeading:"我的 UPG 100 名單 — 禱告名單與海報",upg100WallTag:"禱告動員",upg100WallIntro:"將禱告的工作分成五十人、一百人一組 — 就像耶穌餵飽五千人那樣(路加福音 9:14)。每一張海報都是一份 100 人名單,你可以為他們禱告、列印出來、貼在牆上 — <strong>按著他們族群的名字</strong>為他們禱告。"},Vh={country:{wagfRegion:"WAGF 地區",wagfBlock:"WAGF 區塊",country:"國家",uupgCount:"UUPG 數量"}},Yh={"%count% people groups in %countries% countries":"%countries% 个国家中的 %count% 个民族","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% 在 %countries% 个国家中有 %count% 个民族。每个标记的颜色表示有多少人在为该民族祷告。","1+ People Praying":"1 人以上祷告","100+ People Praying":"100 人以上祷告",Adopted:"已认领","Adoption Progress":"认领进度","All Regions":"所有区域","Alternate Names":"其他名称","Choose a region":"选择区域","Clear All":"全部清除",Countries:"国家","Countries in this region":"本区域的国家",Country:"国家",Engaged:"已参与","Engagement Progress":"参与进度","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"每一个尚无人参与的民族,都由一间委身于祷告、奉献与差派的教会认领","Exact Search":"精确搜索","Find unreached people groups by region and country.":"按区域和国家查找未得之民。","Full Profile":"完整档案",Goal:"目标","Hide Filters":"隐藏筛选","Hide country posters":"隐藏国家海报",Intercessors:"代祷者","Load More":"加载更多","Loading results...":"正在加载结果…",Map:"地图","Mobilize 100+ people praying daily for each DOXA people group":"为每个 DOXA 民族动员 100 人以上每日祷告","No One Praying":"无人祷告","No options found":"未找到选项","No poster has been generated for this country yet.":"尚未为该国家生成海报。","No unengaged people groups by 2033":"到 2033 年不再有无人参与的民族","Not Adopted":"未认领",Other:"其他","Page Not Found":"未找到页面","People Group":"民族","People Groups":"民族","People committed to praying":"委身祷告的人数","Pick a region above, or click any dot to open that people group's country.":"在上方选择一个区域,或点击任意圆点以打开该民族所在的国家。","Pick a region or a country on the Regions List tab to narrow this dashboard.":"在“区域列表”标签中选择一个区域或国家,以缩小此仪表板的范围。",Population:"人口","Prayer Coverage":"祷告覆盖","Prayer coverage progress":"祷告覆盖进度","Region Dashboards":"区域仪表板","Region dashboard":"区域仪表板",Regions:"区域","Regions List":"区域列表",Religion:"宗教","Search names, country/continent, religions...":"搜索名称、国家/大洲、宗教…","See %region% dashboard":"查看 %region% 仪表板","See All":"查看全部",Select:"选择","Select View":"选择视图","Show Filters":"显示筛选","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% 有 %count% 个民族。也请在地图上查看该国边境地区的民族。",Total:"总计","Type to search...":"输入以搜索…","Unengaged people groups":"无人参与的民族","View country posters":"查看国家海报",Views:"视图","WAGF Block":"WAGF 板块","WAGF Region":"WAGF 区域","people groups adopted":"已认领的民族","people groups engaged":"已参与的民族","Outside this region":"在此区域之外",Pray:"祷告","Loading region dashboards…":"正在加载区域面板…","No regions found.":"未找到区域。","Region data could not be loaded. This is a connection problem, not a filter.":"无法加载区域数据。这是连接问题,不是筛选问题。","People groups could not be loaded. This is a connection problem, not a filter.":"无法加载民族群体。这是连接问题,不是筛选问题。","The map could not start. This is a map-token or connection problem, not a filter — the figures above are unaffected.":"地图无法启动。这是地图令牌或连接问题,不是筛选问题——上方的数字不受影响。"};/*!
|
||
* shared v9.14.5
|
||
* (c) 2025 kazuya kawaguchi
|
||
* Released under the MIT License.
|
||
*/function Xh(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const ha=typeof window<"u",ao=(e,t=!1)=>t?Symbol.for(e):Symbol(e),Jh=(e,t,o)=>Zh({l:e,k:t,s:o}),Zh=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Ie=e=>typeof e=="number"&&isFinite(e),Qh=e=>Wl(e)==="[object Date]",so=e=>Wl(e)==="[object RegExp]",ma=e=>le(e)&&Object.keys(e).length===0,He=Object.assign,em=Object.create,_e=(e=null)=>em(e);let Gl;const An=()=>Gl||(Gl=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:_e());function Ul(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Kl(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function tm(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(n,a,s)=>`${a}="${Kl(s)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(n,a,s)=>`${a}='${Kl(s)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(n=>{e=e.replace(n,"$1javascript:")}),e}const om=Object.prototype.hasOwnProperty;function $t(e,t){return om.call(e,t)}const Pe=Array.isArray,ke=e=>typeof e=="function",Z=e=>typeof e=="string",de=e=>typeof e=="boolean",fe=e=>e!==null&&typeof e=="object",nm=e=>fe(e)&&ke(e.then)&&ke(e.catch),Hl=Object.prototype.toString,Wl=e=>Hl.call(e),le=e=>{if(!fe(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},am=e=>e==null?"":Pe(e)||le(e)&&e.toString===Hl?JSON.stringify(e,null,2):String(e);function sm(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}function ba(e){let t=e;return()=>++t}const ya=e=>!fe(e)||Pe(e);function _a(e,t){if(ya(e)||ya(t))throw new Error("Invalid value");const o=[{src:e,des:t}];for(;o.length;){const{src:n,des:a}=o.pop();Object.keys(n).forEach(s=>{s!=="__proto__"&&(fe(n[s])&&!fe(a[s])&&(a[s]=Array.isArray(n[s])?[]:_e()),ya(a[s])||ya(n[s])?a[s]=n[s]:o.push({src:n[s],des:a[s]}))})}}/*!
|
||
* message-compiler v9.14.5
|
||
* (c) 2025 kazuya kawaguchi
|
||
* Released under the MIT License.
|
||
*/function rm(e,t,o){return{line:e,column:t,offset:o}}function $a(e,t,o){return{start:e,end:t}}const im=/\{([0-9a-zA-Z]+)\}/g;function ql(e,...t){return t.length===1&&lm(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(im,(o,n)=>t.hasOwnProperty(n)?t[n]:"")}const Vl=Object.assign,Yl=e=>typeof e=="string",lm=e=>e!==null&&typeof e=="object";function Xl(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}const Ns={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},cm={[Ns.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function um(e,t,...o){const n=ql(cm[e],...o||[]),a={message:String(n),code:e};return t&&(a.location=t),a}const ae={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},dm={[ae.EXPECTED_TOKEN]:"Expected token: '{0}'",[ae.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[ae.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[ae.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[ae.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[ae.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[ae.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[ae.EMPTY_PLACEHOLDER]:"Empty placeholder",[ae.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[ae.INVALID_LINKED_FORMAT]:"Invalid linked format",[ae.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[ae.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[ae.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[ae.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[ae.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[ae.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function Do(e,t,o={}){const{domain:n,messages:a,args:s}=o,r=ql((a||dm)[e]||"",...s||[]),i=new SyntaxError(String(r));return i.code=e,t&&(i.location=t),i.domain=n,i}function pm(e){throw e}const Wt=" ",gm="\r",et=`
|
||
`,fm="\u2028",hm="\u2029";function mm(e){const t=e;let o=0,n=1,a=1,s=0;const r=_=>t[_]===gm&&t[_+1]===et,i=_=>t[_]===et,l=_=>t[_]===hm,c=_=>t[_]===fm,u=_=>r(_)||i(_)||l(_)||c(_),g=()=>o,b=()=>n,v=()=>a,P=()=>s,T=_=>r(_)||l(_)||c(_)?et:t[_],x=()=>T(o),I=()=>T(o+s);function w(){return s=0,u(o)&&(n++,a=0),r(o)&&o++,o++,a++,t[o]}function f(){return r(o+s)&&s++,s++,t[o+s]}function y(){o=0,n=1,a=1,s=0}function E(_=0){s=_}function C(){const _=o+s;for(;_!==o;)w();s=0}return{index:g,line:b,column:v,peekOffset:P,charAt:T,currentChar:x,currentPeek:I,next:w,peek:f,reset:y,resetPeek:E,skipToPeek:C}}const ro=void 0,bm=".",Jl="'",ym="tokenizer";function _m(e,t={}){const o=t.location!==!1,n=mm(e),a=()=>n.index(),s=()=>rm(n.line(),n.column(),n.index()),r=s(),i=a(),l={currentType:14,offset:i,startLoc:r,endLoc:r,lastType:14,lastOffset:i,lastStartLoc:r,lastEndLoc:r,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function g(p,d,L,...j){const X=c();if(d.column+=L,d.offset+=L,u){const W=o?$a(X.startLoc,d):null,N=Do(p,W,{domain:ym,args:j});u(N)}}function b(p,d,L){p.endLoc=s(),p.currentType=d;const j={type:d};return o&&(j.loc=$a(p.startLoc,p.endLoc)),L!=null&&(j.value=L),j}const v=p=>b(p,14);function P(p,d){return p.currentChar()===d?(p.next(),d):(g(ae.EXPECTED_TOKEN,s(),0,d),"")}function T(p){let d="";for(;p.currentPeek()===Wt||p.currentPeek()===et;)d+=p.currentPeek(),p.peek();return d}function x(p){const d=T(p);return p.skipToPeek(),d}function I(p){if(p===ro)return!1;const d=p.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d===95}function w(p){if(p===ro)return!1;const d=p.charCodeAt(0);return d>=48&&d<=57}function f(p,d){const{currentType:L}=d;if(L!==2)return!1;T(p);const j=I(p.currentPeek());return p.resetPeek(),j}function y(p,d){const{currentType:L}=d;if(L!==2)return!1;T(p);const j=p.currentPeek()==="-"?p.peek():p.currentPeek(),X=w(j);return p.resetPeek(),X}function E(p,d){const{currentType:L}=d;if(L!==2)return!1;T(p);const j=p.currentPeek()===Jl;return p.resetPeek(),j}function C(p,d){const{currentType:L}=d;if(L!==8)return!1;T(p);const j=p.currentPeek()===".";return p.resetPeek(),j}function _(p,d){const{currentType:L}=d;if(L!==9)return!1;T(p);const j=I(p.currentPeek());return p.resetPeek(),j}function A(p,d){const{currentType:L}=d;if(!(L===8||L===12))return!1;T(p);const j=p.currentPeek()===":";return p.resetPeek(),j}function m(p,d){const{currentType:L}=d;if(L!==10)return!1;const j=()=>{const W=p.currentPeek();return W==="{"?I(p.peek()):W==="@"||W==="%"||W==="|"||W===":"||W==="."||W===Wt||!W?!1:W===et?(p.peek(),j()):G(p,!1)},X=j();return p.resetPeek(),X}function M(p){T(p);const d=p.currentPeek()==="|";return p.resetPeek(),d}function D(p){const d=T(p),L=p.currentPeek()==="%"&&p.peek()==="{";return p.resetPeek(),{isModulo:L,hasSpace:d.length>0}}function G(p,d=!0){const L=(X=!1,W="",N=!1)=>{const z=p.currentPeek();return z==="{"?W==="%"?!1:X:z==="@"||!z?W==="%"?!0:X:z==="%"?(p.peek(),L(X,"%",!0)):z==="|"?W==="%"||N?!0:!(W===Wt||W===et):z===Wt?(p.peek(),L(!0,Wt,N)):z===et?(p.peek(),L(!0,et,N)):!0},j=L();return d&&p.resetPeek(),j}function Y(p,d){const L=p.currentChar();return L===ro?ro:d(L)?(p.next(),L):null}function Q(p){const d=p.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36}function F(p){return Y(p,Q)}function R(p){const d=p.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36||d===45}function q(p){return Y(p,R)}function ee(p){const d=p.charCodeAt(0);return d>=48&&d<=57}function he(p){return Y(p,ee)}function De(p){const d=p.charCodeAt(0);return d>=48&&d<=57||d>=65&&d<=70||d>=97&&d<=102}function Le(p){return Y(p,De)}function Ne(p){let d="",L="";for(;d=he(p);)L+=d;return L}function tt(p){x(p);const d=p.currentChar();return d!=="%"&&g(ae.EXPECTED_TOKEN,s(),0,d),p.next(),"%"}function st(p){let d="";for(;;){const L=p.currentChar();if(L==="{"||L==="}"||L==="@"||L==="|"||!L)break;if(L==="%")if(G(p))d+=L,p.next();else break;else if(L===Wt||L===et)if(G(p))d+=L,p.next();else{if(M(p))break;d+=L,p.next()}else d+=L,p.next()}return d}function At(p){x(p);let d="",L="";for(;d=q(p);)L+=d;return p.currentChar()===ro&&g(ae.UNTERMINATED_CLOSING_BRACE,s(),0),L}function We(p){x(p);let d="";return p.currentChar()==="-"?(p.next(),d+=`-${Ne(p)}`):d+=Ne(p),p.currentChar()===ro&&g(ae.UNTERMINATED_CLOSING_BRACE,s(),0),d}function Me(p){return p!==Jl&&p!==et}function V(p){x(p),P(p,"'");let d="",L="";for(;d=Y(p,Me);)d==="\\"?L+=J(p):L+=d;const j=p.currentChar();return j===et||j===ro?(g(ae.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,s(),0),j===et&&(p.next(),P(p,"'")),L):(P(p,"'"),L)}function J(p){const d=p.currentChar();switch(d){case"\\":case"'":return p.next(),`\\${d}`;case"u":return H(p,d,4);case"U":return H(p,d,6);default:return g(ae.UNKNOWN_ESCAPE_SEQUENCE,s(),0,d),""}}function H(p,d,L){P(p,d);let j="";for(let X=0;X<L;X++){const W=Le(p);if(!W){g(ae.INVALID_UNICODE_ESCAPE_SEQUENCE,s(),0,`\\${d}${j}${p.currentChar()}`);break}j+=W}return`\\${d}${j}`}function se(p){return p!=="{"&&p!=="}"&&p!==Wt&&p!==et}function h(p){x(p);let d="",L="";for(;d=Y(p,se);)L+=d;return L}function S(p){let d="",L="";for(;d=F(p);)L+=d;return L}function $(p){const d=L=>{const j=p.currentChar();return j==="{"||j==="%"||j==="@"||j==="|"||j==="("||j===")"||!j||j===Wt?L:(L+=j,p.next(),d(L))};return d("")}function O(p){x(p);const d=P(p,"|");return x(p),d}function B(p,d){let L=null;switch(p.currentChar()){case"{":return d.braceNest>=1&&g(ae.NOT_ALLOW_NEST_PLACEHOLDER,s(),0),p.next(),L=b(d,2,"{"),x(p),d.braceNest++,L;case"}":return d.braceNest>0&&d.currentType===2&&g(ae.EMPTY_PLACEHOLDER,s(),0),p.next(),L=b(d,3,"}"),d.braceNest--,d.braceNest>0&&x(p),d.inLinked&&d.braceNest===0&&(d.inLinked=!1),L;case"@":return d.braceNest>0&&g(ae.UNTERMINATED_CLOSING_BRACE,s(),0),L=k(p,d)||v(d),d.braceNest=0,L;default:{let X=!0,W=!0,N=!0;if(M(p))return d.braceNest>0&&g(ae.UNTERMINATED_CLOSING_BRACE,s(),0),L=b(d,1,O(p)),d.braceNest=0,d.inLinked=!1,L;if(d.braceNest>0&&(d.currentType===5||d.currentType===6||d.currentType===7))return g(ae.UNTERMINATED_CLOSING_BRACE,s(),0),d.braceNest=0,K(p,d);if(X=f(p,d))return L=b(d,5,At(p)),x(p),L;if(W=y(p,d))return L=b(d,6,We(p)),x(p),L;if(N=E(p,d))return L=b(d,7,V(p)),x(p),L;if(!X&&!W&&!N)return L=b(d,13,h(p)),g(ae.INVALID_TOKEN_IN_PLACEHOLDER,s(),0,L.value),x(p),L;break}}return L}function k(p,d){const{currentType:L}=d;let j=null;const X=p.currentChar();switch((L===8||L===9||L===12||L===10)&&(X===et||X===Wt)&&g(ae.INVALID_LINKED_FORMAT,s(),0),X){case"@":return p.next(),j=b(d,8,"@"),d.inLinked=!0,j;case".":return x(p),p.next(),b(d,9,".");case":":return x(p),p.next(),b(d,10,":");default:return M(p)?(j=b(d,1,O(p)),d.braceNest=0,d.inLinked=!1,j):C(p,d)||A(p,d)?(x(p),k(p,d)):_(p,d)?(x(p),b(d,12,S(p))):m(p,d)?(x(p),X==="{"?B(p,d)||j:b(d,11,$(p))):(L===8&&g(ae.INVALID_LINKED_FORMAT,s(),0),d.braceNest=0,d.inLinked=!1,K(p,d))}}function K(p,d){let L={type:14};if(d.braceNest>0)return B(p,d)||v(d);if(d.inLinked)return k(p,d)||v(d);switch(p.currentChar()){case"{":return B(p,d)||v(d);case"}":return g(ae.UNBALANCED_CLOSING_BRACE,s(),0),p.next(),b(d,3,"}");case"@":return k(p,d)||v(d);default:{if(M(p))return L=b(d,1,O(p)),d.braceNest=0,d.inLinked=!1,L;const{isModulo:X,hasSpace:W}=D(p);if(X)return W?b(d,0,st(p)):b(d,4,tt(p));if(G(p))return b(d,0,st(p));break}}return L}function U(){const{currentType:p,offset:d,startLoc:L,endLoc:j}=l;return l.lastType=p,l.lastOffset=d,l.lastStartLoc=L,l.lastEndLoc=j,l.offset=a(),l.startLoc=s(),n.currentChar()===ro?b(l,14):K(n,l)}return{nextToken:U,currentOffset:a,currentPosition:s,context:c}}const $m="parser",vm=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Am(e,t,o){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const n=parseInt(t||o,16);return n<=55295||n>=57344?String.fromCodePoint(n):"<22>"}}}function Sm(e={}){const t=e.location!==!1,{onError:o,onWarn:n}=e;function a(f,y,E,C,..._){const A=f.currentPosition();if(A.offset+=C,A.column+=C,o){const m=t?$a(E,A):null,M=Do(y,m,{domain:$m,args:_});o(M)}}function s(f,y,E,C,..._){const A=f.currentPosition();if(A.offset+=C,A.column+=C,n){const m=t?$a(E,A):null;n(um(y,m,_))}}function r(f,y,E){const C={type:f};return t&&(C.start=y,C.end=y,C.loc={start:E,end:E}),C}function i(f,y,E,C){t&&(f.end=y,f.loc&&(f.loc.end=E))}function l(f,y){const E=f.context(),C=r(3,E.offset,E.startLoc);return C.value=y,i(C,f.currentOffset(),f.currentPosition()),C}function c(f,y){const E=f.context(),{lastOffset:C,lastStartLoc:_}=E,A=r(5,C,_);return A.index=parseInt(y,10),f.nextToken(),i(A,f.currentOffset(),f.currentPosition()),A}function u(f,y,E){const C=f.context(),{lastOffset:_,lastStartLoc:A}=C,m=r(4,_,A);return m.key=y,E===!0&&(m.modulo=!0),f.nextToken(),i(m,f.currentOffset(),f.currentPosition()),m}function g(f,y){const E=f.context(),{lastOffset:C,lastStartLoc:_}=E,A=r(9,C,_);return A.value=y.replace(vm,Am),f.nextToken(),i(A,f.currentOffset(),f.currentPosition()),A}function b(f){const y=f.nextToken(),E=f.context(),{lastOffset:C,lastStartLoc:_}=E,A=r(8,C,_);return y.type!==12?(a(f,ae.UNEXPECTED_EMPTY_LINKED_MODIFIER,E.lastStartLoc,0),A.value="",i(A,C,_),{nextConsumeToken:y,node:A}):(y.value==null&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,E.lastStartLoc,0,vt(y)),A.value=y.value||"",i(A,f.currentOffset(),f.currentPosition()),{node:A})}function v(f,y){const E=f.context(),C=r(7,E.offset,E.startLoc);return C.value=y,i(C,f.currentOffset(),f.currentPosition()),C}function P(f){const y=f.context(),E=r(6,y.offset,y.startLoc);let C=f.nextToken();if(C.type===9){const _=b(f);E.modifier=_.node,C=_.nextConsumeToken||f.nextToken()}switch(C.type!==10&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,vt(C)),C=f.nextToken(),C.type===2&&(C=f.nextToken()),C.type){case 11:C.value==null&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,vt(C)),E.key=v(f,C.value||"");break;case 5:C.value==null&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,vt(C)),E.key=u(f,C.value||"");break;case 6:C.value==null&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,vt(C)),E.key=c(f,C.value||"");break;case 7:C.value==null&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,vt(C)),E.key=g(f,C.value||"");break;default:{a(f,ae.UNEXPECTED_EMPTY_LINKED_KEY,y.lastStartLoc,0);const _=f.context(),A=r(7,_.offset,_.startLoc);return A.value="",i(A,_.offset,_.startLoc),E.key=A,i(E,_.offset,_.startLoc),{nextConsumeToken:C,node:E}}}return i(E,f.currentOffset(),f.currentPosition()),{node:E}}function T(f){const y=f.context(),E=y.currentType===1?f.currentOffset():y.offset,C=y.currentType===1?y.endLoc:y.startLoc,_=r(2,E,C);_.items=[];let A=null,m=null;do{const G=A||f.nextToken();switch(A=null,G.type){case 0:G.value==null&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,vt(G)),_.items.push(l(f,G.value||""));break;case 6:G.value==null&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,vt(G)),_.items.push(c(f,G.value||""));break;case 4:m=!0;break;case 5:G.value==null&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,vt(G)),_.items.push(u(f,G.value||"",!!m)),m&&(s(f,Ns.USE_MODULO_SYNTAX,y.lastStartLoc,0,vt(G)),m=null);break;case 7:G.value==null&&a(f,ae.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,vt(G)),_.items.push(g(f,G.value||""));break;case 8:{const Y=P(f);_.items.push(Y.node),A=Y.nextConsumeToken||null;break}}}while(y.currentType!==14&&y.currentType!==1);const M=y.currentType===1?y.lastOffset:f.currentOffset(),D=y.currentType===1?y.lastEndLoc:f.currentPosition();return i(_,M,D),_}function x(f,y,E,C){const _=f.context();let A=C.items.length===0;const m=r(1,y,E);m.cases=[],m.cases.push(C);do{const M=T(f);A||(A=M.items.length===0),m.cases.push(M)}while(_.currentType!==14);return A&&a(f,ae.MUST_HAVE_MESSAGES_IN_PLURAL,E,0),i(m,f.currentOffset(),f.currentPosition()),m}function I(f){const y=f.context(),{offset:E,startLoc:C}=y,_=T(f);return y.currentType===14?_:x(f,E,C,_)}function w(f){const y=_m(f,Vl({},e)),E=y.context(),C=r(0,E.offset,E.startLoc);return t&&C.loc&&(C.loc.source=f),C.body=I(y),e.onCacheKey&&(C.cacheKey=e.onCacheKey(f)),E.currentType!==14&&a(y,ae.UNEXPECTED_LEXICAL_ANALYSIS,E.lastStartLoc,0,f[E.offset]||""),i(C,y.currentOffset(),y.currentPosition()),C}return{parse:w}}function vt(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function wm(e,t={}){const o={ast:e,helpers:new Set};return{context:()=>o,helper:s=>(o.helpers.add(s),s)}}function Zl(e,t){for(let o=0;o<e.length;o++)Ms(e[o],t)}function Ms(e,t){switch(e.type){case 1:Zl(e.cases,t),t.helper("plural");break;case 2:Zl(e.items,t);break;case 6:{Ms(e.key,t),t.helper("linked"),t.helper("type");break}case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named");break}}function km(e,t={}){const o=wm(e);o.helper("normalize"),e.body&&Ms(e.body,o);const n=o.context();e.helpers=Array.from(n.helpers)}function Pm(e){const t=e.body;return t.type===2?Ql(t):t.cases.forEach(o=>Ql(o)),e}function Ql(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let o=0;o<e.items.length;o++){const n=e.items[o];if(!(n.type===3||n.type===9)||n.value==null)break;t.push(n.value)}if(t.length===e.items.length){e.static=Xl(t);for(let o=0;o<e.items.length;o++){const n=e.items[o];(n.type===3||n.type===9)&&delete n.value}}}}const Tm="minifier";function jo(e){switch(e.t=e.type,e.type){case 0:{const t=e;jo(t.body),t.b=t.body,delete t.body;break}case 1:{const t=e,o=t.cases;for(let n=0;n<o.length;n++)jo(o[n]);t.c=o,delete t.cases;break}case 2:{const t=e,o=t.items;for(let n=0;n<o.length;n++)jo(o[n]);t.i=o,delete t.items,t.static&&(t.s=t.static,delete t.static);break}case 3:case 9:case 8:case 7:{const t=e;t.value&&(t.v=t.value,delete t.value);break}case 6:{const t=e;jo(t.key),t.k=t.key,delete t.key,t.modifier&&(jo(t.modifier),t.m=t.modifier,delete t.modifier);break}case 5:{const t=e;t.i=t.index,delete t.index;break}case 4:{const t=e;t.k=t.key,delete t.key;break}default:throw Do(ae.UNHANDLED_MINIFIER_NODE_TYPE,null,{domain:Tm,args:[e.type]})}delete e.type}const Em="parser";function Cm(e,t){const{filename:o,breakLineCode:n,needIndent:a}=t,s=t.location!==!1,r={filename:o,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:n,needIndent:a,indentLevel:0};s&&e.loc&&(r.source=e.loc.source);const i=()=>r;function l(T,x){r.code+=T}function c(T,x=!0){const I=x?n:"";l(a?I+" ".repeat(T):I)}function u(T=!0){const x=++r.indentLevel;T&&c(x)}function g(T=!0){const x=--r.indentLevel;T&&c(x)}function b(){c(r.indentLevel)}return{context:i,push:l,indent:u,deindent:g,newline:b,helper:T=>`_${T}`,needIndent:()=>r.needIndent}}function Lm(e,t){const{helper:o}=e;e.push(`${o("linked")}(`),Bo(e,t.key),t.modifier?(e.push(", "),Bo(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Nm(e,t){const{helper:o,needIndent:n}=e;e.push(`${o("normalize")}([`),e.indent(n());const a=t.items.length;for(let s=0;s<a&&(Bo(e,t.items[s]),s!==a-1);s++)e.push(", ");e.deindent(n()),e.push("])")}function Mm(e,t){const{helper:o,needIndent:n}=e;if(t.cases.length>1){e.push(`${o("plural")}([`),e.indent(n());const a=t.cases.length;for(let s=0;s<a&&(Bo(e,t.cases[s]),s!==a-1);s++)e.push(", ");e.deindent(n()),e.push("])")}}function xm(e,t){t.body?Bo(e,t.body):e.push("null")}function Bo(e,t){const{helper:o}=e;switch(t.type){case 0:xm(e,t);break;case 1:Mm(e,t);break;case 2:Nm(e,t);break;case 6:Lm(e,t);break;case 8:e.push(JSON.stringify(t.value),t);break;case 7:e.push(JSON.stringify(t.value),t);break;case 5:e.push(`${o("interpolate")}(${o("list")}(${t.index}))`,t);break;case 4:e.push(`${o("interpolate")}(${o("named")}(${JSON.stringify(t.key)}))`,t);break;case 9:e.push(JSON.stringify(t.value),t);break;case 3:e.push(JSON.stringify(t.value),t);break;default:throw Do(ae.UNHANDLED_CODEGEN_NODE_TYPE,null,{domain:Em,args:[t.type]})}}const Im=(e,t={})=>{const o=Yl(t.mode)?t.mode:"normal",n=Yl(t.filename)?t.filename:"message.intl";t.sourceMap;const a=t.breakLineCode!=null?t.breakLineCode:o==="arrow"?";":`
|
||
`,s=t.needIndent?t.needIndent:o!=="arrow",r=e.helpers||[],i=Cm(e,{filename:n,breakLineCode:a,needIndent:s});i.push(o==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(s),r.length>0&&(i.push(`const { ${Xl(r.map(u=>`${u}: _${u}`),", ")} } = ctx`),i.newline()),i.push("return "),Bo(i,e),i.deindent(s),i.push("}"),delete e.helpers;const{code:l,map:c}=i.context();return{ast:e,code:l,map:c?c.toJSON():void 0}};function Om(e,t={}){const o=Vl({},t),n=!!o.jit,a=!!o.minify,s=o.optimize==null?!0:o.optimize,i=Sm(o).parse(e);return n?(s&&Pm(i),a&&jo(i),{ast:i,code:""}):(km(i,o),Im(i,o))}/*!
|
||
* core-base v9.14.5
|
||
* (c) 2025 kazuya kawaguchi
|
||
* Released under the MIT License.
|
||
*/function Fm(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(An().__INTLIFY_PROD_DEVTOOLS__=!1)}function xt(e){return fe(e)&&xs(e)===0&&($t(e,"b")||$t(e,"body"))}const ec=["b","body"];function Rm(e){return io(e,ec)}const tc=["c","cases"];function Dm(e){return io(e,tc,[])}const oc=["s","static"];function jm(e){return io(e,oc)}const nc=["i","items"];function Bm(e){return io(e,nc,[])}const ac=["t","type"];function xs(e){return io(e,ac)}const sc=["v","value"];function va(e,t){const o=io(e,sc);if(o!=null)return o;throw Sn(t)}const rc=["m","modifier"];function zm(e){return io(e,rc)}const ic=["k","key"];function Gm(e){const t=io(e,ic);if(t)return t;throw Sn(6)}function io(e,t,o){for(let n=0;n<t.length;n++){const a=t[n];if($t(e,a)&&e[a]!=null)return e[a]}return o}const lc=[...ec,...tc,...oc,...nc,...ic,...rc,...sc,...ac];function Sn(e){return new Error(`unhandled node type: ${e}`)}const lo=[];lo[0]={w:[0],i:[3,0],"[":[4],o:[7]},lo[1]={w:[1],".":[2],"[":[4],o:[7]},lo[2]={w:[2],i:[3,0],0:[3,0]},lo[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},lo[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},lo[5]={"'":[4,0],o:8,l:[5,0]},lo[6]={'"':[4,0],o:8,l:[6,0]};const Um=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function Km(e){return Um.test(e)}function Hm(e){const t=e.charCodeAt(0),o=e.charCodeAt(e.length-1);return t===o&&(t===34||t===39)?e.slice(1,-1):e}function Wm(e){if(e==null)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function qm(e){const t=e.trim();return e.charAt(0)==="0"&&isNaN(parseInt(e))?!1:Km(t)?Hm(t):"*"+t}function Vm(e){const t=[];let o=-1,n=0,a=0,s,r,i,l,c,u,g;const b=[];b[0]=()=>{r===void 0?r=i:r+=i},b[1]=()=>{r!==void 0&&(t.push(r),r=void 0)},b[2]=()=>{b[0](),a++},b[3]=()=>{if(a>0)a--,n=4,b[0]();else{if(a=0,r===void 0||(r=qm(r),r===!1))return!1;b[1]()}};function v(){const P=e[o+1];if(n===5&&P==="'"||n===6&&P==='"')return o++,i="\\"+P,b[0](),!0}for(;n!==null;)if(o++,s=e[o],!(s==="\\"&&v())){if(l=Wm(s),g=lo[n],c=g[l]||g.l||8,c===8||(n=c[0],c[1]!==void 0&&(u=b[c[1]],u&&(i=s,u()===!1))))return;if(n===7)return t}}const cc=new Map;function Ym(e,t){return fe(e)?e[t]:null}function Xm(e,t){if(!fe(e))return null;let o=cc.get(t);if(o||(o=Vm(t),o&&cc.set(t,o)),!o)return null;const n=o.length;let a=e,s=0;for(;s<n;){const r=o[s];if(lc.includes(r)&&xt(a))return null;const i=a[r];if(i===void 0||ke(a))return null;a=i,s++}return a}const Jm=e=>e,Zm=e=>"",Qm="text",eb=e=>e.length===0?"":sm(e),tb=am;function uc(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function ob(e){const t=Ie(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Ie(e.named.count)||Ie(e.named.n))?Ie(e.named.count)?e.named.count:Ie(e.named.n)?e.named.n:t:t}function nb(e,t){t.count||(t.count=e),t.n||(t.n=e)}function ab(e={}){const t=e.locale,o=ob(e),n=fe(e.pluralRules)&&Z(t)&&ke(e.pluralRules[t])?e.pluralRules[t]:uc,a=fe(e.pluralRules)&&Z(t)&&ke(e.pluralRules[t])?uc:void 0,s=I=>I[n(o,I.length,a)],r=e.list||[],i=I=>r[I],l=e.named||_e();Ie(e.pluralIndex)&&nb(o,l);const c=I=>l[I];function u(I){const w=ke(e.messages)?e.messages(I):fe(e.messages)?e.messages[I]:!1;return w||(e.parent?e.parent.message(I):Zm)}const g=I=>e.modifiers?e.modifiers[I]:Jm,b=le(e.processor)&&ke(e.processor.normalize)?e.processor.normalize:eb,v=le(e.processor)&&ke(e.processor.interpolate)?e.processor.interpolate:tb,P=le(e.processor)&&Z(e.processor.type)?e.processor.type:Qm,x={list:i,named:c,plural:s,linked:(I,...w)=>{const[f,y]=w;let E="text",C="";w.length===1?fe(f)?(C=f.modifier||C,E=f.type||E):Z(f)&&(C=f||C):w.length===2&&(Z(f)&&(C=f||C),Z(y)&&(E=y||E));const _=u(I)(x),A=E==="vnode"&&Pe(_)&&C?_[0]:_;return C?g(C)(A,E):A},message:u,type:P,interpolate:v,normalize:b,values:He(_e(),r,l)};return x}let wn=null;function sb(e){wn=e}function rb(e,t,o){wn&&wn.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:o})}const ib=lb("function:translate");function lb(e){return t=>wn&&wn.emit(e,t)}const cb=Ns.__EXTEND_POINT__,Ao=ba(cb),ub={FALLBACK_TO_TRANSLATE:Ao(),CANNOT_FORMAT_NUMBER:Ao(),FALLBACK_TO_NUMBER_FORMAT:Ao(),CANNOT_FORMAT_DATE:Ao(),FALLBACK_TO_DATE_FORMAT:Ao(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:Ao(),__EXTEND_POINT__:Ao()},dc=ae.__EXTEND_POINT__,So=ba(dc),It={INVALID_ARGUMENT:dc,INVALID_DATE_ARGUMENT:So(),INVALID_ISO_DATE_ARGUMENT:So(),NOT_SUPPORT_NON_STRING_MESSAGE:So(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:So(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:So(),NOT_SUPPORT_LOCALE_TYPE:So(),__EXTEND_POINT__:So()};function qt(e){return Do(e,null,void 0)}function Is(e,t){return t.locale!=null?pc(t.locale):pc(e.locale)}let Os;function pc(e){if(Z(e))return e;if(ke(e)){if(e.resolvedOnce&&Os!=null)return Os;if(e.constructor.name==="Function"){const t=e();if(nm(t))throw qt(It.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Os=t}else throw qt(It.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw qt(It.NOT_SUPPORT_LOCALE_TYPE)}function db(e,t,o){return[...new Set([o,...Pe(t)?t:fe(t)?Object.keys(t):Z(t)?[t]:[o]])]}function gc(e,t,o){const n=Z(o)?o:zo,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let s=a.__localeChainCache.get(n);if(!s){s=[];let r=[o];for(;Pe(r);)r=fc(s,r,t);const i=Pe(t)||!le(t)?t:t.default?t.default:null;r=Z(i)?[i]:i,Pe(r)&&fc(s,r,!1),a.__localeChainCache.set(n,s)}return s}function fc(e,t,o){let n=!0;for(let a=0;a<t.length&&de(n);a++){const s=t[a];Z(s)&&(n=pb(e,t[a],o))}return n}function pb(e,t,o){let n;const a=t.split("-");do{const s=a.join("-");n=gb(e,s,o),a.splice(-1,1)}while(a.length&&n===!0);return n}function gb(e,t,o){let n=!1;if(!e.includes(t)&&(n=!0,t)){n=t[t.length-1]!=="!";const a=t.replace(/!/g,"");e.push(a),(Pe(o)||le(o))&&o[a]&&(n=o[a])}return n}const fb="9.14.5",Aa=-1,zo="en-US",hc="",mc=e=>`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function hb(){return{upper:(e,t)=>t==="text"&&Z(e)?e.toUpperCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&Z(e)?e.toLowerCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&Z(e)?mc(e):t==="vnode"&&fe(e)&&"__v_isVNode"in e?mc(e.children):e}}let bc;function mb(e){bc=e}let yc;function bb(e){yc=e}let _c;function yb(e){_c=e}let $c=null;const _b=e=>{$c=e},$b=()=>$c;let vc=null;const Ac=e=>{vc=e},vb=()=>vc;let Sc=0;function Ab(e={}){const t=ke(e.onWarn)?e.onWarn:Xh,o=Z(e.version)?e.version:fb,n=Z(e.locale)||ke(e.locale)?e.locale:zo,a=ke(n)?zo:n,s=Pe(e.fallbackLocale)||le(e.fallbackLocale)||Z(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a,r=le(e.messages)?e.messages:Fs(a),i=le(e.datetimeFormats)?e.datetimeFormats:Fs(a),l=le(e.numberFormats)?e.numberFormats:Fs(a),c=He(_e(),e.modifiers,hb()),u=e.pluralRules||_e(),g=ke(e.missing)?e.missing:null,b=de(e.missingWarn)||so(e.missingWarn)?e.missingWarn:!0,v=de(e.fallbackWarn)||so(e.fallbackWarn)?e.fallbackWarn:!0,P=!!e.fallbackFormat,T=!!e.unresolving,x=ke(e.postTranslation)?e.postTranslation:null,I=le(e.processor)?e.processor:null,w=de(e.warnHtmlMessage)?e.warnHtmlMessage:!0,f=!!e.escapeParameter,y=ke(e.messageCompiler)?e.messageCompiler:bc,E=ke(e.messageResolver)?e.messageResolver:yc||Ym,C=ke(e.localeFallbacker)?e.localeFallbacker:_c||db,_=fe(e.fallbackContext)?e.fallbackContext:void 0,A=e,m=fe(A.__datetimeFormatters)?A.__datetimeFormatters:new Map,M=fe(A.__numberFormatters)?A.__numberFormatters:new Map,D=fe(A.__meta)?A.__meta:{};Sc++;const G={version:o,cid:Sc,locale:n,fallbackLocale:s,messages:r,modifiers:c,pluralRules:u,missing:g,missingWarn:b,fallbackWarn:v,fallbackFormat:P,unresolving:T,postTranslation:x,processor:I,warnHtmlMessage:w,escapeParameter:f,messageCompiler:y,messageResolver:E,localeFallbacker:C,fallbackContext:_,onWarn:t,__meta:D};return G.datetimeFormats=i,G.numberFormats=l,G.__datetimeFormatters=m,G.__numberFormatters=M,__INTLIFY_PROD_DEVTOOLS__&&rb(G,o,D),G}const Fs=e=>({[e]:_e()});function Rs(e,t,o,n,a){const{missing:s,onWarn:r}=e;if(s!==null){const i=s(e,o,t,a);return Z(i)?i:t}else return t}function kn(e,t,o){const n=e;n.__localeChainCache=new Map,e.localeFallbacker(e,o,t)}function Sb(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function wb(e,t){const o=t.indexOf(e);if(o===-1)return!1;for(let n=o+1;n<t.length;n++)if(Sb(e,t[n]))return!0;return!1}function Ds(e){return o=>kb(o,e)}function kb(e,t){const o=Rm(t);if(o==null)throw Sn(0);if(xs(o)===1){const s=Dm(o);return e.plural(s.reduce((r,i)=>[...r,wc(e,i)],[]))}else return wc(e,o)}function wc(e,t){const o=jm(t);if(o!=null)return e.type==="text"?o:e.normalize([o]);{const n=Bm(t).reduce((a,s)=>[...a,js(e,s)],[]);return e.normalize(n)}}function js(e,t){const o=xs(t);switch(o){case 3:return va(t,o);case 9:return va(t,o);case 4:{const n=t;if($t(n,"k")&&n.k)return e.interpolate(e.named(n.k));if($t(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw Sn(o)}case 5:{const n=t;if($t(n,"i")&&Ie(n.i))return e.interpolate(e.list(n.i));if($t(n,"index")&&Ie(n.index))return e.interpolate(e.list(n.index));throw Sn(o)}case 6:{const n=t,a=zm(n),s=Gm(n);return e.linked(js(e,s),a?js(e,a):void 0,e.type)}case 7:return va(t,o);case 8:return va(t,o);default:throw new Error(`unhandled node on format message part: ${o}`)}}const Pb=e=>e;let Sa=_e();function Tb(e,t={}){let o=!1;const n=t.onError||pm;return t.onError=a=>{o=!0,n(a)},{...Om(e,t),detectError:o}}function Eb(e,t){if(Z(e)){de(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||Pb)(e),a=Sa[n];if(a)return a;const{ast:s,detectError:r}=Tb(e,{...t,location:!1,jit:!0}),i=Ds(s);return r?i:Sa[n]=i}else{const o=e.cacheKey;if(o){const n=Sa[o];return n||(Sa[o]=Ds(e))}else return Ds(e)}}const kc=()=>"",ft=e=>ke(e);function Pc(e,...t){const{fallbackFormat:o,postTranslation:n,unresolving:a,messageCompiler:s,fallbackLocale:r,messages:i}=e,[l,c]=Bs(...t),u=de(c.missingWarn)?c.missingWarn:e.missingWarn,g=de(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,b=de(c.escapeParameter)?c.escapeParameter:e.escapeParameter,v=!!c.resolvedMessage,P=Z(c.default)||de(c.default)?de(c.default)?s?l:()=>l:c.default:o?s?l:()=>l:"",T=o||P!=="",x=Is(e,c);b&&Cb(c);let[I,w,f]=v?[l,x,i[x]||_e()]:Tc(e,l,x,r,g,u),y=I,E=l;if(!v&&!(Z(y)||xt(y)||ft(y))&&T&&(y=P,E=y),!v&&(!(Z(y)||xt(y)||ft(y))||!Z(w)))return a?Aa:l;let C=!1;const _=()=>{C=!0},A=ft(y)?y:Ec(e,l,w,y,E,_);if(C)return y;const m=Mb(e,w,f,c),M=ab(m),D=Lb(e,A,M);let G=n?n(D,l):D;if(b&&Z(G)&&(G=tm(G)),__INTLIFY_PROD_DEVTOOLS__){const Y={timestamp:Date.now(),key:Z(l)?l:ft(y)?y.key:"",locale:w||(ft(y)?y.locale:""),format:Z(y)?y:ft(y)?y.source:"",message:G};Y.meta=He({},e.__meta,$b()||{}),ib(Y)}return G}function Cb(e){Pe(e.list)?e.list=e.list.map(t=>Z(t)?Ul(t):t):fe(e.named)&&Object.keys(e.named).forEach(t=>{Z(e.named[t])&&(e.named[t]=Ul(e.named[t]))})}function Tc(e,t,o,n,a,s){const{messages:r,onWarn:i,messageResolver:l,localeFallbacker:c}=e,u=c(e,n,o);let g=_e(),b,v=null;const P="translate";for(let T=0;T<u.length&&(b=u[T],g=r[b]||_e(),(v=l(g,t))===null&&(v=g[t]),!(Z(v)||xt(v)||ft(v)));T++)if(!wb(b,u)){const x=Rs(e,t,b,s,P);x!==t&&(v=x)}return[v,b,g]}function Ec(e,t,o,n,a,s){const{messageCompiler:r,warnHtmlMessage:i}=e;if(ft(n)){const c=n;return c.locale=c.locale||o,c.key=c.key||t,c}if(r==null){const c=()=>n;return c.locale=o,c.key=t,c}const l=r(n,Nb(e,o,a,n,i,s));return l.locale=o,l.key=t,l.source=n,l}function Lb(e,t,o){return t(o)}function Bs(...e){const[t,o,n]=e,a=_e();if(!Z(t)&&!Ie(t)&&!ft(t)&&!xt(t))throw qt(It.INVALID_ARGUMENT);const s=Ie(t)?String(t):(ft(t),t);return Ie(o)?a.plural=o:Z(o)?a.default=o:le(o)&&!ma(o)?a.named=o:Pe(o)&&(a.list=o),Ie(n)?a.plural=n:Z(n)?a.default=n:le(n)&&He(a,n),[s,a]}function Nb(e,t,o,n,a,s){return{locale:t,key:o,warnHtmlMessage:a,onError:r=>{throw s&&s(r),r},onCacheKey:r=>Jh(t,o,r)}}function Mb(e,t,o,n){const{modifiers:a,pluralRules:s,messageResolver:r,fallbackLocale:i,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,b={locale:t,modifiers:a,pluralRules:s,messages:v=>{let P=r(o,v);if(P==null&&u){const[,,T]=Tc(u,v,t,i,l,c);P=r(T,v)}if(Z(P)||xt(P)){let T=!1;const I=Ec(e,v,t,P,v,()=>{T=!0});return T?kc:I}else return ft(P)?P:kc}};return e.processor&&(b.processor=e.processor),n.list&&(b.list=n.list),n.named&&(b.named=n.named),Ie(n.plural)&&(b.pluralIndex=n.plural),b}function Cc(e,...t){const{datetimeFormats:o,unresolving:n,fallbackLocale:a,onWarn:s,localeFallbacker:r}=e,{__datetimeFormatters:i}=e,[l,c,u,g]=zs(...t),b=de(u.missingWarn)?u.missingWarn:e.missingWarn;de(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const v=!!u.part,P=Is(e,u),T=r(e,a,P);if(!Z(l)||l==="")return new Intl.DateTimeFormat(P,g).format(c);let x={},I,w=null;const f="datetime format";for(let C=0;C<T.length&&(I=T[C],x=o[I]||{},w=x[l],!le(w));C++)Rs(e,l,I,b,f);if(!le(w)||!Z(I))return n?Aa:l;let y=`${I}__${l}`;ma(g)||(y=`${y}__${JSON.stringify(g)}`);let E=i.get(y);return E||(E=new Intl.DateTimeFormat(I,He({},w,g)),i.set(y,E)),v?E.formatToParts(c):E.format(c)}const Lc=["localeMatcher","weekday","era","year","month","day","hour","minute","second","timeZoneName","formatMatcher","hour12","timeZone","dateStyle","timeStyle","calendar","dayPeriod","numberingSystem","hourCycle","fractionalSecondDigits"];function zs(...e){const[t,o,n,a]=e,s=_e();let r=_e(),i;if(Z(t)){const l=t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);if(!l)throw qt(It.INVALID_ISO_DATE_ARGUMENT);const c=l[3]?l[3].trim().startsWith("T")?`${l[1].trim()}${l[3].trim()}`:`${l[1].trim()}T${l[3].trim()}`:l[1].trim();i=new Date(c);try{i.toISOString()}catch{throw qt(It.INVALID_ISO_DATE_ARGUMENT)}}else if(Qh(t)){if(isNaN(t.getTime()))throw qt(It.INVALID_DATE_ARGUMENT);i=t}else if(Ie(t))i=t;else throw qt(It.INVALID_ARGUMENT);return Z(o)?s.key=o:le(o)&&Object.keys(o).forEach(l=>{Lc.includes(l)?r[l]=o[l]:s[l]=o[l]}),Z(n)?s.locale=n:le(n)&&(r=n),le(a)&&(r=a),[s.key||"",i,s,r]}function Nc(e,t,o){const n=e;for(const a in o){const s=`${t}__${a}`;n.__datetimeFormatters.has(s)&&n.__datetimeFormatters.delete(s)}}function Mc(e,...t){const{numberFormats:o,unresolving:n,fallbackLocale:a,onWarn:s,localeFallbacker:r}=e,{__numberFormatters:i}=e,[l,c,u,g]=Gs(...t),b=de(u.missingWarn)?u.missingWarn:e.missingWarn;de(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const v=!!u.part,P=Is(e,u),T=r(e,a,P);if(!Z(l)||l==="")return new Intl.NumberFormat(P,g).format(c);let x={},I,w=null;const f="number format";for(let C=0;C<T.length&&(I=T[C],x=o[I]||{},w=x[l],!le(w));C++)Rs(e,l,I,b,f);if(!le(w)||!Z(I))return n?Aa:l;let y=`${I}__${l}`;ma(g)||(y=`${y}__${JSON.stringify(g)}`);let E=i.get(y);return E||(E=new Intl.NumberFormat(I,He({},w,g)),i.set(y,E)),v?E.formatToParts(c):E.format(c)}const xc=["localeMatcher","style","currency","currencyDisplay","currencySign","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","compactDisplay","notation","signDisplay","unit","unitDisplay","roundingMode","roundingPriority","roundingIncrement","trailingZeroDisplay"];function Gs(...e){const[t,o,n,a]=e,s=_e();let r=_e();if(!Ie(t))throw qt(It.INVALID_ARGUMENT);const i=t;return Z(o)?s.key=o:le(o)&&Object.keys(o).forEach(l=>{xc.includes(l)?r[l]=o[l]:s[l]=o[l]}),Z(n)?s.locale=n:le(n)&&(r=n),le(a)&&(r=a),[s.key||"",i,s,r]}function Ic(e,t,o){const n=e;for(const a in o){const s=`${t}__${a}`;n.__numberFormatters.has(s)&&n.__numberFormatters.delete(s)}}Fm();/*!
|
||
* vue-i18n v9.14.5
|
||
* (c) 2025 kazuya kawaguchi
|
||
* Released under the MIT License.
|
||
*/const xb="9.14.5";function Ib(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(An().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(An().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(An().__INTLIFY_PROD_DEVTOOLS__=!1)}const Ob=ub.__EXTEND_POINT__,Vt=ba(Ob);Vt(),Vt(),Vt(),Vt(),Vt(),Vt(),Vt(),Vt(),Vt();const Oc=It.__EXTEND_POINT__,at=ba(Oc),Re={UNEXPECTED_RETURN_TYPE:Oc,INVALID_ARGUMENT:at(),MUST_BE_CALL_SETUP_TOP:at(),NOT_INSTALLED:at(),NOT_AVAILABLE_IN_LEGACY_MODE:at(),REQUIRED_VALUE:at(),INVALID_VALUE:at(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:at(),NOT_INSTALLED_WITH_PROVIDE:at(),UNEXPECTED_ERROR:at(),NOT_COMPATIBLE_LEGACY_VUE_I18N:at(),BRIDGE_SUPPORT_VUE_2_ONLY:at(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:at(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:at(),__EXTEND_POINT__:at()};function ze(e,...t){return Do(e,null,void 0)}const Us=ao("__translateVNode"),Ks=ao("__datetimeParts"),Hs=ao("__numberParts"),Fc=ao("__setPluralRules"),Rc=ao("__injectWithOption"),Ws=ao("__dispose");function Pn(e){if(!fe(e)||xt(e))return e;for(const t in e)if($t(e,t))if(!t.includes("."))fe(e[t])&&Pn(e[t]);else{const o=t.split("."),n=o.length-1;let a=e,s=!1;for(let r=0;r<n;r++){if(o[r]==="__proto__")throw new Error(`unsafe key: ${o[r]}`);if(o[r]in a||(a[o[r]]=_e()),!fe(a[o[r]])){s=!0;break}a=a[o[r]]}if(s||(xt(a)?lc.includes(o[n])||delete e[t]:(a[o[n]]=e[t],delete e[t])),!xt(a)){const r=a[o[n]];fe(r)&&Pn(r)}}return e}function wa(e,t){const{messages:o,__i18n:n,messageResolver:a,flatJson:s}=t,r=le(o)?o:Pe(n)?_e():{[e]:_e()};if(Pe(n)&&n.forEach(i=>{if("locale"in i&&"resource"in i){const{locale:l,resource:c}=i;l?(r[l]=r[l]||_e(),_a(c,r[l])):_a(c,r)}else Z(i)&&_a(JSON.parse(i),r)}),a==null&&s)for(const i in r)$t(r,i)&&Pn(r[i]);return r}function Dc(e){return e.type}function jc(e,t,o){let n=fe(t.messages)?t.messages:_e();"__i18nGlobal"in o&&(n=wa(e.locale.value,{messages:n,__i18n:o.__i18nGlobal}));const a=Object.keys(n);a.length&&a.forEach(s=>{e.mergeLocaleMessage(s,n[s])});{if(fe(t.datetimeFormats)){const s=Object.keys(t.datetimeFormats);s.length&&s.forEach(r=>{e.mergeDateTimeFormat(r,t.datetimeFormats[r])})}if(fe(t.numberFormats)){const s=Object.keys(t.numberFormats);s.length&&s.forEach(r=>{e.mergeNumberFormat(r,t.numberFormats[r])})}}}function Bc(e){return we(fn,null,e,0)}const zc="__INTLIFY_META__",Gc=()=>[],Fb=()=>!1;let Uc=0;function Kc(e){return(t,o,n,a)=>e(o,n,Kt()||void 0,a)}const Rb=()=>{const e=Kt();let t=null;return e&&(t=Dc(e)[zc])?{[zc]:t}:null};function qs(e={},t){const{__root:o,__injectWithOption:n}=e,a=o===void 0,s=e.flatJson,r=ha?ie:Za,i=!!e.translateExistCompatible;let l=de(e.inheritLocale)?e.inheritLocale:!0;const c=r(o&&l?o.locale.value:Z(e.locale)?e.locale:zo),u=r(o&&l?o.fallbackLocale.value:Z(e.fallbackLocale)||Pe(e.fallbackLocale)||le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:c.value),g=r(wa(c.value,e)),b=r(le(e.datetimeFormats)?e.datetimeFormats:{[c.value]:{}}),v=r(le(e.numberFormats)?e.numberFormats:{[c.value]:{}});let P=o?o.missingWarn:de(e.missingWarn)||so(e.missingWarn)?e.missingWarn:!0,T=o?o.fallbackWarn:de(e.fallbackWarn)||so(e.fallbackWarn)?e.fallbackWarn:!0,x=o?o.fallbackRoot:de(e.fallbackRoot)?e.fallbackRoot:!0,I=!!e.fallbackFormat,w=ke(e.missing)?e.missing:null,f=ke(e.missing)?Kc(e.missing):null,y=ke(e.postTranslation)?e.postTranslation:null,E=o?o.warnHtmlMessage:de(e.warnHtmlMessage)?e.warnHtmlMessage:!0,C=!!e.escapeParameter;const _=o?o.modifiers:le(e.modifiers)?e.modifiers:{};let A=e.pluralRules||o&&o.pluralRules,m;m=(()=>{a&&Ac(null);const N={version:xb,locale:c.value,fallbackLocale:u.value,messages:g.value,modifiers:_,pluralRules:A,missing:f===null?void 0:f,missingWarn:P,fallbackWarn:T,fallbackFormat:I,unresolving:!0,postTranslation:y===null?void 0:y,warnHtmlMessage:E,escapeParameter:C,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};N.datetimeFormats=b.value,N.numberFormats=v.value,N.__datetimeFormatters=le(m)?m.__datetimeFormatters:void 0,N.__numberFormatters=le(m)?m.__numberFormatters:void 0;const z=Ab(N);return a&&Ac(z),z})(),kn(m,c.value,u.value);function D(){return[c.value,u.value,g.value,b.value,v.value]}const G=ge({get:()=>c.value,set:N=>{c.value=N,m.locale=c.value}}),Y=ge({get:()=>u.value,set:N=>{u.value=N,m.fallbackLocale=u.value,kn(m,c.value,N)}}),Q=ge(()=>g.value),F=ge(()=>b.value),R=ge(()=>v.value);function q(){return ke(y)?y:null}function ee(N){y=N,m.postTranslation=N}function he(){return w}function De(N){N!==null&&(f=Kc(N)),w=N,m.missing=f}const Le=(N,z,te,ce,ye,Ge)=>{D();let Oe;try{__INTLIFY_PROD_DEVTOOLS__,a||(m.fallbackContext=o?vb():void 0),Oe=N(m)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(m.fallbackContext=void 0)}if(te!=="translate exists"&&Ie(Oe)&&Oe===Aa||te==="translate exists"&&!Oe){const[Ft,qo]=z();return o&&x?ce(o):ye(Ft)}else{if(Ge(Oe))return Oe;throw ze(Re.UNEXPECTED_RETURN_TYPE)}};function Ne(...N){return Le(z=>Reflect.apply(Pc,null,[z,...N]),()=>Bs(...N),"translate",z=>Reflect.apply(z.t,z,[...N]),z=>z,z=>Z(z))}function tt(...N){const[z,te,ce]=N;if(ce&&!fe(ce))throw ze(Re.INVALID_ARGUMENT);return Ne(z,te,He({resolvedMessage:!0},ce||{}))}function st(...N){return Le(z=>Reflect.apply(Cc,null,[z,...N]),()=>zs(...N),"datetime format",z=>Reflect.apply(z.d,z,[...N]),()=>hc,z=>Z(z))}function At(...N){return Le(z=>Reflect.apply(Mc,null,[z,...N]),()=>Gs(...N),"number format",z=>Reflect.apply(z.n,z,[...N]),()=>hc,z=>Z(z))}function We(N){return N.map(z=>Z(z)||Ie(z)||de(z)?Bc(String(z)):z)}const V={normalize:We,interpolate:N=>N,type:"vnode"};function J(...N){return Le(z=>{let te;const ce=z;try{ce.processor=V,te=Reflect.apply(Pc,null,[ce,...N])}finally{ce.processor=null}return te},()=>Bs(...N),"translate",z=>z[Us](...N),z=>[Bc(z)],z=>Pe(z))}function H(...N){return Le(z=>Reflect.apply(Mc,null,[z,...N]),()=>Gs(...N),"number format",z=>z[Hs](...N),Gc,z=>Z(z)||Pe(z))}function se(...N){return Le(z=>Reflect.apply(Cc,null,[z,...N]),()=>zs(...N),"datetime format",z=>z[Ks](...N),Gc,z=>Z(z)||Pe(z))}function h(N){A=N,m.pluralRules=A}function S(N,z){return Le(()=>{if(!N)return!1;const te=Z(z)?z:c.value,ce=B(te),ye=m.messageResolver(ce,N);return i?ye!=null:xt(ye)||ft(ye)||Z(ye)},()=>[N],"translate exists",te=>Reflect.apply(te.te,te,[N,z]),Fb,te=>de(te))}function $(N){let z=null;const te=gc(m,u.value,c.value);for(let ce=0;ce<te.length;ce++){const ye=g.value[te[ce]]||{},Ge=m.messageResolver(ye,N);if(Ge!=null){z=Ge;break}}return z}function O(N){const z=$(N);return z??(o?o.tm(N)||{}:{})}function B(N){return g.value[N]||{}}function k(N,z){if(s){const te={[N]:z};for(const ce in te)$t(te,ce)&&Pn(te[ce]);z=te[N]}g.value[N]=z,m.messages=g.value}function K(N,z){g.value[N]=g.value[N]||{};const te={[N]:z};if(s)for(const ce in te)$t(te,ce)&&Pn(te[ce]);z=te[N],_a(z,g.value[N]),m.messages=g.value}function U(N){return b.value[N]||{}}function p(N,z){b.value[N]=z,m.datetimeFormats=b.value,Nc(m,N,z)}function d(N,z){b.value[N]=He(b.value[N]||{},z),m.datetimeFormats=b.value,Nc(m,N,z)}function L(N){return v.value[N]||{}}function j(N,z){v.value[N]=z,m.numberFormats=v.value,Ic(m,N,z)}function X(N,z){v.value[N]=He(v.value[N]||{},z),m.numberFormats=v.value,Ic(m,N,z)}Uc++,o&&ha&&(pt(o.locale,N=>{l&&(c.value=N,m.locale=N,kn(m,c.value,u.value))}),pt(o.fallbackLocale,N=>{l&&(u.value=N,m.fallbackLocale=N,kn(m,c.value,u.value))}));const W={id:Uc,locale:G,fallbackLocale:Y,get inheritLocale(){return l},set inheritLocale(N){l=N,N&&o&&(c.value=o.locale.value,u.value=o.fallbackLocale.value,kn(m,c.value,u.value))},get availableLocales(){return Object.keys(g.value).sort()},messages:Q,get modifiers(){return _},get pluralRules(){return A||{}},get isGlobal(){return a},get missingWarn(){return P},set missingWarn(N){P=N,m.missingWarn=P},get fallbackWarn(){return T},set fallbackWarn(N){T=N,m.fallbackWarn=T},get fallbackRoot(){return x},set fallbackRoot(N){x=N},get fallbackFormat(){return I},set fallbackFormat(N){I=N,m.fallbackFormat=I},get warnHtmlMessage(){return E},set warnHtmlMessage(N){E=N,m.warnHtmlMessage=N},get escapeParameter(){return C},set escapeParameter(N){C=N,m.escapeParameter=N},t:Ne,getLocaleMessage:B,setLocaleMessage:k,mergeLocaleMessage:K,getPostTranslationHandler:q,setPostTranslationHandler:ee,getMissingHandler:he,setMissingHandler:De,[Fc]:h};return W.datetimeFormats=F,W.numberFormats=R,W.rt=tt,W.te=S,W.tm=O,W.d=st,W.n=At,W.getDateTimeFormat=U,W.setDateTimeFormat=p,W.mergeDateTimeFormat=d,W.getNumberFormat=L,W.setNumberFormat=j,W.mergeNumberFormat=X,W[Rc]=n,W[Us]=J,W[Ks]=se,W[Hs]=H,W}function Db(e){const t=Z(e.locale)?e.locale:zo,o=Z(e.fallbackLocale)||Pe(e.fallbackLocale)||le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,n=ke(e.missing)?e.missing:void 0,a=de(e.silentTranslationWarn)||so(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,s=de(e.silentFallbackWarn)||so(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,r=de(e.fallbackRoot)?e.fallbackRoot:!0,i=!!e.formatFallbackMessages,l=le(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=ke(e.postTranslation)?e.postTranslation:void 0,g=Z(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,b=!!e.escapeParameterHtml,v=de(e.sync)?e.sync:!0;let P=e.messages;if(le(e.sharedMessages)){const C=e.sharedMessages;P=Object.keys(C).reduce((A,m)=>{const M=A[m]||(A[m]={});return He(M,C[m]),A},P||{})}const{__i18n:T,__root:x,__injectWithOption:I}=e,w=e.datetimeFormats,f=e.numberFormats,y=e.flatJson,E=e.translateExistCompatible;return{locale:t,fallbackLocale:o,messages:P,flatJson:y,datetimeFormats:w,numberFormats:f,missing:n,missingWarn:a,fallbackWarn:s,fallbackRoot:r,fallbackFormat:i,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:g,escapeParameter:b,messageResolver:e.messageResolver,inheritLocale:v,translateExistCompatible:E,__i18n:T,__root:x,__injectWithOption:I}}function Vs(e={},t){{const o=qs(Db(e)),{__extender:n}=e,a={id:o.id,get locale(){return o.locale.value},set locale(s){o.locale.value=s},get fallbackLocale(){return o.fallbackLocale.value},set fallbackLocale(s){o.fallbackLocale.value=s},get messages(){return o.messages.value},get datetimeFormats(){return o.datetimeFormats.value},get numberFormats(){return o.numberFormats.value},get availableLocales(){return o.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(s){},get missing(){return o.getMissingHandler()},set missing(s){o.setMissingHandler(s)},get silentTranslationWarn(){return de(o.missingWarn)?!o.missingWarn:o.missingWarn},set silentTranslationWarn(s){o.missingWarn=de(s)?!s:s},get silentFallbackWarn(){return de(o.fallbackWarn)?!o.fallbackWarn:o.fallbackWarn},set silentFallbackWarn(s){o.fallbackWarn=de(s)?!s:s},get modifiers(){return o.modifiers},get formatFallbackMessages(){return o.fallbackFormat},set formatFallbackMessages(s){o.fallbackFormat=s},get postTranslation(){return o.getPostTranslationHandler()},set postTranslation(s){o.setPostTranslationHandler(s)},get sync(){return o.inheritLocale},set sync(s){o.inheritLocale=s},get warnHtmlInMessage(){return o.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(s){o.warnHtmlMessage=s!=="off"},get escapeParameterHtml(){return o.escapeParameter},set escapeParameterHtml(s){o.escapeParameter=s},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(s){},get pluralizationRules(){return o.pluralRules||{}},__composer:o,t(...s){const[r,i,l]=s,c={};let u=null,g=null;if(!Z(r))throw ze(Re.INVALID_ARGUMENT);const b=r;return Z(i)?c.locale=i:Pe(i)?u=i:le(i)&&(g=i),Pe(l)?u=l:le(l)&&(g=l),Reflect.apply(o.t,o,[b,u||g||{},c])},rt(...s){return Reflect.apply(o.rt,o,[...s])},tc(...s){const[r,i,l]=s,c={plural:1};let u=null,g=null;if(!Z(r))throw ze(Re.INVALID_ARGUMENT);const b=r;return Z(i)?c.locale=i:Ie(i)?c.plural=i:Pe(i)?u=i:le(i)&&(g=i),Z(l)?c.locale=l:Pe(l)?u=l:le(l)&&(g=l),Reflect.apply(o.t,o,[b,u||g||{},c])},te(s,r){return o.te(s,r)},tm(s){return o.tm(s)},getLocaleMessage(s){return o.getLocaleMessage(s)},setLocaleMessage(s,r){o.setLocaleMessage(s,r)},mergeLocaleMessage(s,r){o.mergeLocaleMessage(s,r)},d(...s){return Reflect.apply(o.d,o,[...s])},getDateTimeFormat(s){return o.getDateTimeFormat(s)},setDateTimeFormat(s,r){o.setDateTimeFormat(s,r)},mergeDateTimeFormat(s,r){o.mergeDateTimeFormat(s,r)},n(...s){return Reflect.apply(o.n,o,[...s])},getNumberFormat(s){return o.getNumberFormat(s)},setNumberFormat(s,r){o.setNumberFormat(s,r)},mergeNumberFormat(s,r){o.mergeNumberFormat(s,r)},getChoiceIndex(s,r){return-1}};return a.__extender=n,a}}const Ys={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function jb({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,a)=>[...n,...a.type===Be?a.children:[a]],[]):t.reduce((o,n)=>{const a=e[n];return a&&(o[n]=a()),o},_e())}function Hc(e){return Be}const Wc=un({name:"i18n-t",props:He({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Ie(e)||!isNaN(e)}},Ys),setup(e,t){const{slots:o,attrs:n}=t,a=e.i18n||Ot({useScope:e.scope,__useComponent:!0});return()=>{const s=Object.keys(o).filter(g=>g!=="_"),r=_e();e.locale&&(r.locale=e.locale),e.plural!==void 0&&(r.plural=Z(e.plural)?+e.plural:e.plural);const i=jb(t,s),l=a[Us](e.keypath,i,r),c=He(_e(),n),u=Z(e.tag)||fe(e.tag)?e.tag:Hc();return _l(u,c,l)}}});function Bb(e){return Pe(e)&&!Z(e[0])}function qc(e,t,o,n){const{slots:a,attrs:s}=t;return()=>{const r={part:!0};let i=_e();e.locale&&(r.locale=e.locale),Z(e.format)?r.key=e.format:fe(e.format)&&(Z(e.format.key)&&(r.key=e.format.key),i=Object.keys(e.format).reduce((b,v)=>o.includes(v)?He(_e(),b,{[v]:e.format[v]}):b,_e()));const l=n(e.value,r,i);let c=[r.key];Pe(l)?c=l.map((b,v)=>{const P=a[b.type],T=P?P({[b.type]:b.value,index:v,parts:l}):[b.value];return Bb(T)&&(T[0].key=`${b.type}-${v}`),T}):Z(l)&&(c=[l]);const u=He(_e(),s),g=Z(e.tag)||fe(e.tag)?e.tag:Hc();return _l(g,u,c)}}const Vc=un({name:"i18n-n",props:He({value:{type:Number,required:!0},format:{type:[String,Object]}},Ys),setup(e,t){const o=e.i18n||Ot({useScope:e.scope,__useComponent:!0});return qc(e,t,xc,(...n)=>o[Hs](...n))}}),Yc=un({name:"i18n-d",props:He({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Ys),setup(e,t){const o=e.i18n||Ot({useScope:e.scope,__useComponent:!0});return qc(e,t,Lc,(...n)=>o[Ks](...n))}});function zb(e,t){const o=e;if(e.mode==="composition")return o.__getInstance(t)||e.global;{const n=o.__getInstance(t);return n!=null?n.__composer:e.global.__composer}}function Gb(e){const t=r=>{const{instance:i,modifiers:l,value:c}=r;if(!i||!i.$)throw ze(Re.UNEXPECTED_ERROR);const u=zb(e,i.$),g=Xc(c);return[Reflect.apply(u.t,u,[...Jc(g)]),u]};return{created:(r,i)=>{const[l,c]=t(i);ha&&e.global===c&&(r.__i18nWatcher=pt(c.locale,()=>{i.instance&&i.instance.$forceUpdate()})),r.__composer=c,r.textContent=l},unmounted:r=>{ha&&r.__i18nWatcher&&(r.__i18nWatcher(),r.__i18nWatcher=void 0,delete r.__i18nWatcher),r.__composer&&(r.__composer=void 0,delete r.__composer)},beforeUpdate:(r,{value:i})=>{if(r.__composer){const l=r.__composer,c=Xc(i);r.textContent=Reflect.apply(l.t,l,[...Jc(c)])}},getSSRProps:r=>{const[i]=t(r);return{textContent:i}}}}function Xc(e){if(Z(e))return{path:e};if(le(e)){if(!("path"in e))throw ze(Re.REQUIRED_VALUE,"path");return e}else throw ze(Re.INVALID_VALUE)}function Jc(e){const{path:t,locale:o,args:n,choice:a,plural:s}=e,r={},i=n||{};return Z(o)&&(r.locale=o),Ie(a)&&(r.plural=a),Ie(s)&&(r.plural=s),[t,i,r]}function Ub(e,t,...o){const n=le(o[0])?o[0]:{},a=!!n.useI18nComponentName;(de(n.globalInstall)?n.globalInstall:!0)&&([a?"i18n":Wc.name,"I18nT"].forEach(r=>e.component(r,Wc)),[Vc.name,"I18nN"].forEach(r=>e.component(r,Vc)),[Yc.name,"I18nD"].forEach(r=>e.component(r,Yc))),e.directive("t",Gb(t))}function Kb(e,t,o){return{beforeCreate(){const n=Kt();if(!n)throw ze(Re.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const s=a.i18n;if(a.__i18n&&(s.__i18n=a.__i18n),s.__root=t,this===this.$root)this.$i18n=Zc(e,s);else{s.__injectWithOption=!0,s.__extender=o.__vueI18nExtend,this.$i18n=Vs(s);const r=this.$i18n;r.__extender&&(r.__disposer=r.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=Zc(e,a);else{this.$i18n=Vs({__i18n:a.__i18n,__injectWithOption:!0,__extender:o.__vueI18nExtend,__root:t});const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&jc(t,a,a),this.$t=(...s)=>this.$i18n.t(...s),this.$rt=(...s)=>this.$i18n.rt(...s),this.$tc=(...s)=>this.$i18n.tc(...s),this.$te=(s,r)=>this.$i18n.te(s,r),this.$d=(...s)=>this.$i18n.d(...s),this.$n=(...s)=>this.$i18n.n(...s),this.$tm=s=>this.$i18n.tm(s),o.__setInstance(n,this.$i18n)},mounted(){},unmounted(){const n=Kt();if(!n)throw ze(Re.UNEXPECTED_ERROR);const a=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,a.__disposer&&(a.__disposer(),delete a.__disposer,delete a.__extender),o.__deleteInstance(n),delete this.$i18n}}}function Zc(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[Fc](t.pluralizationRules||e.pluralizationRules);const o=wa(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(o).forEach(n=>e.mergeLocaleMessage(n,o[n])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>e.mergeNumberFormat(n,t.numberFormats[n])),e}const Hb=ao("global-vue-i18n");function Wb(e={},t){const o=__VUE_I18N_LEGACY_API__&&de(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=de(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&o?!!e.allowComposition:!0,s=new Map,[r,i]=qb(e,o),l=ao("");function c(b){return s.get(b)||null}function u(b,v){s.set(b,v)}function g(b){s.delete(b)}{const b={get mode(){return __VUE_I18N_LEGACY_API__&&o?"legacy":"composition"},get allowComposition(){return a},async install(v,...P){if(v.__VUE_I18N_SYMBOL__=l,v.provide(v.__VUE_I18N_SYMBOL__,b),le(P[0])){const I=P[0];b.__composerExtend=I.__composerExtend,b.__vueI18nExtend=I.__vueI18nExtend}let T=null;!o&&n&&(T=oy(v,b.global)),__VUE_I18N_FULL_INSTALL__&&Ub(v,b,...P),__VUE_I18N_LEGACY_API__&&o&&v.mixin(Kb(i,i.__composer,b));const x=v.unmount;v.unmount=()=>{T&&T(),b.dispose(),x()}},get global(){return i},dispose(){r.stop()},__instances:s,__getInstance:c,__setInstance:u,__deleteInstance:g};return b}}function Ot(e={}){const t=Kt();if(t==null)throw ze(Re.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw ze(Re.NOT_INSTALLED);const o=Vb(t),n=Xb(o),a=Dc(t),s=Yb(e,a);if(__VUE_I18N_LEGACY_API__&&o.mode==="legacy"&&!e.__useComponent){if(!o.allowComposition)throw ze(Re.NOT_AVAILABLE_IN_LEGACY_MODE);return ey(t,s,n,e)}if(s==="global")return jc(n,e,a),n;if(s==="parent"){let l=Jb(o,t,e.__useComponent);return l==null&&(l=n),l}const r=o;let i=r.__getInstance(t);if(i==null){const l=He({},e);"__i18n"in a&&(l.__i18n=a.__i18n),n&&(l.__root=n),i=qs(l),r.__composerExtend&&(i[Ws]=r.__composerExtend(i)),Qb(r,t,i),r.__setInstance(t,i)}return i}function qb(e,t,o){const n=Ba();{const a=__VUE_I18N_LEGACY_API__&&t?n.run(()=>Vs(e)):n.run(()=>qs(e));if(a==null)throw ze(Re.UNEXPECTED_ERROR);return[n,a]}}function Vb(e){{const t=Ee(e.isCE?Hb:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw ze(e.isCE?Re.NOT_INSTALLED_WITH_PROVIDE:Re.UNEXPECTED_ERROR);return t}}function Yb(e,t){return ma(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function Xb(e){return e.mode==="composition"?e.global:e.global.__composer}function Jb(e,t,o=!1){let n=null;const a=t.root;let s=Zb(t,o);for(;s!=null;){const r=e;if(e.mode==="composition")n=r.__getInstance(s);else if(__VUE_I18N_LEGACY_API__){const i=r.__getInstance(s);i!=null&&(n=i.__composer,o&&n&&!n[Rc]&&(n=null))}if(n!=null||a===s)break;s=s.parent}return n}function Zb(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function Qb(e,t,o){_o(()=>{},t),sa(()=>{const n=o;e.__deleteInstance(t);const a=n[Ws];a&&(a(),delete n[Ws])},t)}function ey(e,t,o,n={}){const a=t==="local",s=Za(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw ze(Re.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const r=de(n.inheritLocale)?n.inheritLocale:!Z(n.locale),i=ie(!a||r?o.locale.value:Z(n.locale)?n.locale:zo),l=ie(!a||r?o.fallbackLocale.value:Z(n.fallbackLocale)||Pe(n.fallbackLocale)||le(n.fallbackLocale)||n.fallbackLocale===!1?n.fallbackLocale:i.value),c=ie(wa(i.value,n)),u=ie(le(n.datetimeFormats)?n.datetimeFormats:{[i.value]:{}}),g=ie(le(n.numberFormats)?n.numberFormats:{[i.value]:{}}),b=a?o.missingWarn:de(n.missingWarn)||so(n.missingWarn)?n.missingWarn:!0,v=a?o.fallbackWarn:de(n.fallbackWarn)||so(n.fallbackWarn)?n.fallbackWarn:!0,P=a?o.fallbackRoot:de(n.fallbackRoot)?n.fallbackRoot:!0,T=!!n.fallbackFormat,x=ke(n.missing)?n.missing:null,I=ke(n.postTranslation)?n.postTranslation:null,w=a?o.warnHtmlMessage:de(n.warnHtmlMessage)?n.warnHtmlMessage:!0,f=!!n.escapeParameter,y=a?o.modifiers:le(n.modifiers)?n.modifiers:{},E=n.pluralRules||a&&o.pluralRules;function C(){return[i.value,l.value,c.value,u.value,g.value]}const _=ge({get:()=>s.value?s.value.locale.value:i.value,set:$=>{s.value&&(s.value.locale.value=$),i.value=$}}),A=ge({get:()=>s.value?s.value.fallbackLocale.value:l.value,set:$=>{s.value&&(s.value.fallbackLocale.value=$),l.value=$}}),m=ge(()=>s.value?s.value.messages.value:c.value),M=ge(()=>u.value),D=ge(()=>g.value);function G(){return s.value?s.value.getPostTranslationHandler():I}function Y($){s.value&&s.value.setPostTranslationHandler($)}function Q(){return s.value?s.value.getMissingHandler():x}function F($){s.value&&s.value.setMissingHandler($)}function R($){return C(),$()}function q(...$){return s.value?R(()=>Reflect.apply(s.value.t,null,[...$])):R(()=>"")}function ee(...$){return s.value?Reflect.apply(s.value.rt,null,[...$]):""}function he(...$){return s.value?R(()=>Reflect.apply(s.value.d,null,[...$])):R(()=>"")}function De(...$){return s.value?R(()=>Reflect.apply(s.value.n,null,[...$])):R(()=>"")}function Le($){return s.value?s.value.tm($):{}}function Ne($,O){return s.value?s.value.te($,O):!1}function tt($){return s.value?s.value.getLocaleMessage($):{}}function st($,O){s.value&&(s.value.setLocaleMessage($,O),c.value[$]=O)}function At($,O){s.value&&s.value.mergeLocaleMessage($,O)}function We($){return s.value?s.value.getDateTimeFormat($):{}}function Me($,O){s.value&&(s.value.setDateTimeFormat($,O),u.value[$]=O)}function V($,O){s.value&&s.value.mergeDateTimeFormat($,O)}function J($){return s.value?s.value.getNumberFormat($):{}}function H($,O){s.value&&(s.value.setNumberFormat($,O),g.value[$]=O)}function se($,O){s.value&&s.value.mergeNumberFormat($,O)}const h={get id(){return s.value?s.value.id:-1},locale:_,fallbackLocale:A,messages:m,datetimeFormats:M,numberFormats:D,get inheritLocale(){return s.value?s.value.inheritLocale:r},set inheritLocale($){s.value&&(s.value.inheritLocale=$)},get availableLocales(){return s.value?s.value.availableLocales:Object.keys(c.value)},get modifiers(){return s.value?s.value.modifiers:y},get pluralRules(){return s.value?s.value.pluralRules:E},get isGlobal(){return s.value?s.value.isGlobal:!1},get missingWarn(){return s.value?s.value.missingWarn:b},set missingWarn($){s.value&&(s.value.missingWarn=$)},get fallbackWarn(){return s.value?s.value.fallbackWarn:v},set fallbackWarn($){s.value&&(s.value.missingWarn=$)},get fallbackRoot(){return s.value?s.value.fallbackRoot:P},set fallbackRoot($){s.value&&(s.value.fallbackRoot=$)},get fallbackFormat(){return s.value?s.value.fallbackFormat:T},set fallbackFormat($){s.value&&(s.value.fallbackFormat=$)},get warnHtmlMessage(){return s.value?s.value.warnHtmlMessage:w},set warnHtmlMessage($){s.value&&(s.value.warnHtmlMessage=$)},get escapeParameter(){return s.value?s.value.escapeParameter:f},set escapeParameter($){s.value&&(s.value.escapeParameter=$)},t:q,getPostTranslationHandler:G,setPostTranslationHandler:Y,getMissingHandler:Q,setMissingHandler:F,rt:ee,d:he,n:De,tm:Le,te:Ne,getLocaleMessage:tt,setLocaleMessage:st,mergeLocaleMessage:At,getDateTimeFormat:We,setDateTimeFormat:Me,mergeDateTimeFormat:V,getNumberFormat:J,setNumberFormat:H,mergeNumberFormat:se};function S($){$.locale.value=i.value,$.fallbackLocale.value=l.value,Object.keys(c.value).forEach(O=>{$.mergeLocaleMessage(O,c.value[O])}),Object.keys(u.value).forEach(O=>{$.mergeDateTimeFormat(O,u.value[O])}),Object.keys(g.value).forEach(O=>{$.mergeNumberFormat(O,g.value[O])}),$.escapeParameter=f,$.fallbackFormat=T,$.fallbackRoot=P,$.fallbackWarn=v,$.missingWarn=b,$.warnHtmlMessage=w}return Fi(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw ze(Re.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const $=s.value=e.proxy.$i18n.__composer;t==="global"?(i.value=$.locale.value,l.value=$.fallbackLocale.value,c.value=$.messages.value,u.value=$.datetimeFormats.value,g.value=$.numberFormats.value):a&&S($)}),h}const ty=["locale","fallbackLocale","availableLocales"],Qc=["t","rt","d","n","tm","te"];function oy(e,t){const o=Object.create(null);return ty.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s)throw ze(Re.UNEXPECTED_ERROR);const r=Te(s.value)?{get(){return s.value.value},set(i){s.value.value=i}}:{get(){return s.get&&s.get()}};Object.defineProperty(o,a,r)}),e.config.globalProperties.$i18n=o,Qc.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s||!s.value)throw ze(Re.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${a}`,s)}),()=>{delete e.config.globalProperties.$i18n,Qc.forEach(a=>{delete e.config.globalProperties[`$${a}`]})}}if(Ib(),mb(Eb),bb(Xm),yb(gc),__INTLIFY_PROD_DEVTOOLS__){const e=An();e.__INTLIFY__=!0,sb(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const ny=Object.assign({"./locales/ar/buttons.json":af,"./locales/ar/detail.json":sf,"./locales/ar/gospel.json":rf,"./locales/ar/grid.json":lf,"./locales/ar/lists.json":cf,"./locales/ar/mapui.json":uf,"./locales/ar/messages.json":df,"./locales/ar/popup.json":pf,"./locales/ar/regions.json":gf,"./locales/de/buttons.json":ff,"./locales/de/detail.json":hf,"./locales/de/gospel.json":mf,"./locales/de/grid.json":bf,"./locales/de/lists.json":yf,"./locales/de/mapui.json":_f,"./locales/de/messages.json":$f,"./locales/de/popup.json":vf,"./locales/de/regions.json":Af,"./locales/en/buttons.json":Sf,"./locales/en/detail.json":wf,"./locales/en/gospel.json":kf,"./locales/en/grid.json":Pf,"./locales/en/lists.json":Tf,"./locales/en/mapui.json":Ef,"./locales/en/messages.json":Cf,"./locales/en/popup.json":Lf,"./locales/en/regions.json":Nf,"./locales/es/buttons.json":Mf,"./locales/es/detail.json":xf,"./locales/es/gospel.json":If,"./locales/es/grid.json":Of,"./locales/es/lists.json":Ff,"./locales/es/mapui.json":Rf,"./locales/es/messages.json":Df,"./locales/es/popup.json":jf,"./locales/es/regions.json":Bf,"./locales/fr/buttons.json":zf,"./locales/fr/detail.json":Gf,"./locales/fr/gospel.json":Uf,"./locales/fr/grid.json":Kf,"./locales/fr/lists.json":Hf,"./locales/fr/mapui.json":Wf,"./locales/fr/messages.json":qf,"./locales/fr/popup.json":Vf,"./locales/fr/regions.json":Yf,"./locales/hi/buttons.json":Xf,"./locales/hi/detail.json":Jf,"./locales/hi/gospel.json":Zf,"./locales/hi/grid.json":Qf,"./locales/hi/lists.json":eh,"./locales/hi/mapui.json":th,"./locales/hi/messages.json":oh,"./locales/hi/popup.json":nh,"./locales/hi/regions.json":ah,"./locales/it/buttons.json":sh,"./locales/it/detail.json":rh,"./locales/it/gospel.json":ih,"./locales/it/grid.json":lh,"./locales/it/lists.json":ch,"./locales/it/mapui.json":uh,"./locales/it/messages.json":dh,"./locales/it/popup.json":ph,"./locales/it/regions.json":gh,"./locales/pt/buttons.json":fh,"./locales/pt/detail.json":hh,"./locales/pt/gospel.json":mh,"./locales/pt/grid.json":bh,"./locales/pt/lists.json":yh,"./locales/pt/mapui.json":_h,"./locales/pt/messages.json":$h,"./locales/pt/popup.json":vh,"./locales/pt/regions.json":Ah,"./locales/ro/buttons.json":Sh,"./locales/ro/detail.json":wh,"./locales/ro/gospel.json":kh,"./locales/ro/grid.json":Ph,"./locales/ro/lists.json":Th,"./locales/ro/mapui.json":Eh,"./locales/ro/messages.json":Ch,"./locales/ro/popup.json":Lh,"./locales/ro/regions.json":Nh,"./locales/ru/buttons.json":Mh,"./locales/ru/detail.json":xh,"./locales/ru/gospel.json":Ih,"./locales/ru/grid.json":Oh,"./locales/ru/lists.json":Fh,"./locales/ru/mapui.json":Rh,"./locales/ru/messages.json":Dh,"./locales/ru/popup.json":jh,"./locales/ru/regions.json":Bh,"./locales/zh/buttons.json":zh,"./locales/zh/detail.json":Gh,"./locales/zh/gospel.json":Uh,"./locales/zh/grid.json":Kh,"./locales/zh/lists.json":Hh,"./locales/zh/mapui.json":Wh,"./locales/zh/messages.json":qh,"./locales/zh/popup.json":Vh,"./locales/zh/regions.json":Yh}),wo={};for(const[e,t]of Object.entries(ny)){const o=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!o)continue;const[,n,a]=o;wo[n]??(wo[n]={}),wo[n][a]=t}wo.en;const ka=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"],eu=new Set(["ar"]);function ay(){try{const e=new URLSearchParams(window.location.search);return(e.get("lang")||e.get("locale")||"").split("-")[0].toLowerCase()}catch{return""}}function tu(){var n;const e=ay();if(ka.includes(e))return e;const o=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return ka.includes(o)?o:"en"}function sy(){const e=tu();try{typeof window<"u"&&window.MAP_OWNS_PAGE===!0&&eu.has(e)&&(document!=null&&document.documentElement)&&(document.documentElement.dir="rtl")}catch{}const t=Wb({legacy:!1,globalInjection:!0,locale:e,fallbackLocale:"en",messages:wo,missingWarn:!1,fallbackWarn:!1});pt(t.global.locale,n=>nu(n),{immediate:!0});const o=t.install.bind(t);return t.install=(n,...a)=>{const s=o(n,...a);return n.provide("appI18n",t),s},t}const ou="__DOXA_PAGE_LOCALE";function nu(e){const t=String(e||"").split("-")[0].toLowerCase();if(ka.includes(t))try{typeof window<"u"&&(window[ou]=t)}catch{}}function ry(){try{return typeof window<"u"&&window[ou]||""}catch{return""}}function iy(e,t){const o=a=>{let s=wo[a];for(const r of String(e).split(".")){if(!s||typeof s!="object")return;s=s[r]}return typeof s=="string"?s:void 0},n=t||ry()||tu();return o(n)??o("en")}function Go(e,t){const o=Kt(),n=t||(o&&o.type&&o.type.__hmrId?"hmr-"+o.type.__hmrId:ly(e));_o(()=>{var l;if(!o)return;const a=(l=o.proxy)==null?void 0:l.$el;if(!a)return;const s=a.getRootNode();if(!(s instanceof ShadowRoot))return;const r=s.querySelector(`style[data-shadow-styles="${n}"]`);if(r){r.textContent!==e&&(r.textContent=e);return}const i=document.createElement("style");i.setAttribute("data-shadow-styles",n),i.textContent=e,s.appendChild(i)})}function ly(e){let t=0;for(let o=0;o<e.length;o++)t=(t<<5)-t+e.charCodeAt(o),t|=0;return"s"+Math.abs(t).toString(36)}const cy={class:"pin-hint-pill"},uy={__name:"PinHint",setup(e){const t={"messages.pinHint.tapDot":"Tap a dot to see who still needs prayer"};let o=A=>t[A]||A,n=()=>!1;try{const A=Ot();o=A.t,n=A.te}catch{}const a=Ee("uiStore",null),s=Ee("profileConfig",null),r=ge(()=>(a==null?void 0:a.theme)==="dark"),i=ge(()=>{var M;const A=(M=s==null?void 0:s.value)==null?void 0:M.pinHintLabel;if(A)return A;const m="Tap a coloured dot — someone still needs prayer";try{return n("messages.pinHint.tapDot")?o("messages.pinHint.tapDot"):m}catch{return m}}),l=ie(!1),c=ie(null);let u=null,g=null,b=null,v=null,P=null,T=null,x=[],I=null,w=null;function f(){l.value=!1}function y(A,m){var D;let M=A==null?void 0:A.parentElement;for(let G=0;M&&G<12;G++,M=M.parentElement){if(M===m||(D=M.classList)!=null&&D.contains("profile-loader"))return null;let Y="";try{Y=getComputedStyle(M).position}catch{}if(Y&&Y!=="static"){const Q=M.getBoundingClientRect();if(Q.height>=120&&Q.width>=160)return M}}return null}function E(A){var M;const m=(M=v==null?void 0:v.querySelector)==null?void 0:M.call(v,".legend-mobile-sheet");if(!m)return 1/0;if(P&&T!==m){try{P.disconnect()}catch{}P=null}if(!P&&typeof ResizeObserver<"u")try{P=new ResizeObserver(()=>C()),P.observe(m),T=m}catch{P=null}try{const D=m.getBoundingClientRect();return!(D.height>16)||!(D.width>16)||A.right<=D.left||D.right<=A.left?1/0:D.top}catch{return 1/0}}function C(){const A=c.value;if(A)try{A.style.removeProperty("--pin-hint-lift");const m=A.getBoundingClientRect();if(!m.height)return;const M=Math.min(window.innerHeight,E(m)),D=Math.round(m.bottom-M);D>0&&A.style.setProperty("--pin-hint-lift",D+8+"px")}catch{}}function _(A){const m=c.value;if(!m||!(A!=null&&A.querySelector))return;let M=0;try{const G=A.querySelector(".mapboxgl-ctrl-bottom-right .mapboxgl-ctrl-attrib, .mapboxgl-ctrl-bottom-right .doxa-attribution, .doxa-attribution");if(G){const Y=G.getBoundingClientRect(),Q=m.parentElement,F=Q?Q.getBoundingClientRect():null;if(M=F?Math.max(Y.height||0,F.bottom-Y.top):Y.height||0,w!==G&&typeof ResizeObserver<"u"){if(b)try{b.disconnect()}catch{}w=G,b=new ResizeObserver(()=>_(A)),b.observe(G)}}}catch{}const D=Math.min(Math.max(Math.ceil(M)||20,20),72);m.style.setProperty("--pin-hint-attrib-clear",D+"px"),C()}return _o(()=>{var D,G,Y;const A=Kt(),m=(Y=(G=(D=A==null?void 0:A.proxy)==null?void 0:D.$el)==null?void 0:G.getRootNode)==null?void 0:Y.call(G);if(!m||typeof m.querySelector!="function")return;v=m;let M=0;u=setInterval(()=>{M++;const Q=m.querySelector("canvas");Q?(clearInterval(u),u=null,l.value=!0,rn(()=>{const F=y(Q,m),R=c.value;if(F&&R&&R.parentElement!==F)try{F.appendChild(R),g=F}catch{}_(m),C(),x.push(setTimeout(C,1200),setTimeout(C,3e3),setTimeout(C,6e3));try{const q=c.value&&c.value.offsetParent||null;if(q&&typeof ResizeObserver<"u"){if(I)try{I.disconnect()}catch{}I=new ResizeObserver(()=>C()),I.observe(q)}}catch{}})):M>40&&(clearInterval(u),u=null)},300)}),xo(()=>{var A;if(u&&clearInterval(u),b){try{b.disconnect()}catch{}b=null}if(w=null,I){try{I.disconnect()}catch{}I=null}if(P){try{P.disconnect()}catch{}P=null}T=null;for(const m of x)clearTimeout(m);if(x=[],v=null,g&&((A=c.value)==null?void 0:A.parentElement)===g)try{g.removeChild(c.value)}catch{}g=null}),Go(`
|
||
.pin-hint { position: absolute; left: 50%;
|
||
bottom: calc(var(--pin-hint-attrib-clear, 20px) + 12px + var(--pin-hint-lift, 0px)); transform: translateX(-50%);
|
||
z-index: 2147482000; pointer-events: none;
|
||
max-width: calc(100% - 24px); box-sizing: border-box;
|
||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||
animation: pinhint-in .5s ease both; }
|
||
.pin-hint-pill { pointer-events: auto; display: inline-flex; align-items: center; gap: 9px;
|
||
padding: 9px 14px 9px 11px; border-radius: 999px;
|
||
background: rgba(23, 29, 38, .92); color: #fff; font-size: 13.5px; font-weight: 600;
|
||
letter-spacing: .01em; box-shadow: 0 4px 18px rgba(0,0,0,.30);
|
||
animation: pinhint-bob 2.6s ease-in-out 1s infinite; }
|
||
.pin-hint-dot { position: relative; width: 12px; height: 12px; flex: none; }
|
||
.pin-hint-dot::before { content: ''; position: absolute; inset: 0; border-radius: 50%;
|
||
background: #e05252; box-shadow: 0 0 0 2px rgba(224,82,82,.35); }
|
||
.pin-hint-dot::after { content: ''; position: absolute; inset: -5px; border-radius: 50%;
|
||
border: 2px solid rgba(224,82,82,.55); animation: pinhint-pulse 1.8s ease-out infinite; }
|
||
.pin-hint-x { pointer-events: auto; border: none; background: none; color: #aeb7c2;
|
||
font-size: 16px; line-height: 1; cursor: pointer; padding: 0 0 0 2px; }
|
||
.pin-hint-x:hover { color: #fff; }
|
||
@media (pointer:coarse) { .pin-hint-x { min-width: 24px; min-height: 24px;
|
||
display: inline-flex; align-items: center; justify-content: center; padding: 0; } }
|
||
.pin-hint.dark .pin-hint-pill { background: rgba(240, 243, 247, .95); color: #1b212b; }
|
||
.pin-hint.dark .pin-hint-x { color: #5a6470; }
|
||
.pin-hint.dark .pin-hint-x:hover { color: #1b212b; }
|
||
@keyframes pinhint-pulse { 0% { transform: scale(.6); opacity: .9 } 70% { transform: scale(1.5); opacity: 0 } 100% { opacity: 0 } }
|
||
@keyframes pinhint-bob { 0%,100% { transform: translateY(0) } 50% { transform: translateY(-5px) } }
|
||
@keyframes pinhint-in { from { opacity: 0; transform: translateX(-50%) translateY(10px) } to { opacity: 1; transform: translateX(-50%) translateY(0) } }
|
||
@media (prefers-reduced-motion: reduce) {
|
||
.pin-hint, .pin-hint-pill, .pin-hint-dot::after { animation: none !important; }
|
||
}
|
||
`,"pin-hint"),(A,m)=>l.value?(ue(),$e("div",{key:0,ref_key:"hintEl",ref:c,class:ot(["pin-hint",{dark:r.value}]),role:"status"},[oe("span",cy,[m[0]||(m[0]=oe("span",{class:"pin-hint-dot","aria-hidden":"true"},null,-1)),_t(" "+nt(i.value)+" ",1),oe("button",{class:"pin-hint-x",type:"button","aria-label":"Dismiss hint",onClick:f},"×")])],2)):Lt("",!0)}};let dy=0;const py=Ts("ui",{state:()=>({_storeInstanceId:++dy,theme:"light",colorScheme:"default",reducedMotion:!1,highContrast:!1,activeTab:"doxa-regions",sidebarCollapsed:!1,mobileMenuOpen:!1,legendState:"collapsed",_customLegendHeight:null,searchMode:!1,hamburgerMenuOpen:!1,legendMode:"prayer",prayerFilter:null,engagementFilter:null,adoptionFilter:null,religionFilter:null,selectedPeopleGroup:null,breakpoint:"desktop",windowSize:{width:window.innerWidth,height:window.innerHeight},toasts:[],nextToastId:1,toastDuration:5e3,openModals:[],modalData:new Map,isGlobalLoading:!1,globalLoadingMessage:"Loading...",loadingStates:new Map,interactionHistory:[],maxHistoryLength:20,keyboardShortcutsEnabled:!0,screenReaderAnnouncement:"",focusTrapActive:!1,debugMode:!1,showPerformanceOverlay:!1}),getters:{isDarkTheme:e=>!1,isMobile:e=>e.breakpoint==="mobile",isTablet:e=>e.breakpoint==="tablet",isDesktop:e=>e.breakpoint==="desktop"||e.breakpoint==="wide",legendHeight:e=>e._customLegendHeight?e._customLegendHeight:e.legendState==="collapsed"?"48px":e.legendState==="open"?"30%":e.legendState==="fullyOpen"?"calc(100% - 80px)":"48px",caretRotation:e=>e.legendState==="collapsed"?0:90,showPullTab:e=>e.legendState==="open"||e.legendState==="fullyOpen",getToastsByType:e=>t=>e.toasts.filter(o=>o.type===t),hasOpenModal:e=>e.openModals.length>0,topModal:e=>e.openModals.length===0?null:e.openModals[e.openModals.length-1],isModalOpen:e=>t=>e.openModals.includes(t),isAnyLoading:e=>e.isGlobalLoading||e.loadingStates.size>0,isLoading:e=>t=>e.loadingStates.get(t)||!1},actions:{setTheme(e){if(!["light","dark","auto"].includes(e))return;e="light",this.theme=e;const o=this.isDarkTheme;document.documentElement.setAttribute("data-theme",o?"dark":"light");try{localStorage.setItem("theme",e)}catch{}},toggleTheme(){const e=this.theme==="light"?"dark":"light";this.setTheme(e)},setColorScheme(e){this.colorScheme=e,document.documentElement.setAttribute("data-color-scheme",e)},toggleReducedMotion(){this.reducedMotion=!this.reducedMotion,document.documentElement.setAttribute("data-reduced-motion",this.reducedMotion)},toggleHighContrast(){this.highContrast=!this.highContrast,document.documentElement.setAttribute("data-high-contrast",this.highContrast)},setActiveTab(e){this.activeTab=e,this.addToHistory({type:"tab-change",tabId:e,timestamp:Date.now()})},toggleSidebar(){this.sidebarCollapsed=!this.sidebarCollapsed},openMobileMenu(){this.mobileMenuOpen=!0},closeMobileMenu(){this.mobileMenuOpen=!1},setLegendMode(e){["prayer","detail"].includes(e)&&(this.legendMode=e)},setPrayerFilter(e){[null,"noPrayer","hasPrayer","fullPrayer"].includes(e)&&(this.prayerFilter=e)},setEngagementFilter(e){[null,"notEngaged","hasEngagement"].includes(e)&&(this.engagementFilter=e)},setAdoptionFilter(e){[null,"notAdopted","hasAdoption"].includes(e)&&(this.adoptionFilter=e)},setReligionFilter(e){[null,"C","M","H","B","E","J","S","N","O","U"].includes(e)&&(this.religionFilter=e)},selectPeopleGroup(e){this.selectedPeopleGroup=e,e?(this._legendStateBeforeDetail=this.legendState,this.legendState="open",this._customLegendHeight=null,this.setLegendMode("detail")):(this.legendState=this._legendStateBeforeDetail||"open",this._customLegendHeight=null,this.setLegendMode("prayer"))},setLegendState(e){["collapsed","open","fullyOpen"].includes(e)&&(this.legendState=e)},toggleSearchMode(){this.searchMode=!this.searchMode},setSearchMode(e){this.searchMode=e},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},updateBreakpoint(e){let t;e<768?t="mobile":e<1024?t="tablet":e<1920?t="desktop":t="wide",t!==this.breakpoint&&(this.breakpoint=t)},updateWindowSize(e,t){this.windowSize.width=e,this.windowSize.height=t,this.updateBreakpoint(e)},showToast(e){const{message:t,type:o="info",duration:n=this.toastDuration,action:a=null,persistent:s=!1}=e,r={id:this.nextToastId++,message:t,type:o,duration:n,action:a,persistent:s,createdAt:Date.now()};return this.toasts.push(r),!s&&n>0&&setTimeout(()=>{this.removeToast(r.id)},n),r.id},showSuccess(e,t={}){return this.showToast({message:e,type:"success",...t})},showError(e,t={}){return this.showToast({message:e,type:"error",duration:7e3,...t})},showWarning(e,t={}){return this.showToast({message:e,type:"warning",...t})},showInfo(e,t={}){return this.showToast({message:e,type:"info",...t})},removeToast(e){const t=this.toasts.findIndex(o=>o.id===e);t!==-1&&this.toasts.splice(t,1)},clearAllToasts(){this.toasts=[]},openModal(e,t={}){this.openModals.includes(e)||(this.openModals.push(e),this.modalData.set(e,t),this.focusTrapActive=!0)},closeModal(e=null){if(e){const t=this.openModals.indexOf(e);t!==-1&&(this.openModals.splice(t,1),this.modalData.delete(e))}else{const t=this.openModals.pop();t&&this.modalData.delete(t)}this.openModals.length===0&&(this.focusTrapActive=!1)},closeAllModals(){this.openModals=[],this.modalData.clear(),this.focusTrapActive=!1},getModalData(e){return this.modalData.get(e)},showGlobalLoading(e="Loading..."){this.isGlobalLoading=!0,this.globalLoadingMessage=e},hideGlobalLoading(){this.isGlobalLoading=!1},setLoading(e,t=!0){t?this.loadingStates.set(e,!0):this.loadingStates.delete(e)},addToHistory(e){this.interactionHistory.push(e),this.interactionHistory.length>this.maxHistoryLength&&this.interactionHistory.shift()},clearHistory(){this.interactionHistory=[]},announce(e,t="polite"){this.screenReaderAnnouncement=e,setTimeout(()=>{this.screenReaderAnnouncement===e&&(this.screenReaderAnnouncement="")},1e3)},toggleKeyboardShortcuts(){this.keyboardShortcutsEnabled=!this.keyboardShortcutsEnabled},toggleDebugMode(){this.debugMode=!this.debugMode},togglePerformanceOverlay(){this.showPerformanceOverlay=!this.showPerformanceOverlay},toggleLegend(){this.legendState==="fullyOpen"?this.legendState="open":this.legendState==="open"?this.legendState="collapsed":this.legendState="open",this._customLegendHeight=null},openLegend(){this.legendState="open",this._customLegendHeight=null},fullyOpenLegend(){this.legendState="fullyOpen",this._customLegendHeight=null},collapseLegend(){this.legendState="collapsed",this._customLegendHeight=null},setLegendHeight(e){this._customLegendHeight=e},handleLegendItemClick(){this.legendState==="fullyOpen"&&(this.legendState="open")},enableSearchMode(){this.searchMode=!0},disableSearchMode(){this.searchMode=!1},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},openHamburgerMenu(){this.hamburgerMenuOpen=!0},closeHamburgerMenu(){this.hamburgerMenuOpen=!1},init(){let e=null;try{e=localStorage.getItem("theme")}catch{}e&&this.setTheme(e),new ResizeObserver(o=>{for(const n of o)this.updateWindowSize(n.contentRect.width,n.contentRect.height)}).observe(document.documentElement),window.matchMedia&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",o=>{this.theme==="auto"&&document.documentElement.setAttribute("data-theme",o.matches?"dark":"light")}),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",o=>{this.reducedMotion=o.matches,document.documentElement.setAttribute("data-reduced-motion",o.matches)}))}}}),gy=Ts("map",{state:()=>({maps:{},activeMapId:null,selectedRegion:null,selectedFamily:null,selectedAffinityBlock:null,selectedLanguage:null,selectedDialect:null,activeLegendTab:"family",selectedResource:null,selectedPeopleGroup:null,selectedPinIds:[],globalFilters:{},searchQuery:"",autoFly:{isActive:!1,speed:1,interval:5e3,currentIndex:0,items:[],timerId:null},guidedTour:{isActive:!1,currentStep:0,steps:[]},showClusters:!1,clusterMode:"region",clusteringMode:"off",clusterPinOpacity:.6,clusterFilterProperty:null,clusterFilterValue:null,flySpeed:"normal",fullscreenMapId:null,preferences:{theme:"light",defaultMapStyle:"streets",enableAnimations:!0,autoSavePreferences:!0}}),getters:{getMapById:e=>t=>e.maps[t],activeMap:e=>e.activeMapId?e.maps[e.activeMapId]:null,hasMap:e=>t=>t in e.maps,allMapIds:e=>Object.keys(e.maps),hasSelection:e=>!!(e.selectedRegion||e.selectedFamily||e.selectedAffinityBlock||e.selectedPeopleGroup),isAutoFlying:e=>e.autoFly.isActive,isGuidedTourActive:e=>e.guidedTour.isActive,isMapFullscreen:e=>t=>e.fullscreenMapId===t},actions:{registerMap(e,t,o={}){let n=1.5;o.zoom!==void 0?n=o.zoom:t&&typeof t.getZoom=="function"&&(n=t.getZoom());let a=[0,0];if(o.center)a=o.center;else if(t&&typeof t.getCenter=="function"){const s=t.getCenter();s&&(a=[s.lng,s.lat])}this.maps[e]={instance:t,config:o,isReady:!1,zoom:n,center:a,registeredAt:Date.now()},this.activeMapId||(this.activeMapId=e)},setMapReady(e){const t=this.maps[e];t&&(t.isReady=!0)},updateMapState(e,t){const o=this.maps[e];o&&Object.assign(o,t)},unregisterMap(e){if(delete this.maps[e],this.activeMapId===e){const t=this.allMapIds;this.activeMapId=t.length>0?t[0]:null}},setActiveMap(e){e in this.maps&&(this.activeMapId=e)},selectRegion(e){this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedRegion=e},selectFamily(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedFamily=e},setActiveLegendTab(e){this.activeLegendTab=e},selectLanguage(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedFamily=null,this.selectedDialect=null,this.selectedLanguage=e},selectDialect(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedDialect=e},selectAffinityBlock(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedPeopleGroup=null,this.selectedAffinityBlock=e},selectPeopleGroup(e){this.selectedPeopleGroup=e},selectResource(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedResource===e?this.selectedResource=null:this.selectedResource=e},clearSelections(){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedAffinityBlock=null,this.selectedResource=null,this.selectedPeopleGroup=null,this.selectedPinIds=[],this.showClusters=!1,this.clusterMode="region"},setSelectedPinIds(e){this.selectedPinIds=e||[]},setFilter(e,t){this.globalFilters[e]=t},removeFilter(e){delete this.globalFilters[e]},clearFilters(){this.globalFilters={},this.searchQuery=""},setSearchQuery(e){this.searchQuery=e},startAutoFly(e,t=1){this.stopAutoFly(),this.autoFly.isActive=!0,this.autoFly.speed=t,this.autoFly.items=e,this.autoFly.currentIndex=0},stopAutoFly(){this.autoFly.timerId&&(clearInterval(this.autoFly.timerId),this.autoFly.timerId=null),this.autoFly.isActive=!1,this.autoFly.currentIndex=0},setAutoFlySpeed(e){this.autoFly.speed=Math.max(.5,Math.min(2,e))},nextAutoFlyItem(){if(!this.autoFly.isActive||this.autoFly.items.length===0)return;this.autoFly.currentIndex=(this.autoFly.currentIndex+1)%this.autoFly.items.length;const e=this.autoFly.items[this.autoFly.currentIndex];e.type==="region"?this.selectRegion(e):e.type==="family"&&this.selectFamily(e)},toggleClusters(e){typeof e=="boolean"?this.showClusters=e:this.showClusters=!this.showClusters},setClusterMode(e){["region","language-family","affinity-block","mst","resource"].includes(e)&&(this.clusterMode=e)},setClusteringMode(e){["off","mapbox","mst","network"].includes(e)&&(this.clusteringMode=e,this.showClusters=e!=="off")},setClusterFilter(e,t){this.clusterFilterProperty=e||null,this.clusterFilterValue=t||null},clearClusterFilter(){this.clusterFilterProperty=null,this.clusterFilterValue=null},setFlySpeed(e){["slow","normal","fast"].includes(e)&&(this.flySpeed=e)},setSelectedFamily(e){this.selectFamily(e)},clearSelectedFamily(){this.selectFamily(null)},setSelectedRegion(e){this.selectRegion(e)},clearSelectedRegion(){this.selectRegion(null)},clearSelectedResource(){this.selectResource(null)},clearSelectedLanguage(){this.selectLanguage(null)},clearSelectedDialect(){this.selectDialect(null)},toggleFullscreen(e){this.fullscreenMapId===e?this.fullscreenMapId=null:this.fullscreenMapId=e},loadPreferences(){try{const e=localStorage.getItem("mapUserPreferences");if(e){const t=JSON.parse(e);this.preferences={...this.preferences,...t}}}catch(e){console.error("[mapStore] Failed to load preferences:",e)}},savePreferences(){try{localStorage.setItem("mapUserPreferences",JSON.stringify(this.preferences))}catch(e){console.error("[mapStore] Failed to save preferences:",e)}},setPreference(e,t){this.preferences[e]=t,this.preferences.autoSavePreferences&&this.savePreferences()}}}),fy=Ts("data",{state:()=>({sources:{},loadingStates:{}}),actions:{async load(e,t){if(!this.sources[e]){this.loadingStates[e]={isLoading:!0,error:null};try{const o=await t();this.sources[e]=nn({features:o,timestamp:Date.now()}),this.loadingStates[e]={isLoading:!1,error:null}}catch(o){console.error(`[dataStore] Failed to load source "${e}":`,o),this.loadingStates[e]={isLoading:!1,error:o}}}},clearSource(e){delete this.sources[e],delete this.loadingStates[e]},cacheSourceData(e,t){this.sources[e]=nn({features:t.normalizedData||[],timestamp:t.timestamp||Date.now()})},hasSourceData(e){return!!this.sources[e]},getSourceData(e){return this.sources[e]?{normalizedData:this.sources[e].features}:null}},getters:{getData:e=>t=>{var o;return((o=e.sources[t])==null?void 0:o.features)??null},isLoading:e=>t=>{var o;return((o=e.loadingStates[t])==null?void 0:o.isLoading)??!1},getError:e=>t=>{var o;return((o=e.loadingStates[t])==null?void 0:o.error)??null}}}),au={_meta:{_comment:"Single source of truth for data-source connections across all doxa-maps bundles.",_comment_token:"Mapbox access token is fetched at runtime from window.MAP_TOKEN_URL (same modular pattern as window.MAP_APP_API_URL). Not hardcoded to any host — set mapboxTokenUrl below or override window.MAP_TOKEN_URL on the host page.",mapboxTokenUrl:"window.MAP_TOKEN_URL"},activeSource:"pray-tools",sources:{"pray-tools":{id:"pray-tools",name:"Prayer.Tools API",type:"rest-api",description:"pray.doxa.life live API — people-group prayer, engagement, and adoption data. Base URL read from window.MAP_APP_API_URL or VITE_API_BASE_URL at runtime.",endpoints:{bulk:"/api/people-groups/list",detail:"/api/people-groups/detail/{slug}",statistics:"/api/people-groups/statistics"},queryParams:{lang:"en"},defaultFields:["slug","name","latitude","longitude","wagf_region","wagf_block","wagf_member","rop1","imb_reg_of_people_2","imb_reg_of_people_25","imb_reg_of_people_3","country_code","religion","population","has_photo","image_url","people_praying","people_committed","adopted_by_churches","engagement_status","imb_gsec","primary_language","imb_language_family","imb_language_class","imb_language_speakers"],pollFields:["slug","people_praying"],pollInterval:3e5,fallbackSourceId:null,fieldMappings:{uniqueId:"slug",slug:"slug",name:"name",latitude:"latitude",longitude:"longitude",wagfRegion:"wagf_region",doxaRegion:"wagf_region",wagfBlock:"wagf_block",wagfMember:"wagf_member",affinityBlock:"rop1",countryIso:"country_code",religion:"religion",religionCode:"religion",population:"population",hasPhoto:"has_photo",imageUrl:"image_url",photoUrl:"image_url",peoplePraying:"people_praying",peopleCommitted:"people_committed",engagementStatus:"engagement_status",adoptionStatus:"adopted_by_churches",language:"primary_language",cluster:"imb_reg_of_people_2",peopleGroup:"imb_reg_of_people_25",peopleGroupCountry:"imb_reg_of_people_3",languageFamily:"imb_language_family",languageClass:"imb_language_class",languageSpeakers:"imb_language_speakers"},imageConfig:{useField:"imageUrl",fallbackField:null,fallbackUrlTemplate:null,placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg",useSvgPlaceholder:!0}},"doxa-csv":{id:"doxa-csv",name:"DOXA People Groups CSV",type:"csv",path:"assets/data/Joshua-project-ids-Doxa-1439.csv",description:"People groups dataset from DOXA / Joshua Project",fieldMappings:{uniqueId:"ROP3",peopleGroupId:"ROP3",countryCode:"ROG",peopleId3:"PeopleID3",name:"Name",displayName:"NmDisp",alternateName:"NmAlt",description:"PeopleDesc",locationDescription:"LocationDe",country:"Ctry",countryIso:"ISOalpha3",region:"Regn",subRegion:"RegnSub",wagfRegion:"WAGF Region",doxaRegion:"WAGF Region",wagfBlock:"WAGF BLOCK",affinityBloc:"Affbloc",affinityBlock:"ROP1",affinityCode:"AffCd",affinityName:"Aff",peopleCluster:"PplClstr",ethneName:"Ethne",latitude:"Latitude",longitude:"Longitude",population:"Pop",populationClass:"PopCls",status:"Status",engagementStatus:"EngStat",evangelicalLevel:"EvngLvl",gsec:"GSEC",gsecBrief:"GSECbrf",gsecLong:"GSEClng",spiScore:"SPI",spiDescription:"SPIdesc",language:"Lang",languageCode:"ROL",languageFamily:"LangFamily",religion:"Rlgn",religionCode:"ROR",religionDescription:"RORdesc",religionBase:"RlgnBs",religionDiv:"RlgnDiv",bible:"Bible",jesusFilm:"Jesus",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",resourcesTotal:"ResTot",bibleLevel:"LvlBible",yearPublished:"YrPub",photoCredit:"PicCrdt",photoUrl:"PicURL",hasPhoto:"Photo",isIndigenous:"Indigenous"},imageConfig:{useField:"photoUrl",fallbackField:"peopleId3",fallbackUrlTemplate:"https://joshuaproject.net/assets/media/profiles/photos/p{peopleId3}.jpg",placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg"}}},systemFields:{uniqueId:{description:"Unique identifier per row (slug for API, ROP3+ROG for CSV)",required:!0},peopleGroupId:{description:"People group ID — same group can appear in multiple countries",required:!0},name:{description:"People group display name",required:!0},latitude:{description:"Latitude coordinate for map pin",required:!0},longitude:{description:"Longitude coordinate for map pin",required:!0},engagementStatus:{description:"Boolean — true if engaged_status = 'engaged'",required:!1},adoptionStatus:{description:"Boolean — true if adopted_by_churches > 0",required:!1},peoplePraying:{description:"Number of people currently praying for this group — from pray-tools API",required:!1},peopleCommitted:{description:"Raw count of committed workers for this group — source of engagementStatus",required:!1},languageFamily:{description:"Language family name",required:!1},religion:{description:"Primary religion",required:!1},population:{description:"Population count",required:!1},doxaRegion:{description:"WAGF/DOXA region name",required:!1},photoUrl:{description:"URL to people group photo",required:!1},description:{description:"People group description text",required:!1}}},hy=".profile-loader[data-v-975471d4]{border-radius:var(--map-radius-corners, var(--map-radius, 0px));width:100%;height:100%;min-height:var(--profile-min-h, 100dvh);position:relative}.profile-error[data-v-975471d4]{padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;font-family:monospace;font-size:13px}",my=(e,t)=>{const o=e.__vccOpts||e;for(const[n,a]of t)o[n]=a;return o},by=["dir"],yy={key:0,class:"profile-error"},_y={key:1,class:"profile-error"},$y=my({__name:"ProfileLoader",props:{profileConfig:{type:String,default:""}},setup(e){var C;const o=e,n=Ee("profileConfig",null),a=ge(()=>{var A;if(!o.profileConfig)return null;let _;try{_=JSON.parse(o.profileConfig)}catch{return console.error("[ProfileLoader] Invalid profile-config JSON:",o.profileConfig),null}if(_&&_.assetsBase===void 0){const m=(A=n==null?void 0:n.value)==null?void 0:A.assetsBase;typeof m=="string"&&m&&(_.assetsBase=m)}return _}),s=ge(()=>{var _;return((_=a.value)==null?void 0:_.profile)||null}),r=tf(),i=ge(()=>{var A;const _=(A=a.value)==null?void 0:A.tk;return typeof _=="string"&&_?_:r.value||""});pt(()=>{var _;return(_=a.value)==null?void 0:_.tk},_=>{typeof _=="string"&&_&&Ls(_)},{immediate:!0}),pt(()=>{var _;return(_=a.value)==null?void 0:_.tokenUrl},_=>{var A;_&&!((A=a.value)!=null&&A.tk)&&!r.value&&of(_)},{immediate:!0});const l=ge(()=>{var _;return((_=a.value)==null?void 0:_.dataSource)||au.activeSource||"doxa-csv"}),c=ge(()=>{var _;return((_=a.value)==null?void 0:_.colorSet)||"default"}),u=ge(()=>!1),g=ge(()=>{var _;return((_=a.value)==null?void 0:_.pinHint)!==!1}),b=ge(()=>{var A,m;const _=(((A=a.value)==null?void 0:A.locale)||((m=a.value)==null?void 0:m.lang)||"").split("-")[0].toLowerCase();return ka.includes(_)?_:""}),v=Ee("appI18n",null);fp(()=>{b.value&&(v&&(v.global.locale.value=b.value),nu(b.value))});const P=ge(()=>{var _,A;return b.value||((A=(_=v==null?void 0:v.global)==null?void 0:_.locale)==null?void 0:A.value)||"en"}),T=ge(()=>eu.has(P.value)?"rtl":"ltr"),x=ge(()=>{var _;return((_=a.value)==null?void 0:_.instanceId)||"doxa-map-"+Math.random().toString(36).slice(2,9)}),I=Ee("profileModules",null);if(!I)throw new Error('[ProfileLoader] No profileModules provided. Bundle entry must `app.provide("profileModules", import.meta.glob("./*.vue"))`');const w=ge(()=>{if(!s.value)return null;const _=`./${s.value}.vue`;return I[_]?nf(I[_]):(console.error(`[ProfileLoader] Profile not found: "${s.value}". Available:`,Object.keys(I)),null)});lt("mapboxToken",i),lt("dataSource",l),lt("colorSet",c),lt("profileConfig",a),lt("instanceId",x),lt("lang",P);const f=py(),y=gy(),E=fy();try{const _=typeof localStorage<"u"?localStorage.getItem("theme"):null;_&&((C=f.setTheme)==null||C.call(f,_))}catch{}return lt("uiStore",f),lt("mapStore",y),lt("dataStore",E),(_,A)=>(ue(),$e("div",{class:"profile-loader",dir:T.value},[a.value?w.value?(ue(),gt(Di(w.value),{key:2})):(ue(),$e("div",_y,[oe("p",null,[A[1]||(A[1]=_t("⚠️ Profile ",-1)),oe("strong",null,'"'+nt(s.value)+'"',1),A[2]||(A[2]=_t(" not found.",-1))])])):(ue(),$e("div",yy,[...A[0]||(A[0]=[oe("p",null,[_t("⚠️ "),oe("strong",null,"doxa-map"),_t(": missing or invalid "),oe("code",null,"profile-config"),_t(" prop.")],-1),oe("p",null,[_t("Example: "),oe("code",null,`profile-config='{"profile":"example-map","tk":"pk.eyJ..."}'`)],-1)])])),w.value&&u.value?(ue(),gt(Di(Ue(null)),{key:3})):Lt("",!0),w.value&&g.value?(ue(),gt(uy,{key:4})):Lt("",!0)],8,by))}},[["styles",[hy]],["__scopeId","data-v-975471d4"]]),su="adoptionStatus",Yt={notAdopted:"#f03b2d",hasAdoption:"#22c55e"},vy=Yt,Xs={notAdopted:"Needs Adoption",hasAdopted:"Has Adoption"},Ay=Xs;function ru(e){var n;const t=e.adoptionStatus??((n=e._raw)==null?void 0:n.adopted_by_churches);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?Yt.hasAdoption:Yt.notAdopted}function Js({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","adoptionStatus"]:["get","adoptionStatus"];return["case",["==",t,!0],Yt.hasAdoption,["==",t,1],Yt.hasAdoption,Yt.notAdopted]}const iu=Js,Sy=Object.freeze(Object.defineProperty({__proto__:null,ADOPTION_COLORS:vy,ADOPTION_LABELS:Ay,LABELS:Xs,PALETTE:Yt,PROPERTY_KEY:su,applyColor:Js,buildColorExpression:iu,default:{name:"Adoption Progress",propertyKey:su,palette:Yt,colors:Yt,labels:Xs,getColor:ru,applyColor:Js,buildColorExpression:iu},getColor:ru},Symbol.toStringTag,{value:"Module"})),Zs="affinityBlock",Uo="#95a5a6",Xt={A001:"Arab World",A002:"East Asian Peoples",A003:"Eurasian Peoples",A004:"Horn of Africa Peoples",A005:"Jewish",A006:"Malay Peoples",A007:"Persian-Median Peoples",A008:"South Asian Peoples",A009:"North American Peoples",A010:"Pacific Islanders",A011:"Southeast Asian Peoples",A012:"Sub-Saharan Peoples",A013:"Tibetan-Himalayan Peoples",A014:"Turkic Peoples",A015:"Latin-Caribbean Americans",A017:"Deaf",A018:"Tibetan Peoples",A019:"Himalayan Peoples"},Pa={A001:"#E74C3C",A002:"#3498DB",A003:"#2ECC71",A004:"#F39C12",A005:"#9B59B6",A006:"#1ABC9C",A007:"#E67E22",A008:"#34495E",A009:"#95A5A6",A010:"#5DADE2",A011:"#16A085",A012:"#C0392B",A013:"#8E44AD",A014:"#D35400",A015:"#27AE60",A017:"#000000",A018:"#6C3483",A019:"#A569BD"},co=Pa,lu=Object.entries(Xt).reduce((e,[t,o])=>(e[o]=t,e),{}),Qs=Object.entries(Xt).reduce((e,[t,o])=>(e[o]=co[t],e),{}),cu=Xt;function er(e){return Xt[e]||"Unknown"}function tr(e){return co[e]||Uo}function uu(e){return e?typeof e=="string"&&/^A\d{3}$/.test(e)?co[e]||Uo:Qs[e]||Uo:Uo}function du(){return Object.entries(Xt).map(([e,t])=>({code:e,name:t,color:co[e]}))}function pu(e){return{code:e,name:Xt[e]||"Unknown",color:co[e]||Uo}}function gu(e){var o;const t=e.affinityBlock||((o=e._raw)==null?void 0:o.ROP1);return tr(t)}function fu(e){var o;const t=e.affinityBlock||((o=e._raw)==null?void 0:o.ROP1);return er(t)}function or(){const e=["match",["get",Zs]];return Object.entries(co).forEach(([t,o])=>{e.push(t,o)}),e.push(Uo),e}const hu=or,wy=Object.freeze(Object.defineProperty({__proto__:null,AFFINITY_BLOCK_COLORS:co,AFFINITY_BLOCK_COLORS_BY_NAME:Qs,AFFINITY_BLOCK_NAMES:Xt,AFFINITY_BLOCK_NAME_TO_CODE:lu,NAMES:cu,PALETTE:Pa,PROPERTY_KEY:Zs,affinityBlockCodeLookup:Xt,affinityBlockCodeToColor:co,affinityBlockCodeToName:Xt,affinityBlockColors:Qs,affinityBlockNameToCode:lu,applyColor:or,buildColorExpression:hu,default:{name:"Affinity Block",propertyKey:Zs,palette:Pa,colors:Pa,names:cu,getColor:gu,applyColor:or,buildColorExpression:hu,getName:fu,getAffinityBlockName:er,getAffinityBlockColor:uu,getAffinityBlockColorByCode:tr,getAffinityBlocksArray:du,getAffinityBlockData:pu},getAffinityBlockColor:uu,getAffinityBlockColorByCode:tr,getAffinityBlockData:pu,getAffinityBlockName:er,getAffinityBlocksArray:du,getColor:gu,getName:fu},Symbol.toStringTag,{value:"Module"}));function ky(e){if(!e)return"hsl(0, 60%, 50%)";let t=0;for(let n=0;n<e.length;n++)t=e.charCodeAt(n)+((t<<5)-t);return`hsl(${Math.abs(t%360)}, 60%, 50%)`}const nr="doxaRegion",mu="#0098FF",ar="#95a5a6",Ta={Africa:"#ff2e2e",Asia:"#1a8cff",Europe:"#1ee05f","Latin America & Caribbean":"#FFEB3B","Middle East":"#a83dff","No WAGF Region/Bloc":"#1a1a2e","North America & Non-Spanish Caribbean":"#00e0bd",Oceania:"#ff7f11"},Py=Ta,Ea={africa:"#ff2e2e",asia:"#1a8cff",europe:"#1ee05f","latin_america_&_caribbean":"#FFEB3B",middle_east:"#a83dff","north_america_&_non-spanish_caribbean":"#00e0bd",oceania:"#ff7f11",na:"#1a1a2e"};function sr(e){return e?Ea[String(e).toLowerCase()]||ar:mu}const rr={Africa:"#ff2e2e","East Asia":"#1a8cff",Asia:"#1a8cff",Eurasia:"#1ee05f",Europe:"#1ee05f","Latin America":"#FFEB3B","Latin America & Caribbean":"#FFEB3B",Caribbean:"#FFEB3B","Middle East":"#a83dff","North America":"#00e0bd","North America (non-spanish)":"#00e0bd","North America & Non-Spanish Caribbean":"#00e0bd",Pacific:"#ff7f11",Oceania:"#ff7f11","South Asia":"#ff7f11","No WAGF Region/Bloc":"#1a1a2e",Unknown:"#0098FF"};function bu(e){if(!e)return mu;const t=rr[e];return t||ky(e)}function yu(e){var o;const t=e.doxaRegion||((o=e._normalized)==null?void 0:o.doxaRegion);return sr(t)}function ir(){const e=["match",["get",nr]];return Object.entries(Ea).forEach(([t,o])=>{e.push(t,o)}),e.push(ar),e}const _u=ir,Ty=Object.freeze(Object.defineProperty({__proto__:null,DOXA_REGION_COLORS:Py,PALETTE:Ta,PROPERTY_KEY:nr,REGION_COLOR_ALIASES:rr,SLUG_PALETTE:Ea,applyColor:ir,buildColorExpression:_u,default:{name:"DOXA Region",propertyKey:nr,palette:Ta,colors:Ta,slugColors:Ea,aliases:rr,fallback:ar,getColor:yu,applyColor:ir,buildColorExpression:_u,getRegionColor:bu,getRegionColorBySlug:sr},getColor:yu,getRegionColor:bu,getRegionColorBySlug:sr},Symbol.toStringTag,{value:"Module"})),$u="engagementStatus",Jt={notEngaged:"#f03b2d",hasEngagement:"#22c55e"},Ey=Jt,lr={notEngaged:"Unengaged",hasEngagement:"Engaged"},Cy=lr;function vu(e){var n;const t=e.engagementStatus??((n=e._raw)==null?void 0:n.people_committed);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?Jt.hasEngagement:Jt.notEngaged}function cr({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","engagementStatus"]:["get","engagementStatus"];return["case",["==",t,!0],Jt.hasEngagement,["==",t,1],Jt.hasEngagement,Jt.notEngaged]}const Au=cr,Ly=Object.freeze(Object.defineProperty({__proto__:null,ENGAGEMENT_COLORS:Ey,ENGAGEMENT_LABELS:Cy,LABELS:lr,PALETTE:Jt,PROPERTY_KEY:$u,applyColor:cr,buildColorExpression:Au,default:{name:"Engagement Progress",propertyKey:$u,palette:Jt,colors:Jt,labels:lr,getColor:vu,applyColor:cr,buildColorExpression:Au},getColor:vu},Symbol.toStringTag,{value:"Module"})),ur="languageFamily",Ny="#000000",uo={"Indo-European":"#e74c3c",Dravidian:"#ff9800","Afro-Asiatic":"#27ae60","Sino-Tibetan":"#3498db","Niger-Congo":"#9b59b6",Unclassified:"#95a5a6","Nilo-Saharan":"#e91e63","Khoe-Kwadi":"#00bcd4","Austro-Asiatic":"#00bcd4","Kra-Dai":"#8e44ad",Austronesian:"#ff69b4","Hmong-Mien":"#f44336",Turkic:"#ffc107","Nakh-Daghestanian":"#009688",Mongolic:"#795548",Uralic:"#607d8b",Tungusic:"#4caf50",Japonic:"#ff5722",Cariban:"#673ab7",Tupian:"#03a9f4",Tucanoan:"#8bc34a",Maipurean:"#ffc107",Panoan:"#cddc39",Guajiboan:"#9e9e9e",Chibchan:"#ff7043",Quechuan:"#ab47bc",Jean:"#26a69a",Harákmbut:"#7e57c2",Nambikwara:"#42a5f5",Muran:"#66bb6a",Karajá:"#ffa726",Bororoan:"#ef5350",Arauan:"#5c6bc0",Yanomaman:"#26c6da",Yaguan:"#d4e157",Witotoan:"#78909c",Zamucoan:"#8d6e63",Puinavean:"#aed581",Barbacoan:"#4db6ac","Eyak-Athabaskan":"#7986cb","Trans-New Guinea":"#ba68c8",Andamanese:"#4dd0e1","Atlantic-Congo":"#7D3C98",Mande:"#B9770E","Sign Language":"#212121",Creole:"#9575cd","Mixed language":"#a1887f","Language isolate":"#90a4ae",Unknown:"#000000"},My=uo;function Ca(e){return uo[e]||Ny}const xy=(()=>{const e=o=>String(o||"").toLowerCase().trim(),t={};for(const o of Object.keys(uo))t[e(o)]=o;return t})(),Iy={"tai-kadai":"Kra-Dai",none:"Unknown"};function dr(e){if(!e)return"Unknown";const t=String(e).trim(),o=t.toLowerCase();return Iy[o]||xy[o]||t}function Su(e){var t;return Ca(e.languageFamily||((t=e._normalized)==null?void 0:t.languageFamily))}function pr(){const e=["match",["get",ur]];return Object.entries(uo).forEach(([t,o])=>{e.push(t,o)}),e.push("#95a5a6"),e}const wu=pr,Oy=Object.freeze(Object.defineProperty({__proto__:null,LANGUAGE_FAMILY_COLORS:My,PALETTE:uo,PROPERTY_KEY:ur,applyColor:pr,buildColorExpression:wu,canonicalFamilyName:dr,default:{name:"Language Family",propertyKey:ur,palette:uo,colors:uo,getColor:Su,applyColor:pr,buildColorExpression:wu,getLanguageFamilyColor:Ca,canonicalFamilyName:dr},defaultFamilyColor:"#95a5a6",getColor:Su,getLanguageFamilyColor:Ca,languageFamilyColors:uo},Symbol.toStringTag,{value:"Module"})),ku="peoplePraying",Ko=144,po={noPrayer:"#f03b2d",hasPrayer:"#f0c64a",fullPrayer:"#22c55e"},Fy=po,gr={noPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayer:"Has Full Prayer Coverage"},Ry=gr;function La(e){var n;const t=(e==null?void 0:e.peoplePraying)??((n=e==null?void 0:e._raw)==null?void 0:n.people_praying)??null,o=Number(t)||0;return o>=Ko?"fullPrayer":o>0?"hasPrayer":"noPrayer"}function fr(e){return po[La(e)]}function Pu(e){var o;const t=(e==null?void 0:e.peoplePraying)??((o=e==null?void 0:e._raw)==null?void 0:o.people_praying)??null;return t!==null&&t>0}function Tu(e){return La(e)==="fullPrayer"}function Eu(e){return fr(e)}function hr({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","peoplePraying"]:["get","peoplePraying"];return["case",[">=",t,Ko],po.fullPrayer,[">",t,0],po.hasPrayer,po.noPrayer]}const Cu=hr,Dy=Object.freeze(Object.defineProperty({__proto__:null,FULL_PRAYER_THRESHOLD:Ko,LABELS:gr,PALETTE:po,PRAYER_COLORS:Fy,PRAYER_LABELS:Ry,PROPERTY_KEY:ku,applyColor:hr,buildColorExpression:Cu,checkHasFullPrayer:Tu,checkHasPrayer:Pu,default:{name:"Prayer Progress",propertyKey:ku,palette:po,colors:po,labels:gr,threshold:Ko,getColor:Eu,applyColor:hr,buildColorExpression:Cu,getPrayerLevel:La,getPrayerColor:fr,checkHasPrayer:Pu,checkHasFullPrayer:Tu},getColor:Eu,getPrayerColor:fr,getPrayerLevel:La},Symbol.toStringTag,{value:"Module"})),Lu="religion",mr="#94a3b8",br={C:"Christianity",M:"Islam",H:"Hinduism",B:"Buddhism",E:"Ethnoreligion",J:"Judaism",S:"Sikhism",N:"Unaffiliated",O:"Other",U:"Unknown"},ht={C:"#3b82f6",M:"#ef4444",H:"#f59e0b",B:"#facc15",E:"#84cc16",J:"#a855f7",S:"#ec4899",N:"#71717a",O:"#ff6b2b",U:"#94a3b8"};function Nu(e){if(!e||typeof e!="string")return"U";const t=e.charAt(0).toUpperCase();return br[t]?t:"U"}function Mu(e){var o,n,a;const t=(e==null?void 0:e.religion)||((n=(o=e==null?void 0:e._raw)==null?void 0:o.religion)==null?void 0:n.value)||((a=e==null?void 0:e._raw)==null?void 0:a.religion);return ht[Nu(t)]||mr}function yr(){return["match",["slice",["coalesce",["get","religion"],""],0,1],"C",ht.C,"M",ht.M,"H",ht.H,"B",ht.B,"E",ht.E,"J",ht.J,"S",ht.S,"N",ht.N,"O",ht.O,mr]}const xu=yr,jy=Object.freeze(Object.defineProperty({__proto__:null,PALETTE:ht,PROPERTY_KEY:Lu,RELIGION_FAMILIES:br,applyColor:yr,buildColorExpression:xu,default:{name:"Religion",propertyKey:Lu,palette:ht,families:br,getColor:Mu,applyColor:yr,buildColorExpression:xu,fallback:mr},getColor:Mu,getReligionFamily:Nu},Symbol.toStringTag,{value:"Module"})),Iu="resourceType",go={bible:"#3498db",jesusFilm:"#20c997",radio:"#9b59b6",gospel:"#f39c12",audio:"#1abc9c",stories:"#e74c3c",hasResources:"#27ae60",noResources:"#2c3e50"},By=go,Tn=["bible","jesusFilm","radio","gospel","audio","stories"],_r={bible:"Bible",jesusFilm:"Jesus Film",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",hasResources:"Has Resources",noResources:"No Resources"},zy=_r;function En(e){return{bible:"Bible",jesusFilm:"Jesus",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories"}[e]}function Ou(e){var t;for(const o of Tn)if((e[o]||((t=e._raw)==null?void 0:t[En(o)]))==="Available")return go.hasResources;return go.noResources}function Fu(e){var t;for(const o of Tn)if((e[o]||((t=e._raw)==null?void 0:t[En(o)]))==="Available")return!0;return!1}function Ru(e){var t;for(const o of Tn)if((e[o]||((t=e._raw)==null?void 0:t[En(o)]))==="Available")return o;return"noResources"}function $r(){return["case",["any",["==",["get","bible"],"Available"],["==",["get","jesusFilm"],"Available"],["==",["get","radio"],"Available"],["==",["get","gospel"],"Available"],["==",["get","audio"],"Available"],["==",["get","stories"],"Available"]],go.hasResources,go.noResources]}const Du=$r,Gy=Object.freeze(Object.defineProperty({__proto__:null,NAMES:_r,PALETTE:go,PROPERTY_KEY:Iu,RESOURCE_COLORS:By,RESOURCE_NAMES:zy,RESOURCE_PRIORITY:Tn,applyColor:$r,buildColorExpression:Du,default:{name:"Gospel Resources",propertyKey:Iu,palette:go,colors:go,names:_r,priority:Tn,getColor:Ou,applyColor:$r,buildColorExpression:Du,hasAnyResource:Fu,getResourceType:Ru,getCSVColumn:En},getCSVColumn:En,getColor:Ou,getResourceType:Ru,hasAnyResource:Fu},Symbol.toStringTag,{value:"Module"})),ju="region",vr="#6d766e",Bu={africa:"Africa",asia:"Asia",europe:"Europe","latin_america_&_caribbean":"Latin America & Caribbean",middle_east:"Middle East","north_america_&_non-spanish_caribbean":"North America & Non-Spanish Caribbean",oceania:"Oceania"},Cn={africa:"#ff2e2e",asia:"#1a8cff",europe:"#1ee05f","latin_america_&_caribbean":"#FFEB3B",middle_east:"#a83dff","north_america_&_non-spanish_caribbean":"#00e0bd",oceania:"#ff7f11"},Ar=Object.keys(Cn);function zu(e){var o,n,a;const t=(e==null?void 0:e.region)||((n=(o=e==null?void 0:e._raw)==null?void 0:o.wagf_region)==null?void 0:n.value)||((a=e==null?void 0:e._raw)==null?void 0:a.wagf_region);return Cn[t]||vr}function Sr(){const e=["match",["coalesce",["get","region"],""]];for(const t of Ar)e.push(t,Cn[t]);return e.push(vr),e}const Gu=Sr,Uy=Object.assign({"./adoption.js":Sy,"./affinity-block.js":wy,"./doxa-region.js":Ty,"./engagement.js":Ly,"./language-family.js":Oy,"./prayer-progress.js":Dy,"./religion.js":jy,"./resource.js":Gy,"./wagf-region.js":Object.freeze(Object.defineProperty({__proto__:null,PALETTE:Cn,PROPERTY_KEY:ju,REGION_ORDER:Ar,WAGF_REGIONS:Bu,applyColor:Sr,buildColorExpression:Gu,default:{name:"WAGF Region",propertyKey:ju,palette:Cn,regions:Bu,order:Ar,getColor:zu,applyColor:Sr,buildColorExpression:Gu,fallback:vr},getColor:zu},Symbol.toStringTag,{value:"Module"}))}),Ky=e=>e.replace(/-([a-z0-9])/g,(t,o)=>o.toUpperCase()),Hy=e=>e.replace(/-/g,"_").toUpperCase(),Na={...{STATUS:"status",CUSTOM:"custom"}},wr={};function Uu(e){for(const t of Object.keys(e).sort()){const o=t.split("/").pop().replace(/\.js$/,"");if(o.startsWith("_")||o.startsWith("."))continue;const n=e[t].default;if(!n)continue;const a=Ky(o);Na[Hy(o)]=a,wr[a]=n}}Uu(Uy);function Wy(e){e&&Uu(e)}function kr(e){return wr[e]||wr[Na.LANGUAGE_FAMILY]}function Ku(e,t={}){return kr(e).applyColor(t)}const qy=Object.assign({"./demo-map.vue":()=>hd(()=>Promise.resolve().then(()=>w$),void 0)});Wy(Object.assign({"./src/colors/single-color.js":bd}));const Vy=Ug($y,{configureApp(e){e.use(Yg());const t=sy();e.use(t),e.provide("appI18n",t),e.provide("profileModules",qy)}});typeof customElements<"u"&&!customElements.get("demo-map")&&customElements.define("demo-map",Vy);const Yy="rgba(120, 128, 134, 0.28)",Hu="36px",Wu=()=>{};function Xy(e,t={}){const{enabled:o=!0}=t;if(!o||!e)return Wu;const n=Array.from(e.querySelectorAll(".map-scroll-edge"));if(!n.length)return Wu;const a=w=>w.classList.contains("map-scroll-edge--left");for(const w of n)w.style.background=`linear-gradient(${a(w)?"to right":"to left"}, ${Yy} ${Hu}, transparent ${Hu})`,w.style.opacity="0",w.style.transition="opacity 0.16s ease",w.style.userSelect="none",w.style.webkitUserSelect="none";const s=w=>{w.style.opacity="1"},r=w=>{w.style.opacity="0"},i=()=>n.find(w=>!a(w))||null,l=new Set;let c=!1,u=null;const g=()=>{for(const w of n)l.has(w)||r(w)},b=()=>{const w=i();w&&(s(w),u&&clearTimeout(u),u=setTimeout(g,250))},v=()=>b(),P=w=>{if(!(w.touches&&w.touches.length===1))return;const f=w.target;f&&f.classList&&f.classList.contains("map-scroll-edge")||b()},T=()=>{u&&clearTimeout(u),g()};e.addEventListener("wheel",v,{passive:!0}),e.addEventListener("touchmove",P,{passive:!0}),e.addEventListener("touchend",T,{passive:!0}),e.addEventListener("touchcancel",T,{passive:!0});const x=()=>{c||b()};typeof window<"u"&&window.addEventListener("scroll",x,{passive:!0});const I=[];for(const w of n){const f=()=>{l.add(w),s(w)},y=()=>{l.delete(w),r(w)},E=()=>{c=!0,s(w)},C=()=>{c=!1,r(w)};w.addEventListener("mouseenter",f),w.addEventListener("mouseleave",y),w.addEventListener("touchstart",E,{passive:!0}),w.addEventListener("touchend",C,{passive:!0}),I.push(()=>{w.removeEventListener("mouseenter",f),w.removeEventListener("mouseleave",y),w.removeEventListener("touchstart",E),w.removeEventListener("touchend",C)})}return function(){u&&(clearTimeout(u),u=null),e.removeEventListener("wheel",v),e.removeEventListener("touchmove",P),e.removeEventListener("touchend",T),e.removeEventListener("touchcancel",T),typeof window<"u"&&window.removeEventListener("scroll",x);for(const f of I)f();for(const f of n)r(f)}}const Jy=Object.fromEntries([{id:"midnight-glow",label:"Midnight Glow",mood:"the prayer-map dark — pins glow like embers",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"night",maplibre:"https://tiles.openfreemap.org/styles/fiord",bestFor:["doxa-simple-map","my-upg-100-list"]},{id:"daylight",label:"Daylight",mood:"the same Standard world, lights on",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"day",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["doxa-research-map","gospel-resources"]},{id:"dawn",label:"Dawn",mood:"soft warm horizon — hopeful, quiet",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"dawn",maplibre:"https://tiles.openfreemap.org/styles/positron",bestFor:["doxa-simple-map"]},{id:"dusk",label:"Dusk",mood:"blue hour — calm contrast for bright pins",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"dusk",maplibre:"https://tiles.openfreemap.org/styles/fiord",bestFor:["my-upg-100-list"]},{id:"paper",label:"Paper",mood:"near-white minimal — data reads like print",mapbox:"mapbox://styles/mapbox/light-v11",maplibre:"https://tiles.openfreemap.org/styles/positron",bestFor:["research-dashboard","cities-internet"]},{id:"ink",label:"Ink",mood:"near-black minimal — maximum pin contrast",mapbox:"mapbox://styles/mapbox/dark-v11",maplibre:"https://tiles.openfreemap.org/styles/dark",bestFor:["my-upg-100-list","cities-internet"]},{id:"streetlife",label:"Street Life",mood:"full street detail — city-scale work",mapbox:"mapbox://styles/mapbox/streets-v12",maplibre:"https://tiles.openfreemap.org/styles/bright",bestFor:["cities-internet","key-cities"]},{id:"terrain",label:"Terrain",mood:"relief + parks — where people actually live",mapbox:"mapbox://styles/mapbox/outdoors-v12",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["doxa-research-map","country-posters"]},{id:"satellite",label:"Satellite",mood:"imagery — the real ground",mapbox:"mapbox://styles/mapbox/satellite-v9",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["country-posters"]},{id:"hybrid",label:"Hybrid",mood:"imagery + labels — orientation without losing ground truth",mapbox:"mapbox://styles/mapbox/satellite-streets-v12",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["key-cities"]},{id:"wayfinder-day",label:"Wayfinder Day",mood:"high-legibility navigation palette",mapbox:"mapbox://styles/mapbox/navigation-day-v1",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["gospel-resources"]},{id:"wayfinder-night",label:"Wayfinder Night",mood:"dark navigation — dashboards at night",mapbox:"mapbox://styles/mapbox/navigation-night-v1",maplibre:"https://tiles.openfreemap.org/styles/fiord",bestFor:["research-dashboard"]},{id:"galaxy",label:"Galaxy",mood:"the day side of Earth floating in space — normal land, blue oceans, black void behind the sphere",mapbox:"mapbox://styles/mapbox/standard",maplibre:"https://tiles.versatiles.org/assets/styles/colorful/style.json",bestFor:["research-dashboard","my-upg-100-list"]}].map(e=>[e.id,e]));function Zy(e,t="mapbox"){const o=Jy[e];return o?t==="maplibre"?{style:o.maplibre,lightPreset:void 0,paint:o.paint}:{style:o.mapbox,lightPreset:o.lightPreset,paint:o.paint}:/^(mapbox:\/\/|https?:\/\/)/.test(e)?{style:e,lightPreset:void 0,paint:void 0}:{style:void 0,lightPreset:void 0,paint:void 0}}function Qy(e,t){if(!e||!Array.isArray(t))return[];const o=[];for(const n of t)if(!(!n||!n.layer||!n.prop))try{if(!e.getLayer(n.layer))continue;e.setPaintProperty(n.layer,n.prop,n.value),o.push(n.layer+"."+n.prop)}catch{}return o}const e_=["mapbox","maplibre"],t_="auto";function qu(e){return e&&typeof e=="object"&&"value"in e&&!("provider"in e)&&!("profile"in e)?e.value:e}function Vu(e){const t=o=>typeof o=="string"&&!!o.trim()&&!/^YOUR_/.test(o.trim());return t(e==null?void 0:e.tk)||/^https?:\/\//i.test(String((e==null?void 0:e.tokenUrl)||""))?!0:typeof window>"u"?!1:t(window.MAP_TOKEN)||t(window.__doxaMapToken)||!!window.__doxaMapTokenPending}function Yu(e,{token:t}={}){const o=qu(e);return Xu(o)||(Vu(o)||Vu({tk:t})?"mapbox":"maplibre")}function Xu(e){const t=qu(e),o=t==null?void 0:t.provider,n=typeof location<"u"?new URLSearchParams(location.search).get("provider"):void 0,a=typeof window<"u"?window.MAP_PROVIDER:void 0,s=String(o||n||a||t_).toLowerCase().trim();return e_.includes(s)?s:""}function o_(e){return typeof window<"u"&&!!window.mapboxgl&&e instanceof window.mapboxgl.Map}function Ju(e){if(typeof window>"u")return;const t=window.maplibregl,o=window.mapboxgl;return t&&t.Map&&e instanceof t.Map?t:o&&o.Map&&e instanceof o.Map?o:o||t}function n_(e,t){if(!e||!t||typeof e.setProjection!="function")return!1;const o=typeof window<"u"?window.maplibregl:null,n=!!(o&&o.Map&&e instanceof o.Map);try{return e.setProjection(n?{type:t}:t),!0}catch{return!1}}function Ho(e,t="circle"){return o_(e)?{[`${t}-emissive-strength`]:1}:{}}const Ln={mapboxGlJs:{url:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js",integrity:"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ"},mapboxGlCss:{url:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.css",integrity:"sha384-rp1X/jJ9MpWPef9OimfXhOaOc4Gzs87yQvF+ajwY6X2H4PTeHNycNlLWiWvj7ehV"},maplibreGlJs:{url:"https://cdn.jsdelivr.net/npm/maplibre-gl@5.24.0/dist/maplibre-gl.js",integrity:"sha384-5+cfbwT0iiub6VsQAdn6yz16nr6sDiQoHx6tm4O8OVYXHYOxcffFmCJBL0dgdvGp"},maplibreGlCss:{url:"https://cdn.jsdelivr.net/npm/maplibre-gl@5.24.0/dist/maplibre-gl.css",integrity:"sha384-uTttxo/aOKbdE5RlD/SPzSDoDmNvGlUYPjONi2MN/b7c9HPSvW07OIuyP7uL6jxK"},mapboxGeocoderJs:{url:"https://api.mapbox.com/mapbox-gl-js/plugins/mapbox-gl-geocoder/v5.0.0/mapbox-gl-geocoder.min.js",integrity:"sha384-Lx9WK8XhZk57czwxt6B6nyaDHB5Ayrcrsu4Fw4bCp/Ot/QLOsUZ0xYqLOpOOSXZw"},mapboxGeocoderCss:{url:"https://api.mapbox.com/mapbox-gl-js/plugins/mapbox-gl-geocoder/v5.0.0/mapbox-gl-geocoder.css",integrity:"sha384-1KNhwJNCQTr0DCi/5/OnQcFytgycxTahxNZaqKbAtqmY8bUhu26qxXqvDGXXwplS"},maplibreGeocoderJs:{url:"https://cdn.jsdelivr.net/npm/@maplibre/maplibre-gl-geocoder@1.9.4/dist/maplibre-gl-geocoder.min.js",integrity:"sha384-RGV5vfoJd7alk8HE+71IyVfu19ciH1FKA15+AuXs6OeBM2npXrmTPFqG23yMiHXi"},maplibreGeocoderCss:{url:"https://cdn.jsdelivr.net/npm/@maplibre/maplibre-gl-geocoder@1.9.4/dist/maplibre-gl-geocoder.css",integrity:"sha384-UkDpPApjTpHJHpcJiSNAmbobh30W0/dmt0DoKm4V8CWYRYvQ/Jhd/ijFz0tFdVnH"},d3:{url:"https://cdn.jsdelivr.net/npm/d3@7.9.0/dist/d3.min.js",integrity:"sha384-CjloA8y00+1SDAUkjs099PVfnY2KmDC2BZnws9kh8D/lX1s46w6EPhpXdqMfjK6i"}};function Pr(e,t){const o=Object.values(Ln).find(n=>n.url===t);return o&&(e.integrity=o.integrity,e.crossOrigin="anonymous"),e}const Zu={mapbox:"https://api.mapbox.com/mapbox-gl-js/plugins/mapbox-gl-rtl-text/v0.3.0/mapbox-gl-rtl-text.js",maplibre:"https://cdn.jsdelivr.net/npm/@mapbox/mapbox-gl-rtl-text@0.3.0/dist/mapbox-gl-rtl-text.js"};function a_(e){return!!e&&typeof window<"u"&&e===window.maplibregl}function s_(e){if(typeof window>"u")return!1;const t=e?[e]:[window.maplibregl,window.mapboxgl].filter(Boolean);let o=!1;for(const n of t)if(!(!n||!n.setRTLTextPlugin))try{if(a_(n)){if(n.getRTLTextPluginStatus&&n.getRTLTextPluginStatus()!=="unavailable")continue;const a=n.setRTLTextPlugin(Zu.maplibre,!0);a&&a.catch&&a.catch(()=>{})}else n.setRTLTextPlugin(Zu.mapbox,null,!0);o=!0}catch{}return o}const r_=/\[\s*"get"\s*,\s*"name(?::latin|:nonlatin|:en|_en|_int)?"\s*\]|\{name(?::latin|:nonlatin|:en|_en|_int)?\}/,Qu=new WeakMap;function i_(e){return typeof window<"u"&&!!window.maplibregl&&e instanceof window.maplibregl.Map}function ed(e,t){if(!e||!t)return 0;const o=String(t).split("-")[0].toLowerCase();try{if(!i_(e))return typeof e.setLanguage=="function"&&e.setLanguage(o),0;const n=e.getStyle&&e.getStyle();if(!n||!Array.isArray(n.layers))return 0;let a=Qu.get(e);a||(a=new Map,Qu.set(e,a));let s=0;for(const r of n.layers){if(r.type!=="symbol"||!r.layout||r.layout["text-field"]==null)continue;const i=r.layout["text-field"],l=JSON.stringify(i);if(l.startsWith('["coalesce",["get","name:')){if(!a.has(r.id))continue}else{if(!r_.test(l))continue;a.set(r.id,i)}const c=o==="en"?a.get(r.id):["coalesce",["get","name:"+o],["get","name:latin"],["get","name"]];e.setLayoutProperty(r.id,"text-field",c),s++}return s}catch{return 0}}const Wo={mapbox:{global:"mapboxgl",js:Ln.mapboxGlJs.url,css:Ln.mapboxGlCss.url},maplibre:{global:"maplibregl",js:Ln.maplibreGlJs.url,css:Ln.maplibreGlCss.url}},l_={"Map.Title":"map","Marker.Title":"marker","Popup.Close":"closePopup","NavigationControl.ZoomIn":"zoomIn","NavigationControl.ZoomOut":"zoomOut","NavigationControl.ResetBearing":"resetBearing","AttributionControl.ToggleAttribution":"toggleAttribution","AttributionControl.MapFeedback":"mapFeedback","FullscreenControl.Enter":"enterFullscreen","FullscreenControl.Exit":"exitFullscreen","GeolocateControl.FindMyLocation":"findMyLocation","GeolocateControl.LocationNotAvailable":"locationNotAvailable","GlobeControl.Enable":"enableGlobe","GlobeControl.Disable":"disableGlobe","CooperativeGesturesHandler.WindowsHelpText":"ctrlScroll","CooperativeGesturesHandler.MacHelpText":"cmdScroll","CooperativeGesturesHandler.MobileHelpText":"twoFingers","ScrollZoomBlocker.CtrlMessage":"ctrlScroll","ScrollZoomBlocker.CmdMessage":"cmdScroll","TouchPanBlocker.Message":"twoFingers"};function td(e){const t={};for(const[o,n]of Object.entries(l_)){const a=iy(`mapui.${n}`,e);a&&(t[o]=a)}return t}function od(e){if(typeof window>"u")return;const t=window,o=()=>{try{const n=e.getContainer().querySelector(".mapboxgl-ctrl-logo, .maplibregl-ctrl-logo");n&&(n.style.display="none")}catch{}};if(t.__doxaLogoOwner&&t.__doxaLogoOwner!==e){e.once("load",o),o();return}t.__doxaLogoOwner=e,e.once("remove",()=>{t.__doxaLogoOwner===e&&(t.__doxaLogoOwner=null)})}const c_=Wo.mapbox.css,u_="https://tiles.openfreemap.org/styles/liberty",d_="https://tiles.openfreemap.org/styles/fiord";function Tr(e){var o;const t=((o=Wo[e])==null?void 0:o.global)||Wo.mapbox.global;return typeof window<"u"?window[t]:void 0}async function p_(e){const t=Wo[e]||Wo.mapbox;if(Tr(e)||typeof document>"u")return;if(!document.querySelector(`link[href="${t.css}"]`)){const n=document.createElement("link");n.rel="stylesheet",n.href=t.css,Pr(n,t.css),document.head.appendChild(n)}const o=document.querySelector(`script[src="${t.js}"]`);if(o){if(Tr(e))return;await new Promise(n=>{o.addEventListener("load",n,{once:!0}),o.addEventListener("error",n,{once:!0})});return}await new Promise((n,a)=>{const s=document.createElement("script");s.src=t.js,Pr(s,t.js),s.async=!1,s.addEventListener("load",n,{once:!0}),s.addEventListener("error",()=>a(new Error(`[useMapInstance] Failed to load ${e} engine script`)),{once:!0}),document.head.appendChild(s)})}async function g_(e,t){if(!e)return;const o=e.getRootNode();if(!(o instanceof ShadowRoot))return;const n=r=>new Promise(i=>setTimeout(i,r)),a=o.querySelector(`link[href="${t}"]`);if(a){if(a.sheet)return;await Promise.race([new Promise(r=>{a.addEventListener("load",r,{once:!0}),a.addEventListener("error",r,{once:!0})}),n(2e3)]);return}const s=document.createElement("link");s.rel="stylesheet",s.href=t,Pr(s,t),await Promise.race([new Promise(r=>{s.addEventListener("load",r,{once:!0}),s.addEventListener("error",r,{once:!0}),o.prepend(s)}),n(2e3)])}function f_(e,t){return typeof e=="string"&&/^https?:\/\//.test(e)?e:t==="night"||t==="dusk"?d_:u_}const h_=85.0511,Er=-2,m_=0,b_=-60;function nd(e){return(1-Math.log(Math.tan(Math.PI/4+e*Math.PI/180/2))/Math.PI)/2}function y_(e,t,o,n){if(!e||e<=0||!t||t<=0)return m_;const a=Math.log2(e/512),s=nd(n)-nd(h_),r=Math.log2(t/(512*s)),i=Math.max(a,r);return Math.max(Er,Math.min(i,(o??18)-1))}function __({containerRef:e,accessToken:t,style:o,config:n=void 0,provider:a=void 0,center:s=[20,10],zoom:r=2,bounds:i=void 0,fitBoundsOptions:l=void 0,minZoom:c=void 0,skipWorldFloor:u=!1,maxZoom:g=18,pitch:b=0,bearing:v=0,renderWorldCopies:P=!0,showEdgeBorders:T=!0,southCutoff:x=b_,maxBounds:I=void 0}){const w=Za(null),f=ie(!1);let y=null,E=null,C=null,_=null;try{_=Ee("profileConfig",null)}catch{}const A=!a&&!Xu(_);a=a||Yu(_,{token:t});let m=a==="maplibre",M=null;try{M=Ee("lang",null)}catch{}const D=()=>{const Q=M&&typeof M=="object"&&"value"in M?M.value:M;if(typeof Q=="string"&&Q)return Q;const F=_&&typeof _=="object"&&"value"in _?_.value:_;if(F&&(F.locale||F.lang))return String(F.locale||F.lang);try{const R=new URLSearchParams(location.search);return R.get("lang")||R.get("locale")||document.documentElement.lang||"en"}catch{return"en"}};async function G(){var V;if(A&&!m&&!t&&typeof window<"u"&&window.__doxaMapTokenPending){if(await window.__doxaMapTokenPending,!e.value)return;typeof window.MAP_TOKEN=="string"&&window.MAP_TOKEN||(a="maplibre",m=!0)}const Q=Zy(o,a),F=Q.style||o;if(!e.value){console.error("containerRef.value is null — call initializeMap() inside onMounted()");return}const R=()=>!e.value;if(await p_(a),R())return;const q=Tr(a);if(!q){console.error(`[useMapInstance] ${m?"maplibregl":"mapboxgl"} is not available. Add the ${m?"MapLibre":"Mapbox"} GL JS script to your page.`);return}if(s_(q),!m){if(!t&&typeof window<"u"&&window.__doxaMapTokenPending&&(await window.__doxaMapTokenPending,R()))return;if(!t&&typeof window<"u"&&typeof window.MAP_TOKEN=="string"&&window.MAP_TOKEN&&(t=window.MAP_TOKEN),!t){console.error('No Mapbox access token provided. Pass "tk" in profile-config JSON or set window.MAP_TOKEN.');return}if(!t.startsWith("pk.")){console.error('Mapbox token looks invalid (expected "pk." prefix). Got:',t.slice(0,10)+"...");return}}if(await g_(e.value,m?Wo.maplibre.css:c_),R()||(await new Promise(J=>requestAnimationFrame(J)),R()))return;const ee=e.value,he=ee.clientWidth,De=ee.clientHeight;if(he===0||De===0){console.error(`[useMapInstance] Container has ZERO dimensions (${he}×${De}). Map will be invisible. Check that parent elements have CSS sizing.`);let J=ee.parentElement,H=0;for(;J&&H<5;)J=J.parentElement,H++}const Le=t;m||(q.accessToken=Le);const Ne=()=>typeof window<"u"&&window.innerWidth>=1024,tt=(J,H)=>{if(u)return typeof c=="number"?c:Er;if(!Ne())return Er;const se=y_(J,H,g,x);return typeof c=="number"?Math.max(c,se):se},st=tt(ee.clientWidth,ee.clientHeight),At=Q.lightPreset||(()=>{var J;try{const H=typeof n=="function"?n():n;return(J=H==null?void 0:H.basemap)==null?void 0:J.lightPreset}catch{return}})();if(m){w.value=new q.Map({container:e.value,style:f_(F,At),locale:td(D()),center:s,zoom:r,minZoom:st,maxZoom:g,pitch:b,bearing:v,dragRotate:!1,renderWorldCopies:P,...i?{bounds:i,...l?{fitBoundsOptions:l}:{}}:{},...I?{maxBounds:I}:{},attributionControl:!0,logoPosition:typeof window<"u"&&window.matchMedia&&window.matchMedia("(max-width: 767px)").matches?"bottom-right":"bottom-left"}),od(w.value);try{e.value.__doxaMap=w.value}catch{}}else{const J=typeof n=="function"?n():n;w.value=new q.Map({accessToken:Le,container:e.value,style:F,locale:td(D()),...J?{config:J}:{},center:s,zoom:r,minZoom:st,maxZoom:g,pitch:b,bearing:v,dragRotate:!1,touchPitch:!1,renderWorldCopies:P,...i?{bounds:i,...l?{fitBoundsOptions:l}:{}}:{},...I?{maxBounds:I}:{},attributionControl:!0,logoPosition:typeof window<"u"&&window.matchMedia&&window.matchMedia("(max-width: 767px)").matches?"bottom-right":"bottom-left"}),od(w.value);try{e.value.__doxaMap=w.value}catch{}}try{let J=!1;w.value.on("error",H=>{var S,$;const se=((S=H==null?void 0:H.error)==null?void 0:S.status)??(H==null?void 0:H.status),h=String((($=H==null?void 0:H.error)==null?void 0:$.url)||(H==null?void 0:H.sourceId)||"");se!==401&&se!==403||J||(J=!0,console.error(`[doxa-maps] Mapbox returned ${se} for a TILE request while the style loaded fine. That is a URL RESTRICTION on the access token, not a bad token and not a bug in this map. Add this page's origin (${typeof location<"u"?location.origin:"this origin"}) to the token's URL restrictions in the Mapbox account. The map will keep its data layer and stay blank underneath until then.`+(h?` First failing request: ${h.slice(0,120)}`:"")))})}catch{}try{w.value.touchZoomRotate.disableRotation()}catch{}C=Xy(((V=e.value)==null?void 0:V.parentElement)||null,{enabled:T});let We=st,Me=null;y=()=>{const J=w.value;if(!J)return;const H=tt(ee.clientWidth,ee.clientHeight);H!==We&&(We=H,J.setMinZoom(H)),J.getZoom()<H?(Me&&clearTimeout(Me),Me=setTimeout(()=>{Me=null;const se=w.value;if(!se)return;const h=tt(ee.clientWidth,ee.clientHeight);if(se.getZoom()<h)try{se.jumpTo({zoom:h})}catch{se.setZoom(h)}},150)):Me&&(clearTimeout(Me),Me=null)},E=()=>{Me&&(clearTimeout(Me),Me=null)},w.value.on("resize",y),typeof window<"u"&&(window.addEventListener("resize",y),window.addEventListener("orientationchange",y)),w.value.on("style.load",()=>{if(w.value&&ed(w.value,D()),Q.paint&&w.value){const J=Qy(w.value,Q.paint);console.info("[useMapInstance] style paint applied ("+a+"):",J.join(", ")||"NONE MATCHED")}requestAnimationFrame(()=>{var J;(J=w.value)==null||J.resize(),w.value&&w.value.setMinZoom(tt(ee.clientWidth,ee.clientHeight)),f.value=!0})})}function Y(){if(w.value){if(y&&(w.value.off("resize",y),typeof window<"u"&&(window.removeEventListener("resize",y),window.removeEventListener("orientationchange",y)),y=null),E){try{E()}catch{}E=null}C&&(C(),C=null),w.value.remove(),w.value=null,f.value=!1}}if(M&&typeof M=="object"&&"value"in M)try{pt(M,()=>{w.value&&f.value&&ed(w.value,D())})}catch{}return{map:w,isMapReady:f,initializeMap:G,destroy:Y}}const ad="doxa-prayed-local",$_=7*24*60*60*1e3;function v_(){try{const e=localStorage.getItem(ad);if(!e)return{};const t=JSON.parse(e);return t&&typeof t=="object"?t:{}}catch{return{}}}function A_(e){try{localStorage.setItem(ad,JSON.stringify(e))}catch{}}function S_(){const e=Date.now(),t=v_();let o=!1;for(const[n,a]of Object.entries(t))(typeof a!="number"||e-a>$_)&&(delete t[n],o=!0);return o&&A_(t),new Set(Object.keys(t))}function w_(e){const t=S_();return!t.size||!Array.isArray(e)?e:e.map(o=>(Number(o&&o.peoplePraying)||0)>0||!o||!t.has(o.slug)?o:{...o,peoplePraying:1})}const Ve={Chamacoco:"Zamucoan",Ninam:"Yanomaman",Yagua:"Yaguan",Muinane:"Witotoan",Finnish:"Uralic","Hill Mari":"Uralic",Mansi:"Uralic","Meadow Mari":"Uralic","North Saami":"Uralic",Carabayo:"Unclassified",Kujarge:"Unclassified",Shabo:"Unclassified",Ainu:"Turkic",Kazakh:"Turkic","Khorasani Turkish":"Turkic",Kyrgyz:"Turkic","Northern Uzbek":"Turkic","South Azerbaijani":"Turkic",Turkish:"Turkic",Tuvan:"Turkic",Uyghur:"Turkic",Amundava:"Tupian",Araweté:"Tupian","Asurini of Xingú":"Tupian","Avá-Canoeiro":"Tupian",Awetí:"Tupian",Kamayurá:"Tupian",Karo:"Tupian",Morerebi:"Tupian",Tenharim:"Tupian","Uru-Eu-Wau-Wau":"Tupian","Uru-Pa-In":"Tupian",Wayampi:"Tupian","Zo’é":"Tupian",Evenki:"Tungusic",Xibe:"Tungusic",Carapana:"Tucanoan",Cubeo:"Tucanoan",Desano:"Tucanoan",Macuna:"Tucanoan",Piratapuyo:"Tucanoan",Siona:"Tucanoan",Siriano:"Tucanoan",Tucano:"Tucanoan",Tuyuca:"Tucanoan",Waimaha:"Tucanoan",Tay:"Trans-New Guinea",Adi:"Sino-Tibetan",Akha:"Sino-Tibetan","Amdo Tibetan":"Sino-Tibetan",Axi:"Sino-Tibetan",Biyo:"Sino-Tibetan","Boro (India)":"Sino-Tibetan",Brokkat:"Sino-Tibetan",Bugun:"Sino-Tibetan",Byangsi:"Sino-Tibetan","Central Lalo":"Sino-Tibetan","Central Tibetan":"Sino-Tibetan",Chak:"Sino-Tibetan",Chalikha:"Sino-Tibetan",Chaudangsi:"Sino-Tibetan",Chocangacakha:"Sino-Tibetan",Darlong:"Sino-Tibetan",Dhimal:"Sino-Tibetan","Digaro-Mishmi":"Sino-Tibetan",Dzalakha:"Sino-Tibetan","Eastern Nisu":"Sino-Tibetan",Ersu:"Sino-Tibetan",Gahri:"Sino-Tibetan",Gongduk:"Sino-Tibetan",Gyalsumdo:"Sino-Tibetan",Hani:"Sino-Tibetan","Idu-Mishmi":"Sino-Tibetan",Kaike:"Sino-Tibetan",Kanashi:"Sino-Tibetan",Katso:"Sino-Tibetan",Khamba:"Sino-Tibetan",Koireng:"Sino-Tibetan",Kucong:"Sino-Tibetan",Kurtokha:"Sino-Tibetan",Ladakhi:"Sino-Tibetan",Lakha:"Sino-Tibetan","Lang’e":"Sino-Tibetan",Lhokpu:"Sino-Tibetan",Lolopo:"Sino-Tibetan",Lunanakha:"Sino-Tibetan","Mandarin Chinese":"Sino-Tibetan",Meitei:"Sino-Tibetan","Miju-Mishmi":"Sino-Tibetan",Mpi:"Sino-Tibetan",Na:"Sino-Tibetan",Namuyi:"Sino-Tibetan",Narua:"Sino-Tibetan",Naxi:"Sino-Tibetan","Northern Muji":"Sino-Tibetan",Nuosu:"Sino-Tibetan",Nupbikha:"Sino-Tibetan",Nyenkha:"Sino-Tibetan",Olekha:"Sino-Tibetan",Pahari:"Sino-Tibetan",Pattani:"Sino-Tibetan","Phana’":"Sino-Tibetan",Phula:"Sino-Tibetan",Phunoi:"Sino-Tibetan",Puma:"Sino-Tibetan",Puroik:"Sino-Tibetan",Raji:"Sino-Tibetan",Rawat:"Sino-Tibetan",Sani:"Sino-Tibetan",Sherdukpen:"Sino-Tibetan",Sherpa:"Sino-Tibetan",Shuhi:"Sino-Tibetan",Sila:"Sino-Tibetan",Singpho:"Sino-Tibetan",Sunwar:"Sino-Tibetan","Tawang Monpa":"Sino-Tibetan",Tseku:"Sino-Tibetan",Tshangla:"Sino-Tibetan",Usoi:"Sino-Tibetan","Western Minyag":"Sino-Tibetan","Wusa Nasu":"Sino-Tibetan","Xiang Chinese":"Sino-Tibetan",Yakkha:"Sino-Tibetan","Youle Jinuo":"Sino-Tibetan","Yue Chinese":"Sino-Tibetan",Zakhring:"Sino-Tibetan","Afghan Sign Language":"Sign Language","Albanian Sign Language":"Sign Language","Algerian Sign Language":"Sign Language","American Sign Language":"Sign Language","Armenian Sign Language":"Sign Language","British Sign Language":"Sign Language","Bulgarian Sign Language":"Sign Language","Cambodian Sign Language":"Sign language","Cuban Sign Language":"Sign Language","Egyptian Sign Language":"Sign Language","Greek Sign Language":"Sign Language","Guinean Sign Language":"Sign Language","Hong Kong Sign Language":"Sign Language","Icelandic Sign Language":"Sign Language","Iranian Sign Language":"Sign Language","Israeli Sign Language":"Sign Language","Jamaican Sign Language":"Sign Language","Jordanian Sign Language":"Sign Language","Laos Sign Language":"Sign Language","Libyan Sign Language":"Sign Language","Maltese Sign Language":"Sign Language","Mauritian Sign Language":"Sign Language","Moroccan Sign Language":"Sign Language","Mozambican Sign Language":"Sign Language","Myanmar Sign Language":"Sign language","Natural Sign Language":"Sign Language","Pakistan Sign Language":"Sign Language","Papua New Guinean Sign Language":"Sign language","Russian Sign Language":"Sign Language","Saudi Arabian Sign Language":"Sign Language","Sign Language of the Netherlands":"Sign Language","Solomon Islands Sign Language":"Sign Language","Sri Lankan Sign Language":"Sign Language","Swedish Sign Language":"Sign Language","Turkish Sign Language":"Sign Language","Northern Conchucos Ancash Quechua":"Quechuan","Northern Pastaza Quichua":"Quechuan",Hupdë:"Puinavean",Amahuaca:"Panoan",Korubo:"Panoan",Sharanahua:"Panoan","Shipibo-Conibo":"Panoan",Yaminahua:"Panoan",Yawanawa:"Panoan",Afitti:"Nilo-Saharan",Assangori:"Nilo-Saharan","Beli (South Sudan)":"Nilo-Saharan",Berta:"Nilo-Saharan",Burun:"Nilo-Saharan","Dar Daju Daju":"Nilo-Saharan","Dar Fur Daju":"Nilo-Saharan","Dar Sila Daju":"Nilo-Saharan",Dazaga:"Nilo-Saharan","Dendi (Benin)":"Nilo-Saharan",Dilling:"Nilo-Saharan",Fur:"Nilo-Saharan",Gbaya:"Nilo-Saharan",Ghulfan:"Nilo-Saharan",Gwama:"Nilo-Saharan","Humburi Senni Songhay":"Nilo-Saharan",Jopadhola:"Nilo-Saharan",Kadaru:"Nilo-Saharan",Kanga:"Nilo-Saharan",Karanga:"Nilo-Saharan",Karko:"Nilo-Saharan",Kebu:"Nilo-Saharan",Keiga:"Nilo-Saharan",Keliko:"Nilo-Saharan",Kendeje:"Nilo-Saharan",Kibet:"Nilo-Saharan","Komo (Sudan)":"Nilo-Saharan",Korandje:"Nilo-Saharan",Kulfa:"Nilo-Saharan",Kwegu:"Nilo-Saharan",Laarim:"Nilo-Saharan",Logorik:"Nilo-Saharan",Majang:"Nilo-Saharan","Manga Kanuri":"Nilo-Saharan",Mango:"Nilo-Saharan",Mararit:"Nilo-Saharan",Marfa:"Nilo-Saharan",Midob:"Nilo-Saharan","Mo’da":"Nilo-Saharan",Morom:"Nilo-Saharan",Moru:"Nilo-Saharan",Naba:"Nilo-Saharan",Nara:"Nilo-Saharan",Njalgulgule:"Nilo-Saharan",Nuer:"Nilo-Saharan","Nyamusa-Molo":"Nilo-Saharan",Nyangatom:"Nilo-Saharan","Olu’bo":"Nilo-Saharan",Opo:"Nilo-Saharan",Päri:"Nilo-Saharan","Sara Kaba Naa":"Nilo-Saharan",Surbakhal:"Nilo-Saharan",Tadaksahak:"Nilo-Saharan","Tama (Chad)":"Nilo-Saharan",Temein:"Nilo-Saharan",Thuri:"Nilo-Saharan","Tirmaga-Chai Suri":"Nilo-Saharan",Toposa:"Nilo-Saharan",Tumtum:"Nilo-Saharan","Wali (Sudan)":"Nilo-Saharan","Yerwa Kanuri":"Nilo-Saharan",Yulu:"Nilo-Saharan",Zaghawa:"Nilo-Saharan","Adamawa Fulfulde":"Niger-Congo",Akaselem:"Niger-Congo","Amba (Uganda)":"Niger-Congo",Anii:"Niger-Congo",Baangi:"Niger-Congo",Badyara:"Niger-Congo","Bago-Kusuntu":"Niger-Congo",Bai:"Niger-Congo","Bainouk-Gunyaamolo":"Niger-Congo",Bamanankan:"Niger-Congo","Banda-Mbrès":"Niger-Congo",Bandial:"Niger-Congo",Bankagooma:"Niger-Congo","Belanda Viri":"Niger-Congo",Bemba:"Niger-Congo",Bolgo:"Niger-Congo","Bon Gula":"Niger-Congo",Bua:"Niger-Congo",Chichewa:"Niger-Congo","Chung (Cameroon)":"Niger-Congo","Ci Gbe":"Niger-Congo",Degema:"Niger-Congo",Dek:"Niger-Congo",Dhimba:"Niger-Congo",Dogoso:"Niger-Congo","East Limba":"Niger-Congo",Engenni:"Niger-Congo",Epie:"Niger-Congo",Éwé:"Niger-Congo",Fania:"Niger-Congo",Foodo:"Niger-Congo",Fwe:"Niger-Congo",Gciriku:"Niger-Congo",Gwa:"Niger-Congo",Herero:"Niger-Congo",Ibuoro:"Niger-Congo","Jenaama Bozo":"Niger-Congo",Jita:"Niger-Congo",Jula:"Niger-Congo",Kabiyè:"Niger-Congo",Kadung:"Niger-Congo",Kakabe:"Niger-Congo",Kalamsé:"Niger-Congo","Kami (Tanzania)":"Niger-Congo","Kango (Bas-Uélé District)":"Niger-Congo",Kasem:"Niger-Congo","Kelengaxo Bozo":"Niger-Congo",Khe:"Niger-Congo",Khisa:"Niger-Congo",Kim:"Niger-Congo",Kinyarwanda:"Niger-Congo",Kipfokomu:"Niger-Congo",Kitharaka:"Niger-Congo",Kiyombe:"Niger-Congo",Ko:"Niger-Congo",Koalib:"Niger-Congo",Koke:"Niger-Congo",Konongo:"Niger-Congo","Koro Nulu":"Niger-Congo","Koro Zuba":"Niger-Congo",Kuhane:"Niger-Congo",Kunda:"Niger-Congo",Kuranko:"Niger-Congo",Kuria:"Niger-Congo",Kwangali:"Niger-Congo",Lame:"Niger-Congo",Laru:"Niger-Congo",Lopa:"Niger-Congo","Makhuwa-Meetto":"Niger-Congo","Makhuwa-Shirima":"Niger-Congo","Malawi Nyiha":"Niger-Congo",Mandinka:"Niger-Congo",Mankanya:"Niger-Congo",Mansoanka:"Niger-Congo",Mbukushu:"Niger-Congo","Mende (Sierra Leone)":"Niger-Congo",Miyobe:"Niger-Congo",Mushungulu:"Niger-Congo","Mwali Comorian":"Niger-Congo","Mwera (Chimwera)":"Niger-Congo",Ndemli:"Niger-Congo",Ndengereko:"Niger-Congo",Ndumu:"Niger-Congo",Ndunga:"Niger-Congo","Ndzwani Comorian":"Niger-Congo",Ngile:"Niger-Congo","Northwest Gbaya":"Niger-Congo",Notre:"Niger-Congo",Nyamwanga:"Niger-Congo",Nyankore:"Niger-Congo",Nyengo:"Niger-Congo",Okpamheri:"Niger-Congo",Osatu:"Niger-Congo","Pana (Burkina Faso)":"Niger-Congo",Pulaar:"Niger-Congo",Pular:"Niger-Congo",Rufiji:"Niger-Congo","Sankaran Maninka":"Niger-Congo",Sapo:"Niger-Congo","Senara Sénoufo":"Niger-Congo",Shanga:"Niger-Congo",Sininkere:"Niger-Congo","Southern Ngbandi":"Niger-Congo",Swahili:"Niger-Congo","Syenara Sénoufo":"Niger-Congo",Tagbu:"Niger-Congo",Tagoi:"Niger-Congo",Tegali:"Niger-Congo",Tem:"Niger-Congo","Tiéyaxo Bozo":"Niger-Congo",Tiyaa:"Niger-Congo",Tocho:"Niger-Congo","Tonga (Zambia)":"Niger-Congo",Totela:"Niger-Congo","Toura (Côte d’Ivoire)":"Niger-Congo",Tswa:"Niger-Congo",Tumbuka:"Niger-Congo",Ukaan:"Niger-Congo",Uneme:"Niger-Congo",Vai:"Niger-Congo",Vute:"Niger-Congo",Waama:"Niger-Congo",Warnang:"Niger-Congo",Wolof:"Niger-Congo",Yao:"Niger-Congo",Yauma:"Niger-Congo",Yom:"Niger-Congo","Zan Gula":"Niger-Congo",Zande:"Niger-Congo",Zigula:"Niger-Congo",Mamaindê:"Nambikwara",Aghul:"Nakh-Daghestanian",Akhvakh:"Nakh-Daghestanian",Andi:"Nakh-Daghestanian",Avar:"Nakh-Daghestanian",Bagvalal:"Nakh-Daghestanian",Botlikh:"Nakh-Daghestanian",Chamalal:"Nakh-Daghestanian",Chechen:"Nakh-Daghestanian",Dargwa:"Nakh-Daghestanian",Kaitag:"Nakh-Daghestanian",Karata:"Nakh-Daghestanian",Khvarshi:"Nakh-Daghestanian",Tindi:"Nakh-Daghestanian",Pirahã:"Muran",Bonan:"Mongolic","China Buriat":"Mongolic",Daur:"Mongolic","Kalmyk-Oirat":"Mongolic","Peripheral Mongolian":"Mongolic","Russia Buriat":"Mongolic",Tagdal:"Mixed language",Wutunhua:"Mixed language","Ashéninka Perené":"Maipurean",Baniwa:"Maipurean",Cabiyarí:"Maipurean",Curripaco:"Maipurean","Enawené-Nawé":"Maipurean",Kanamarí:"Maipurean",Mehináku:"Maipurean","Pichis Ashéninka":"Maipurean",Waurá:"Maipurean",Bangime:"Language isolate",Burushaski:"Language isolate","Ai-Cham":"Kra-Dai",Aiton:"Kra-Dai","Dai Zhuang":"Kra-Dai",Duoluo:"Kra-Dai","Green Gelao":"Kra-Dai","Guibian Zhuang":"Kra-Dai",Hlai:"Kra-Dai",Jiamao:"Kra-Dai",Kang:"Kra-Dai",Khün:"Kra-Dai",Kuan:"Kra-Dai",Lachi:"Kra-Dai","Laha (Viet Nam)":"Kra-Dai",Lao:"Kra-Dai",Lü:"Kra-Dai","Mak (China)":"Kra-Dai","Northeastern Thai":"Kra-Dai","Northern Dong":"Kra-Dai","Northern Thai":"Kra-Dai",Nyaw:"Kra-Dai",Phake:"Kra-Dai","Phu Thai":"Kra-Dai",Qabiao:"Kra-Dai",Qau:"Kra-Dai","Qiubei Zhuang":"Kra-Dai",Shan:"Kra-Dai","Southern Dong":"Kra-Dai",Sui:"Kra-Dai","T’en":"Kra-Dai","Tai Daeng":"Kra-Dai","Tai Dam":"Kra-Dai","Tai Hongjin":"Kra-Dai","Tai Nüa":"Kra-Dai","Tai Ya":"Kra-Dai","Tai Yo":"Kra-Dai","Ts’ün-Lao":"Kra-Dai","Yang Zhuang":"Kra-Dai",Yerong:"Kra-Dai",Yong:"Kra-Dai",Yoy:"Kra-Dai",Khoekhoe:"Khoe-Kwadi",Karajá:"Karajá","Pará Gavião":"Jean",Suyá:"Jean",Japanese:"Japonic","Oki-No-Erabu":"Japonic","Toku-No-Shima":"Japonic",Yaeyama:"Japonic",Yoron:"Japonic","Adivasi Oriya":"Indo-European",Afrikaans:"Indo-European","Alviri-Vidari":"Indo-European",Angika:"Indo-European",Assamese:"Indo-European",Bagheli:"Indo-European",Bagri:"Indo-European",Bashkardi:"Indo-European",Bateri:"Indo-European",Bengali:"Indo-European",Bhojpuri:"Indo-European",Bhunjia:"Indo-European",Bilaspuri:"Indo-European",Bosnian:"Indo-European","Braj Bhasha":"Indo-European",Brokskat:"Indo-European",Bundeli:"Indo-European",Catalan:"Indo-European",Chambeali:"Indo-European",Chhattisgarhi:"Indo-European",Dameli:"Indo-European",Dari:"Indo-European",Dhundari:"Indo-European",Dogri:"Indo-European",Domari:"Indo-European",Dutch:"Indo-European","Eastern Balochi":"Indo-European","Eastern Panjabi":"Indo-European","Eastern Yiddish":"Indo-European",English:"Indo-European",French:"Indo-European",Gaddi:"Indo-European",Garhwali:"Indo-European",Gawri:"Indo-European",Gowro:"Indo-European",Gujarati:"Indo-European",Gujari:"Indo-European",Halbi:"Indo-European",Haroti:"Indo-European",Haryanvi:"Indo-European",Hindi:"Indo-European","Indus Kohistani":"Indo-European","Iranian Persian":"Indo-European",Ishkashimi:"Indo-European",Kacchi:"Indo-European",Kalkoti:"Indo-European",Kanauji:"Indo-European",Kangri:"Indo-European",Karingani:"Indo-European",Kashmiri:"Indo-European",Kati:"Indo-European",Khunsari:"Indo-European",Konkani:"Indo-European",Kudmali:"Indo-European",Kumaoni:"Indo-European",Kumzari:"Indo-European",Laki:"Indo-European",Lasi:"Indo-European",Luwati:"Indo-European",Magahi:"Indo-European",Maithili:"Indo-European",Maldivian:"Indo-European",Malvi:"Indo-European",Marathi:"Indo-European","Marwari (India)":"Indo-European",Mewari:"Indo-European",Munji:"Indo-European",Nepali:"Indo-European",Nimadi:"Indo-European","Northern Kurdish":"Indo-European",Odia:"Indo-European","Pahari-Potwari":"Indo-European",Palula:"Indo-European",Panchpargania:"Indo-European",Pangwali:"Indo-European",Parachi:"Indo-European",Portuguese:"Indo-European",Russian:"Indo-European",Sadri:"Indo-European",Sanglechi:"Indo-European",Sarikoli:"Indo-European",Savi:"Indo-European",Semnani:"Indo-European",Serbian:"Indo-European",Shabak:"Indo-European",Shahrudi:"Indo-European",Shekhawati:"Indo-European",Shina:"Indo-European",Shughni:"Indo-European",Shumashti:"Indo-European",Sindhi:"Indo-European",Sivandi:"Indo-European",Soi:"Indo-European","Southern Balochi":"Indo-European",Spanish:"Indo-European",Tajik:"Indo-European",Talysh:"Indo-European",Urdu:"Indo-European",Ushojo:"Indo-European",Vaghri:"Indo-European","Vlax Romani":"Indo-European",Wagdi:"Indo-European",Wakhi:"Indo-European",Waneci:"Indo-European","Western Balochi":"Indo-European",Yadgha:"Indo-European","Bu-Nao Bunu":"Hmong-Mien","Central Mashan Miao":"Hmong-Mien","Chuanqiandian Cluster Miao":"Hmong-Mien","Eastern Xiangxi Miao":"Hmong-Mien","Iu Mien":"Hmong-Mien","Luopohe Miao":"Hmong-Mien","Northern Qiandong Miao":"Hmong-Mien","Pa-Hng":"Hmong-Mien","Southwestern Huishui Miao":"Hmong-Mien","Wunai Bunu":"Hmong-Mien","Younuo Bunu":"Hmong-Mien",Amarakaeri:"Harákmbut",Huachipaeri:"Harákmbut",Cuiba:"Guajiboan",Macaguán:"Guajiboan",Tlicho:"Eyak-Athabaskan",Kannada:"Dravidian",Kodava:"Dravidian","Korra Koraga":"Dravidian","Kota (India)":"Dravidian",Kudiya:"Dravidian",Malapandaram:"Dravidian",Malayalam:"Dravidian",Muthuvan:"Dravidian",Ravula:"Dravidian",Sholaga:"Dravidian",Tamil:"Dravidian",Telugu:"Dravidian",Tulu:"Dravidian",Vishavan:"Dravidian","Andaman Hindi Creole":"Creole","Cocos Islands Malay":"Creole","Juba Arabic":"Creole",Nubi:"Creole",Barí:"Chibchan","Barro Negro Tunebo":"Chibchan","Western Tunebo":"Chibchan",Ikpeng:"Cariban","Kuikúro-Kalapálo":"Cariban",Pemon:"Cariban",Trió:"Cariban","Waimiri-Atroarí":"Cariban",Waiwai:"Cariban",Yukpa:"Cariban",Borôro:"Bororoan",Chachi:"Barbacoan","Abai Sungai":"Austronesian",Ambelau:"Austronesian",Asilulu:"Austronesian",Balaesang:"Austronesian","Batak Alas-Kluet":"Austronesian","Batak Dairi":"Austronesian","Batak Karo":"Austronesian",Bonerate:"Austronesian",Bonggi:"Austronesian",Brunei:"Austronesian","Brunei Bisaya":"Austronesian",Buol:"Austronesian","Central Malay":"Austronesian","Central Sama":"Austronesian","Coastal Konjo":"Austronesian",Dampelas:"Austronesian","Dibabawon Manobo":"Austronesian",Dondo:"Austronesian",Gane:"Austronesian","Geser-Gorom":"Austronesian","Highland Konjo":"Austronesian",Hitu:"Austronesian",Iban:"Austronesian",Indonesian:"Austronesian","Kadazan Dusun":"Austronesian",Kiput:"Austronesian",Komodo:"Austronesian",Kompane:"Austronesian",Lahanan:"Austronesian","Lampung Nyo":"Austronesian","Larike-Wakasihu":"Austronesian",Lola:"Austronesian",Luhu:"Austronesian",Malay:"Austronesian",Mariri:"Austronesian",Moronene:"Austronesian",Rukai:"Austronesian","Sabah Bisaya":"Austronesian","Seit-Kaitetu":"Austronesian",Sula:"Austronesian","Tae’":"Austronesian",Tajio:"Austronesian",Tomini:"Austronesian",Tutong:"Austronesian",Ujir:"Austronesian",Aheu:"Austro-Asiatic",Alak:"Austro-Asiatic",Bit:"Austro-Asiatic","Bo (Laos)":"Austro-Asiatic",Bondo:"Austro-Asiatic",Brao:"Austro-Asiatic",Bugan:"Austro-Asiatic",Chong:"Austro-Asiatic",Chut:"Austro-Asiatic",Danau:"Austro-Asiatic",Halang:"Austro-Asiatic","Halang Doan":"Austro-Asiatic",Hu:"Austro-Asiatic",Hung:"Austro-Asiatic",Ir:"Austro-Asiatic",Kensiu:"Austro-Asiatic",Khmu:"Austro-Asiatic",Khua:"Austro-Asiatic",Khuen:"Austro-Asiatic",Koda:"Austro-Asiatic","Kon Keu":"Austro-Asiatic",Kriang:"Austro-Asiatic",Kuay:"Austro-Asiatic",Laven:"Austro-Asiatic",Maleng:"Austro-Asiatic","Man Met":"Austro-Asiatic",Mang:"Austro-Asiatic",Minriq:"Austro-Asiatic",Mlabri:"Austro-Asiatic",Nguôn:"Austro-Asiatic",Nyaheun:"Austro-Asiatic",Nyahkur:"Austro-Asiatic","O’du":"Austro-Asiatic",Ong:"Austro-Asiatic",Oy:"Austro-Asiatic",Pacoh:"Austro-Asiatic","Phong-Kniang":"Austro-Asiatic",Prai:"Austro-Asiatic",Puoc:"Austro-Asiatic",Rengao:"Austro-Asiatic",Rmeet:"Austro-Asiatic","Rumai Palaung":"Austro-Asiatic",Sapuan:"Austro-Asiatic","Shwe Palaung":"Austro-Asiatic","So (Laos)":"Austro-Asiatic",Sou:"Austro-Asiatic","Tai Loi":"Austro-Asiatic",Talieng:"Austro-Asiatic",Tareng:"Austro-Asiatic",Tho:"Austro-Asiatic",U:"Austro-Asiatic","Upper Ta’oih":"Austro-Asiatic",Vietnamese:"Austro-Asiatic","Western Katu":"Austro-Asiatic",Suruahá:"Arauan",Jarawa:"Andamanese",Öñge:"Andamanese",Sentinel:"Andamanese",Afar:"Afro-Asiatic","Alaba-K’abeena":"Afro-Asiatic",Alagwa:"Afro-Asiatic",Ale:"Afro-Asiatic","Algerian Arabic":"Afro-Asiatic",Amharic:"Afro-Asiatic",Arbore:"Afro-Asiatic","Baharna Arabic":"Afro-Asiatic",Barein:"Afro-Asiatic",Bedawiyet:"Afro-Asiatic",Bidiyo:"Afro-Asiatic",Bilen:"Afro-Asiatic",Birgit:"Afro-Asiatic",Boor:"Afro-Asiatic","Borana-Arsi-Guji Oromo":"Afro-Asiatic",Buduma:"Afro-Asiatic","Central Atlas Tamazight":"Afro-Asiatic","Chadian Arabic":"Afro-Asiatic",Chenoua:"Afro-Asiatic",Ciwogai:"Afro-Asiatic",Daasanach:"Afro-Asiatic",Dabarre:"Afro-Asiatic",Dangaléat:"Afro-Asiatic",Deno:"Afro-Asiatic",Diri:"Afro-Asiatic",Duwai:"Afro-Asiatic","Eastern Egyptian Bedawi Arabic":"Afro-Asiatic","Eastern Oromo":"Afro-Asiatic",Garre:"Afro-Asiatic",Geruma:"Afro-Asiatic",Giiwo:"Afro-Asiatic",Gorowa:"Afro-Asiatic","Gulf Arabic":"Afro-Asiatic","Hadrami Arabic":"Afro-Asiatic",Harsusi:"Afro-Asiatic",Hassaniyya:"Afro-Asiatic",Hausa:"Afro-Asiatic",Hebrew:"Afro-Asiatic","Hijazi Arabic":"Afro-Asiatic",Hobyót:"Afro-Asiatic",Hozo:"Afro-Asiatic",Jiiddu:"Afro-Asiatic",Jimi:"Afro-Asiatic",Jina:"Afro-Asiatic","Jonkor Bourmataguil":"Afro-Asiatic","Judeo-Iraqi Arabic":"Afro-Asiatic","Judeo-Moroccan Arabic":"Afro-Asiatic",Kabalai:"Afro-Asiatic",Kajakse:"Afro-Asiatic",Kariya:"Afro-Asiatic","Karo (Ethiopia)":"Afro-Asiatic",Kutto:"Afro-Asiatic","Levantine Arabic":"Afro-Asiatic",Libido:"Afro-Asiatic","Libyan Arabic":"Afro-Asiatic","Lishana Deni":"Afro-Asiatic",Maaka:"Afro-Asiatic",Maay:"Afro-Asiatic",Majera:"Afro-Asiatic",Male:"Afro-Asiatic",Maslam:"Afro-Asiatic",Masmaje:"Afro-Asiatic",Mburku:"Afro-Asiatic",Mehri:"Afro-Asiatic","Mesopotamian Arabic":"Afro-Asiatic",Migaama:"Afro-Asiatic",Mogum:"Afro-Asiatic","Moroccan Arabic":"Afro-Asiatic",Mositacha:"Afro-Asiatic",Mubi:"Afro-Asiatic",Mukulu:"Afro-Asiatic",Nafusi:"Afro-Asiatic","Najdi Arabic":"Afro-Asiatic",Nyam:"Afro-Asiatic","Omani Arabic":"Afro-Asiatic","Pa’a":"Afro-Asiatic",Saba:"Afro-Asiatic",Saho:"Afro-Asiatic","Sanaani Arabic":"Afro-Asiatic",Seze:"Afro-Asiatic",Shehri:"Afro-Asiatic",Shekkacho:"Afro-Asiatic",Sheko:"Afro-Asiatic","Shihhi Arabic":"Afro-Asiatic",Siwi:"Afro-Asiatic",Sokoro:"Afro-Asiatic",Soqotri:"Afro-Asiatic","South Levantine Arabic":"Afro-Asiatic","Standard Arabic":"Afro-Asiatic","Sudanese Arabic":"Afro-Asiatic","Ta’izzi-Adeni Arabic":"Afro-Asiatic","Tahaggart Tamahaq":"Afro-Asiatic",Taznatit:"Afro-Asiatic",Tigré:"Afro-Asiatic",Toram:"Afro-Asiatic",Tsamai:"Afro-Asiatic",Tumzabt:"Afro-Asiatic",Tunni:"Afro-Asiatic",Waata:"Afro-Asiatic","West Central Oromo":"Afro-Asiatic",Xamtanga:"Afro-Asiatic",Zumbun:"Afro-Asiatic"},sd={aar:"Afro-Asiatic",abf:"Austronesian",abl:"Austronesian",abv:"Afro-Asiatic",acm:"Afro-Asiatic",acq:"Afro-Asiatic",acw:"Afro-Asiatic",acx:"Afro-Asiatic",adh:"Nilo-Saharan",adi:"Sino-Tibetan",adw:"Tupian",adx:"Sino-Tibetan",aen:"Sign Language",afb:"Afro-Asiatic",afg:"Sign Language",afr:"Indo-European",aft:"Nilo-Saharan",agx:"Nakh-Daghestanian",ahk:"Sino-Tibetan",aib:"Turkic",aih:"Kra-Dai",aio:"Kra-Dai",ajp:"Afro-Asiatic",aju:"Afro-Asiatic",aks:"Niger-Congo",akv:"Nakh-Daghestanian",alk:"Austro-Asiatic",alo:"Austronesian",alw:"Afro-Asiatic",amc:"Panoan",amh:"Afro-Asiatic",amr:"Harákmbut",amv:"Austronesian",ani:"Nakh-Daghestanian",anp:"Indo-European",anq:"Andamanese",aoc:"Cariban",apc:"Afro-Asiatic",apd:"Afro-Asiatic",arb:"Afro-Asiatic",arq:"Afro-Asiatic",arr:"Tupian",ars:"Afro-Asiatic",arv:"Afro-Asiatic",ary:"Afro-Asiatic",ase:"Sign Language",asl:"Austronesian",asm:"Indo-European",asn:"Tupian",asp:"Sign Language",atr:"Cariban",avd:"Indo-European",avl:"Afro-Asiatic",avv:"Tupian",awe:"Tupian",awt:"Tupian",ayh:"Afro-Asiatic",ayl:"Afro-Asiatic",ayn:"Afro-Asiatic",azb:"Turkic",bao:"Tucanoan",bbh:"Austro-Asiatic",bcc:"Indo-European",bcz:"Niger-Congo",bdg:"Austronesian",bdi:"Nilo-Saharan",bdj:"Niger-Congo",bdm:"Afro-Asiatic",bdo:"Nilo-Saharan",bee:"Sino-Tibetan",bej:"Afro-Asiatic",bem:"Niger-Congo",ben:"Indo-European",bfi:"Sign Language",bfu:"Sino-Tibetan",bfw:"Austro-Asiatic",bfy:"Indo-European",bgc:"Indo-European",bgg:"Sino-Tibetan",bgk:"Austro-Asiatic",bgl:"Austro-Asiatic",bgn:"Indo-European",bgp:"Indo-European",bgq:"Indo-European",bho:"Indo-European",bhu:"Indo-European",bid:"Afro-Asiatic",bjj:"Indo-European",bkk:"Indo-European",blf:"Austronesian",blm:"Nilo-Saharan",blo:"Niger-Congo",bls:"Austronesian",blt:"Kra-Dai",bly:"Niger-Congo",bma:"Niger-Congo",bmr:"Witotoan",bna:"Austronesian",bns:"Indo-European",bor:"Bororoan",bos:"Indo-European",bph:"Nakh-Daghestanian",bqg:"Niger-Congo",bqj:"Niger-Congo",bqk:"Niger-Congo",bqn:"Sign Language",bqx:"Niger-Congo",bra:"Indo-European",brb:"Austro-Asiatic",bro:"Sino-Tibetan",brx:"Sino-Tibetan",bsb:"Austronesian",bsg:"Indo-European",bsk:"Language isolate",bsy:"Austronesian",btd:"Austronesian",btf:"Afro-Asiatic",btv:"Indo-European",btx:"Austronesian",btz:"Austronesian",bub:"Niger-Congo",buh:"Hmong-Mien",bva:"Afro-Asiatic",bvf:"Afro-Asiatic",bvi:"Niger-Congo",bvo:"Niger-Congo",bwi:"Maipurean",bwn:"Hmong-Mien",bwx:"Hmong-Mien",bxr:"Mongolic",bxu:"Mongolic",bxw:"Niger-Congo",byn:"Afro-Asiatic",byo:"Sino-Tibetan",bze:"Niger-Congo",bzx:"Niger-Congo",cat:"Indo-European",cbb:"Maipurean",cbc:"Tucanoan",cbi:"Barbacoan",cbn:"Austro-Asiatic",cby:"Unclassified",cdh:"Indo-European",cdn:"Sino-Tibetan",cdz:"Austro-Asiatic",ceg:"Zamucoan",cgk:"Sino-Tibetan",che:"Nakh-Daghestanian",cib:"Niger-Congo",cji:"Nakh-Daghestanian",ckh:"Sino-Tibetan",ckq:"Afro-Asiatic",clk:"Sino-Tibetan",cmn:"Sino-Tibetan",cnq:"Niger-Congo",cnu:"Afro-Asiatic",coa:"Creole",cog:"Austro-Asiatic",cpu:"Maipurean",cqd:"Hmong-Mien",csf:"Sign Language",csx:"Sign language",cub:"Tucanoan",cui:"Guajiboan",cuu:"Kra-Dai",daa:"Afro-Asiatic",daj:"Nilo-Saharan",dar:"Nakh-Daghestanian",dau:"Nilo-Saharan",dba:"Language isolate",dbb:"Afro-Asiatic",dbp:"Afro-Asiatic",dbr:"Afro-Asiatic",ddn:"Nilo-Saharan",deg:"Niger-Congo",dek:"Niger-Congo",des:"Tucanoan",dgo:"Indo-European",dgs:"Niger-Congo",dhd:"Indo-European",dhi:"Sino-Tibetan",dhm:"Niger-Congo",dil:"Nilo-Saharan",diu:"Niger-Congo",div:"Indo-European",djc:"Nilo-Saharan",dkg:"Niger-Congo",dln:"Sino-Tibetan",dml:"Indo-European",dms:"Austronesian",dnu:"Austro-Asiatic",doc:"Kra-Dai",dok:"Austronesian",dox:"Afro-Asiatic",dru:"Austronesian",dse:"Sign Language",dsh:"Afro-Asiatic",dsl:"Sign Language",dsq:"Nilo-Saharan",dta:"Mongolic",dtp:"Austronesian",dyu:"Niger-Congo",dzg:"Nilo-Saharan",dzl:"Sino-Tibetan",eng:"Indo-European",enn:"Niger-Congo",epi:"Niger-Congo",ers:"Sino-Tibetan",esl:"Sign Language",evn:"Tungusic",fin:"Uralic",fni:"Niger-Congo",fod:"Niger-Congo",fra:"Indo-European",fsl:"Sign Language",fub:"Niger-Congo",fuc:"Niger-Congo",fuf:"Niger-Congo",fuj:"Niger-Congo",fvr:"Nilo-Saharan",fwe:"Niger-Congo",gax:"Afro-Asiatic",gaz:"Afro-Asiatic",gbk:"Indo-European",gbm:"Indo-European",gbn:"Nilo-Saharan",gdq:"Afro-Asiatic",gea:"Afro-Asiatic",ges:"Austronesian",gex:"Afro-Asiatic",ghl:"Nilo-Saharan",giq:"Kra-Dai",giw:"Kra-Dai",gju:"Indo-European",glc:"Niger-Congo",goe:"Sino-Tibetan",gow:"Afro-Asiatic",gqu:"Kra-Dai",grr:"Afro-Asiatic",gsg:"Sign Language",gss:"Sign Language",guj:"Indo-European",gus:"Sign Language",gvp:"Jean",gwb:"Niger-Congo",gwc:"Indo-European",gwd:"Afro-Asiatic",gwf:"Indo-European",gya:"Niger-Congo",gyo:"Sino-Tibetan",gzn:"Austronesian",hae:"Afro-Asiatic",hal:"Austro-Asiatic",hau:"Afro-Asiatic",hca:"Creole",hea:"Hmong-Mien",heb:"Afro-Asiatic",her:"Niger-Congo",hik:"Austronesian",hin:"Indo-European",hks:"Sign Language",hlb:"Indo-European",hld:"Austro-Asiatic",hmb:"Nilo-Saharan",hmh:"Hmong-Mien",hml:"Hmong-Mien",hmm:"Hmong-Mien",hne:"Indo-European",hni:"Sino-Tibetan",hnu:"Austro-Asiatic",hoh:"Afro-Asiatic",hoj:"Indo-European",hoz:"Afro-Asiatic",hsn:"Sino-Tibetan",hss:"Afro-Asiatic",htu:"Austronesian",hug:"Harákmbut",huo:"Austro-Asiatic",iba:"Austronesian",ibr:"Niger-Congo",icl:"Sign Language",iii:"Sino-Tibetan",ind:"Austronesian",irr:"Austro-Asiatic",ise:"Sign Language",isk:"Indo-European",isr:"Sign Language",ium:"Hmong-Mien",jbn:"Afro-Asiatic",jeu:"Afro-Asiatic",jia:"Afro-Asiatic",jii:"Afro-Asiatic",jio:"Kra-Dai",jit:"Niger-Congo",jiu:"Sino-Tibetan",jle:"Niger-Congo",jls:"Sign Language",jmi:"Afro-Asiatic",jnl:"Sino-Tibetan",jos:"Sign Language",jpn:"Japonic",jup:"Puinavean",kaf:"Sino-Tibetan",kan:"Dravidian",kas:"Indo-European",kay:"Tupian",kaz:"Turkic",kbg:"Sino-Tibetan",kbo:"Nilo-Saharan",kbp:"Niger-Congo",kby:"Nilo-Saharan",kcf:"Niger-Congo",kcn:"Creole",kcp:"Nilo-Saharan",kcu:"Niger-Congo",kcy:"Nilo-Saharan",kcz:"Niger-Congo",kdh:"Niger-Congo",kdn:"Niger-Congo",kdt:"Austro-Asiatic",kdu:"Nilo-Saharan",kec:"Nilo-Saharan",kfa:"Dravidian",kfd:"Dravidian",kfe:"Dravidian",kfg:"Dravidian",kfm:"Indo-European",kfr:"Indo-European",kfs:"Indo-European",kfy:"Indo-European",kgn:"Indo-European",khb:"Kra-Dai",khf:"Austro-Asiatic",khv:"Nakh-Daghestanian",kia:"Niger-Congo",kib:"Niger-Congo",kie:"Nilo-Saharan",kil:"Afro-Asiatic",kir:"Turkic",kjc:"Austronesian",kjg:"Austro-Asiatic",kjk:"Austronesian",kke:"Niger-Congo",kkh:"Kra-Dai",kkn:"Austro-Asiatic",kko:"Nilo-Saharan",kks:"Afro-Asiatic",klf:"Nilo-Saharan",kmc:"Kra-Dai",kmq:"Nilo-Saharan",kmr:"Indo-European",kmz:"Turkic",knc:"Nilo-Saharan",knf:"Niger-Congo",knk:"Niger-Congo",knm:"Maipurean",knn:"Indo-European",kns:"Austro-Asiatic",knz:"Niger-Congo",kou:"Niger-Congo",kpa:"Afro-Asiatic",kpc:"Maipurean",kpj:"Karajá",kpt:"Nakh-Daghestanian",kqg:"Niger-Congo",kqm:"Niger-Congo",krn:"Niger-Congo",krs:"Nilo-Saharan",kth:"Nilo-Saharan",kuf:"Austro-Asiatic",kui:"Cariban",kuj:"Niger-Congo",kva:"Nakh-Daghestanian",kvf:"Afro-Asiatic",kvh:"Austronesian",kvp:"Austronesian",kwn:"Niger-Congo",kwv:"Nilo-Saharan",kxd:"Austronesian",kxh:"Afro-Asiatic",kxj:"Nilo-Saharan",kyi:"Austronesian",kyp:"Kra-Dai",kyw:"Indo-European",kzq:"Sino-Tibetan",lae:"Sino-Tibetan",lan:"Niger-Congo",lao:"Kra-Dai",laq:"Kra-Dai",lbj:"Sino-Tibetan",lbn:"Austro-Asiatic",lbo:"Austro-Asiatic",lbs:"Sign Language",lbt:"Kra-Dai",lcd:"Austronesian",lcq:"Austronesian",lgn:"Nilo-Saharan",lgs:"Sign Language",lha:"Kra-Dai",lhn:"Austronesian",lhp:"Sino-Tibetan",lic:"Kra-Dai",liq:"Afro-Asiatic",liu:"Nilo-Saharan",lkc:"Sino-Tibetan",lkh:"Sino-Tibetan",lki:"Indo-European",lkr:"Nilo-Saharan",lma:"Niger-Congo",loh:"Nilo-Saharan",lop:"Niger-Congo",lsd:"Afro-Asiatic",lso:"Sign Language",lss:"Indo-European",lsy:"Sign Language",luk:"Sino-Tibetan",lul:"Nilo-Saharan",mag:"Indo-European",mai:"Indo-European",mal:"Dravidian",mar:"Indo-European",mbd:"Austronesian",mbn:"Guajiboan",mcd:"Panoan",mdl:"Sign Language",mdy:"Afro-Asiatic",mei:"Nilo-Saharan",men:"Niger-Congo",mes:"Afro-Asiatic",mew:"Afro-Asiatic",mey:"Afro-Asiatic",mgb:"Nilo-Saharan",mgd:"Nilo-Saharan",mge:"Nilo-Saharan",mgh:"Niger-Congo",mhr:"Uralic",mhu:"Sino-Tibetan",mhw:"Niger-Congo",mjp:"Dravidian",mkg:"Kra-Dai",mmh:"Maipurean",mml:"Austro-Asiatic",mmy:"Afro-Asiatic",mne:"Nilo-Saharan",mni:"Sino-Tibetan",mnj:"Indo-European",mnk:"Niger-Congo",mnq:"Austro-Asiatic",mns:"Uralic",mot:"Chibchan",mou:"Afro-Asiatic",moy:"Afro-Asiatic",moz:"Afro-Asiatic",mpe:"Nilo-Saharan",mpz:"Sino-Tibetan",mqi:"Austronesian",mqn:"Austronesian",mra:"Austro-Asiatic",mrj:"Uralic",msc:"Niger-Congo",msv:"Afro-Asiatic",msw:"Niger-Congo",mtr:"Indo-European",mub:"Afro-Asiatic",mup:"Indo-European",muq:"Hmong-Mien",muv:"Dravidian",mvf:"Mongolic",mvu:"Nilo-Saharan",mvy:"Indo-European",mwn:"Niger-Congo",mxj:"Sino-Tibetan",myp:"Muran",myy:"Tucanoan",mzb:"Afro-Asiatic",mzy:"Sign Language",naq:"Khoe-Kwadi",nbt:"Sino-Tibetan",nbw:"Niger-Congo",ndg:"Niger-Congo",ndp:"Nilo-Saharan",ndt:"Niger-Congo",neb:"Niger-Congo",neh:"Sino-Tibetan",nev:"Austro-Asiatic",ngt:"Austro-Asiatic",njl:"Nilo-Saharan",nkd:"Sino-Tibetan",nld:"Indo-European",nmd:"Niger-Congo",nmi:"Afro-Asiatic",nml:"Niger-Congo",nmy:"Sino-Tibetan",nnj:"Nilo-Saharan",nod:"Kra-Dai",noe:"Indo-European",nos:"Sino-Tibetan",npb:"Sino-Tibetan",npi:"Indo-European",nrb:"Nilo-Saharan",nru:"Sino-Tibetan",nsl:"Sign Language",nuo:"Austro-Asiatic",nus:"Nilo-Saharan",nwm:"Nilo-Saharan",nxq:"Sino-Tibetan",nye:"Niger-Congo",nyn:"Niger-Congo",nyr:"Niger-Congo",nyw:"Kra-Dai",nzs:"Sign Language",okn:"Japonic",ole:"Sino-Tibetan",oog:"Austro-Asiatic",oon:"Andamanese",opa:"Niger-Congo",ort:"Indo-European",ory:"Indo-European",ost:"Niger-Congo",oyb:"Austro-Asiatic",oym:"Tupian",pac:"Austro-Asiatic",pah:"Tupian",pbp:"Niger-Congo",peh:"Mongolic",pes:"Indo-European",pga:"Creole",pgg:"Indo-European",pgz:"Sign language",pha:"Hmong-Mien",phh:"Sino-Tibetan",phj:"Sino-Tibetan",phk:"Kra-Dai",phl:"Indo-European",pho:"Sino-Tibetan",phq:"Sino-Tibetan",phr:"Indo-European",pht:"Kra-Dai",pil:"Niger-Congo",pir:"Tucanoan",pkb:"Niger-Congo",pks:"Sign Language",pkt:"Austro-Asiatic",pll:"Austro-Asiatic",pnq:"Niger-Congo",pnx:"Austro-Asiatic",por:"Indo-European",prc:"Indo-European",prs:"Indo-European",prt:"Austro-Asiatic",psc:"Sign Language",pse:"Austronesian",pto:"Tupian",pum:"Sino-Tibetan",puo:"Austro-Asiatic",qae:"Sign Language",qao:"Sign Language",qbh:"Sign Language",qbj:"Sign Language",qbn:"Sign Language",qbt:"Sign Language",qcd:"Sign Language",qcm:"Sign Language",qcy:"Sign Language",qer:"Sign Language",qfa:"Sign Language",qfj:"Sign Language",qga:"Sign Language",qge:"Sign Language",qgm:"Sign Language",qiq:"Sign Language",qki:"Sign Language",qkm:"Sign Language",qkp:"Sign Language",qkw:"Sign Language",qmv:"Sign Language",qnh:"Sign Language",qns:"Sign Language",qom:"Sign Language",qqa:"Sign Language",qry:"Sign Language",qsm:"Sign Language",qso:"Sign Language",qsr:"Sign Language",qsz:"Sign Language",qtp:"Sign Language",qvz:"Quechuan",ras:"Niger-Congo",rbb:"Austro-Asiatic",ren:"Austro-Asiatic",rji:"Sino-Tibetan",rmt:"Indo-European",rmy:"Indo-European",rob:"Austronesian",rsl:"Sign Language",rui:"Niger-Congo",rus:"Indo-European",rwm:"Niger-Congo",rwr:"Indo-European",rys:"Japonic",saa:"Afro-Asiatic",sbf:"Unclassified",sbj:"Nilo-Saharan",sbs:"Niger-Congo",scb:"Austro-Asiatic",sck:"Indo-European",scl:"Indo-European",sdb:"Indo-European",sdg:"Indo-European",sdl:"Sign Language",sdp:"Sino-Tibetan",seq:"Niger-Congo",sgh:"Indo-European",sgy:"Indo-European",she:"Afro-Asiatic",shm:"Indo-European",shn:"Kra-Dai",sho:"Niger-Congo",shp:"Panoan",shu:"Afro-Asiatic",shv:"Afro-Asiatic",shz:"Niger-Congo",siy:"Indo-European",siz:"Afro-Asiatic",sjg:"Nilo-Saharan",sjo:"Tungusic",skq:"Niger-Congo",sle:"Dravidian",slt:"Sino-Tibetan",sml:"Austronesian",smy:"Indo-European",snd:"Indo-European",snn:"Tucanoan",soj:"Indo-European",sok:"Afro-Asiatic",soy:"Niger-Congo",spa:"Indo-European",spu:"Austro-Asiatic",sqk:"Sign Language",sqq:"Austro-Asiatic",sqs:"Sign Language",sqt:"Afro-Asiatic",srh:"Indo-European",sri:"Tucanoan",srp:"Indo-European",ssh:"Afro-Asiatic",ssn:"Afro-Asiatic",sss:"Austro-Asiatic",ssy:"Afro-Asiatic",std:"Andamanese",sts:"Indo-European",suq:"Nilo-Saharan",suv:"Sino-Tibetan",suy:"Jean",suz:"Sino-Tibetan",swh:"Niger-Congo",swi:"Kra-Dai",swl:"Sign Language",swv:"Indo-European",swx:"Arauan",sxg:"Sino-Tibetan",sze:"Afro-Asiatic",szn:"Austronesian",szs:"Sign Language",tag:"Niger-Congo",tam:"Dravidian",taz:"Niger-Congo",tbm:"Niger-Congo",tbn:"Chibchan",tbr:"Nilo-Saharan",tct:"Kra-Dai",tcy:"Dravidian",tda:"Mixed language",tdb:"Indo-European",tdd:"Kra-Dai",tdf:"Austro-Asiatic",tdj:"Austronesian",tel:"Dravidian",teq:"Nilo-Saharan",tgf:"Sino-Tibetan",tgk:"Indo-European",tgr:"Austro-Asiatic",thk:"Niger-Congo",thm:"Austro-Asiatic",thu:"Nilo-Saharan",thv:"Afro-Asiatic",tig:"Afro-Asiatic",tin:"Nakh-Daghestanian",tiz:"Kra-Dai",tkn:"Japonic",tlq:"Austro-Asiatic",tly:"Indo-European",tma:"Nilo-Saharan",tnb:"Chibchan",toi:"Niger-Congo",toq:"Nilo-Saharan",tou:"Austro-Asiatic",tqq:"Afro-Asiatic",tri:"Cariban",trj:"Afro-Asiatic",tsb:"Afro-Asiatic",tsc:"Niger-Congo",tsj:"Sino-Tibetan",tsk:"Sino-Tibetan",tsl:"Kra-Dai",tsm:"Sign Language",ttg:"Austronesian",tth:"Austro-Asiatic",ttl:"Niger-Congo",tts:"Kra-Dai",tue:"Tucanoan",tum:"Niger-Congo",tuo:"Tucanoan",tur:"Turkic",twm:"Sino-Tibetan",txi:"Cariban",txm:"Austronesian",tyh:"Austro-Asiatic",tyj:"Kra-Dai",tyr:"Kra-Dai",tyv:"Turkic",tyy:"Niger-Congo",tzm:"Afro-Asiatic",uan:"Kra-Dai",udj:"Austronesian",une:"Niger-Congo",unk:"Maipurean",urd:"Indo-European",urp:"Tupian",urz:"Tupian",ush:"Indo-European",usi:"Sino-Tibetan",uuu:"Austro-Asiatic",uzn:"Turkic",vai:"Niger-Congo",vgr:"Indo-European",vie:"Austro-Asiatic",vkj:"Unclassified",vkn:"Niger-Congo",vkz:"Niger-Congo",vmk:"Niger-Congo",vut:"Niger-Congo",wau:"Maipurean",waw:"Cariban",wbj:"Afro-Asiatic",wbl:"Indo-European",wbr:"Indo-European",wlc:"Niger-Congo",wll:"Nilo-Saharan",wmd:"Nambikwara",wmg:"Sino-Tibetan",wne:"Indo-European",wni:"Niger-Congo",wol:"Niger-Congo",wrn:"Niger-Congo",wti:"Nilo-Saharan",wuh:"Mixed language",wwa:"Niger-Congo",xal:"Mongolic",xan:"Afro-Asiatic",xdq:"Nakh-Daghestanian",xhv:"Austro-Asiatic",xka:"Indo-European",xkz:"Sino-Tibetan",xma:"Niger-Congo",xmj:"Afro-Asiatic",xmo:"Tupian",xms:"Sign Language",xnr:"Indo-European",xns:"Sino-Tibetan",xom:"Nilo-Saharan",xor:"Panoan",xsm:"Niger-Congo",xsr:"Sino-Tibetan",xwg:"Nilo-Saharan",yaa:"Panoan",yad:"Yaguan",yao:"Niger-Congo",yax:"Niger-Congo",ybh:"Sino-Tibetan",ycl:"Sino-Tibetan",ydd:"Indo-European",ydg:"Indo-European",yea:"Dravidian",yhd:"Afro-Asiatic",yig:"Sino-Tibetan",yix:"Sino-Tibetan",ymm:"Afro-Asiatic",ymx:"Sino-Tibetan",yne:"Sino-Tibetan",yno:"Kra-Dai",yom:"Niger-Congo",yox:"Japonic",yoy:"Kra-Dai",yrn:"Kra-Dai",ysl:"Sign Language",ysm:"Sign language",ysn:"Sino-Tibetan",yue:"Sino-Tibetan",yul:"Nilo-Saharan",yup:"Cariban",ywn:"Panoan",ywt:"Sino-Tibetan",zag:"Nilo-Saharan",zgn:"Kra-Dai",zhd:"Kra-Dai",ziw:"Niger-Congo",zkr:"Sino-Tibetan",zlm:"Austronesian",zna:"Niger-Congo",zne:"Niger-Congo",zng:"Austro-Asiatic",zqe:"Kra-Dai",zum:"Indo-European",zyg:"Kra-Dai"};function Cr(e){return e==null?"":typeof e=="object"?e.label||e.value||"":String(e)}const k_=[[/ sign language$/i,"Sign Language"]];function P_(e){var i,l;const t=Cr(e.languageFamily);if(t)return t;const o=String(((l=(i=e._raw)==null?void 0:i.primary_language)==null?void 0:l.value)||(e.language&&typeof e.language=="object"?e.language.value:"")||"").trim().toLowerCase();if(o&&sd[o])return sd[o];const n=Cr(e.language||e.primary_language);if(!n||typeof n!="string")return"";const a=n.trim(),s=a.split(",").map(c=>c.trim()).filter(Boolean);if(s.length>=2){const c=[...s].reverse().join(" ");if(Ve[c])return Ve[c];if(s.length>=3){const u=[s[1],s[0]].join(" ");if(Ve[u])return Ve[u]}}if(Ve[a])return Ve[a];const r=a.replace(/\s*\(.*?\)\s*$/,"").trim();if(r!==a&&Ve[r])return Ve[r];for(const[c,u]of k_)if(c.test(a))return u;return""}function T_(e){const{mapId:t="unknown",dataSourceId:o="doxa-csv",dataSourceManager:n=null,dataStore:a=null,markRaw:s=_=>_}=e;n||console.error("useMapData: dataSourceManager is required!");const r=ie(!1),i=ie(null),l=ie(!1),c=ie([]),u=ie([]),g=ie(null),b=ie([]),v=ie([]),P=ie([]),T=ie(null);async function x(){if(!n)throw new Error("dataSourceManager is required for useMapData");r.value=!0,i.value=null;try{if(await n.init(),a&&a.hasSourceData&&a.hasSourceData(o)){const F=a.getSourceData(o);u.value=s(F.normalizedData||[])}else{const F=await n.setActiveSource(o);for(const R of F){const q=Cr(R.language||R.primary_language);q&&(R.language=q);const ee=P_(R);R.languageFamily=dr(ee)}u.value=s(F),a&&a.cacheSourceData&&a.cacheSourceData(o,{normalizedData:F,timestamp:Date.now()})}c.value=s(w_(u.value.map(F=>({id:F.uniqueId,slug:F.slug||"",rop3:F.peopleGroupId,peopleId3:F.peopleId3,name:F.name,language:F.language,languageFamily:F.languageFamily,country:F.country,population:F.population,status:F.engagementStatus||F.status,latitude:F.latitude,longitude:F.longitude,lng:F.longitude,lat:F.latitude,description:F.description,imageUrl:F.imageUrl,doxaRegion:F.doxaRegion||F.wagfRegion||"",peoplePraying:F.peoplePraying??null,_normalized:F}))));const _=n.getDataByLanguageFamily();b.value=Object.entries(_).map(([F,R])=>{const q=R.reduce((ee,he)=>{const De=parseInt(he.population)||0;return ee+De},0);return{name:F,count:R.length,peopleGroupCount:R.length,population:q,groups:R}}).sort((F,R)=>R.count-F.count);const A=n.getDataByRegion();v.value=Object.entries(A).map(([F,R])=>{const q=R.reduce((ee,he)=>{const De=parseInt(he.population)||0;return ee+De},0);return{name:F,count:R.length,peopleGroupCount:R.length,population:q,groups:R}}).sort((F,R)=>F.name.localeCompare(R.name));const m={bible:{count:0,population:0,groups:[]},jesusFilm:{count:0,population:0,groups:[]},radio:{count:0,population:0,groups:[]},gospel:{count:0,population:0,groups:[]},audio:{count:0,population:0,groups:[]},stories:{count:0,population:0,groups:[]},hasResources:{count:0,population:0,groups:[]},noResources:{count:0,population:0,groups:[]}};u.value.forEach(F=>{const R=parseInt(F.population)||0;let q=!1;F.bible==="Available"&&(m.bible.count++,m.bible.population+=R,m.bible.groups.push(F),q=!0),F.jesusFilm==="Available"&&(m.jesusFilm.count++,m.jesusFilm.population+=R,m.jesusFilm.groups.push(F),q=!0),F.radio==="Available"&&(m.radio.count++,m.radio.population+=R,m.radio.groups.push(F),q=!0),F.gospel==="Available"&&(m.gospel.count++,m.gospel.population+=R,m.gospel.groups.push(F),q=!0),F.audio==="Available"&&(m.audio.count++,m.audio.population+=R,m.audio.groups.push(F),q=!0),F.stories==="Available"&&(m.stories.count++,m.stories.population+=R,m.stories.groups.push(F),q=!0),q?(m.hasResources.count++,m.hasResources.population+=R,m.hasResources.groups.push(F)):(m.noResources.count++,m.noResources.population+=R,m.noResources.groups.push(F))});const M=u.value.length,D=u.value.reduce((F,R)=>F+(parseInt(R.population)||0),0),G={bible:"Bible",jesusFilm:"Jesus Film",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",hasResources:"Has Resources",noResources:"No Resources"},Y={bible:{count:M-m.bible.count,population:D-m.bible.population},jesusFilm:{count:M-m.jesusFilm.count,population:D-m.jesusFilm.population},radio:{count:M-m.radio.count,population:D-m.radio.population},gospel:{count:M-m.gospel.count,population:D-m.gospel.population},audio:{count:M-m.audio.count,population:D-m.audio.population},stories:{count:M-m.stories.count,population:D-m.stories.population}},Q="#2c3e50";return P.value=[{name:G.bible,key:"bible",count:m.bible.count,population:m.bible.population,isParent:!0,children:[{name:"No Bible",key:"noBible",count:Y.bible.count,population:Y.bible.population,color:Q}]},{name:G.jesusFilm,key:"jesusFilm",count:m.jesusFilm.count,population:m.jesusFilm.population,isParent:!0,children:[{name:"No Jesus Film",key:"noJesusFilm",count:Y.jesusFilm.count,population:Y.jesusFilm.population,color:Q}]},{name:G.radio,key:"radio",count:m.radio.count,population:m.radio.population,isParent:!0,children:[{name:"No Radio",key:"noRadio",count:Y.radio.count,population:Y.radio.population,color:Q}]},{name:G.gospel,key:"gospel",count:m.gospel.count,population:m.gospel.population,isParent:!0,children:[{name:"No Gospel",key:"noGospel",count:Y.gospel.count,population:Y.gospel.population,color:Q}]},{name:G.audio,key:"audio",count:m.audio.count,population:m.audio.population,isParent:!0,children:[{name:"No Audio",key:"noAudio",count:Y.audio.count,population:Y.audio.population,color:Q}]},{name:G.stories,key:"stories",count:m.stories.count,population:m.stories.population,isParent:!0,children:[{name:"No Stories",key:"noStories",count:Y.stories.count,population:Y.stories.population,color:Q}]},{name:G.hasResources,key:"hasResources",count:m.hasResources.count,population:m.hasResources.population,isParent:!0,children:[{name:G.noResources,key:"noResources",count:m.noResources.count,population:m.noResources.population,color:Q}]}],T.value=n.getStats(),l.value=!0,{peopleGroups:c.value,normalizedPeopleGroups:u.value,languageFamiliesData:b.value,doxaRegionsData:v.value,resourcesData:P.value,stats:T.value}}catch(_){throw console.error(`Failed to load data for map "${t}":`,_),i.value=_.message||"Failed to load data",_}finally{r.value=!1}}async function I(){var _,A,m;try{const M={},D=u.value||[];for(const G of D){const Y=G.countryIso||((A=(_=G._raw)==null?void 0:_.country_code)==null?void 0:A.value)||"",Q=(m=G._raw)==null?void 0:m.wagf_region,F=G.doxaRegion||G.wagfRegion||(Q&&typeof Q=="object"?Q.value:"")||"";Y&&F&&!M[Y]&&(M[Y]=F)}return g.value={isoToRegion:M},g.value}catch(M){throw console.error(`Error building regions data for map "${t}":`,M),i.value=M.message||"Failed to build regions",M}}function w(){return n?n.getDataByLanguageFamily():{}}function f(){return n?n.getDataByRegion():{}}function y(_){return w()[_]||[]}function E(_){return f()[_]||[]}function C(){c.value=[],u.value=[],g.value=null,b.value=[],v.value=[],P.value=[],T.value=null,l.value=!1,i.value=null}return{isLoading:r,isInitialized:l,error:i,peopleGroups:c,normalizedPeopleGroups:u,regionsData:g,languageFamiliesData:b,doxaRegionsData:v,resourcesData:P,stats:T,loadData:x,loadRegionsData:I,getDataByLanguageFamily:w,getDataByRegion:f,getPeopleGroupsByFamily:y,getPeopleGroupsByRegion:E,clearData:C}}const E_=ko&&ko.tagName.toUpperCase()==="SCRIPT"&&ko.src||new URL("demo-map.js",document.baseURI).href,fo=e=>String(e||"").trim().replace(/\/+$/,"");function rd(){try{const t=String(E_||"").split(/[?#]/)[0].match(/^(.*)\/([^/]+)\/([^/]+)\.js$/);return!t||t[2]!==t[3]?null:t[1]||null}catch{return null}}function C_(e){const t=e==null?void 0:e.embedBaseUrl;if(typeof t=="string"&&t.trim())return fo(t);if(typeof window<"u"){const o=window.MAP_EMBED_BASE_URL;if(typeof o=="string"&&o.trim())return fo(o)}return fo(rd()||"")}function id(e){const t=e==null?void 0:e.assetsBase;if(typeof t=="string"&&t.trim()){const n=fo(t);if(/^https?:\/\//i.test(n)||n.startsWith("/"))return n}const o=fo((e==null?void 0:e.treeBase)||"")||fo(rd()||"");if(o)try{const n=typeof document<"u"?document.baseURI:void 0;return fo(new URL(o+"/assets",n).href)}catch{return fo(o+"/assets")}return"./assets"}function L_({shareUrl:e,embedPath:t,profileConfig:o}={}){const n=o||null,a=typeof window<"u",s=e||(n==null?void 0:n.shareUrl);if(typeof s=="string"&&s.trim())return s.trim();const r=String(t||(n==null?void 0:n.shareEmbedPath)||"").trim();if(r){if(/^https?:\/\//i.test(r))return r;if(r.startsWith("/"))return a?window.location.origin+r:r;const i=C_(n),l=r.replace(/^\.\//,"");if(i)return i+"/"+l;if(typeof document<"u")try{return new URL(l,document.baseURI).href}catch{}return l}return a?window.location.origin+window.location.pathname:""}const ld={circleRadius:{standard:["interpolate",["linear"],["zoom"],0,3,2,3.5,4,4,5,5,6,6.5,7,8,8,10,10,14,12,18,14,22],highlighted:["interpolate",["linear"],["zoom"],0,4,4,5,8,12,12,20],faded:["interpolate",["linear"],["zoom"],0,2,4,2.5,8,5,12,8],compact:["interpolate",["linear"],["zoom"],0,2,4,3,8,6,12,10],large:["interpolate",["linear"],["zoom"],0,4,4,6,8,14,12,24],touchTarget:["interpolate",["linear"],["zoom"],0,12,2,15,4,19,6,20,8,21,10,22,12,24,14,28]}};function Lr(e="standard"){return ld.circleRadius[e]||ld.circleRadius.standard}const N_={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"};function Ce(e){return e==null?"":String(e).replace(/[&<>"'`]/g,t=>N_[t])}function M_(e,t=""){try{const o=new URL(String(e),typeof location<"u"?location.href:"https://example.invalid/");if(o.protocol==="http:"||o.protocol==="https:")return Ce(o.href)}catch{}return Ce(t)}function x_(e={}){const{getMap:t=()=>null,mapId:o="unknown",getLanguageFamilyColor:n=()=>"#999999",getNormalizedPeopleGroups:a=()=>[]}=e,s=Ee("uiStore"),{t:r,locale:i}=Ot(),l=ie([]);function c(f){const y=n(f.languageFamily),E="https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg";let C=f.imageUrl;(!C||C.includes("NoImageAvailable"))&&(C=E);const _=(f.name||"U")[0].toUpperCase(),A=["#e74c3c","#3498db","#2ecc71","#f39c12","#9b59b6","#1abc9c","#e67e22","#34495e"],m=_.charCodeAt(0)%A.length,M=A[m];return`
|
||
<div style="
|
||
width: 300px;
|
||
background: white;
|
||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||
">
|
||
<!-- Header with Avatar and Name -->
|
||
<div style="
|
||
display: flex;
|
||
align-items: center;
|
||
padding: 12px;
|
||
border-bottom: 1px solid #efefef;
|
||
">
|
||
<!-- Avatar -->
|
||
<div style="
|
||
width: 32px;
|
||
height: 32px;
|
||
border-radius: 4px;
|
||
background-color: ${Ce(M)};
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
color: white;
|
||
font-weight: 700;
|
||
font-size: 16px;
|
||
margin-right: 10px;
|
||
flex-shrink: 0;
|
||
">
|
||
${Ce(_)}
|
||
</div>
|
||
|
||
<!-- Name and Status -->
|
||
<div style="flex: 1; min-width: 0;">
|
||
<h3 style="
|
||
margin: 0;
|
||
font-size: 14px;
|
||
font-weight: 600;
|
||
color: #262626;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
white-space: nowrap;
|
||
">${Ce(f.name)}</h3>
|
||
<p style="
|
||
margin: 2px 0 0 0;
|
||
font-size: 12px;
|
||
color: #8e8e8e;
|
||
">${Ce(f.country||"Unknown")} • ${Ce(f.status||"Unknown Status")}</p>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Image -->
|
||
<div style="
|
||
width: 100%;
|
||
height: 200px;
|
||
background-color: #fafafa;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
overflow: hidden;
|
||
">
|
||
<img
|
||
src="${M_(C,E)}"
|
||
alt="${Ce(f.name)}"
|
||
style="
|
||
width: 100%;
|
||
height: 100%;
|
||
object-fit: cover;
|
||
"
|
||
onerror="this.onerror=null; this.src='${Ce(E)}'"
|
||
/>
|
||
</div>
|
||
|
||
<!-- Info Section -->
|
||
<div style="padding: 12px;">
|
||
<p style="margin: 0 0 6px 0; font-size: 13px;">
|
||
<strong>Language:</strong> ${Ce(f.language||"Unknown")}
|
||
</p>
|
||
<p style="margin: 0 0 6px 0; font-size: 13px;">
|
||
<strong>Family:</strong>
|
||
<span style="background: ${Ce(y)}; color: white; padding: 2px 8px; border-radius: 4px; font-size: 12px;">
|
||
${Ce(f.languageFamily||"Unknown")}
|
||
</span>
|
||
</p>
|
||
${f.population?`<p style="margin: 0 0 6px 0; font-size: 13px;"><strong>Population:</strong> ${Ce(f.population)}</p>`:""}
|
||
${f.description?`<p style="margin: 8px 0; font-size: 13px; color: #262626; line-height: 1.4;">${Ce(f.description)}</p>`:""}
|
||
</div>
|
||
</div>
|
||
`}function u(f){const y=f.iso_3166_1_alpha_3||"",C=f["name_"+((i==null?void 0:i.value)||"en")]||f.name_en||f.name||y,_=a(),A=y.toUpperCase(),m=_.filter(Q=>{const F=(Q.countryIso||Q.country||"").toUpperCase();return F&&F===A}),M=m.length,D=m[0],G=(D==null?void 0:D.wagfRegionLabel)||(D==null?void 0:D.doxaRegionLabel)||(D==null?void 0:D.doxaRegion)||(D==null?void 0:D.wagfRegion)||"—",Y=(D==null?void 0:D.wagfBlockLabel)||(D==null?void 0:D.wagfBlock)||"—";return`
|
||
<div style="padding: 8px; min-width: 220px;">
|
||
<h3 style="margin: 0 0 8px 0; font-size: 16px; font-weight: 600; color: #333;">
|
||
${Ce(C)}
|
||
</h3>
|
||
<p style="margin: 4px 0; font-size: 14px;">
|
||
<strong>${Ce(r("popup.country.wagfRegion"))}:</strong> ${Ce(G)}
|
||
</p>
|
||
<p style="margin: 4px 0; font-size: 14px;">
|
||
<strong>${Ce(r("popup.country.wagfBlock"))}:</strong> ${Ce(Y)}
|
||
</p>
|
||
<p style="margin: 4px 0; font-size: 14px;">
|
||
<strong>${Ce(r("popup.country.country"))}:</strong> ${Ce(C)} (${Ce(y)})
|
||
</p>
|
||
<p style="margin: 4px 0; font-size: 14px;">
|
||
<strong>${Ce(r("popup.country.uupgCount"))}:</strong> ${Ce(M)}
|
||
</p>
|
||
</div>
|
||
`}function g(f){const y=t();if(!y)return;const E=f||"language-family-pins";if(!y.getLayer(E))return;const C=_=>{try{const A=_.features[0],m=A.properties,M=A.geometry.coordinates.slice();for(;Math.abs(_.lngLat.lng-M[0])>180;)M[0]+=_.lngLat.lng>M[0]?360:-360;if(s&&s.legendMode!==void 0){s.selectPeopleGroup(A),s.isMobile&&s.legendState==="collapsed"&&s.setLegendState("open"),s.isMobile||window.dispatchEvent(new CustomEvent("dxm:openDesktopLegend",{detail:{mapId:o}}));return}new(Ju(y)).Popup({maxWidth:"320px",className:"people-group-popup"}).setLngLat(M).setHTML(c(m)).addTo(y)}catch(A){console.error(` [${o}] Pin click handler error:`,A)}};y.on("click",E,C),l.value.push({event:"click",layer:E,handler:C})}function b(){const f=t();if(!f)return;const y="regions-fill";if(!f.getLayer(y))return;const E=C=>{const _=["language-family-pins","language-family-pins-hitbox","people-groups-pins"];for(const A of _)if(f.getLayer(A)){const m=f.queryRenderedFeatures(C.point,{layers:[A]});if(m&&m.length>0)return}if(C.features&&C.features.length>0){const A=C.features[0].properties;new(Ju(f)).Popup().setLngLat(C.lngLat).setHTML(u(A)).addTo(f)}};f.on("click",y,E),l.value.push({event:"click",layer:y,handler:E})}function v(){const f=t();if(!f)return;const y="clusters";if(!f.getLayer(y))return;const E=C=>{const _=f.queryRenderedFeatures(C.point,{layers:[y]});if(!_.length)return;const A=_[0].properties.cluster_id,m=_[0].source;f.getSource(m).getClusterExpansionZoom(A,(M,D)=>{M||f.easeTo({center:_[0].geometry.coordinates,zoom:D})})};f.on("click",y,E),l.value.push({event:"click",layer:y,handler:E})}function P(f){const y=t();if(!y||!y.getLayer(f))return;const E=()=>{y.getCanvas().style.cursor="pointer"},C=()=>{y.getCanvas().style.cursor=""};y.on("mouseenter",f,E),y.on("mouseleave",f,C),l.value.push({event:"mouseenter",layer:f,handler:E}),l.value.push({event:"mouseleave",layer:f,handler:C})}function T(){g(),P("language-family-pins"),g("language-family-pins-hitbox"),P("language-family-pins-hitbox"),v(),P("clusters")}function x(){b(),P("regions-fill")}function I(){const f=t();f&&(f.getLayer("language-family-pins")&&T(),f.getLayer("regions-fill")&&x(),f.getLayer("people-groups-pins")&&(g(),P("people-groups-pins")))}function w(){const f=t();if(f){for(const{event:y,layer:E,handler:C}of l.value)try{f.off(y,E,C)}catch{}l.value=[]}}return{attachAllEventHandlers:I,attachLanguageFamilyEvents:T,attachRegionEvents:x,attachPinClickHandler:g,attachRegionClickHandler:b,attachClusterClickHandler:v,attachCursorHandlers:P,detachAllEventHandlers:w,generatePinPopupContent:c,generateRegionPopupContent:u,registeredHandlers:l}}const Nr=[">",["to-number",["get","peoplePraying"],0],0],Mr={0:.25,8:.4,14:.5},xr={0:.1,8:.18,14:.22},I_=["interpolate",["linear"],["zoom"],0,["case",Nr,Mr[0],xr[0]],8,["case",Nr,Mr[8],xr[8]],14,["case",Nr,Mr[14],xr[14]]],O_=[[/ sign language$/i,"Sign Language"]];function F_(e){if(!e||typeof e!="string")return null;const t=e.trim(),o=t.split(",").map(a=>a.trim()).filter(Boolean);if(o.length>=2){const a=[...o].reverse().join(" ");if(Ve[a])return Ve[a];if(o.length>=3){const s=[o[1],o[0]].join(" ");if(Ve[s])return Ve[s]}}if(Ve[t])return Ve[t];const n=t.replace(/\s*\(.*?\)\s*$/,"").trim();if(n!==t&&Ve[n])return Ve[n];for(const[a,s]of O_)if(a.test(t))return s;return null}function R_(e={}){const{getMap:t=()=>null,mapId:o="unknown",getLanguageFamilyColor:n=()=>"#999999",getNormalizedPeopleGroups:a=()=>[]}=e,s=()=>{const V=t();return V?pe(V):null},r=x_({getMap:s,mapId:o,getLanguageFamilyColor:n,getNormalizedPeopleGroups:a}),i=ie({languageFamilyPins:!1,regions:!1,peopleGroups:!1,familyConnections:!1}),l=ie({});function c(V,J="languageFamily"){const H=s();if(!H||!(V!=null&&V.length))return;const se=Ku(J),h=V.map(k=>{var K,U,p,d,L,j,X,W,N,z,te,ce,ye,Ge,Oe,Ft,qo,Ye,ut;return{type:"Feature",properties:{uniqueId:k.id||k.uniqueId,slug:k.slug||((K=k._normalized)==null?void 0:K.slug)||"",rop3:k.rop3||k.peopleGroupId,peopleId3:k.peopleId3||"",name:k.name,language:k.language,languageFamily:k.languageFamily||((U=k._normalized)==null?void 0:U.languageFamily)||F_(k.language)||"Unknown",affinityBlock:k.affinityBlock||k.affbloc||k.Affbloc||((p=k._normalized)==null?void 0:p.affinityBlock)||"Unknown",affinityBlockLabel:k.affinityBlockLabel||((d=k._normalized)==null?void 0:d.affinityBlockLabel)||"",cluster:k.cluster||((L=k._normalized)==null?void 0:L.cluster)||"",clusterLabel:k.clusterLabel||((j=k._normalized)==null?void 0:j.clusterLabel)||"",peopleGroup:k.peopleGroup||((X=k._normalized)==null?void 0:X.peopleGroup)||"",peopleGroupLabel:k.peopleGroupLabel||((W=k._normalized)==null?void 0:W.peopleGroupLabel)||"",doxaRegion:k.doxaRegion||((N=k._normalized)==null?void 0:N.doxaRegion)||"Unknown",wagfBlock:k.wagfBlock||((z=k._normalized)==null?void 0:z.wagfBlock)||"",wagfBlockLabel:k.wagfBlockLabel||((te=k._normalized)==null?void 0:te.wagfBlockLabel)||"",wagfRegionLabel:k.wagfRegionLabel||((ce=k._normalized)==null?void 0:ce.wagfRegionLabel)||"",country:k.country,countryIso:k.countryIso,countryIsoLabel:k.countryIsoLabel,countryName:k.countryName,religion:k.religion,religionCode:k.religionCode,religionLabel:k.religionLabel,religionName:k.religionName,population:k.population,status:k.status,description:k.description||"",imageUrl:k.imageUrl||"",peoplePraying:Number(k.peoplePraying??((ye=k._normalized)==null?void 0:ye.peoplePraying)??0),engagementStatus:k.engagementStatus===!0||k.engagementStatus===1||!1,adoptionStatus:k.adoptionStatus===!0||k.adoptionStatus===1||!1,bible:k.bible||((Ge=k._normalized)==null?void 0:Ge.bible)||"Not Available",jesusFilm:k.jesusFilm||((Oe=k._normalized)==null?void 0:Oe.jesusFilm)||"Not Available",radio:k.radio||((Ft=k._normalized)==null?void 0:Ft.radio)||"Not Available",gospel:k.gospel||((qo=k._normalized)==null?void 0:qo.gospel)||"Not Available",audio:k.audio||((Ye=k._normalized)==null?void 0:Ye.audio)||"Not Available",stories:k.stories||((ut=k._normalized)==null?void 0:ut.stories)||"Not Available",lng:parseFloat(k.longitude||k.lng)||0},geometry:{type:"Point",coordinates:[parseFloat(k.longitude||k.lng),parseFloat(k.latitude||k.lat)]}}}).filter(k=>!isNaN(k.geometry.coordinates[0])&&!isNaN(k.geometry.coordinates[1])),S=.04,$=k=>`${k.geometry.coordinates[0]},${k.geometry.coordinates[1]}`,O=new Map;for(const k of h){const K=$(k);O.has(K)||O.set(K,[]),O.get(K).push(k)}for(const k of O.values()){if(k.length<2)continue;const[K,U]=k[0].geometry.coordinates,p=k.length;for(let d=0;d<p;d++){const L=2*Math.PI*d/p;k[d].geometry.coordinates=[K+S*Math.cos(L),U+S*Math.sin(L)]}}const B={type:"FeatureCollection",features:h};H.addSource("language-families",{type:"geojson",data:B,promoteId:"uniqueId"}),H.addLayer({id:"language-family-pins-shadow",type:"circle",source:"language-families",paint:{"circle-radius":Lr("standard"),"circle-color":"rgba(0,0,0,0.12)","circle-blur":.8,"circle-translate":[0,1],"circle-stroke-width":0,"circle-opacity":1}}),H.addLayer({id:"language-family-pins",type:"circle",source:"language-families",paint:{"circle-radius":Lr("standard"),"circle-color":se,...Ho(H),"circle-stroke-width":I_,"circle-stroke-color":["case",[">",["to-number",["get","peoplePraying"],0],0],"#ffffff","#1f2937"],"circle-opacity":1,"circle-stroke-opacity":1,"circle-opacity-transition":{duration:250}}}),H.addLayer({id:"language-family-pins-hitbox",type:"circle",source:"language-families",paint:{"circle-radius":Lr("touchTarget"),"circle-color":"rgba(0,0,0,0)","circle-stroke-width":0,"circle-opacity":0}}),i.value.languageFamilyPins=!0,r.attachLanguageFamilyEvents()}function u(V,J="doxa-regions"){const H=s();if(!H)return;H.getLayer("regions-fill")&&H.removeLayer("regions-fill"),H.getLayer("regions-border")&&H.removeLayer("regions-border"),H.getSource("regions")&&H.removeSource("regions");const se={africa:"#ff2e2e",asia:"#1a8cff",europe:"#1ee05f","latin_america_&_caribbean":"#FFEB3B",middle_east:"#a83dff","north_america_&_non-spanish_caribbean":"#00e0bd",oceania:"#ff7f11"},h="#cccccc",S=V&&V.isoToRegion?V.isoToRegion:{},$=[],O={};for(const[U,p]of Object.entries(S)){const d=se[String(p).toLowerCase()];d&&$.push(U,d),O[p]||(O[p]=[]),O[p].push(U)}l.value=O;const B=$.length?["match",["get","iso_3166_1_alpha_3"],...$,h]:h,k=H.getLayer("language-family-pins-shadow")?"language-family-pins-shadow":H.getLayer("language-family-pins")?"language-family-pins":void 0,K=(()=>{var U,p,d;try{return!!((d=(p=(U=H.getContainer)==null?void 0:U.call(H))==null?void 0:p.classList)!=null&&d.contains("maplibregl-map"))}catch{return!1}})();K?(H.addSource("regions",{type:"geojson",data:{type:"FeatureCollection",features:[]}}),fetch(`${id(null)}/boundaries/world-adm0.geojson`).then(U=>U.json()).then(U=>{for(const d of U.features||[])d.properties&&d.properties.iso3&&(d.properties.iso_3166_1_alpha_3=d.properties.iso3);const p=H.getSource("regions");p&&p.setData(U)}).catch(U=>console.warn("[map-layers] region boundaries failed to load",U))):H.addSource("regions",{type:"vector",url:"mapbox://mapbox.country-boundaries-v1"}),H.addLayer({id:"regions-fill",type:"fill",source:"regions",...K?{}:{"source-layer":"country_boundaries"},paint:{"fill-color":B,"fill-opacity":J==="none"?.1:.7,"fill-antialias":!0,...Ho(H,"fill"),"fill-opacity-transition":{duration:300}}},k),H.addLayer({id:"regions-border",type:"line",source:"regions",...K?{}:{"source-layer":"country_boundaries"},paint:{"line-color":B,"line-width":1,"line-opacity":.9,...Ho(H,"line")}},k),i.value.regions=!0,r.attachRegionEvents()}function g(V,J){const H=s();if(!H||!V||!(J!=null&&J.length))return;b();const se=J.filter(B=>{var K;return(B.languageFamily||((K=B._normalized)==null?void 0:K.languageFamily)||"Unknown")===V});if(se.length<2)return;const h=n(V),S=[],$=15,O=[...se].sort((B,k)=>(B.longitude||B.lng)-(k.longitude||k.lng));for(let B=0;B<O.length;B++){const k=O[B],K=k.longitude||k.lng,U=k.latitude||k.lat;for(let p=B+1;p<Math.min(B+15,O.length);p++){const d=O[p],L=d.longitude||d.lng,j=d.latitude||d.lat;Math.sqrt(Math.pow(K-L,2)+Math.pow(U-j,2))<$&&S.push({type:"Feature",properties:{family:V},geometry:{type:"LineString",coordinates:[[K,U],[L,j]]}})}}H.addSource("family-connections",{type:"geojson",data:{type:"FeatureCollection",features:S}}),H.addLayer({id:"family-connection-lines",type:"line",source:"family-connections",paint:{"line-color":h,"line-width":.75,"line-opacity":.5,...Ho(H,"line")}},"language-family-pins"),i.value.familyConnections=!0}function b(){const V=s();V&&(V.getLayer("family-connection-lines")&&V.removeLayer("family-connection-lines"),V.getSource("family-connections")&&V.removeSource("family-connections"),i.value.familyConnections=!1)}function v(V,J){const H=s();if(!H)return;const se=H.getSource(V);se&&se.setData(J)}function P(V,J=null){const H=s();H&&(H.getLayer(V)&&H.removeLayer(V),H.getSource(J||V)&&H.removeSource(J||V))}function T(V){const J=s();return J?!!J.getLayer(V):!1}function x(V,J,H){const se=s();!se||!se.getLayer(V)||se.setPaintProperty(V,J,H)}function I(){r.detachAllEventHandlers(),We()}let w=null,f=!1,y=0;const E="prayer-glow-base",C=4,_=[];for(let V=0;V<C;V++)_.push("prayer-glow-ring-"+V);const A=[E,..._],m=6,M=.3,D=2.5,Y=1e3/12,Q={duration:0,delay:0};let F=!0,R=null;function q(){return["case",[">=",["get","peoplePraying"],Ko],"#15803d",[">",["get","peoplePraying"],0],"#d97706","rgba(0,0,0,0)"]}const ee=[0,5,2,6,4,7,5,9,6,12,7,14,8,18,10,25,12,32,14,40];function he(V,J){const H=["interpolate",["linear"],["zoom"]];for(let se=0;se<V.length;se+=2)H.push(V[se],V[se+1]*J);return H}function De(){const V=s();if(!V||!V.getSource("language-families"))return;const J=[">",["get","peoplePraying"],0],H=q();if(!A.every(h=>V.getLayer(h))){for(const h of A)if(V.getLayer(h))try{V.removeLayer(h)}catch{}V.addLayer({id:E,type:"circle",source:"language-families",filter:J,paint:{"circle-radius":he(ee,1),"circle-color":H,"circle-blur":.3,"circle-opacity":.45,"circle-stroke-width":0,...Ho(V)}},"language-family-pins");for(const h of _)V.addLayer({id:h,type:"circle",source:"language-families",filter:J,paint:{"circle-radius":he(ee,1),"circle-radius-transition":Q,"circle-color":"rgba(0,0,0,0)","circle-blur":0,"circle-opacity":1,"circle-stroke-width":2.5,"circle-stroke-color":H,"circle-stroke-opacity":0,"circle-stroke-opacity-transition":Q,...Ho(V)}},"language-family-pins")}}function Le(){const V=s();if(V)for(const J of A)V.getLayer(J)&&V.removeLayer(J)}function Ne(V){const J=s();if(!J)return;const H=[">",["get","peoplePraying"],0],se=V?["all",H,V]:H;for(const h of A)if(J.getLayer(h))try{J.setFilter(h,se)}catch{}}function tt(){const V=s();if(V){if(De(),w&&(cancelAnimationFrame(w),w=null),f=!0,V.getLayer("language-family-pins"))try{V.setLayoutProperty("language-family-pins","circle-sort-key",["case",[">=",["get","peoplePraying"],Ko],1,[">",["get","peoplePraying"],0],1,3])}catch{}At(V),st()}}function st(){w&&(cancelAnimationFrame(w),w=null);const V=++y;let J=performance.now(),H=-1/0;function se(h){if(!f||V!==y)return;const S=s();if(!S||!A.some(O=>S.getLayer(O))){w=null;return}if(h-H<Y||!F){w=requestAnimationFrame(se);return}H=h;const $=(h-J)/1e3;for(let O=0;O<C;O++){const B=_[O];if(!S.getLayer(B))continue;const k=O*(m/C),U=(($-k)%m+m)%m/m,p=M+U*(D-M),d=.5*(1-U);try{S.setPaintProperty(B,"circle-radius",he(ee,p)),S.setPaintProperty(B,"circle-stroke-opacity",d)}catch{}}w=requestAnimationFrame(se)}w=requestAnimationFrame(se)}function At(V){if(R||typeof IntersectionObserver>"u")return;const J=typeof V.getContainer=="function"?V.getContainer():null;if(J)try{R=new IntersectionObserver(H=>{for(const se of H)F=se.isIntersecting},{threshold:0}),R.observe(J)}catch{R=null,F=!0}}function We(){if(R){try{R.disconnect()}catch{}R=null}F=!0}function Me(){f=!1,w&&(cancelAnimationFrame(w),w=null),We();try{Le();const V=s();V&&V.getLayer("language-family-pins")&&V.setLayoutProperty("language-family-pins","circle-sort-key",void 0)}catch{}}return{layersAdded:i,regionIsoMap:l,addLanguageFamilyLayer:c,addRegionsLayer:u,addFamilyConnectionLines:g,removeFamilyConnectionLines:b,updateLayerSource:v,removeLayer:P,hasLayer:T,setPaintProperty:x,mapEvents:r,startPrayerGlow:tt,stopPrayerGlow:Me,syncGlowFilter:Ne,cleanup:I}}const Ir={};function D_(){return typeof window<"u"&&window.MAP_APP_API_URL||typeof{url:ko&&ko.tagName.toUpperCase()==="SCRIPT"&&ko.src||new URL("demo-map.js",document.baseURI).href}<"u"&&(Ir==null?void 0:Ir.VITE_API_BASE_URL)||""}const Or={default:"doxa",lists:[{id:"doxa",aliases:["2000","project-2000"],label:"Project 2000: DOXA's people groups",definition:"The people groups DOXA serves, as its live list gives them",source:"doxa",filter:null},{id:"unreached",aliases:["7000","project-7000"],label:"Project 7000: unreached people groups",definition:"IMB Lostness Priority 0-2 (Frontier, Pioneer or Expanding Unreached: under 2% evangelical)",source:"imb",filter:{lostness:[0,1,2]}},{id:"frontier",aliases:["4700","project-4700"],label:"Project 4700: frontier people groups",definition:"IMB Lostness Priority 0 (Frontier Unreached: 0.1% evangelical or less)",source:"imb",filter:{lostness:[0]}},{id:"frontier-500k",aliases:["700","project-700"],label:"Project 700: frontier people groups of 500,000 or more",definition:"IMB Lostness Priority 0 and Population of at least 500,000",source:"imb",filter:{lostness:[0],minPopulation:5e5}},{id:"unengaged",aliases:[],label:"Unengaged unreached people groups",definition:"IMB Lostness Priority 0-2 and Engagement Status Unengaged",source:"imb",filter:{lostness:[0,1,2],engagement:["Unengaged"]}}]},Ma=Or.default,Fr=new Map;for(const e of Or.lists){Fr.set(e.id,e);for(const t of e.aliases||[])Fr.set(String(t).toLowerCase(),e)}function j_(e){return Fr.get(String(e??"").toLowerCase().trim())||null}function cd(e){let t=e;if(t&&typeof t=="object"&&"value"in t&&!("list"in t)&&!("profile"in t)&&(t=t.value),typeof t=="string")try{t=JSON.parse(t)}catch{t=null}return t&&typeof t=="object"?t:null}const ud=new Set;function B_(e){const t=cd(e),o=t==null?void 0:t.list,n=typeof location<"u"?new URLSearchParams(location.search).get("list"):null,a=typeof window<"u"?window.MAP_LIST:void 0,s=o||n||a||Ma,r=j_(s);return r?r.id:(ud.has(s)||(ud.add(s),console.warn(`[list] unknown people-group list "${s}", showing "${Ma}". Known: ${Or.lists.map(i=>i.id).join(", ")}`)),Ma)}const xa=new Map;function z_(e,t){const o=`${id(cd(t))}/people-groups/lists/${e}.json`;return xa.has(o)||xa.set(o,fetch(o).then(n=>{if(!n.ok)throw new Error(`HTTP ${n.status}`);return n.json()}).then(n=>new Set(Array.isArray(n==null?void 0:n.slugs)?n.slugs:[])).catch(n=>{throw xa.delete(o),new Error(`list "${e}" membership ${o}: ${n.message}`)})),xa.get(o)}async function dd(e,t,{key:o=n=>n==null?void 0:n.slug}={}){const n=B_(t);if(n===Ma||!Array.isArray(e))return e;try{const a=await z_(n,t);return e.filter(s=>a.has(o(s)))}catch(a){return console.error(`[list] ${a.message}. Showing no people groups rather than the wrong list.`),[]}}class pd{constructor(t={}){this.sourcesConfig=null,this.activeSource=null,this.rawData=[],this.normalizedData=[],this.dataByUniqueId=new Map,this.baseUrl=typeof window<"u"&&window.MAP_APP_BASE_URL||"./",this.locale=t.locale||null,this.profileConfig=t.profileConfig||null,this.cache=new Map,this.cacheEnabled=!0,this.cacheTTL=5*60*1e3}async init(){return this.sourcesConfig=au,this.sourcesConfig}getActiveSourceId(){var t;return((t=this.sourcesConfig)==null?void 0:t.activeSource)||"doxa-csv"}getSourceConfig(t){var o,n;return(n=(o=this.sourcesConfig)==null?void 0:o.sources)==null?void 0:n[t]}async setActiveSource(t){const o=this.getSourceConfig(t);if(!o)throw new Error(`Source not found: ${t}`);if(this.activeSource=o,this.cacheEnabled&&this.cache.has(t)){const n=this.cache.get(t);return this.normalizedData=n.normalizedData,this.dataByUniqueId=n.dataByUniqueId,this.normalizedData}return o.type==="csv"?await this.loadCSVData(o):o.type==="api"?await this.loadAPIData(o):o.type==="rest-api"&&await this.loadRestApiData(o),this.cacheEnabled&&this.cache.set(t,{normalizedData:this.normalizedData,dataByUniqueId:this.dataByUniqueId,timestamp:Date.now()}),this.normalizedData}clearCache(t=null){t?this.cache.delete(t):this.cache.clear()}isCached(t){return this.cache.has(t)}async loadActiveSource(){return this.sourcesConfig||await this.init(),this.setActiveSource(this.getActiveSourceId())}parseCSV(t){const o=[],n=[];let a="",s=!1,r=[],i=!0;for(let l=0;l<t.length;l++){const c=t[l],u=t[l+1];if(c==='"')s&&u==='"'?(a+='"',l++):s=!s;else if(c===","&&!s)r.push(a.trim()),a="";else if((c===`
|
||
`||c==="\r")&&!s){if(c==="\r"&&u===`
|
||
`&&l++,a||r.length>0){if(r.push(a.trim()),a="",i)n.push(...r),i=!1;else if(r.length>1){const g={};n.forEach((b,v)=>{g[b]=r[v]||""}),o.push(g)}r=[]}}else a+=c}if((a||r.length>0)&&(r.push(a.trim()),!i&&r.length>1)){const l={};n.forEach((c,u)=>{l[c]=r[u]||""}),o.push(l)}return{headers:n,data:o}}async loadCSVData(t){try{const n=await(await fetch(this.baseUrl+t.path)).text(),{headers:a,data:s}=this.parseCSV(n);return this.rawData=s,this.validateFieldMappings(t.fieldMappings,a,t.name),this.normalizeData(t),this.normalizedData}catch(o){throw console.error("Failed to load CSV data:",o),o}}validateFieldMappings(t,o,n){const a=new Set(o.map(r=>r.trim())),s=[];for(const[r,i]of Object.entries(t||{}))if(Array.isArray(i))for(const l of i)a.has(l)||s.push({systemField:r,sourceField:l,isComposite:!0});else i&&!a.has(i)&&s.push({systemField:r,sourceField:i,isComposite:!1});s.length>0&&console.warn(`[DataSourceManager] ${n}: missing CSV columns:`,s)}async loadAPIData(t){try{const n=await(await fetch(t.url||t.endpoint)).json();return this.rawData=await dd(Array.isArray(n)?n:n.posts||n.data||n.peopleGroups||n.results||[],this.profileConfig),this.normalizeData(t),this.normalizedData}catch(o){throw console.error("Failed to load API data:",o),o}}async loadRestApiData(t){var l,c;const o=D_(),n=((l=t.endpoints)==null?void 0:l.bulk)||"/api/people-groups/list",a=((c=t.defaultFields)==null?void 0:c.join(","))||"",s=[];a&&s.push(`fields=${a}`);const r={...t.queryParams||{}};this.locale&&(r.lang=this.locale);for(const[u,g]of Object.entries(r))s.push(`${u}=${encodeURIComponent(g)}`);const i=`${o}${n}?${s.join("&")}`;try{const u=await fetch(i);if(!u.ok)throw new Error(`HTTP ${u.status}: ${u.statusText}`);const g=u.headers.get("content-type")||"";if(!g.includes("application/json"))throw new Error(`API returned "${g}" instead of JSON. Server at ${o} may be down or misconfigured.`);const b=await u.json();return this.rawData=await dd(Array.isArray(b)?b:b.posts||b.data||b.results||[],this.profileConfig),this.normalizeData(t),this.normalizedData}catch(u){throw console.error(`[rest-api] Failed to load from ${t.id}:`,u),u}}normalizeData(t){const o=t.fieldMappings||{};this.normalizedData=[],this.dataByUniqueId=new Map;for(const n of this.rawData){const a={};for(const[l,c]of Object.entries(o))if(Array.isArray(c)){const u=c.map(g=>this.getFieldValue(n,g));a[l]=u.join("_")}else a[l]=this.getFieldValue(n,c);if(a.latitude=parseFloat(a.latitude)||0,a.longitude=parseFloat(a.longitude)||0,a.latitude===0&&a.longitude===0)continue;a.populationNum=this.parsePopulation(a.population),a.imageUrl=this.getImageUrl(a,t.imageConfig);const s=a.engagementStatus;s!=null&&(typeof s=="object"&&"value"in s?(a.engagementStatusLabel=s.label||s.value,a.engagementStatus=s.value==="engaged"):a.engagementStatus=s===!0||s===1||s==="1"||s==="true"||typeof s=="number"&&s>0||typeof s=="string"&&parseInt(s,10)>0);const r=a.adoptionStatus;r!=null&&(a.adoptionStatus=r===!0||r===1||r==="1"||r==="true"||typeof r=="object"&&!!(r!=null&&r.value)||typeof r=="number"&&r>0||typeof r=="string"&&parseInt(r,10)>0);const i=["doxaRegion","wagfRegion","wagfBlock","wagfMember","affinityBlock","cluster","peopleGroup","countryIso","religion","religionCode"];for(const l of i){const c=a[l];c!=null&&typeof c=="object"&&"value"in c?(a[l+"Label"]=c.label||c.value,a[l]=c.value):c!=null&&typeof c=="string"&&c!==""&&(a[l+"Label"]||(a[l+"Label"]=c))}a.countryName=a.countryIsoLabel||a.country||a.countryIso||"",a.religionName=a.religionLabel||a.religion||"",a._raw=n,this.normalizedData.push(a),this.dataByUniqueId.set(a.uniqueId,a)}this.rawData=null}getFieldValue(t,o){if(!o)return"";if(t[o]!==void 0)return t[o];const n=o.trim();if(t[n]!==void 0)return t[n];for(const a of Object.keys(t))if(a.trim()===n||a.includes(n)||n.includes(a.trim()))return t[a];return""}parsePopulation(t){if(!t)return 0;const o=String(t).replace(/,/g,"").trim(),n=parseInt(o,10);return isNaN(n)?0:n}getImageUrl(t,o){if(!o)return"";const n=o.placeholderUrl||"",a=t[o.useField];return a&&String(a).trim()&&!String(a).includes("NoImageAvailable")?a:n}getData(){return this.normalizedData}getByUniqueId(t){return this.dataByUniqueId.get(t)}getByCoordinates(t,o,n=1e-4){return this.normalizedData.find(a=>Math.abs(a.latitude-t)<n&&Math.abs(a.longitude-o)<n)}getByPeopleGroupId(t){return this.normalizedData.filter(o=>o.peopleGroupId===t)}getLanguageFamilies(){const t=new Set;return this.normalizedData.forEach(o=>{o.languageFamily&&t.add(o.languageFamily)}),Array.from(t).sort()}getDataByLanguageFamily(){const t={};return this.normalizedData.forEach(o=>{const n=o.languageFamily||"Unknown";t[n]||(t[n]=[]),t[n].push(o)}),t}getDataByRegion(){const t={};return this.normalizedData.forEach(o=>{const n=o.doxaRegion||"Unknown";t[n]||(t[n]=[]),t[n].push(o)}),t}getStats(){return{totalRecords:this.normalizedData.length,withPeopleId3:this.normalizedData.filter(t=>t.peopleId3).length,withPhotos:this.normalizedData.filter(t=>t.imageUrl&&!String(t.imageUrl).includes("NoImageAvailable")).length,languageFamilies:this.getLanguageFamilies().length,countries:new Set(this.normalizedData.map(t=>t.country)).size,regions:Object.keys(this.getDataByRegion()).length}}}new pd;const G_={__name:"MapToolbar",props:{hasGeocoder:{type:Boolean,default:!0}},setup(e){const t=ie(null);return lt("mapToolbar",{el:t}),Go(`
|
||
.map-toolbar {
|
||
position: absolute;
|
||
top: 6px;
|
||
inset-inline-end: 3px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: var(--map-toolbar-gap, 8px);
|
||
z-index: 10;
|
||
}
|
||
.map-toolbar .mcb,
|
||
.map-toolbar .hbg-btn { width: 32px; height: 32px; }
|
||
.map-toolbar .hbg-ctrl { margin: 10px 0 0 0; }
|
||
@media (max-width: 767px) {
|
||
.map-toolbar { top: 72px; gap: 6px; }
|
||
.map-toolbar.map-toolbar--no-geocoder { top: 6px; gap: 6px; }
|
||
}
|
||
`,"map-toolbar"),(o,n)=>(ue(),$e("div",{ref_key:"toolbarEl",ref:t,class:ot(["map-toolbar",{"map-toolbar--no-geocoder":!e.hasGeocoder}])},[is(o.$slots,"default")],2))}},U_=["title","aria-label","disabled"],Nn={__name:"MapControlButton",props:{isDark:{type:Boolean,default:!1},title:{type:String,default:""},active:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["click"],setup(e){return Go(`
|
||
.mcb{
|
||
width:var(--map-btn-size,40px);height:var(--map-btn-size,40px);
|
||
background:#fff;
|
||
border:none;
|
||
border-radius:50%;
|
||
cursor:pointer;
|
||
user-select:none;-webkit-user-select:none;
|
||
display:flex;align-items:center;justify-content:center;
|
||
box-shadow:0 1px 3px rgba(0,0,0,0.18);
|
||
transition:background-color 0.2s,box-shadow 0.2s,transform 0.1s;
|
||
color:#333;
|
||
flex-shrink:0;
|
||
outline:none;
|
||
-webkit-tap-highlight-color:transparent;
|
||
}
|
||
.mcb:hover:not(:disabled){background:#f0f0f0;box-shadow:0 2px 8px rgba(0,0,0,0.18),0 4px 16px rgba(0,0,0,0.12);}
|
||
.mcb:active:not(:disabled){transform:scale(0.93);}
|
||
.mcb:disabled{opacity:0.4;cursor:not-allowed;}
|
||
.mcb:focus-visible{outline:2px solid #1a73e8;outline-offset:2px;}
|
||
.mcb.dark:focus-visible{outline:2px solid #92b195;outline-offset:2px;}
|
||
.mcb.active{background:#e8f0fe;color:#1a73e8;}
|
||
.mcb.dark{background:#3b463d;color:#F3F3F1;border:1px solid rgba(255,255,255,0.14);box-shadow:0 1px 4px rgba(0,0,0,0.4);}
|
||
.mcb.dark:hover:not(:disabled){background:#4e594f;box-shadow:0 2px 8px rgba(0,0,0,0.5);}
|
||
.mcb.dark.active{background:#4e594f;color:#92b195;}
|
||
@media(max-width:767px){.mcb{width:36px;height:36px;}}
|
||
`,"map-control-button"),(t,o)=>(ue(),$e("button",{class:ot(["mcb",{dark:e.isDark,active:e.active}]),title:e.title,"aria-label":e.title||void 0,disabled:e.disabled,onClick:o[0]||(o[0]=n=>t.$emit("click"))},[is(t.$slots,"default")],10,U_))}},K_={__name:"ZoomInButton",props:{map:{type:Object,default:null},isDark:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},setup(e){const{t}=Ot(),o=e;function n(){var a;o.disabled||(a=o.map)==null||a.zoomIn()}return(a,s)=>(ue(),gt(Nn,{"is-dark":e.isDark,disabled:e.disabled,title:Ue(t)("buttons.zoomIn"),onClick:n},{default:to(()=>[...s[0]||(s[0]=[oe("span",{style:{"font-size":"20px","line-height":"1","font-weight":"600"}},"+",-1)])]),_:1},8,["is-dark","disabled","title"]))}},H_={__name:"ZoomOutButton",props:{map:{type:Object,default:null},isDark:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},setup(e){const{t}=Ot(),o=e;function n(){var a;o.disabled||(a=o.map)==null||a.zoomOut()}return(a,s)=>(ue(),gt(Nn,{"is-dark":e.isDark,disabled:e.disabled,title:Ue(t)("buttons.zoomOut"),onClick:n},{default:to(()=>[...s[0]||(s[0]=[oe("span",{style:{"font-size":"22px","line-height":"1","font-weight":"600"}},"−",-1)])]),_:1},8,["is-dark","disabled","title"]))}},W_={__name:"LocationButton",props:{map:{type:Object,default:null},isDark:{type:Boolean,default:!1},center:{type:Array,default:()=>[20,10]},zoom:{type:Number,default:1.8},userZoom:{type:Number,default:10}},setup(e){const{t}=Ot(),o=e;function n(){var s;(s=o.map)==null||s.flyTo({center:o.center,zoom:o.zoom,duration:1200})}function a(){if(o.map){if(typeof navigator>"u"||!navigator.geolocation){n();return}navigator.geolocation.getCurrentPosition(s=>{const{longitude:r,latitude:i}=s.coords;Number.isFinite(r)&&Number.isFinite(i)?o.map.flyTo({center:[r,i],zoom:o.userZoom,duration:1500}):n()},()=>n(),{enableHighAccuracy:!1,timeout:5e3,maximumAge:6e4})}}return(s,r)=>(ue(),gt(Nn,{"is-dark":e.isDark,title:Ue(t)("buttons.resetView"),onClick:a},{default:to(()=>[...r[0]||(r[0]=[oe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"currentColor"},[oe("path",{d:"M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z"})],-1)])]),_:1},8,["is-dark","title"]))}},q_={key:0,xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 29 29",fill:"currentColor"},V_={key:1,xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 29 29",fill:"currentColor"},Y_={__name:"FullscreenButton",props:{mapContainer:{type:Object,default:null},isDark:{type:Boolean,default:!1}},emits:["change"],setup(e,{emit:t}){const{t:o}=Ot(),n=e,a=t,s=ie(!1);let r=null,i=null,l=null,c=null,u=null,g=null,b=null,v=null,P=null,T=null,x=null,I=0,w=0,f=null,y=null;function E(){if(typeof document>"u")return!1;const F=typeof navigator<"u"&&navigator.userAgent||"";return/iPad|iPhone|iPod/.test(F)||F.includes("Mac")&&typeof document<"u"&&"ontouchend"in document?!1:!!(document.fullscreenEnabled||document.webkitFullscreenEnabled)}function C(){var F,R,q;return((q=(R=(F=n.mapContainer)==null?void 0:F.getRootNode)==null?void 0:R.call(F))==null?void 0:q.host)??null}function _(){var R,q;const F=(q=(R=n.mapContainer)==null?void 0:R.getRootNode)==null?void 0:q.call(R);return document.fullscreenElement||document.webkitFullscreenElement||(F&&F instanceof ShadowRoot?F.fullscreenElement:null)||null}function A(F){const R=F.requestFullscreen||F.webkitRequestFullscreen;if(!R)return Promise.reject(new Error("Fullscreen API unavailable"));const q=R.call(F);return q&&typeof q.then=="function"?q:Promise.resolve()}function m(){const F=document.exitFullscreen||document.webkitExitFullscreen;if(!F)return Promise.reject(new Error("Fullscreen API unavailable"));const R=F.call(document);return R&&typeof R.then=="function"?R:Promise.resolve()}function M(){const F=C();if(!F)return!1;if(l=F,i=F.style.cssText,F.style.position="fixed",F.style.top="0",F.style.left="0",F.style.right="0",F.style.bottom="0",F.style.width="100vw",F.style.height="100vh",F.style.height="100dvh",F.style.zIndex="2147483647",F.style.margin="0",F.style.borderRadius="0",F.style.touchAction="pan-x pan-y pinch-zoom",typeof document<"u"){I=window.scrollY||window.pageYOffset||0,w=window.scrollX||window.pageXOffset||0;const R=document.body,q=document.documentElement;c=R?R.style.overflow:null,u=q?q.style.overflow:null,g=R?R.style.position:null,b=R?R.style.top:null,v=R?R.style.left:null,P=R?R.style.width:null,T=R?R.style.touchAction:null,x=q?q.style.touchAction:null,q&&(q.style.overflow="hidden",q.style.touchAction="none"),R&&(R.style.overflow="hidden",R.style.position="fixed",R.style.top=`-${I}px`,R.style.left=`-${w}px`,R.style.width="100%",R.style.touchAction="none"),f=ee=>{if(!l)return;const he=ee.target;he&&(he===l||l.contains&&l.contains(he))||ee.cancelable&&ee.preventDefault()},y=ee=>{if(!l)return;const he=ee.target;he&&(he===l||l.contains&&l.contains(he))||ee.cancelable&&ee.preventDefault()},document.addEventListener("touchmove",f,{passive:!1,capture:!0}),document.addEventListener("wheel",y,{passive:!1,capture:!0})}return!0}function D(){if(l){if(l.style.cssText=i||"",l=null,i=null,typeof document<"u"){const F=document.body,R=document.documentElement;F&&(F.style.overflow=c??"",F.style.position=g??"",F.style.top=b??"",F.style.left=v??"",F.style.width=P??"",F.style.touchAction=T??""),R&&(R.style.overflow=u??"",R.style.touchAction=x??""),f&&(document.removeEventListener("touchmove",f,{capture:!0}),f=null),y&&(document.removeEventListener("wheel",y,{capture:!0}),y=null),typeof window<"u"&&(I||w)&&window.scrollTo(w,I)}c=null,u=null,g=null,b=null,v=null,P=null,T=null,x=null,I=0,w=0}}function G(){typeof window>"u"||window.requestAnimationFrame(()=>{window.dispatchEvent(new Event("resize"))})}function Y(){if(!E()){s.value?(D(),s.value=!1,a("change",!1)):M()&&(s.value=!0,a("change",!0)),G();return}if(_())m().then(()=>{s.value=!1,a("change",!1)}).catch(()=>{});else{const R=C()??document.documentElement;A(R).then(()=>{s.value=!0,a("change",!0)}).catch(()=>{A(document.documentElement).then(()=>{s.value=!0,a("change",!0)}).catch(()=>{})})}}function Q(){s.value=!!_(),a("change",s.value)}return _o(()=>{var R,q;document.addEventListener("fullscreenchange",Q),document.addEventListener("webkitfullscreenchange",Q);const F=(q=(R=n.mapContainer)==null?void 0:R.getRootNode)==null?void 0:q.call(R);F instanceof ShadowRoot&&(r=F,F.addEventListener("fullscreenchange",Q),F.addEventListener("webkitfullscreenchange",Q))}),xo(()=>{document.removeEventListener("fullscreenchange",Q),document.removeEventListener("webkitfullscreenchange",Q),r&&(r.removeEventListener("fullscreenchange",Q),r.removeEventListener("webkitfullscreenchange",Q),r=null),l&&D()}),(F,R)=>(ue(),gt(Nn,{"is-dark":e.isDark,active:s.value,title:Ue(o)("buttons.toggleFullscreen"),onClick:Y},{default:to(()=>[s.value?(ue(),$e("svg",V_,[...R[1]||(R[1]=[oe("path",{d:"M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z"},null,-1)])])):(ue(),$e("svg",q_,[...R[0]||(R[0]=[oe("path",{d:"M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z"},null,-1)])]))]),_:1},8,["is-dark","active","title"]))}},X_=["aria-label"],J_={class:"mcm-header"},Z_={class:"mcm-title"},Q_={class:"mcm-body"},e$=".dsm-map-area, .rm-map-area, .dm-map-area, [data-map-area]",Rr="doxa-map-menu-open",t$={__name:"MapControlMenu",props:{open:{type:Boolean,default:!1},title:{type:String,default:""},width:{type:Number,default:340},isDark:{type:Boolean,default:!1},maxHeight:{type:Number,default:null},height:{type:Number,default:null},matchToolbar:{type:Boolean,default:!1}},emits:["close"],setup(e,{emit:t}){Go(`
|
||
.mcm{position:absolute;z-index:var(--z-menu,3000);display:flex;flex-direction:column;box-sizing:border-box;
|
||
background:#161b22;border:1px solid #30363d;border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,0.45);
|
||
color:#e6edf3;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:13px;
|
||
overflow:hidden;opacity:0;transform:translateY(-4px) scale(0.98);animation:mcm-in 0.18s ease-out forwards;}
|
||
@keyframes mcm-in{to{opacity:1;transform:translateY(0) scale(1);}}
|
||
.mcm.light{background:#ffffff;border-color:#d8dee4;box-shadow:0 6px 24px rgba(0,0,0,0.16);color:#1f2328;}
|
||
.mcm-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;min-height:32px;flex:0 0 auto;border-bottom:1px solid #21262d;}
|
||
.mcm.light .mcm-header{border-bottom-color:#d8dee4;}
|
||
.mcm-title{font:600 10px ui-monospace,monospace;color:#73A17F;text-transform:uppercase;letter-spacing:0.07em;}
|
||
.mcm.light .mcm-title{color:#3b463d;}
|
||
.mcm-close{width:22px;height:20px;border:1px solid #30363d;background:rgba(110,118,129,0.12);border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#8b949e;padding:0;transition:color 0.1s,background 0.1s,border-color 0.1s;}
|
||
.mcm-close:hover{color:#c9d1d9;background:rgba(59,70,61,0.18);border-color:#73A17F;}
|
||
.mcm.light .mcm-close{background:rgba(208,215,222,0.4);border-color:#d0d7de;color:#57606a;}
|
||
.mcm.light .mcm-close:hover{color:#3b463d;background:rgba(59,70,61,0.12);border-color:#3b463d;}
|
||
.mcm-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;}
|
||
`,"map-control-menu");const o=e,n=t,a=Ee("mapToolbar",null),s=ie(null),r=ie(null),i=ie({});function l(){var m;const v=(m=a==null?void 0:a.el)==null?void 0:m.value,P=s.value;if(!v||!P){i.value={};return}const T=P.getBoundingClientRect(),x=v.getBoundingClientRect(),I=(x.left+x.right)/2>(T.left+T.right)/2,w=8,f=12,y=I?T.right-x.left+w:x.right-T.left+w,E=Math.max(200,Math.min(o.width,T.width-y-f)),C=Math.max(0,x.top-T.top);let A=P.getAttribute&&P.getAttribute("data-map-area")==="share-fallback"?Math.max(120,(window.innerHeight||900)-x.top-f):Math.max(120,T.height-C-f);o.matchToolbar&&(A=Math.max(120,Math.min(A,x.height))),o.maxHeight&&(A=Math.min(A,o.maxHeight)),i.value={top:`${Math.round(C)}px`,[I?"right":"left"]:`${Math.round(y)}px`,width:`${Math.round(E)}px`,maxHeight:`${Math.round(A)}px`,...o.height?{height:`${Math.round(Math.min(o.height,A))}px`}:{}}}function c(v){o.open&&v.detail!==r.value&&n("close")}pt(()=>o.open,async v=>{var P;if(v){await rn(),l();try{(P=s.value)==null||P.dispatchEvent(new CustomEvent(Rr,{detail:r.value}))}catch{}}});function u(){o.open&&l()}function g(v){v.key==="Escape"&&o.open&&n("close")}function b(v){var T;if(!o.open)return;const P=v.composedPath?v.composedPath():[v.target];r.value&&P.includes(r.value)||(T=a==null?void 0:a.el)!=null&&T.value&&P.includes(a.el.value)||P.some(x=>{var I,w,f,y;return((w=(I=x==null?void 0:x.classList)==null?void 0:I.contains)==null?void 0:w.call(I,"mapboxgl-canvas"))||((y=(f=x==null?void 0:x.classList)==null?void 0:f.contains)==null?void 0:y.call(f,"maplibregl-canvas"))})&&n("close")}return _o(()=>{var v,P,T;s.value=((P=(v=a==null?void 0:a.el)==null?void 0:v.value)==null?void 0:P.closest(e$))||null,(T=s.value)==null||T.addEventListener(Rr,c),window.addEventListener("resize",u),document.addEventListener("click",b,!0),document.addEventListener("keydown",g)}),xo(()=>{var v;(v=s.value)==null||v.removeEventListener(Rr,c),window.removeEventListener("resize",u),document.removeEventListener("click",b,!0),document.removeEventListener("keydown",g)}),(v,P)=>(ue(),gt(_p,{to:s.value,disabled:!s.value},[e.open?(ue(),$e("div",{key:0,ref_key:"el",ref:r,class:ot(["mcm",{light:!e.isDark}]),style:Jo(i.value),role:"dialog","aria-label":e.title},[oe("div",J_,[oe("span",Z_,nt(e.title),1),oe("button",{class:"mcm-close",type:"button","aria-label":"Close",onClick:P[0]||(P[0]=T=>n("close"))},[...P[1]||(P[1]=[oe("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round"},[oe("line",{x1:"2",y1:"2",x2:"12",y2:"12"}),oe("line",{x1:"12",y1:"2",x2:"2",y2:"12"})],-1)])])]),oe("div",Q_,[is(v.$slots,"default")])],14,X_)):Lt("",!0)],8,["to","disabled"]))}},o$={class:"share-steps"},n$={class:"share-tabs"},a$={key:0,class:"share-body"},s$={class:"share-url-box"},r$={class:"share-url-text"},i$={key:0,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},l$={key:1,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"},c$={key:1,class:"share-body"},u$={class:"share-size-pills"},d$=["onClick"],p$={class:"share-code-box"},g$={key:0,width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},f$={key:1,width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"},h$={__name:"ShareButton",props:{isDark:{type:Boolean,default:!1},embedPath:{type:String,default:""}},setup(e){Go(`
|
||
.share-wrap{position:relative;display:inline-block;border-radius:50%;}
|
||
.share-wrap::before{content:'';position:absolute;inset:-2px;border-radius:50%;padding:2px;pointer-events:none;
|
||
background:conic-gradient(#ff6b6b,#ffd166,#6bd67b,#4dabf7,#9775fa,#f783ac,#ff6b6b);
|
||
-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
|
||
opacity:0.6;animation:share-ring-turn 5s linear infinite;}
|
||
.share-wrap:hover::before{opacity:0.95;}
|
||
@keyframes share-ring-turn{to{transform:rotate(360deg);}}
|
||
@media(prefers-reduced-motion:reduce){.share-wrap::before{animation:none;}}
|
||
.share-steps{margin:10px 14px 6px;padding:0 0 0 15px;list-style:'- ';font:14px/1.55 system-ui,sans-serif;color:#c9d1d9;}
|
||
.share-steps li{margin:0 0 3px;padding-left:3px;}
|
||
.share-steps li:last-child{font-weight:600;color:#92b195;}
|
||
.share-pop.light .share-steps{color:#3b463d;}
|
||
.share-pop.light .share-steps li:last-child{color:#3b463d;}
|
||
.share-pop{
|
||
font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
|
||
font-size:13px;
|
||
color:#e6edf3;
|
||
}
|
||
.share-pop.light{color:#1f2328;}
|
||
.share-tabs{
|
||
display:flex;
|
||
gap:0;
|
||
padding:0 16px;
|
||
margin-top:8px;
|
||
border-bottom:1px solid rgba(255,255,255,0.08);
|
||
}
|
||
.share-pop.light .share-tabs{border-bottom:1px solid rgba(0,0,0,0.08);}
|
||
.share-tab{
|
||
padding:6px 0;
|
||
margin-right:20px;
|
||
font-size:12.5px;
|
||
font-weight:600;
|
||
background:none;border:none;
|
||
color:inherit;opacity:0.5;
|
||
cursor:pointer;
|
||
border-bottom:2px solid transparent;
|
||
transition:opacity 0.15s,border-color 0.2s;
|
||
font-family:inherit;
|
||
white-space:nowrap;
|
||
}
|
||
.share-tab:hover{opacity:0.75;}
|
||
.share-tab.active{
|
||
opacity:1;
|
||
border-bottom-color:#4a90d9;
|
||
}
|
||
.share-pop.light .share-tab.active{
|
||
border-bottom-color:#1a73e8;
|
||
}
|
||
.share-body{
|
||
padding:12px 16px 14px 16px;
|
||
}
|
||
.share-url-box{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:0;
|
||
background:rgba(0,0,0,0.22);
|
||
border:1px solid rgba(255,255,255,0.08);
|
||
border-radius:10px;
|
||
overflow:hidden;
|
||
}
|
||
.share-pop.light .share-url-box{
|
||
background:rgba(0,0,0,0.035);
|
||
border:1px solid rgba(0,0,0,0.10);
|
||
}
|
||
.share-url-text{
|
||
flex:1;
|
||
padding:11px 14px;
|
||
font-size:13px;
|
||
color:#b0b8c8;
|
||
overflow:hidden;
|
||
text-overflow:ellipsis;
|
||
white-space:nowrap;
|
||
-webkit-user-select:all;
|
||
user-select:all;
|
||
}
|
||
.share-pop.light .share-url-text{color:#555;}
|
||
.share-primary-btn{
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
gap:8px;
|
||
width:100%;
|
||
padding:12px 0;
|
||
margin-top:14px;
|
||
background:#4a90d9;
|
||
border:none;
|
||
border-radius:10px;
|
||
color:#fff;
|
||
font-size:14.5px;
|
||
font-weight:600;
|
||
cursor:pointer;
|
||
transition:background 0.15s,transform 0.1s;
|
||
font-family:inherit;
|
||
}
|
||
.share-primary-btn:hover{background:#3d7ec5;}
|
||
.share-primary-btn:active{transform:scale(0.98);}
|
||
.share-primary-btn.copied{
|
||
background:#2ea44f;
|
||
}
|
||
.share-pop.light .share-primary-btn{
|
||
background:#1a73e8;
|
||
}
|
||
.share-pop.light .share-primary-btn:hover{
|
||
background:#1565c0;
|
||
}
|
||
.share-pop.light .share-primary-btn.copied{
|
||
background:#2ea44f;
|
||
}
|
||
.share-social-row{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:10px;
|
||
margin-top:16px;
|
||
padding-top:14px;
|
||
border-top:1px solid rgba(255,255,255,0.06);
|
||
}
|
||
.share-pop.light .share-social-row{
|
||
border-top:1px solid rgba(0,0,0,0.06);
|
||
}
|
||
.share-social-label{
|
||
font-size:12px;
|
||
opacity:0.45;
|
||
font-weight:500;
|
||
margin-right:auto;
|
||
white-space:nowrap;
|
||
}
|
||
.share-social-btn{
|
||
width:36px;height:36px;
|
||
border-radius:50%;
|
||
border:1px solid rgba(255,255,255,0.10);
|
||
background:rgba(255,255,255,0.06);
|
||
display:flex;align-items:center;justify-content:center;
|
||
cursor:pointer;
|
||
color:inherit;
|
||
transition:background 0.15s,border-color 0.15s;
|
||
}
|
||
.share-social-btn:hover{
|
||
background:rgba(255,255,255,0.12);
|
||
border-color:rgba(255,255,255,0.18);
|
||
}
|
||
.share-pop.light .share-social-btn{
|
||
border:1px solid rgba(0,0,0,0.10);
|
||
background:rgba(0,0,0,0.03);
|
||
}
|
||
.share-pop.light .share-social-btn:hover{
|
||
background:rgba(0,0,0,0.07);
|
||
border-color:rgba(0,0,0,0.16);
|
||
}
|
||
.share-embed-desc{
|
||
font-size:13.5px;
|
||
line-height:1.55;
|
||
opacity:0.72;
|
||
margin-bottom:16px;
|
||
}
|
||
.share-size-pills{
|
||
display:flex;
|
||
gap:8px;
|
||
margin-bottom:14px;
|
||
}
|
||
.share-size-pill{
|
||
padding:6px 14px;
|
||
border-radius:20px;
|
||
border:1px solid rgba(255,255,255,0.12);
|
||
background:transparent;
|
||
color:inherit;
|
||
font-size:12.5px;
|
||
font-weight:500;
|
||
cursor:pointer;
|
||
transition:background 0.15s,border-color 0.15s;
|
||
font-family:inherit;
|
||
}
|
||
.share-size-pill:hover{
|
||
background:rgba(255,255,255,0.06);
|
||
}
|
||
.share-size-pill.active{
|
||
background:rgba(74,144,217,0.18);
|
||
border-color:rgba(74,144,217,0.45);
|
||
color:#7ab8f5;
|
||
}
|
||
.share-pop.light .share-size-pill{
|
||
border:1px solid rgba(0,0,0,0.12);
|
||
}
|
||
.share-pop.light .share-size-pill:hover{
|
||
background:rgba(0,0,0,0.04);
|
||
}
|
||
.share-pop.light .share-size-pill.active{
|
||
background:rgba(26,115,232,0.10);
|
||
border-color:rgba(26,115,232,0.40);
|
||
color:#1a73e8;
|
||
}
|
||
.share-code-box{
|
||
background:rgba(0,0,0,0.28);
|
||
border:1px solid rgba(255,255,255,0.06);
|
||
border-radius:10px;
|
||
padding:12px 14px;
|
||
font-family:'SF Mono',SFMono-Regular,Consolas,'Liberation Mono',Menlo,monospace;
|
||
font-size:11.5px;
|
||
line-height:1.5;
|
||
color:#a0aab8;
|
||
word-break:break-all;
|
||
white-space:pre-wrap;
|
||
height:auto;
|
||
-webkit-user-select:all;
|
||
user-select:all;
|
||
}
|
||
.share-pop.light .share-code-box{
|
||
background:rgba(0,0,0,0.035);
|
||
border:1px solid rgba(0,0,0,0.08);
|
||
color:#444;
|
||
}
|
||
.share-secondary-btn{
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
gap:8px;
|
||
width:100%;
|
||
padding:11px 0;
|
||
margin-top:12px;
|
||
background:rgba(255,255,255,0.08);
|
||
border:1px solid rgba(255,255,255,0.12);
|
||
border-radius:10px;
|
||
color:#e0e4ec;
|
||
font-size:14px;
|
||
font-weight:600;
|
||
cursor:pointer;
|
||
transition:background 0.15s,border-color 0.15s,transform 0.1s;
|
||
font-family:inherit;
|
||
}
|
||
.share-secondary-btn:hover{
|
||
background:rgba(255,255,255,0.13);
|
||
border-color:rgba(255,255,255,0.18);
|
||
}
|
||
.share-secondary-btn:active{transform:scale(0.98);}
|
||
.share-secondary-btn.copied{
|
||
background:rgba(46,164,79,0.16);
|
||
border-color:rgba(46,164,79,0.35);
|
||
color:#5cd680;
|
||
}
|
||
.share-pop.light .share-secondary-btn{
|
||
background:rgba(0,0,0,0.04);
|
||
border:1px solid rgba(0,0,0,0.12);
|
||
color:#333;
|
||
}
|
||
.share-pop.light .share-secondary-btn:hover{
|
||
background:rgba(0,0,0,0.07);
|
||
}
|
||
.share-pop.light .share-secondary-btn.copied{
|
||
background:rgba(46,164,79,0.10);
|
||
border-color:rgba(46,164,79,0.30);
|
||
color:#2ea44f;
|
||
}
|
||
`,"share-button");const{t,tm:o,rt:n}=Ot(),a=e,s=ie(null),r=ie(!1),i=ie(null),l=ie(null),c=ie("link"),u=ie(!1),g=ie(!1),b=ie("medium"),v={small:{label:"Small",height:400},medium:{label:"Medium",height:600},large:{label:"Large",height:800}},P=Ee("profileConfig",null),T=ge(()=>L_({embedPath:a.embedPath,profileConfig:Ue(P)||null})),x=ge(()=>{const M=v[b.value].height;return'<iframe src="'+T.value+'" width="100%" height="'+M+'" style="border:none; border-radius:12px;" allowfullscreen></iframe>'});function I(){r.value=!r.value,r.value&&(c.value="link",u.value=!1,g.value=!1)}function w(){r.value=!1}async function f(M){try{if(navigator.clipboard&&window.isSecureContext)return await navigator.clipboard.writeText(M),!0}catch{}try{const D=document.createElement("textarea");D.value=M,D.setAttribute("readonly",""),D.style.cssText="position:fixed;top:-1000px;opacity:0",document.body.appendChild(D),D.select();const G=document.execCommand("copy");return document.body.removeChild(D),G}catch{return!1}}async function y(){await f(T.value)&&(u.value=!0,setTimeout(()=>{u.value=!1},2e3))}async function E(){await f(x.value)&&(g.value=!0,setTimeout(()=>{g.value=!1},2e3))}const C=Ee("mapToolbar",null),_=ie(null);lt("mapToolbar",C||{el:_});const A=!C;function m(M){if(s.value=M||null,!A||!M){M||(_.value=null);return}const D=M.offsetParent||M.parentElement;D&&!D.closest(".dsm-map-area, .rm-map-area, .dm-map-area, [data-map-area]")&&D.setAttribute("data-map-area","share-fallback"),_.value=M}return(M,D)=>(ue(),$e("div",{ref:m,class:"share-wrap","data-share-root":""},[we(Nn,{ref_key:"btnEl",ref:l,"is-dark":e.isDark,active:r.value,title:Ue(t)("buttons.share"),onClick:I},{default:to(()=>[...D[2]||(D[2]=[oe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[oe("path",{d:"M4 12v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7"}),oe("polyline",{points:"16 6 12 2 8 6"}),oe("line",{x1:"12",y1:"2",x2:"12",y2:"15"})],-1)])]),_:1},8,["is-dark","active","title"]),we(t$,{open:r.value,title:Ue(t)("buttons.share"),"is-dark":e.isDark,onClose:w},{default:to(()=>[oe("div",{ref_key:"popoverEl",ref:i,class:ot(["share-pop",{light:!e.isDark}])},[oe("ul",o$,[(ue(!0),$e(Be,null,ra(Ue(o)("buttons.shareSteps"),(G,Y)=>(ue(),$e("li",{key:Y},nt(Ue(n)(G)),1))),128))]),oe("div",n$,[oe("button",{class:ot(["share-tab",{active:c.value==="link"}]),onClick:D[0]||(D[0]=G=>c.value="link")},"Embed link",2),oe("button",{class:ot(["share-tab",{active:c.value==="embed"}]),onClick:D[1]||(D[1]=G=>c.value="embed")},"Add to Your Website",2)]),c.value==="link"?(ue(),$e("div",a$,[oe("div",s$,[oe("div",r$,nt(T.value),1)]),oe("button",{class:ot(["share-primary-btn",{copied:u.value}]),onClick:y},[u.value?(ue(),$e("svg",l$,[...D[4]||(D[4]=[oe("polyline",{points:"20 6 9 17 4 12"},null,-1)])])):(ue(),$e("svg",i$,[...D[3]||(D[3]=[oe("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"},null,-1),oe("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"},null,-1)])])),_t(" "+nt(u.value?"Copied!":"Copy Link"),1)],2)])):Lt("",!0),c.value==="embed"?(ue(),$e("div",c$,[D[7]||(D[7]=oe("div",{class:"share-embed-desc"}," Paste this code into your website builder (WordPress, Squarespace, Wix, or any site that accepts HTML widgets). ",-1)),oe("div",u$,[(ue(),$e(Be,null,ra(v,(G,Y)=>oe("button",{key:Y,class:ot(["share-size-pill",{active:b.value===Y}]),onClick:Q=>b.value=Y},nt(G.label),11,d$)),64))]),oe("div",p$,nt(x.value),1),oe("button",{class:ot(["share-secondary-btn",{copied:g.value}]),onClick:E},[g.value?(ue(),$e("svg",f$,[...D[6]||(D[6]=[oe("polyline",{points:"20 6 9 17 4 12"},null,-1)])])):(ue(),$e("svg",g$,[...D[5]||(D[5]=[oe("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"},null,-1),oe("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"},null,-1)])])),_t(" "+nt(g.value?"Copied!":"Copy Code"),1)],2)])):Lt("",!0)],2)]),_:1},8,["open","title","is-dark"])],512))}},m$={class:"dm-root"},b$={class:"dm-tab-bar"},y$=["onClick"],_$={class:"dm-map-area"},$$={key:0,class:"dm-loading"},v$={key:1,class:"dm-error"},A$={key:3,class:"dm-legend"},S$={class:"dm-legend-title"},w$=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"demo-map",setup(e){Go(`
|
||
.dm-root { position:absolute;inset:0;display:flex;flex-direction:column;overflow:hidden;
|
||
font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif; }
|
||
.dm-tab-bar { flex:0 0 auto;display:flex;align-items:center;background:#fff;
|
||
border-bottom:2px solid #e0e0e0;box-shadow:0 2px 4px rgba(0,0,0,.08);height:48px;
|
||
padding:0 12px;gap:4px;z-index:10; }
|
||
.dm-tab { background:none;border:none;padding:0 20px;height:100%;font-size:14px;
|
||
font-weight:500;color:#555;cursor:pointer;border-bottom:3px solid transparent;
|
||
transition:color .15s,border-color .15s,background .15s;white-space:nowrap; }
|
||
.dm-tab:hover { background:rgba(139,92,246,.06);color:#8b5cf6; }
|
||
.dm-tab.active { color:#8b5cf6;border-bottom-color:#8b5cf6;background:rgba(139,92,246,.06); }
|
||
.dm-map-area { flex:1 1 0;position:relative;overflow:hidden; }
|
||
.dm-map-canvas { position:absolute;inset:0; }
|
||
.dm-loading { position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
|
||
background:#f8f9fa;color:#555;font-size:14px;z-index:5; }
|
||
.dm-error { position:absolute;top:50%;left:12px;right:12px;z-index:7;transform:translateY(-50%);
|
||
text-align:center;font-size:13px;line-height:1.5;color:#7f1d1d;background:rgba(255,255,255,.94);
|
||
border:1px solid rgba(127,29,29,.25);border-radius:10px;padding:12px 14px;
|
||
box-shadow:0 2px 10px rgba(0,0,0,.16); }
|
||
.dm-legend { position:absolute;left:10px;bottom:26px;z-index:6;background:rgba(255,255,255,.92);
|
||
border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.12);
|
||
padding:10px 14px;max-width:220px; }
|
||
.dm-legend-title { font-size:12px;font-weight:700;color:#374151;margin-bottom:6px;
|
||
text-transform:uppercase;letter-spacing:.04em; }
|
||
.dm-legend-row { display:flex;align-items:center;gap:8px;font-size:12px;color:#4b5563;
|
||
line-height:1.7; }
|
||
.dm-dot { flex:none;width:10px;height:10px;border-radius:50%;
|
||
border:1px solid rgba(0,0,0,.25); }
|
||
`,"demo-map");const t=Ee("profileConfig"),o=Ee("mapboxToken"),n=Ee("dataSource"),a=ge(()=>{var M;return((M=t==null?void 0:t.value)==null?void 0:M.isDark)===!0}),s=[{id:"religion",label:"By Religion",colorStrategy:Na.RELIGION},{id:"purple",label:"Purple Pins",colorStrategy:Na.SINGLE_COLOR}],r=ge(()=>{var M;return((M=t==null?void 0:t.value)==null?void 0:M.tabs)??s}),i=ie(null),l=ge(()=>r.value.find(M=>M.id===i.value)??r.value[0]);function c(M){if(M===i.value)return;i.value=M;const D=r.value.find(Y=>Y.id===M),G=E.value;!D||!G||!G.getLayer("language-family-pins")||G.setPaintProperty("language-family-pins","circle-color",Ku(D.colorStrategy))}const u=ge(()=>{var D,G;const M=kr((D=l.value)==null?void 0:D.colorStrategy);return M?M.families?Object.entries(M.families).map(([Y,Q])=>{var F;return{label:Q,color:((F=M.palette)==null?void 0:F[Y])??M.fallback}}):[{label:"All people groups",color:((G=M.palette)==null?void 0:G.pin)??M.fallback}]:[]}),g=ge(()=>{var M,D;return((D=kr((M=l.value)==null?void 0:M.colorStrategy))==null?void 0:D.name)??"Legend"}),b=Ee("instanceId",null),v=(b==null?void 0:b.value)||b||"demo-map-"+Math.random().toString(36).slice(2,7);lt("mapId",v);const P=Ee("mapStore"),T=Ee("dataStore"),x=Ee("uiStore"),I=ie(null),w=ie(!1),f=ie(null),y=new pd,{map:E,initializeMap:C,destroy:_}=__({containerRef:I,accessToken:o.value,provider:Yu(t),style:"mapbox://styles/mapbox/light-v11",center:[20,10],zoom:1.8}),A=T_({mapId:v,dataSourceId:n.value,dataSourceManager:y,dataStore:T,markRaw:M=>M}),m=R_({getMap:()=>E.value,mapId:v,getLanguageFamilyColor:Ca,getNormalizedPeopleGroups:()=>A.normalizedPeopleGroups.value||[]});return _o(async()=>{var D,G;i.value=((D=r.value[0])==null?void 0:D.id)??null,(G=x==null?void 0:x.updateBreakpoint)==null||G.call(x,window.innerWidth);const M=A.loadData().catch(Y=>(console.error("[demo-map] Data load failed:",Y),{normalizedPeopleGroups:[]}));try{await C()}catch(Y){console.error("[demo-map] Map failed to initialize —",Y),f.value=String((Y==null?void 0:Y.message)||Y);return}if(!E.value){console.error("[demo-map] Map failed to initialize — check token and container"),f.value="Map failed to initialize — check token and container";return}E.value.once("style.load",async()=>{var Y,Q,F;try{const{normalizedPeopleGroups:R}=await M;(Y=P==null?void 0:P.registerMap)==null||Y.call(P,v,E.value),n_(E.value,"mercator"),R!=null&&R.length&&m.addLanguageFamilyLayer(R,(Q=l.value)==null?void 0:Q.colorStrategy),(F=P==null?void 0:P.setMapReady)==null||F.call(P,v),w.value=!0}catch(R){console.error("[demo-map] Map ready failed:",R),f.value=String((R==null?void 0:R.message)||R)}})}),xo(()=>{var M;(M=P==null?void 0:P.unregisterMap)==null||M.call(P,v),_()}),(M,D)=>(ue(),$e("div",m$,[oe("div",b$,[(ue(!0),$e(Be,null,ra(r.value,G=>{var Y;return ue(),$e("button",{key:G.id,class:ot(["dm-tab",{active:((Y=l.value)==null?void 0:Y.id)===G.id}]),onClick:Q=>c(G.id)},nt(G.label),11,y$)}),128))]),oe("div",_$,[!w.value&&!f.value?(ue(),$e("div",$$,"Loading map…")):Lt("",!0),f.value?(ue(),$e("div",v$,"The map could not be loaded. "+nt(f.value),1)):Lt("",!0),oe("div",{ref_key:"mapContainer",ref:I,class:"dm-map-canvas"},null,512),w.value&&Ue(E)?(ue(),gt(G_,{key:2},{default:to(()=>[we(K_,{map:Ue(E),"is-dark":a.value},null,8,["map","is-dark"]),we(H_,{map:Ue(E),"is-dark":a.value},null,8,["map","is-dark"]),we(W_,{map:Ue(E),"is-dark":a.value},null,8,["map","is-dark"]),we(Y_,{"map-container":I.value,"is-dark":a.value},null,8,["map-container","is-dark"]),we(h$,{"is-dark":a.value,"embed-path":"demo-map/demo-map/index.html"},null,8,["is-dark"])]),_:1})):Lt("",!0),w.value?(ue(),$e("div",A$,[oe("div",S$,nt(g.value),1),(ue(!0),$e(Be,null,ra(u.value,G=>(ue(),$e("div",{key:G.label,class:"dm-legend-row"},[oe("span",{class:"dm-dot",style:Jo({background:G.color})},null,4),_t(nt(G.label),1)]))),128))])):Lt("",!0)])]))}}},Symbol.toStringTag,{value:"Module"}))})();
|