From a82c0df6f60adbd42ddcf1f2b671ea5929f1853a Mon Sep 17 00:00:00 2001 From: doxa-maps Date: Wed, 16 Sep 2026 03:05:53 +0000 Subject: [PATCH] Re-sync doxa-maps-build: maplibre-capable pages + provider-aware demo --- .../connectivity-list/index.html | 7 +- .../connectivity-map/index.html | 7 +- .../cities-internet/data-tables/index.html | 7 +- .../country-posters/countries-map/index.html | 7 +- .../country-poster-wall/index.html | 7 +- .../doxa-maps/demo-map/demo-map.js | 38 +++--- .../doxa-maps/demo-map/demo-map/index.html | 9 +- .../demo-map/demo-map/maplibre/index.html | 124 ++++++++++++++++++ .../doxa-maps/demo-map/index.html | 2 +- .../doxa-research-map/research-map/index.html | 7 +- .../doxa-simple-map/adoption/index.html | 7 +- .../doxa-simple-map/engagement/index.html | 7 +- .../doxa-simple-map/index.html | 7 +- .../doxa-simple-map/prayer/index.html | 7 +- .../gospel-resources/charts/index.html | 7 +- .../gospel-resources/data-tables/index.html | 7 +- .../resources-list/index.html | 7 +- .../gospel-resources/resources-map/index.html | 7 +- .../js/doxa-maps-build/doxa-maps/index.html | 2 +- .../doxa-maps-build/doxa-maps/manifest.json | 21 ++- .../my-upg-100-list/poster-wall/index.html | 7 +- .../my-upg-100-list/upg-100-list/index.html | 7 +- .../research-dashboard/index.html | 7 +- .../template-bundle/template-map-a/index.html | 7 +- .../template-bundle/template-map-b/index.html | 7 +- 25 files changed, 265 insertions(+), 64 deletions(-) create mode 100644 public/js/doxa-maps-build/doxa-maps/demo-map/demo-map/maplibre/index.html diff --git a/public/js/doxa-maps-build/doxa-maps/cities-internet/connectivity-list/index.html b/public/js/doxa-maps-build/doxa-maps/cities-internet/connectivity-list/index.html index e897adbb..120ff1ef 100644 --- a/public/js/doxa-maps-build/doxa-maps/cities-internet/connectivity-list/index.html +++ b/public/js/doxa-maps-build/doxa-maps/cities-internet/connectivity-list/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"connectivity-list","dataSource":"pray-tools","instanceId":"cities-internet-connectivity-list","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("cities-internet-map"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it. diff --git a/public/js/doxa-maps-build/doxa-maps/cities-internet/connectivity-map/index.html b/public/js/doxa-maps-build/doxa-maps/cities-internet/connectivity-map/index.html index 3e7177be..dfed341a 100644 --- a/public/js/doxa-maps-build/doxa-maps/cities-internet/connectivity-map/index.html +++ b/public/js/doxa-maps-build/doxa-maps/cities-internet/connectivity-map/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"connectivity-map","dataSource":"pray-tools","instanceId":"cities-internet-connectivity-map","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("cities-internet-map"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it. diff --git a/public/js/doxa-maps-build/doxa-maps/cities-internet/data-tables/index.html b/public/js/doxa-maps-build/doxa-maps/cities-internet/data-tables/index.html index e7c40ee0..7fcd09a7 100644 --- a/public/js/doxa-maps-build/doxa-maps/cities-internet/data-tables/index.html +++ b/public/js/doxa-maps-build/doxa-maps/cities-internet/data-tables/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"data-tables","dataSource":"pray-tools","instanceId":"cities-internet-data-tables","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("cities-internet-map"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it. diff --git a/public/js/doxa-maps-build/doxa-maps/country-posters/countries-map/index.html b/public/js/doxa-maps-build/doxa-maps/country-posters/countries-map/index.html index 7ee65e27..a039193a 100644 --- a/public/js/doxa-maps-build/doxa-maps/country-posters/countries-map/index.html +++ b/public/js/doxa-maps-build/doxa-maps/country-posters/countries-map/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"countries-map","dataSource":"pray-tools","instanceId":"country-posters-countries-map","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("country-posters-map"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it. diff --git a/public/js/doxa-maps-build/doxa-maps/country-posters/country-poster-wall/index.html b/public/js/doxa-maps-build/doxa-maps/country-posters/country-poster-wall/index.html index d684eac6..4bac383e 100644 --- a/public/js/doxa-maps-build/doxa-maps/country-posters/country-poster-wall/index.html +++ b/public/js/doxa-maps-build/doxa-maps/country-posters/country-poster-wall/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"country-poster-wall","dataSource":"pray-tools","instanceId":"country-posters-country-poster-wall","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("country-posters-map"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it. diff --git a/public/js/doxa-maps-build/doxa-maps/demo-map/demo-map.js b/public/js/doxa-maps-build/doxa-maps/demo-map/demo-map.js index 84126677..595fb2e6 100644 --- a/public/js/doxa-maps-build/doxa-maps/demo-map/demo-map.js +++ b/public/js/doxa-maps-build/doxa-maps/demo-map/demo-map.js @@ -1,46 +1,46 @@ (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".profile-loader[data-v-5e13684a]{width:100%;height:100%;position:relative}.profile-error[data-v-5e13684a]{padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;font-family:monospace;font-size:13px}")),document.head.appendChild(e)}}catch(d){console.error("vite-plugin-css-injected-by-js",d)}})(); -(function(){"use strict";var aa=typeof document<"u"?document.currentScript:null;const Nb="modulepreload",Ib=function(e){return"/"+e},Pb={},Nc=function(t,n,o){let a=Promise.resolve();function s(i){const r=new Event("vite:preloadError",{cancelable:!0});if(r.payload=i,window.dispatchEvent(r),!r.defaultPrevented)throw i}return a.then(i=>{for(const r of i||[])r.status==="rejected"&&s(r.reason);return t().catch(s)})},xs=null,Nn={pin:"#8b5cf6"},Ic=Nn.pin;function js(){return Nn.pin}function sa(){return["to-color",Nn.pin]}const Bs=sa,Pc=Object.freeze(Object.defineProperty({__proto__:null,PALETTE:Nn,PROPERTY_KEY:xs,applyColor:sa,buildColorExpression:Bs,default:{name:"Single Color",propertyKey:xs,palette:Nn,getColor:js,applyColor:sa,buildColorExpression:Bs,fallback:Ic},getColor:js},Symbol.toStringTag,{value:"Module"}));/** +(function(){"use strict";var aa=typeof document<"u"?document.currentScript:null;const Rb="modulepreload",Fb=function(e){return"/"+e},Db={},Ic=function(t,n,o){let a=Promise.resolve();function s(i){const r=new Event("vite:preloadError",{cancelable:!0});if(r.payload=i,window.dispatchEvent(r),!r.defaultPrevented)throw i}return a.then(i=>{for(const r of i||[])r.status==="rejected"&&s(r.reason);return t().catch(s)})},xs=null,Nn={pin:"#8b5cf6"},Pc=Nn.pin;function js(){return Nn.pin}function sa(){return["to-color",Nn.pin]}const Bs=sa,Mc=Object.freeze(Object.defineProperty({__proto__:null,PALETTE:Nn,PROPERTY_KEY:xs,applyColor:sa,buildColorExpression:Bs,default:{name:"Single Color",propertyKey:xs,palette:Nn,getColor:js,applyColor:sa,buildColorExpression:Bs,fallback:Pc},getColor:js},Symbol.toStringTag,{value:"Module"}));/** * @vue/shared v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function ia(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const ve={},dn=[],_t=()=>{},Ks=()=>!1,so=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),io=e=>e.startsWith("onUpdate:"),Ie=Object.assign,ra=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Mc=Object.prototype.hasOwnProperty,he=(e,t)=>Mc.call(e,t),ne=Array.isArray,zt=e=>In(e)==="[object Map]",ro=e=>In(e)==="[object Set]",Us=e=>In(e)==="[object Date]",ae=e=>typeof e=="function",Le=e=>typeof e=="string",st=e=>typeof e=="symbol",ye=e=>e!==null&&typeof e=="object",zs=e=>(ye(e)||ae(e))&&ae(e.then)&&ae(e.catch),Gs=Object.prototype.toString,In=e=>Gs.call(e),Rc=e=>In(e).slice(8,-1),lo=e=>In(e)==="[object Object]",co=e=>Le(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Pn=ia(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),uo=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Fc=/-\w/g,Be=uo(e=>e.replace(Fc,t=>t.slice(1).toUpperCase())),Dc=/\B([A-Z])/g,it=uo(e=>e.replace(Dc,"-$1").toLowerCase()),go=uo(e=>e.charAt(0).toUpperCase()+e.slice(1)),la=uo(e=>e?`on${go(e)}`:""),yt=(e,t)=>!Object.is(e,t),ca=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},Oc=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Hs=e=>{const t=Le(e)?Number(e):NaN;return isNaN(t)?e:t};let Vs;const fo=()=>Vs||(Vs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function po(e){if(ne(e)){const t={};for(let n=0;n{if(n){const o=n.split(jc);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function fn(e){let t="";if(Le(e))t=e;else if(ne(e))for(let n=0;n!!(e&&e.__v_isRef===!0),ct=e=>Le(e)?e:e==null?"":ne(e)||ye(e)&&(e.toString===Gs||!ae(e.toString))?Js(e)?ct(e.value):JSON.stringify(e,Xs,2):String(e),Xs=(e,t)=>Js(t)?Xs(e,t.value):zt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,a],s)=>(n[ua(o,s)+" =>"]=a,n),{})}:ro(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>ua(n))}:st(t)?ua(t):ye(t)&&!ne(t)&&!lo(t)?String(t):t,ua=(e,t="")=>{var n;return st(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +**/function ia(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const ve={},dn=[],_t=()=>{},Ks=()=>!1,so=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),io=e=>e.startsWith("onUpdate:"),Ie=Object.assign,ra=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Rc=Object.prototype.hasOwnProperty,he=(e,t)=>Rc.call(e,t),ne=Array.isArray,zt=e=>In(e)==="[object Map]",ro=e=>In(e)==="[object Set]",Us=e=>In(e)==="[object Date]",ae=e=>typeof e=="function",Le=e=>typeof e=="string",st=e=>typeof e=="symbol",ye=e=>e!==null&&typeof e=="object",zs=e=>(ye(e)||ae(e))&&ae(e.then)&&ae(e.catch),Gs=Object.prototype.toString,In=e=>Gs.call(e),Fc=e=>In(e).slice(8,-1),lo=e=>In(e)==="[object Object]",co=e=>Le(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Pn=ia(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),uo=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Dc=/-\w/g,Be=uo(e=>e.replace(Dc,t=>t.slice(1).toUpperCase())),Oc=/\B([A-Z])/g,it=uo(e=>e.replace(Oc,"-$1").toLowerCase()),go=uo(e=>e.charAt(0).toUpperCase()+e.slice(1)),la=uo(e=>e?`on${go(e)}`:""),yt=(e,t)=>!Object.is(e,t),ca=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},xc=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Hs=e=>{const t=Le(e)?Number(e):NaN;return isNaN(t)?e:t};let Vs;const fo=()=>Vs||(Vs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function po(e){if(ne(e)){const t={};for(let n=0;n{if(n){const o=n.split(Bc);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function fn(e){let t="";if(Le(e))t=e;else if(ne(e))for(let n=0;n!!(e&&e.__v_isRef===!0),ct=e=>Le(e)?e:e==null?"":ne(e)||ye(e)&&(e.toString===Gs||!ae(e.toString))?Js(e)?ct(e.value):JSON.stringify(e,Xs,2):String(e),Xs=(e,t)=>Js(t)?Xs(e,t.value):zt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,a],s)=>(n[ua(o,s)+" =>"]=a,n),{})}:ro(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>ua(n))}:st(t)?ua(t):ye(t)&&!ne(t)&&!lo(t)?String(t):t,ua=(e,t="")=>{var n;return st(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** * @vue/reactivity v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let De;class Zs{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&&De&&(De.active?(this.parent=De,this.index=(De.scopes||(De.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const o=this.scopes.slice();for(t=0,n=o.length;t0&&--this._on===0){if(De===this)De=this.prevScope;else{let t=De;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 n,o;for(n=0,o=this.effects.length;n0)return;if(Rn){let t=Rn;for(Rn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Mn;){let t=Mn;for(Mn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function oi(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,n=e.depsTail,o=n;for(;o;){const a=o.prevDep;o.version===-1?(o===n&&(n=a),ma(o),qc(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=a}e.deps=t,e.depsTail=n}function ha(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===Fn)||(e.globalVersion=Fn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!ha(e))))return;e.flags|=2;const t=e.dep,n=ke,o=ut;ke=e,ut=!0;try{oi(e);const a=e.fn(e._value);(t.version===0||yt(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{ke=n,ut=o,ai(e),e.flags&=-3}}function ma(e,t=!1){const{dep:n,prevSub:o,nextSub:a}=e;if(o&&(o.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let s=n.computed.deps;s;s=s.nextDep)ma(s,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function qc(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let ut=!0;const ii=[];function At(){ii.push(ut),ut=!1}function St(){const e=ii.pop();ut=e===void 0?!0:e}function ri(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ke;ke=void 0;try{t()}finally{ke=n}}}let Fn=0;class Hc{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ba{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(!ke||!ut||ke===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ke)n=this.activeLink=new Hc(ke,this),ke.deps?(n.prevDep=ke.depsTail,ke.depsTail.nextDep=n,ke.depsTail=n):ke.deps=ke.depsTail=n,li(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=ke.depsTail,n.nextDep=void 0,ke.depsTail.nextDep=n,ke.depsTail=n,ke.deps===n&&(ke.deps=o)}return n}trigger(t){this.version++,Fn++,this.notify(t)}notify(t){fa();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{pa()}}}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 o=t.deps;o;o=o.nextDep)li(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const mo=new WeakMap,en=Symbol(""),_a=Symbol(""),Dn=Symbol("");function He(e,t,n){if(ut&&ke){let o=mo.get(e);o||mo.set(e,o=new Map);let a=o.get(n);a||(o.set(n,a=new ba),a.map=o,a.key=n),a.track()}}function wt(e,t,n,o,a,s){const i=mo.get(e);if(!i){Fn++;return}const r=l=>{l&&l.trigger()};if(fa(),t==="clear")i.forEach(r);else{const l=ne(e),c=l&&co(n);if(l&&n==="length"){const u=Number(o);i.forEach((p,_)=>{(_==="length"||_===Dn||!st(_)&&_>=u)&&r(p)})}else switch((n!==void 0||i.has(void 0))&&r(i.get(n)),c&&r(i.get(Dn)),t){case"add":l?c&&r(i.get("length")):(r(i.get(en)),zt(e)&&r(i.get(_a)));break;case"delete":l||(r(i.get(en)),zt(e)&&r(i.get(_a)));break;case"set":zt(e)&&r(i.get(en));break}}pa()}function Vc(e,t){const n=mo.get(e);return n&&n.get(t)}function pn(e){const t=ue(e);return t===e?t:(He(t,"iterate",Dn),tt(e)?t:t.map(gt))}function bo(e){return He(e=ue(e),"iterate",Dn),e}function vt(e,t){return Pt(e)?hn(It(e)?gt(t):t):gt(t)}const Wc={__proto__:null,[Symbol.iterator](){return ya(this,Symbol.iterator,e=>vt(this,e))},concat(...e){return pn(this).concat(...e.map(t=>ne(t)?pn(t):t))},entries(){return ya(this,"entries",e=>(e[1]=vt(this,e[1]),e))},every(e,t){return Nt(this,"every",e,t,void 0,arguments)},filter(e,t){return Nt(this,"filter",e,t,n=>n.map(o=>vt(this,o)),arguments)},find(e,t){return Nt(this,"find",e,t,n=>vt(this,n),arguments)},findIndex(e,t){return Nt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Nt(this,"findLast",e,t,n=>vt(this,n),arguments)},findLastIndex(e,t){return Nt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Nt(this,"forEach",e,t,void 0,arguments)},includes(...e){return Aa(this,"includes",e)},indexOf(...e){return Aa(this,"indexOf",e)},join(e){return pn(this).join(e)},lastIndexOf(...e){return Aa(this,"lastIndexOf",e)},map(e,t){return Nt(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 Nt(this,"some",e,t,void 0,arguments)},splice(...e){return On(this,"splice",e)},toReversed(){return pn(this).toReversed()},toSorted(e){return pn(this).toSorted(e)},toSpliced(...e){return pn(this).toSpliced(...e)},unshift(...e){return On(this,"unshift",e)},values(){return ya(this,"values",e=>vt(this,e))}};function ya(e,t,n){const o=bo(e),a=o[t]();return o!==e&&!tt(e)&&(a._next=a.next,a.next=()=>{const s=a._next();return s.done||(s.value=n(s.value)),s}),a}const Yc=Array.prototype;function Nt(e,t,n,o,a,s){const i=bo(e),r=i!==e&&!tt(e),l=i[t];if(l!==Yc[t]){const p=l.apply(e,s);return r?gt(p):p}let c=n;i!==e&&(r?c=function(p,_){return n.call(this,vt(e,p),_,e)}:n.length>2&&(c=function(p,_){return n.call(this,p,_,e)}));const u=l.call(i,c,o);return r&&a?a(u):u}function ci(e,t,n,o){const a=bo(e),s=a!==e&&!tt(e);let i=n,r=!1;a!==e&&(s?(r=o.length===0,i=function(c,u,p){return r&&(r=!1,c=vt(e,c)),n.call(this,c,vt(e,u),p,e)}):n.length>3&&(i=function(c,u,p){return n.call(this,c,u,p,e)}));const l=a[t](i,...o);return r?vt(e,l):l}function Aa(e,t,n){const o=ue(e);He(o,"iterate",Dn);const a=o[t](...n);return(a===-1||a===!1)&&ko(n[0])?(n[0]=ue(n[0]),o[t](...n)):a}function On(e,t,n=[]){At(),fa();const o=ue(e)[t].apply(e,n);return pa(),St(),o}const Jc=ia("__proto__,__v_isRef,__isVue"),ui=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(st));function Xc(e){st(e)||(e=String(e));const t=ue(this);return He(t,"has",e),t.hasOwnProperty(e)}class gi{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const a=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!a;if(n==="__v_isReadonly")return a;if(n==="__v_isShallow")return s;if(n==="__v_raw")return o===(a?s?bi:mi:s?hi:pi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const i=ne(t);if(!a){let l;if(i&&(l=Wc[n]))return l;if(n==="hasOwnProperty")return Xc}const r=Reflect.get(t,n,we(t)?t:o);if((st(n)?ui.has(n):Jc(n))||(a||He(t,"get",n),s))return r;if(we(r)){const l=i&&co(n)?r:r.value;return a&&ye(l)?va(l):l}return ye(r)?a?va(r):So(r):r}}class di extends gi{constructor(t=!1){super(!1,t)}set(t,n,o,a){let s=t[n];const i=ne(t)&&co(n);if(!this._isShallow){const c=Pt(s);if(!tt(o)&&!Pt(o)&&(s=ue(s),o=ue(o)),!i&&we(s)&&!we(o))return c||(s.value=o),!0}const r=i?Number(n)e,_o=e=>Reflect.getPrototypeOf(e);function nu(e,t,n){return function(...o){const a=this.__v_raw,s=ue(a),i=zt(s),r=e==="entries"||e===Symbol.iterator&&i,l=e==="keys"&&i,c=a[e](...o),u=n?Sa:t?hn:gt;return!t&&He(s,"iterate",l?_a:en),Ie(Object.create(c),{next(){const{value:p,done:_}=c.next();return _?{value:p,done:_}:{value:r?[u(p[0]),u(p[1])]:u(p),done:_}}})}}function yo(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function ou(e,t){const n={get(a){const s=this.__v_raw,i=ue(s),r=ue(a);e||(yt(a,r)&&He(i,"get",a),He(i,"get",r));const{has:l}=_o(i),c=t?Sa:e?hn:gt;if(l.call(i,a))return c(s.get(a));if(l.call(i,r))return c(s.get(r));s!==i&&s.get(a)},get size(){const a=this.__v_raw;return!e&&He(ue(a),"iterate",en),a.size},has(a){const s=this.__v_raw,i=ue(s),r=ue(a);return e||(yt(a,r)&&He(i,"has",a),He(i,"has",r)),a===r?s.has(a):s.has(a)||s.has(r)},forEach(a,s){const i=this,r=i.__v_raw,l=ue(r),c=t?Sa:e?hn:gt;return!e&&He(l,"iterate",en),r.forEach((u,p)=>a.call(s,c(u),c(p),i))}};return Ie(n,e?{add:yo("add"),set:yo("set"),delete:yo("delete"),clear:yo("clear")}:{add(a){const s=ue(this),i=_o(s),r=ue(a),l=!t&&!tt(a)&&!Pt(a)?r:a;return i.has.call(s,l)||yt(a,l)&&i.has.call(s,a)||yt(r,l)&&i.has.call(s,r)||(s.add(l),wt(s,"add",l,l)),this},set(a,s){!t&&!tt(s)&&!Pt(s)&&(s=ue(s));const i=ue(this),{has:r,get:l}=_o(i);let c=r.call(i,a);c||(a=ue(a),c=r.call(i,a));const u=l.call(i,a);return i.set(a,s),c?yt(s,u)&&wt(i,"set",a,s):wt(i,"add",a,s),this},delete(a){const s=ue(this),{has:i,get:r}=_o(s);let l=i.call(s,a);l||(a=ue(a),l=i.call(s,a)),r&&r.call(s,a);const c=s.delete(a);return l&&wt(s,"delete",a,void 0),c},clear(){const a=ue(this),s=a.size!==0,i=a.clear();return s&&wt(a,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(a=>{n[a]=nu(a,e,t)}),n}function Ao(e,t){const n=ou(e,t);return(o,a,s)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?o:Reflect.get(he(n,a)&&a in o?n:o,a,s)}const au={get:Ao(!1,!1)},su={get:Ao(!1,!0)},iu={get:Ao(!0,!1)},ru={get:Ao(!0,!0)},pi=new WeakMap,hi=new WeakMap,mi=new WeakMap,bi=new WeakMap;function lu(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function So(e){return Pt(e)?e:vo(e,!1,Zc,au,pi)}function cu(e){return vo(e,!1,eu,su,hi)}function va(e){return vo(e,!0,Qc,iu,mi)}function Fb(e){return vo(e,!0,tu,ru,bi)}function vo(e,t,n,o,a){if(!ye(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 i=lu(Rc(e));if(i===0)return e;const r=new Proxy(e,i===2?o:n);return a.set(e,r),r}function It(e){return Pt(e)?It(e.__v_raw):!!(e&&e.__v_isReactive)}function Pt(e){return!!(e&&e.__v_isReadonly)}function tt(e){return!!(e&&e.__v_isShallow)}function ko(e){return e?!!e.__v_raw:!1}function ue(e){const t=e&&e.__v_raw;return t?ue(t):e}function xn(e){return!he(e,"__v_skip")&&Object.isExtensible(e)&&qs(e,"__v_skip",!0),e}const gt=e=>ye(e)?So(e):e,hn=e=>ye(e)?va(e):e;function we(e){return e?e.__v_isRef===!0:!1}function ce(e){return yi(e,!1)}function _i(e){return yi(e,!0)}function yi(e,t){return we(e)?e:new uu(e,t)}class uu{constructor(t,n){this.dep=new ba,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:ue(t),this._value=n?t:gt(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||tt(t)||Pt(t);t=o?t:ue(t),yt(t,n)&&(this._rawValue=t,this._value=o?t:gt(t),this.dep.trigger())}}function ka(e){return we(e)?e.value:e}const gu={get:(e,t,n)=>t==="__v_raw"?e:ka(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const a=e[t];return we(a)&&!we(n)?(a.value=n,!0):Reflect.set(e,t,n,o)}};function Ai(e){return It(e)?e:new Proxy(e,gu)}function du(e){const t=ne(e)?new Array(e.length):{};for(const n in e)t[n]=pu(e,n);return t}class fu{constructor(t,n,o){this._object=t,this._defaultValue=o,this.__v_isRef=!0,this._value=void 0,this._key=st(n)?n:String(n),this._raw=ue(t);let a=!0,s=t;if(!ne(t)||st(this._key)||!co(this._key))do a=!ko(s)||tt(s);while(a&&(s=s.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=ka(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&we(this._raw[this._key])){const n=this._object[this._key];if(we(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Vc(this._raw,this._key)}}function pu(e,t,n){return new fu(e,t,n)}class hu{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new ba(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Fn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&ke!==this)return ni(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 mu(e,t,n=!1){let o,a;return ae(e)?o=e:(o=e.get,a=e.set),new hu(o,a,n)}const To={},Eo=new WeakMap;let tn;function bu(e,t=!1,n=tn){if(n){let o=Eo.get(n);o||Eo.set(n,o=[]),o.push(e)}}function _u(e,t,n=ve){const{immediate:o,deep:a,once:s,scheduler:i,augmentJob:r,call:l}=n,c=m=>a?m:tt(m)||a===!1||a===0?Gt(m,1):Gt(m);let u,p,_,v,T=!1,S=!1;if(we(e)?(p=()=>e.value,T=tt(e)):It(e)?(p=()=>c(e),T=!0):ne(e)?(S=!0,T=e.some(m=>It(m)||tt(m)),p=()=>e.map(m=>{if(we(m))return m.value;if(It(m))return c(m);if(ae(m))return l?l(m,2):m()})):ae(e)?t?p=l?()=>l(e,2):e:p=()=>{if(_){At();try{_()}finally{St()}}const m=tn;tn=u;try{return l?l(e,3,[v]):e(v)}finally{tn=m}}:p=_t,t&&a){const m=p,k=a===!0?1/0:a;p=()=>Gt(m(),k)}const w=Qs(),N=()=>{u.stop(),w&&w.active&&ra(w.effects,u)};if(s&&t){const m=t;t=(...k)=>{const E=m(...k);return N(),E}}let $=S?new Array(e.length).fill(To):To;const f=m=>{if(!(!(u.flags&1)||!u.dirty&&!m))if(t){const k=u.run();if(m||a||T||(S?k.some((E,I)=>yt(E,$[I])):yt(k,$))){_&&_();const E=tn;tn=u;try{const I=[k,$===To?void 0:S&&$[0]===To?[]:$,v];$=k,l?l(t,3,I):t(...I)}finally{tn=E}}}else u.run()};return r&&r(f),u=new ei(p),u.scheduler=i?()=>i(f,!1):f,v=m=>bu(m,!1,u),_=u.onStop=()=>{const m=Eo.get(u);if(m){if(l)l(m,4);else for(const k of m)k();Eo.delete(u)}},t?o?f(!0):$=u.run():i?i(f.bind(null,!0),!0):u.run(),N.pause=u.pause.bind(u),N.resume=u.resume.bind(u),N.stop=N,N}function Gt(e,t=1/0,n){if(t<=0||!ye(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,we(e))Gt(e.value,t,n);else if(ne(e))for(let o=0;o{Gt(o,t,n)});else if(lo(e)){for(const o in e)Gt(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&Gt(e[o],t,n)}return e}/** +**/let De;class Zs{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&&De&&(De.active?(this.parent=De,this.index=(De.scopes||(De.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const o=this.scopes.slice();for(t=0,n=o.length;t0&&--this._on===0){if(De===this)De=this.prevScope;else{let t=De;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 n,o;for(n=0,o=this.effects.length;n0)return;if(Rn){let t=Rn;for(Rn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Mn;){let t=Mn;for(Mn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function oi(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,n=e.depsTail,o=n;for(;o;){const a=o.prevDep;o.version===-1?(o===n&&(n=a),ma(o),Hc(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=a}e.deps=t,e.depsTail=n}function ha(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===Fn)||(e.globalVersion=Fn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!ha(e))))return;e.flags|=2;const t=e.dep,n=ke,o=ut;ke=e,ut=!0;try{oi(e);const a=e.fn(e._value);(t.version===0||yt(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{ke=n,ut=o,ai(e),e.flags&=-3}}function ma(e,t=!1){const{dep:n,prevSub:o,nextSub:a}=e;if(o&&(o.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let s=n.computed.deps;s;s=s.nextDep)ma(s,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Hc(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let ut=!0;const ii=[];function At(){ii.push(ut),ut=!1}function St(){const e=ii.pop();ut=e===void 0?!0:e}function ri(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ke;ke=void 0;try{t()}finally{ke=n}}}let Fn=0;class Vc{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ba{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(!ke||!ut||ke===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ke)n=this.activeLink=new Vc(ke,this),ke.deps?(n.prevDep=ke.depsTail,ke.depsTail.nextDep=n,ke.depsTail=n):ke.deps=ke.depsTail=n,li(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=ke.depsTail,n.nextDep=void 0,ke.depsTail.nextDep=n,ke.depsTail=n,ke.deps===n&&(ke.deps=o)}return n}trigger(t){this.version++,Fn++,this.notify(t)}notify(t){fa();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{pa()}}}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 o=t.deps;o;o=o.nextDep)li(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const mo=new WeakMap,en=Symbol(""),_a=Symbol(""),Dn=Symbol("");function He(e,t,n){if(ut&&ke){let o=mo.get(e);o||mo.set(e,o=new Map);let a=o.get(n);a||(o.set(n,a=new ba),a.map=o,a.key=n),a.track()}}function wt(e,t,n,o,a,s){const i=mo.get(e);if(!i){Fn++;return}const r=l=>{l&&l.trigger()};if(fa(),t==="clear")i.forEach(r);else{const l=ne(e),c=l&&co(n);if(l&&n==="length"){const u=Number(o);i.forEach((p,_)=>{(_==="length"||_===Dn||!st(_)&&_>=u)&&r(p)})}else switch((n!==void 0||i.has(void 0))&&r(i.get(n)),c&&r(i.get(Dn)),t){case"add":l?c&&r(i.get("length")):(r(i.get(en)),zt(e)&&r(i.get(_a)));break;case"delete":l||(r(i.get(en)),zt(e)&&r(i.get(_a)));break;case"set":zt(e)&&r(i.get(en));break}}pa()}function Wc(e,t){const n=mo.get(e);return n&&n.get(t)}function pn(e){const t=ue(e);return t===e?t:(He(t,"iterate",Dn),tt(e)?t:t.map(gt))}function bo(e){return He(e=ue(e),"iterate",Dn),e}function vt(e,t){return Pt(e)?hn(It(e)?gt(t):t):gt(t)}const Yc={__proto__:null,[Symbol.iterator](){return ya(this,Symbol.iterator,e=>vt(this,e))},concat(...e){return pn(this).concat(...e.map(t=>ne(t)?pn(t):t))},entries(){return ya(this,"entries",e=>(e[1]=vt(this,e[1]),e))},every(e,t){return Nt(this,"every",e,t,void 0,arguments)},filter(e,t){return Nt(this,"filter",e,t,n=>n.map(o=>vt(this,o)),arguments)},find(e,t){return Nt(this,"find",e,t,n=>vt(this,n),arguments)},findIndex(e,t){return Nt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Nt(this,"findLast",e,t,n=>vt(this,n),arguments)},findLastIndex(e,t){return Nt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Nt(this,"forEach",e,t,void 0,arguments)},includes(...e){return Aa(this,"includes",e)},indexOf(...e){return Aa(this,"indexOf",e)},join(e){return pn(this).join(e)},lastIndexOf(...e){return Aa(this,"lastIndexOf",e)},map(e,t){return Nt(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 Nt(this,"some",e,t,void 0,arguments)},splice(...e){return On(this,"splice",e)},toReversed(){return pn(this).toReversed()},toSorted(e){return pn(this).toSorted(e)},toSpliced(...e){return pn(this).toSpliced(...e)},unshift(...e){return On(this,"unshift",e)},values(){return ya(this,"values",e=>vt(this,e))}};function ya(e,t,n){const o=bo(e),a=o[t]();return o!==e&&!tt(e)&&(a._next=a.next,a.next=()=>{const s=a._next();return s.done||(s.value=n(s.value)),s}),a}const Jc=Array.prototype;function Nt(e,t,n,o,a,s){const i=bo(e),r=i!==e&&!tt(e),l=i[t];if(l!==Jc[t]){const p=l.apply(e,s);return r?gt(p):p}let c=n;i!==e&&(r?c=function(p,_){return n.call(this,vt(e,p),_,e)}:n.length>2&&(c=function(p,_){return n.call(this,p,_,e)}));const u=l.call(i,c,o);return r&&a?a(u):u}function ci(e,t,n,o){const a=bo(e),s=a!==e&&!tt(e);let i=n,r=!1;a!==e&&(s?(r=o.length===0,i=function(c,u,p){return r&&(r=!1,c=vt(e,c)),n.call(this,c,vt(e,u),p,e)}):n.length>3&&(i=function(c,u,p){return n.call(this,c,u,p,e)}));const l=a[t](i,...o);return r?vt(e,l):l}function Aa(e,t,n){const o=ue(e);He(o,"iterate",Dn);const a=o[t](...n);return(a===-1||a===!1)&&ko(n[0])?(n[0]=ue(n[0]),o[t](...n)):a}function On(e,t,n=[]){At(),fa();const o=ue(e)[t].apply(e,n);return pa(),St(),o}const Xc=ia("__proto__,__v_isRef,__isVue"),ui=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(st));function Zc(e){st(e)||(e=String(e));const t=ue(this);return He(t,"has",e),t.hasOwnProperty(e)}class gi{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const a=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!a;if(n==="__v_isReadonly")return a;if(n==="__v_isShallow")return s;if(n==="__v_raw")return o===(a?s?bi:mi:s?hi:pi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const i=ne(t);if(!a){let l;if(i&&(l=Yc[n]))return l;if(n==="hasOwnProperty")return Zc}const r=Reflect.get(t,n,we(t)?t:o);if((st(n)?ui.has(n):Xc(n))||(a||He(t,"get",n),s))return r;if(we(r)){const l=i&&co(n)?r:r.value;return a&&ye(l)?va(l):l}return ye(r)?a?va(r):So(r):r}}class di extends gi{constructor(t=!1){super(!1,t)}set(t,n,o,a){let s=t[n];const i=ne(t)&&co(n);if(!this._isShallow){const c=Pt(s);if(!tt(o)&&!Pt(o)&&(s=ue(s),o=ue(o)),!i&&we(s)&&!we(o))return c||(s.value=o),!0}const r=i?Number(n)e,_o=e=>Reflect.getPrototypeOf(e);function ou(e,t,n){return function(...o){const a=this.__v_raw,s=ue(a),i=zt(s),r=e==="entries"||e===Symbol.iterator&&i,l=e==="keys"&&i,c=a[e](...o),u=n?Sa:t?hn:gt;return!t&&He(s,"iterate",l?_a:en),Ie(Object.create(c),{next(){const{value:p,done:_}=c.next();return _?{value:p,done:_}:{value:r?[u(p[0]),u(p[1])]:u(p),done:_}}})}}function yo(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function au(e,t){const n={get(a){const s=this.__v_raw,i=ue(s),r=ue(a);e||(yt(a,r)&&He(i,"get",a),He(i,"get",r));const{has:l}=_o(i),c=t?Sa:e?hn:gt;if(l.call(i,a))return c(s.get(a));if(l.call(i,r))return c(s.get(r));s!==i&&s.get(a)},get size(){const a=this.__v_raw;return!e&&He(ue(a),"iterate",en),a.size},has(a){const s=this.__v_raw,i=ue(s),r=ue(a);return e||(yt(a,r)&&He(i,"has",a),He(i,"has",r)),a===r?s.has(a):s.has(a)||s.has(r)},forEach(a,s){const i=this,r=i.__v_raw,l=ue(r),c=t?Sa:e?hn:gt;return!e&&He(l,"iterate",en),r.forEach((u,p)=>a.call(s,c(u),c(p),i))}};return Ie(n,e?{add:yo("add"),set:yo("set"),delete:yo("delete"),clear:yo("clear")}:{add(a){const s=ue(this),i=_o(s),r=ue(a),l=!t&&!tt(a)&&!Pt(a)?r:a;return i.has.call(s,l)||yt(a,l)&&i.has.call(s,a)||yt(r,l)&&i.has.call(s,r)||(s.add(l),wt(s,"add",l,l)),this},set(a,s){!t&&!tt(s)&&!Pt(s)&&(s=ue(s));const i=ue(this),{has:r,get:l}=_o(i);let c=r.call(i,a);c||(a=ue(a),c=r.call(i,a));const u=l.call(i,a);return i.set(a,s),c?yt(s,u)&&wt(i,"set",a,s):wt(i,"add",a,s),this},delete(a){const s=ue(this),{has:i,get:r}=_o(s);let l=i.call(s,a);l||(a=ue(a),l=i.call(s,a)),r&&r.call(s,a);const c=s.delete(a);return l&&wt(s,"delete",a,void 0),c},clear(){const a=ue(this),s=a.size!==0,i=a.clear();return s&&wt(a,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(a=>{n[a]=ou(a,e,t)}),n}function Ao(e,t){const n=au(e,t);return(o,a,s)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?o:Reflect.get(he(n,a)&&a in o?n:o,a,s)}const su={get:Ao(!1,!1)},iu={get:Ao(!1,!0)},ru={get:Ao(!0,!1)},lu={get:Ao(!0,!0)},pi=new WeakMap,hi=new WeakMap,mi=new WeakMap,bi=new WeakMap;function cu(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function So(e){return Pt(e)?e:vo(e,!1,Qc,su,pi)}function uu(e){return vo(e,!1,tu,iu,hi)}function va(e){return vo(e,!0,eu,ru,mi)}function jb(e){return vo(e,!0,nu,lu,bi)}function vo(e,t,n,o,a){if(!ye(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 i=cu(Fc(e));if(i===0)return e;const r=new Proxy(e,i===2?o:n);return a.set(e,r),r}function It(e){return Pt(e)?It(e.__v_raw):!!(e&&e.__v_isReactive)}function Pt(e){return!!(e&&e.__v_isReadonly)}function tt(e){return!!(e&&e.__v_isShallow)}function ko(e){return e?!!e.__v_raw:!1}function ue(e){const t=e&&e.__v_raw;return t?ue(t):e}function xn(e){return!he(e,"__v_skip")&&Object.isExtensible(e)&&qs(e,"__v_skip",!0),e}const gt=e=>ye(e)?So(e):e,hn=e=>ye(e)?va(e):e;function we(e){return e?e.__v_isRef===!0:!1}function ce(e){return yi(e,!1)}function _i(e){return yi(e,!0)}function yi(e,t){return we(e)?e:new gu(e,t)}class gu{constructor(t,n){this.dep=new ba,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:ue(t),this._value=n?t:gt(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||tt(t)||Pt(t);t=o?t:ue(t),yt(t,n)&&(this._rawValue=t,this._value=o?t:gt(t),this.dep.trigger())}}function ka(e){return we(e)?e.value:e}const du={get:(e,t,n)=>t==="__v_raw"?e:ka(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const a=e[t];return we(a)&&!we(n)?(a.value=n,!0):Reflect.set(e,t,n,o)}};function Ai(e){return It(e)?e:new Proxy(e,du)}function fu(e){const t=ne(e)?new Array(e.length):{};for(const n in e)t[n]=hu(e,n);return t}class pu{constructor(t,n,o){this._object=t,this._defaultValue=o,this.__v_isRef=!0,this._value=void 0,this._key=st(n)?n:String(n),this._raw=ue(t);let a=!0,s=t;if(!ne(t)||st(this._key)||!co(this._key))do a=!ko(s)||tt(s);while(a&&(s=s.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=ka(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&we(this._raw[this._key])){const n=this._object[this._key];if(we(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Wc(this._raw,this._key)}}function hu(e,t,n){return new pu(e,t,n)}class mu{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new ba(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Fn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&ke!==this)return ni(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 bu(e,t,n=!1){let o,a;return ae(e)?o=e:(o=e.get,a=e.set),new mu(o,a,n)}const To={},Eo=new WeakMap;let tn;function _u(e,t=!1,n=tn){if(n){let o=Eo.get(n);o||Eo.set(n,o=[]),o.push(e)}}function yu(e,t,n=ve){const{immediate:o,deep:a,once:s,scheduler:i,augmentJob:r,call:l}=n,c=m=>a?m:tt(m)||a===!1||a===0?Gt(m,1):Gt(m);let u,p,_,v,T=!1,S=!1;if(we(e)?(p=()=>e.value,T=tt(e)):It(e)?(p=()=>c(e),T=!0):ne(e)?(S=!0,T=e.some(m=>It(m)||tt(m)),p=()=>e.map(m=>{if(we(m))return m.value;if(It(m))return c(m);if(ae(m))return l?l(m,2):m()})):ae(e)?t?p=l?()=>l(e,2):e:p=()=>{if(_){At();try{_()}finally{St()}}const m=tn;tn=u;try{return l?l(e,3,[v]):e(v)}finally{tn=m}}:p=_t,t&&a){const m=p,k=a===!0?1/0:a;p=()=>Gt(m(),k)}const w=Qs(),N=()=>{u.stop(),w&&w.active&&ra(w.effects,u)};if(s&&t){const m=t;t=(...k)=>{const E=m(...k);return N(),E}}let $=S?new Array(e.length).fill(To):To;const f=m=>{if(!(!(u.flags&1)||!u.dirty&&!m))if(t){const k=u.run();if(m||a||T||(S?k.some((E,I)=>yt(E,$[I])):yt(k,$))){_&&_();const E=tn;tn=u;try{const I=[k,$===To?void 0:S&&$[0]===To?[]:$,v];$=k,l?l(t,3,I):t(...I)}finally{tn=E}}}else u.run()};return r&&r(f),u=new ei(p),u.scheduler=i?()=>i(f,!1):f,v=m=>_u(m,!1,u),_=u.onStop=()=>{const m=Eo.get(u);if(m){if(l)l(m,4);else for(const k of m)k();Eo.delete(u)}},t?o?f(!0):$=u.run():i?i(f.bind(null,!0),!0):u.run(),N.pause=u.pause.bind(u),N.resume=u.resume.bind(u),N.stop=N,N}function Gt(e,t=1/0,n){if(t<=0||!ye(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,we(e))Gt(e.value,t,n);else if(ne(e))for(let o=0;o{Gt(o,t,n)});else if(lo(e)){for(const o in e)Gt(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&Gt(e[o],t,n)}return e}/** * @vue/runtime-core v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const jn=[];let Ta=!1;function Db(e,...t){if(Ta)return;Ta=!0,At();const n=jn.length?jn[jn.length-1].component:null,o=n&&n.appContext.config.warnHandler,a=yu();if(o)mn(o,n,11,[e+t.map(s=>{var i,r;return(r=(i=s.toString)==null?void 0:i.call(s))!=null?r:JSON.stringify(s)}).join(""),n&&n.proxy,a.map(({vnode:s})=>`at <${br(n,s.type)}>`).join(` +**/const jn=[];let Ta=!1;function Bb(e,...t){if(Ta)return;Ta=!0,At();const n=jn.length?jn[jn.length-1].component:null,o=n&&n.appContext.config.warnHandler,a=Au();if(o)mn(o,n,11,[e+t.map(s=>{var i,r;return(r=(i=s.toString)==null?void 0:i.call(s))!=null?r:JSON.stringify(s)}).join(""),n&&n.proxy,a.map(({vnode:s})=>`at <${br(n,s.type)}>`).join(` `),a]);else{const s=[`[Vue warn]: ${e}`,...t];a.length&&s.push(` -`,...Au(a)),console.warn(...s)}St(),Ta=!1}function yu(){let e=jn[jn.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const o=e.component&&e.component.parent;e=o&&o.vnode}return t}function Au(e){const t=[];return e.forEach((n,o)=>{t.push(...o===0?[]:[` -`],...Su(n))}),t}function Su({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",o=e.component?e.component.parent==null:!1,a=` at <${br(e.component,e.type,o)}`,s=">"+n;return e.props?[a,...vu(e.props),s]:[a+s]}function vu(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(o=>{t.push(...Si(o,e[o]))}),n.length>3&&t.push(" ..."),t}function Si(e,t,n){return Le(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:we(t)?(t=Si(e,ue(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):ae(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=ue(t),n?t:[`${e}=`,t])}function mn(e,t,n,o){try{return o?e(...o):e()}catch(a){Bn(a,t,n)}}function dt(e,t,n,o){if(ae(e)){const a=mn(e,t,n,o);return a&&zs(a)&&a.catch(s=>{Bn(s,t,n)}),a}if(ne(e)){const a=[];for(let s=0;s>>1,a=Ye[o],s=Kn(a);s=Kn(n)?Ye.push(e):Ye.splice(Tu(t),0,e),e.flags|=1,ki()}}function ki(){$o||($o=vi.then($i))}function Eu(e){if(!ne(e))qt&&e.id===-1?qt.splice(_n+1,0,e):e.flags&1||(bn.push(e),e.flags|=1);else for(let t=0;tKn(n)-Kn(o));if(bn.length=0,qt){for(let n=0;ne.id==null?e.flags&2?-1:1/0:e.id;function $i(e){try{for(kt=0;kt{o._d&&Oo(-1);const s=Lo(t),i=rn.length;let r;try{r=e(...a)}finally{for(let l=rn.length;l>i;l--)cr();Lo(s),o._d&&Oo(1)}return r};return o._n=!0,o._c=!0,o._d=!0,o}function nn(e,t,n,o){const a=e.dirs,s=t&&t.dirs;for(let i=0;i1)return n&&ae(t)?t.call(o&&o.proxy):t}}function Lu(){return!!(Dt()||an)}const Cu=Symbol.for("v-scx"),wu=()=>Re(Cu);function Nu(e,t){return La(e,null,t)}function on(e,t,n){return La(e,t,n)}function La(e,t,n=ve){const{immediate:o,deep:a,flush:s,once:i}=n,r=Ie({},n),l=t&&o||!t&&s!=="post";let c;if(Sn){if(s==="sync"){const v=wu();c=v.__watcherHandles||(v.__watcherHandles=[])}else if(!l){const v=()=>{};return v.stop=_t,v.resume=_t,v.pause=_t,v}}const u=ze;r.call=(v,T,S)=>dt(v,u,T,S);let p=!1;s==="post"?r.scheduler=v=>{Qe(v,u&&u.suspense)}:s!=="sync"&&(p=!0,r.scheduler=(v,T)=>{T?v():$a(v)}),r.augmentJob=v=>{t&&(v.flags|=4),p&&(v.flags|=2,u&&(v.id=u.uid,v.i=u))};const _=_u(e,t,r);return Sn&&(c?c.push(_):l&&_()),_}function Iu(e,t,n){const o=this.proxy,a=Le(e)?e.includes(".")?Ci(o,e):()=>o[e]:e.bind(o,o);let s;ae(t)?s=t:(s=t.handler,n=t);const i=Xn(this),r=La(a,s.bind(o),n);return i(),r}function Ci(e,t){const n=t.split(".");return()=>{let o=e;for(let a=0;ae.__isTeleport,Ca=Symbol("_leaveCb");function Mu(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Rt){t=n;break}}return t}function wi(e){if(!Io(e))return Co(e.type)&&e.children?Mu(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&ae(n.default))return n.default()}}function wa(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;wa(Co(n.type)&&wi(n)||n,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 ae(e)?Ie({name:e.name},t,{setup:e}):e}function Na(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Ni(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const wo=new WeakMap;function zn(e,t,n,o,a=!1){if(ne(e)){e.forEach((S,w)=>zn(S,t&&(ne(t)?t[w]:t),n,o,a));return}if(Gn(o)&&!a){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&zn(e,t,n,o.component.subTree);return}const s=o.shapeFlag&4?Ba(o.component):o.el,i=a?null:s,{i:r,r:l}=e,c=t&&t.r,u=r.refs===ve?r.refs={}:r.refs,p=r.setupState,_=ue(p),v=p===ve?Ks:S=>Ni(u,S)?!1:he(_,S),T=(S,w)=>!(w&&Ni(u,w));if(c!=null&&c!==l){if(Ii(t),Le(c))u[c]=null,v(c)&&(p[c]=null);else if(we(c)){const S=t;T(c,S.k)&&(c.value=null),S.k&&(u[S.k]=null)}}if(ae(l))mn(l,r,12,[i,u]);else{const S=Le(l),w=we(l);if(S||w){const N=()=>{if(e.f){const $=S?v(l)?p[l]:u[l]:T()||!e.k?l.value:u[e.k];if(a)ne($)&&ra($,s);else if(ne($))$.includes(s)||$.push(s);else if(S)u[l]=[s],v(l)&&(p[l]=u[l]);else{const f=[s];T(l,e.k)&&(l.value=f),e.k&&(u[e.k]=f)}}else S?(u[l]=i,v(l)&&(p[l]=i)):w&&(T(l,e.k)&&(l.value=i),e.k&&(u[e.k]=i))};if(i){const $=()=>{N(),wo.delete(e)};$.id=-1,wo.set(e,$),Qe($,n)}else Ii(e),N()}}}function Ii(e){const t=wo.get(e);t&&(t.flags|=8,wo.delete(e))}const Pi=e=>e.nodeType===8;fo().requestIdleCallback,fo().cancelIdleCallback;function Ru(e,t){if(Pi(e)&&e.data==="["){let n=1,o=e.nextSibling;for(;o;){if(o.nodeType===1){if(t(o)===!1)break}else if(Pi(o))if(o.data==="]"){if(--n===0)break}else o.data==="["&&n++;o=o.nextSibling}}else t(e)}const Gn=e=>!!e.type.__asyncLoader;function Fu(e){ae(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:o,delay:a=200,hydrate:s,timeout:i,suspensible:r=!0,onError:l}=e;let c=null,u,p=0;const _=()=>(p++,c=null,v()),v=()=>{let T;return c||(T=c=t().catch(S=>{if(S=S instanceof Error?S:new Error(String(S)),l)return new Promise((w,N)=>{l(S,()=>w(_()),()=>N(S),p+1)});throw S}).then(S=>T!==c&&c?c:(S&&(S.__esModule||S[Symbol.toStringTag]==="Module")&&(S=S.default),u=S,S)))};return Un({name:"AsyncComponentWrapper",__asyncLoader:v,__asyncHydrate(T,S,w){const N=T.isConnected;let $=!1;(S.bu||(S.bu=[])).push(()=>$=!0);const f=()=>{$||!T.parentNode||N&&!T.isConnected||w()},m=s?()=>{const k=s(f,E=>Ru(T,E));k&&(S.bum||(S.bum=[])).push(k)}:f;u?m():v().then(()=>!S.isUnmounted&&m())},get __asyncResolved(){return u},setup(){const T=ze;if(Na(T),u)return()=>No(u,T);const S=k=>{c=null,Bn(k,T,13,!o)};if(r&&T.suspense||Sn)return v().then(k=>()=>No(k,T)).catch(k=>(S(k),()=>o?Ke(o,{error:k}):null));const w=ce(!1),N=ce(),$=ce(!!a);let f,m;return Ro(()=>{f!=null&&clearTimeout(f),m!=null&&clearTimeout(m)}),a&&(m=setTimeout(()=>{T.isUnmounted||($.value=!1)},a)),i!=null&&(f=setTimeout(()=>{if(!T.isUnmounted&&!w.value&&!N.value){const k=new Error(`Async component timed out after ${i}ms.`);S(k),N.value=k}},i)),v().then(()=>{T.isUnmounted||(w.value=!0,T.parent&&Io(T.parent.vnode)&&T.parent.update())}).catch(k=>{if(T.isUnmounted){c=null;return}S(k),N.value=k}),()=>{if(w.value&&u)return No(u,T);if(N.value&&o)return Ke(o,{error:N.value});if(n&&!$.value)return No(n,T)}}})}function No(e,t){const{ref:n,props:o,children:a,ce:s}=t.vnode,i=Ke(e,o,a);return i.ref=n,i.ce=s,delete t.vnode.ce,i}const Io=e=>e.type.__isKeepAlive;function Du(e,t){Mi(e,"a",t)}function Ou(e,t){Mi(e,"da",t)}function Mi(e,t,n=ze){const o=e.__wdc||(e.__wdc=()=>{let a=n;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(Po(t,o,n),n){let a=n.parent;for(;a&&a.parent;)Io(a.parent.vnode)&&xu(o,t,n,a),a=a.parent}}function xu(e,t,n,o){const a=Po(t,e,o,!0);Ro(()=>{ra(o[t],a)},n)}function Po(e,t,n=ze,o=!1){if(n){const a=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...i)=>{At();const r=Xn(n),l=dt(t,n,e,i);return r(),St(),l});return o?a.unshift(s):a.push(s),s}}const Mt=e=>(t,n=ze)=>{(!Sn||e==="sp")&&Po(e,(...o)=>t(...o),n)},Ri=Mt("bm"),yn=Mt("m"),ju=Mt("bu"),Bu=Mt("u"),Mo=Mt("bum"),Ro=Mt("um"),Ku=Mt("sp"),Uu=Mt("rtg"),zu=Mt("rtc");function Gu(e,t=ze){Po("ec",e,t)}const qu="components",Fi=Symbol.for("v-ndc");function Hu(e){return Le(e)?Vu(qu,e,!1)||e:e||Fi}function Vu(e,t,n=!0,o=!1){const a=ft||ze;if(a){const s=a.type;{const r=mr(s,!1);if(r&&(r===t||r===Be(t)||r===go(Be(t))))return s}const i=Di(a[e]||s[e],t)||Di(a.appContext[e],t);return!i&&o?s:i}}function Di(e,t){return e&&(e[t]||e[Be(t)]||e[go(Be(t))])}function Oi(e,t,n,o){let a;const s=n,i=ne(e);if(i||Le(e)){const r=i&&It(e);let l=!1,c=!1;r&&(l=!tt(e),c=Pt(e),e=bo(e)),a=new Array(e.length);for(let u=0,p=e.length;ut(r,l,void 0,s));else{const r=Object.keys(e);a=new Array(r.length);for(let l=0,c=r.length;le?fr(e)?Ba(e):Ia(e.parent):null,qn=Ie(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=>Ia(e.parent),$root:e=>Ia(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ki(e),$forceUpdate:e=>e.f||(e.f=()=>{$a(e.update)}),$nextTick:e=>e.n||(e.n=Ea.bind(e.proxy)),$watch:e=>Iu.bind(e)}),Pa=(e,t)=>e!==ve&&!e.__isScriptSetup&&he(e,t),Wu={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:a,props:s,accessCache:i,type:r,appContext:l}=e;if(t[0]!=="$"){const _=i[t];if(_!==void 0)switch(_){case 1:return o[t];case 2:return a[t];case 4:return n[t];case 3:return s[t]}else{if(Pa(o,t))return i[t]=1,o[t];if(a!==ve&&he(a,t))return i[t]=2,a[t];if(he(s,t))return i[t]=3,s[t];if(n!==ve&&he(n,t))return i[t]=4,n[t];Ma&&(i[t]=0)}}const c=qn[t];let u,p;if(c)return t==="$attrs"&&He(e.attrs,"get",""),c(e);if((u=r.__cssModules)&&(u=u[t]))return u;if(n!==ve&&he(n,t))return i[t]=4,n[t];if(p=l.config.globalProperties,he(p,t))return p[t]},set({_:e},t,n){const{data:o,setupState:a,ctx:s}=e;return Pa(a,t)?(a[t]=n,!0):o!==ve&&he(o,t)?(o[t]=n,!0):he(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:a,props:s,type:i}},r){let l;return!!(n[r]||e!==ve&&r[0]!=="$"&&he(e,r)||Pa(t,r)||he(s,r)||he(o,r)||he(qn,r)||he(a.config.globalProperties,r)||(l=i.__cssModules)&&l[r])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:he(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function xi(e){return ne(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Ma=!0;function Yu(e){const t=Ki(e),n=e.proxy,o=e.ctx;Ma=!1,t.beforeCreate&&ji(t.beforeCreate,e,"bc");const{data:a,computed:s,methods:i,watch:r,provide:l,inject:c,created:u,beforeMount:p,mounted:_,beforeUpdate:v,updated:T,activated:S,deactivated:w,beforeDestroy:N,beforeUnmount:$,destroyed:f,unmounted:m,render:k,renderTracked:E,renderTriggered:I,errorCaptured:P,serverPrefetch:y,expose:U,inheritAttrs:z,components:K,directives:Q,filters:te}=t;if(c&&Ju(c,o,null),i)for(const X in i){const re=i[X];ae(re)&&(o[X]=re.bind(n))}if(a){const X=a.call(n,n);ye(X)&&(e.data=So(X))}if(Ma=!0,s)for(const X in s){const re=s[X],xe=ae(re)?re.bind(n,n):ae(re.get)?re.get.bind(n,n):_t,H=!ae(re)&&ae(re.set)?re.set.bind(n):_t,ee=be({get:xe,set:H});Object.defineProperty(o,X,{enumerable:!0,configurable:!0,get:()=>ee.value,set:J=>ee.value=J})}if(r)for(const X in r)Bi(r[X],o,n,X);if(l){const X=ae(l)?l.call(n):l;Reflect.ownKeys(X).forEach(re=>{pt(re,X[re])})}u&&ji(u,e,"c");function Y(X,re){ne(re)?re.forEach(xe=>X(xe.bind(n))):re&&X(re.bind(n))}if(Y(Ri,p),Y(yn,_),Y(ju,v),Y(Bu,T),Y(Du,S),Y(Ou,w),Y(Gu,P),Y(zu,E),Y(Uu,I),Y(Mo,$),Y(Ro,m),Y(Ku,y),ne(U))if(U.length){const X=e.exposed||(e.exposed={});U.forEach(re=>{Object.defineProperty(X,re,{get:()=>n[re],set:xe=>n[re]=xe,enumerable:!0})})}else e.exposed||(e.exposed={});k&&e.render===_t&&(e.render=k),z!=null&&(e.inheritAttrs=z),K&&(e.components=K),Q&&(e.directives=Q),y&&Na(e)}function Ju(e,t,n=_t){ne(e)&&(e=Ra(e));for(const o in e){const a=e[o];let s;ye(a)?"default"in a?s=Re(a.from||o,a.default,!0):s=Re(a.from||o):s=Re(a),we(s)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>s.value,set:i=>s.value=i}):t[o]=s}}function ji(e,t,n){dt(ne(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function Bi(e,t,n,o){let a=o.includes(".")?Ci(n,o):()=>n[o];if(Le(e)){const s=t[e];ae(s)&&on(a,s)}else if(ae(e))on(a,e.bind(n));else if(ye(e))if(ne(e))e.forEach(s=>Bi(s,t,n,o));else{const s=ae(e.handler)?e.handler.bind(n):t[e.handler];ae(s)&&on(a,s,e)}}function Ki(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:a,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,r=s.get(t);let l;return r?l=r:!a.length&&!n&&!o?l=t:(l={},a.length&&a.forEach(c=>Fo(l,c,i,!0)),Fo(l,t,i)),ye(t)&&s.set(t,l),l}function Fo(e,t,n,o=!1){const{mixins:a,extends:s}=t;s&&Fo(e,s,n,!0),a&&a.forEach(i=>Fo(e,i,n,!0));for(const i in t)if(!(o&&i==="expose")){const r=Xu[i]||n&&n[i];e[i]=r?r(e[i],t[i]):t[i]}return e}const Xu={data:Ui,props:zi,emits:zi,methods:Hn,computed:Hn,beforeCreate:Je,created:Je,beforeMount:Je,mounted:Je,beforeUpdate:Je,updated:Je,beforeDestroy:Je,beforeUnmount:Je,destroyed:Je,unmounted:Je,activated:Je,deactivated:Je,errorCaptured:Je,serverPrefetch:Je,components:Hn,directives:Hn,watch:Qu,provide:Ui,inject:Zu};function Ui(e,t){return t?e?function(){return Ie(ae(e)?e.call(this,this):e,ae(t)?t.call(this,this):t)}:t:e}function Zu(e,t){return Hn(Ra(e),Ra(t))}function Ra(e){if(ne(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Be(t)}Modifiers`]||e[`${it(t)}Modifiers`];function og(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||ve;let a=n;const s=t.startsWith("update:"),i=s&&ng(o,t.slice(7));i&&(i.trim&&(a=n.map(u=>Le(u)?u.trim():u)),i.number&&(a=a.map(Oc)));let r,l=o[r=la(t)]||o[r=la(Be(t))];!l&&s&&(l=o[r=la(it(t))]),l&&dt(l,e,6,a);const c=o[r+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[r])return;e.emitted[r]=!0,dt(c,e,6,a)}}const ag=new WeakMap;function qi(e,t,n=!1){const o=n?ag:t.emitsCache,a=o.get(e);if(a!==void 0)return a;const s=e.emits;let i={},r=!1;if(!ae(e)){const l=c=>{const u=qi(c,t,!0);u&&(r=!0,Ie(i,u))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!s&&!r?(ye(e)&&o.set(e,null),null):(ne(s)?s.forEach(l=>i[l]=null):Ie(i,s),ye(e)&&o.set(e,i),i)}function Do(e,t){return!e||!so(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),he(e,t[0].toLowerCase()+t.slice(1))||he(e,it(t))||he(e,t))}function Ob(){}function Hi(e){const{type:t,vnode:n,proxy:o,withProxy:a,propsOptions:[s],slots:i,attrs:r,emit:l,render:c,renderCache:u,props:p,data:_,setupState:v,ctx:T,inheritAttrs:S}=e,w=Lo(e);let N,$;try{if(n.shapeFlag&4){const m=a||o,k=m;N=Tt(c.call(k,m,u,p,v,_,T)),$=r}else{const m=t;N=Tt(m.length>1?m(p,{attrs:r,slots:i,emit:l}):m(p,null)),$=t.props?r:sg(r)}}catch(m){rn.length=0,Bn(m,e,1),N=Ke(Rt)}let f=N;if($&&S!==!1){const m=Object.keys($),{shapeFlag:k}=f;m.length&&k&7&&(s&&m.some(io)&&($=ig($,s)),f=An(f,$,!1,!0))}if(n.dirs&&(f=An(f,null,!1,!0),f.dirs=f.dirs?f.dirs.concat(n.dirs):n.dirs),n.transition){const m=Co(f.type)&&wi(f)||f;wa(m,n.transition)}return N=f,Lo(w),N}const sg=e=>{let t;for(const n in e)(n==="class"||n==="style"||so(n))&&((t||(t={}))[n]=e[n]);return t},ig=(e,t)=>{const n={};for(const o in e)(!io(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function rg(e,t,n){const{props:o,children:a,component:s}=e,{props:i,children:r,patchFlag:l}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?Vi(o,i,c):!!i;if(l&8){const u=t.dynamicProps;for(let p=0;pObject.create(Yi),Xi=e=>Object.getPrototypeOf(e)===Yi;function cg(e,t,n,o=!1){const a={},s=Ji();e.propsDefaults=Object.create(null),Zi(e,t,a,s);for(const i in e.propsOptions[0])i in a||(a[i]=void 0);n?e.props=o?a:cu(a):e.type.props?e.props=a:e.props=s,e.attrs=s}function ug(e,t,n,o){const{props:a,attrs:s,vnode:{patchFlag:i}}=e,r=ue(a),[l]=e.propsOptions;let c=!1;if((o||i>0)&&!(i&16)){if(i&8){const u=e.vnode.dynamicProps;for(let p=0;p{l=!0;const[_,v]=Qi(p,t,!0);Ie(i,_),v&&r.push(...v)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!s&&!l)return ye(e)&&o.set(e,dn),dn;if(ne(s))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",Oa=e=>ne(e)?e.map(Tt):[Tt(e)],dg=(e,t,n)=>{if(t._n)return t;const o=$u((...a)=>Oa(t(...a)),n);return o._c=!1,o},tr=(e,t,n)=>{const o=e._ctx;for(const a in e){if(Da(a))continue;const s=e[a];if(ae(s))t[a]=dg(a,s,o);else if(s!=null){const i=Oa(s);t[a]=()=>i}}},nr=(e,t)=>{const n=Oa(t);e.slots.default=()=>n},or=(e,t,n)=>{for(const o in t)(n||!Da(o))&&(e[o]=t[o])},fg=(e,t,n)=>{const o=e.slots=Ji();if(e.vnode.shapeFlag&32){const a=t._;a?(or(o,t,n),n&&qs(o,"_",a,!0)):tr(t,o)}else t&&nr(e,t)},pg=(e,t,n)=>{const{vnode:o,slots:a}=e;let s=!0,i=ve;if(o.shapeFlag&32){const r=t._;r?n&&r===1?s=!1:or(a,t,n):(s=!t.$stable,tr(t,a)),i=t}else t&&(nr(e,t),i={default:1});if(s)for(const r in a)!Da(r)&&i[r]==null&&delete a[r]},Qe=yg;function hg(e){return mg(e)}function mg(e,t){const n=fo();n.__VUE__=!0;const{insert:o,remove:a,patchProp:s,createElement:i,createText:r,createComment:l,setText:c,setElementText:u,parentNode:p,nextSibling:_,setScopeId:v=_t,insertStaticContent:T}=e,S=(h,A,b,M=null,O=null,D=null,q=void 0,G=null,g=!!A.dynamicChildren)=>{if(h===A)return;h&&!Yn(h,A)&&(M=_e(h),J(h,O,D,!0),h=null),A.patchFlag===-2&&(g=!1,A.dynamicChildren=null);const{type:d,ref:C,shapeFlag:R}=A;switch(d){case Vn:w(h,A,b,M);break;case Rt:N(h,A,b,M);break;case ja:h==null&&$(A,b,M,q);break;case Ve:K(h,A,b,M,O,D,q,G,g);break;default:R&1?k(h,A,b,M,O,D,q,G,g):R&6?Q(h,A,b,M,O,D,q,G,g):(R&64||R&128)&&d.process(h,A,b,M,O,D,q,G,g,de)}C!=null&&O?zn(C,h&&h.ref,D,A||h,!A):C==null&&h&&h.ref!=null&&zn(h.ref,null,D,h,!0)},w=(h,A,b,M)=>{if(h==null)o(A.el=r(A.children),b,M);else{const O=A.el=h.el;A.children!==h.children&&c(O,A.children)}},N=(h,A,b,M)=>{h==null?o(A.el=l(A.children||""),b,M):A.el=h.el},$=(h,A,b,M)=>{[h.el,h.anchor]=T(h.children,A,b,M,h.el,h.anchor)},f=({el:h,anchor:A},b,M)=>{let O;for(;h&&h!==A;)O=_(h),o(h,b,M),h=O;o(A,b,M)},m=({el:h,anchor:A})=>{let b;for(;h&&h!==A;)b=_(h),a(h),h=b;a(A)},k=(h,A,b,M,O,D,q,G,g)=>{if(A.type==="svg"?q="svg":A.type==="math"&&(q="mathml"),h==null)E(A,b,M,O,D,q,G,g);else{const d=h.el&&h.el._isVueCE?h.el:null;try{d&&d._beginPatch(),y(h,A,O,D,q,G,g)}finally{d&&d._endPatch()}}},E=(h,A,b,M,O,D,q,G)=>{let g,d;const{props:C,shapeFlag:R,transition:V,dirs:j}=h;if(g=h.el=i(h.type,D,C&&C.is,C),R&8?u(g,h.children):R&16&&P(h.children,g,null,M,O,xa(h,D),q,G),j&&nn(h,null,M,"created"),I(g,h,h.scopeId,q,M),C){for(const F in C)F!=="value"&&!Pn(F)&&s(g,F,null,C[F],D,M);"value"in C&&s(g,"value",null,C.value,D),(d=C.onVnodeBeforeMount)&&Et(d,M,h)}j&&nn(h,null,M,"beforeMount");const L=bg(O,V);L&&V.beforeEnter(g),o(g,A,b),((d=C&&C.onVnodeMounted)||L||j)&&Qe(()=>{try{d&&Et(d,M,h),L&&V.enter(g),j&&nn(h,null,M,"mounted")}finally{}},O)},I=(h,A,b,M,O)=>{if(b&&v(h,b),M)for(let D=0;D{for(let d=g;d{const G=A.el=h.el;let{patchFlag:g,dynamicChildren:d,dirs:C}=A;g|=h.patchFlag&16;const R=h.props||ve,V=A.props||ve;let j;if(b&&sn(b,!1),(j=V.onVnodeBeforeUpdate)&&Et(j,b,A,h),C&&nn(A,h,b,"beforeUpdate"),b&&sn(b,!0),d&&(!h.dynamicChildren||h.dynamicChildren.length!==d.length)&&(g=0,q=!1,d=null),(R.innerHTML&&V.innerHTML==null||R.textContent&&V.textContent==null)&&u(G,""),d?U(h.dynamicChildren,d,G,b,M,xa(A,O),D):q||re(h,A,G,null,b,M,xa(A,O),D,!1),g>0){if(g&16)z(G,R,V,b,O);else if(g&2&&R.class!==V.class&&s(G,"class",null,V.class,O),g&4&&s(G,"style",R.style,V.style,O),g&8){const L=A.dynamicProps;for(let F=0;F{j&&Et(j,b,A,h),C&&nn(A,h,b,"updated")},M)},U=(h,A,b,M,O,D,q)=>{for(let G=0;G{if(A!==b){if(A!==ve)for(const D in A)!Pn(D)&&!(D in b)&&s(h,D,A[D],null,O,M);for(const D in b){if(Pn(D))continue;const q=b[D],G=A[D];q!==G&&D!=="value"&&s(h,D,G,q,O,M)}"value"in b&&s(h,"value",A.value,b.value,O)}},K=(h,A,b,M,O,D,q,G,g)=>{const d=A.el=h?h.el:r(""),C=A.anchor=h?h.anchor:r("");let{patchFlag:R,dynamicChildren:V,slotScopeIds:j}=A;j&&(G=G?G.concat(j):j),h==null?(o(d,b,M),o(C,b,M),P(A.children||[],b,C,O,D,q,G,g)):R>0&&R&64&&V&&h.dynamicChildren&&h.dynamicChildren.length===V.length?(U(h.dynamicChildren,V,b,O,D,q,G),(A.key!=null||O&&A===O.subTree)&&ar(h,A,!0)):re(h,A,b,C,O,D,q,G,g)},Q=(h,A,b,M,O,D,q,G,g)=>{A.slotScopeIds=G,h==null?A.shapeFlag&512?O.ctx.activate(A,b,M,q,g):te(A,b,M,O,D,q,g):B(h,A,g)},te=(h,A,b,M,O,D,q)=>{const G=h.component=Eg(h,M,O);if(Io(h)&&(G.ctx.renderer=de),$g(G,!1,q),G.asyncDep){if(O&&O.registerDep(G,Y,q),!h.el){const g=G.subTree=Ke(Rt);N(null,g,A,b),h.placeholder=g.el}}else Y(G,h,A,b,O,D,q)},B=(h,A,b)=>{const M=A.component=h.component;if(rg(h,A,b))if(M.asyncDep&&!M.asyncResolved){X(M,A,b);return}else M.next=A,M.update();else A.el=h.el,M.vnode=A},Y=(h,A,b,M,O,D,q)=>{const G=()=>{if(h.isMounted){let{next:R,bu:V,u:j,parent:L,vnode:F}=h;{const qe=sr(h);if(qe){R&&(R.el=F.el,X(h,R,q)),qe.asyncDep.then(()=>{Qe(()=>{h.isUnmounted||d()},O)});return}}let Z=R,ie;sn(h,!1),R?(R.el=F.el,X(h,R,q)):R=F,V&&ca(V),(ie=R.props&&R.props.onVnodeBeforeUpdate)&&Et(ie,L,R,F),sn(h,!0);const $e=Hi(h),Ze=h.subTree;h.subTree=$e,S(Ze,$e,p(Ze.el),_e(Ze),h,O,D),R.el=$e.el,Z===null&&lg(h,$e.el),j&&Qe(j,O),(ie=R.props&&R.props.onVnodeUpdated)&&Qe(()=>Et(ie,L,R,F),O)}else{let R;const{el:V,props:j}=A,{bm:L,m:F,parent:Z,root:ie,type:$e}=h,Ze=Gn(A);sn(h,!1),L&&ca(L),!Ze&&(R=j&&j.onVnodeBeforeMount)&&Et(R,Z,A),sn(h,!0);{ie.ce&&ie.ce._hasShadowRoot()&&ie.ce._injectChildStyle($e,h.parent?h.parent.type:void 0);const qe=h.subTree=Hi(h);S(null,qe,b,M,h,O,D),A.el=qe.el}if(F&&Qe(F,O),!Ze&&(R=j&&j.onVnodeMounted)){const qe=A;Qe(()=>Et(R,Z,qe),O)}(A.shapeFlag&256||Z&&Gn(Z.vnode)&&Z.vnode.shapeFlag&256)&&h.a&&Qe(h.a,O),h.isMounted=!0,A=b=M=null}};h.scope.on();const g=h.effect=new ei(G);h.scope.off();const d=h.update=g.run.bind(g),C=h.job=g.runIfDirty.bind(g);C.i=h,C.id=h.uid,g.scheduler=()=>$a(C),sn(h,!0),d()},X=(h,A,b)=>{A.component=h;const M=h.vnode.props;h.vnode=A,h.next=null,ug(h,A.props,M,b),pg(h,A.children,b),At(),Ti(h),St()},re=(h,A,b,M,O,D,q,G,g=!1)=>{const d=h&&h.children,C=h?h.shapeFlag:0,R=A.children,{patchFlag:V,shapeFlag:j}=A;if(V>0){if(V&128){H(d,R,b,M,O,D,q,G,g);return}else if(V&256){xe(d,R,b,M,O,D,q,G,g);return}}j&8?(C&16&&Ee(d,O,D),R!==d&&u(b,R)):C&16?j&16?H(d,R,b,M,O,D,q,G,g):Ee(d,O,D,!0):(C&8&&u(b,""),j&16&&P(R,b,M,O,D,q,G,g))},xe=(h,A,b,M,O,D,q,G,g)=>{h=h||dn,A=A||dn;const d=h.length,C=A.length,R=Math.min(d,C);let V;for(V=0;VC?Ee(h,O,D,!0,!1,R):P(A,b,M,O,D,q,G,g,R)},H=(h,A,b,M,O,D,q,G,g)=>{let d=0;const C=A.length;let R=h.length-1,V=C-1;for(;d<=R&&d<=V;){const j=h[d],L=A[d]=g?Ft(A[d]):Tt(A[d]);if(Yn(j,L))S(j,L,b,null,O,D,q,G,g);else break;d++}for(;d<=R&&d<=V;){const j=h[R],L=A[V]=g?Ft(A[V]):Tt(A[V]);if(Yn(j,L))S(j,L,b,null,O,D,q,G,g);else break;R--,V--}if(d>R){if(d<=V){const j=V+1,L=jV)for(;d<=R;)J(h[d],O,D,!0),d++;else{const j=d,L=d,F=new Map;for(d=L;d<=V;d++){const at=A[d]=g?Ft(A[d]):Tt(A[d]);at.key!=null&&F.set(at.key,d)}let Z,ie=0;const $e=V-L+1;let Ze=!1,qe=0;const gn=new Array($e);for(d=0;d<$e;d++)gn[d]=0;for(d=j;d<=R;d++){const at=h[d];if(ie>=$e){J(at,O,D,!0);continue}let Ct;if(at.key!=null)Ct=F.get(at.key);else for(Z=L;Z<=V;Z++)if(gn[Z-L]===0&&Yn(at,A[Z])){Ct=Z;break}Ct===void 0?J(at,O,D,!0):(gn[Ct-L]=d+1,Ct>=qe?qe=Ct:Ze=!0,S(at,A[Ct],b,null,O,D,q,G,g),ie++)}const Os=Ze?_g(gn):dn;for(Z=Os.length-1,d=$e-1;d>=0;d--){const at=L+d,Ct=A[at],Cc=A[at+1],wc=at+1{const{el:D,type:q,transition:G,children:g,shapeFlag:d}=h;if(d&6){ee(h.component.subTree,A,b,M);return}if(d&128){h.suspense.move(A,b,M);return}if(d&64){q.move(h,A,b,de);return}if(q===Ve){o(D,A,b);for(let R=0;RG.enter(D),O));else{const{leave:R,delayLeave:V,afterLeave:j}=G,L=()=>{h.ctx.isUnmounted?a(D):o(D,A,b)},F=()=>{const Z=D._isLeaving||!!D[Ca];D._isLeaving&&D[Ca](!0),G.persisted&&!Z?L():R(D,()=>{L(),j&&j()})};V?V(D,L,F):F()}else o(D,A,b)},J=(h,A,b,M=!1,O=!1)=>{const{type:D,props:q,ref:G,children:g,dynamicChildren:d,shapeFlag:C,patchFlag:R,dirs:V,cacheIndex:j,memo:L}=h;if(R===-2&&(O=!1),G!=null&&(At(),zn(G,null,b,h,!0),St()),j!=null&&(A.renderCache[j]=void 0),C&256){A.ctx.deactivate(h);return}const F=C&1&&V,Z=!Gn(h);let ie;if(Z&&(ie=q&&q.onVnodeBeforeUnmount)&&Et(ie,A,h),C&6)je(h.component,b,M);else{if(C&128){h.suspense.unmount(b,M);return}F&&nn(h,null,A,"beforeUnmount"),C&64?h.type.remove(h,A,b,de,M):d&&!d.hasOnce&&(D!==Ve||R>0&&R&64)?Ee(d,A,b,!1,!0):(D===Ve&&R&384||!O&&C&16)&&Ee(g,A,b),M&&pe(h)}const $e=L!=null&&j==null;(Z&&(ie=q&&q.onVnodeUnmounted)||F||$e)&&Qe(()=>{ie&&Et(ie,A,h),F&&nn(h,null,A,"unmounted"),$e&&(h.el=null)},b)},pe=h=>{const{type:A,el:b,anchor:M,transition:O}=h;if(A===Ve){ge(b,M);return}if(A===ja){m(h);return}const D=()=>{a(b),O&&!O.persisted&&O.afterLeave&&O.afterLeave()};if(h.shapeFlag&1&&O&&!O.persisted){const{leave:q,delayLeave:G}=O,g=()=>q(b,D);G?G(h.el,D,g):g()}else D()},ge=(h,A)=>{let b;for(;h!==A;)b=_(h),a(h),h=b;a(A)},je=(h,A,b)=>{const{bum:M,scope:O,job:D,subTree:q,um:G,m:g,a:d}=h;ir(g),ir(d),M&&ca(M),O.stop(),D&&(D.flags|=8,J(q,h,A,b)),G&&Qe(G,A),Qe(()=>{h.isUnmounted=!0},A)},Ee=(h,A,b,M=!1,O=!1,D=0)=>{for(let q=D;q{if(h.shapeFlag&6)return _e(h.component.subTree);if(h.shapeFlag&128)return h.suspense.next();const A=_(h.anchor||h.el),b=A&&A[Pu];return b?_(b):A};let Se=!1;const x=(h,A,b)=>{let M;h==null?A._vnode&&(J(A._vnode,null,null,!0),M=A._vnode.component):S(A._vnode||null,h,A,null,null,null,b),A._vnode=h,Se||(Se=!0,Ti(M),Ei(),Se=!1)},de={p:S,um:J,m:ee,r:pe,mt:te,mc:P,pc:re,pbc:U,n:_e,o:e};return{render:x,hydrate:void 0,createApp:tg(x)}}function xa({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function sn({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function bg(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ar(e,t,n=!1){const o=e.children,a=t.children;if(ne(o)&&ne(a))for(let s=0;s>1,e[n[r]]0&&(t[o]=n[s-1]),n[s]=o)}}for(s=n.length,i=n[s-1];s-- >0;)n[s]=i,i=t[i];return n}function sr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:sr(t)}function ir(e){if(e)for(let t=0;te.__isSuspense;function yg(e,t){t&&t.pendingBranch?ne(e)?t.effects.push(...e):t.effects.push(e):Eu(e)}const Ve=Symbol.for("v-fgt"),Vn=Symbol.for("v-txt"),Rt=Symbol.for("v-cmt"),ja=Symbol.for("v-stc"),rn=[];let nt=null;function Ne(e=!1){rn.push(nt=e?null:[])}function cr(){rn.pop(),nt=rn[rn.length-1]||null}let Wn=1;function Oo(e,t=!1){Wn+=e,e<0&&nt&&t&&(nt.hasOnce=!0)}function ur(e){return e.dynamicChildren=Wn>0?nt||dn:null,cr(),Wn>0&&nt&&nt.push(e),e}function Fe(e,t,n,o,a,s){return ur(me(e,t,n,o,a,s,!0))}function xo(e,t,n,o,a){return ur(Ke(e,t,n,o,a,!0))}function jo(e){return e?e.__v_isVNode===!0:!1}function Yn(e,t){return e.type===t.type&&e.key===t.key}const gr=({key:e})=>e??null,Bo=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Le(e)||we(e)||ae(e)?{i:ft,r:e,k:t,f:!!n}:e:null);function me(e,t=null,n=null,o=0,a=null,s=e===Ve?0:1,i=!1,r=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&gr(t),ref:t&&Bo(t),scopeId:Li,slotScopeIds:null,children:n,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:o,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:ft};return r?(Ko(l,n),s&128&&e.normalize(l)):n&&(l.shapeFlag|=Le(n)?8:16),Wn>0&&!i&&nt&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&nt.push(l),l}const Ke=Ag;function Ag(e,t=null,n=null,o=0,a=null,s=!1){if((!e||e===Fi)&&(e=Rt),jo(e)){const r=An(e,t,!0);return n&&Ko(r,n),Wn>0&&!s&&nt&&(r.shapeFlag&6?nt[nt.indexOf(e)]=r:nt.push(r)),r.patchFlag=-2,r}if(Pg(e)&&(e=e.__vccOpts),t){t=Sg(t);let{class:r,style:l}=t;r&&!Le(r)&&(t.class=fn(r)),ye(l)&&(ko(l)&&!ne(l)&&(l=Ie({},l)),t.style=po(l))}const i=Le(e)?1:lr(e)?128:Co(e)?64:ye(e)?4:ae(e)?2:0;return me(e,t,n,o,a,i,s,!0)}function Sg(e){return e?ko(e)||Xi(e)?Ie({},e):e:null}function An(e,t,n=!1,o=!1){const{props:a,ref:s,patchFlag:i,children:r,transition:l}=e,c=t?vg(a||{},t):a,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&gr(c),ref:t&&t.ref?n&&s?ne(s)?s.concat(Bo(t)):[s,Bo(t)]:Bo(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:r,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ve?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&An(e.ssContent),ssFallback:e.ssFallback&&An(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&wa(u,l.clone(u)),u}function ot(e=" ",t=0){return Ke(Vn,null,e,t)}function ln(e="",t=!1){return t?(Ne(),xo(Rt,null,e)):Ke(Rt,null,e)}function Tt(e){return e==null||typeof e=="boolean"?Ke(Rt):ne(e)?Ke(Ve,null,e.slice()):jo(e)?Ft(e):Ke(Vn,null,String(e))}function Ft(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:An(e)}function Ko(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(ne(t))n=16;else if(typeof t=="object")if(o&65){const a=t.default;a&&(a._c&&(a._d=!1),Ko(e,a()),a._c&&(a._d=!0));return}else{n=32;const a=t._;!a&&!Xi(t)?t._ctx=ft:a===3&&ft&&(ft.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(ae(t)){if(o&65){Ko(e,{default:t});return}t={default:t,_ctx:ft},n=32}else t=String(t),o&64?(n=16,t=[ot(t)]):n=8;e.children=t,e.shapeFlag|=n}function vg(...e){const t={};for(let n=0;nze||ft;let Uo,Jn;{const e=fo(),t=(n,o)=>{let a;return(a=e[n])||(a=e[n]=[]),a.push(o),s=>{a.length>1?a.forEach(i=>i(s)):a[0](s)}};Uo=t("__VUE_INSTANCE_SETTERS__",n=>ze=n),Jn=t("__VUE_SSR_SETTERS__",n=>Sn=n)}const Xn=e=>{const t=ze;return Uo(e),e.scope.on(),()=>{e.scope.off(),Uo(t)}},dr=()=>{ze&&ze.scope.off(),Uo(null)};function fr(e){return e.vnode.shapeFlag&4}let Sn=!1;function $g(e,t=!1,n=!1){t&&Jn(t);const{props:o,children:a}=e.vnode,s=fr(e);cg(e,o,s,t),fg(e,a,n||t);const i=s?Lg(e,t):void 0;return t&&Jn(!1),i}function Lg(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Wu);const{setup:o}=n;if(o){At();const a=e.setupContext=o.length>1?wg(e):null,s=Xn(e),i=mn(o,e,0,[e.props,a]),r=zs(i);if(St(),s(),(r||e.sp)&&!Gn(e)&&Na(e),r){if(i.then(dr,dr),t)return i.then(l=>{Jn(!0);try{pr(e,l,t)}finally{Jn(!1)}}).catch(l=>{Bn(l,e,0)});e.asyncDep=i}else pr(e,i)}else hr(e)}function pr(e,t,n){ae(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ye(t)&&(e.setupState=Ai(t)),hr(e)}function hr(e,t,n){const o=e.type;e.render||(e.render=o.render||_t);{const a=Xn(e);At();try{Yu(e)}finally{St(),a()}}}const Cg={get(e,t){return He(e,"get",""),e[t]}};function wg(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Cg),slots:e.slots,emit:e.emit,expose:t}}function Ba(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Ai(xn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in qn)return qn[n](e)},has(t,n){return n in t||n in qn}})):e.proxy}const Ng=/(?:^|[-_])\w/g,Ig=e=>e.replace(Ng,t=>t.toUpperCase()).replace(/[-_]/g,"");function mr(e,t=!0){return ae(e)?e.displayName||e.name:e.name||t&&e.__name}function br(e,t,n=!1){let o=mr(t);if(!o&&t.__file){const a=t.__file.match(/([^/\\]+)\.\w+$/);a&&(o=a[1])}if(!o&&e){const a=s=>{for(const i in s)if(s[i]===t)return i};o=a(e.components)||e.parent&&a(e.parent.type.components)||a(e.appContext.components)}return o?Ig(o):n?"App":"Anonymous"}function Pg(e){return ae(e)&&"__vccOpts"in e}const be=(e,t)=>mu(e,t,Sn);function _r(e,t,n){try{Oo(-1);const o=arguments.length;return o===2?ye(t)&&!ne(t)?jo(t)?Ke(e,null,[t]):Ke(e,t):Ke(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&jo(n)&&(n=[n]),Ke(e,t,n))}finally{Oo(1)}}const Mg="3.5.42";/** +`,...Su(a)),console.warn(...s)}St(),Ta=!1}function Au(){let e=jn[jn.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const o=e.component&&e.component.parent;e=o&&o.vnode}return t}function Su(e){const t=[];return e.forEach((n,o)=>{t.push(...o===0?[]:[` +`],...vu(n))}),t}function vu({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",o=e.component?e.component.parent==null:!1,a=` at <${br(e.component,e.type,o)}`,s=">"+n;return e.props?[a,...ku(e.props),s]:[a+s]}function ku(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(o=>{t.push(...Si(o,e[o]))}),n.length>3&&t.push(" ..."),t}function Si(e,t,n){return Le(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:we(t)?(t=Si(e,ue(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):ae(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=ue(t),n?t:[`${e}=`,t])}function mn(e,t,n,o){try{return o?e(...o):e()}catch(a){Bn(a,t,n)}}function dt(e,t,n,o){if(ae(e)){const a=mn(e,t,n,o);return a&&zs(a)&&a.catch(s=>{Bn(s,t,n)}),a}if(ne(e)){const a=[];for(let s=0;s>>1,a=Ye[o],s=Kn(a);s=Kn(n)?Ye.push(e):Ye.splice(Eu(t),0,e),e.flags|=1,ki()}}function ki(){$o||($o=vi.then($i))}function $u(e){if(!ne(e))qt&&e.id===-1?qt.splice(_n+1,0,e):e.flags&1||(bn.push(e),e.flags|=1);else for(let t=0;tKn(n)-Kn(o));if(bn.length=0,qt){for(let n=0;ne.id==null?e.flags&2?-1:1/0:e.id;function $i(e){try{for(kt=0;kt{o._d&&Oo(-1);const s=Lo(t),i=rn.length;let r;try{r=e(...a)}finally{for(let l=rn.length;l>i;l--)cr();Lo(s),o._d&&Oo(1)}return r};return o._n=!0,o._c=!0,o._d=!0,o}function nn(e,t,n,o){const a=e.dirs,s=t&&t.dirs;for(let i=0;i1)return n&&ae(t)?t.call(o&&o.proxy):t}}function Cu(){return!!(Dt()||an)}const wu=Symbol.for("v-scx"),Nu=()=>Re(wu);function Iu(e,t){return La(e,null,t)}function on(e,t,n){return La(e,t,n)}function La(e,t,n=ve){const{immediate:o,deep:a,flush:s,once:i}=n,r=Ie({},n),l=t&&o||!t&&s!=="post";let c;if(Sn){if(s==="sync"){const v=Nu();c=v.__watcherHandles||(v.__watcherHandles=[])}else if(!l){const v=()=>{};return v.stop=_t,v.resume=_t,v.pause=_t,v}}const u=ze;r.call=(v,T,S)=>dt(v,u,T,S);let p=!1;s==="post"?r.scheduler=v=>{Qe(v,u&&u.suspense)}:s!=="sync"&&(p=!0,r.scheduler=(v,T)=>{T?v():$a(v)}),r.augmentJob=v=>{t&&(v.flags|=4),p&&(v.flags|=2,u&&(v.id=u.uid,v.i=u))};const _=yu(e,t,r);return Sn&&(c?c.push(_):l&&_()),_}function Pu(e,t,n){const o=this.proxy,a=Le(e)?e.includes(".")?Ci(o,e):()=>o[e]:e.bind(o,o);let s;ae(t)?s=t:(s=t.handler,n=t);const i=Xn(this),r=La(a,s.bind(o),n);return i(),r}function Ci(e,t){const n=t.split(".");return()=>{let o=e;for(let a=0;ae.__isTeleport,Ca=Symbol("_leaveCb");function Ru(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Rt){t=n;break}}return t}function wi(e){if(!Io(e))return Co(e.type)&&e.children?Ru(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&ae(n.default))return n.default()}}function wa(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;wa(Co(n.type)&&wi(n)||n,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 ae(e)?Ie({name:e.name},t,{setup:e}):e}function Na(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Ni(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const wo=new WeakMap;function zn(e,t,n,o,a=!1){if(ne(e)){e.forEach((S,w)=>zn(S,t&&(ne(t)?t[w]:t),n,o,a));return}if(Gn(o)&&!a){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&zn(e,t,n,o.component.subTree);return}const s=o.shapeFlag&4?Ba(o.component):o.el,i=a?null:s,{i:r,r:l}=e,c=t&&t.r,u=r.refs===ve?r.refs={}:r.refs,p=r.setupState,_=ue(p),v=p===ve?Ks:S=>Ni(u,S)?!1:he(_,S),T=(S,w)=>!(w&&Ni(u,w));if(c!=null&&c!==l){if(Ii(t),Le(c))u[c]=null,v(c)&&(p[c]=null);else if(we(c)){const S=t;T(c,S.k)&&(c.value=null),S.k&&(u[S.k]=null)}}if(ae(l))mn(l,r,12,[i,u]);else{const S=Le(l),w=we(l);if(S||w){const N=()=>{if(e.f){const $=S?v(l)?p[l]:u[l]:T()||!e.k?l.value:u[e.k];if(a)ne($)&&ra($,s);else if(ne($))$.includes(s)||$.push(s);else if(S)u[l]=[s],v(l)&&(p[l]=u[l]);else{const f=[s];T(l,e.k)&&(l.value=f),e.k&&(u[e.k]=f)}}else S?(u[l]=i,v(l)&&(p[l]=i)):w&&(T(l,e.k)&&(l.value=i),e.k&&(u[e.k]=i))};if(i){const $=()=>{N(),wo.delete(e)};$.id=-1,wo.set(e,$),Qe($,n)}else Ii(e),N()}}}function Ii(e){const t=wo.get(e);t&&(t.flags|=8,wo.delete(e))}const Pi=e=>e.nodeType===8;fo().requestIdleCallback,fo().cancelIdleCallback;function Fu(e,t){if(Pi(e)&&e.data==="["){let n=1,o=e.nextSibling;for(;o;){if(o.nodeType===1){if(t(o)===!1)break}else if(Pi(o))if(o.data==="]"){if(--n===0)break}else o.data==="["&&n++;o=o.nextSibling}}else t(e)}const Gn=e=>!!e.type.__asyncLoader;function Du(e){ae(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:o,delay:a=200,hydrate:s,timeout:i,suspensible:r=!0,onError:l}=e;let c=null,u,p=0;const _=()=>(p++,c=null,v()),v=()=>{let T;return c||(T=c=t().catch(S=>{if(S=S instanceof Error?S:new Error(String(S)),l)return new Promise((w,N)=>{l(S,()=>w(_()),()=>N(S),p+1)});throw S}).then(S=>T!==c&&c?c:(S&&(S.__esModule||S[Symbol.toStringTag]==="Module")&&(S=S.default),u=S,S)))};return Un({name:"AsyncComponentWrapper",__asyncLoader:v,__asyncHydrate(T,S,w){const N=T.isConnected;let $=!1;(S.bu||(S.bu=[])).push(()=>$=!0);const f=()=>{$||!T.parentNode||N&&!T.isConnected||w()},m=s?()=>{const k=s(f,E=>Fu(T,E));k&&(S.bum||(S.bum=[])).push(k)}:f;u?m():v().then(()=>!S.isUnmounted&&m())},get __asyncResolved(){return u},setup(){const T=ze;if(Na(T),u)return()=>No(u,T);const S=k=>{c=null,Bn(k,T,13,!o)};if(r&&T.suspense||Sn)return v().then(k=>()=>No(k,T)).catch(k=>(S(k),()=>o?Ke(o,{error:k}):null));const w=ce(!1),N=ce(),$=ce(!!a);let f,m;return Ro(()=>{f!=null&&clearTimeout(f),m!=null&&clearTimeout(m)}),a&&(m=setTimeout(()=>{T.isUnmounted||($.value=!1)},a)),i!=null&&(f=setTimeout(()=>{if(!T.isUnmounted&&!w.value&&!N.value){const k=new Error(`Async component timed out after ${i}ms.`);S(k),N.value=k}},i)),v().then(()=>{T.isUnmounted||(w.value=!0,T.parent&&Io(T.parent.vnode)&&T.parent.update())}).catch(k=>{if(T.isUnmounted){c=null;return}S(k),N.value=k}),()=>{if(w.value&&u)return No(u,T);if(N.value&&o)return Ke(o,{error:N.value});if(n&&!$.value)return No(n,T)}}})}function No(e,t){const{ref:n,props:o,children:a,ce:s}=t.vnode,i=Ke(e,o,a);return i.ref=n,i.ce=s,delete t.vnode.ce,i}const Io=e=>e.type.__isKeepAlive;function Ou(e,t){Mi(e,"a",t)}function xu(e,t){Mi(e,"da",t)}function Mi(e,t,n=ze){const o=e.__wdc||(e.__wdc=()=>{let a=n;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(Po(t,o,n),n){let a=n.parent;for(;a&&a.parent;)Io(a.parent.vnode)&&ju(o,t,n,a),a=a.parent}}function ju(e,t,n,o){const a=Po(t,e,o,!0);Ro(()=>{ra(o[t],a)},n)}function Po(e,t,n=ze,o=!1){if(n){const a=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...i)=>{At();const r=Xn(n),l=dt(t,n,e,i);return r(),St(),l});return o?a.unshift(s):a.push(s),s}}const Mt=e=>(t,n=ze)=>{(!Sn||e==="sp")&&Po(e,(...o)=>t(...o),n)},Ri=Mt("bm"),yn=Mt("m"),Bu=Mt("bu"),Ku=Mt("u"),Mo=Mt("bum"),Ro=Mt("um"),Uu=Mt("sp"),zu=Mt("rtg"),Gu=Mt("rtc");function qu(e,t=ze){Po("ec",e,t)}const Hu="components",Fi=Symbol.for("v-ndc");function Vu(e){return Le(e)?Wu(Hu,e,!1)||e:e||Fi}function Wu(e,t,n=!0,o=!1){const a=ft||ze;if(a){const s=a.type;{const r=mr(s,!1);if(r&&(r===t||r===Be(t)||r===go(Be(t))))return s}const i=Di(a[e]||s[e],t)||Di(a.appContext[e],t);return!i&&o?s:i}}function Di(e,t){return e&&(e[t]||e[Be(t)]||e[go(Be(t))])}function Oi(e,t,n,o){let a;const s=n,i=ne(e);if(i||Le(e)){const r=i&&It(e);let l=!1,c=!1;r&&(l=!tt(e),c=Pt(e),e=bo(e)),a=new Array(e.length);for(let u=0,p=e.length;ut(r,l,void 0,s));else{const r=Object.keys(e);a=new Array(r.length);for(let l=0,c=r.length;le?fr(e)?Ba(e):Ia(e.parent):null,qn=Ie(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=>Ia(e.parent),$root:e=>Ia(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ki(e),$forceUpdate:e=>e.f||(e.f=()=>{$a(e.update)}),$nextTick:e=>e.n||(e.n=Ea.bind(e.proxy)),$watch:e=>Pu.bind(e)}),Pa=(e,t)=>e!==ve&&!e.__isScriptSetup&&he(e,t),Yu={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:a,props:s,accessCache:i,type:r,appContext:l}=e;if(t[0]!=="$"){const _=i[t];if(_!==void 0)switch(_){case 1:return o[t];case 2:return a[t];case 4:return n[t];case 3:return s[t]}else{if(Pa(o,t))return i[t]=1,o[t];if(a!==ve&&he(a,t))return i[t]=2,a[t];if(he(s,t))return i[t]=3,s[t];if(n!==ve&&he(n,t))return i[t]=4,n[t];Ma&&(i[t]=0)}}const c=qn[t];let u,p;if(c)return t==="$attrs"&&He(e.attrs,"get",""),c(e);if((u=r.__cssModules)&&(u=u[t]))return u;if(n!==ve&&he(n,t))return i[t]=4,n[t];if(p=l.config.globalProperties,he(p,t))return p[t]},set({_:e},t,n){const{data:o,setupState:a,ctx:s}=e;return Pa(a,t)?(a[t]=n,!0):o!==ve&&he(o,t)?(o[t]=n,!0):he(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:a,props:s,type:i}},r){let l;return!!(n[r]||e!==ve&&r[0]!=="$"&&he(e,r)||Pa(t,r)||he(s,r)||he(o,r)||he(qn,r)||he(a.config.globalProperties,r)||(l=i.__cssModules)&&l[r])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:he(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function xi(e){return ne(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Ma=!0;function Ju(e){const t=Ki(e),n=e.proxy,o=e.ctx;Ma=!1,t.beforeCreate&&ji(t.beforeCreate,e,"bc");const{data:a,computed:s,methods:i,watch:r,provide:l,inject:c,created:u,beforeMount:p,mounted:_,beforeUpdate:v,updated:T,activated:S,deactivated:w,beforeDestroy:N,beforeUnmount:$,destroyed:f,unmounted:m,render:k,renderTracked:E,renderTriggered:I,errorCaptured:P,serverPrefetch:y,expose:U,inheritAttrs:z,components:K,directives:Q,filters:te}=t;if(c&&Xu(c,o,null),i)for(const X in i){const re=i[X];ae(re)&&(o[X]=re.bind(n))}if(a){const X=a.call(n,n);ye(X)&&(e.data=So(X))}if(Ma=!0,s)for(const X in s){const re=s[X],xe=ae(re)?re.bind(n,n):ae(re.get)?re.get.bind(n,n):_t,H=!ae(re)&&ae(re.set)?re.set.bind(n):_t,ee=be({get:xe,set:H});Object.defineProperty(o,X,{enumerable:!0,configurable:!0,get:()=>ee.value,set:J=>ee.value=J})}if(r)for(const X in r)Bi(r[X],o,n,X);if(l){const X=ae(l)?l.call(n):l;Reflect.ownKeys(X).forEach(re=>{pt(re,X[re])})}u&&ji(u,e,"c");function Y(X,re){ne(re)?re.forEach(xe=>X(xe.bind(n))):re&&X(re.bind(n))}if(Y(Ri,p),Y(yn,_),Y(Bu,v),Y(Ku,T),Y(Ou,S),Y(xu,w),Y(qu,P),Y(Gu,E),Y(zu,I),Y(Mo,$),Y(Ro,m),Y(Uu,y),ne(U))if(U.length){const X=e.exposed||(e.exposed={});U.forEach(re=>{Object.defineProperty(X,re,{get:()=>n[re],set:xe=>n[re]=xe,enumerable:!0})})}else e.exposed||(e.exposed={});k&&e.render===_t&&(e.render=k),z!=null&&(e.inheritAttrs=z),K&&(e.components=K),Q&&(e.directives=Q),y&&Na(e)}function Xu(e,t,n=_t){ne(e)&&(e=Ra(e));for(const o in e){const a=e[o];let s;ye(a)?"default"in a?s=Re(a.from||o,a.default,!0):s=Re(a.from||o):s=Re(a),we(s)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>s.value,set:i=>s.value=i}):t[o]=s}}function ji(e,t,n){dt(ne(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function Bi(e,t,n,o){let a=o.includes(".")?Ci(n,o):()=>n[o];if(Le(e)){const s=t[e];ae(s)&&on(a,s)}else if(ae(e))on(a,e.bind(n));else if(ye(e))if(ne(e))e.forEach(s=>Bi(s,t,n,o));else{const s=ae(e.handler)?e.handler.bind(n):t[e.handler];ae(s)&&on(a,s,e)}}function Ki(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:a,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,r=s.get(t);let l;return r?l=r:!a.length&&!n&&!o?l=t:(l={},a.length&&a.forEach(c=>Fo(l,c,i,!0)),Fo(l,t,i)),ye(t)&&s.set(t,l),l}function Fo(e,t,n,o=!1){const{mixins:a,extends:s}=t;s&&Fo(e,s,n,!0),a&&a.forEach(i=>Fo(e,i,n,!0));for(const i in t)if(!(o&&i==="expose")){const r=Zu[i]||n&&n[i];e[i]=r?r(e[i],t[i]):t[i]}return e}const Zu={data:Ui,props:zi,emits:zi,methods:Hn,computed:Hn,beforeCreate:Je,created:Je,beforeMount:Je,mounted:Je,beforeUpdate:Je,updated:Je,beforeDestroy:Je,beforeUnmount:Je,destroyed:Je,unmounted:Je,activated:Je,deactivated:Je,errorCaptured:Je,serverPrefetch:Je,components:Hn,directives:Hn,watch:eg,provide:Ui,inject:Qu};function Ui(e,t){return t?e?function(){return Ie(ae(e)?e.call(this,this):e,ae(t)?t.call(this,this):t)}:t:e}function Qu(e,t){return Hn(Ra(e),Ra(t))}function Ra(e){if(ne(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Be(t)}Modifiers`]||e[`${it(t)}Modifiers`];function ag(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||ve;let a=n;const s=t.startsWith("update:"),i=s&&og(o,t.slice(7));i&&(i.trim&&(a=n.map(u=>Le(u)?u.trim():u)),i.number&&(a=a.map(xc)));let r,l=o[r=la(t)]||o[r=la(Be(t))];!l&&s&&(l=o[r=la(it(t))]),l&&dt(l,e,6,a);const c=o[r+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[r])return;e.emitted[r]=!0,dt(c,e,6,a)}}const sg=new WeakMap;function qi(e,t,n=!1){const o=n?sg:t.emitsCache,a=o.get(e);if(a!==void 0)return a;const s=e.emits;let i={},r=!1;if(!ae(e)){const l=c=>{const u=qi(c,t,!0);u&&(r=!0,Ie(i,u))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!s&&!r?(ye(e)&&o.set(e,null),null):(ne(s)?s.forEach(l=>i[l]=null):Ie(i,s),ye(e)&&o.set(e,i),i)}function Do(e,t){return!e||!so(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),he(e,t[0].toLowerCase()+t.slice(1))||he(e,it(t))||he(e,t))}function Kb(){}function Hi(e){const{type:t,vnode:n,proxy:o,withProxy:a,propsOptions:[s],slots:i,attrs:r,emit:l,render:c,renderCache:u,props:p,data:_,setupState:v,ctx:T,inheritAttrs:S}=e,w=Lo(e);let N,$;try{if(n.shapeFlag&4){const m=a||o,k=m;N=Tt(c.call(k,m,u,p,v,_,T)),$=r}else{const m=t;N=Tt(m.length>1?m(p,{attrs:r,slots:i,emit:l}):m(p,null)),$=t.props?r:ig(r)}}catch(m){rn.length=0,Bn(m,e,1),N=Ke(Rt)}let f=N;if($&&S!==!1){const m=Object.keys($),{shapeFlag:k}=f;m.length&&k&7&&(s&&m.some(io)&&($=rg($,s)),f=An(f,$,!1,!0))}if(n.dirs&&(f=An(f,null,!1,!0),f.dirs=f.dirs?f.dirs.concat(n.dirs):n.dirs),n.transition){const m=Co(f.type)&&wi(f)||f;wa(m,n.transition)}return N=f,Lo(w),N}const ig=e=>{let t;for(const n in e)(n==="class"||n==="style"||so(n))&&((t||(t={}))[n]=e[n]);return t},rg=(e,t)=>{const n={};for(const o in e)(!io(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function lg(e,t,n){const{props:o,children:a,component:s}=e,{props:i,children:r,patchFlag:l}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?Vi(o,i,c):!!i;if(l&8){const u=t.dynamicProps;for(let p=0;pObject.create(Yi),Xi=e=>Object.getPrototypeOf(e)===Yi;function ug(e,t,n,o=!1){const a={},s=Ji();e.propsDefaults=Object.create(null),Zi(e,t,a,s);for(const i in e.propsOptions[0])i in a||(a[i]=void 0);n?e.props=o?a:uu(a):e.type.props?e.props=a:e.props=s,e.attrs=s}function gg(e,t,n,o){const{props:a,attrs:s,vnode:{patchFlag:i}}=e,r=ue(a),[l]=e.propsOptions;let c=!1;if((o||i>0)&&!(i&16)){if(i&8){const u=e.vnode.dynamicProps;for(let p=0;p{l=!0;const[_,v]=Qi(p,t,!0);Ie(i,_),v&&r.push(...v)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!s&&!l)return ye(e)&&o.set(e,dn),dn;if(ne(s))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",Oa=e=>ne(e)?e.map(Tt):[Tt(e)],fg=(e,t,n)=>{if(t._n)return t;const o=Lu((...a)=>Oa(t(...a)),n);return o._c=!1,o},tr=(e,t,n)=>{const o=e._ctx;for(const a in e){if(Da(a))continue;const s=e[a];if(ae(s))t[a]=fg(a,s,o);else if(s!=null){const i=Oa(s);t[a]=()=>i}}},nr=(e,t)=>{const n=Oa(t);e.slots.default=()=>n},or=(e,t,n)=>{for(const o in t)(n||!Da(o))&&(e[o]=t[o])},pg=(e,t,n)=>{const o=e.slots=Ji();if(e.vnode.shapeFlag&32){const a=t._;a?(or(o,t,n),n&&qs(o,"_",a,!0)):tr(t,o)}else t&&nr(e,t)},hg=(e,t,n)=>{const{vnode:o,slots:a}=e;let s=!0,i=ve;if(o.shapeFlag&32){const r=t._;r?n&&r===1?s=!1:or(a,t,n):(s=!t.$stable,tr(t,a)),i=t}else t&&(nr(e,t),i={default:1});if(s)for(const r in a)!Da(r)&&i[r]==null&&delete a[r]},Qe=Ag;function mg(e){return bg(e)}function bg(e,t){const n=fo();n.__VUE__=!0;const{insert:o,remove:a,patchProp:s,createElement:i,createText:r,createComment:l,setText:c,setElementText:u,parentNode:p,nextSibling:_,setScopeId:v=_t,insertStaticContent:T}=e,S=(h,A,b,M=null,O=null,D=null,q=void 0,G=null,g=!!A.dynamicChildren)=>{if(h===A)return;h&&!Yn(h,A)&&(M=_e(h),J(h,O,D,!0),h=null),A.patchFlag===-2&&(g=!1,A.dynamicChildren=null);const{type:d,ref:C,shapeFlag:R}=A;switch(d){case Vn:w(h,A,b,M);break;case Rt:N(h,A,b,M);break;case ja:h==null&&$(A,b,M,q);break;case Ve:K(h,A,b,M,O,D,q,G,g);break;default:R&1?k(h,A,b,M,O,D,q,G,g):R&6?Q(h,A,b,M,O,D,q,G,g):(R&64||R&128)&&d.process(h,A,b,M,O,D,q,G,g,de)}C!=null&&O?zn(C,h&&h.ref,D,A||h,!A):C==null&&h&&h.ref!=null&&zn(h.ref,null,D,h,!0)},w=(h,A,b,M)=>{if(h==null)o(A.el=r(A.children),b,M);else{const O=A.el=h.el;A.children!==h.children&&c(O,A.children)}},N=(h,A,b,M)=>{h==null?o(A.el=l(A.children||""),b,M):A.el=h.el},$=(h,A,b,M)=>{[h.el,h.anchor]=T(h.children,A,b,M,h.el,h.anchor)},f=({el:h,anchor:A},b,M)=>{let O;for(;h&&h!==A;)O=_(h),o(h,b,M),h=O;o(A,b,M)},m=({el:h,anchor:A})=>{let b;for(;h&&h!==A;)b=_(h),a(h),h=b;a(A)},k=(h,A,b,M,O,D,q,G,g)=>{if(A.type==="svg"?q="svg":A.type==="math"&&(q="mathml"),h==null)E(A,b,M,O,D,q,G,g);else{const d=h.el&&h.el._isVueCE?h.el:null;try{d&&d._beginPatch(),y(h,A,O,D,q,G,g)}finally{d&&d._endPatch()}}},E=(h,A,b,M,O,D,q,G)=>{let g,d;const{props:C,shapeFlag:R,transition:V,dirs:j}=h;if(g=h.el=i(h.type,D,C&&C.is,C),R&8?u(g,h.children):R&16&&P(h.children,g,null,M,O,xa(h,D),q,G),j&&nn(h,null,M,"created"),I(g,h,h.scopeId,q,M),C){for(const F in C)F!=="value"&&!Pn(F)&&s(g,F,null,C[F],D,M);"value"in C&&s(g,"value",null,C.value,D),(d=C.onVnodeBeforeMount)&&Et(d,M,h)}j&&nn(h,null,M,"beforeMount");const L=_g(O,V);L&&V.beforeEnter(g),o(g,A,b),((d=C&&C.onVnodeMounted)||L||j)&&Qe(()=>{try{d&&Et(d,M,h),L&&V.enter(g),j&&nn(h,null,M,"mounted")}finally{}},O)},I=(h,A,b,M,O)=>{if(b&&v(h,b),M)for(let D=0;D{for(let d=g;d{const G=A.el=h.el;let{patchFlag:g,dynamicChildren:d,dirs:C}=A;g|=h.patchFlag&16;const R=h.props||ve,V=A.props||ve;let j;if(b&&sn(b,!1),(j=V.onVnodeBeforeUpdate)&&Et(j,b,A,h),C&&nn(A,h,b,"beforeUpdate"),b&&sn(b,!0),d&&(!h.dynamicChildren||h.dynamicChildren.length!==d.length)&&(g=0,q=!1,d=null),(R.innerHTML&&V.innerHTML==null||R.textContent&&V.textContent==null)&&u(G,""),d?U(h.dynamicChildren,d,G,b,M,xa(A,O),D):q||re(h,A,G,null,b,M,xa(A,O),D,!1),g>0){if(g&16)z(G,R,V,b,O);else if(g&2&&R.class!==V.class&&s(G,"class",null,V.class,O),g&4&&s(G,"style",R.style,V.style,O),g&8){const L=A.dynamicProps;for(let F=0;F{j&&Et(j,b,A,h),C&&nn(A,h,b,"updated")},M)},U=(h,A,b,M,O,D,q)=>{for(let G=0;G{if(A!==b){if(A!==ve)for(const D in A)!Pn(D)&&!(D in b)&&s(h,D,A[D],null,O,M);for(const D in b){if(Pn(D))continue;const q=b[D],G=A[D];q!==G&&D!=="value"&&s(h,D,G,q,O,M)}"value"in b&&s(h,"value",A.value,b.value,O)}},K=(h,A,b,M,O,D,q,G,g)=>{const d=A.el=h?h.el:r(""),C=A.anchor=h?h.anchor:r("");let{patchFlag:R,dynamicChildren:V,slotScopeIds:j}=A;j&&(G=G?G.concat(j):j),h==null?(o(d,b,M),o(C,b,M),P(A.children||[],b,C,O,D,q,G,g)):R>0&&R&64&&V&&h.dynamicChildren&&h.dynamicChildren.length===V.length?(U(h.dynamicChildren,V,b,O,D,q,G),(A.key!=null||O&&A===O.subTree)&&ar(h,A,!0)):re(h,A,b,C,O,D,q,G,g)},Q=(h,A,b,M,O,D,q,G,g)=>{A.slotScopeIds=G,h==null?A.shapeFlag&512?O.ctx.activate(A,b,M,q,g):te(A,b,M,O,D,q,g):B(h,A,g)},te=(h,A,b,M,O,D,q)=>{const G=h.component=$g(h,M,O);if(Io(h)&&(G.ctx.renderer=de),Lg(G,!1,q),G.asyncDep){if(O&&O.registerDep(G,Y,q),!h.el){const g=G.subTree=Ke(Rt);N(null,g,A,b),h.placeholder=g.el}}else Y(G,h,A,b,O,D,q)},B=(h,A,b)=>{const M=A.component=h.component;if(lg(h,A,b))if(M.asyncDep&&!M.asyncResolved){X(M,A,b);return}else M.next=A,M.update();else A.el=h.el,M.vnode=A},Y=(h,A,b,M,O,D,q)=>{const G=()=>{if(h.isMounted){let{next:R,bu:V,u:j,parent:L,vnode:F}=h;{const qe=sr(h);if(qe){R&&(R.el=F.el,X(h,R,q)),qe.asyncDep.then(()=>{Qe(()=>{h.isUnmounted||d()},O)});return}}let Z=R,ie;sn(h,!1),R?(R.el=F.el,X(h,R,q)):R=F,V&&ca(V),(ie=R.props&&R.props.onVnodeBeforeUpdate)&&Et(ie,L,R,F),sn(h,!0);const $e=Hi(h),Ze=h.subTree;h.subTree=$e,S(Ze,$e,p(Ze.el),_e(Ze),h,O,D),R.el=$e.el,Z===null&&cg(h,$e.el),j&&Qe(j,O),(ie=R.props&&R.props.onVnodeUpdated)&&Qe(()=>Et(ie,L,R,F),O)}else{let R;const{el:V,props:j}=A,{bm:L,m:F,parent:Z,root:ie,type:$e}=h,Ze=Gn(A);sn(h,!1),L&&ca(L),!Ze&&(R=j&&j.onVnodeBeforeMount)&&Et(R,Z,A),sn(h,!0);{ie.ce&&ie.ce._hasShadowRoot()&&ie.ce._injectChildStyle($e,h.parent?h.parent.type:void 0);const qe=h.subTree=Hi(h);S(null,qe,b,M,h,O,D),A.el=qe.el}if(F&&Qe(F,O),!Ze&&(R=j&&j.onVnodeMounted)){const qe=A;Qe(()=>Et(R,Z,qe),O)}(A.shapeFlag&256||Z&&Gn(Z.vnode)&&Z.vnode.shapeFlag&256)&&h.a&&Qe(h.a,O),h.isMounted=!0,A=b=M=null}};h.scope.on();const g=h.effect=new ei(G);h.scope.off();const d=h.update=g.run.bind(g),C=h.job=g.runIfDirty.bind(g);C.i=h,C.id=h.uid,g.scheduler=()=>$a(C),sn(h,!0),d()},X=(h,A,b)=>{A.component=h;const M=h.vnode.props;h.vnode=A,h.next=null,gg(h,A.props,M,b),hg(h,A.children,b),At(),Ti(h),St()},re=(h,A,b,M,O,D,q,G,g=!1)=>{const d=h&&h.children,C=h?h.shapeFlag:0,R=A.children,{patchFlag:V,shapeFlag:j}=A;if(V>0){if(V&128){H(d,R,b,M,O,D,q,G,g);return}else if(V&256){xe(d,R,b,M,O,D,q,G,g);return}}j&8?(C&16&&Ee(d,O,D),R!==d&&u(b,R)):C&16?j&16?H(d,R,b,M,O,D,q,G,g):Ee(d,O,D,!0):(C&8&&u(b,""),j&16&&P(R,b,M,O,D,q,G,g))},xe=(h,A,b,M,O,D,q,G,g)=>{h=h||dn,A=A||dn;const d=h.length,C=A.length,R=Math.min(d,C);let V;for(V=0;VC?Ee(h,O,D,!0,!1,R):P(A,b,M,O,D,q,G,g,R)},H=(h,A,b,M,O,D,q,G,g)=>{let d=0;const C=A.length;let R=h.length-1,V=C-1;for(;d<=R&&d<=V;){const j=h[d],L=A[d]=g?Ft(A[d]):Tt(A[d]);if(Yn(j,L))S(j,L,b,null,O,D,q,G,g);else break;d++}for(;d<=R&&d<=V;){const j=h[R],L=A[V]=g?Ft(A[V]):Tt(A[V]);if(Yn(j,L))S(j,L,b,null,O,D,q,G,g);else break;R--,V--}if(d>R){if(d<=V){const j=V+1,L=jV)for(;d<=R;)J(h[d],O,D,!0),d++;else{const j=d,L=d,F=new Map;for(d=L;d<=V;d++){const at=A[d]=g?Ft(A[d]):Tt(A[d]);at.key!=null&&F.set(at.key,d)}let Z,ie=0;const $e=V-L+1;let Ze=!1,qe=0;const gn=new Array($e);for(d=0;d<$e;d++)gn[d]=0;for(d=j;d<=R;d++){const at=h[d];if(ie>=$e){J(at,O,D,!0);continue}let Ct;if(at.key!=null)Ct=F.get(at.key);else for(Z=L;Z<=V;Z++)if(gn[Z-L]===0&&Yn(at,A[Z])){Ct=Z;break}Ct===void 0?J(at,O,D,!0):(gn[Ct-L]=d+1,Ct>=qe?qe=Ct:Ze=!0,S(at,A[Ct],b,null,O,D,q,G,g),ie++)}const Os=Ze?yg(gn):dn;for(Z=Os.length-1,d=$e-1;d>=0;d--){const at=L+d,Ct=A[at],wc=A[at+1],Nc=at+1{const{el:D,type:q,transition:G,children:g,shapeFlag:d}=h;if(d&6){ee(h.component.subTree,A,b,M);return}if(d&128){h.suspense.move(A,b,M);return}if(d&64){q.move(h,A,b,de);return}if(q===Ve){o(D,A,b);for(let R=0;RG.enter(D),O));else{const{leave:R,delayLeave:V,afterLeave:j}=G,L=()=>{h.ctx.isUnmounted?a(D):o(D,A,b)},F=()=>{const Z=D._isLeaving||!!D[Ca];D._isLeaving&&D[Ca](!0),G.persisted&&!Z?L():R(D,()=>{L(),j&&j()})};V?V(D,L,F):F()}else o(D,A,b)},J=(h,A,b,M=!1,O=!1)=>{const{type:D,props:q,ref:G,children:g,dynamicChildren:d,shapeFlag:C,patchFlag:R,dirs:V,cacheIndex:j,memo:L}=h;if(R===-2&&(O=!1),G!=null&&(At(),zn(G,null,b,h,!0),St()),j!=null&&(A.renderCache[j]=void 0),C&256){A.ctx.deactivate(h);return}const F=C&1&&V,Z=!Gn(h);let ie;if(Z&&(ie=q&&q.onVnodeBeforeUnmount)&&Et(ie,A,h),C&6)je(h.component,b,M);else{if(C&128){h.suspense.unmount(b,M);return}F&&nn(h,null,A,"beforeUnmount"),C&64?h.type.remove(h,A,b,de,M):d&&!d.hasOnce&&(D!==Ve||R>0&&R&64)?Ee(d,A,b,!1,!0):(D===Ve&&R&384||!O&&C&16)&&Ee(g,A,b),M&&pe(h)}const $e=L!=null&&j==null;(Z&&(ie=q&&q.onVnodeUnmounted)||F||$e)&&Qe(()=>{ie&&Et(ie,A,h),F&&nn(h,null,A,"unmounted"),$e&&(h.el=null)},b)},pe=h=>{const{type:A,el:b,anchor:M,transition:O}=h;if(A===Ve){ge(b,M);return}if(A===ja){m(h);return}const D=()=>{a(b),O&&!O.persisted&&O.afterLeave&&O.afterLeave()};if(h.shapeFlag&1&&O&&!O.persisted){const{leave:q,delayLeave:G}=O,g=()=>q(b,D);G?G(h.el,D,g):g()}else D()},ge=(h,A)=>{let b;for(;h!==A;)b=_(h),a(h),h=b;a(A)},je=(h,A,b)=>{const{bum:M,scope:O,job:D,subTree:q,um:G,m:g,a:d}=h;ir(g),ir(d),M&&ca(M),O.stop(),D&&(D.flags|=8,J(q,h,A,b)),G&&Qe(G,A),Qe(()=>{h.isUnmounted=!0},A)},Ee=(h,A,b,M=!1,O=!1,D=0)=>{for(let q=D;q{if(h.shapeFlag&6)return _e(h.component.subTree);if(h.shapeFlag&128)return h.suspense.next();const A=_(h.anchor||h.el),b=A&&A[Mu];return b?_(b):A};let Se=!1;const x=(h,A,b)=>{let M;h==null?A._vnode&&(J(A._vnode,null,null,!0),M=A._vnode.component):S(A._vnode||null,h,A,null,null,null,b),A._vnode=h,Se||(Se=!0,Ti(M),Ei(),Se=!1)},de={p:S,um:J,m:ee,r:pe,mt:te,mc:P,pc:re,pbc:U,n:_e,o:e};return{render:x,hydrate:void 0,createApp:ng(x)}}function xa({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function sn({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function _g(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ar(e,t,n=!1){const o=e.children,a=t.children;if(ne(o)&&ne(a))for(let s=0;s>1,e[n[r]]0&&(t[o]=n[s-1]),n[s]=o)}}for(s=n.length,i=n[s-1];s-- >0;)n[s]=i,i=t[i];return n}function sr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:sr(t)}function ir(e){if(e)for(let t=0;te.__isSuspense;function Ag(e,t){t&&t.pendingBranch?ne(e)?t.effects.push(...e):t.effects.push(e):$u(e)}const Ve=Symbol.for("v-fgt"),Vn=Symbol.for("v-txt"),Rt=Symbol.for("v-cmt"),ja=Symbol.for("v-stc"),rn=[];let nt=null;function Ne(e=!1){rn.push(nt=e?null:[])}function cr(){rn.pop(),nt=rn[rn.length-1]||null}let Wn=1;function Oo(e,t=!1){Wn+=e,e<0&&nt&&t&&(nt.hasOnce=!0)}function ur(e){return e.dynamicChildren=Wn>0?nt||dn:null,cr(),Wn>0&&nt&&nt.push(e),e}function Fe(e,t,n,o,a,s){return ur(me(e,t,n,o,a,s,!0))}function xo(e,t,n,o,a){return ur(Ke(e,t,n,o,a,!0))}function jo(e){return e?e.__v_isVNode===!0:!1}function Yn(e,t){return e.type===t.type&&e.key===t.key}const gr=({key:e})=>e??null,Bo=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Le(e)||we(e)||ae(e)?{i:ft,r:e,k:t,f:!!n}:e:null);function me(e,t=null,n=null,o=0,a=null,s=e===Ve?0:1,i=!1,r=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&gr(t),ref:t&&Bo(t),scopeId:Li,slotScopeIds:null,children:n,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:o,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:ft};return r?(Ko(l,n),s&128&&e.normalize(l)):n&&(l.shapeFlag|=Le(n)?8:16),Wn>0&&!i&&nt&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&nt.push(l),l}const Ke=Sg;function Sg(e,t=null,n=null,o=0,a=null,s=!1){if((!e||e===Fi)&&(e=Rt),jo(e)){const r=An(e,t,!0);return n&&Ko(r,n),Wn>0&&!s&&nt&&(r.shapeFlag&6?nt[nt.indexOf(e)]=r:nt.push(r)),r.patchFlag=-2,r}if(Mg(e)&&(e=e.__vccOpts),t){t=vg(t);let{class:r,style:l}=t;r&&!Le(r)&&(t.class=fn(r)),ye(l)&&(ko(l)&&!ne(l)&&(l=Ie({},l)),t.style=po(l))}const i=Le(e)?1:lr(e)?128:Co(e)?64:ye(e)?4:ae(e)?2:0;return me(e,t,n,o,a,i,s,!0)}function vg(e){return e?ko(e)||Xi(e)?Ie({},e):e:null}function An(e,t,n=!1,o=!1){const{props:a,ref:s,patchFlag:i,children:r,transition:l}=e,c=t?kg(a||{},t):a,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&gr(c),ref:t&&t.ref?n&&s?ne(s)?s.concat(Bo(t)):[s,Bo(t)]:Bo(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:r,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ve?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&An(e.ssContent),ssFallback:e.ssFallback&&An(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&wa(u,l.clone(u)),u}function ot(e=" ",t=0){return Ke(Vn,null,e,t)}function ln(e="",t=!1){return t?(Ne(),xo(Rt,null,e)):Ke(Rt,null,e)}function Tt(e){return e==null||typeof e=="boolean"?Ke(Rt):ne(e)?Ke(Ve,null,e.slice()):jo(e)?Ft(e):Ke(Vn,null,String(e))}function Ft(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:An(e)}function Ko(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(ne(t))n=16;else if(typeof t=="object")if(o&65){const a=t.default;a&&(a._c&&(a._d=!1),Ko(e,a()),a._c&&(a._d=!0));return}else{n=32;const a=t._;!a&&!Xi(t)?t._ctx=ft:a===3&&ft&&(ft.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(ae(t)){if(o&65){Ko(e,{default:t});return}t={default:t,_ctx:ft},n=32}else t=String(t),o&64?(n=16,t=[ot(t)]):n=8;e.children=t,e.shapeFlag|=n}function kg(...e){const t={};for(let n=0;nze||ft;let Uo,Jn;{const e=fo(),t=(n,o)=>{let a;return(a=e[n])||(a=e[n]=[]),a.push(o),s=>{a.length>1?a.forEach(i=>i(s)):a[0](s)}};Uo=t("__VUE_INSTANCE_SETTERS__",n=>ze=n),Jn=t("__VUE_SSR_SETTERS__",n=>Sn=n)}const Xn=e=>{const t=ze;return Uo(e),e.scope.on(),()=>{e.scope.off(),Uo(t)}},dr=()=>{ze&&ze.scope.off(),Uo(null)};function fr(e){return e.vnode.shapeFlag&4}let Sn=!1;function Lg(e,t=!1,n=!1){t&&Jn(t);const{props:o,children:a}=e.vnode,s=fr(e);ug(e,o,s,t),pg(e,a,n||t);const i=s?Cg(e,t):void 0;return t&&Jn(!1),i}function Cg(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Yu);const{setup:o}=n;if(o){At();const a=e.setupContext=o.length>1?Ng(e):null,s=Xn(e),i=mn(o,e,0,[e.props,a]),r=zs(i);if(St(),s(),(r||e.sp)&&!Gn(e)&&Na(e),r){if(i.then(dr,dr),t)return i.then(l=>{Jn(!0);try{pr(e,l,t)}finally{Jn(!1)}}).catch(l=>{Bn(l,e,0)});e.asyncDep=i}else pr(e,i)}else hr(e)}function pr(e,t,n){ae(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ye(t)&&(e.setupState=Ai(t)),hr(e)}function hr(e,t,n){const o=e.type;e.render||(e.render=o.render||_t);{const a=Xn(e);At();try{Ju(e)}finally{St(),a()}}}const wg={get(e,t){return He(e,"get",""),e[t]}};function Ng(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,wg),slots:e.slots,emit:e.emit,expose:t}}function Ba(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Ai(xn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in qn)return qn[n](e)},has(t,n){return n in t||n in qn}})):e.proxy}const Ig=/(?:^|[-_])\w/g,Pg=e=>e.replace(Ig,t=>t.toUpperCase()).replace(/[-_]/g,"");function mr(e,t=!0){return ae(e)?e.displayName||e.name:e.name||t&&e.__name}function br(e,t,n=!1){let o=mr(t);if(!o&&t.__file){const a=t.__file.match(/([^/\\]+)\.\w+$/);a&&(o=a[1])}if(!o&&e){const a=s=>{for(const i in s)if(s[i]===t)return i};o=a(e.components)||e.parent&&a(e.parent.type.components)||a(e.appContext.components)}return o?Pg(o):n?"App":"Anonymous"}function Mg(e){return ae(e)&&"__vccOpts"in e}const be=(e,t)=>bu(e,t,Sn);function _r(e,t,n){try{Oo(-1);const o=arguments.length;return o===2?ye(t)&&!ne(t)?jo(t)?Ke(e,null,[t]):Ke(e,t):Ke(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&jo(n)&&(n=[n]),Ke(e,t,n))}finally{Oo(1)}}const Rg="3.5.42";/** * @vue/runtime-dom v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Ka;const yr=typeof window<"u"&&window.trustedTypes;if(yr)try{Ka=yr.createPolicy("vue",{createHTML:e=>e})}catch{}const Ar=Ka?e=>Ka.createHTML(e):e=>e,Rg="http://www.w3.org/2000/svg",Fg="http://www.w3.org/1998/Math/MathML",Ot=typeof document<"u"?document:null,Sr=Ot&&Ot.createElement("template"),Dg={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const a=t==="svg"?Ot.createElementNS(Rg,e):t==="mathml"?Ot.createElementNS(Fg,e):n?Ot.createElement(e,{is:n}):Ot.createElement(e);return e==="select"&&o&&o.multiple!=null&&a.setAttribute("multiple",o.multiple),a},createText:e=>Ot.createTextNode(e),createComment:e=>Ot.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ot.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,a,s){const i=n?n.previousSibling:t.lastChild;if(a&&(a===s||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),n),!(a===s||!(a=a.nextSibling)););else{Sr.innerHTML=Ar(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const r=Sr.content;if(o==="svg"||o==="mathml"){const l=r.firstChild;for(;l.firstChild;)r.appendChild(l.firstChild);r.removeChild(l)}t.insertBefore(r,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Og=Symbol("_vtc");function xg(e,t,n){const o=e[Og];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const vr=Symbol("_vod"),jg=Symbol("_vsh"),Bg=Symbol(""),Kg=/(?:^|;)\s*display\s*:/;function Ug(e,t,n){const o=e.style,a=Le(n);let s=!1;if(n&&!a){if(t)if(Le(t))for(const i of t.split(";")){const r=i.slice(0,i.indexOf(":")).trim();n[r]==null&&Zn(o,r,"")}else for(const i in t)n[i]==null&&Zn(o,i,"");for(const i in n){i==="display"&&(s=!0);const r=n[i];r!=null?Gg(e,i,!Le(t)&&t?t[i]:void 0,r)||Zn(o,i,r):Zn(o,i,"")}}else if(a){if(t!==n){const i=o[Bg];i&&(n+=";"+i),o.cssText=n,s=Kg.test(n)}}else t&&e.removeAttribute("style");vr in e&&(e[vr]=s?o.display:"",e[jg]&&(o.display="none"))}const zo=/\s*!important$/;function Zn(e,t,n){if(ne(n))n.forEach(o=>Zn(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))zo.test(n)?e.setProperty(t,n.replace(zo,""),"important"):e.setProperty(t,n);else{const o=zg(e,t);zo.test(n)?e.setProperty(it(o),n.replace(zo,""),"important"):e[o]=n}}const kr=["Webkit","Moz","ms"],Ua={};function zg(e,t){const n=Ua[t];if(n)return n;let o=Be(t);if(o!=="filter"&&o in e)return Ua[t]=o;o=go(o);for(let a=0;aza||(Xg.then(()=>za=0),za=Date.now());function Qg(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;const a=n.value;if(ne(a)){const s=o.stopImmediatePropagation;o.stopImmediatePropagation=()=>{s.call(o),o._stopped=!0};const i=a.slice(),r=[o];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,ed=(e,t,n,o,a,s)=>{const i=a==="svg";t==="class"?xg(e,o,i):t==="style"?Ug(e,n,o):so(t)?io(t)||Vg(e,t,n,o,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):td(e,t,o,i))?($r(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Er(e,t,o,i,s,t!=="value")):e._isVueCE&&(nd(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!Le(o)))?$r(e,Be(t),o,s,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),Er(e,t,o,i))};function td(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&Cr(t)&&ae(n));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 Cr(t)&&Le(n)?!1:t in e}function nd(e,t){const n=e._def.props;if(!n)return!1;const o=Be(t);return Array.isArray(n)?n.some(a=>Be(a)===o):Object.keys(n).some(a=>Be(a)===o)}const wr={};function od(e,t,n){let o=Un(e,t);lo(o)&&(o=Ie({},o,t));class a extends Ga{constructor(i){super(o,i,n)}}return a.def=o,a}const ad=typeof HTMLElement<"u"?HTMLElement:class{};class Ga extends ad{constructor(t,n={},o=Pr){super(),this._def=t,this._props=n,this._createApp=o,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&&o!==Pr?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Ie({},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 Ga){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,Ea(()=>{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 n of t)this._setAttr(n.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let o=0;o{this._resolved=!0,this._pendingResolve=void 0;const{props:s,styles:i}=o;let r;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]=Hs(this._props[l])),(r||(r=Object.create(null)))[Be(l)]=!0)}this._numberProps=r,this._resolveProps(o),this.shadowRoot&&this._applyStyles(i),this._mount(o)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(o=>{o.configureApp=this._def.configureApp,t(this._def=o,!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 n=this._instance&&this._instance.exposed;if(n)for(const o in n)he(this,o)||Object.defineProperty(this,o,{get:()=>ka(n[o])})}_resolveProps(t){const{props:n}=t,o=ne(n)?n:Object.keys(n||{});for(const a of Object.keys(this))a[0]!=="_"&&o.includes(a)&&this._setProp(a,this[a]);for(const a of o.map(Be))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 n=this.hasAttribute(t);let o=n?this.getAttribute(t):wr;const a=Be(t);n&&this._numberProps&&this._numberProps[a]&&(o=Hs(o)),this._setProp(a,o,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,o=!0,a=!1){if(n!==this._props[t]&&(this._dirty=!0,n===wr?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),a&&this._instance&&this._update(),o)){const s=this._ob;s&&(this._processMutations(s.takeRecords()),s.disconnect()),n===!0?this.setAttribute(it(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(it(t),n+""):n||this.removeAttribute(it(t)),s&&s.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),id(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=Ke(this._def,Ie(t,this._props));return this._instance||(n.ce=o=>{this._instance=o,o.ce=this,o.isCE=!0;const a=(s,i)=>{this.dispatchEvent(new CustomEvent(s,lo(i[0])?Ie({detail:i},i[0]):{detail:i}))};o.emit=(s,...i)=>{a(s,i),it(s)!==s&&a(it(s),i)},this._setParent()}),n}_applyStyles(t,n,o){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const a=this._nonce,s=this.shadowRoot,i=o?this._getStyleAnchor(o)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(s);let r=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,r||i),r=c,l===0&&(o||this._styleAnchors.set(this._def,c),n&&this._styleAnchors.set(n,c))}}_getStyleAnchor(t){if(!t)return null;const n=this._styleAnchors.get(t);return n&&n.parentNode===this.shadowRoot?n:(n&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let n=0;n{Ir().render(...e)},Pr=(...e)=>{const t=Ir().createApp(...e),{mount:n}=t;return t.mount=o=>{const a=ld(o);if(!a)return;const s=t._component;!ae(s)&&!s.render&&!s.template&&(s.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const i=n(a,!1,rd(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),i},t};function rd(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ld(e){return Le(e)?document.querySelector(e):e}/*! +**/let Ka;const yr=typeof window<"u"&&window.trustedTypes;if(yr)try{Ka=yr.createPolicy("vue",{createHTML:e=>e})}catch{}const Ar=Ka?e=>Ka.createHTML(e):e=>e,Fg="http://www.w3.org/2000/svg",Dg="http://www.w3.org/1998/Math/MathML",Ot=typeof document<"u"?document:null,Sr=Ot&&Ot.createElement("template"),Og={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const a=t==="svg"?Ot.createElementNS(Fg,e):t==="mathml"?Ot.createElementNS(Dg,e):n?Ot.createElement(e,{is:n}):Ot.createElement(e);return e==="select"&&o&&o.multiple!=null&&a.setAttribute("multiple",o.multiple),a},createText:e=>Ot.createTextNode(e),createComment:e=>Ot.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ot.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,a,s){const i=n?n.previousSibling:t.lastChild;if(a&&(a===s||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),n),!(a===s||!(a=a.nextSibling)););else{Sr.innerHTML=Ar(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const r=Sr.content;if(o==="svg"||o==="mathml"){const l=r.firstChild;for(;l.firstChild;)r.appendChild(l.firstChild);r.removeChild(l)}t.insertBefore(r,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},xg=Symbol("_vtc");function jg(e,t,n){const o=e[xg];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const vr=Symbol("_vod"),Bg=Symbol("_vsh"),Kg=Symbol(""),Ug=/(?:^|;)\s*display\s*:/;function zg(e,t,n){const o=e.style,a=Le(n);let s=!1;if(n&&!a){if(t)if(Le(t))for(const i of t.split(";")){const r=i.slice(0,i.indexOf(":")).trim();n[r]==null&&Zn(o,r,"")}else for(const i in t)n[i]==null&&Zn(o,i,"");for(const i in n){i==="display"&&(s=!0);const r=n[i];r!=null?qg(e,i,!Le(t)&&t?t[i]:void 0,r)||Zn(o,i,r):Zn(o,i,"")}}else if(a){if(t!==n){const i=o[Kg];i&&(n+=";"+i),o.cssText=n,s=Ug.test(n)}}else t&&e.removeAttribute("style");vr in e&&(e[vr]=s?o.display:"",e[Bg]&&(o.display="none"))}const zo=/\s*!important$/;function Zn(e,t,n){if(ne(n))n.forEach(o=>Zn(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))zo.test(n)?e.setProperty(t,n.replace(zo,""),"important"):e.setProperty(t,n);else{const o=Gg(e,t);zo.test(n)?e.setProperty(it(o),n.replace(zo,""),"important"):e[o]=n}}const kr=["Webkit","Moz","ms"],Ua={};function Gg(e,t){const n=Ua[t];if(n)return n;let o=Be(t);if(o!=="filter"&&o in e)return Ua[t]=o;o=go(o);for(let a=0;aza||(Zg.then(()=>za=0),za=Date.now());function ed(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;const a=n.value;if(ne(a)){const s=o.stopImmediatePropagation;o.stopImmediatePropagation=()=>{s.call(o),o._stopped=!0};const i=a.slice(),r=[o];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,td=(e,t,n,o,a,s)=>{const i=a==="svg";t==="class"?jg(e,o,i):t==="style"?zg(e,n,o):so(t)?io(t)||Wg(e,t,n,o,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):nd(e,t,o,i))?($r(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Er(e,t,o,i,s,t!=="value")):e._isVueCE&&(od(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!Le(o)))?$r(e,Be(t),o,s,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),Er(e,t,o,i))};function nd(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&Cr(t)&&ae(n));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 Cr(t)&&Le(n)?!1:t in e}function od(e,t){const n=e._def.props;if(!n)return!1;const o=Be(t);return Array.isArray(n)?n.some(a=>Be(a)===o):Object.keys(n).some(a=>Be(a)===o)}const wr={};function ad(e,t,n){let o=Un(e,t);lo(o)&&(o=Ie({},o,t));class a extends Ga{constructor(i){super(o,i,n)}}return a.def=o,a}const sd=typeof HTMLElement<"u"?HTMLElement:class{};class Ga extends sd{constructor(t,n={},o=Pr){super(),this._def=t,this._props=n,this._createApp=o,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&&o!==Pr?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Ie({},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 Ga){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,Ea(()=>{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 n of t)this._setAttr(n.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let o=0;o{this._resolved=!0,this._pendingResolve=void 0;const{props:s,styles:i}=o;let r;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]=Hs(this._props[l])),(r||(r=Object.create(null)))[Be(l)]=!0)}this._numberProps=r,this._resolveProps(o),this.shadowRoot&&this._applyStyles(i),this._mount(o)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(o=>{o.configureApp=this._def.configureApp,t(this._def=o,!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 n=this._instance&&this._instance.exposed;if(n)for(const o in n)he(this,o)||Object.defineProperty(this,o,{get:()=>ka(n[o])})}_resolveProps(t){const{props:n}=t,o=ne(n)?n:Object.keys(n||{});for(const a of Object.keys(this))a[0]!=="_"&&o.includes(a)&&this._setProp(a,this[a]);for(const a of o.map(Be))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 n=this.hasAttribute(t);let o=n?this.getAttribute(t):wr;const a=Be(t);n&&this._numberProps&&this._numberProps[a]&&(o=Hs(o)),this._setProp(a,o,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,o=!0,a=!1){if(n!==this._props[t]&&(this._dirty=!0,n===wr?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),a&&this._instance&&this._update(),o)){const s=this._ob;s&&(this._processMutations(s.takeRecords()),s.disconnect()),n===!0?this.setAttribute(it(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(it(t),n+""):n||this.removeAttribute(it(t)),s&&s.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),rd(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=Ke(this._def,Ie(t,this._props));return this._instance||(n.ce=o=>{this._instance=o,o.ce=this,o.isCE=!0;const a=(s,i)=>{this.dispatchEvent(new CustomEvent(s,lo(i[0])?Ie({detail:i},i[0]):{detail:i}))};o.emit=(s,...i)=>{a(s,i),it(s)!==s&&a(it(s),i)},this._setParent()}),n}_applyStyles(t,n,o){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const a=this._nonce,s=this.shadowRoot,i=o?this._getStyleAnchor(o)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(s);let r=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,r||i),r=c,l===0&&(o||this._styleAnchors.set(this._def,c),n&&this._styleAnchors.set(n,c))}}_getStyleAnchor(t){if(!t)return null;const n=this._styleAnchors.get(t);return n&&n.parentNode===this.shadowRoot?n:(n&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let n=0;n{Ir().render(...e)},Pr=(...e)=>{const t=Ir().createApp(...e),{mount:n}=t;return t.mount=o=>{const a=cd(o);if(!a)return;const s=t._component;!ae(s)&&!s.render&&!s.template&&(s.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const i=n(a,!1,ld(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),i},t};function ld(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function cd(e){return Le(e)?document.querySelector(e):e}/*! * pinia v2.3.1 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let Mr;const Go=e=>Mr=e,Rr=Symbol();function qa(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Qn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Qn||(Qn={}));function cd(){const e=ga(!0),t=e.run(()=>ce({}));let n=[],o=[];const a=xn({install(s){Go(a),a._a=s,s.provide(Rr,a),s.config.globalProperties.$pinia=a,o.forEach(i=>n.push(i)),o=[]},use(s){return this._a?n.push(s):o.push(s),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return a}const Fr=()=>{};function Dr(e,t,n,o=Fr){e.push(t);const a=()=>{const s=e.indexOf(t);s>-1&&(e.splice(s,1),o())};return!n&&Qs()&&Gc(a),a}function vn(e,...t){e.slice().forEach(n=>{n(...t)})}const ud=e=>e(),Or=Symbol(),Ha=Symbol();function Va(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,o)=>e.set(o,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const o=t[n],a=e[n];qa(a)&&qa(o)&&e.hasOwnProperty(n)&&!we(o)&&!It(o)?e[n]=Va(a,o):e[n]=o}return e}const gd=Symbol();function dd(e){return!qa(e)||!e.hasOwnProperty(gd)}const{assign:Ht}=Object;function fd(e){return!!(we(e)&&e.effect)}function pd(e,t,n,o){const{state:a,actions:s,getters:i}=t,r=n.state.value[e];let l;function c(){r||(n.state.value[e]=a?a():{});const u=du(n.state.value[e]);return Ht(u,s,Object.keys(i||{}).reduce((p,_)=>(p[_]=xn(be(()=>{Go(n);const v=n._s.get(e);return i[_].call(v,v)})),p),{}))}return l=xr(e,c,t,n,o,!0),l}function xr(e,t,n={},o,a,s){let i;const r=Ht({actions:{}},n),l={deep:!0};let c,u,p=[],_=[],v;const T=o.state.value[e];!s&&!T&&(o.state.value[e]={});let S;function w(P){let y;c=u=!1,typeof P=="function"?(P(o.state.value[e]),y={type:Qn.patchFunction,storeId:e,events:v}):(Va(o.state.value[e],P),y={type:Qn.patchObject,payload:P,storeId:e,events:v});const U=S=Symbol();Ea().then(()=>{S===U&&(c=!0)}),u=!0,vn(p,y,o.state.value[e])}const N=s?function(){const{state:y}=n,U=y?y():{};this.$patch(z=>{Ht(z,U)})}:Fr;function $(){i.stop(),p=[],_=[],o._s.delete(e)}const f=(P,y="")=>{if(Or in P)return P[Ha]=y,P;const U=function(){Go(o);const z=Array.from(arguments),K=[],Q=[];function te(X){K.push(X)}function B(X){Q.push(X)}vn(_,{args:z,name:U[Ha],store:k,after:te,onError:B});let Y;try{Y=P.apply(this&&this.$id===e?this:k,z)}catch(X){throw vn(Q,X),X}return Y instanceof Promise?Y.then(X=>(vn(K,X),X)).catch(X=>(vn(Q,X),Promise.reject(X))):(vn(K,Y),Y)};return U[Or]=!0,U[Ha]=y,U},m={_p:o,$id:e,$onAction:Dr.bind(null,_),$patch:w,$reset:N,$subscribe(P,y={}){const U=Dr(p,P,y.detached,()=>z()),z=i.run(()=>on(()=>o.state.value[e],K=>{(y.flush==="sync"?u:c)&&P({storeId:e,type:Qn.direct,events:v},K)},Ht({},l,y)));return U},$dispose:$},k=So(m);o._s.set(e,k);const I=(o._a&&o._a.runWithContext||ud)(()=>o._e.run(()=>(i=ga()).run(()=>t({action:f}))));for(const P in I){const y=I[P];if(we(y)&&!fd(y)||It(y))s||(T&&dd(y)&&(we(y)?y.value=T[P]:Va(y,T[P])),o.state.value[e][P]=y);else if(typeof y=="function"){const U=f(y,P);I[P]=U,r.actions[P]=y}}return Ht(k,I),Ht(ue(k),I),Object.defineProperty(k,"$state",{get:()=>o.state.value[e],set:P=>{w(y=>{Ht(y,P)})}}),o._p.forEach(P=>{Ht(k,i.run(()=>P({store:k,app:o._a,pinia:o,options:r})))}),T&&s&&n.hydrate&&n.hydrate(k.$state,T),c=!0,u=!0,k}/*! #__NO_SIDE_EFFECTS__ */function Wa(e,t,n){let o,a;const s=typeof t=="function";typeof e=="string"?(o=e,a=s?n:t):(a=e,o=e.id);function i(r,l){const c=Lu();return r=r||(c?Re(Rr,null):null),r&&Go(r),r=Mr,r._s.has(o)||(s?xr(o,t,a,r):pd(o,a,r)),r._s.get(o)}return i.$id=o,i}const hd={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},md={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},bd={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},_d={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},yd={menuComingSoon:"القائمة قادمة قريباً"},Ad={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},Sd={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},vd={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},kd={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},Td={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Ed={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"},$d={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Ld={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Cd={menuComingSoon:"Menü folgt in Kürze"},wd={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Nd={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Id={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Pd={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Md={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Rd={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"},Fd={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Dd={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Od={menuComingSoon:"Menu coming soon"},xd={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},jd={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Bd={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},Kd={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Ud={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},zd={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Gd={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"},qd={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."}},Hd={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Vd={menuComingSoon:"Menú próximamente"},Wd={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Yd={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},Jd={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},Xd={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},Zd={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},Qd={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"},ef={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},tf={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},nf={menuComingSoon:"Menu bientôt disponible"},of={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},af={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},sf={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},rf={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},lf={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},cf={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},uf={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},gf={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},df={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},ff={menuComingSoon:"मेनू शीघ्र आ रहा है"},pf={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},hf={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},mf={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},bf={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},_f={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"},yf={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},Af={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Sf={menuComingSoon:"Menu in arrivo"},vf={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},kf={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Tf={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Ef={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},$f={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"},Lf={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."}},Cf={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},wf={menuComingSoon:"Menu em breve"},Nf={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},If={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Pf={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Mf={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},Rf={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Ff={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ă"},Df={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ă."}},Of={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},xf={menuComingSoon:"Meniu în curând"},jf={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Bf={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Kf={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},Uf={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},zf={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Gf={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},qf={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},Hf={menuComingSoon:"Меню скоро появится"},Vf={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},Wf={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},Yf={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},Jf={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},Xf={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},Zf={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},Qf={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},ep={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},tp={menuComingSoon:"菜单即将推出"},np={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},op={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},ap={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! + */let Mr;const Go=e=>Mr=e,Rr=Symbol();function qa(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Qn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Qn||(Qn={}));function ud(){const e=ga(!0),t=e.run(()=>ce({}));let n=[],o=[];const a=xn({install(s){Go(a),a._a=s,s.provide(Rr,a),s.config.globalProperties.$pinia=a,o.forEach(i=>n.push(i)),o=[]},use(s){return this._a?n.push(s):o.push(s),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return a}const Fr=()=>{};function Dr(e,t,n,o=Fr){e.push(t);const a=()=>{const s=e.indexOf(t);s>-1&&(e.splice(s,1),o())};return!n&&Qs()&&qc(a),a}function vn(e,...t){e.slice().forEach(n=>{n(...t)})}const gd=e=>e(),Or=Symbol(),Ha=Symbol();function Va(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,o)=>e.set(o,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const o=t[n],a=e[n];qa(a)&&qa(o)&&e.hasOwnProperty(n)&&!we(o)&&!It(o)?e[n]=Va(a,o):e[n]=o}return e}const dd=Symbol();function fd(e){return!qa(e)||!e.hasOwnProperty(dd)}const{assign:Ht}=Object;function pd(e){return!!(we(e)&&e.effect)}function hd(e,t,n,o){const{state:a,actions:s,getters:i}=t,r=n.state.value[e];let l;function c(){r||(n.state.value[e]=a?a():{});const u=fu(n.state.value[e]);return Ht(u,s,Object.keys(i||{}).reduce((p,_)=>(p[_]=xn(be(()=>{Go(n);const v=n._s.get(e);return i[_].call(v,v)})),p),{}))}return l=xr(e,c,t,n,o,!0),l}function xr(e,t,n={},o,a,s){let i;const r=Ht({actions:{}},n),l={deep:!0};let c,u,p=[],_=[],v;const T=o.state.value[e];!s&&!T&&(o.state.value[e]={});let S;function w(P){let y;c=u=!1,typeof P=="function"?(P(o.state.value[e]),y={type:Qn.patchFunction,storeId:e,events:v}):(Va(o.state.value[e],P),y={type:Qn.patchObject,payload:P,storeId:e,events:v});const U=S=Symbol();Ea().then(()=>{S===U&&(c=!0)}),u=!0,vn(p,y,o.state.value[e])}const N=s?function(){const{state:y}=n,U=y?y():{};this.$patch(z=>{Ht(z,U)})}:Fr;function $(){i.stop(),p=[],_=[],o._s.delete(e)}const f=(P,y="")=>{if(Or in P)return P[Ha]=y,P;const U=function(){Go(o);const z=Array.from(arguments),K=[],Q=[];function te(X){K.push(X)}function B(X){Q.push(X)}vn(_,{args:z,name:U[Ha],store:k,after:te,onError:B});let Y;try{Y=P.apply(this&&this.$id===e?this:k,z)}catch(X){throw vn(Q,X),X}return Y instanceof Promise?Y.then(X=>(vn(K,X),X)).catch(X=>(vn(Q,X),Promise.reject(X))):(vn(K,Y),Y)};return U[Or]=!0,U[Ha]=y,U},m={_p:o,$id:e,$onAction:Dr.bind(null,_),$patch:w,$reset:N,$subscribe(P,y={}){const U=Dr(p,P,y.detached,()=>z()),z=i.run(()=>on(()=>o.state.value[e],K=>{(y.flush==="sync"?u:c)&&P({storeId:e,type:Qn.direct,events:v},K)},Ht({},l,y)));return U},$dispose:$},k=So(m);o._s.set(e,k);const I=(o._a&&o._a.runWithContext||gd)(()=>o._e.run(()=>(i=ga()).run(()=>t({action:f}))));for(const P in I){const y=I[P];if(we(y)&&!pd(y)||It(y))s||(T&&fd(y)&&(we(y)?y.value=T[P]:Va(y,T[P])),o.state.value[e][P]=y);else if(typeof y=="function"){const U=f(y,P);I[P]=U,r.actions[P]=y}}return Ht(k,I),Ht(ue(k),I),Object.defineProperty(k,"$state",{get:()=>o.state.value[e],set:P=>{w(y=>{Ht(y,P)})}}),o._p.forEach(P=>{Ht(k,i.run(()=>P({store:k,app:o._a,pinia:o,options:r})))}),T&&s&&n.hydrate&&n.hydrate(k.$state,T),c=!0,u=!0,k}/*! #__NO_SIDE_EFFECTS__ */function Wa(e,t,n){let o,a;const s=typeof t=="function";typeof e=="string"?(o=e,a=s?n:t):(a=e,o=e.id);function i(r,l){const c=Cu();return r=r||(c?Re(Rr,null):null),r&&Go(r),r=Mr,r._s.has(o)||(s?xr(o,t,a,r):hd(o,a,r)),r._s.get(o)}return i.$id=o,i}const md={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},bd={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},_d={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},yd={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},Ad={menuComingSoon:"القائمة قادمة قريباً"},Sd={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},vd={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},kd={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Td={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},Ed={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},$d={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"},Ld={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Cd={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},wd={menuComingSoon:"Menü folgt in Kürze"},Nd={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Id={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Pd={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Md={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Rd={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Fd={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"},Dd={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Od={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},xd={menuComingSoon:"Menu coming soon"},jd={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Bd={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Kd={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},Ud={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},zd={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Gd={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},qd={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"},Hd={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."}},Vd={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Wd={menuComingSoon:"Menú próximamente"},Yd={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Jd={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},Xd={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},Zd={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},Qd={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},ef={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"},tf={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},nf={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},of={menuComingSoon:"Menu bientôt disponible"},af={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},sf={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},rf={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},lf={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},cf={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},uf={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},gf={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},df={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},ff={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},pf={menuComingSoon:"मेनू शीघ्र आ रहा है"},hf={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},mf={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},bf={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},_f={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},yf={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"},Af={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},Sf={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},vf={menuComingSoon:"Menu in arrivo"},kf={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Tf={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Ef={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},$f={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Lf={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"},Cf={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."}},wf={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Nf={menuComingSoon:"Menu em breve"},If={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Pf={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Mf={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Rf={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},Ff={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Df={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ă"},Of={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ă."}},xf={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},jf={menuComingSoon:"Meniu în curând"},Bf={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Kf={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Uf={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},zf={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Gf={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},qf={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},Hf={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},Vf={menuComingSoon:"Меню скоро появится"},Wf={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},Yf={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},Jf={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},Xf={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},Zf={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},Qf={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},ep={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},tp={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},np={menuComingSoon:"菜单即将推出"},op={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},ap={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},sp={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! * shared v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function sp(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const qo=typeof window<"u",Vt=(e,t=!1)=>t?Symbol.for(e):Symbol(e),ip=(e,t,n)=>rp({l:e,k:t,s:n}),rp=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Pe=e=>typeof e=="number"&&isFinite(e),lp=e=>zr(e)==="[object Date]",Wt=e=>zr(e)==="[object RegExp]",Ho=e=>se(e)&&Object.keys(e).length===0,Ge=Object.assign,cp=Object.create,Ae=(e=null)=>cp(e);let jr;const xt=()=>jr||(jr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:Ae());function Br(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Kr(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function up(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(o,a,s)=>`${a}="${Kr(s)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(o,a,s)=>`${a}='${Kr(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(o=>{e=e.replace(o,"$1javascript:")}),e}const gp=Object.prototype.hasOwnProperty;function ht(e,t){return gp.call(e,t)}const Ce=Array.isArray,Te=e=>typeof e=="function",W=e=>typeof e=="string",le=e=>typeof e=="boolean",fe=e=>e!==null&&typeof e=="object",dp=e=>fe(e)&&Te(e.then)&&Te(e.catch),Ur=Object.prototype.toString,zr=e=>Ur.call(e),se=e=>{if(!fe(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},fp=e=>e==null?"":Ce(e)||se(e)&&e.toString===Ur?JSON.stringify(e,null,2):String(e);function pp(e,t=""){return e.reduce((n,o,a)=>a===0?n+o:n+t+o,"")}function Vo(e){let t=e;return()=>++t}const Wo=e=>!fe(e)||Ce(e);function Yo(e,t){if(Wo(e)||Wo(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:o,des:a}=n.pop();Object.keys(o).forEach(s=>{s!=="__proto__"&&(fe(o[s])&&!fe(a[s])&&(a[s]=Array.isArray(o[s])?[]:Ae()),Wo(a[s])||Wo(o[s])?a[s]=o[s]:n.push({src:o[s],des:a[s]}))})}}/*! + */function ip(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const qo=typeof window<"u",Vt=(e,t=!1)=>t?Symbol.for(e):Symbol(e),rp=(e,t,n)=>lp({l:e,k:t,s:n}),lp=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Pe=e=>typeof e=="number"&&isFinite(e),cp=e=>zr(e)==="[object Date]",Wt=e=>zr(e)==="[object RegExp]",Ho=e=>se(e)&&Object.keys(e).length===0,Ge=Object.assign,up=Object.create,Ae=(e=null)=>up(e);let jr;const xt=()=>jr||(jr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:Ae());function Br(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Kr(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function gp(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(o,a,s)=>`${a}="${Kr(s)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(o,a,s)=>`${a}='${Kr(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(o=>{e=e.replace(o,"$1javascript:")}),e}const dp=Object.prototype.hasOwnProperty;function ht(e,t){return dp.call(e,t)}const Ce=Array.isArray,Te=e=>typeof e=="function",W=e=>typeof e=="string",le=e=>typeof e=="boolean",fe=e=>e!==null&&typeof e=="object",fp=e=>fe(e)&&Te(e.then)&&Te(e.catch),Ur=Object.prototype.toString,zr=e=>Ur.call(e),se=e=>{if(!fe(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},pp=e=>e==null?"":Ce(e)||se(e)&&e.toString===Ur?JSON.stringify(e,null,2):String(e);function hp(e,t=""){return e.reduce((n,o,a)=>a===0?n+o:n+t+o,"")}function Vo(e){let t=e;return()=>++t}const Wo=e=>!fe(e)||Ce(e);function Yo(e,t){if(Wo(e)||Wo(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:o,des:a}=n.pop();Object.keys(o).forEach(s=>{s!=="__proto__"&&(fe(o[s])&&!fe(a[s])&&(a[s]=Array.isArray(o[s])?[]:Ae()),Wo(a[s])||Wo(o[s])?a[s]=o[s]:n.push({src:o[s],des:a[s]}))})}}/*! * message-compiler v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function hp(e,t,n){return{line:e,column:t,offset:n}}function Jo(e,t,n){return{start:e,end:t}}const mp=/\{([0-9a-zA-Z]+)\}/g;function Gr(e,...t){return t.length===1&&bp(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(mp,(n,o)=>t.hasOwnProperty(o)?t[o]:"")}const qr=Object.assign,Hr=e=>typeof e=="string",bp=e=>e!==null&&typeof e=="object";function Vr(e,t=""){return e.reduce((n,o,a)=>a===0?n+o:n+t+o,"")}const Ya={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},_p={[Ya.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function yp(e,t,...n){const o=Gr(_p[e],...n||[]),a={message:String(o),code:e};return t&&(a.location=t),a}const oe={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},Ap={[oe.EXPECTED_TOKEN]:"Expected token: '{0}'",[oe.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[oe.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[oe.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[oe.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[oe.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[oe.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[oe.EMPTY_PLACEHOLDER]:"Empty placeholder",[oe.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[oe.INVALID_LINKED_FORMAT]:"Invalid linked format",[oe.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[oe.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[oe.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[oe.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[oe.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[oe.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function kn(e,t,n={}){const{domain:o,messages:a,args:s}=n,i=Gr((a||Ap)[e]||"",...s||[]),r=new SyntaxError(String(i));return r.code=e,t&&(r.location=t),r.domain=o,r}function Sp(e){throw e}const jt=" ",vp="\r",Xe=` -`,kp="\u2028",Tp="\u2029";function Ep(e){const t=e;let n=0,o=1,a=1,s=0;const i=I=>t[I]===vp&&t[I+1]===Xe,r=I=>t[I]===Xe,l=I=>t[I]===Tp,c=I=>t[I]===kp,u=I=>i(I)||r(I)||l(I)||c(I),p=()=>n,_=()=>o,v=()=>a,T=()=>s,S=I=>i(I)||l(I)||c(I)?Xe:t[I],w=()=>S(n),N=()=>S(n+s);function $(){return s=0,u(n)&&(o++,a=0),i(n)&&n++,n++,a++,t[n]}function f(){return i(n+s)&&s++,s++,t[n+s]}function m(){n=0,o=1,a=1,s=0}function k(I=0){s=I}function E(){const I=n+s;for(;I!==n;)$();s=0}return{index:p,line:_,column:v,peekOffset:T,charAt:S,currentChar:w,currentPeek:N,next:$,peek:f,reset:m,resetPeek:k,skipToPeek:E}}const Yt=void 0,$p=".",Wr="'",Lp="tokenizer";function Cp(e,t={}){const n=t.location!==!1,o=Ep(e),a=()=>o.index(),s=()=>hp(o.line(),o.column(),o.index()),i=s(),r=a(),l={currentType:14,offset:r,startLoc:i,endLoc:i,lastType:14,lastOffset:r,lastStartLoc:i,lastEndLoc:i,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function p(g,d,C,...R){const V=c();if(d.column+=C,d.offset+=C,u){const j=n?Jo(V.startLoc,d):null,L=kn(g,j,{domain:Lp,args:R});u(L)}}function _(g,d,C){g.endLoc=s(),g.currentType=d;const R={type:d};return n&&(R.loc=Jo(g.startLoc,g.endLoc)),C!=null&&(R.value=C),R}const v=g=>_(g,14);function T(g,d){return g.currentChar()===d?(g.next(),d):(p(oe.EXPECTED_TOKEN,s(),0,d),"")}function S(g){let d="";for(;g.currentPeek()===jt||g.currentPeek()===Xe;)d+=g.currentPeek(),g.peek();return d}function w(g){const d=S(g);return g.skipToPeek(),d}function N(g){if(g===Yt)return!1;const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d===95}function $(g){if(g===Yt)return!1;const d=g.charCodeAt(0);return d>=48&&d<=57}function f(g,d){const{currentType:C}=d;if(C!==2)return!1;S(g);const R=N(g.currentPeek());return g.resetPeek(),R}function m(g,d){const{currentType:C}=d;if(C!==2)return!1;S(g);const R=g.currentPeek()==="-"?g.peek():g.currentPeek(),V=$(R);return g.resetPeek(),V}function k(g,d){const{currentType:C}=d;if(C!==2)return!1;S(g);const R=g.currentPeek()===Wr;return g.resetPeek(),R}function E(g,d){const{currentType:C}=d;if(C!==8)return!1;S(g);const R=g.currentPeek()===".";return g.resetPeek(),R}function I(g,d){const{currentType:C}=d;if(C!==9)return!1;S(g);const R=N(g.currentPeek());return g.resetPeek(),R}function P(g,d){const{currentType:C}=d;if(!(C===8||C===12))return!1;S(g);const R=g.currentPeek()===":";return g.resetPeek(),R}function y(g,d){const{currentType:C}=d;if(C!==10)return!1;const R=()=>{const j=g.currentPeek();return j==="{"?N(g.peek()):j==="@"||j==="%"||j==="|"||j===":"||j==="."||j===jt||!j?!1:j===Xe?(g.peek(),R()):K(g,!1)},V=R();return g.resetPeek(),V}function U(g){S(g);const d=g.currentPeek()==="|";return g.resetPeek(),d}function z(g){const d=S(g),C=g.currentPeek()==="%"&&g.peek()==="{";return g.resetPeek(),{isModulo:C,hasSpace:d.length>0}}function K(g,d=!0){const C=(V=!1,j="",L=!1)=>{const F=g.currentPeek();return F==="{"?j==="%"?!1:V:F==="@"||!F?j==="%"?!0:V:F==="%"?(g.peek(),C(V,"%",!0)):F==="|"?j==="%"||L?!0:!(j===jt||j===Xe):F===jt?(g.peek(),C(!0,jt,L)):F===Xe?(g.peek(),C(!0,Xe,L)):!0},R=C();return d&&g.resetPeek(),R}function Q(g,d){const C=g.currentChar();return C===Yt?Yt:d(C)?(g.next(),C):null}function te(g){const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36}function B(g){return Q(g,te)}function Y(g){const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36||d===45}function X(g){return Q(g,Y)}function re(g){const d=g.charCodeAt(0);return d>=48&&d<=57}function xe(g){return Q(g,re)}function H(g){const d=g.charCodeAt(0);return d>=48&&d<=57||d>=65&&d<=70||d>=97&&d<=102}function ee(g){return Q(g,H)}function J(g){let d="",C="";for(;d=xe(g);)C+=d;return C}function pe(g){w(g);const d=g.currentChar();return d!=="%"&&p(oe.EXPECTED_TOKEN,s(),0,d),g.next(),"%"}function ge(g){let d="";for(;;){const C=g.currentChar();if(C==="{"||C==="}"||C==="@"||C==="|"||!C)break;if(C==="%")if(K(g))d+=C,g.next();else break;else if(C===jt||C===Xe)if(K(g))d+=C,g.next();else{if(U(g))break;d+=C,g.next()}else d+=C,g.next()}return d}function je(g){w(g);let d="",C="";for(;d=X(g);)C+=d;return g.currentChar()===Yt&&p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),C}function Ee(g){w(g);let d="";return g.currentChar()==="-"?(g.next(),d+=`-${J(g)}`):d+=J(g),g.currentChar()===Yt&&p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),d}function _e(g){return g!==Wr&&g!==Xe}function Se(g){w(g),T(g,"'");let d="",C="";for(;d=Q(g,_e);)d==="\\"?C+=x(g):C+=d;const R=g.currentChar();return R===Xe||R===Yt?(p(oe.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,s(),0),R===Xe&&(g.next(),T(g,"'")),C):(T(g,"'"),C)}function x(g){const d=g.currentChar();switch(d){case"\\":case"'":return g.next(),`\\${d}`;case"u":return de(g,d,4);case"U":return de(g,d,6);default:return p(oe.UNKNOWN_ESCAPE_SEQUENCE,s(),0,d),""}}function de(g,d,C){T(g,d);let R="";for(let V=0;V{const R=g.currentChar();return R==="{"||R==="%"||R==="@"||R==="|"||R==="("||R===")"||!R||R===jt?C:(C+=R,g.next(),d(C))};return d("")}function M(g){w(g);const d=T(g,"|");return w(g),d}function O(g,d){let C=null;switch(g.currentChar()){case"{":return d.braceNest>=1&&p(oe.NOT_ALLOW_NEST_PLACEHOLDER,s(),0),g.next(),C=_(d,2,"{"),w(g),d.braceNest++,C;case"}":return d.braceNest>0&&d.currentType===2&&p(oe.EMPTY_PLACEHOLDER,s(),0),g.next(),C=_(d,3,"}"),d.braceNest--,d.braceNest>0&&w(g),d.inLinked&&d.braceNest===0&&(d.inLinked=!1),C;case"@":return d.braceNest>0&&p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),C=D(g,d)||v(d),d.braceNest=0,C;default:{let V=!0,j=!0,L=!0;if(U(g))return d.braceNest>0&&p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),C=_(d,1,M(g)),d.braceNest=0,d.inLinked=!1,C;if(d.braceNest>0&&(d.currentType===5||d.currentType===6||d.currentType===7))return p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),d.braceNest=0,q(g,d);if(V=f(g,d))return C=_(d,5,je(g)),w(g),C;if(j=m(g,d))return C=_(d,6,Ee(g)),w(g),C;if(L=k(g,d))return C=_(d,7,Se(g)),w(g),C;if(!V&&!j&&!L)return C=_(d,13,h(g)),p(oe.INVALID_TOKEN_IN_PLACEHOLDER,s(),0,C.value),w(g),C;break}}return C}function D(g,d){const{currentType:C}=d;let R=null;const V=g.currentChar();switch((C===8||C===9||C===12||C===10)&&(V===Xe||V===jt)&&p(oe.INVALID_LINKED_FORMAT,s(),0),V){case"@":return g.next(),R=_(d,8,"@"),d.inLinked=!0,R;case".":return w(g),g.next(),_(d,9,".");case":":return w(g),g.next(),_(d,10,":");default:return U(g)?(R=_(d,1,M(g)),d.braceNest=0,d.inLinked=!1,R):E(g,d)||P(g,d)?(w(g),D(g,d)):I(g,d)?(w(g),_(d,12,A(g))):y(g,d)?(w(g),V==="{"?O(g,d)||R:_(d,11,b(g))):(C===8&&p(oe.INVALID_LINKED_FORMAT,s(),0),d.braceNest=0,d.inLinked=!1,q(g,d))}}function q(g,d){let C={type:14};if(d.braceNest>0)return O(g,d)||v(d);if(d.inLinked)return D(g,d)||v(d);switch(g.currentChar()){case"{":return O(g,d)||v(d);case"}":return p(oe.UNBALANCED_CLOSING_BRACE,s(),0),g.next(),_(d,3,"}");case"@":return D(g,d)||v(d);default:{if(U(g))return C=_(d,1,M(g)),d.braceNest=0,d.inLinked=!1,C;const{isModulo:V,hasSpace:j}=z(g);if(V)return j?_(d,0,ge(g)):_(d,4,pe(g));if(K(g))return _(d,0,ge(g));break}}return C}function G(){const{currentType:g,offset:d,startLoc:C,endLoc:R}=l;return l.lastType=g,l.lastOffset=d,l.lastStartLoc=C,l.lastEndLoc=R,l.offset=a(),l.startLoc=s(),o.currentChar()===Yt?_(l,14):q(o,l)}return{nextToken:G,currentOffset:a,currentPosition:s,context:c}}const wp="parser",Np=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Ip(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const o=parseInt(t||n,16);return o<=55295||o>=57344?String.fromCodePoint(o):"�"}}}function Pp(e={}){const t=e.location!==!1,{onError:n,onWarn:o}=e;function a(f,m,k,E,...I){const P=f.currentPosition();if(P.offset+=E,P.column+=E,n){const y=t?Jo(k,P):null,U=kn(m,y,{domain:wp,args:I});n(U)}}function s(f,m,k,E,...I){const P=f.currentPosition();if(P.offset+=E,P.column+=E,o){const y=t?Jo(k,P):null;o(yp(m,y,I))}}function i(f,m,k){const E={type:f};return t&&(E.start=m,E.end=m,E.loc={start:k,end:k}),E}function r(f,m,k,E){t&&(f.end=m,f.loc&&(f.loc.end=k))}function l(f,m){const k=f.context(),E=i(3,k.offset,k.startLoc);return E.value=m,r(E,f.currentOffset(),f.currentPosition()),E}function c(f,m){const k=f.context(),{lastOffset:E,lastStartLoc:I}=k,P=i(5,E,I);return P.index=parseInt(m,10),f.nextToken(),r(P,f.currentOffset(),f.currentPosition()),P}function u(f,m,k){const E=f.context(),{lastOffset:I,lastStartLoc:P}=E,y=i(4,I,P);return y.key=m,k===!0&&(y.modulo=!0),f.nextToken(),r(y,f.currentOffset(),f.currentPosition()),y}function p(f,m){const k=f.context(),{lastOffset:E,lastStartLoc:I}=k,P=i(9,E,I);return P.value=m.replace(Np,Ip),f.nextToken(),r(P,f.currentOffset(),f.currentPosition()),P}function _(f){const m=f.nextToken(),k=f.context(),{lastOffset:E,lastStartLoc:I}=k,P=i(8,E,I);return m.type!==12?(a(f,oe.UNEXPECTED_EMPTY_LINKED_MODIFIER,k.lastStartLoc,0),P.value="",r(P,E,I),{nextConsumeToken:m,node:P}):(m.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,mt(m)),P.value=m.value||"",r(P,f.currentOffset(),f.currentPosition()),{node:P})}function v(f,m){const k=f.context(),E=i(7,k.offset,k.startLoc);return E.value=m,r(E,f.currentOffset(),f.currentPosition()),E}function T(f){const m=f.context(),k=i(6,m.offset,m.startLoc);let E=f.nextToken();if(E.type===9){const I=_(f);k.modifier=I.node,E=I.nextConsumeToken||f.nextToken()}switch(E.type!==10&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),E=f.nextToken(),E.type===2&&(E=f.nextToken()),E.type){case 11:E.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),k.key=v(f,E.value||"");break;case 5:E.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),k.key=u(f,E.value||"");break;case 6:E.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),k.key=c(f,E.value||"");break;case 7:E.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),k.key=p(f,E.value||"");break;default:{a(f,oe.UNEXPECTED_EMPTY_LINKED_KEY,m.lastStartLoc,0);const I=f.context(),P=i(7,I.offset,I.startLoc);return P.value="",r(P,I.offset,I.startLoc),k.key=P,r(k,I.offset,I.startLoc),{nextConsumeToken:E,node:k}}}return r(k,f.currentOffset(),f.currentPosition()),{node:k}}function S(f){const m=f.context(),k=m.currentType===1?f.currentOffset():m.offset,E=m.currentType===1?m.endLoc:m.startLoc,I=i(2,k,E);I.items=[];let P=null,y=null;do{const K=P||f.nextToken();switch(P=null,K.type){case 0:K.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(K)),I.items.push(l(f,K.value||""));break;case 6:K.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(K)),I.items.push(c(f,K.value||""));break;case 4:y=!0;break;case 5:K.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(K)),I.items.push(u(f,K.value||"",!!y)),y&&(s(f,Ya.USE_MODULO_SYNTAX,m.lastStartLoc,0,mt(K)),y=null);break;case 7:K.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(K)),I.items.push(p(f,K.value||""));break;case 8:{const Q=T(f);I.items.push(Q.node),P=Q.nextConsumeToken||null;break}}}while(m.currentType!==14&&m.currentType!==1);const U=m.currentType===1?m.lastOffset:f.currentOffset(),z=m.currentType===1?m.lastEndLoc:f.currentPosition();return r(I,U,z),I}function w(f,m,k,E){const I=f.context();let P=E.items.length===0;const y=i(1,m,k);y.cases=[],y.cases.push(E);do{const U=S(f);P||(P=U.items.length===0),y.cases.push(U)}while(I.currentType!==14);return P&&a(f,oe.MUST_HAVE_MESSAGES_IN_PLURAL,k,0),r(y,f.currentOffset(),f.currentPosition()),y}function N(f){const m=f.context(),{offset:k,startLoc:E}=m,I=S(f);return m.currentType===14?I:w(f,k,E,I)}function $(f){const m=Cp(f,qr({},e)),k=m.context(),E=i(0,k.offset,k.startLoc);return t&&E.loc&&(E.loc.source=f),E.body=N(m),e.onCacheKey&&(E.cacheKey=e.onCacheKey(f)),k.currentType!==14&&a(m,oe.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,f[k.offset]||""),r(E,m.currentOffset(),m.currentPosition()),E}return{parse:$}}function mt(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 Mp(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:s=>(n.helpers.add(s),s)}}function Yr(e,t){for(let n=0;nJr(n)),e}function Jr(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 n=0;ni;function l(S,w){i.code+=S}function c(S,w=!0){const N=w?o:"";l(a?N+" ".repeat(S):N)}function u(S=!0){const w=++i.indentLevel;S&&c(w)}function p(S=!0){const w=--i.indentLevel;S&&c(w)}function _(){c(i.indentLevel)}return{context:r,push:l,indent:u,deindent:p,newline:_,helper:S=>`_${S}`,needIndent:()=>i.needIndent}}function jp(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),En(e,t.key),t.modifier?(e.push(", "),En(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Bp(e,t){const{helper:n,needIndent:o}=e;e.push(`${n("normalize")}([`),e.indent(o());const a=t.items.length;for(let s=0;s1){e.push(`${n("plural")}([`),e.indent(o());const a=t.cases.length;for(let s=0;s{const n=Hr(t.mode)?t.mode:"normal",o=Hr(t.filename)?t.filename:"message.intl";t.sourceMap;const a=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` -`,s=t.needIndent?t.needIndent:n!=="arrow",i=e.helpers||[],r=xp(e,{filename:o,breakLineCode:a,needIndent:s});r.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),r.indent(s),i.length>0&&(r.push(`const { ${Vr(i.map(u=>`${u}: _${u}`),", ")} } = ctx`),r.newline()),r.push("return "),En(r,e),r.deindent(s),r.push("}"),delete e.helpers;const{code:l,map:c}=r.context();return{ast:e,code:l,map:c?c.toJSON():void 0}};function Gp(e,t={}){const n=qr({},t),o=!!n.jit,a=!!n.minify,s=n.optimize==null?!0:n.optimize,r=Pp(n).parse(e);return o?(s&&Fp(r),a&&Tn(r),{ast:r,code:""}):(Rp(r,n),zp(r,n))}/*! + */function mp(e,t,n){return{line:e,column:t,offset:n}}function Jo(e,t,n){return{start:e,end:t}}const bp=/\{([0-9a-zA-Z]+)\}/g;function Gr(e,...t){return t.length===1&&_p(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(bp,(n,o)=>t.hasOwnProperty(o)?t[o]:"")}const qr=Object.assign,Hr=e=>typeof e=="string",_p=e=>e!==null&&typeof e=="object";function Vr(e,t=""){return e.reduce((n,o,a)=>a===0?n+o:n+t+o,"")}const Ya={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},yp={[Ya.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function Ap(e,t,...n){const o=Gr(yp[e],...n||[]),a={message:String(o),code:e};return t&&(a.location=t),a}const oe={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},Sp={[oe.EXPECTED_TOKEN]:"Expected token: '{0}'",[oe.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[oe.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[oe.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[oe.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[oe.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[oe.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[oe.EMPTY_PLACEHOLDER]:"Empty placeholder",[oe.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[oe.INVALID_LINKED_FORMAT]:"Invalid linked format",[oe.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[oe.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[oe.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[oe.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[oe.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[oe.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function kn(e,t,n={}){const{domain:o,messages:a,args:s}=n,i=Gr((a||Sp)[e]||"",...s||[]),r=new SyntaxError(String(i));return r.code=e,t&&(r.location=t),r.domain=o,r}function vp(e){throw e}const jt=" ",kp="\r",Xe=` +`,Tp="\u2028",Ep="\u2029";function $p(e){const t=e;let n=0,o=1,a=1,s=0;const i=I=>t[I]===kp&&t[I+1]===Xe,r=I=>t[I]===Xe,l=I=>t[I]===Ep,c=I=>t[I]===Tp,u=I=>i(I)||r(I)||l(I)||c(I),p=()=>n,_=()=>o,v=()=>a,T=()=>s,S=I=>i(I)||l(I)||c(I)?Xe:t[I],w=()=>S(n),N=()=>S(n+s);function $(){return s=0,u(n)&&(o++,a=0),i(n)&&n++,n++,a++,t[n]}function f(){return i(n+s)&&s++,s++,t[n+s]}function m(){n=0,o=1,a=1,s=0}function k(I=0){s=I}function E(){const I=n+s;for(;I!==n;)$();s=0}return{index:p,line:_,column:v,peekOffset:T,charAt:S,currentChar:w,currentPeek:N,next:$,peek:f,reset:m,resetPeek:k,skipToPeek:E}}const Yt=void 0,Lp=".",Wr="'",Cp="tokenizer";function wp(e,t={}){const n=t.location!==!1,o=$p(e),a=()=>o.index(),s=()=>mp(o.line(),o.column(),o.index()),i=s(),r=a(),l={currentType:14,offset:r,startLoc:i,endLoc:i,lastType:14,lastOffset:r,lastStartLoc:i,lastEndLoc:i,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function p(g,d,C,...R){const V=c();if(d.column+=C,d.offset+=C,u){const j=n?Jo(V.startLoc,d):null,L=kn(g,j,{domain:Cp,args:R});u(L)}}function _(g,d,C){g.endLoc=s(),g.currentType=d;const R={type:d};return n&&(R.loc=Jo(g.startLoc,g.endLoc)),C!=null&&(R.value=C),R}const v=g=>_(g,14);function T(g,d){return g.currentChar()===d?(g.next(),d):(p(oe.EXPECTED_TOKEN,s(),0,d),"")}function S(g){let d="";for(;g.currentPeek()===jt||g.currentPeek()===Xe;)d+=g.currentPeek(),g.peek();return d}function w(g){const d=S(g);return g.skipToPeek(),d}function N(g){if(g===Yt)return!1;const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d===95}function $(g){if(g===Yt)return!1;const d=g.charCodeAt(0);return d>=48&&d<=57}function f(g,d){const{currentType:C}=d;if(C!==2)return!1;S(g);const R=N(g.currentPeek());return g.resetPeek(),R}function m(g,d){const{currentType:C}=d;if(C!==2)return!1;S(g);const R=g.currentPeek()==="-"?g.peek():g.currentPeek(),V=$(R);return g.resetPeek(),V}function k(g,d){const{currentType:C}=d;if(C!==2)return!1;S(g);const R=g.currentPeek()===Wr;return g.resetPeek(),R}function E(g,d){const{currentType:C}=d;if(C!==8)return!1;S(g);const R=g.currentPeek()===".";return g.resetPeek(),R}function I(g,d){const{currentType:C}=d;if(C!==9)return!1;S(g);const R=N(g.currentPeek());return g.resetPeek(),R}function P(g,d){const{currentType:C}=d;if(!(C===8||C===12))return!1;S(g);const R=g.currentPeek()===":";return g.resetPeek(),R}function y(g,d){const{currentType:C}=d;if(C!==10)return!1;const R=()=>{const j=g.currentPeek();return j==="{"?N(g.peek()):j==="@"||j==="%"||j==="|"||j===":"||j==="."||j===jt||!j?!1:j===Xe?(g.peek(),R()):K(g,!1)},V=R();return g.resetPeek(),V}function U(g){S(g);const d=g.currentPeek()==="|";return g.resetPeek(),d}function z(g){const d=S(g),C=g.currentPeek()==="%"&&g.peek()==="{";return g.resetPeek(),{isModulo:C,hasSpace:d.length>0}}function K(g,d=!0){const C=(V=!1,j="",L=!1)=>{const F=g.currentPeek();return F==="{"?j==="%"?!1:V:F==="@"||!F?j==="%"?!0:V:F==="%"?(g.peek(),C(V,"%",!0)):F==="|"?j==="%"||L?!0:!(j===jt||j===Xe):F===jt?(g.peek(),C(!0,jt,L)):F===Xe?(g.peek(),C(!0,Xe,L)):!0},R=C();return d&&g.resetPeek(),R}function Q(g,d){const C=g.currentChar();return C===Yt?Yt:d(C)?(g.next(),C):null}function te(g){const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36}function B(g){return Q(g,te)}function Y(g){const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36||d===45}function X(g){return Q(g,Y)}function re(g){const d=g.charCodeAt(0);return d>=48&&d<=57}function xe(g){return Q(g,re)}function H(g){const d=g.charCodeAt(0);return d>=48&&d<=57||d>=65&&d<=70||d>=97&&d<=102}function ee(g){return Q(g,H)}function J(g){let d="",C="";for(;d=xe(g);)C+=d;return C}function pe(g){w(g);const d=g.currentChar();return d!=="%"&&p(oe.EXPECTED_TOKEN,s(),0,d),g.next(),"%"}function ge(g){let d="";for(;;){const C=g.currentChar();if(C==="{"||C==="}"||C==="@"||C==="|"||!C)break;if(C==="%")if(K(g))d+=C,g.next();else break;else if(C===jt||C===Xe)if(K(g))d+=C,g.next();else{if(U(g))break;d+=C,g.next()}else d+=C,g.next()}return d}function je(g){w(g);let d="",C="";for(;d=X(g);)C+=d;return g.currentChar()===Yt&&p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),C}function Ee(g){w(g);let d="";return g.currentChar()==="-"?(g.next(),d+=`-${J(g)}`):d+=J(g),g.currentChar()===Yt&&p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),d}function _e(g){return g!==Wr&&g!==Xe}function Se(g){w(g),T(g,"'");let d="",C="";for(;d=Q(g,_e);)d==="\\"?C+=x(g):C+=d;const R=g.currentChar();return R===Xe||R===Yt?(p(oe.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,s(),0),R===Xe&&(g.next(),T(g,"'")),C):(T(g,"'"),C)}function x(g){const d=g.currentChar();switch(d){case"\\":case"'":return g.next(),`\\${d}`;case"u":return de(g,d,4);case"U":return de(g,d,6);default:return p(oe.UNKNOWN_ESCAPE_SEQUENCE,s(),0,d),""}}function de(g,d,C){T(g,d);let R="";for(let V=0;V{const R=g.currentChar();return R==="{"||R==="%"||R==="@"||R==="|"||R==="("||R===")"||!R||R===jt?C:(C+=R,g.next(),d(C))};return d("")}function M(g){w(g);const d=T(g,"|");return w(g),d}function O(g,d){let C=null;switch(g.currentChar()){case"{":return d.braceNest>=1&&p(oe.NOT_ALLOW_NEST_PLACEHOLDER,s(),0),g.next(),C=_(d,2,"{"),w(g),d.braceNest++,C;case"}":return d.braceNest>0&&d.currentType===2&&p(oe.EMPTY_PLACEHOLDER,s(),0),g.next(),C=_(d,3,"}"),d.braceNest--,d.braceNest>0&&w(g),d.inLinked&&d.braceNest===0&&(d.inLinked=!1),C;case"@":return d.braceNest>0&&p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),C=D(g,d)||v(d),d.braceNest=0,C;default:{let V=!0,j=!0,L=!0;if(U(g))return d.braceNest>0&&p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),C=_(d,1,M(g)),d.braceNest=0,d.inLinked=!1,C;if(d.braceNest>0&&(d.currentType===5||d.currentType===6||d.currentType===7))return p(oe.UNTERMINATED_CLOSING_BRACE,s(),0),d.braceNest=0,q(g,d);if(V=f(g,d))return C=_(d,5,je(g)),w(g),C;if(j=m(g,d))return C=_(d,6,Ee(g)),w(g),C;if(L=k(g,d))return C=_(d,7,Se(g)),w(g),C;if(!V&&!j&&!L)return C=_(d,13,h(g)),p(oe.INVALID_TOKEN_IN_PLACEHOLDER,s(),0,C.value),w(g),C;break}}return C}function D(g,d){const{currentType:C}=d;let R=null;const V=g.currentChar();switch((C===8||C===9||C===12||C===10)&&(V===Xe||V===jt)&&p(oe.INVALID_LINKED_FORMAT,s(),0),V){case"@":return g.next(),R=_(d,8,"@"),d.inLinked=!0,R;case".":return w(g),g.next(),_(d,9,".");case":":return w(g),g.next(),_(d,10,":");default:return U(g)?(R=_(d,1,M(g)),d.braceNest=0,d.inLinked=!1,R):E(g,d)||P(g,d)?(w(g),D(g,d)):I(g,d)?(w(g),_(d,12,A(g))):y(g,d)?(w(g),V==="{"?O(g,d)||R:_(d,11,b(g))):(C===8&&p(oe.INVALID_LINKED_FORMAT,s(),0),d.braceNest=0,d.inLinked=!1,q(g,d))}}function q(g,d){let C={type:14};if(d.braceNest>0)return O(g,d)||v(d);if(d.inLinked)return D(g,d)||v(d);switch(g.currentChar()){case"{":return O(g,d)||v(d);case"}":return p(oe.UNBALANCED_CLOSING_BRACE,s(),0),g.next(),_(d,3,"}");case"@":return D(g,d)||v(d);default:{if(U(g))return C=_(d,1,M(g)),d.braceNest=0,d.inLinked=!1,C;const{isModulo:V,hasSpace:j}=z(g);if(V)return j?_(d,0,ge(g)):_(d,4,pe(g));if(K(g))return _(d,0,ge(g));break}}return C}function G(){const{currentType:g,offset:d,startLoc:C,endLoc:R}=l;return l.lastType=g,l.lastOffset=d,l.lastStartLoc=C,l.lastEndLoc=R,l.offset=a(),l.startLoc=s(),o.currentChar()===Yt?_(l,14):q(o,l)}return{nextToken:G,currentOffset:a,currentPosition:s,context:c}}const Np="parser",Ip=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Pp(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const o=parseInt(t||n,16);return o<=55295||o>=57344?String.fromCodePoint(o):"�"}}}function Mp(e={}){const t=e.location!==!1,{onError:n,onWarn:o}=e;function a(f,m,k,E,...I){const P=f.currentPosition();if(P.offset+=E,P.column+=E,n){const y=t?Jo(k,P):null,U=kn(m,y,{domain:Np,args:I});n(U)}}function s(f,m,k,E,...I){const P=f.currentPosition();if(P.offset+=E,P.column+=E,o){const y=t?Jo(k,P):null;o(Ap(m,y,I))}}function i(f,m,k){const E={type:f};return t&&(E.start=m,E.end=m,E.loc={start:k,end:k}),E}function r(f,m,k,E){t&&(f.end=m,f.loc&&(f.loc.end=k))}function l(f,m){const k=f.context(),E=i(3,k.offset,k.startLoc);return E.value=m,r(E,f.currentOffset(),f.currentPosition()),E}function c(f,m){const k=f.context(),{lastOffset:E,lastStartLoc:I}=k,P=i(5,E,I);return P.index=parseInt(m,10),f.nextToken(),r(P,f.currentOffset(),f.currentPosition()),P}function u(f,m,k){const E=f.context(),{lastOffset:I,lastStartLoc:P}=E,y=i(4,I,P);return y.key=m,k===!0&&(y.modulo=!0),f.nextToken(),r(y,f.currentOffset(),f.currentPosition()),y}function p(f,m){const k=f.context(),{lastOffset:E,lastStartLoc:I}=k,P=i(9,E,I);return P.value=m.replace(Ip,Pp),f.nextToken(),r(P,f.currentOffset(),f.currentPosition()),P}function _(f){const m=f.nextToken(),k=f.context(),{lastOffset:E,lastStartLoc:I}=k,P=i(8,E,I);return m.type!==12?(a(f,oe.UNEXPECTED_EMPTY_LINKED_MODIFIER,k.lastStartLoc,0),P.value="",r(P,E,I),{nextConsumeToken:m,node:P}):(m.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,mt(m)),P.value=m.value||"",r(P,f.currentOffset(),f.currentPosition()),{node:P})}function v(f,m){const k=f.context(),E=i(7,k.offset,k.startLoc);return E.value=m,r(E,f.currentOffset(),f.currentPosition()),E}function T(f){const m=f.context(),k=i(6,m.offset,m.startLoc);let E=f.nextToken();if(E.type===9){const I=_(f);k.modifier=I.node,E=I.nextConsumeToken||f.nextToken()}switch(E.type!==10&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),E=f.nextToken(),E.type===2&&(E=f.nextToken()),E.type){case 11:E.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),k.key=v(f,E.value||"");break;case 5:E.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),k.key=u(f,E.value||"");break;case 6:E.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),k.key=c(f,E.value||"");break;case 7:E.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(E)),k.key=p(f,E.value||"");break;default:{a(f,oe.UNEXPECTED_EMPTY_LINKED_KEY,m.lastStartLoc,0);const I=f.context(),P=i(7,I.offset,I.startLoc);return P.value="",r(P,I.offset,I.startLoc),k.key=P,r(k,I.offset,I.startLoc),{nextConsumeToken:E,node:k}}}return r(k,f.currentOffset(),f.currentPosition()),{node:k}}function S(f){const m=f.context(),k=m.currentType===1?f.currentOffset():m.offset,E=m.currentType===1?m.endLoc:m.startLoc,I=i(2,k,E);I.items=[];let P=null,y=null;do{const K=P||f.nextToken();switch(P=null,K.type){case 0:K.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(K)),I.items.push(l(f,K.value||""));break;case 6:K.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(K)),I.items.push(c(f,K.value||""));break;case 4:y=!0;break;case 5:K.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(K)),I.items.push(u(f,K.value||"",!!y)),y&&(s(f,Ya.USE_MODULO_SYNTAX,m.lastStartLoc,0,mt(K)),y=null);break;case 7:K.value==null&&a(f,oe.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,mt(K)),I.items.push(p(f,K.value||""));break;case 8:{const Q=T(f);I.items.push(Q.node),P=Q.nextConsumeToken||null;break}}}while(m.currentType!==14&&m.currentType!==1);const U=m.currentType===1?m.lastOffset:f.currentOffset(),z=m.currentType===1?m.lastEndLoc:f.currentPosition();return r(I,U,z),I}function w(f,m,k,E){const I=f.context();let P=E.items.length===0;const y=i(1,m,k);y.cases=[],y.cases.push(E);do{const U=S(f);P||(P=U.items.length===0),y.cases.push(U)}while(I.currentType!==14);return P&&a(f,oe.MUST_HAVE_MESSAGES_IN_PLURAL,k,0),r(y,f.currentOffset(),f.currentPosition()),y}function N(f){const m=f.context(),{offset:k,startLoc:E}=m,I=S(f);return m.currentType===14?I:w(f,k,E,I)}function $(f){const m=wp(f,qr({},e)),k=m.context(),E=i(0,k.offset,k.startLoc);return t&&E.loc&&(E.loc.source=f),E.body=N(m),e.onCacheKey&&(E.cacheKey=e.onCacheKey(f)),k.currentType!==14&&a(m,oe.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,f[k.offset]||""),r(E,m.currentOffset(),m.currentPosition()),E}return{parse:$}}function mt(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 Rp(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:s=>(n.helpers.add(s),s)}}function Yr(e,t){for(let n=0;nJr(n)),e}function Jr(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 n=0;ni;function l(S,w){i.code+=S}function c(S,w=!0){const N=w?o:"";l(a?N+" ".repeat(S):N)}function u(S=!0){const w=++i.indentLevel;S&&c(w)}function p(S=!0){const w=--i.indentLevel;S&&c(w)}function _(){c(i.indentLevel)}return{context:r,push:l,indent:u,deindent:p,newline:_,helper:S=>`_${S}`,needIndent:()=>i.needIndent}}function Bp(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),En(e,t.key),t.modifier?(e.push(", "),En(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Kp(e,t){const{helper:n,needIndent:o}=e;e.push(`${n("normalize")}([`),e.indent(o());const a=t.items.length;for(let s=0;s1){e.push(`${n("plural")}([`),e.indent(o());const a=t.cases.length;for(let s=0;s{const n=Hr(t.mode)?t.mode:"normal",o=Hr(t.filename)?t.filename:"message.intl";t.sourceMap;const a=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` +`,s=t.needIndent?t.needIndent:n!=="arrow",i=e.helpers||[],r=jp(e,{filename:o,breakLineCode:a,needIndent:s});r.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),r.indent(s),i.length>0&&(r.push(`const { ${Vr(i.map(u=>`${u}: _${u}`),", ")} } = ctx`),r.newline()),r.push("return "),En(r,e),r.deindent(s),r.push("}"),delete e.helpers;const{code:l,map:c}=r.context();return{ast:e,code:l,map:c?c.toJSON():void 0}};function qp(e,t={}){const n=qr({},t),o=!!n.jit,a=!!n.minify,s=n.optimize==null?!0:n.optimize,r=Mp(n).parse(e);return o?(s&&Dp(r),a&&Tn(r),{ast:r,code:""}):(Fp(r,n),Gp(r,n))}/*! * core-base v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function qp(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(xt().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(xt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(xt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function $t(e){return fe(e)&&Xa(e)===0&&(ht(e,"b")||ht(e,"body"))}const Xr=["b","body"];function Hp(e){return Jt(e,Xr)}const Zr=["c","cases"];function Vp(e){return Jt(e,Zr,[])}const Qr=["s","static"];function Wp(e){return Jt(e,Qr)}const el=["i","items"];function Yp(e){return Jt(e,el,[])}const tl=["t","type"];function Xa(e){return Jt(e,tl)}const nl=["v","value"];function Xo(e,t){const n=Jt(e,nl);if(n!=null)return n;throw eo(t)}const ol=["m","modifier"];function Jp(e){return Jt(e,ol)}const al=["k","key"];function Xp(e){const t=Jt(e,al);if(t)return t;throw eo(6)}function Jt(e,t,n){for(let o=0;o{i===void 0?i=r:i+=r},_[1]=()=>{i!==void 0&&(t.push(i),i=void 0)},_[2]=()=>{_[0](),a++},_[3]=()=>{if(a>0)a--,o=4,_[0]();else{if(a=0,i===void 0||(i=nh(i),i===!1))return!1;_[1]()}};function v(){const T=e[n+1];if(o===5&&T==="'"||o===6&&T==='"')return n++,r="\\"+T,_[0](),!0}for(;o!==null;)if(n++,s=e[n],!(s==="\\"&&v())){if(l=th(s),p=Xt[o],c=p[l]||p.l||8,c===8||(o=c[0],c[1]!==void 0&&(u=_[c[1]],u&&(r=s,u()===!1))))return;if(o===7)return t}}const il=new Map;function ah(e,t){return fe(e)?e[t]:null}function sh(e,t){if(!fe(e))return null;let n=il.get(t);if(n||(n=oh(t),n&&il.set(t,n)),!n)return null;const o=n.length;let a=e,s=0;for(;se,rh=e=>"",lh="text",ch=e=>e.length===0?"":pp(e),uh=fp;function rl(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function gh(e){const t=Pe(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Pe(e.named.count)||Pe(e.named.n))?Pe(e.named.count)?e.named.count:Pe(e.named.n)?e.named.n:t:t}function dh(e,t){t.count||(t.count=e),t.n||(t.n=e)}function fh(e={}){const t=e.locale,n=gh(e),o=fe(e.pluralRules)&&W(t)&&Te(e.pluralRules[t])?e.pluralRules[t]:rl,a=fe(e.pluralRules)&&W(t)&&Te(e.pluralRules[t])?rl:void 0,s=N=>N[o(n,N.length,a)],i=e.list||[],r=N=>i[N],l=e.named||Ae();Pe(e.pluralIndex)&&dh(n,l);const c=N=>l[N];function u(N){const $=Te(e.messages)?e.messages(N):fe(e.messages)?e.messages[N]:!1;return $||(e.parent?e.parent.message(N):rh)}const p=N=>e.modifiers?e.modifiers[N]:ih,_=se(e.processor)&&Te(e.processor.normalize)?e.processor.normalize:ch,v=se(e.processor)&&Te(e.processor.interpolate)?e.processor.interpolate:uh,T=se(e.processor)&&W(e.processor.type)?e.processor.type:lh,w={list:r,named:c,plural:s,linked:(N,...$)=>{const[f,m]=$;let k="text",E="";$.length===1?fe(f)?(E=f.modifier||E,k=f.type||k):W(f)&&(E=f||E):$.length===2&&(W(f)&&(E=f||E),W(m)&&(k=m||k));const I=u(N)(w),P=k==="vnode"&&Ce(I)&&E?I[0]:I;return E?p(E)(P,k):P},message:u,type:T,interpolate:v,normalize:_,values:Ge(Ae(),i,l)};return w}let to=null;function ph(e){to=e}function hh(e,t,n){to&&to.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const mh=bh("function:translate");function bh(e){return t=>to&&to.emit(e,t)}const _h=Ya.__EXTEND_POINT__,cn=Vo(_h),yh={FALLBACK_TO_TRANSLATE:cn(),CANNOT_FORMAT_NUMBER:cn(),FALLBACK_TO_NUMBER_FORMAT:cn(),CANNOT_FORMAT_DATE:cn(),FALLBACK_TO_DATE_FORMAT:cn(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:cn(),__EXTEND_POINT__:cn()},ll=oe.__EXTEND_POINT__,un=Vo(ll),bt={INVALID_ARGUMENT:ll,INVALID_DATE_ARGUMENT:un(),INVALID_ISO_DATE_ARGUMENT:un(),NOT_SUPPORT_NON_STRING_MESSAGE:un(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:un(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:un(),NOT_SUPPORT_LOCALE_TYPE:un(),__EXTEND_POINT__:un()};function Lt(e){return kn(e,null,void 0)}function Za(e,t){return t.locale!=null?cl(t.locale):cl(e.locale)}let Qa;function cl(e){if(W(e))return e;if(Te(e)){if(e.resolvedOnce&&Qa!=null)return Qa;if(e.constructor.name==="Function"){const t=e();if(dp(t))throw Lt(bt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Qa=t}else throw Lt(bt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw Lt(bt.NOT_SUPPORT_LOCALE_TYPE)}function Ah(e,t,n){return[...new Set([n,...Ce(t)?t:fe(t)?Object.keys(t):W(t)?[t]:[n]])]}function ul(e,t,n){const o=W(n)?n:$n,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let s=a.__localeChainCache.get(o);if(!s){s=[];let i=[n];for(;Ce(i);)i=gl(s,i,t);const r=Ce(t)||!se(t)?t:t.default?t.default:null;i=W(r)?[r]:r,Ce(i)&&gl(s,i,!1),a.__localeChainCache.set(o,s)}return s}function gl(e,t,n){let o=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Th(){return{upper:(e,t)=>t==="text"&&W(e)?e.toUpperCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&W(e)?e.toLowerCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&W(e)?fl(e):t==="vnode"&&fe(e)&&"__v_isVNode"in e?fl(e.children):e}}let pl;function hl(e){pl=e}let ml;function Eh(e){ml=e}let bl;function $h(e){bl=e}let _l=null;const Lh=e=>{_l=e},Ch=()=>_l;let yl=null;const Al=e=>{yl=e},wh=()=>yl;let Sl=0;function Nh(e={}){const t=Te(e.onWarn)?e.onWarn:sp,n=W(e.version)?e.version:kh,o=W(e.locale)||Te(e.locale)?e.locale:$n,a=Te(o)?$n:o,s=Ce(e.fallbackLocale)||se(e.fallbackLocale)||W(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a,i=se(e.messages)?e.messages:es(a),r=se(e.datetimeFormats)?e.datetimeFormats:es(a),l=se(e.numberFormats)?e.numberFormats:es(a),c=Ge(Ae(),e.modifiers,Th()),u=e.pluralRules||Ae(),p=Te(e.missing)?e.missing:null,_=le(e.missingWarn)||Wt(e.missingWarn)?e.missingWarn:!0,v=le(e.fallbackWarn)||Wt(e.fallbackWarn)?e.fallbackWarn:!0,T=!!e.fallbackFormat,S=!!e.unresolving,w=Te(e.postTranslation)?e.postTranslation:null,N=se(e.processor)?e.processor:null,$=le(e.warnHtmlMessage)?e.warnHtmlMessage:!0,f=!!e.escapeParameter,m=Te(e.messageCompiler)?e.messageCompiler:pl,k=Te(e.messageResolver)?e.messageResolver:ml||ah,E=Te(e.localeFallbacker)?e.localeFallbacker:bl||Ah,I=fe(e.fallbackContext)?e.fallbackContext:void 0,P=e,y=fe(P.__datetimeFormatters)?P.__datetimeFormatters:new Map,U=fe(P.__numberFormatters)?P.__numberFormatters:new Map,z=fe(P.__meta)?P.__meta:{};Sl++;const K={version:n,cid:Sl,locale:o,fallbackLocale:s,messages:i,modifiers:c,pluralRules:u,missing:p,missingWarn:_,fallbackWarn:v,fallbackFormat:T,unresolving:S,postTranslation:w,processor:N,warnHtmlMessage:$,escapeParameter:f,messageCompiler:m,messageResolver:k,localeFallbacker:E,fallbackContext:I,onWarn:t,__meta:z};return K.datetimeFormats=r,K.numberFormats=l,K.__datetimeFormatters=y,K.__numberFormatters=U,__INTLIFY_PROD_DEVTOOLS__&&hh(K,n,z),K}const es=e=>({[e]:Ae()});function ts(e,t,n,o,a){const{missing:s,onWarn:i}=e;if(s!==null){const r=s(e,n,t,a);return W(r)?r:t}else return t}function no(e,t,n){const o=e;o.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function Ih(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Ph(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let o=n+1;oMh(n,e)}function Mh(e,t){const n=Hp(t);if(n==null)throw eo(0);if(Xa(n)===1){const s=Vp(n);return e.plural(s.reduce((i,r)=>[...i,vl(e,r)],[]))}else return vl(e,n)}function vl(e,t){const n=Wp(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const o=Yp(t).reduce((a,s)=>[...a,os(e,s)],[]);return e.normalize(o)}}function os(e,t){const n=Xa(t);switch(n){case 3:return Xo(t,n);case 9:return Xo(t,n);case 4:{const o=t;if(ht(o,"k")&&o.k)return e.interpolate(e.named(o.k));if(ht(o,"key")&&o.key)return e.interpolate(e.named(o.key));throw eo(n)}case 5:{const o=t;if(ht(o,"i")&&Pe(o.i))return e.interpolate(e.list(o.i));if(ht(o,"index")&&Pe(o.index))return e.interpolate(e.list(o.index));throw eo(n)}case 6:{const o=t,a=Jp(o),s=Xp(o);return e.linked(os(e,s),a?os(e,a):void 0,e.type)}case 7:return Xo(t,n);case 8:return Xo(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const kl=e=>e;let Ln=Ae();function Tl(e,t={}){let n=!1;const o=t.onError||Sp;return t.onError=a=>{n=!0,o(a)},{...Gp(e,t),detectError:n}}const Rh=(e,t)=>{if(!W(e))throw Lt(bt.NOT_SUPPORT_NON_STRING_MESSAGE);{le(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||kl)(e),a=Ln[o];if(a)return a;const{code:s,detectError:i}=Tl(e,t),r=new Function(`return ${s}`)();return i?r:Ln[o]=r}};function Fh(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&W(e)){le(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||kl)(e),a=Ln[o];if(a)return a;const{ast:s,detectError:i}=Tl(e,{...t,location:!1,jit:!0}),r=ns(s);return i?r:Ln[o]=r}else{const n=e.cacheKey;if(n){const o=Ln[n];return o||(Ln[n]=ns(e))}else return ns(e)}}const El=()=>"",rt=e=>Te(e);function $l(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:a,messageCompiler:s,fallbackLocale:i,messages:r}=e,[l,c]=as(...t),u=le(c.missingWarn)?c.missingWarn:e.missingWarn,p=le(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,_=le(c.escapeParameter)?c.escapeParameter:e.escapeParameter,v=!!c.resolvedMessage,T=W(c.default)||le(c.default)?le(c.default)?s?l:()=>l:c.default:n?s?l:()=>l:"",S=n||T!=="",w=Za(e,c);_&&Dh(c);let[N,$,f]=v?[l,w,r[w]||Ae()]:Ll(e,l,w,i,p,u),m=N,k=l;if(!v&&!(W(m)||$t(m)||rt(m))&&S&&(m=T,k=m),!v&&(!(W(m)||$t(m)||rt(m))||!W($)))return a?Zo:l;let E=!1;const I=()=>{E=!0},P=rt(m)?m:Cl(e,l,$,m,k,I);if(E)return m;const y=jh(e,$,f,c),U=fh(y),z=Oh(e,P,U);let K=o?o(z,l):z;if(_&&W(K)&&(K=up(K)),__INTLIFY_PROD_DEVTOOLS__){const Q={timestamp:Date.now(),key:W(l)?l:rt(m)?m.key:"",locale:$||(rt(m)?m.locale:""),format:W(m)?m:rt(m)?m.source:"",message:K};Q.meta=Ge({},e.__meta,Ch()||{}),mh(Q)}return K}function Dh(e){Ce(e.list)?e.list=e.list.map(t=>W(t)?Br(t):t):fe(e.named)&&Object.keys(e.named).forEach(t=>{W(e.named[t])&&(e.named[t]=Br(e.named[t]))})}function Ll(e,t,n,o,a,s){const{messages:i,onWarn:r,messageResolver:l,localeFallbacker:c}=e,u=c(e,o,n);let p=Ae(),_,v=null;const T="translate";for(let S=0;So;return c.locale=n,c.key=t,c}const l=i(o,xh(e,n,a,o,r,s));return l.locale=n,l.key=t,l.source=o,l}function Oh(e,t,n){return t(n)}function as(...e){const[t,n,o]=e,a=Ae();if(!W(t)&&!Pe(t)&&!rt(t)&&!$t(t))throw Lt(bt.INVALID_ARGUMENT);const s=Pe(t)?String(t):(rt(t),t);return Pe(n)?a.plural=n:W(n)?a.default=n:se(n)&&!Ho(n)?a.named=n:Ce(n)&&(a.list=n),Pe(o)?a.plural=o:W(o)?a.default=o:se(o)&&Ge(a,o),[s,a]}function xh(e,t,n,o,a,s){return{locale:t,key:n,warnHtmlMessage:a,onError:i=>{throw s&&s(i),i},onCacheKey:i=>ip(t,n,i)}}function jh(e,t,n,o){const{modifiers:a,pluralRules:s,messageResolver:i,fallbackLocale:r,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,_={locale:t,modifiers:a,pluralRules:s,messages:v=>{let T=i(n,v);if(T==null&&u){const[,,S]=Ll(u,v,t,r,l,c);T=i(S,v)}if(W(T)||$t(T)){let S=!1;const N=Cl(e,v,t,T,v,()=>{S=!0});return S?El:N}else return rt(T)?T:El}};return e.processor&&(_.processor=e.processor),o.list&&(_.list=o.list),o.named&&(_.named=o.named),Pe(o.plural)&&(_.pluralIndex=o.plural),_}function wl(e,...t){const{datetimeFormats:n,unresolving:o,fallbackLocale:a,onWarn:s,localeFallbacker:i}=e,{__datetimeFormatters:r}=e,[l,c,u,p]=ss(...t),_=le(u.missingWarn)?u.missingWarn:e.missingWarn;le(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const v=!!u.part,T=Za(e,u),S=i(e,a,T);if(!W(l)||l==="")return new Intl.DateTimeFormat(T,p).format(c);let w={},N,$=null;const f="datetime format";for(let E=0;E{Nl.includes(l)?i[l]=n[l]:s[l]=n[l]}),W(o)?s.locale=o:se(o)&&(i=o),se(a)&&(i=a),[s.key||"",r,s,i]}function Il(e,t,n){const o=e;for(const a in n){const s=`${t}__${a}`;o.__datetimeFormatters.has(s)&&o.__datetimeFormatters.delete(s)}}function Pl(e,...t){const{numberFormats:n,unresolving:o,fallbackLocale:a,onWarn:s,localeFallbacker:i}=e,{__numberFormatters:r}=e,[l,c,u,p]=is(...t),_=le(u.missingWarn)?u.missingWarn:e.missingWarn;le(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const v=!!u.part,T=Za(e,u),S=i(e,a,T);if(!W(l)||l==="")return new Intl.NumberFormat(T,p).format(c);let w={},N,$=null;const f="number format";for(let E=0;E{Ml.includes(l)?i[l]=n[l]:s[l]=n[l]}),W(o)?s.locale=o:se(o)&&(i=o),se(a)&&(i=a),[s.key||"",r,s,i]}function Rl(e,t,n){const o=e;for(const a in n){const s=`${t}__${a}`;o.__numberFormatters.has(s)&&o.__numberFormatters.delete(s)}}qp();/*! + */function Hp(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(xt().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(xt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(xt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function $t(e){return fe(e)&&Xa(e)===0&&(ht(e,"b")||ht(e,"body"))}const Xr=["b","body"];function Vp(e){return Jt(e,Xr)}const Zr=["c","cases"];function Wp(e){return Jt(e,Zr,[])}const Qr=["s","static"];function Yp(e){return Jt(e,Qr)}const el=["i","items"];function Jp(e){return Jt(e,el,[])}const tl=["t","type"];function Xa(e){return Jt(e,tl)}const nl=["v","value"];function Xo(e,t){const n=Jt(e,nl);if(n!=null)return n;throw eo(t)}const ol=["m","modifier"];function Xp(e){return Jt(e,ol)}const al=["k","key"];function Zp(e){const t=Jt(e,al);if(t)return t;throw eo(6)}function Jt(e,t,n){for(let o=0;o{i===void 0?i=r:i+=r},_[1]=()=>{i!==void 0&&(t.push(i),i=void 0)},_[2]=()=>{_[0](),a++},_[3]=()=>{if(a>0)a--,o=4,_[0]();else{if(a=0,i===void 0||(i=oh(i),i===!1))return!1;_[1]()}};function v(){const T=e[n+1];if(o===5&&T==="'"||o===6&&T==='"')return n++,r="\\"+T,_[0](),!0}for(;o!==null;)if(n++,s=e[n],!(s==="\\"&&v())){if(l=nh(s),p=Xt[o],c=p[l]||p.l||8,c===8||(o=c[0],c[1]!==void 0&&(u=_[c[1]],u&&(r=s,u()===!1))))return;if(o===7)return t}}const il=new Map;function sh(e,t){return fe(e)?e[t]:null}function ih(e,t){if(!fe(e))return null;let n=il.get(t);if(n||(n=ah(t),n&&il.set(t,n)),!n)return null;const o=n.length;let a=e,s=0;for(;se,lh=e=>"",ch="text",uh=e=>e.length===0?"":hp(e),gh=pp;function rl(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function dh(e){const t=Pe(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Pe(e.named.count)||Pe(e.named.n))?Pe(e.named.count)?e.named.count:Pe(e.named.n)?e.named.n:t:t}function fh(e,t){t.count||(t.count=e),t.n||(t.n=e)}function ph(e={}){const t=e.locale,n=dh(e),o=fe(e.pluralRules)&&W(t)&&Te(e.pluralRules[t])?e.pluralRules[t]:rl,a=fe(e.pluralRules)&&W(t)&&Te(e.pluralRules[t])?rl:void 0,s=N=>N[o(n,N.length,a)],i=e.list||[],r=N=>i[N],l=e.named||Ae();Pe(e.pluralIndex)&&fh(n,l);const c=N=>l[N];function u(N){const $=Te(e.messages)?e.messages(N):fe(e.messages)?e.messages[N]:!1;return $||(e.parent?e.parent.message(N):lh)}const p=N=>e.modifiers?e.modifiers[N]:rh,_=se(e.processor)&&Te(e.processor.normalize)?e.processor.normalize:uh,v=se(e.processor)&&Te(e.processor.interpolate)?e.processor.interpolate:gh,T=se(e.processor)&&W(e.processor.type)?e.processor.type:ch,w={list:r,named:c,plural:s,linked:(N,...$)=>{const[f,m]=$;let k="text",E="";$.length===1?fe(f)?(E=f.modifier||E,k=f.type||k):W(f)&&(E=f||E):$.length===2&&(W(f)&&(E=f||E),W(m)&&(k=m||k));const I=u(N)(w),P=k==="vnode"&&Ce(I)&&E?I[0]:I;return E?p(E)(P,k):P},message:u,type:T,interpolate:v,normalize:_,values:Ge(Ae(),i,l)};return w}let to=null;function hh(e){to=e}function mh(e,t,n){to&&to.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const bh=_h("function:translate");function _h(e){return t=>to&&to.emit(e,t)}const yh=Ya.__EXTEND_POINT__,cn=Vo(yh),Ah={FALLBACK_TO_TRANSLATE:cn(),CANNOT_FORMAT_NUMBER:cn(),FALLBACK_TO_NUMBER_FORMAT:cn(),CANNOT_FORMAT_DATE:cn(),FALLBACK_TO_DATE_FORMAT:cn(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:cn(),__EXTEND_POINT__:cn()},ll=oe.__EXTEND_POINT__,un=Vo(ll),bt={INVALID_ARGUMENT:ll,INVALID_DATE_ARGUMENT:un(),INVALID_ISO_DATE_ARGUMENT:un(),NOT_SUPPORT_NON_STRING_MESSAGE:un(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:un(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:un(),NOT_SUPPORT_LOCALE_TYPE:un(),__EXTEND_POINT__:un()};function Lt(e){return kn(e,null,void 0)}function Za(e,t){return t.locale!=null?cl(t.locale):cl(e.locale)}let Qa;function cl(e){if(W(e))return e;if(Te(e)){if(e.resolvedOnce&&Qa!=null)return Qa;if(e.constructor.name==="Function"){const t=e();if(fp(t))throw Lt(bt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Qa=t}else throw Lt(bt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw Lt(bt.NOT_SUPPORT_LOCALE_TYPE)}function Sh(e,t,n){return[...new Set([n,...Ce(t)?t:fe(t)?Object.keys(t):W(t)?[t]:[n]])]}function ul(e,t,n){const o=W(n)?n:$n,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let s=a.__localeChainCache.get(o);if(!s){s=[];let i=[n];for(;Ce(i);)i=gl(s,i,t);const r=Ce(t)||!se(t)?t:t.default?t.default:null;i=W(r)?[r]:r,Ce(i)&&gl(s,i,!1),a.__localeChainCache.set(o,s)}return s}function gl(e,t,n){let o=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Eh(){return{upper:(e,t)=>t==="text"&&W(e)?e.toUpperCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&W(e)?e.toLowerCase():t==="vnode"&&fe(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&W(e)?fl(e):t==="vnode"&&fe(e)&&"__v_isVNode"in e?fl(e.children):e}}let pl;function hl(e){pl=e}let ml;function $h(e){ml=e}let bl;function Lh(e){bl=e}let _l=null;const Ch=e=>{_l=e},wh=()=>_l;let yl=null;const Al=e=>{yl=e},Nh=()=>yl;let Sl=0;function Ih(e={}){const t=Te(e.onWarn)?e.onWarn:ip,n=W(e.version)?e.version:Th,o=W(e.locale)||Te(e.locale)?e.locale:$n,a=Te(o)?$n:o,s=Ce(e.fallbackLocale)||se(e.fallbackLocale)||W(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a,i=se(e.messages)?e.messages:es(a),r=se(e.datetimeFormats)?e.datetimeFormats:es(a),l=se(e.numberFormats)?e.numberFormats:es(a),c=Ge(Ae(),e.modifiers,Eh()),u=e.pluralRules||Ae(),p=Te(e.missing)?e.missing:null,_=le(e.missingWarn)||Wt(e.missingWarn)?e.missingWarn:!0,v=le(e.fallbackWarn)||Wt(e.fallbackWarn)?e.fallbackWarn:!0,T=!!e.fallbackFormat,S=!!e.unresolving,w=Te(e.postTranslation)?e.postTranslation:null,N=se(e.processor)?e.processor:null,$=le(e.warnHtmlMessage)?e.warnHtmlMessage:!0,f=!!e.escapeParameter,m=Te(e.messageCompiler)?e.messageCompiler:pl,k=Te(e.messageResolver)?e.messageResolver:ml||sh,E=Te(e.localeFallbacker)?e.localeFallbacker:bl||Sh,I=fe(e.fallbackContext)?e.fallbackContext:void 0,P=e,y=fe(P.__datetimeFormatters)?P.__datetimeFormatters:new Map,U=fe(P.__numberFormatters)?P.__numberFormatters:new Map,z=fe(P.__meta)?P.__meta:{};Sl++;const K={version:n,cid:Sl,locale:o,fallbackLocale:s,messages:i,modifiers:c,pluralRules:u,missing:p,missingWarn:_,fallbackWarn:v,fallbackFormat:T,unresolving:S,postTranslation:w,processor:N,warnHtmlMessage:$,escapeParameter:f,messageCompiler:m,messageResolver:k,localeFallbacker:E,fallbackContext:I,onWarn:t,__meta:z};return K.datetimeFormats=r,K.numberFormats=l,K.__datetimeFormatters=y,K.__numberFormatters=U,__INTLIFY_PROD_DEVTOOLS__&&mh(K,n,z),K}const es=e=>({[e]:Ae()});function ts(e,t,n,o,a){const{missing:s,onWarn:i}=e;if(s!==null){const r=s(e,n,t,a);return W(r)?r:t}else return t}function no(e,t,n){const o=e;o.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function Ph(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Mh(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let o=n+1;oRh(n,e)}function Rh(e,t){const n=Vp(t);if(n==null)throw eo(0);if(Xa(n)===1){const s=Wp(n);return e.plural(s.reduce((i,r)=>[...i,vl(e,r)],[]))}else return vl(e,n)}function vl(e,t){const n=Yp(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const o=Jp(t).reduce((a,s)=>[...a,os(e,s)],[]);return e.normalize(o)}}function os(e,t){const n=Xa(t);switch(n){case 3:return Xo(t,n);case 9:return Xo(t,n);case 4:{const o=t;if(ht(o,"k")&&o.k)return e.interpolate(e.named(o.k));if(ht(o,"key")&&o.key)return e.interpolate(e.named(o.key));throw eo(n)}case 5:{const o=t;if(ht(o,"i")&&Pe(o.i))return e.interpolate(e.list(o.i));if(ht(o,"index")&&Pe(o.index))return e.interpolate(e.list(o.index));throw eo(n)}case 6:{const o=t,a=Xp(o),s=Zp(o);return e.linked(os(e,s),a?os(e,a):void 0,e.type)}case 7:return Xo(t,n);case 8:return Xo(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const kl=e=>e;let Ln=Ae();function Tl(e,t={}){let n=!1;const o=t.onError||vp;return t.onError=a=>{n=!0,o(a)},{...qp(e,t),detectError:n}}const Fh=(e,t)=>{if(!W(e))throw Lt(bt.NOT_SUPPORT_NON_STRING_MESSAGE);{le(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||kl)(e),a=Ln[o];if(a)return a;const{code:s,detectError:i}=Tl(e,t),r=new Function(`return ${s}`)();return i?r:Ln[o]=r}};function Dh(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&W(e)){le(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||kl)(e),a=Ln[o];if(a)return a;const{ast:s,detectError:i}=Tl(e,{...t,location:!1,jit:!0}),r=ns(s);return i?r:Ln[o]=r}else{const n=e.cacheKey;if(n){const o=Ln[n];return o||(Ln[n]=ns(e))}else return ns(e)}}const El=()=>"",rt=e=>Te(e);function $l(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:a,messageCompiler:s,fallbackLocale:i,messages:r}=e,[l,c]=as(...t),u=le(c.missingWarn)?c.missingWarn:e.missingWarn,p=le(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,_=le(c.escapeParameter)?c.escapeParameter:e.escapeParameter,v=!!c.resolvedMessage,T=W(c.default)||le(c.default)?le(c.default)?s?l:()=>l:c.default:n?s?l:()=>l:"",S=n||T!=="",w=Za(e,c);_&&Oh(c);let[N,$,f]=v?[l,w,r[w]||Ae()]:Ll(e,l,w,i,p,u),m=N,k=l;if(!v&&!(W(m)||$t(m)||rt(m))&&S&&(m=T,k=m),!v&&(!(W(m)||$t(m)||rt(m))||!W($)))return a?Zo:l;let E=!1;const I=()=>{E=!0},P=rt(m)?m:Cl(e,l,$,m,k,I);if(E)return m;const y=Bh(e,$,f,c),U=ph(y),z=xh(e,P,U);let K=o?o(z,l):z;if(_&&W(K)&&(K=gp(K)),__INTLIFY_PROD_DEVTOOLS__){const Q={timestamp:Date.now(),key:W(l)?l:rt(m)?m.key:"",locale:$||(rt(m)?m.locale:""),format:W(m)?m:rt(m)?m.source:"",message:K};Q.meta=Ge({},e.__meta,wh()||{}),bh(Q)}return K}function Oh(e){Ce(e.list)?e.list=e.list.map(t=>W(t)?Br(t):t):fe(e.named)&&Object.keys(e.named).forEach(t=>{W(e.named[t])&&(e.named[t]=Br(e.named[t]))})}function Ll(e,t,n,o,a,s){const{messages:i,onWarn:r,messageResolver:l,localeFallbacker:c}=e,u=c(e,o,n);let p=Ae(),_,v=null;const T="translate";for(let S=0;So;return c.locale=n,c.key=t,c}const l=i(o,jh(e,n,a,o,r,s));return l.locale=n,l.key=t,l.source=o,l}function xh(e,t,n){return t(n)}function as(...e){const[t,n,o]=e,a=Ae();if(!W(t)&&!Pe(t)&&!rt(t)&&!$t(t))throw Lt(bt.INVALID_ARGUMENT);const s=Pe(t)?String(t):(rt(t),t);return Pe(n)?a.plural=n:W(n)?a.default=n:se(n)&&!Ho(n)?a.named=n:Ce(n)&&(a.list=n),Pe(o)?a.plural=o:W(o)?a.default=o:se(o)&&Ge(a,o),[s,a]}function jh(e,t,n,o,a,s){return{locale:t,key:n,warnHtmlMessage:a,onError:i=>{throw s&&s(i),i},onCacheKey:i=>rp(t,n,i)}}function Bh(e,t,n,o){const{modifiers:a,pluralRules:s,messageResolver:i,fallbackLocale:r,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,_={locale:t,modifiers:a,pluralRules:s,messages:v=>{let T=i(n,v);if(T==null&&u){const[,,S]=Ll(u,v,t,r,l,c);T=i(S,v)}if(W(T)||$t(T)){let S=!1;const N=Cl(e,v,t,T,v,()=>{S=!0});return S?El:N}else return rt(T)?T:El}};return e.processor&&(_.processor=e.processor),o.list&&(_.list=o.list),o.named&&(_.named=o.named),Pe(o.plural)&&(_.pluralIndex=o.plural),_}function wl(e,...t){const{datetimeFormats:n,unresolving:o,fallbackLocale:a,onWarn:s,localeFallbacker:i}=e,{__datetimeFormatters:r}=e,[l,c,u,p]=ss(...t),_=le(u.missingWarn)?u.missingWarn:e.missingWarn;le(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const v=!!u.part,T=Za(e,u),S=i(e,a,T);if(!W(l)||l==="")return new Intl.DateTimeFormat(T,p).format(c);let w={},N,$=null;const f="datetime format";for(let E=0;E{Nl.includes(l)?i[l]=n[l]:s[l]=n[l]}),W(o)?s.locale=o:se(o)&&(i=o),se(a)&&(i=a),[s.key||"",r,s,i]}function Il(e,t,n){const o=e;for(const a in n){const s=`${t}__${a}`;o.__datetimeFormatters.has(s)&&o.__datetimeFormatters.delete(s)}}function Pl(e,...t){const{numberFormats:n,unresolving:o,fallbackLocale:a,onWarn:s,localeFallbacker:i}=e,{__numberFormatters:r}=e,[l,c,u,p]=is(...t),_=le(u.missingWarn)?u.missingWarn:e.missingWarn;le(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const v=!!u.part,T=Za(e,u),S=i(e,a,T);if(!W(l)||l==="")return new Intl.NumberFormat(T,p).format(c);let w={},N,$=null;const f="number format";for(let E=0;E{Ml.includes(l)?i[l]=n[l]:s[l]=n[l]}),W(o)?s.locale=o:se(o)&&(i=o),se(a)&&(i=a),[s.key||"",r,s,i]}function Rl(e,t,n){const o=e;for(const a in n){const s=`${t}__${a}`;o.__numberFormatters.has(s)&&o.__numberFormatters.delete(s)}}Hp();/*! * vue-i18n v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */const Bh="9.14.5";function Kh(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(xt().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(xt().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(xt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(xt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(xt().__INTLIFY_PROD_DEVTOOLS__=!1)}const Uh=yh.__EXTEND_POINT__,Bt=Vo(Uh);Bt(),Bt(),Bt(),Bt(),Bt(),Bt(),Bt(),Bt(),Bt();const Fl=bt.__EXTEND_POINT__,et=Vo(Fl),Oe={UNEXPECTED_RETURN_TYPE:Fl,INVALID_ARGUMENT:et(),MUST_BE_CALL_SETUP_TOP:et(),NOT_INSTALLED:et(),NOT_AVAILABLE_IN_LEGACY_MODE:et(),REQUIRED_VALUE:et(),INVALID_VALUE:et(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:et(),NOT_INSTALLED_WITH_PROVIDE:et(),UNEXPECTED_ERROR:et(),NOT_COMPATIBLE_LEGACY_VUE_I18N:et(),BRIDGE_SUPPORT_VUE_2_ONLY:et(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:et(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:et(),__EXTEND_POINT__:et()};function Ue(e,...t){return kn(e,null,void 0)}const rs=Vt("__translateVNode"),ls=Vt("__datetimeParts"),cs=Vt("__numberParts"),Dl=Vt("__setPluralRules"),Ol=Vt("__injectWithOption"),us=Vt("__dispose");function oo(e){if(!fe(e)||$t(e))return e;for(const t in e)if(ht(e,t))if(!t.includes("."))fe(e[t])&&oo(e[t]);else{const n=t.split("."),o=n.length-1;let a=e,s=!1;for(let i=0;i{if("locale"in r&&"resource"in r){const{locale:l,resource:c}=r;l?(i[l]=i[l]||Ae(),Yo(c,i[l])):Yo(c,i)}else W(r)&&Yo(JSON.parse(r),i)}),a==null&&s)for(const r in i)ht(i,r)&&oo(i[r]);return i}function xl(e){return e.type}function jl(e,t,n){let o=fe(t.messages)?t.messages:Ae();"__i18nGlobal"in n&&(o=Qo(e.locale.value,{messages:o,__i18n:n.__i18nGlobal}));const a=Object.keys(o);a.length&&a.forEach(s=>{e.mergeLocaleMessage(s,o[s])});{if(fe(t.datetimeFormats)){const s=Object.keys(t.datetimeFormats);s.length&&s.forEach(i=>{e.mergeDateTimeFormat(i,t.datetimeFormats[i])})}if(fe(t.numberFormats)){const s=Object.keys(t.numberFormats);s.length&&s.forEach(i=>{e.mergeNumberFormat(i,t.numberFormats[i])})}}}function Bl(e){return Ke(Vn,null,e,0)}const Kl="__INTLIFY_META__",Ul=()=>[],zh=()=>!1;let zl=0;function Gl(e){return(t,n,o,a)=>e(n,o,Dt()||void 0,a)}const Gh=()=>{const e=Dt();let t=null;return e&&(t=xl(e)[Kl])?{[Kl]:t}:null};function gs(e={},t){const{__root:n,__injectWithOption:o}=e,a=n===void 0,s=e.flatJson,i=qo?ce:_i,r=!!e.translateExistCompatible;let l=le(e.inheritLocale)?e.inheritLocale:!0;const c=i(n&&l?n.locale.value:W(e.locale)?e.locale:$n),u=i(n&&l?n.fallbackLocale.value:W(e.fallbackLocale)||Ce(e.fallbackLocale)||se(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:c.value),p=i(Qo(c.value,e)),_=i(se(e.datetimeFormats)?e.datetimeFormats:{[c.value]:{}}),v=i(se(e.numberFormats)?e.numberFormats:{[c.value]:{}});let T=n?n.missingWarn:le(e.missingWarn)||Wt(e.missingWarn)?e.missingWarn:!0,S=n?n.fallbackWarn:le(e.fallbackWarn)||Wt(e.fallbackWarn)?e.fallbackWarn:!0,w=n?n.fallbackRoot:le(e.fallbackRoot)?e.fallbackRoot:!0,N=!!e.fallbackFormat,$=Te(e.missing)?e.missing:null,f=Te(e.missing)?Gl(e.missing):null,m=Te(e.postTranslation)?e.postTranslation:null,k=n?n.warnHtmlMessage:le(e.warnHtmlMessage)?e.warnHtmlMessage:!0,E=!!e.escapeParameter;const I=n?n.modifiers:se(e.modifiers)?e.modifiers:{};let P=e.pluralRules||n&&n.pluralRules,y;y=(()=>{a&&Al(null);const L={version:Bh,locale:c.value,fallbackLocale:u.value,messages:p.value,modifiers:I,pluralRules:P,missing:f===null?void 0:f,missingWarn:T,fallbackWarn:S,fallbackFormat:N,unresolving:!0,postTranslation:m===null?void 0:m,warnHtmlMessage:k,escapeParameter:E,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};L.datetimeFormats=_.value,L.numberFormats=v.value,L.__datetimeFormatters=se(y)?y.__datetimeFormatters:void 0,L.__numberFormatters=se(y)?y.__numberFormatters:void 0;const F=Nh(L);return a&&Al(F),F})(),no(y,c.value,u.value);function z(){return[c.value,u.value,p.value,_.value,v.value]}const K=be({get:()=>c.value,set:L=>{c.value=L,y.locale=c.value}}),Q=be({get:()=>u.value,set:L=>{u.value=L,y.fallbackLocale=u.value,no(y,c.value,L)}}),te=be(()=>p.value),B=be(()=>_.value),Y=be(()=>v.value);function X(){return Te(m)?m:null}function re(L){m=L,y.postTranslation=L}function xe(){return $}function H(L){L!==null&&(f=Gl(L)),$=L,y.missing=f}const ee=(L,F,Z,ie,$e,Ze)=>{z();let qe;try{__INTLIFY_PROD_DEVTOOLS__,a||(y.fallbackContext=n?wh():void 0),qe=L(y)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(y.fallbackContext=void 0)}if(Z!=="translate exists"&&Pe(qe)&&qe===Zo||Z==="translate exists"&&!qe){const[gn,Os]=F();return n&&w?ie(n):$e(gn)}else{if(Ze(qe))return qe;throw Ue(Oe.UNEXPECTED_RETURN_TYPE)}};function J(...L){return ee(F=>Reflect.apply($l,null,[F,...L]),()=>as(...L),"translate",F=>Reflect.apply(F.t,F,[...L]),F=>F,F=>W(F))}function pe(...L){const[F,Z,ie]=L;if(ie&&!fe(ie))throw Ue(Oe.INVALID_ARGUMENT);return J(F,Z,Ge({resolvedMessage:!0},ie||{}))}function ge(...L){return ee(F=>Reflect.apply(wl,null,[F,...L]),()=>ss(...L),"datetime format",F=>Reflect.apply(F.d,F,[...L]),()=>dl,F=>W(F))}function je(...L){return ee(F=>Reflect.apply(Pl,null,[F,...L]),()=>is(...L),"number format",F=>Reflect.apply(F.n,F,[...L]),()=>dl,F=>W(F))}function Ee(L){return L.map(F=>W(F)||Pe(F)||le(F)?Bl(String(F)):F)}const Se={normalize:Ee,interpolate:L=>L,type:"vnode"};function x(...L){return ee(F=>{let Z;const ie=F;try{ie.processor=Se,Z=Reflect.apply($l,null,[ie,...L])}finally{ie.processor=null}return Z},()=>as(...L),"translate",F=>F[rs](...L),F=>[Bl(F)],F=>Ce(F))}function de(...L){return ee(F=>Reflect.apply(Pl,null,[F,...L]),()=>is(...L),"number format",F=>F[cs](...L),Ul,F=>W(F)||Ce(F))}function Me(...L){return ee(F=>Reflect.apply(wl,null,[F,...L]),()=>ss(...L),"datetime format",F=>F[ls](...L),Ul,F=>W(F)||Ce(F))}function h(L){P=L,y.pluralRules=P}function A(L,F){return ee(()=>{if(!L)return!1;const Z=W(F)?F:c.value,ie=O(Z),$e=y.messageResolver(ie,L);return r?$e!=null:$t($e)||rt($e)||W($e)},()=>[L],"translate exists",Z=>Reflect.apply(Z.te,Z,[L,F]),zh,Z=>le(Z))}function b(L){let F=null;const Z=ul(y,u.value,c.value);for(let ie=0;ie{l&&(c.value=L,y.locale=L,no(y,c.value,u.value))}),on(n.fallbackLocale,L=>{l&&(u.value=L,y.fallbackLocale=L,no(y,c.value,u.value))}));const j={id:zl,locale:K,fallbackLocale:Q,get inheritLocale(){return l},set inheritLocale(L){l=L,L&&n&&(c.value=n.locale.value,u.value=n.fallbackLocale.value,no(y,c.value,u.value))},get availableLocales(){return Object.keys(p.value).sort()},messages:te,get modifiers(){return I},get pluralRules(){return P||{}},get isGlobal(){return a},get missingWarn(){return T},set missingWarn(L){T=L,y.missingWarn=T},get fallbackWarn(){return S},set fallbackWarn(L){S=L,y.fallbackWarn=S},get fallbackRoot(){return w},set fallbackRoot(L){w=L},get fallbackFormat(){return N},set fallbackFormat(L){N=L,y.fallbackFormat=N},get warnHtmlMessage(){return k},set warnHtmlMessage(L){k=L,y.warnHtmlMessage=L},get escapeParameter(){return E},set escapeParameter(L){E=L,y.escapeParameter=L},t:J,getLocaleMessage:O,setLocaleMessage:D,mergeLocaleMessage:q,getPostTranslationHandler:X,setPostTranslationHandler:re,getMissingHandler:xe,setMissingHandler:H,[Dl]:h};return j.datetimeFormats=B,j.numberFormats=Y,j.rt=pe,j.te=A,j.tm=M,j.d=ge,j.n=je,j.getDateTimeFormat=G,j.setDateTimeFormat=g,j.mergeDateTimeFormat=d,j.getNumberFormat=C,j.setNumberFormat=R,j.mergeNumberFormat=V,j[Ol]=o,j[rs]=x,j[ls]=Me,j[cs]=de,j}function qh(e){const t=W(e.locale)?e.locale:$n,n=W(e.fallbackLocale)||Ce(e.fallbackLocale)||se(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,o=Te(e.missing)?e.missing:void 0,a=le(e.silentTranslationWarn)||Wt(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,s=le(e.silentFallbackWarn)||Wt(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,i=le(e.fallbackRoot)?e.fallbackRoot:!0,r=!!e.formatFallbackMessages,l=se(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=Te(e.postTranslation)?e.postTranslation:void 0,p=W(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,_=!!e.escapeParameterHtml,v=le(e.sync)?e.sync:!0;let T=e.messages;if(se(e.sharedMessages)){const E=e.sharedMessages;T=Object.keys(E).reduce((P,y)=>{const U=P[y]||(P[y]={});return Ge(U,E[y]),P},T||{})}const{__i18n:S,__root:w,__injectWithOption:N}=e,$=e.datetimeFormats,f=e.numberFormats,m=e.flatJson,k=e.translateExistCompatible;return{locale:t,fallbackLocale:n,messages:T,flatJson:m,datetimeFormats:$,numberFormats:f,missing:o,missingWarn:a,fallbackWarn:s,fallbackRoot:i,fallbackFormat:r,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:p,escapeParameter:_,messageResolver:e.messageResolver,inheritLocale:v,translateExistCompatible:k,__i18n:S,__root:w,__injectWithOption:N}}function ds(e={},t){{const n=gs(qh(e)),{__extender:o}=e,a={id:n.id,get locale(){return n.locale.value},set locale(s){n.locale.value=s},get fallbackLocale(){return n.fallbackLocale.value},set fallbackLocale(s){n.fallbackLocale.value=s},get messages(){return n.messages.value},get datetimeFormats(){return n.datetimeFormats.value},get numberFormats(){return n.numberFormats.value},get availableLocales(){return n.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(s){},get missing(){return n.getMissingHandler()},set missing(s){n.setMissingHandler(s)},get silentTranslationWarn(){return le(n.missingWarn)?!n.missingWarn:n.missingWarn},set silentTranslationWarn(s){n.missingWarn=le(s)?!s:s},get silentFallbackWarn(){return le(n.fallbackWarn)?!n.fallbackWarn:n.fallbackWarn},set silentFallbackWarn(s){n.fallbackWarn=le(s)?!s:s},get modifiers(){return n.modifiers},get formatFallbackMessages(){return n.fallbackFormat},set formatFallbackMessages(s){n.fallbackFormat=s},get postTranslation(){return n.getPostTranslationHandler()},set postTranslation(s){n.setPostTranslationHandler(s)},get sync(){return n.inheritLocale},set sync(s){n.inheritLocale=s},get warnHtmlInMessage(){return n.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(s){n.warnHtmlMessage=s!=="off"},get escapeParameterHtml(){return n.escapeParameter},set escapeParameterHtml(s){n.escapeParameter=s},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(s){},get pluralizationRules(){return n.pluralRules||{}},__composer:n,t(...s){const[i,r,l]=s,c={};let u=null,p=null;if(!W(i))throw Ue(Oe.INVALID_ARGUMENT);const _=i;return W(r)?c.locale=r:Ce(r)?u=r:se(r)&&(p=r),Ce(l)?u=l:se(l)&&(p=l),Reflect.apply(n.t,n,[_,u||p||{},c])},rt(...s){return Reflect.apply(n.rt,n,[...s])},tc(...s){const[i,r,l]=s,c={plural:1};let u=null,p=null;if(!W(i))throw Ue(Oe.INVALID_ARGUMENT);const _=i;return W(r)?c.locale=r:Pe(r)?c.plural=r:Ce(r)?u=r:se(r)&&(p=r),W(l)?c.locale=l:Ce(l)?u=l:se(l)&&(p=l),Reflect.apply(n.t,n,[_,u||p||{},c])},te(s,i){return n.te(s,i)},tm(s){return n.tm(s)},getLocaleMessage(s){return n.getLocaleMessage(s)},setLocaleMessage(s,i){n.setLocaleMessage(s,i)},mergeLocaleMessage(s,i){n.mergeLocaleMessage(s,i)},d(...s){return Reflect.apply(n.d,n,[...s])},getDateTimeFormat(s){return n.getDateTimeFormat(s)},setDateTimeFormat(s,i){n.setDateTimeFormat(s,i)},mergeDateTimeFormat(s,i){n.mergeDateTimeFormat(s,i)},n(...s){return Reflect.apply(n.n,n,[...s])},getNumberFormat(s){return n.getNumberFormat(s)},setNumberFormat(s,i){n.setNumberFormat(s,i)},mergeNumberFormat(s,i){n.mergeNumberFormat(s,i)},getChoiceIndex(s,i){return-1}};return a.__extender=o,a}}const fs={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function Hh({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((o,a)=>[...o,...a.type===Ve?a.children:[a]],[]):t.reduce((n,o)=>{const a=e[o];return a&&(n[o]=a()),n},Ae())}function ql(e){return Ve}const Hl=Un({name:"i18n-t",props:Ge({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Pe(e)||!isNaN(e)}},fs),setup(e,t){const{slots:n,attrs:o}=t,a=e.i18n||ea({useScope:e.scope,__useComponent:!0});return()=>{const s=Object.keys(n).filter(p=>p!=="_"),i=Ae();e.locale&&(i.locale=e.locale),e.plural!==void 0&&(i.plural=W(e.plural)?+e.plural:e.plural);const r=Hh(t,s),l=a[rs](e.keypath,r,i),c=Ge(Ae(),o),u=W(e.tag)||fe(e.tag)?e.tag:ql();return _r(u,c,l)}}});function Vh(e){return Ce(e)&&!W(e[0])}function Vl(e,t,n,o){const{slots:a,attrs:s}=t;return()=>{const i={part:!0};let r=Ae();e.locale&&(i.locale=e.locale),W(e.format)?i.key=e.format:fe(e.format)&&(W(e.format.key)&&(i.key=e.format.key),r=Object.keys(e.format).reduce((_,v)=>n.includes(v)?Ge(Ae(),_,{[v]:e.format[v]}):_,Ae()));const l=o(e.value,i,r);let c=[i.key];Ce(l)?c=l.map((_,v)=>{const T=a[_.type],S=T?T({[_.type]:_.value,index:v,parts:l}):[_.value];return Vh(S)&&(S[0].key=`${_.type}-${v}`),S}):W(l)&&(c=[l]);const u=Ge(Ae(),s),p=W(e.tag)||fe(e.tag)?e.tag:ql();return _r(p,u,c)}}const Wl=Un({name:"i18n-n",props:Ge({value:{type:Number,required:!0},format:{type:[String,Object]}},fs),setup(e,t){const n=e.i18n||ea({useScope:e.scope,__useComponent:!0});return Vl(e,t,Ml,(...o)=>n[cs](...o))}}),Yl=Un({name:"i18n-d",props:Ge({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},fs),setup(e,t){const n=e.i18n||ea({useScope:e.scope,__useComponent:!0});return Vl(e,t,Nl,(...o)=>n[ls](...o))}});function Wh(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const o=n.__getInstance(t);return o!=null?o.__composer:e.global.__composer}}function Yh(e){const t=i=>{const{instance:r,modifiers:l,value:c}=i;if(!r||!r.$)throw Ue(Oe.UNEXPECTED_ERROR);const u=Wh(e,r.$),p=Jl(c);return[Reflect.apply(u.t,u,[...Xl(p)]),u]};return{created:(i,r)=>{const[l,c]=t(r);qo&&e.global===c&&(i.__i18nWatcher=on(c.locale,()=>{r.instance&&r.instance.$forceUpdate()})),i.__composer=c,i.textContent=l},unmounted:i=>{qo&&i.__i18nWatcher&&(i.__i18nWatcher(),i.__i18nWatcher=void 0,delete i.__i18nWatcher),i.__composer&&(i.__composer=void 0,delete i.__composer)},beforeUpdate:(i,{value:r})=>{if(i.__composer){const l=i.__composer,c=Jl(r);i.textContent=Reflect.apply(l.t,l,[...Xl(c)])}},getSSRProps:i=>{const[r]=t(i);return{textContent:r}}}}function Jl(e){if(W(e))return{path:e};if(se(e)){if(!("path"in e))throw Ue(Oe.REQUIRED_VALUE,"path");return e}else throw Ue(Oe.INVALID_VALUE)}function Xl(e){const{path:t,locale:n,args:o,choice:a,plural:s}=e,i={},r=o||{};return W(n)&&(i.locale=n),Pe(a)&&(i.plural=a),Pe(s)&&(i.plural=s),[t,r,i]}function Jh(e,t,...n){const o=se(n[0])?n[0]:{},a=!!o.useI18nComponentName;(le(o.globalInstall)?o.globalInstall:!0)&&([a?"i18n":Hl.name,"I18nT"].forEach(i=>e.component(i,Hl)),[Wl.name,"I18nN"].forEach(i=>e.component(i,Wl)),[Yl.name,"I18nD"].forEach(i=>e.component(i,Yl))),e.directive("t",Yh(t))}function Xh(e,t,n){return{beforeCreate(){const o=Dt();if(!o)throw Ue(Oe.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=Zl(e,s);else{s.__injectWithOption=!0,s.__extender=n.__vueI18nExtend,this.$i18n=ds(s);const i=this.$i18n;i.__extender&&(i.__disposer=i.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=Zl(e,a);else{this.$i18n=ds({__i18n:a.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&jl(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,i)=>this.$i18n.te(s,i),this.$d=(...s)=>this.$i18n.d(...s),this.$n=(...s)=>this.$i18n.n(...s),this.$tm=s=>this.$i18n.tm(s),n.__setInstance(o,this.$i18n)},mounted(){},unmounted(){const o=Dt();if(!o)throw Ue(Oe.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),n.__deleteInstance(o),delete this.$i18n}}}function Zl(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[Dl](t.pluralizationRules||e.pluralizationRules);const n=Qo(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(o=>e.mergeLocaleMessage(o,n[o])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(o=>e.mergeDateTimeFormat(o,t.datetimeFormats[o])),t.numberFormats&&Object.keys(t.numberFormats).forEach(o=>e.mergeNumberFormat(o,t.numberFormats[o])),e}const Zh=Vt("global-vue-i18n");function Qh(e={},t){const n=__VUE_I18N_LEGACY_API__&&le(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,o=le(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&n?!!e.allowComposition:!0,s=new Map,[i,r]=em(e,n),l=Vt("");function c(_){return s.get(_)||null}function u(_,v){s.set(_,v)}function p(_){s.delete(_)}{const _={get mode(){return __VUE_I18N_LEGACY_API__&&n?"legacy":"composition"},get allowComposition(){return a},async install(v,...T){if(v.__VUE_I18N_SYMBOL__=l,v.provide(v.__VUE_I18N_SYMBOL__,_),se(T[0])){const N=T[0];_.__composerExtend=N.__composerExtend,_.__vueI18nExtend=N.__vueI18nExtend}let S=null;!n&&o&&(S=cm(v,_.global)),__VUE_I18N_FULL_INSTALL__&&Jh(v,_,...T),__VUE_I18N_LEGACY_API__&&n&&v.mixin(Xh(r,r.__composer,_));const w=v.unmount;v.unmount=()=>{S&&S(),_.dispose(),w()}},get global(){return r},dispose(){i.stop()},__instances:s,__getInstance:c,__setInstance:u,__deleteInstance:p};return _}}function ea(e={}){const t=Dt();if(t==null)throw Ue(Oe.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Ue(Oe.NOT_INSTALLED);const n=tm(t),o=om(n),a=xl(t),s=nm(e,a);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw Ue(Oe.NOT_AVAILABLE_IN_LEGACY_MODE);return rm(t,s,o,e)}if(s==="global")return jl(o,e,a),o;if(s==="parent"){let l=am(n,t,e.__useComponent);return l==null&&(l=o),l}const i=n;let r=i.__getInstance(t);if(r==null){const l=Ge({},e);"__i18n"in a&&(l.__i18n=a.__i18n),o&&(l.__root=o),r=gs(l),i.__composerExtend&&(r[us]=i.__composerExtend(r)),im(i,t,r),i.__setInstance(t,r)}return r}function em(e,t,n){const o=ga();{const a=__VUE_I18N_LEGACY_API__&&t?o.run(()=>ds(e)):o.run(()=>gs(e));if(a==null)throw Ue(Oe.UNEXPECTED_ERROR);return[o,a]}}function tm(e){{const t=Re(e.isCE?Zh:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Ue(e.isCE?Oe.NOT_INSTALLED_WITH_PROVIDE:Oe.UNEXPECTED_ERROR);return t}}function nm(e,t){return Ho(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function om(e){return e.mode==="composition"?e.global:e.global.__composer}function am(e,t,n=!1){let o=null;const a=t.root;let s=sm(t,n);for(;s!=null;){const i=e;if(e.mode==="composition")o=i.__getInstance(s);else if(__VUE_I18N_LEGACY_API__){const r=i.__getInstance(s);r!=null&&(o=r.__composer,n&&o&&!o[Ol]&&(o=null))}if(o!=null||a===s)break;s=s.parent}return o}function sm(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function im(e,t,n){yn(()=>{},t),Ro(()=>{const o=n;e.__deleteInstance(t);const a=o[us];a&&(a(),delete o[us])},t)}function rm(e,t,n,o={}){const a=t==="local",s=_i(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Ue(Oe.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const i=le(o.inheritLocale)?o.inheritLocale:!W(o.locale),r=ce(!a||i?n.locale.value:W(o.locale)?o.locale:$n),l=ce(!a||i?n.fallbackLocale.value:W(o.fallbackLocale)||Ce(o.fallbackLocale)||se(o.fallbackLocale)||o.fallbackLocale===!1?o.fallbackLocale:r.value),c=ce(Qo(r.value,o)),u=ce(se(o.datetimeFormats)?o.datetimeFormats:{[r.value]:{}}),p=ce(se(o.numberFormats)?o.numberFormats:{[r.value]:{}}),_=a?n.missingWarn:le(o.missingWarn)||Wt(o.missingWarn)?o.missingWarn:!0,v=a?n.fallbackWarn:le(o.fallbackWarn)||Wt(o.fallbackWarn)?o.fallbackWarn:!0,T=a?n.fallbackRoot:le(o.fallbackRoot)?o.fallbackRoot:!0,S=!!o.fallbackFormat,w=Te(o.missing)?o.missing:null,N=Te(o.postTranslation)?o.postTranslation:null,$=a?n.warnHtmlMessage:le(o.warnHtmlMessage)?o.warnHtmlMessage:!0,f=!!o.escapeParameter,m=a?n.modifiers:se(o.modifiers)?o.modifiers:{},k=o.pluralRules||a&&n.pluralRules;function E(){return[r.value,l.value,c.value,u.value,p.value]}const I=be({get:()=>s.value?s.value.locale.value:r.value,set:b=>{s.value&&(s.value.locale.value=b),r.value=b}}),P=be({get:()=>s.value?s.value.fallbackLocale.value:l.value,set:b=>{s.value&&(s.value.fallbackLocale.value=b),l.value=b}}),y=be(()=>s.value?s.value.messages.value:c.value),U=be(()=>u.value),z=be(()=>p.value);function K(){return s.value?s.value.getPostTranslationHandler():N}function Q(b){s.value&&s.value.setPostTranslationHandler(b)}function te(){return s.value?s.value.getMissingHandler():w}function B(b){s.value&&s.value.setMissingHandler(b)}function Y(b){return E(),b()}function X(...b){return s.value?Y(()=>Reflect.apply(s.value.t,null,[...b])):Y(()=>"")}function re(...b){return s.value?Reflect.apply(s.value.rt,null,[...b]):""}function xe(...b){return s.value?Y(()=>Reflect.apply(s.value.d,null,[...b])):Y(()=>"")}function H(...b){return s.value?Y(()=>Reflect.apply(s.value.n,null,[...b])):Y(()=>"")}function ee(b){return s.value?s.value.tm(b):{}}function J(b,M){return s.value?s.value.te(b,M):!1}function pe(b){return s.value?s.value.getLocaleMessage(b):{}}function ge(b,M){s.value&&(s.value.setLocaleMessage(b,M),c.value[b]=M)}function je(b,M){s.value&&s.value.mergeLocaleMessage(b,M)}function Ee(b){return s.value?s.value.getDateTimeFormat(b):{}}function _e(b,M){s.value&&(s.value.setDateTimeFormat(b,M),u.value[b]=M)}function Se(b,M){s.value&&s.value.mergeDateTimeFormat(b,M)}function x(b){return s.value?s.value.getNumberFormat(b):{}}function de(b,M){s.value&&(s.value.setNumberFormat(b,M),p.value[b]=M)}function Me(b,M){s.value&&s.value.mergeNumberFormat(b,M)}const h={get id(){return s.value?s.value.id:-1},locale:I,fallbackLocale:P,messages:y,datetimeFormats:U,numberFormats:z,get inheritLocale(){return s.value?s.value.inheritLocale:i},set inheritLocale(b){s.value&&(s.value.inheritLocale=b)},get availableLocales(){return s.value?s.value.availableLocales:Object.keys(c.value)},get modifiers(){return s.value?s.value.modifiers:m},get pluralRules(){return s.value?s.value.pluralRules:k},get isGlobal(){return s.value?s.value.isGlobal:!1},get missingWarn(){return s.value?s.value.missingWarn:_},set missingWarn(b){s.value&&(s.value.missingWarn=b)},get fallbackWarn(){return s.value?s.value.fallbackWarn:v},set fallbackWarn(b){s.value&&(s.value.missingWarn=b)},get fallbackRoot(){return s.value?s.value.fallbackRoot:T},set fallbackRoot(b){s.value&&(s.value.fallbackRoot=b)},get fallbackFormat(){return s.value?s.value.fallbackFormat:S},set fallbackFormat(b){s.value&&(s.value.fallbackFormat=b)},get warnHtmlMessage(){return s.value?s.value.warnHtmlMessage:$},set warnHtmlMessage(b){s.value&&(s.value.warnHtmlMessage=b)},get escapeParameter(){return s.value?s.value.escapeParameter:f},set escapeParameter(b){s.value&&(s.value.escapeParameter=b)},t:X,getPostTranslationHandler:K,setPostTranslationHandler:Q,getMissingHandler:te,setMissingHandler:B,rt:re,d:xe,n:H,tm:ee,te:J,getLocaleMessage:pe,setLocaleMessage:ge,mergeLocaleMessage:je,getDateTimeFormat:Ee,setDateTimeFormat:_e,mergeDateTimeFormat:Se,getNumberFormat:x,setNumberFormat:de,mergeNumberFormat:Me};function A(b){b.locale.value=r.value,b.fallbackLocale.value=l.value,Object.keys(c.value).forEach(M=>{b.mergeLocaleMessage(M,c.value[M])}),Object.keys(u.value).forEach(M=>{b.mergeDateTimeFormat(M,u.value[M])}),Object.keys(p.value).forEach(M=>{b.mergeNumberFormat(M,p.value[M])}),b.escapeParameter=f,b.fallbackFormat=S,b.fallbackRoot=T,b.fallbackWarn=v,b.missingWarn=_,b.warnHtmlMessage=$}return Ri(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Ue(Oe.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const b=s.value=e.proxy.$i18n.__composer;t==="global"?(r.value=b.locale.value,l.value=b.fallbackLocale.value,c.value=b.messages.value,u.value=b.datetimeFormats.value,p.value=b.numberFormats.value):a&&A(b)}),h}const lm=["locale","fallbackLocale","availableLocales"],Ql=["t","rt","d","n","tm","te"];function cm(e,t){const n=Object.create(null);return lm.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s)throw Ue(Oe.UNEXPECTED_ERROR);const i=we(s.value)?{get(){return s.value.value},set(r){s.value.value=r}}:{get(){return s.get&&s.get()}};Object.defineProperty(n,a,i)}),e.config.globalProperties.$i18n=n,Ql.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s||!s.value)throw Ue(Oe.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${a}`,s)}),()=>{delete e.config.globalProperties.$i18n,Ql.forEach(a=>{delete e.config.globalProperties[`$${a}`]})}}if(Kh(),__INTLIFY_JIT_COMPILATION__?hl(Fh):hl(Rh),Eh(sh),$h(ul),__INTLIFY_PROD_DEVTOOLS__){const e=xt();e.__INTLIFY__=!0,ph(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const um=Object.assign({"./locales/ar/aria.json":hd,"./locales/ar/buttons.json":md,"./locales/ar/detail.json":bd,"./locales/ar/legend.json":_d,"./locales/ar/messages.json":yd,"./locales/ar/options.json":Ad,"./locales/ar/prayerLaps.json":Sd,"./locales/ar/search.json":vd,"./locales/ar/tabs.json":kd,"./locales/de/aria.json":Td,"./locales/de/buttons.json":Ed,"./locales/de/detail.json":$d,"./locales/de/legend.json":Ld,"./locales/de/messages.json":Cd,"./locales/de/options.json":wd,"./locales/de/prayerLaps.json":Nd,"./locales/de/search.json":Id,"./locales/de/tabs.json":Pd,"./locales/en/aria.json":Md,"./locales/en/buttons.json":Rd,"./locales/en/detail.json":Fd,"./locales/en/legend.json":Dd,"./locales/en/messages.json":Od,"./locales/en/options.json":xd,"./locales/en/popup.json":jd,"./locales/en/prayerLaps.json":Bd,"./locales/en/search.json":Kd,"./locales/en/tabs.json":Ud,"./locales/es/aria.json":zd,"./locales/es/buttons.json":Gd,"./locales/es/detail.json":qd,"./locales/es/legend.json":Hd,"./locales/es/messages.json":Vd,"./locales/es/options.json":Wd,"./locales/es/prayerLaps.json":Yd,"./locales/es/search.json":Jd,"./locales/es/tabs.json":Xd,"./locales/fr/aria.json":Zd,"./locales/fr/buttons.json":Qd,"./locales/fr/detail.json":ef,"./locales/fr/legend.json":tf,"./locales/fr/messages.json":nf,"./locales/fr/options.json":of,"./locales/fr/popup.json":af,"./locales/fr/prayerLaps.json":sf,"./locales/fr/search.json":rf,"./locales/fr/tabs.json":lf,"./locales/hi/aria.json":cf,"./locales/hi/buttons.json":uf,"./locales/hi/detail.json":gf,"./locales/hi/legend.json":df,"./locales/hi/messages.json":ff,"./locales/hi/options.json":pf,"./locales/hi/prayerLaps.json":hf,"./locales/hi/search.json":mf,"./locales/it/aria.json":bf,"./locales/it/buttons.json":_f,"./locales/it/detail.json":yf,"./locales/it/legend.json":Af,"./locales/it/messages.json":Sf,"./locales/it/options.json":vf,"./locales/it/prayerLaps.json":kf,"./locales/it/search.json":Tf,"./locales/pt/aria.json":Ef,"./locales/pt/buttons.json":$f,"./locales/pt/detail.json":Lf,"./locales/pt/legend.json":Cf,"./locales/pt/messages.json":wf,"./locales/pt/options.json":Nf,"./locales/pt/prayerLaps.json":If,"./locales/pt/search.json":Pf,"./locales/pt/tabs.json":Mf,"./locales/ro/aria.json":Rf,"./locales/ro/buttons.json":Ff,"./locales/ro/detail.json":Df,"./locales/ro/legend.json":Of,"./locales/ro/messages.json":xf,"./locales/ro/options.json":jf,"./locales/ro/prayerLaps.json":Bf,"./locales/ro/search.json":Kf,"./locales/ru/aria.json":Uf,"./locales/ru/buttons.json":zf,"./locales/ru/detail.json":Gf,"./locales/ru/legend.json":qf,"./locales/ru/messages.json":Hf,"./locales/ru/options.json":Vf,"./locales/ru/prayerLaps.json":Wf,"./locales/ru/search.json":Yf,"./locales/ru/tabs.json":Jf,"./locales/zh/aria.json":Xf,"./locales/zh/buttons.json":Zf,"./locales/zh/detail.json":Qf,"./locales/zh/legend.json":ep,"./locales/zh/messages.json":tp,"./locales/zh/options.json":np,"./locales/zh/prayerLaps.json":op,"./locales/zh/search.json":ap}),ao={};for(const[e,t]of Object.entries(um)){const n=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!n)continue;const[,o,a]=n;ao[o]??(ao[o]={}),ao[o][a]=t}const ec=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function gm(){var n;const t=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return ec.includes(t)?t:"en"}function dm(){return Qh({legacy:!1,globalInjection:!0,locale:gm(),fallbackLocale:"en",messages:ao,missingWarn:!1,fallbackWarn:!1})}function ps(e,t){const n=t||fm(e);yn(()=>{var r;const o=Dt();if(!o)return;const a=(r=o.proxy)==null?void 0:r.$el;if(!a)return;const s=a.getRootNode();if(!(s instanceof ShadowRoot)||s.querySelector(`style[data-shadow-styles="${n}"]`))return;const i=document.createElement("style");i.setAttribute("data-shadow-styles",n),i.textContent=e,s.appendChild(i)})}function fm(e){let t=0;for(let n=0;n(t==null?void 0:t.theme)==="dark"),a=be(()=>{var S,w;return((S=n==null?void 0:n.value)==null?void 0:S.qaLabel)||((w=n==null?void 0:n.value)==null?void 0:w.profile)||"this map"}),s=ce(!1);function i(){s.value=!s.value}const r=ce(!1),l=ce("");async function c(){var w;r.value=!0,l.value="";const S=(...N)=>{try{console.log("[QaCorner:start]",...N)}catch{}};try{const N=await fetch("/api/orgs",{credentials:"include"});if(!N.ok)throw new Error("orgs "+N.status);const $=((w=await N.json())==null?void 0:w.orgs)||[],f=$.find(z=>(z.roles||[]).some(K=>/admin|owner|manage/i.test(String(K))))||$[0];if(!(f!=null&&f.slug))throw new Error("no org membership");S("org",f.slug);const m=await fetch(`/api/o/${encodeURIComponent(f.slug)}/mcp/mint`,{method:"POST",credentials:"include",headers:{"content-type":"application/json"},body:JSON.stringify({})}),k=await m.text();if(!m.ok)throw new Error("mint "+m.status+": "+k.slice(0,160));const E=(()=>{try{const z=JSON.parse(k);return z.access_token||z.token||""}catch{return""}})();if(S("minted token?",!!E,"len",E&&E.length),!E)throw new Error("mint returned no token");const I=await fetch("/sessions",{method:"POST",headers:{authorization:"Bearer "+E,"content-type":"application/json"},body:JSON.stringify({visibility:"public",kind:"qa",question:"QA on "+a.value})}),P=await I.text();if(!I.ok)throw new Error("create-session "+I.status+": "+P.slice(0,200));const y=(()=>{try{return JSON.parse(P)}catch{return{}}})(),U=y.code||y.Code||y.id||y.ID;if(S("session created",U),!U)throw new Error("no session code returned");window.open("/qhoot/assembly.html?c="+encodeURIComponent(U),"_blank")}catch(N){l.value=String((N==null?void 0:N.message)||N);try{console.error("[QaCorner:start] FAILED:",N)}catch{}}finally{r.value=!1}}const u=ce("checking"),p=ce(null);async function _(){u.value="checking";try{const S=await fetch("/api/auth/me",{credentials:"include"});if(S.ok){const w=await S.json();p.value=w.user,u.value="in";return}u.value="out"}catch{u.value="blocked"}}function v(){window.open("/plugin-assets/qa-connect.html","nuxtinator-login","width=480,height=640")||(u.value="blocked")}function T(S){var w;((w=S==null?void 0:S.data)==null?void 0:w.type)==="qa-auth"&&S.data.ok&&S.data.user&&(p.value=S.data.user,u.value="in")}return yn(()=>{var S;try{console.log("[QaCorner] MOUNTED — QA widget is in the DOM (qa=",(S=n==null?void 0:n.value)==null?void 0:S.qa,")")}catch{}window.addEventListener("message",T),_()}),Mo(()=>window.removeEventListener("message",T)),ps(` + */const Kh="9.14.5";function Uh(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(xt().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(xt().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(xt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(xt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(xt().__INTLIFY_PROD_DEVTOOLS__=!1)}const zh=Ah.__EXTEND_POINT__,Bt=Vo(zh);Bt(),Bt(),Bt(),Bt(),Bt(),Bt(),Bt(),Bt(),Bt();const Fl=bt.__EXTEND_POINT__,et=Vo(Fl),Oe={UNEXPECTED_RETURN_TYPE:Fl,INVALID_ARGUMENT:et(),MUST_BE_CALL_SETUP_TOP:et(),NOT_INSTALLED:et(),NOT_AVAILABLE_IN_LEGACY_MODE:et(),REQUIRED_VALUE:et(),INVALID_VALUE:et(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:et(),NOT_INSTALLED_WITH_PROVIDE:et(),UNEXPECTED_ERROR:et(),NOT_COMPATIBLE_LEGACY_VUE_I18N:et(),BRIDGE_SUPPORT_VUE_2_ONLY:et(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:et(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:et(),__EXTEND_POINT__:et()};function Ue(e,...t){return kn(e,null,void 0)}const rs=Vt("__translateVNode"),ls=Vt("__datetimeParts"),cs=Vt("__numberParts"),Dl=Vt("__setPluralRules"),Ol=Vt("__injectWithOption"),us=Vt("__dispose");function oo(e){if(!fe(e)||$t(e))return e;for(const t in e)if(ht(e,t))if(!t.includes("."))fe(e[t])&&oo(e[t]);else{const n=t.split("."),o=n.length-1;let a=e,s=!1;for(let i=0;i{if("locale"in r&&"resource"in r){const{locale:l,resource:c}=r;l?(i[l]=i[l]||Ae(),Yo(c,i[l])):Yo(c,i)}else W(r)&&Yo(JSON.parse(r),i)}),a==null&&s)for(const r in i)ht(i,r)&&oo(i[r]);return i}function xl(e){return e.type}function jl(e,t,n){let o=fe(t.messages)?t.messages:Ae();"__i18nGlobal"in n&&(o=Qo(e.locale.value,{messages:o,__i18n:n.__i18nGlobal}));const a=Object.keys(o);a.length&&a.forEach(s=>{e.mergeLocaleMessage(s,o[s])});{if(fe(t.datetimeFormats)){const s=Object.keys(t.datetimeFormats);s.length&&s.forEach(i=>{e.mergeDateTimeFormat(i,t.datetimeFormats[i])})}if(fe(t.numberFormats)){const s=Object.keys(t.numberFormats);s.length&&s.forEach(i=>{e.mergeNumberFormat(i,t.numberFormats[i])})}}}function Bl(e){return Ke(Vn,null,e,0)}const Kl="__INTLIFY_META__",Ul=()=>[],Gh=()=>!1;let zl=0;function Gl(e){return(t,n,o,a)=>e(n,o,Dt()||void 0,a)}const qh=()=>{const e=Dt();let t=null;return e&&(t=xl(e)[Kl])?{[Kl]:t}:null};function gs(e={},t){const{__root:n,__injectWithOption:o}=e,a=n===void 0,s=e.flatJson,i=qo?ce:_i,r=!!e.translateExistCompatible;let l=le(e.inheritLocale)?e.inheritLocale:!0;const c=i(n&&l?n.locale.value:W(e.locale)?e.locale:$n),u=i(n&&l?n.fallbackLocale.value:W(e.fallbackLocale)||Ce(e.fallbackLocale)||se(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:c.value),p=i(Qo(c.value,e)),_=i(se(e.datetimeFormats)?e.datetimeFormats:{[c.value]:{}}),v=i(se(e.numberFormats)?e.numberFormats:{[c.value]:{}});let T=n?n.missingWarn:le(e.missingWarn)||Wt(e.missingWarn)?e.missingWarn:!0,S=n?n.fallbackWarn:le(e.fallbackWarn)||Wt(e.fallbackWarn)?e.fallbackWarn:!0,w=n?n.fallbackRoot:le(e.fallbackRoot)?e.fallbackRoot:!0,N=!!e.fallbackFormat,$=Te(e.missing)?e.missing:null,f=Te(e.missing)?Gl(e.missing):null,m=Te(e.postTranslation)?e.postTranslation:null,k=n?n.warnHtmlMessage:le(e.warnHtmlMessage)?e.warnHtmlMessage:!0,E=!!e.escapeParameter;const I=n?n.modifiers:se(e.modifiers)?e.modifiers:{};let P=e.pluralRules||n&&n.pluralRules,y;y=(()=>{a&&Al(null);const L={version:Kh,locale:c.value,fallbackLocale:u.value,messages:p.value,modifiers:I,pluralRules:P,missing:f===null?void 0:f,missingWarn:T,fallbackWarn:S,fallbackFormat:N,unresolving:!0,postTranslation:m===null?void 0:m,warnHtmlMessage:k,escapeParameter:E,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};L.datetimeFormats=_.value,L.numberFormats=v.value,L.__datetimeFormatters=se(y)?y.__datetimeFormatters:void 0,L.__numberFormatters=se(y)?y.__numberFormatters:void 0;const F=Ih(L);return a&&Al(F),F})(),no(y,c.value,u.value);function z(){return[c.value,u.value,p.value,_.value,v.value]}const K=be({get:()=>c.value,set:L=>{c.value=L,y.locale=c.value}}),Q=be({get:()=>u.value,set:L=>{u.value=L,y.fallbackLocale=u.value,no(y,c.value,L)}}),te=be(()=>p.value),B=be(()=>_.value),Y=be(()=>v.value);function X(){return Te(m)?m:null}function re(L){m=L,y.postTranslation=L}function xe(){return $}function H(L){L!==null&&(f=Gl(L)),$=L,y.missing=f}const ee=(L,F,Z,ie,$e,Ze)=>{z();let qe;try{__INTLIFY_PROD_DEVTOOLS__,a||(y.fallbackContext=n?Nh():void 0),qe=L(y)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(y.fallbackContext=void 0)}if(Z!=="translate exists"&&Pe(qe)&&qe===Zo||Z==="translate exists"&&!qe){const[gn,Os]=F();return n&&w?ie(n):$e(gn)}else{if(Ze(qe))return qe;throw Ue(Oe.UNEXPECTED_RETURN_TYPE)}};function J(...L){return ee(F=>Reflect.apply($l,null,[F,...L]),()=>as(...L),"translate",F=>Reflect.apply(F.t,F,[...L]),F=>F,F=>W(F))}function pe(...L){const[F,Z,ie]=L;if(ie&&!fe(ie))throw Ue(Oe.INVALID_ARGUMENT);return J(F,Z,Ge({resolvedMessage:!0},ie||{}))}function ge(...L){return ee(F=>Reflect.apply(wl,null,[F,...L]),()=>ss(...L),"datetime format",F=>Reflect.apply(F.d,F,[...L]),()=>dl,F=>W(F))}function je(...L){return ee(F=>Reflect.apply(Pl,null,[F,...L]),()=>is(...L),"number format",F=>Reflect.apply(F.n,F,[...L]),()=>dl,F=>W(F))}function Ee(L){return L.map(F=>W(F)||Pe(F)||le(F)?Bl(String(F)):F)}const Se={normalize:Ee,interpolate:L=>L,type:"vnode"};function x(...L){return ee(F=>{let Z;const ie=F;try{ie.processor=Se,Z=Reflect.apply($l,null,[ie,...L])}finally{ie.processor=null}return Z},()=>as(...L),"translate",F=>F[rs](...L),F=>[Bl(F)],F=>Ce(F))}function de(...L){return ee(F=>Reflect.apply(Pl,null,[F,...L]),()=>is(...L),"number format",F=>F[cs](...L),Ul,F=>W(F)||Ce(F))}function Me(...L){return ee(F=>Reflect.apply(wl,null,[F,...L]),()=>ss(...L),"datetime format",F=>F[ls](...L),Ul,F=>W(F)||Ce(F))}function h(L){P=L,y.pluralRules=P}function A(L,F){return ee(()=>{if(!L)return!1;const Z=W(F)?F:c.value,ie=O(Z),$e=y.messageResolver(ie,L);return r?$e!=null:$t($e)||rt($e)||W($e)},()=>[L],"translate exists",Z=>Reflect.apply(Z.te,Z,[L,F]),Gh,Z=>le(Z))}function b(L){let F=null;const Z=ul(y,u.value,c.value);for(let ie=0;ie{l&&(c.value=L,y.locale=L,no(y,c.value,u.value))}),on(n.fallbackLocale,L=>{l&&(u.value=L,y.fallbackLocale=L,no(y,c.value,u.value))}));const j={id:zl,locale:K,fallbackLocale:Q,get inheritLocale(){return l},set inheritLocale(L){l=L,L&&n&&(c.value=n.locale.value,u.value=n.fallbackLocale.value,no(y,c.value,u.value))},get availableLocales(){return Object.keys(p.value).sort()},messages:te,get modifiers(){return I},get pluralRules(){return P||{}},get isGlobal(){return a},get missingWarn(){return T},set missingWarn(L){T=L,y.missingWarn=T},get fallbackWarn(){return S},set fallbackWarn(L){S=L,y.fallbackWarn=S},get fallbackRoot(){return w},set fallbackRoot(L){w=L},get fallbackFormat(){return N},set fallbackFormat(L){N=L,y.fallbackFormat=N},get warnHtmlMessage(){return k},set warnHtmlMessage(L){k=L,y.warnHtmlMessage=L},get escapeParameter(){return E},set escapeParameter(L){E=L,y.escapeParameter=L},t:J,getLocaleMessage:O,setLocaleMessage:D,mergeLocaleMessage:q,getPostTranslationHandler:X,setPostTranslationHandler:re,getMissingHandler:xe,setMissingHandler:H,[Dl]:h};return j.datetimeFormats=B,j.numberFormats=Y,j.rt=pe,j.te=A,j.tm=M,j.d=ge,j.n=je,j.getDateTimeFormat=G,j.setDateTimeFormat=g,j.mergeDateTimeFormat=d,j.getNumberFormat=C,j.setNumberFormat=R,j.mergeNumberFormat=V,j[Ol]=o,j[rs]=x,j[ls]=Me,j[cs]=de,j}function Hh(e){const t=W(e.locale)?e.locale:$n,n=W(e.fallbackLocale)||Ce(e.fallbackLocale)||se(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,o=Te(e.missing)?e.missing:void 0,a=le(e.silentTranslationWarn)||Wt(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,s=le(e.silentFallbackWarn)||Wt(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,i=le(e.fallbackRoot)?e.fallbackRoot:!0,r=!!e.formatFallbackMessages,l=se(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=Te(e.postTranslation)?e.postTranslation:void 0,p=W(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,_=!!e.escapeParameterHtml,v=le(e.sync)?e.sync:!0;let T=e.messages;if(se(e.sharedMessages)){const E=e.sharedMessages;T=Object.keys(E).reduce((P,y)=>{const U=P[y]||(P[y]={});return Ge(U,E[y]),P},T||{})}const{__i18n:S,__root:w,__injectWithOption:N}=e,$=e.datetimeFormats,f=e.numberFormats,m=e.flatJson,k=e.translateExistCompatible;return{locale:t,fallbackLocale:n,messages:T,flatJson:m,datetimeFormats:$,numberFormats:f,missing:o,missingWarn:a,fallbackWarn:s,fallbackRoot:i,fallbackFormat:r,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:p,escapeParameter:_,messageResolver:e.messageResolver,inheritLocale:v,translateExistCompatible:k,__i18n:S,__root:w,__injectWithOption:N}}function ds(e={},t){{const n=gs(Hh(e)),{__extender:o}=e,a={id:n.id,get locale(){return n.locale.value},set locale(s){n.locale.value=s},get fallbackLocale(){return n.fallbackLocale.value},set fallbackLocale(s){n.fallbackLocale.value=s},get messages(){return n.messages.value},get datetimeFormats(){return n.datetimeFormats.value},get numberFormats(){return n.numberFormats.value},get availableLocales(){return n.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(s){},get missing(){return n.getMissingHandler()},set missing(s){n.setMissingHandler(s)},get silentTranslationWarn(){return le(n.missingWarn)?!n.missingWarn:n.missingWarn},set silentTranslationWarn(s){n.missingWarn=le(s)?!s:s},get silentFallbackWarn(){return le(n.fallbackWarn)?!n.fallbackWarn:n.fallbackWarn},set silentFallbackWarn(s){n.fallbackWarn=le(s)?!s:s},get modifiers(){return n.modifiers},get formatFallbackMessages(){return n.fallbackFormat},set formatFallbackMessages(s){n.fallbackFormat=s},get postTranslation(){return n.getPostTranslationHandler()},set postTranslation(s){n.setPostTranslationHandler(s)},get sync(){return n.inheritLocale},set sync(s){n.inheritLocale=s},get warnHtmlInMessage(){return n.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(s){n.warnHtmlMessage=s!=="off"},get escapeParameterHtml(){return n.escapeParameter},set escapeParameterHtml(s){n.escapeParameter=s},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(s){},get pluralizationRules(){return n.pluralRules||{}},__composer:n,t(...s){const[i,r,l]=s,c={};let u=null,p=null;if(!W(i))throw Ue(Oe.INVALID_ARGUMENT);const _=i;return W(r)?c.locale=r:Ce(r)?u=r:se(r)&&(p=r),Ce(l)?u=l:se(l)&&(p=l),Reflect.apply(n.t,n,[_,u||p||{},c])},rt(...s){return Reflect.apply(n.rt,n,[...s])},tc(...s){const[i,r,l]=s,c={plural:1};let u=null,p=null;if(!W(i))throw Ue(Oe.INVALID_ARGUMENT);const _=i;return W(r)?c.locale=r:Pe(r)?c.plural=r:Ce(r)?u=r:se(r)&&(p=r),W(l)?c.locale=l:Ce(l)?u=l:se(l)&&(p=l),Reflect.apply(n.t,n,[_,u||p||{},c])},te(s,i){return n.te(s,i)},tm(s){return n.tm(s)},getLocaleMessage(s){return n.getLocaleMessage(s)},setLocaleMessage(s,i){n.setLocaleMessage(s,i)},mergeLocaleMessage(s,i){n.mergeLocaleMessage(s,i)},d(...s){return Reflect.apply(n.d,n,[...s])},getDateTimeFormat(s){return n.getDateTimeFormat(s)},setDateTimeFormat(s,i){n.setDateTimeFormat(s,i)},mergeDateTimeFormat(s,i){n.mergeDateTimeFormat(s,i)},n(...s){return Reflect.apply(n.n,n,[...s])},getNumberFormat(s){return n.getNumberFormat(s)},setNumberFormat(s,i){n.setNumberFormat(s,i)},mergeNumberFormat(s,i){n.mergeNumberFormat(s,i)},getChoiceIndex(s,i){return-1}};return a.__extender=o,a}}const fs={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function Vh({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((o,a)=>[...o,...a.type===Ve?a.children:[a]],[]):t.reduce((n,o)=>{const a=e[o];return a&&(n[o]=a()),n},Ae())}function ql(e){return Ve}const Hl=Un({name:"i18n-t",props:Ge({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Pe(e)||!isNaN(e)}},fs),setup(e,t){const{slots:n,attrs:o}=t,a=e.i18n||ea({useScope:e.scope,__useComponent:!0});return()=>{const s=Object.keys(n).filter(p=>p!=="_"),i=Ae();e.locale&&(i.locale=e.locale),e.plural!==void 0&&(i.plural=W(e.plural)?+e.plural:e.plural);const r=Vh(t,s),l=a[rs](e.keypath,r,i),c=Ge(Ae(),o),u=W(e.tag)||fe(e.tag)?e.tag:ql();return _r(u,c,l)}}});function Wh(e){return Ce(e)&&!W(e[0])}function Vl(e,t,n,o){const{slots:a,attrs:s}=t;return()=>{const i={part:!0};let r=Ae();e.locale&&(i.locale=e.locale),W(e.format)?i.key=e.format:fe(e.format)&&(W(e.format.key)&&(i.key=e.format.key),r=Object.keys(e.format).reduce((_,v)=>n.includes(v)?Ge(Ae(),_,{[v]:e.format[v]}):_,Ae()));const l=o(e.value,i,r);let c=[i.key];Ce(l)?c=l.map((_,v)=>{const T=a[_.type],S=T?T({[_.type]:_.value,index:v,parts:l}):[_.value];return Wh(S)&&(S[0].key=`${_.type}-${v}`),S}):W(l)&&(c=[l]);const u=Ge(Ae(),s),p=W(e.tag)||fe(e.tag)?e.tag:ql();return _r(p,u,c)}}const Wl=Un({name:"i18n-n",props:Ge({value:{type:Number,required:!0},format:{type:[String,Object]}},fs),setup(e,t){const n=e.i18n||ea({useScope:e.scope,__useComponent:!0});return Vl(e,t,Ml,(...o)=>n[cs](...o))}}),Yl=Un({name:"i18n-d",props:Ge({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},fs),setup(e,t){const n=e.i18n||ea({useScope:e.scope,__useComponent:!0});return Vl(e,t,Nl,(...o)=>n[ls](...o))}});function Yh(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const o=n.__getInstance(t);return o!=null?o.__composer:e.global.__composer}}function Jh(e){const t=i=>{const{instance:r,modifiers:l,value:c}=i;if(!r||!r.$)throw Ue(Oe.UNEXPECTED_ERROR);const u=Yh(e,r.$),p=Jl(c);return[Reflect.apply(u.t,u,[...Xl(p)]),u]};return{created:(i,r)=>{const[l,c]=t(r);qo&&e.global===c&&(i.__i18nWatcher=on(c.locale,()=>{r.instance&&r.instance.$forceUpdate()})),i.__composer=c,i.textContent=l},unmounted:i=>{qo&&i.__i18nWatcher&&(i.__i18nWatcher(),i.__i18nWatcher=void 0,delete i.__i18nWatcher),i.__composer&&(i.__composer=void 0,delete i.__composer)},beforeUpdate:(i,{value:r})=>{if(i.__composer){const l=i.__composer,c=Jl(r);i.textContent=Reflect.apply(l.t,l,[...Xl(c)])}},getSSRProps:i=>{const[r]=t(i);return{textContent:r}}}}function Jl(e){if(W(e))return{path:e};if(se(e)){if(!("path"in e))throw Ue(Oe.REQUIRED_VALUE,"path");return e}else throw Ue(Oe.INVALID_VALUE)}function Xl(e){const{path:t,locale:n,args:o,choice:a,plural:s}=e,i={},r=o||{};return W(n)&&(i.locale=n),Pe(a)&&(i.plural=a),Pe(s)&&(i.plural=s),[t,r,i]}function Xh(e,t,...n){const o=se(n[0])?n[0]:{},a=!!o.useI18nComponentName;(le(o.globalInstall)?o.globalInstall:!0)&&([a?"i18n":Hl.name,"I18nT"].forEach(i=>e.component(i,Hl)),[Wl.name,"I18nN"].forEach(i=>e.component(i,Wl)),[Yl.name,"I18nD"].forEach(i=>e.component(i,Yl))),e.directive("t",Jh(t))}function Zh(e,t,n){return{beforeCreate(){const o=Dt();if(!o)throw Ue(Oe.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=Zl(e,s);else{s.__injectWithOption=!0,s.__extender=n.__vueI18nExtend,this.$i18n=ds(s);const i=this.$i18n;i.__extender&&(i.__disposer=i.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=Zl(e,a);else{this.$i18n=ds({__i18n:a.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&jl(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,i)=>this.$i18n.te(s,i),this.$d=(...s)=>this.$i18n.d(...s),this.$n=(...s)=>this.$i18n.n(...s),this.$tm=s=>this.$i18n.tm(s),n.__setInstance(o,this.$i18n)},mounted(){},unmounted(){const o=Dt();if(!o)throw Ue(Oe.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),n.__deleteInstance(o),delete this.$i18n}}}function Zl(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[Dl](t.pluralizationRules||e.pluralizationRules);const n=Qo(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(o=>e.mergeLocaleMessage(o,n[o])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(o=>e.mergeDateTimeFormat(o,t.datetimeFormats[o])),t.numberFormats&&Object.keys(t.numberFormats).forEach(o=>e.mergeNumberFormat(o,t.numberFormats[o])),e}const Qh=Vt("global-vue-i18n");function em(e={},t){const n=__VUE_I18N_LEGACY_API__&&le(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,o=le(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&n?!!e.allowComposition:!0,s=new Map,[i,r]=tm(e,n),l=Vt("");function c(_){return s.get(_)||null}function u(_,v){s.set(_,v)}function p(_){s.delete(_)}{const _={get mode(){return __VUE_I18N_LEGACY_API__&&n?"legacy":"composition"},get allowComposition(){return a},async install(v,...T){if(v.__VUE_I18N_SYMBOL__=l,v.provide(v.__VUE_I18N_SYMBOL__,_),se(T[0])){const N=T[0];_.__composerExtend=N.__composerExtend,_.__vueI18nExtend=N.__vueI18nExtend}let S=null;!n&&o&&(S=um(v,_.global)),__VUE_I18N_FULL_INSTALL__&&Xh(v,_,...T),__VUE_I18N_LEGACY_API__&&n&&v.mixin(Zh(r,r.__composer,_));const w=v.unmount;v.unmount=()=>{S&&S(),_.dispose(),w()}},get global(){return r},dispose(){i.stop()},__instances:s,__getInstance:c,__setInstance:u,__deleteInstance:p};return _}}function ea(e={}){const t=Dt();if(t==null)throw Ue(Oe.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Ue(Oe.NOT_INSTALLED);const n=nm(t),o=am(n),a=xl(t),s=om(e,a);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw Ue(Oe.NOT_AVAILABLE_IN_LEGACY_MODE);return lm(t,s,o,e)}if(s==="global")return jl(o,e,a),o;if(s==="parent"){let l=sm(n,t,e.__useComponent);return l==null&&(l=o),l}const i=n;let r=i.__getInstance(t);if(r==null){const l=Ge({},e);"__i18n"in a&&(l.__i18n=a.__i18n),o&&(l.__root=o),r=gs(l),i.__composerExtend&&(r[us]=i.__composerExtend(r)),rm(i,t,r),i.__setInstance(t,r)}return r}function tm(e,t,n){const o=ga();{const a=__VUE_I18N_LEGACY_API__&&t?o.run(()=>ds(e)):o.run(()=>gs(e));if(a==null)throw Ue(Oe.UNEXPECTED_ERROR);return[o,a]}}function nm(e){{const t=Re(e.isCE?Qh:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Ue(e.isCE?Oe.NOT_INSTALLED_WITH_PROVIDE:Oe.UNEXPECTED_ERROR);return t}}function om(e,t){return Ho(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function am(e){return e.mode==="composition"?e.global:e.global.__composer}function sm(e,t,n=!1){let o=null;const a=t.root;let s=im(t,n);for(;s!=null;){const i=e;if(e.mode==="composition")o=i.__getInstance(s);else if(__VUE_I18N_LEGACY_API__){const r=i.__getInstance(s);r!=null&&(o=r.__composer,n&&o&&!o[Ol]&&(o=null))}if(o!=null||a===s)break;s=s.parent}return o}function im(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function rm(e,t,n){yn(()=>{},t),Ro(()=>{const o=n;e.__deleteInstance(t);const a=o[us];a&&(a(),delete o[us])},t)}function lm(e,t,n,o={}){const a=t==="local",s=_i(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Ue(Oe.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const i=le(o.inheritLocale)?o.inheritLocale:!W(o.locale),r=ce(!a||i?n.locale.value:W(o.locale)?o.locale:$n),l=ce(!a||i?n.fallbackLocale.value:W(o.fallbackLocale)||Ce(o.fallbackLocale)||se(o.fallbackLocale)||o.fallbackLocale===!1?o.fallbackLocale:r.value),c=ce(Qo(r.value,o)),u=ce(se(o.datetimeFormats)?o.datetimeFormats:{[r.value]:{}}),p=ce(se(o.numberFormats)?o.numberFormats:{[r.value]:{}}),_=a?n.missingWarn:le(o.missingWarn)||Wt(o.missingWarn)?o.missingWarn:!0,v=a?n.fallbackWarn:le(o.fallbackWarn)||Wt(o.fallbackWarn)?o.fallbackWarn:!0,T=a?n.fallbackRoot:le(o.fallbackRoot)?o.fallbackRoot:!0,S=!!o.fallbackFormat,w=Te(o.missing)?o.missing:null,N=Te(o.postTranslation)?o.postTranslation:null,$=a?n.warnHtmlMessage:le(o.warnHtmlMessage)?o.warnHtmlMessage:!0,f=!!o.escapeParameter,m=a?n.modifiers:se(o.modifiers)?o.modifiers:{},k=o.pluralRules||a&&n.pluralRules;function E(){return[r.value,l.value,c.value,u.value,p.value]}const I=be({get:()=>s.value?s.value.locale.value:r.value,set:b=>{s.value&&(s.value.locale.value=b),r.value=b}}),P=be({get:()=>s.value?s.value.fallbackLocale.value:l.value,set:b=>{s.value&&(s.value.fallbackLocale.value=b),l.value=b}}),y=be(()=>s.value?s.value.messages.value:c.value),U=be(()=>u.value),z=be(()=>p.value);function K(){return s.value?s.value.getPostTranslationHandler():N}function Q(b){s.value&&s.value.setPostTranslationHandler(b)}function te(){return s.value?s.value.getMissingHandler():w}function B(b){s.value&&s.value.setMissingHandler(b)}function Y(b){return E(),b()}function X(...b){return s.value?Y(()=>Reflect.apply(s.value.t,null,[...b])):Y(()=>"")}function re(...b){return s.value?Reflect.apply(s.value.rt,null,[...b]):""}function xe(...b){return s.value?Y(()=>Reflect.apply(s.value.d,null,[...b])):Y(()=>"")}function H(...b){return s.value?Y(()=>Reflect.apply(s.value.n,null,[...b])):Y(()=>"")}function ee(b){return s.value?s.value.tm(b):{}}function J(b,M){return s.value?s.value.te(b,M):!1}function pe(b){return s.value?s.value.getLocaleMessage(b):{}}function ge(b,M){s.value&&(s.value.setLocaleMessage(b,M),c.value[b]=M)}function je(b,M){s.value&&s.value.mergeLocaleMessage(b,M)}function Ee(b){return s.value?s.value.getDateTimeFormat(b):{}}function _e(b,M){s.value&&(s.value.setDateTimeFormat(b,M),u.value[b]=M)}function Se(b,M){s.value&&s.value.mergeDateTimeFormat(b,M)}function x(b){return s.value?s.value.getNumberFormat(b):{}}function de(b,M){s.value&&(s.value.setNumberFormat(b,M),p.value[b]=M)}function Me(b,M){s.value&&s.value.mergeNumberFormat(b,M)}const h={get id(){return s.value?s.value.id:-1},locale:I,fallbackLocale:P,messages:y,datetimeFormats:U,numberFormats:z,get inheritLocale(){return s.value?s.value.inheritLocale:i},set inheritLocale(b){s.value&&(s.value.inheritLocale=b)},get availableLocales(){return s.value?s.value.availableLocales:Object.keys(c.value)},get modifiers(){return s.value?s.value.modifiers:m},get pluralRules(){return s.value?s.value.pluralRules:k},get isGlobal(){return s.value?s.value.isGlobal:!1},get missingWarn(){return s.value?s.value.missingWarn:_},set missingWarn(b){s.value&&(s.value.missingWarn=b)},get fallbackWarn(){return s.value?s.value.fallbackWarn:v},set fallbackWarn(b){s.value&&(s.value.missingWarn=b)},get fallbackRoot(){return s.value?s.value.fallbackRoot:T},set fallbackRoot(b){s.value&&(s.value.fallbackRoot=b)},get fallbackFormat(){return s.value?s.value.fallbackFormat:S},set fallbackFormat(b){s.value&&(s.value.fallbackFormat=b)},get warnHtmlMessage(){return s.value?s.value.warnHtmlMessage:$},set warnHtmlMessage(b){s.value&&(s.value.warnHtmlMessage=b)},get escapeParameter(){return s.value?s.value.escapeParameter:f},set escapeParameter(b){s.value&&(s.value.escapeParameter=b)},t:X,getPostTranslationHandler:K,setPostTranslationHandler:Q,getMissingHandler:te,setMissingHandler:B,rt:re,d:xe,n:H,tm:ee,te:J,getLocaleMessage:pe,setLocaleMessage:ge,mergeLocaleMessage:je,getDateTimeFormat:Ee,setDateTimeFormat:_e,mergeDateTimeFormat:Se,getNumberFormat:x,setNumberFormat:de,mergeNumberFormat:Me};function A(b){b.locale.value=r.value,b.fallbackLocale.value=l.value,Object.keys(c.value).forEach(M=>{b.mergeLocaleMessage(M,c.value[M])}),Object.keys(u.value).forEach(M=>{b.mergeDateTimeFormat(M,u.value[M])}),Object.keys(p.value).forEach(M=>{b.mergeNumberFormat(M,p.value[M])}),b.escapeParameter=f,b.fallbackFormat=S,b.fallbackRoot=T,b.fallbackWarn=v,b.missingWarn=_,b.warnHtmlMessage=$}return Ri(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Ue(Oe.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const b=s.value=e.proxy.$i18n.__composer;t==="global"?(r.value=b.locale.value,l.value=b.fallbackLocale.value,c.value=b.messages.value,u.value=b.datetimeFormats.value,p.value=b.numberFormats.value):a&&A(b)}),h}const cm=["locale","fallbackLocale","availableLocales"],Ql=["t","rt","d","n","tm","te"];function um(e,t){const n=Object.create(null);return cm.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s)throw Ue(Oe.UNEXPECTED_ERROR);const i=we(s.value)?{get(){return s.value.value},set(r){s.value.value=r}}:{get(){return s.get&&s.get()}};Object.defineProperty(n,a,i)}),e.config.globalProperties.$i18n=n,Ql.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s||!s.value)throw Ue(Oe.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${a}`,s)}),()=>{delete e.config.globalProperties.$i18n,Ql.forEach(a=>{delete e.config.globalProperties[`$${a}`]})}}if(Uh(),__INTLIFY_JIT_COMPILATION__?hl(Dh):hl(Fh),$h(ih),Lh(ul),__INTLIFY_PROD_DEVTOOLS__){const e=xt();e.__INTLIFY__=!0,hh(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const gm=Object.assign({"./locales/ar/aria.json":md,"./locales/ar/buttons.json":bd,"./locales/ar/detail.json":_d,"./locales/ar/legend.json":yd,"./locales/ar/messages.json":Ad,"./locales/ar/options.json":Sd,"./locales/ar/prayerLaps.json":vd,"./locales/ar/search.json":kd,"./locales/ar/tabs.json":Td,"./locales/de/aria.json":Ed,"./locales/de/buttons.json":$d,"./locales/de/detail.json":Ld,"./locales/de/legend.json":Cd,"./locales/de/messages.json":wd,"./locales/de/options.json":Nd,"./locales/de/prayerLaps.json":Id,"./locales/de/search.json":Pd,"./locales/de/tabs.json":Md,"./locales/en/aria.json":Rd,"./locales/en/buttons.json":Fd,"./locales/en/detail.json":Dd,"./locales/en/legend.json":Od,"./locales/en/messages.json":xd,"./locales/en/options.json":jd,"./locales/en/popup.json":Bd,"./locales/en/prayerLaps.json":Kd,"./locales/en/search.json":Ud,"./locales/en/tabs.json":zd,"./locales/es/aria.json":Gd,"./locales/es/buttons.json":qd,"./locales/es/detail.json":Hd,"./locales/es/legend.json":Vd,"./locales/es/messages.json":Wd,"./locales/es/options.json":Yd,"./locales/es/prayerLaps.json":Jd,"./locales/es/search.json":Xd,"./locales/es/tabs.json":Zd,"./locales/fr/aria.json":Qd,"./locales/fr/buttons.json":ef,"./locales/fr/detail.json":tf,"./locales/fr/legend.json":nf,"./locales/fr/messages.json":of,"./locales/fr/options.json":af,"./locales/fr/popup.json":sf,"./locales/fr/prayerLaps.json":rf,"./locales/fr/search.json":lf,"./locales/fr/tabs.json":cf,"./locales/hi/aria.json":uf,"./locales/hi/buttons.json":gf,"./locales/hi/detail.json":df,"./locales/hi/legend.json":ff,"./locales/hi/messages.json":pf,"./locales/hi/options.json":hf,"./locales/hi/prayerLaps.json":mf,"./locales/hi/search.json":bf,"./locales/it/aria.json":_f,"./locales/it/buttons.json":yf,"./locales/it/detail.json":Af,"./locales/it/legend.json":Sf,"./locales/it/messages.json":vf,"./locales/it/options.json":kf,"./locales/it/prayerLaps.json":Tf,"./locales/it/search.json":Ef,"./locales/pt/aria.json":$f,"./locales/pt/buttons.json":Lf,"./locales/pt/detail.json":Cf,"./locales/pt/legend.json":wf,"./locales/pt/messages.json":Nf,"./locales/pt/options.json":If,"./locales/pt/prayerLaps.json":Pf,"./locales/pt/search.json":Mf,"./locales/pt/tabs.json":Rf,"./locales/ro/aria.json":Ff,"./locales/ro/buttons.json":Df,"./locales/ro/detail.json":Of,"./locales/ro/legend.json":xf,"./locales/ro/messages.json":jf,"./locales/ro/options.json":Bf,"./locales/ro/prayerLaps.json":Kf,"./locales/ro/search.json":Uf,"./locales/ru/aria.json":zf,"./locales/ru/buttons.json":Gf,"./locales/ru/detail.json":qf,"./locales/ru/legend.json":Hf,"./locales/ru/messages.json":Vf,"./locales/ru/options.json":Wf,"./locales/ru/prayerLaps.json":Yf,"./locales/ru/search.json":Jf,"./locales/ru/tabs.json":Xf,"./locales/zh/aria.json":Zf,"./locales/zh/buttons.json":Qf,"./locales/zh/detail.json":ep,"./locales/zh/legend.json":tp,"./locales/zh/messages.json":np,"./locales/zh/options.json":op,"./locales/zh/prayerLaps.json":ap,"./locales/zh/search.json":sp}),ao={};for(const[e,t]of Object.entries(gm)){const n=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!n)continue;const[,o,a]=n;ao[o]??(ao[o]={}),ao[o][a]=t}const ec=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function dm(){var n;const t=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return ec.includes(t)?t:"en"}function fm(){return em({legacy:!1,globalInjection:!0,locale:dm(),fallbackLocale:"en",messages:ao,missingWarn:!1,fallbackWarn:!1})}function ps(e,t){const n=t||pm(e);yn(()=>{var r;const o=Dt();if(!o)return;const a=(r=o.proxy)==null?void 0:r.$el;if(!a)return;const s=a.getRootNode();if(!(s instanceof ShadowRoot)||s.querySelector(`style[data-shadow-styles="${n}"]`))return;const i=document.createElement("style");i.setAttribute("data-shadow-styles",n),i.textContent=e,s.appendChild(i)})}function pm(e){let t=0;for(let n=0;n(t==null?void 0:t.theme)==="dark"),a=be(()=>{var S,w;return((S=n==null?void 0:n.value)==null?void 0:S.qaLabel)||((w=n==null?void 0:n.value)==null?void 0:w.profile)||"this map"}),s=ce(!1);function i(){s.value=!s.value}const r=ce(!1),l=ce("");async function c(){var w;r.value=!0,l.value="";const S=(...N)=>{try{console.log("[QaCorner:start]",...N)}catch{}};try{const N=await fetch("/api/orgs",{credentials:"include"});if(!N.ok)throw new Error("orgs "+N.status);const $=((w=await N.json())==null?void 0:w.orgs)||[],f=$.find(z=>(z.roles||[]).some(K=>/admin|owner|manage/i.test(String(K))))||$[0];if(!(f!=null&&f.slug))throw new Error("no org membership");S("org",f.slug);const m=await fetch(`/api/o/${encodeURIComponent(f.slug)}/mcp/mint`,{method:"POST",credentials:"include",headers:{"content-type":"application/json"},body:JSON.stringify({})}),k=await m.text();if(!m.ok)throw new Error("mint "+m.status+": "+k.slice(0,160));const E=(()=>{try{const z=JSON.parse(k);return z.access_token||z.token||""}catch{return""}})();if(S("minted token?",!!E,"len",E&&E.length),!E)throw new Error("mint returned no token");const I=await fetch("/sessions",{method:"POST",headers:{authorization:"Bearer "+E,"content-type":"application/json"},body:JSON.stringify({visibility:"public",kind:"qa",question:"QA on "+a.value})}),P=await I.text();if(!I.ok)throw new Error("create-session "+I.status+": "+P.slice(0,200));const y=(()=>{try{return JSON.parse(P)}catch{return{}}})(),U=y.code||y.Code||y.id||y.ID;if(S("session created",U),!U)throw new Error("no session code returned");window.open("/qhoot/assembly.html?c="+encodeURIComponent(U),"_blank")}catch(N){l.value=String((N==null?void 0:N.message)||N);try{console.error("[QaCorner:start] FAILED:",N)}catch{}}finally{r.value=!1}}const u=ce("checking"),p=ce(null);async function _(){u.value="checking";try{const S=await fetch("/api/auth/me",{credentials:"include"});if(S.ok){const w=await S.json();p.value=w.user,u.value="in";return}u.value="out"}catch{u.value="blocked"}}function v(){window.open("/plugin-assets/qa-connect.html","nuxtinator-login","width=480,height=640")||(u.value="blocked")}function T(S){var w;((w=S==null?void 0:S.data)==null?void 0:w.type)==="qa-auth"&&S.data.ok&&S.data.user&&(p.value=S.data.user,u.value="in")}return yn(()=>{var S;try{console.log("[QaCorner] MOUNTED — QA widget is in the DOM (qa=",(S=n==null?void 0:n.value)==null?void 0:S.qa,")")}catch{}window.addEventListener("message",T),_()}),Mo(()=>window.removeEventListener("message",T)),ps(` .qa-corner { position: absolute; right: 16px; bottom: 16px; z-index: 2147483000; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; } .qa-fab { display: inline-flex; align-items: center; gap: 7px; @@ -64,7 +64,7 @@ .qa-note { margin: 10px 0 0; font-size: 11px; color: #8a94a3; } .qa-corner.dark .qa-panel { background: #1b212b; color: #e7ebf0; border-color: #2c3542; } .qa-corner.dark .qa-sub, .qa-corner.dark .qa-x { color: #aeb7c2; } -`,"qa-corner"),(S,w)=>{var N,$;return Ne(),Fe("div",{class:fn(["qa-corner",{dark:o.value}])},[me("button",{class:"qa-fab",type:"button","aria-expanded":s.value,"aria-label":"Open QA",onClick:i},[...w[0]||(w[0]=[me("span",{class:"qa-dot","aria-hidden":"true"},null,-1),ot(" QA ",-1)])],8,pm),s.value?(Ne(),Fe("div",hm,[me("div",{class:"qa-head"},[w[1]||(w[1]=me("strong",null,"QA session",-1)),me("button",{class:"qa-x",type:"button","aria-label":"Close",onClick:i},"×")]),me("p",mm,[w[2]||(w[2]=ot("Run a QA loop on ",-1)),me("em",null,ct(a.value),1),w[3]||(w[3]=ot(" with your team.",-1))]),u.value==="in"?(Ne(),Fe(Ve,{key:0},[me("div",bm,[w[4]||(w[4]=me("span",{class:"qa-dot"},null,-1)),ot(ct(((N=p.value)==null?void 0:N.display_name)||(($=p.value)==null?void 0:$.email)),1)]),me("button",{class:"qa-btn",type:"button",disabled:r.value,onClick:c},ct(r.value?"Starting…":"Start QA session"),9,_m),l.value?(Ne(),Fe("p",ym,"⚠ "+ct(l.value),1)):(Ne(),Fe("p",Am,"Signed in via Nuxtinator — opens a multiplayer QA room for this map."))],64)):u.value==="checking"?(Ne(),Fe("button",Sm,"Checking sign-in…")):u.value==="blocked"?(Ne(),Fe(Ve,{key:2},[me("button",{class:"qa-btn",type:"button",onClick:v},"Log in with Nuxtinator"),w[5]||(w[5]=me("p",{class:"qa-note"},"This plugin is origin-isolated, so sign-in must open in a new window.",-1))],64)):(Ne(),Fe(Ve,{key:3},[me("button",{class:"qa-btn",type:"button",onClick:v},"Log in with Nuxtinator"),w[6]||(w[6]=me("p",{class:"qa-note"},"Sign in as a Nuxtinator user to start or join a session.",-1))],64))])):ln("",!0)],2)}}},km={class:"pin-hint-pill"},Tm={__name:"PinHint",setup(e){const t=Re("uiStore",null),n=Re("profileConfig",null),o=be(()=>(t==null?void 0:t.theme)==="dark"),a=be(()=>{var T;return((T=n==null?void 0:n.value)==null?void 0:T.pinHintLabel)||"Tap a glowing dot — meet a people group"}),s=ce(!1);let i=null,r=null,l=null;function c(){return"doxa-pin-hint-seen"}function u(){try{return sessionStorage.getItem(c())==="1"}catch{return!1}}function p(){try{sessionStorage.setItem(c(),"1")}catch{}}function _(){s.value&&(s.value=!1,p(),l&&(l.removeEventListener("pointerdown",v,!0),l=null),i&&(clearTimeout(i),i=null))}function v(){_()}return yn(()=>{var N,$,f;if(u())return;const T=Dt(),S=(f=($=(N=T==null?void 0:T.proxy)==null?void 0:N.$el)==null?void 0:$.getRootNode)==null?void 0:f.call($);if(!S||typeof S.querySelector!="function")return;let w=0;r=setInterval(()=>{w++,S.querySelector("canvas")?(clearInterval(r),r=null,s.value=!0,l=S,S.addEventListener("pointerdown",v,!0),i=setTimeout(_,14e3)):w>40&&(clearInterval(r),r=null)},300)}),Mo(()=>{r&&clearInterval(r),i&&clearTimeout(i),l&&l.removeEventListener("pointerdown",v,!0)}),ps(` +`,"qa-corner"),(S,w)=>{var N,$;return Ne(),Fe("div",{class:fn(["qa-corner",{dark:o.value}])},[me("button",{class:"qa-fab",type:"button","aria-expanded":s.value,"aria-label":"Open QA",onClick:i},[...w[0]||(w[0]=[me("span",{class:"qa-dot","aria-hidden":"true"},null,-1),ot(" QA ",-1)])],8,hm),s.value?(Ne(),Fe("div",mm,[me("div",{class:"qa-head"},[w[1]||(w[1]=me("strong",null,"QA session",-1)),me("button",{class:"qa-x",type:"button","aria-label":"Close",onClick:i},"×")]),me("p",bm,[w[2]||(w[2]=ot("Run a QA loop on ",-1)),me("em",null,ct(a.value),1),w[3]||(w[3]=ot(" with your team.",-1))]),u.value==="in"?(Ne(),Fe(Ve,{key:0},[me("div",_m,[w[4]||(w[4]=me("span",{class:"qa-dot"},null,-1)),ot(ct(((N=p.value)==null?void 0:N.display_name)||(($=p.value)==null?void 0:$.email)),1)]),me("button",{class:"qa-btn",type:"button",disabled:r.value,onClick:c},ct(r.value?"Starting…":"Start QA session"),9,ym),l.value?(Ne(),Fe("p",Am,"⚠ "+ct(l.value),1)):(Ne(),Fe("p",Sm,"Signed in via Nuxtinator — opens a multiplayer QA room for this map."))],64)):u.value==="checking"?(Ne(),Fe("button",vm,"Checking sign-in…")):u.value==="blocked"?(Ne(),Fe(Ve,{key:2},[me("button",{class:"qa-btn",type:"button",onClick:v},"Log in with Nuxtinator"),w[5]||(w[5]=me("p",{class:"qa-note"},"This plugin is origin-isolated, so sign-in must open in a new window.",-1))],64)):(Ne(),Fe(Ve,{key:3},[me("button",{class:"qa-btn",type:"button",onClick:v},"Log in with Nuxtinator"),w[6]||(w[6]=me("p",{class:"qa-note"},"Sign in as a Nuxtinator user to start or join a session.",-1))],64))])):ln("",!0)],2)}}},Tm={class:"pin-hint-pill"},Em={__name:"PinHint",setup(e){const t=Re("uiStore",null),n=Re("profileConfig",null),o=be(()=>(t==null?void 0:t.theme)==="dark"),a=be(()=>{var T;return((T=n==null?void 0:n.value)==null?void 0:T.pinHintLabel)||"Tap a glowing dot — meet a people group"}),s=ce(!1);let i=null,r=null,l=null;function c(){return"doxa-pin-hint-seen"}function u(){try{return sessionStorage.getItem(c())==="1"}catch{return!1}}function p(){try{sessionStorage.setItem(c(),"1")}catch{}}function _(){s.value&&(s.value=!1,p(),l&&(l.removeEventListener("pointerdown",v,!0),l=null),i&&(clearTimeout(i),i=null))}function v(){_()}return yn(()=>{var N,$,f;if(u())return;const T=Dt(),S=(f=($=(N=T==null?void 0:T.proxy)==null?void 0:N.$el)==null?void 0:$.getRootNode)==null?void 0:f.call($);if(!S||typeof S.querySelector!="function")return;let w=0;r=setInterval(()=>{w++,S.querySelector("canvas")?(clearInterval(r),r=null,s.value=!0,l=S,S.addEventListener("pointerdown",v,!0),i=setTimeout(_,14e3)):w>40&&(clearInterval(r),r=null)},300)}),Mo(()=>{r&&clearInterval(r),i&&clearTimeout(i),l&&l.removeEventListener("pointerdown",v,!0)}),ps(` .pin-hint { position: absolute; left: 50%; bottom: 26px; transform: translateX(-50%); z-index: 2147482000; pointer-events: none; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; @@ -91,7 +91,7 @@ @media (prefers-reduced-motion: reduce) { .pin-hint, .pin-hint-pill, .pin-hint-dot::after { animation: none !important; } } -`,"pin-hint"),(T,S)=>s.value?(Ne(),Fe("div",{key:0,class:fn(["pin-hint",{dark:o.value}]),role:"status"},[me("span",km,[S[0]||(S[0]=me("span",{class:"pin-hint-dot","aria-hidden":"true"},null,-1)),ot(" "+ct(a.value)+" ",1),me("button",{class:"pin-hint-x",type:"button","aria-label":"Dismiss hint",onClick:_},"×")])],2)):ln("",!0)}};let Em=0;const $m=Wa("ui",{state:()=>({_storeInstanceId:++Em,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(n=>n.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 n=this.isDarkTheme;document.documentElement.setAttribute("data-theme",n?"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:n="info",duration:o=this.toastDuration,action:a=null,persistent:s=!1}=e,i={id:this.nextToastId++,message:t,type:n,duration:o,action:a,persistent:s,createdAt:Date.now()};return this.toasts.push(i),!s&&o>0&&setTimeout(()=>{this.removeToast(i.id)},o),i.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(n=>n.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(n=>{for(const o of n)this.updateWindowSize(o.contentRect.width,o.contentRect.height)}).observe(document.documentElement),window.matchMedia&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",n=>{this.theme==="auto"&&document.documentElement.setAttribute("data-theme",n.matches?"dark":"light")}),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",n=>{this.reducedMotion=n.matches,document.documentElement.setAttribute("data-reduced-motion",n.matches)}))}}}),Lm=Wa("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",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,n={}){let o=1.5;n.zoom!==void 0?o=n.zoom:t&&typeof t.getZoom=="function"&&(o=t.getZoom());let a=[0,0];if(n.center)a=n.center;else if(t&&typeof t.getCenter=="function"){const s=t.getCenter();s&&(a=[s.lng,s.lat])}this.maps[e]={instance:t,config:n,isReady:!1,zoom:o,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 n=this.maps[e];n&&Object.assign(n,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)},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()}}}),Cm=Wa("data",{state:()=>({sources:{},loadingStates:{}}),actions:{async load(e,t){if(!this.sources[e]){this.loadingStates[e]={isLoading:!0,error:null};try{const n=await t();this.sources[e]=xn({features:n,timestamp:Date.now()}),this.loadingStates[e]={isLoading:!1,error:null}}catch(n){console.error(`[dataStore] Failed to load source "${e}":`,n),this.loadingStates[e]={isLoading:!1,error:n}}}},clearSource(e){delete this.sources[e],delete this.loadingStates[e]},cacheSourceData(e,t){this.sources[e]=xn({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 n;return((n=e.sources[t])==null?void 0:n.features)??null},isLoading:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.isLoading)??!1},getError:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.error)??null}}}),tc={_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","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}}},wm=(e,t)=>{const n=e.__vccOpts||e;for(const[o,a]of t)n[o]=a;return n},Nm={class:"profile-loader"},Im={key:0,class:"profile-error"},Pm={key:1,class:"profile-error"},Mm=wm({__name:"ProfileLoader",props:{profileConfig:{type:String,default:""}},setup(e){var $;const t=e,n=be(()=>{if(!t.profileConfig)return null;try{return JSON.parse(t.profileConfig)}catch{return console.error("[ProfileLoader] Invalid profile-config JSON:",t.profileConfig),null}}),o=be(()=>{var f;return((f=n.value)==null?void 0:f.profile)||null}),a=be(()=>{var f;return((f=n.value)==null?void 0:f.tk)||""}),s=be(()=>{var f;return((f=n.value)==null?void 0:f.dataSource)||tc.activeSource||"doxa-csv"}),i=be(()=>{var f;return((f=n.value)==null?void 0:f.colorSet)||"default"}),r=be(()=>{var f;return((f=n.value)==null?void 0:f.qa)===!0}),l=be(()=>{var f;return((f=n.value)==null?void 0:f.pinHint)!==!1}),c=be(()=>{var m,k;const f=(((m=n.value)==null?void 0:m.locale)||((k=n.value)==null?void 0:k.lang)||"").split("-")[0].toLowerCase();return ec.includes(f)?f:""}),u=Re("appI18n",null);Nu(()=>{c.value&&u&&(u.global.locale.value=c.value)});const p=be(()=>{var f,m;return c.value||((m=(f=u==null?void 0:u.global)==null?void 0:f.locale)==null?void 0:m.value)||"en"}),_=be(()=>{var f;return((f=n.value)==null?void 0:f.instanceId)||"doxa-map-"+Math.random().toString(36).slice(2,9)}),v=Re("profileModules",null);if(!v)throw new Error('[ProfileLoader] No profileModules provided. Bundle entry must `app.provide("profileModules", import.meta.glob("./*.vue"))`');const T=be(()=>{if(!o.value)return null;const f=`./${o.value}.vue`;return v[f]?Fu(v[f]):(console.error(`[ProfileLoader] Profile not found: "${o.value}". Available:`,Object.keys(v)),null)});pt("mapboxToken",a),pt("dataSource",s),pt("colorSet",i),pt("profileConfig",n),pt("instanceId",_),pt("lang",p);const S=$m(),w=Lm(),N=Cm();try{const f=typeof localStorage<"u"?localStorage.getItem("theme"):null;f&&(($=S.setTheme)==null||$.call(S,f))}catch{}return pt("uiStore",S),pt("mapStore",w),pt("dataStore",N),(f,m)=>(Ne(),Fe("div",Nm,[n.value?T.value?(Ne(),xo(Hu(T.value),{key:2})):(Ne(),Fe("div",Pm,[me("p",null,[m[1]||(m[1]=ot("⚠️ Profile ",-1)),me("strong",null,'"'+ct(o.value)+'"',1),m[2]||(m[2]=ot(" not found.",-1))])])):(Ne(),Fe("div",Im,[...m[0]||(m[0]=[me("p",null,[ot("⚠️ "),me("strong",null,"doxa-map"),ot(": missing or invalid "),me("code",null,"profile-config"),ot(" prop.")],-1),me("p",null,[ot("Example: "),me("code",null,`profile-config='{"profile":"example-map","tk":"pk.eyJ..."}'`)],-1)])])),T.value&&r.value?(Ne(),xo(vm,{key:3})):ln("",!0),T.value&&l.value?(Ne(),xo(Tm,{key:4})):ln("",!0)]))}},[["__scopeId","data-v-5e13684a"]]),nc="adoptionStatus",Kt={notAdopted:"#e74c3c",hasAdoption:"#22c55e"},Rm=Kt,hs={notAdopted:"Needs Adoption",hasAdopted:"Has Adoption"},Fm=hs;function oc(e){var o;const t=e.adoptionStatus??((o=e._raw)==null?void 0:o.adopted_by_churches);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?Kt.hasAdoption:Kt.notAdopted}function ms({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","adoptionStatus"]:["get","adoptionStatus"];return["case",["==",t,!0],Kt.hasAdoption,["==",t,1],Kt.hasAdoption,Kt.notAdopted]}const ac=ms,Dm=Object.freeze(Object.defineProperty({__proto__:null,ADOPTION_COLORS:Rm,ADOPTION_LABELS:Fm,LABELS:hs,PALETTE:Kt,PROPERTY_KEY:nc,applyColor:ms,buildColorExpression:ac,default:{name:"Adoption Progress",propertyKey:nc,palette:Kt,colors:Kt,labels:hs,getColor:oc,applyColor:ms,buildColorExpression:ac},getColor:oc},Symbol.toStringTag,{value:"Module"})),sc="engagementStatus",Ut={notEngaged:"#e74c3c",hasEngagement:"#22c55e"},Om=Ut,bs={notEngaged:"Unengaged",hasEngagement:"Engaged"},xm=bs;function ic(e){var o;const t=e.engagementStatus??((o=e._raw)==null?void 0:o.people_committed);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?Ut.hasEngagement:Ut.notEngaged}function _s({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","engagementStatus"]:["get","engagementStatus"];return["case",["==",t,!0],Ut.hasEngagement,["==",t,1],Ut.hasEngagement,Ut.notEngaged]}const rc=_s,jm=Object.freeze(Object.defineProperty({__proto__:null,ENGAGEMENT_COLORS:Om,ENGAGEMENT_LABELS:xm,LABELS:bs,PALETTE:Ut,PROPERTY_KEY:sc,applyColor:_s,buildColorExpression:rc,default:{name:"Engagement Progress",propertyKey:sc,palette:Ut,colors:Ut,labels:bs,getColor:ic,applyColor:_s,buildColorExpression:rc},getColor:ic},Symbol.toStringTag,{value:"Module"})),ys="languageFamily",Bm="#000000",Zt={"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","Sign Language":"#212121",Creole:"#9575cd","Mixed language":"#a1887f","Language isolate":"#90a4ae",Unknown:"#000000"},Km=Zt;function ta(e){return Zt[e]||Bm}const Um=(()=>{const e=n=>String(n||"").toLowerCase().trim(),t={};for(const n of Object.keys(Zt))t[e(n)]=n;return t})();function As(e){if(!e)return"Unknown";const t=String(e).trim();return Um[t.toLowerCase()]||t}function lc(e){var t;return ta(e.languageFamily||((t=e._normalized)==null?void 0:t.languageFamily))}function Ss(){const e=["match",["get",ys]];return Object.entries(Zt).forEach(([t,n])=>{e.push(t,n)}),e.push("#95a5a6"),e}const cc=Ss,zm=Object.freeze(Object.defineProperty({__proto__:null,LANGUAGE_FAMILY_COLORS:Km,PALETTE:Zt,PROPERTY_KEY:ys,applyColor:Ss,buildColorExpression:cc,canonicalFamilyName:As,default:{name:"Language Family",propertyKey:ys,palette:Zt,colors:Zt,getColor:lc,applyColor:Ss,buildColorExpression:cc,getLanguageFamilyColor:ta,canonicalFamilyName:As},defaultFamilyColor:"#95a5a6",getColor:lc,getLanguageFamilyColor:ta,languageFamilyColors:Zt},Symbol.toStringTag,{value:"Module"})),uc="peoplePraying",Cn=144,Qt={noPrayer:"#e74c3c",hasPrayer:"#f39c12",fullPrayer:"#22c55e"},Gm=Qt,vs={noPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayer:"Has Full Prayer Coverage"},qm=vs;function na(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,n=Number(t)||0;return n>=Cn?"fullPrayer":n>0?"hasPrayer":"noPrayer"}function ks(e){return Qt[na(e)]}function gc(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;return t!==null&&t>0}function dc(e){return na(e)==="fullPrayer"}function fc(e){return ks(e)}function Ts({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","peoplePraying"]:["get","peoplePraying"];return["case",[">=",t,Cn],Qt.fullPrayer,[">",t,0],Qt.hasPrayer,Qt.noPrayer]}const pc=Ts,Hm=Object.freeze(Object.defineProperty({__proto__:null,FULL_PRAYER_THRESHOLD:Cn,LABELS:vs,PALETTE:Qt,PRAYER_COLORS:Gm,PRAYER_LABELS:qm,PROPERTY_KEY:uc,applyColor:Ts,buildColorExpression:pc,checkHasFullPrayer:dc,checkHasPrayer:gc,default:{name:"Prayer Progress",propertyKey:uc,palette:Qt,colors:Qt,labels:vs,threshold:Cn,getColor:fc,applyColor:Ts,buildColorExpression:pc,getPrayerLevel:na,getPrayerColor:ks,checkHasPrayer:gc,checkHasFullPrayer:dc},getColor:fc,getPrayerColor:ks,getPrayerLevel:na},Symbol.toStringTag,{value:"Module"})),hc="religion",Es="#94a3b8",$s={C:"Christianity",M:"Islam",H:"Hinduism",B:"Buddhism",E:"Ethnoreligion",J:"Judaism",S:"Sikhism",N:"Unaffiliated",O:"Other",U:"Unknown"},lt={C:"#3b82f6",M:"#ef4444",H:"#f59e0b",B:"#facc15",E:"#84cc16",J:"#a855f7",S:"#ec4899",N:"#71717a",O:"#ff6b2b",U:"#94a3b8"};function mc(e){if(!e||typeof e!="string")return"U";const t=e.charAt(0).toUpperCase();return $s[t]?t:"U"}function bc(e){var n,o,a;const t=(e==null?void 0:e.religion)||((o=(n=e==null?void 0:e._raw)==null?void 0:n.religion)==null?void 0:o.value)||((a=e==null?void 0:e._raw)==null?void 0:a.religion);return lt[mc(t)]||Es}function Ls(){return["match",["slice",["coalesce",["get","religion"],""],0,1],"C",lt.C,"M",lt.M,"H",lt.H,"B",lt.B,"E",lt.E,"J",lt.J,"S",lt.S,"N",lt.N,"O",lt.O,Es]}const _c=Ls,Vm=Object.assign({"./adoption.js":Dm,"./engagement.js":jm,"./language-family.js":zm,"./prayer-progress.js":Hm,"./religion.js":Object.freeze(Object.defineProperty({__proto__:null,PALETTE:lt,PROPERTY_KEY:hc,RELIGION_FAMILIES:$s,applyColor:Ls,buildColorExpression:_c,default:{name:"Religion",propertyKey:hc,palette:lt,families:$s,getColor:bc,applyColor:Ls,buildColorExpression:_c,fallback:Es},getColor:bc,getReligionFamily:mc},Symbol.toStringTag,{value:"Module"}))}),Wm=e=>e.replace(/-([a-z0-9])/g,(t,n)=>n.toUpperCase()),Ym=e=>e.replace(/-/g,"_").toUpperCase(),oa={...{STATUS:"status",CUSTOM:"custom"}},Cs={};function yc(e){for(const t of Object.keys(e).sort()){const n=t.split("/").pop().replace(/\.js$/,"");if(n.startsWith("_")||n.startsWith("."))continue;const o=e[t].default;if(!o)continue;const a=Wm(n);oa[Ym(n)]=a,Cs[a]=o}}yc(Vm);function Jm(e){e&&yc(e)}function ws(e){return Cs[e]||Cs[oa.LANGUAGE_FAMILY]}function Ac(e,t={}){return ws(e).applyColor(t)}const Xm=Object.assign({"./demo-map.vue":()=>Nc(()=>Promise.resolve().then(()=>wb),void 0)});Jm(Object.assign({"./src/colors/single-color.js":Pc}));const Zm=od(Mm,{configureApp(e){e.use(cd());const t=dm();e.use(t),e.provide("appI18n",t),e.provide("profileModules",Xm)}});typeof customElements<"u"&&!customElements.get("demo-map")&&customElements.define("demo-map",Zm);const Qm="rgba(120, 128, 134, 0.28)",Sc="36px",vc=()=>{};function eb(e,t={}){const{enabled:n=!0}=t;if(!n||!e)return vc;const o=Array.from(e.querySelectorAll(".map-scroll-edge"));if(!o.length)return vc;const a=$=>$.classList.contains("map-scroll-edge--left");for(const $ of o)$.style.background=`linear-gradient(${a($)?"to right":"to left"}, ${Qm} ${Sc}, transparent ${Sc})`,$.style.opacity="0",$.style.transition="opacity 0.16s ease",$.style.userSelect="none",$.style.webkitUserSelect="none";const s=$=>{$.style.opacity="1"},i=$=>{$.style.opacity="0"},r=()=>o.find($=>!a($))||null,l=new Set;let c=!1,u=null;const p=()=>{for(const $ of o)l.has($)||i($)},_=()=>{const $=r();$&&(s($),u&&clearTimeout(u),u=setTimeout(p,250))},v=()=>_(),T=$=>{if(!($.touches&&$.touches.length===1))return;const f=$.target;f&&f.classList&&f.classList.contains("map-scroll-edge")||_()},S=()=>{u&&clearTimeout(u),p()};e.addEventListener("wheel",v,{passive:!0}),e.addEventListener("touchmove",T,{passive:!0}),e.addEventListener("touchend",S,{passive:!0}),e.addEventListener("touchcancel",S,{passive:!0});const w=()=>{c||_()};typeof window<"u"&&window.addEventListener("scroll",w,{passive:!0});const N=[];for(const $ of o){const f=()=>{l.add($),s($)},m=()=>{l.delete($),i($)},k=()=>{c=!0,s($)},E=()=>{c=!1,i($)};$.addEventListener("mouseenter",f),$.addEventListener("mouseleave",m),$.addEventListener("touchstart",k,{passive:!0}),$.addEventListener("touchend",E,{passive:!0}),N.push(()=>{$.removeEventListener("mouseenter",f),$.removeEventListener("mouseleave",m),$.removeEventListener("touchstart",k),$.removeEventListener("touchend",E)})}return function(){u&&(clearTimeout(u),u=null),e.removeEventListener("wheel",v),e.removeEventListener("touchmove",T),e.removeEventListener("touchend",S),e.removeEventListener("touchcancel",S),typeof window<"u"&&window.removeEventListener("scroll",w);for(const f of N)f();for(const f of o)i(f)}}const wn={mapbox:{global:"mapboxgl",js:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js",css:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.css"},maplibre:{global:"maplibregl",js:"https://cdn.jsdelivr.net/npm/maplibre-gl@5/dist/maplibre-gl.js",css:"https://cdn.jsdelivr.net/npm/maplibre-gl@5/dist/maplibre-gl.css"}},tb=wn.mapbox.css,nb="https://tiles.openfreemap.org/styles/liberty";function Ns(e){var n;const t=((n=wn[e])==null?void 0:n.global)||wn.mapbox.global;return typeof window<"u"?window[t]:void 0}async function ob(e){const t=wn[e]||wn.mapbox;if(Ns(e)||typeof document>"u")return;if(!document.querySelector(`link[href="${t.css}"]`)){const o=document.createElement("link");o.rel="stylesheet",o.href=t.css,document.head.appendChild(o)}const n=document.querySelector(`script[src="${t.js}"]`);if(n){if(Ns(e))return;await new Promise(o=>{n.addEventListener("load",o,{once:!0}),n.addEventListener("error",o,{once:!0})});return}await new Promise((o,a)=>{const s=document.createElement("script");s.src=t.js,s.async=!1,s.addEventListener("load",o,{once:!0}),s.addEventListener("error",()=>a(new Error(`[useMapInstance] Failed to load ${e} engine script`)),{once:!0}),document.head.appendChild(s)})}async function ab(e,t){const n=e.getRootNode();if(!(n instanceof ShadowRoot))return;const o=i=>new Promise(r=>setTimeout(r,i)),a=n.querySelector(`link[href="${t}"]`);if(a){if(a.sheet)return;await Promise.race([new Promise(i=>{a.addEventListener("load",i,{once:!0}),a.addEventListener("error",i,{once:!0})}),o(2e3)]);return}const s=document.createElement("link");s.rel="stylesheet",s.href=t,await Promise.race([new Promise(i=>{s.addEventListener("load",i,{once:!0}),s.addEventListener("error",i,{once:!0}),n.prepend(s)}),o(2e3)])}function sb(e){return typeof e=="string"&&/^https?:\/\//.test(e)?e:nb}const ib=85.0511,kc=-2,rb=0,lb=-60;function Tc(e){return(1-Math.log(Math.tan(Math.PI/4+e*Math.PI/180/2))/Math.PI)/2}function cb(e,t,n,o){if(!e||e<=0||!t||t<=0)return rb;const a=Math.log2(e/512),s=Tc(o)-Tc(ib),i=Math.log2(t/(512*s)),r=Math.max(a,i);return Math.max(kc,Math.min(r,(n??18)-1))}function ub({containerRef:e,accessToken:t,style:n,provider:o="mapbox",center:a=[20,10],zoom:s=2,minZoom:i=void 0,maxZoom:r=18,pitch:l=0,bearing:c=0,renderWorldCopies:u=!0,showEdgeBorders:p=!0,southCutoff:_=lb,maxBounds:v=void 0}){const T=ce(null),S=ce(!1);let w=null,N=null;const $=o==="maplibre";async function f(){var Q;if(!e.value){console.error("containerRef.value is null — call initializeMap() inside onMounted()");return}await ob(o);const k=Ns(o);if(!k){console.error(`[useMapInstance] ${$?"maplibregl":"mapboxgl"} is not available. Add the ${$?"MapLibre":"Mapbox"} GL JS script to your page.`);return}if(!$){if(!t){console.error('No Mapbox access token provided. Pass "tk" in profile-config JSON.');return}if(!t.startsWith("pk.")){console.error('Mapbox token looks invalid (expected "pk." prefix). Got:',t.slice(0,10)+"...");return}}await ab(e.value,$?wn.maplibre.css:tb),await new Promise(te=>requestAnimationFrame(te));const E=e.value,I=E.clientWidth,P=E.clientHeight;if(I===0||P===0){console.error(`[useMapInstance] Container has ZERO dimensions (${I}×${P}). Map will be invisible. Check that parent elements have CSS sizing.`);let te=E.parentElement,B=0;for(;te&&B<5;)te=te.parentElement,B++}const y=t;$||(k.accessToken=y);const U=()=>typeof window<"u"&&window.innerWidth>=1024,z=(te,B)=>{if(!U())return kc;const Y=cb(te,B,r,_);return typeof i=="number"?Math.max(i,Y):Y},K=z(E.clientWidth,E.clientHeight);$?T.value=new k.Map({container:e.value,style:sb(n),center:a,zoom:s,minZoom:K,maxZoom:r,pitch:l,bearing:c,dragRotate:!1,renderWorldCopies:u,...v?{maxBounds:v}:{},attributionControl:!1}):T.value=new k.Map({accessToken:y,container:e.value,style:n,center:a,zoom:s,minZoom:K,maxZoom:r,pitch:l,bearing:c,dragRotate:!1,touchPitch:!1,renderWorldCopies:u,...v?{maxBounds:v}:{},attributionControl:!1});try{T.value.touchZoomRotate.disableRotation()}catch{}N=eb(((Q=e.value)==null?void 0:Q.parentElement)||null,{enabled:p}),w=()=>{const te=T.value;if(!te)return;const B=z(E.clientWidth,E.clientHeight);te.setMinZoom(B),te.getZoom(){requestAnimationFrame(()=>{var te;(te=T.value)==null||te.resize(),T.value&&T.value.setMinZoom(z(E.clientWidth,E.clientHeight)),S.value=!0})})}function m(){T.value&&(w&&(T.value.off("resize",w),typeof window<"u"&&(window.removeEventListener("resize",w),window.removeEventListener("orientationchange",w)),w=null),N&&(N(),N=null),T.value.remove(),T.value=null,S.value=!1)}return{map:T,isMapReady:S,initializeMap:f,destroy:m}}const We={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"},Ec={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 Is(e){return e==null?"":typeof e=="object"?e.label||e.value||"":String(e)}const gb=[[/ sign language$/i,"Sign Language"]];function db(e){var r,l;const t=Is(e.languageFamily);if(t)return t;const n=String(((l=(r=e._raw)==null?void 0:r.primary_language)==null?void 0:l.value)||(e.language&&typeof e.language=="object"?e.language.value:"")||"").trim().toLowerCase();if(n&&Ec[n])return Ec[n];const o=Is(e.language||e.primary_language);if(!o||typeof o!="string")return"";const a=o.trim(),s=a.split(",").map(c=>c.trim()).filter(Boolean);if(s.length>=2){const c=[...s].reverse().join(" ");if(We[c])return We[c];if(s.length>=3){const u=[s[1],s[0]].join(" ");if(We[u])return We[u]}}if(We[a])return We[a];const i=a.replace(/\s*\(.*?\)\s*$/,"").trim();if(i!==a&&We[i])return We[i];for(const[c,u]of gb)if(c.test(a))return u;return""}function fb(e){const{mapId:t="unknown",dataSourceId:n="doxa-csv",dataSourceManager:o=null,dataStore:a=null,markRaw:s=I=>I}=e;o||console.error("useMapData: dataSourceManager is required!");const i=ce(!1),r=ce(null),l=ce(!1),c=ce([]),u=ce([]),p=ce(null),_=ce([]),v=ce([]),T=ce([]),S=ce(null);async function w(){if(!o)throw new Error("dataSourceManager is required for useMapData");i.value=!0,r.value=null;try{if(await o.init(),a&&a.hasSourceData&&a.hasSourceData(n)){const B=a.getSourceData(n);u.value=s(B.normalizedData||[])}else{const B=await o.setActiveSource(n);for(const Y of B){const X=Is(Y.language||Y.primary_language);X&&(Y.language=X);const re=db(Y);Y.languageFamily=As(re)}u.value=s(B),a&&a.cacheSourceData&&a.cacheSourceData(n,{normalizedData:B,timestamp:Date.now()})}c.value=s(u.value.map(B=>({id:B.uniqueId,slug:B.slug||"",rop3:B.peopleGroupId,peopleId3:B.peopleId3,name:B.name,language:B.language,languageFamily:B.languageFamily,country:B.country,population:B.population,status:B.engagementStatus||B.status,latitude:B.latitude,longitude:B.longitude,lng:B.longitude,lat:B.latitude,description:B.description,imageUrl:B.imageUrl,doxaRegion:B.doxaRegion||B.wagfRegion||"",peoplePraying:B.peoplePraying??null,_normalized:B})));const I=o.getDataByLanguageFamily();_.value=Object.entries(I).map(([B,Y])=>{const X=Y.reduce((re,xe)=>{const H=parseInt(xe.population)||0;return re+H},0);return{name:B,count:Y.length,peopleGroupCount:Y.length,population:X,groups:Y}}).sort((B,Y)=>Y.count-B.count);const P=o.getDataByRegion();v.value=Object.entries(P).map(([B,Y])=>{const X=Y.reduce((re,xe)=>{const H=parseInt(xe.population)||0;return re+H},0);return{name:B,count:Y.length,peopleGroupCount:Y.length,population:X,groups:Y}}).sort((B,Y)=>B.name.localeCompare(Y.name));const y={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(B=>{const Y=parseInt(B.population)||0;let X=!1;B.bible==="Available"&&(y.bible.count++,y.bible.population+=Y,y.bible.groups.push(B),X=!0),B.jesusFilm==="Available"&&(y.jesusFilm.count++,y.jesusFilm.population+=Y,y.jesusFilm.groups.push(B),X=!0),B.radio==="Available"&&(y.radio.count++,y.radio.population+=Y,y.radio.groups.push(B),X=!0),B.gospel==="Available"&&(y.gospel.count++,y.gospel.population+=Y,y.gospel.groups.push(B),X=!0),B.audio==="Available"&&(y.audio.count++,y.audio.population+=Y,y.audio.groups.push(B),X=!0),B.stories==="Available"&&(y.stories.count++,y.stories.population+=Y,y.stories.groups.push(B),X=!0),X?(y.hasResources.count++,y.hasResources.population+=Y,y.hasResources.groups.push(B)):(y.noResources.count++,y.noResources.population+=Y,y.noResources.groups.push(B))});const U=u.value.length,z=u.value.reduce((B,Y)=>B+(parseInt(Y.population)||0),0),K={bible:"Bible",jesusFilm:"Jesus Film",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",hasResources:"Has Resources",noResources:"No Resources"},Q={bible:{count:U-y.bible.count,population:z-y.bible.population},jesusFilm:{count:U-y.jesusFilm.count,population:z-y.jesusFilm.population},radio:{count:U-y.radio.count,population:z-y.radio.population},gospel:{count:U-y.gospel.count,population:z-y.gospel.population},audio:{count:U-y.audio.count,population:z-y.audio.population},stories:{count:U-y.stories.count,population:z-y.stories.population}},te="#2c3e50";return T.value=[{name:K.bible,key:"bible",count:y.bible.count,population:y.bible.population,isParent:!0,children:[{name:"No Bible",key:"noBible",count:Q.bible.count,population:Q.bible.population,color:te}]},{name:K.jesusFilm,key:"jesusFilm",count:y.jesusFilm.count,population:y.jesusFilm.population,isParent:!0,children:[{name:"No Jesus Film",key:"noJesusFilm",count:Q.jesusFilm.count,population:Q.jesusFilm.population,color:te}]},{name:K.radio,key:"radio",count:y.radio.count,population:y.radio.population,isParent:!0,children:[{name:"No Radio",key:"noRadio",count:Q.radio.count,population:Q.radio.population,color:te}]},{name:K.gospel,key:"gospel",count:y.gospel.count,population:y.gospel.population,isParent:!0,children:[{name:"No Gospel",key:"noGospel",count:Q.gospel.count,population:Q.gospel.population,color:te}]},{name:K.audio,key:"audio",count:y.audio.count,population:y.audio.population,isParent:!0,children:[{name:"No Audio",key:"noAudio",count:Q.audio.count,population:Q.audio.population,color:te}]},{name:K.stories,key:"stories",count:y.stories.count,population:y.stories.population,isParent:!0,children:[{name:"No Stories",key:"noStories",count:Q.stories.count,population:Q.stories.population,color:te}]},{name:K.hasResources,key:"hasResources",count:y.hasResources.count,population:y.hasResources.population,isParent:!0,children:[{name:K.noResources,key:"noResources",count:y.noResources.count,population:y.noResources.population,color:te}]}],S.value=o.getStats(),l.value=!0,{peopleGroups:c.value,normalizedPeopleGroups:u.value,languageFamiliesData:_.value,doxaRegionsData:v.value,resourcesData:T.value,stats:S.value}}catch(I){throw console.error(`Failed to load data for map "${t}":`,I),r.value=I.message||"Failed to load data",I}finally{i.value=!1}}async function N(){var I,P,y;try{const U={},z=u.value||[];for(const K of z){const Q=K.countryIso||((P=(I=K._raw)==null?void 0:I.country_code)==null?void 0:P.value)||"",te=(y=K._raw)==null?void 0:y.wagf_region,B=K.doxaRegion||K.wagfRegion||(te&&typeof te=="object"?te.value:"")||"";Q&&B&&!U[Q]&&(U[Q]=B)}return p.value={isoToRegion:U},p.value}catch(U){throw console.error(`Error building regions data for map "${t}":`,U),r.value=U.message||"Failed to build regions",U}}function $(){return o?o.getDataByLanguageFamily():{}}function f(){return o?o.getDataByRegion():{}}function m(I){return $()[I]||[]}function k(I){return f()[I]||[]}function E(){c.value=[],u.value=[],p.value=null,_.value=[],v.value=[],T.value=[],S.value=null,l.value=!1,r.value=null}return{isLoading:i,isInitialized:l,error:r,peopleGroups:c,normalizedPeopleGroups:u,regionsData:p,languageFamiliesData:_,doxaRegionsData:v,resourcesData:T,stats:S,loadData:w,loadRegionsData:N,getDataByLanguageFamily:$,getDataByRegion:f,getPeopleGroupsByFamily:m,getPeopleGroupsByRegion:k,clearData:E}}function pb(e){return typeof window<"u"&&!!window.mapboxgl&&e instanceof window.mapboxgl.Map}function Ps(e){return pb(e)?{"circle-emissive-strength":1}:{}}const $c={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 Ms(e="standard"){return $c.circleRadius[e]||$c.circleRadius.standard}function hb(e={}){const{getMap:t=()=>null,mapId:n="unknown",getLanguageFamilyColor:o=()=>"#999999",getNormalizedPeopleGroups:a=()=>[]}=e,s=Re("uiStore"),{t:i,locale:r}=ea(),l=ce([]);function c(f){const m=o(f.languageFamily),k="https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg";let E=f.imageUrl;(!E||E.includes("NoImageAvailable"))&&(E=k);const I=(f.name||"U")[0].toUpperCase(),P=["#e74c3c","#3498db","#2ecc71","#f39c12","#9b59b6","#1abc9c","#e67e22","#34495e"],y=I.charCodeAt(0)%P.length;return` +`,"pin-hint"),(T,S)=>s.value?(Ne(),Fe("div",{key:0,class:fn(["pin-hint",{dark:o.value}]),role:"status"},[me("span",Tm,[S[0]||(S[0]=me("span",{class:"pin-hint-dot","aria-hidden":"true"},null,-1)),ot(" "+ct(a.value)+" ",1),me("button",{class:"pin-hint-x",type:"button","aria-label":"Dismiss hint",onClick:_},"×")])],2)):ln("",!0)}};let $m=0;const Lm=Wa("ui",{state:()=>({_storeInstanceId:++$m,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(n=>n.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 n=this.isDarkTheme;document.documentElement.setAttribute("data-theme",n?"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:n="info",duration:o=this.toastDuration,action:a=null,persistent:s=!1}=e,i={id:this.nextToastId++,message:t,type:n,duration:o,action:a,persistent:s,createdAt:Date.now()};return this.toasts.push(i),!s&&o>0&&setTimeout(()=>{this.removeToast(i.id)},o),i.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(n=>n.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(n=>{for(const o of n)this.updateWindowSize(o.contentRect.width,o.contentRect.height)}).observe(document.documentElement),window.matchMedia&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",n=>{this.theme==="auto"&&document.documentElement.setAttribute("data-theme",n.matches?"dark":"light")}),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",n=>{this.reducedMotion=n.matches,document.documentElement.setAttribute("data-reduced-motion",n.matches)}))}}}),Cm=Wa("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",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,n={}){let o=1.5;n.zoom!==void 0?o=n.zoom:t&&typeof t.getZoom=="function"&&(o=t.getZoom());let a=[0,0];if(n.center)a=n.center;else if(t&&typeof t.getCenter=="function"){const s=t.getCenter();s&&(a=[s.lng,s.lat])}this.maps[e]={instance:t,config:n,isReady:!1,zoom:o,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 n=this.maps[e];n&&Object.assign(n,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)},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()}}}),wm=Wa("data",{state:()=>({sources:{},loadingStates:{}}),actions:{async load(e,t){if(!this.sources[e]){this.loadingStates[e]={isLoading:!0,error:null};try{const n=await t();this.sources[e]=xn({features:n,timestamp:Date.now()}),this.loadingStates[e]={isLoading:!1,error:null}}catch(n){console.error(`[dataStore] Failed to load source "${e}":`,n),this.loadingStates[e]={isLoading:!1,error:n}}}},clearSource(e){delete this.sources[e],delete this.loadingStates[e]},cacheSourceData(e,t){this.sources[e]=xn({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 n;return((n=e.sources[t])==null?void 0:n.features)??null},isLoading:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.isLoading)??!1},getError:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.error)??null}}}),tc={_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","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}}},Nm=(e,t)=>{const n=e.__vccOpts||e;for(const[o,a]of t)n[o]=a;return n},Im={class:"profile-loader"},Pm={key:0,class:"profile-error"},Mm={key:1,class:"profile-error"},Rm=Nm({__name:"ProfileLoader",props:{profileConfig:{type:String,default:""}},setup(e){var $;const t=e,n=be(()=>{if(!t.profileConfig)return null;try{return JSON.parse(t.profileConfig)}catch{return console.error("[ProfileLoader] Invalid profile-config JSON:",t.profileConfig),null}}),o=be(()=>{var f;return((f=n.value)==null?void 0:f.profile)||null}),a=be(()=>{var f;return((f=n.value)==null?void 0:f.tk)||""}),s=be(()=>{var f;return((f=n.value)==null?void 0:f.dataSource)||tc.activeSource||"doxa-csv"}),i=be(()=>{var f;return((f=n.value)==null?void 0:f.colorSet)||"default"}),r=be(()=>{var f;return((f=n.value)==null?void 0:f.qa)===!0}),l=be(()=>{var f;return((f=n.value)==null?void 0:f.pinHint)!==!1}),c=be(()=>{var m,k;const f=(((m=n.value)==null?void 0:m.locale)||((k=n.value)==null?void 0:k.lang)||"").split("-")[0].toLowerCase();return ec.includes(f)?f:""}),u=Re("appI18n",null);Iu(()=>{c.value&&u&&(u.global.locale.value=c.value)});const p=be(()=>{var f,m;return c.value||((m=(f=u==null?void 0:u.global)==null?void 0:f.locale)==null?void 0:m.value)||"en"}),_=be(()=>{var f;return((f=n.value)==null?void 0:f.instanceId)||"doxa-map-"+Math.random().toString(36).slice(2,9)}),v=Re("profileModules",null);if(!v)throw new Error('[ProfileLoader] No profileModules provided. Bundle entry must `app.provide("profileModules", import.meta.glob("./*.vue"))`');const T=be(()=>{if(!o.value)return null;const f=`./${o.value}.vue`;return v[f]?Du(v[f]):(console.error(`[ProfileLoader] Profile not found: "${o.value}". Available:`,Object.keys(v)),null)});pt("mapboxToken",a),pt("dataSource",s),pt("colorSet",i),pt("profileConfig",n),pt("instanceId",_),pt("lang",p);const S=Lm(),w=Cm(),N=wm();try{const f=typeof localStorage<"u"?localStorage.getItem("theme"):null;f&&(($=S.setTheme)==null||$.call(S,f))}catch{}return pt("uiStore",S),pt("mapStore",w),pt("dataStore",N),(f,m)=>(Ne(),Fe("div",Im,[n.value?T.value?(Ne(),xo(Vu(T.value),{key:2})):(Ne(),Fe("div",Mm,[me("p",null,[m[1]||(m[1]=ot("⚠️ Profile ",-1)),me("strong",null,'"'+ct(o.value)+'"',1),m[2]||(m[2]=ot(" not found.",-1))])])):(Ne(),Fe("div",Pm,[...m[0]||(m[0]=[me("p",null,[ot("⚠️ "),me("strong",null,"doxa-map"),ot(": missing or invalid "),me("code",null,"profile-config"),ot(" prop.")],-1),me("p",null,[ot("Example: "),me("code",null,`profile-config='{"profile":"example-map","tk":"pk.eyJ..."}'`)],-1)])])),T.value&&r.value?(Ne(),xo(km,{key:3})):ln("",!0),T.value&&l.value?(Ne(),xo(Em,{key:4})):ln("",!0)]))}},[["__scopeId","data-v-5e13684a"]]),nc="adoptionStatus",Kt={notAdopted:"#e74c3c",hasAdoption:"#22c55e"},Fm=Kt,hs={notAdopted:"Needs Adoption",hasAdopted:"Has Adoption"},Dm=hs;function oc(e){var o;const t=e.adoptionStatus??((o=e._raw)==null?void 0:o.adopted_by_churches);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?Kt.hasAdoption:Kt.notAdopted}function ms({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","adoptionStatus"]:["get","adoptionStatus"];return["case",["==",t,!0],Kt.hasAdoption,["==",t,1],Kt.hasAdoption,Kt.notAdopted]}const ac=ms,Om=Object.freeze(Object.defineProperty({__proto__:null,ADOPTION_COLORS:Fm,ADOPTION_LABELS:Dm,LABELS:hs,PALETTE:Kt,PROPERTY_KEY:nc,applyColor:ms,buildColorExpression:ac,default:{name:"Adoption Progress",propertyKey:nc,palette:Kt,colors:Kt,labels:hs,getColor:oc,applyColor:ms,buildColorExpression:ac},getColor:oc},Symbol.toStringTag,{value:"Module"})),sc="engagementStatus",Ut={notEngaged:"#e74c3c",hasEngagement:"#22c55e"},xm=Ut,bs={notEngaged:"Unengaged",hasEngagement:"Engaged"},jm=bs;function ic(e){var o;const t=e.engagementStatus??((o=e._raw)==null?void 0:o.people_committed);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?Ut.hasEngagement:Ut.notEngaged}function _s({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","engagementStatus"]:["get","engagementStatus"];return["case",["==",t,!0],Ut.hasEngagement,["==",t,1],Ut.hasEngagement,Ut.notEngaged]}const rc=_s,Bm=Object.freeze(Object.defineProperty({__proto__:null,ENGAGEMENT_COLORS:xm,ENGAGEMENT_LABELS:jm,LABELS:bs,PALETTE:Ut,PROPERTY_KEY:sc,applyColor:_s,buildColorExpression:rc,default:{name:"Engagement Progress",propertyKey:sc,palette:Ut,colors:Ut,labels:bs,getColor:ic,applyColor:_s,buildColorExpression:rc},getColor:ic},Symbol.toStringTag,{value:"Module"})),ys="languageFamily",Km="#000000",Zt={"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","Sign Language":"#212121",Creole:"#9575cd","Mixed language":"#a1887f","Language isolate":"#90a4ae",Unknown:"#000000"},Um=Zt;function ta(e){return Zt[e]||Km}const zm=(()=>{const e=n=>String(n||"").toLowerCase().trim(),t={};for(const n of Object.keys(Zt))t[e(n)]=n;return t})();function As(e){if(!e)return"Unknown";const t=String(e).trim();return zm[t.toLowerCase()]||t}function lc(e){var t;return ta(e.languageFamily||((t=e._normalized)==null?void 0:t.languageFamily))}function Ss(){const e=["match",["get",ys]];return Object.entries(Zt).forEach(([t,n])=>{e.push(t,n)}),e.push("#95a5a6"),e}const cc=Ss,Gm=Object.freeze(Object.defineProperty({__proto__:null,LANGUAGE_FAMILY_COLORS:Um,PALETTE:Zt,PROPERTY_KEY:ys,applyColor:Ss,buildColorExpression:cc,canonicalFamilyName:As,default:{name:"Language Family",propertyKey:ys,palette:Zt,colors:Zt,getColor:lc,applyColor:Ss,buildColorExpression:cc,getLanguageFamilyColor:ta,canonicalFamilyName:As},defaultFamilyColor:"#95a5a6",getColor:lc,getLanguageFamilyColor:ta,languageFamilyColors:Zt},Symbol.toStringTag,{value:"Module"})),uc="peoplePraying",Cn=144,Qt={noPrayer:"#e74c3c",hasPrayer:"#f39c12",fullPrayer:"#22c55e"},qm=Qt,vs={noPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayer:"Has Full Prayer Coverage"},Hm=vs;function na(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,n=Number(t)||0;return n>=Cn?"fullPrayer":n>0?"hasPrayer":"noPrayer"}function ks(e){return Qt[na(e)]}function gc(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;return t!==null&&t>0}function dc(e){return na(e)==="fullPrayer"}function fc(e){return ks(e)}function Ts({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","peoplePraying"]:["get","peoplePraying"];return["case",[">=",t,Cn],Qt.fullPrayer,[">",t,0],Qt.hasPrayer,Qt.noPrayer]}const pc=Ts,Vm=Object.freeze(Object.defineProperty({__proto__:null,FULL_PRAYER_THRESHOLD:Cn,LABELS:vs,PALETTE:Qt,PRAYER_COLORS:qm,PRAYER_LABELS:Hm,PROPERTY_KEY:uc,applyColor:Ts,buildColorExpression:pc,checkHasFullPrayer:dc,checkHasPrayer:gc,default:{name:"Prayer Progress",propertyKey:uc,palette:Qt,colors:Qt,labels:vs,threshold:Cn,getColor:fc,applyColor:Ts,buildColorExpression:pc,getPrayerLevel:na,getPrayerColor:ks,checkHasPrayer:gc,checkHasFullPrayer:dc},getColor:fc,getPrayerColor:ks,getPrayerLevel:na},Symbol.toStringTag,{value:"Module"})),hc="religion",Es="#94a3b8",$s={C:"Christianity",M:"Islam",H:"Hinduism",B:"Buddhism",E:"Ethnoreligion",J:"Judaism",S:"Sikhism",N:"Unaffiliated",O:"Other",U:"Unknown"},lt={C:"#3b82f6",M:"#ef4444",H:"#f59e0b",B:"#facc15",E:"#84cc16",J:"#a855f7",S:"#ec4899",N:"#71717a",O:"#ff6b2b",U:"#94a3b8"};function mc(e){if(!e||typeof e!="string")return"U";const t=e.charAt(0).toUpperCase();return $s[t]?t:"U"}function bc(e){var n,o,a;const t=(e==null?void 0:e.religion)||((o=(n=e==null?void 0:e._raw)==null?void 0:n.religion)==null?void 0:o.value)||((a=e==null?void 0:e._raw)==null?void 0:a.religion);return lt[mc(t)]||Es}function Ls(){return["match",["slice",["coalesce",["get","religion"],""],0,1],"C",lt.C,"M",lt.M,"H",lt.H,"B",lt.B,"E",lt.E,"J",lt.J,"S",lt.S,"N",lt.N,"O",lt.O,Es]}const _c=Ls,Wm=Object.assign({"./adoption.js":Om,"./engagement.js":Bm,"./language-family.js":Gm,"./prayer-progress.js":Vm,"./religion.js":Object.freeze(Object.defineProperty({__proto__:null,PALETTE:lt,PROPERTY_KEY:hc,RELIGION_FAMILIES:$s,applyColor:Ls,buildColorExpression:_c,default:{name:"Religion",propertyKey:hc,palette:lt,families:$s,getColor:bc,applyColor:Ls,buildColorExpression:_c,fallback:Es},getColor:bc,getReligionFamily:mc},Symbol.toStringTag,{value:"Module"}))}),Ym=e=>e.replace(/-([a-z0-9])/g,(t,n)=>n.toUpperCase()),Jm=e=>e.replace(/-/g,"_").toUpperCase(),oa={...{STATUS:"status",CUSTOM:"custom"}},Cs={};function yc(e){for(const t of Object.keys(e).sort()){const n=t.split("/").pop().replace(/\.js$/,"");if(n.startsWith("_")||n.startsWith("."))continue;const o=e[t].default;if(!o)continue;const a=Ym(n);oa[Jm(n)]=a,Cs[a]=o}}yc(Wm);function Xm(e){e&&yc(e)}function ws(e){return Cs[e]||Cs[oa.LANGUAGE_FAMILY]}function Ac(e,t={}){return ws(e).applyColor(t)}const Zm=Object.assign({"./demo-map.vue":()=>Ic(()=>Promise.resolve().then(()=>Mb),void 0)});Xm(Object.assign({"./src/colors/single-color.js":Mc}));const Qm=ad(Rm,{configureApp(e){e.use(ud());const t=fm();e.use(t),e.provide("appI18n",t),e.provide("profileModules",Zm)}});typeof customElements<"u"&&!customElements.get("demo-map")&&customElements.define("demo-map",Qm);const eb="rgba(120, 128, 134, 0.28)",Sc="36px",vc=()=>{};function tb(e,t={}){const{enabled:n=!0}=t;if(!n||!e)return vc;const o=Array.from(e.querySelectorAll(".map-scroll-edge"));if(!o.length)return vc;const a=$=>$.classList.contains("map-scroll-edge--left");for(const $ of o)$.style.background=`linear-gradient(${a($)?"to right":"to left"}, ${eb} ${Sc}, transparent ${Sc})`,$.style.opacity="0",$.style.transition="opacity 0.16s ease",$.style.userSelect="none",$.style.webkitUserSelect="none";const s=$=>{$.style.opacity="1"},i=$=>{$.style.opacity="0"},r=()=>o.find($=>!a($))||null,l=new Set;let c=!1,u=null;const p=()=>{for(const $ of o)l.has($)||i($)},_=()=>{const $=r();$&&(s($),u&&clearTimeout(u),u=setTimeout(p,250))},v=()=>_(),T=$=>{if(!($.touches&&$.touches.length===1))return;const f=$.target;f&&f.classList&&f.classList.contains("map-scroll-edge")||_()},S=()=>{u&&clearTimeout(u),p()};e.addEventListener("wheel",v,{passive:!0}),e.addEventListener("touchmove",T,{passive:!0}),e.addEventListener("touchend",S,{passive:!0}),e.addEventListener("touchcancel",S,{passive:!0});const w=()=>{c||_()};typeof window<"u"&&window.addEventListener("scroll",w,{passive:!0});const N=[];for(const $ of o){const f=()=>{l.add($),s($)},m=()=>{l.delete($),i($)},k=()=>{c=!0,s($)},E=()=>{c=!1,i($)};$.addEventListener("mouseenter",f),$.addEventListener("mouseleave",m),$.addEventListener("touchstart",k,{passive:!0}),$.addEventListener("touchend",E,{passive:!0}),N.push(()=>{$.removeEventListener("mouseenter",f),$.removeEventListener("mouseleave",m),$.removeEventListener("touchstart",k),$.removeEventListener("touchend",E)})}return function(){u&&(clearTimeout(u),u=null),e.removeEventListener("wheel",v),e.removeEventListener("touchmove",T),e.removeEventListener("touchend",S),e.removeEventListener("touchcancel",S),typeof window<"u"&&window.removeEventListener("scroll",w);for(const f of N)f();for(const f of o)i(f)}}const wn={mapbox:{global:"mapboxgl",js:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js",css:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.css"},maplibre:{global:"maplibregl",js:"https://cdn.jsdelivr.net/npm/maplibre-gl@5/dist/maplibre-gl.js",css:"https://cdn.jsdelivr.net/npm/maplibre-gl@5/dist/maplibre-gl.css"}},nb=wn.mapbox.css,ob="https://tiles.openfreemap.org/styles/liberty";function Ns(e){var n;const t=((n=wn[e])==null?void 0:n.global)||wn.mapbox.global;return typeof window<"u"?window[t]:void 0}async function ab(e){const t=wn[e]||wn.mapbox;if(Ns(e)||typeof document>"u")return;if(!document.querySelector(`link[href="${t.css}"]`)){const o=document.createElement("link");o.rel="stylesheet",o.href=t.css,document.head.appendChild(o)}const n=document.querySelector(`script[src="${t.js}"]`);if(n){if(Ns(e))return;await new Promise(o=>{n.addEventListener("load",o,{once:!0}),n.addEventListener("error",o,{once:!0})});return}await new Promise((o,a)=>{const s=document.createElement("script");s.src=t.js,s.async=!1,s.addEventListener("load",o,{once:!0}),s.addEventListener("error",()=>a(new Error(`[useMapInstance] Failed to load ${e} engine script`)),{once:!0}),document.head.appendChild(s)})}async function sb(e,t){const n=e.getRootNode();if(!(n instanceof ShadowRoot))return;const o=i=>new Promise(r=>setTimeout(r,i)),a=n.querySelector(`link[href="${t}"]`);if(a){if(a.sheet)return;await Promise.race([new Promise(i=>{a.addEventListener("load",i,{once:!0}),a.addEventListener("error",i,{once:!0})}),o(2e3)]);return}const s=document.createElement("link");s.rel="stylesheet",s.href=t,await Promise.race([new Promise(i=>{s.addEventListener("load",i,{once:!0}),s.addEventListener("error",i,{once:!0}),n.prepend(s)}),o(2e3)])}function ib(e){return typeof e=="string"&&/^https?:\/\//.test(e)?e:ob}const rb=85.0511,kc=-2,lb=0,cb=-60;function Tc(e){return(1-Math.log(Math.tan(Math.PI/4+e*Math.PI/180/2))/Math.PI)/2}function ub(e,t,n,o){if(!e||e<=0||!t||t<=0)return lb;const a=Math.log2(e/512),s=Tc(o)-Tc(rb),i=Math.log2(t/(512*s)),r=Math.max(a,i);return Math.max(kc,Math.min(r,(n??18)-1))}function gb({containerRef:e,accessToken:t,style:n,provider:o="mapbox",center:a=[20,10],zoom:s=2,minZoom:i=void 0,maxZoom:r=18,pitch:l=0,bearing:c=0,renderWorldCopies:u=!0,showEdgeBorders:p=!0,southCutoff:_=cb,maxBounds:v=void 0}){const T=ce(null),S=ce(!1);let w=null,N=null;const $=o==="maplibre";async function f(){var Q;if(!e.value){console.error("containerRef.value is null — call initializeMap() inside onMounted()");return}await ab(o);const k=Ns(o);if(!k){console.error(`[useMapInstance] ${$?"maplibregl":"mapboxgl"} is not available. Add the ${$?"MapLibre":"Mapbox"} GL JS script to your page.`);return}if(!$){if(!t){console.error('No Mapbox access token provided. Pass "tk" in profile-config JSON.');return}if(!t.startsWith("pk.")){console.error('Mapbox token looks invalid (expected "pk." prefix). Got:',t.slice(0,10)+"...");return}}await sb(e.value,$?wn.maplibre.css:nb),await new Promise(te=>requestAnimationFrame(te));const E=e.value,I=E.clientWidth,P=E.clientHeight;if(I===0||P===0){console.error(`[useMapInstance] Container has ZERO dimensions (${I}×${P}). Map will be invisible. Check that parent elements have CSS sizing.`);let te=E.parentElement,B=0;for(;te&&B<5;)te=te.parentElement,B++}const y=t;$||(k.accessToken=y);const U=()=>typeof window<"u"&&window.innerWidth>=1024,z=(te,B)=>{if(!U())return kc;const Y=ub(te,B,r,_);return typeof i=="number"?Math.max(i,Y):Y},K=z(E.clientWidth,E.clientHeight);$?T.value=new k.Map({container:e.value,style:ib(n),center:a,zoom:s,minZoom:K,maxZoom:r,pitch:l,bearing:c,dragRotate:!1,renderWorldCopies:u,...v?{maxBounds:v}:{},attributionControl:!1}):T.value=new k.Map({accessToken:y,container:e.value,style:n,center:a,zoom:s,minZoom:K,maxZoom:r,pitch:l,bearing:c,dragRotate:!1,touchPitch:!1,renderWorldCopies:u,...v?{maxBounds:v}:{},attributionControl:!1});try{T.value.touchZoomRotate.disableRotation()}catch{}N=tb(((Q=e.value)==null?void 0:Q.parentElement)||null,{enabled:p}),w=()=>{const te=T.value;if(!te)return;const B=z(E.clientWidth,E.clientHeight);te.setMinZoom(B),te.getZoom(){requestAnimationFrame(()=>{var te;(te=T.value)==null||te.resize(),T.value&&T.value.setMinZoom(z(E.clientWidth,E.clientHeight)),S.value=!0})})}function m(){T.value&&(w&&(T.value.off("resize",w),typeof window<"u"&&(window.removeEventListener("resize",w),window.removeEventListener("orientationchange",w)),w=null),N&&(N(),N=null),T.value.remove(),T.value=null,S.value=!1)}return{map:T,isMapReady:S,initializeMap:f,destroy:m}}const db=["mapbox","maplibre"],Ec="mapbox";function fb(e){return e&&typeof e=="object"&&"value"in e&&!("provider"in e)&&!("profile"in e)?e.value:e}function pb(e){const t=fb(e),n=t==null?void 0:t.provider,o=typeof location<"u"?new URLSearchParams(location.search).get("provider"):void 0,a=typeof window<"u"?window.MAP_PROVIDER:void 0,s=String(n||o||a||Ec).toLowerCase().trim();return db.includes(s)?s:Ec}function hb(e){return typeof window<"u"&&!!window.mapboxgl&&e instanceof window.mapboxgl.Map}function Is(e){return hb(e)?{"circle-emissive-strength":1}:{}}const We={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"},$c={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 Ps(e){return e==null?"":typeof e=="object"?e.label||e.value||"":String(e)}const mb=[[/ sign language$/i,"Sign Language"]];function bb(e){var r,l;const t=Ps(e.languageFamily);if(t)return t;const n=String(((l=(r=e._raw)==null?void 0:r.primary_language)==null?void 0:l.value)||(e.language&&typeof e.language=="object"?e.language.value:"")||"").trim().toLowerCase();if(n&&$c[n])return $c[n];const o=Ps(e.language||e.primary_language);if(!o||typeof o!="string")return"";const a=o.trim(),s=a.split(",").map(c=>c.trim()).filter(Boolean);if(s.length>=2){const c=[...s].reverse().join(" ");if(We[c])return We[c];if(s.length>=3){const u=[s[1],s[0]].join(" ");if(We[u])return We[u]}}if(We[a])return We[a];const i=a.replace(/\s*\(.*?\)\s*$/,"").trim();if(i!==a&&We[i])return We[i];for(const[c,u]of mb)if(c.test(a))return u;return""}function _b(e){const{mapId:t="unknown",dataSourceId:n="doxa-csv",dataSourceManager:o=null,dataStore:a=null,markRaw:s=I=>I}=e;o||console.error("useMapData: dataSourceManager is required!");const i=ce(!1),r=ce(null),l=ce(!1),c=ce([]),u=ce([]),p=ce(null),_=ce([]),v=ce([]),T=ce([]),S=ce(null);async function w(){if(!o)throw new Error("dataSourceManager is required for useMapData");i.value=!0,r.value=null;try{if(await o.init(),a&&a.hasSourceData&&a.hasSourceData(n)){const B=a.getSourceData(n);u.value=s(B.normalizedData||[])}else{const B=await o.setActiveSource(n);for(const Y of B){const X=Ps(Y.language||Y.primary_language);X&&(Y.language=X);const re=bb(Y);Y.languageFamily=As(re)}u.value=s(B),a&&a.cacheSourceData&&a.cacheSourceData(n,{normalizedData:B,timestamp:Date.now()})}c.value=s(u.value.map(B=>({id:B.uniqueId,slug:B.slug||"",rop3:B.peopleGroupId,peopleId3:B.peopleId3,name:B.name,language:B.language,languageFamily:B.languageFamily,country:B.country,population:B.population,status:B.engagementStatus||B.status,latitude:B.latitude,longitude:B.longitude,lng:B.longitude,lat:B.latitude,description:B.description,imageUrl:B.imageUrl,doxaRegion:B.doxaRegion||B.wagfRegion||"",peoplePraying:B.peoplePraying??null,_normalized:B})));const I=o.getDataByLanguageFamily();_.value=Object.entries(I).map(([B,Y])=>{const X=Y.reduce((re,xe)=>{const H=parseInt(xe.population)||0;return re+H},0);return{name:B,count:Y.length,peopleGroupCount:Y.length,population:X,groups:Y}}).sort((B,Y)=>Y.count-B.count);const P=o.getDataByRegion();v.value=Object.entries(P).map(([B,Y])=>{const X=Y.reduce((re,xe)=>{const H=parseInt(xe.population)||0;return re+H},0);return{name:B,count:Y.length,peopleGroupCount:Y.length,population:X,groups:Y}}).sort((B,Y)=>B.name.localeCompare(Y.name));const y={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(B=>{const Y=parseInt(B.population)||0;let X=!1;B.bible==="Available"&&(y.bible.count++,y.bible.population+=Y,y.bible.groups.push(B),X=!0),B.jesusFilm==="Available"&&(y.jesusFilm.count++,y.jesusFilm.population+=Y,y.jesusFilm.groups.push(B),X=!0),B.radio==="Available"&&(y.radio.count++,y.radio.population+=Y,y.radio.groups.push(B),X=!0),B.gospel==="Available"&&(y.gospel.count++,y.gospel.population+=Y,y.gospel.groups.push(B),X=!0),B.audio==="Available"&&(y.audio.count++,y.audio.population+=Y,y.audio.groups.push(B),X=!0),B.stories==="Available"&&(y.stories.count++,y.stories.population+=Y,y.stories.groups.push(B),X=!0),X?(y.hasResources.count++,y.hasResources.population+=Y,y.hasResources.groups.push(B)):(y.noResources.count++,y.noResources.population+=Y,y.noResources.groups.push(B))});const U=u.value.length,z=u.value.reduce((B,Y)=>B+(parseInt(Y.population)||0),0),K={bible:"Bible",jesusFilm:"Jesus Film",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",hasResources:"Has Resources",noResources:"No Resources"},Q={bible:{count:U-y.bible.count,population:z-y.bible.population},jesusFilm:{count:U-y.jesusFilm.count,population:z-y.jesusFilm.population},radio:{count:U-y.radio.count,population:z-y.radio.population},gospel:{count:U-y.gospel.count,population:z-y.gospel.population},audio:{count:U-y.audio.count,population:z-y.audio.population},stories:{count:U-y.stories.count,population:z-y.stories.population}},te="#2c3e50";return T.value=[{name:K.bible,key:"bible",count:y.bible.count,population:y.bible.population,isParent:!0,children:[{name:"No Bible",key:"noBible",count:Q.bible.count,population:Q.bible.population,color:te}]},{name:K.jesusFilm,key:"jesusFilm",count:y.jesusFilm.count,population:y.jesusFilm.population,isParent:!0,children:[{name:"No Jesus Film",key:"noJesusFilm",count:Q.jesusFilm.count,population:Q.jesusFilm.population,color:te}]},{name:K.radio,key:"radio",count:y.radio.count,population:y.radio.population,isParent:!0,children:[{name:"No Radio",key:"noRadio",count:Q.radio.count,population:Q.radio.population,color:te}]},{name:K.gospel,key:"gospel",count:y.gospel.count,population:y.gospel.population,isParent:!0,children:[{name:"No Gospel",key:"noGospel",count:Q.gospel.count,population:Q.gospel.population,color:te}]},{name:K.audio,key:"audio",count:y.audio.count,population:y.audio.population,isParent:!0,children:[{name:"No Audio",key:"noAudio",count:Q.audio.count,population:Q.audio.population,color:te}]},{name:K.stories,key:"stories",count:y.stories.count,population:y.stories.population,isParent:!0,children:[{name:"No Stories",key:"noStories",count:Q.stories.count,population:Q.stories.population,color:te}]},{name:K.hasResources,key:"hasResources",count:y.hasResources.count,population:y.hasResources.population,isParent:!0,children:[{name:K.noResources,key:"noResources",count:y.noResources.count,population:y.noResources.population,color:te}]}],S.value=o.getStats(),l.value=!0,{peopleGroups:c.value,normalizedPeopleGroups:u.value,languageFamiliesData:_.value,doxaRegionsData:v.value,resourcesData:T.value,stats:S.value}}catch(I){throw console.error(`Failed to load data for map "${t}":`,I),r.value=I.message||"Failed to load data",I}finally{i.value=!1}}async function N(){var I,P,y;try{const U={},z=u.value||[];for(const K of z){const Q=K.countryIso||((P=(I=K._raw)==null?void 0:I.country_code)==null?void 0:P.value)||"",te=(y=K._raw)==null?void 0:y.wagf_region,B=K.doxaRegion||K.wagfRegion||(te&&typeof te=="object"?te.value:"")||"";Q&&B&&!U[Q]&&(U[Q]=B)}return p.value={isoToRegion:U},p.value}catch(U){throw console.error(`Error building regions data for map "${t}":`,U),r.value=U.message||"Failed to build regions",U}}function $(){return o?o.getDataByLanguageFamily():{}}function f(){return o?o.getDataByRegion():{}}function m(I){return $()[I]||[]}function k(I){return f()[I]||[]}function E(){c.value=[],u.value=[],p.value=null,_.value=[],v.value=[],T.value=[],S.value=null,l.value=!1,r.value=null}return{isLoading:i,isInitialized:l,error:r,peopleGroups:c,normalizedPeopleGroups:u,regionsData:p,languageFamiliesData:_,doxaRegionsData:v,resourcesData:T,stats:S,loadData:w,loadRegionsData:N,getDataByLanguageFamily:$,getDataByRegion:f,getPeopleGroupsByFamily:m,getPeopleGroupsByRegion:k,clearData:E}}const Lc={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 Ms(e="standard"){return Lc.circleRadius[e]||Lc.circleRadius.standard}function yb(e={}){const{getMap:t=()=>null,mapId:n="unknown",getLanguageFamilyColor:o=()=>"#999999",getNormalizedPeopleGroups:a=()=>[]}=e,s=Re("uiStore"),{t:i,locale:r}=ea(),l=ce([]);function c(f){const m=o(f.languageFamily),k="https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg";let E=f.imageUrl;(!E||E.includes("NoImageAvailable"))&&(E=k);const I=(f.name||"U")[0].toUpperCase(),P=["#e74c3c","#3498db","#2ecc71","#f39c12","#9b59b6","#1abc9c","#e67e22","#34495e"],y=I.charCodeAt(0)%P.length;return`
${U}

- `}function p(f){const m=t();if(!m)return;const k=f||"language-family-pins";if(!m.getLayer(k))return;const E=I=>{try{const P=I.features[0],y=P.properties,U=P.geometry.coordinates.slice();for(;Math.abs(I.lngLat.lng-U[0])>180;)U[0]+=I.lngLat.lng>U[0]?360:-360;if(s&&s.legendMode!==void 0){s.selectPeopleGroup(P),s.isMobile&&s.legendState==="collapsed"&&s.setLegendState("open"),s.isMobile||window.dispatchEvent(new CustomEvent("doxa:openDesktopLegend",{detail:{mapId:n}}));return}new mapboxgl.Popup({maxWidth:"320px",className:"people-group-popup"}).setLngLat(U).setHTML(c(y)).addTo(m)}catch(P){console.error(` [${n}] Pin click handler error:`,P)}};m.on("click",k,E),l.value.push({event:"click",layer:k,handler:E})}function _(){const f=t();if(!f)return;const m="regions-fill";if(!f.getLayer(m))return;const k=E=>{const I=["language-family-pins","language-family-pins-hitbox","people-groups-pins"];for(const P of I)if(f.getLayer(P)){const y=f.queryRenderedFeatures(E.point,{layers:[P]});if(y&&y.length>0)return}if(E.features&&E.features.length>0){const P=E.features[0].properties;new mapboxgl.Popup().setLngLat(E.lngLat).setHTML(u(P)).addTo(f)}};f.on("click",m,k),l.value.push({event:"click",layer:m,handler:k})}function v(){const f=t();if(!f)return;const m="clusters";if(!f.getLayer(m))return;const k=E=>{const I=f.queryRenderedFeatures(E.point,{layers:[m]});if(!I.length)return;const P=I[0].properties.cluster_id,y=I[0].source;f.getSource(y).getClusterExpansionZoom(P,(U,z)=>{U||f.easeTo({center:I[0].geometry.coordinates,zoom:z})})};f.on("click",m,k),l.value.push({event:"click",layer:m,handler:k})}function T(f){const m=t();if(!m||!m.getLayer(f))return;const k=()=>{m.getCanvas().style.cursor="pointer"},E=()=>{m.getCanvas().style.cursor=""};m.on("mouseenter",f,k),m.on("mouseleave",f,E),l.value.push({event:"mouseenter",layer:f,handler:k}),l.value.push({event:"mouseleave",layer:f,handler:E})}function S(){p(),T("language-family-pins"),p("language-family-pins-hitbox"),T("language-family-pins-hitbox"),v(),T("clusters")}function w(){_(),T("regions-fill")}function N(){const f=t();f&&(f.getLayer("language-family-pins")&&S(),f.getLayer("regions-fill")&&w(),f.getLayer("people-groups-pins")&&(p(),T("people-groups-pins")))}function $(){const f=t();if(f){for(const{event:m,layer:k,handler:E}of l.value)try{f.off(m,k,E)}catch{}l.value=[]}}return{attachAllEventHandlers:N,attachLanguageFamilyEvents:S,attachRegionEvents:w,attachPinClickHandler:p,attachRegionClickHandler:_,attachClusterClickHandler:v,attachCursorHandlers:T,detachAllEventHandlers:$,generatePinPopupContent:c,generateRegionPopupContent:u,registeredHandlers:l}}const Rs=[">",["to-number",["get","peoplePraying"],0],0],Fs={0:.25,8:.4,14:.5},Ds={0:.1,8:.18,14:.22},mb=["interpolate",["linear"],["zoom"],0,["case",Rs,Fs[0],Ds[0]],8,["case",Rs,Fs[8],Ds[8]],14,["case",Rs,Fs[14],Ds[14]]],bb=[[/ sign language$/i,"Sign Language"]];function _b(e){if(!e||typeof e!="string")return null;const t=e.trim(),n=t.split(",").map(a=>a.trim()).filter(Boolean);if(n.length>=2){const a=[...n].reverse().join(" ");if(We[a])return We[a];if(n.length>=3){const s=[n[1],n[0]].join(" ");if(We[s])return We[s]}}if(We[t])return We[t];const o=t.replace(/\s*\(.*?\)\s*$/,"").trim();if(o!==t&&We[o])return We[o];for(const[a,s]of bb)if(a.test(t))return s;return null}function yb(e={}){const{getMap:t=()=>null,mapId:n="unknown",getLanguageFamilyColor:o=()=>"#999999",getNormalizedPeopleGroups:a=()=>[]}=e,s=hb({getMap:t,mapId:n,getLanguageFamilyColor:o,getNormalizedPeopleGroups:a}),i=ce({languageFamilyPins:!1,regions:!1,peopleGroups:!1,familyConnections:!1}),r=ce({});function l(H,ee="languageFamily"){const J=t();if(!J||!(H!=null&&H.length))return;const pe=Ac(ee),ge=H.map(x=>{var de,Me,h,A,b,M,O,D,q,G,g,d,C,R,V,j,L,F,Z;return{type:"Feature",properties:{uniqueId:x.id||x.uniqueId,slug:x.slug||((de=x._normalized)==null?void 0:de.slug)||"",rop3:x.rop3||x.peopleGroupId,peopleId3:x.peopleId3||"",name:x.name,language:x.language,languageFamily:x.languageFamily||((Me=x._normalized)==null?void 0:Me.languageFamily)||_b(x.language)||"Unknown",affinityBlock:x.affinityBlock||x.affbloc||x.Affbloc||((h=x._normalized)==null?void 0:h.affinityBlock)||"Unknown",affinityBlockLabel:x.affinityBlockLabel||((A=x._normalized)==null?void 0:A.affinityBlockLabel)||"",cluster:x.cluster||((b=x._normalized)==null?void 0:b.cluster)||"",clusterLabel:x.clusterLabel||((M=x._normalized)==null?void 0:M.clusterLabel)||"",peopleGroup:x.peopleGroup||((O=x._normalized)==null?void 0:O.peopleGroup)||"",peopleGroupLabel:x.peopleGroupLabel||((D=x._normalized)==null?void 0:D.peopleGroupLabel)||"",doxaRegion:x.doxaRegion||((q=x._normalized)==null?void 0:q.doxaRegion)||"Unknown",wagfBlock:x.wagfBlock||((G=x._normalized)==null?void 0:G.wagfBlock)||"",wagfBlockLabel:x.wagfBlockLabel||((g=x._normalized)==null?void 0:g.wagfBlockLabel)||"",wagfRegionLabel:x.wagfRegionLabel||((d=x._normalized)==null?void 0:d.wagfRegionLabel)||"",country:x.country,countryIso:x.countryIso,countryIsoLabel:x.countryIsoLabel,countryName:x.countryName,religion:x.religion,religionCode:x.religionCode,religionLabel:x.religionLabel,religionName:x.religionName,population:x.population,status:x.status,description:x.description||"",imageUrl:x.imageUrl||"",peoplePraying:Number(x.peoplePraying??((C=x._normalized)==null?void 0:C.peoplePraying)??0),engagementStatus:x.engagementStatus===!0||x.engagementStatus===1||!1,adoptionStatus:x.adoptionStatus===!0||x.adoptionStatus===1||!1,bible:x.bible||((R=x._normalized)==null?void 0:R.bible)||"Not Available",jesusFilm:x.jesusFilm||((V=x._normalized)==null?void 0:V.jesusFilm)||"Not Available",radio:x.radio||((j=x._normalized)==null?void 0:j.radio)||"Not Available",gospel:x.gospel||((L=x._normalized)==null?void 0:L.gospel)||"Not Available",audio:x.audio||((F=x._normalized)==null?void 0:F.audio)||"Not Available",stories:x.stories||((Z=x._normalized)==null?void 0:Z.stories)||"Not Available",lng:parseFloat(x.longitude||x.lng)||0},geometry:{type:"Point",coordinates:[parseFloat(x.longitude||x.lng),parseFloat(x.latitude||x.lat)]}}}).filter(x=>!isNaN(x.geometry.coordinates[0])&&!isNaN(x.geometry.coordinates[1])),je=.04,Ee=x=>`${x.geometry.coordinates[0]},${x.geometry.coordinates[1]}`,_e=new Map;for(const x of ge){const de=Ee(x);_e.has(de)||_e.set(de,[]),_e.get(de).push(x)}for(const x of _e.values()){if(x.length<2)continue;const[de,Me]=x[0].geometry.coordinates,h=x.length;for(let A=0;A",["to-number",["get","peoplePraying"],0],0],"#ffffff","#1f2937"],"circle-opacity":1,"circle-stroke-opacity":1,"circle-opacity-transition":{duration:250}}}),J.addLayer({id:"language-family-pins-hitbox",type:"circle",source:"language-families",paint:{"circle-radius":Ms("touchTarget"),"circle-color":"rgba(0,0,0,0)","circle-stroke-width":0,"circle-opacity":0}}),i.value.languageFamilyPins=!0,s.attachLanguageFamilyEvents()}function c(H,ee="doxa-regions"){const J=t();if(!J)return;J.getLayer("regions-fill")&&J.removeLayer("regions-fill"),J.getLayer("regions-border")&&J.removeLayer("regions-border"),J.getSource("regions")&&J.removeSource("regions");const pe={africa:"#ff2e2e",asia:"#1a8cff",europe:"#1ee05f","latin_america_&_caribbean":"#FFEB3B",middle_east:"#a83dff","north_america_&_non-spanish_caribbean":"#00e0bd",oceania:"#ff7f11"},ge="#cccccc",je=H&&H.isoToRegion?H.isoToRegion:{},Ee=[],_e={};for(const[de,Me]of Object.entries(je)){const h=pe[String(Me).toLowerCase()];h&&Ee.push(de,h),_e[Me]||(_e[Me]=[]),_e[Me].push(de)}r.value=_e;const Se=Ee.length?["match",["get","iso_3166_1_alpha_3"],...Ee,ge]:ge,x=J.getLayer("language-family-pins-shadow")?"language-family-pins-shadow":J.getLayer("language-family-pins")?"language-family-pins":void 0;J.addSource("regions",{type:"vector",url:"mapbox://mapbox.country-boundaries-v1"}),J.addLayer({id:"regions-fill",type:"fill",source:"regions","source-layer":"country_boundaries",paint:{"fill-color":Se,"fill-opacity":ee==="none"?.1:.7,"fill-antialias":!0,"fill-emissive-strength":1,"fill-opacity-transition":{duration:300}}},x),J.addLayer({id:"regions-border",type:"line",source:"regions","source-layer":"country_boundaries",paint:{"line-color":Se,"line-width":1,"line-opacity":.9,"line-emissive-strength":1}},x),i.value.regions=!0,s.attachRegionEvents()}function u(H,ee){const J=t();if(!J||!H||!(ee!=null&&ee.length))return;p();const pe=ee.filter(Se=>{var de;return(Se.languageFamily||((de=Se._normalized)==null?void 0:de.languageFamily)||"Unknown")===H});if(pe.length<2)return;const ge=o(H),je=[],Ee=15,_e=[...pe].sort((Se,x)=>(Se.longitude||Se.lng)-(x.longitude||x.lng));for(let Se=0;Se<_e.length;Se++){const x=_e[Se],de=x.longitude||x.lng,Me=x.latitude||x.lat;for(let h=Se+1;h=",["get","peoplePraying"],Cn],"#15803d",[">",["get","peoplePraying"],0],"#d97706","rgba(0,0,0,0)"]}const K=[0,5,2,6,4,7,5,9,6,12,7,14,8,18,10,25,12,32,14,40];function Q(H,ee){const J=["interpolate",["linear"],["zoom"]];for(let pe=0;pe",["get","peoplePraying"],0],J=z();if(!I.every(ge=>H.getLayer(ge))){for(const ge of I)if(H.getLayer(ge))try{H.removeLayer(ge)}catch{}H.addLayer({id:m,type:"circle",source:"language-families",filter:ee,paint:{"circle-radius":Q(K,1),"circle-color":J,"circle-blur":.3,"circle-opacity":.45,"circle-stroke-width":0,...Ps(H)}},"language-family-pins");for(const ge of E)H.addLayer({id:ge,type:"circle",source:"language-families",filter:ee,paint:{"circle-radius":Q(K,1),"circle-color":"rgba(0,0,0,0)","circle-blur":0,"circle-opacity":1,"circle-stroke-width":2,"circle-stroke-color":J,"circle-stroke-opacity":0,...Ps(H)}},"language-family-pins")}}function B(){const H=t();if(H)for(const ee of I)H.getLayer(ee)&&H.removeLayer(ee)}function Y(H){const ee=t();if(!ee)return;const J=[">",["get","peoplePraying"],0],pe=H?["all",J,H]:J;for(const ge of I)if(ee.getLayer(ge))try{ee.setFilter(ge,pe)}catch{}}function X(){const H=t();if(H){if(te(),N&&(cancelAnimationFrame(N),N=null),$=!0,H.getLayer("language-family-pins"))try{H.setLayoutProperty("language-family-pins","circle-sort-key",["case",[">=",["get","peoplePraying"],Cn],1,[">",["get","peoplePraying"],0],1,3])}catch{}re()}}function re(){N&&(cancelAnimationFrame(N),N=null);const H=++f;let ee=performance.now();function J(pe){if(!$||H!==f)return;const ge=t();if(!ge||!I.some(Ee=>ge.getLayer(Ee))){N=null;return}const je=(pe-ee)/1e3;for(let Ee=0;Ee{try{const P=I.features[0],y=P.properties,U=P.geometry.coordinates.slice();for(;Math.abs(I.lngLat.lng-U[0])>180;)U[0]+=I.lngLat.lng>U[0]?360:-360;if(s&&s.legendMode!==void 0){s.selectPeopleGroup(P),s.isMobile&&s.legendState==="collapsed"&&s.setLegendState("open"),s.isMobile||window.dispatchEvent(new CustomEvent("doxa:openDesktopLegend",{detail:{mapId:n}}));return}new mapboxgl.Popup({maxWidth:"320px",className:"people-group-popup"}).setLngLat(U).setHTML(c(y)).addTo(m)}catch(P){console.error(` [${n}] Pin click handler error:`,P)}};m.on("click",k,E),l.value.push({event:"click",layer:k,handler:E})}function _(){const f=t();if(!f)return;const m="regions-fill";if(!f.getLayer(m))return;const k=E=>{const I=["language-family-pins","language-family-pins-hitbox","people-groups-pins"];for(const P of I)if(f.getLayer(P)){const y=f.queryRenderedFeatures(E.point,{layers:[P]});if(y&&y.length>0)return}if(E.features&&E.features.length>0){const P=E.features[0].properties;new mapboxgl.Popup().setLngLat(E.lngLat).setHTML(u(P)).addTo(f)}};f.on("click",m,k),l.value.push({event:"click",layer:m,handler:k})}function v(){const f=t();if(!f)return;const m="clusters";if(!f.getLayer(m))return;const k=E=>{const I=f.queryRenderedFeatures(E.point,{layers:[m]});if(!I.length)return;const P=I[0].properties.cluster_id,y=I[0].source;f.getSource(y).getClusterExpansionZoom(P,(U,z)=>{U||f.easeTo({center:I[0].geometry.coordinates,zoom:z})})};f.on("click",m,k),l.value.push({event:"click",layer:m,handler:k})}function T(f){const m=t();if(!m||!m.getLayer(f))return;const k=()=>{m.getCanvas().style.cursor="pointer"},E=()=>{m.getCanvas().style.cursor=""};m.on("mouseenter",f,k),m.on("mouseleave",f,E),l.value.push({event:"mouseenter",layer:f,handler:k}),l.value.push({event:"mouseleave",layer:f,handler:E})}function S(){p(),T("language-family-pins"),p("language-family-pins-hitbox"),T("language-family-pins-hitbox"),v(),T("clusters")}function w(){_(),T("regions-fill")}function N(){const f=t();f&&(f.getLayer("language-family-pins")&&S(),f.getLayer("regions-fill")&&w(),f.getLayer("people-groups-pins")&&(p(),T("people-groups-pins")))}function $(){const f=t();if(f){for(const{event:m,layer:k,handler:E}of l.value)try{f.off(m,k,E)}catch{}l.value=[]}}return{attachAllEventHandlers:N,attachLanguageFamilyEvents:S,attachRegionEvents:w,attachPinClickHandler:p,attachRegionClickHandler:_,attachClusterClickHandler:v,attachCursorHandlers:T,detachAllEventHandlers:$,generatePinPopupContent:c,generateRegionPopupContent:u,registeredHandlers:l}}const Rs=[">",["to-number",["get","peoplePraying"],0],0],Fs={0:.25,8:.4,14:.5},Ds={0:.1,8:.18,14:.22},Ab=["interpolate",["linear"],["zoom"],0,["case",Rs,Fs[0],Ds[0]],8,["case",Rs,Fs[8],Ds[8]],14,["case",Rs,Fs[14],Ds[14]]],Sb=[[/ sign language$/i,"Sign Language"]];function vb(e){if(!e||typeof e!="string")return null;const t=e.trim(),n=t.split(",").map(a=>a.trim()).filter(Boolean);if(n.length>=2){const a=[...n].reverse().join(" ");if(We[a])return We[a];if(n.length>=3){const s=[n[1],n[0]].join(" ");if(We[s])return We[s]}}if(We[t])return We[t];const o=t.replace(/\s*\(.*?\)\s*$/,"").trim();if(o!==t&&We[o])return We[o];for(const[a,s]of Sb)if(a.test(t))return s;return null}function kb(e={}){const{getMap:t=()=>null,mapId:n="unknown",getLanguageFamilyColor:o=()=>"#999999",getNormalizedPeopleGroups:a=()=>[]}=e,s=yb({getMap:t,mapId:n,getLanguageFamilyColor:o,getNormalizedPeopleGroups:a}),i=ce({languageFamilyPins:!1,regions:!1,peopleGroups:!1,familyConnections:!1}),r=ce({});function l(H,ee="languageFamily"){const J=t();if(!J||!(H!=null&&H.length))return;const pe=Ac(ee),ge=H.map(x=>{var de,Me,h,A,b,M,O,D,q,G,g,d,C,R,V,j,L,F,Z;return{type:"Feature",properties:{uniqueId:x.id||x.uniqueId,slug:x.slug||((de=x._normalized)==null?void 0:de.slug)||"",rop3:x.rop3||x.peopleGroupId,peopleId3:x.peopleId3||"",name:x.name,language:x.language,languageFamily:x.languageFamily||((Me=x._normalized)==null?void 0:Me.languageFamily)||vb(x.language)||"Unknown",affinityBlock:x.affinityBlock||x.affbloc||x.Affbloc||((h=x._normalized)==null?void 0:h.affinityBlock)||"Unknown",affinityBlockLabel:x.affinityBlockLabel||((A=x._normalized)==null?void 0:A.affinityBlockLabel)||"",cluster:x.cluster||((b=x._normalized)==null?void 0:b.cluster)||"",clusterLabel:x.clusterLabel||((M=x._normalized)==null?void 0:M.clusterLabel)||"",peopleGroup:x.peopleGroup||((O=x._normalized)==null?void 0:O.peopleGroup)||"",peopleGroupLabel:x.peopleGroupLabel||((D=x._normalized)==null?void 0:D.peopleGroupLabel)||"",doxaRegion:x.doxaRegion||((q=x._normalized)==null?void 0:q.doxaRegion)||"Unknown",wagfBlock:x.wagfBlock||((G=x._normalized)==null?void 0:G.wagfBlock)||"",wagfBlockLabel:x.wagfBlockLabel||((g=x._normalized)==null?void 0:g.wagfBlockLabel)||"",wagfRegionLabel:x.wagfRegionLabel||((d=x._normalized)==null?void 0:d.wagfRegionLabel)||"",country:x.country,countryIso:x.countryIso,countryIsoLabel:x.countryIsoLabel,countryName:x.countryName,religion:x.religion,religionCode:x.religionCode,religionLabel:x.religionLabel,religionName:x.religionName,population:x.population,status:x.status,description:x.description||"",imageUrl:x.imageUrl||"",peoplePraying:Number(x.peoplePraying??((C=x._normalized)==null?void 0:C.peoplePraying)??0),engagementStatus:x.engagementStatus===!0||x.engagementStatus===1||!1,adoptionStatus:x.adoptionStatus===!0||x.adoptionStatus===1||!1,bible:x.bible||((R=x._normalized)==null?void 0:R.bible)||"Not Available",jesusFilm:x.jesusFilm||((V=x._normalized)==null?void 0:V.jesusFilm)||"Not Available",radio:x.radio||((j=x._normalized)==null?void 0:j.radio)||"Not Available",gospel:x.gospel||((L=x._normalized)==null?void 0:L.gospel)||"Not Available",audio:x.audio||((F=x._normalized)==null?void 0:F.audio)||"Not Available",stories:x.stories||((Z=x._normalized)==null?void 0:Z.stories)||"Not Available",lng:parseFloat(x.longitude||x.lng)||0},geometry:{type:"Point",coordinates:[parseFloat(x.longitude||x.lng),parseFloat(x.latitude||x.lat)]}}}).filter(x=>!isNaN(x.geometry.coordinates[0])&&!isNaN(x.geometry.coordinates[1])),je=.04,Ee=x=>`${x.geometry.coordinates[0]},${x.geometry.coordinates[1]}`,_e=new Map;for(const x of ge){const de=Ee(x);_e.has(de)||_e.set(de,[]),_e.get(de).push(x)}for(const x of _e.values()){if(x.length<2)continue;const[de,Me]=x[0].geometry.coordinates,h=x.length;for(let A=0;A",["to-number",["get","peoplePraying"],0],0],"#ffffff","#1f2937"],"circle-opacity":1,"circle-stroke-opacity":1,"circle-opacity-transition":{duration:250}}}),J.addLayer({id:"language-family-pins-hitbox",type:"circle",source:"language-families",paint:{"circle-radius":Ms("touchTarget"),"circle-color":"rgba(0,0,0,0)","circle-stroke-width":0,"circle-opacity":0}}),i.value.languageFamilyPins=!0,s.attachLanguageFamilyEvents()}function c(H,ee="doxa-regions"){const J=t();if(!J)return;J.getLayer("regions-fill")&&J.removeLayer("regions-fill"),J.getLayer("regions-border")&&J.removeLayer("regions-border"),J.getSource("regions")&&J.removeSource("regions");const pe={africa:"#ff2e2e",asia:"#1a8cff",europe:"#1ee05f","latin_america_&_caribbean":"#FFEB3B",middle_east:"#a83dff","north_america_&_non-spanish_caribbean":"#00e0bd",oceania:"#ff7f11"},ge="#cccccc",je=H&&H.isoToRegion?H.isoToRegion:{},Ee=[],_e={};for(const[de,Me]of Object.entries(je)){const h=pe[String(Me).toLowerCase()];h&&Ee.push(de,h),_e[Me]||(_e[Me]=[]),_e[Me].push(de)}r.value=_e;const Se=Ee.length?["match",["get","iso_3166_1_alpha_3"],...Ee,ge]:ge,x=J.getLayer("language-family-pins-shadow")?"language-family-pins-shadow":J.getLayer("language-family-pins")?"language-family-pins":void 0;J.addSource("regions",{type:"vector",url:"mapbox://mapbox.country-boundaries-v1"}),J.addLayer({id:"regions-fill",type:"fill",source:"regions","source-layer":"country_boundaries",paint:{"fill-color":Se,"fill-opacity":ee==="none"?.1:.7,"fill-antialias":!0,"fill-emissive-strength":1,"fill-opacity-transition":{duration:300}}},x),J.addLayer({id:"regions-border",type:"line",source:"regions","source-layer":"country_boundaries",paint:{"line-color":Se,"line-width":1,"line-opacity":.9,"line-emissive-strength":1}},x),i.value.regions=!0,s.attachRegionEvents()}function u(H,ee){const J=t();if(!J||!H||!(ee!=null&&ee.length))return;p();const pe=ee.filter(Se=>{var de;return(Se.languageFamily||((de=Se._normalized)==null?void 0:de.languageFamily)||"Unknown")===H});if(pe.length<2)return;const ge=o(H),je=[],Ee=15,_e=[...pe].sort((Se,x)=>(Se.longitude||Se.lng)-(x.longitude||x.lng));for(let Se=0;Se<_e.length;Se++){const x=_e[Se],de=x.longitude||x.lng,Me=x.latitude||x.lat;for(let h=Se+1;h=",["get","peoplePraying"],Cn],"#15803d",[">",["get","peoplePraying"],0],"#d97706","rgba(0,0,0,0)"]}const K=[0,5,2,6,4,7,5,9,6,12,7,14,8,18,10,25,12,32,14,40];function Q(H,ee){const J=["interpolate",["linear"],["zoom"]];for(let pe=0;pe",["get","peoplePraying"],0],J=z();if(!I.every(ge=>H.getLayer(ge))){for(const ge of I)if(H.getLayer(ge))try{H.removeLayer(ge)}catch{}H.addLayer({id:m,type:"circle",source:"language-families",filter:ee,paint:{"circle-radius":Q(K,1),"circle-color":J,"circle-blur":.3,"circle-opacity":.45,"circle-stroke-width":0,...Is(H)}},"language-family-pins");for(const ge of E)H.addLayer({id:ge,type:"circle",source:"language-families",filter:ee,paint:{"circle-radius":Q(K,1),"circle-color":"rgba(0,0,0,0)","circle-blur":0,"circle-opacity":1,"circle-stroke-width":2,"circle-stroke-color":J,"circle-stroke-opacity":0,...Is(H)}},"language-family-pins")}}function B(){const H=t();if(H)for(const ee of I)H.getLayer(ee)&&H.removeLayer(ee)}function Y(H){const ee=t();if(!ee)return;const J=[">",["get","peoplePraying"],0],pe=H?["all",J,H]:J;for(const ge of I)if(ee.getLayer(ge))try{ee.setFilter(ge,pe)}catch{}}function X(){const H=t();if(H){if(te(),N&&(cancelAnimationFrame(N),N=null),$=!0,H.getLayer("language-family-pins"))try{H.setLayoutProperty("language-family-pins","circle-sort-key",["case",[">=",["get","peoplePraying"],Cn],1,[">",["get","peoplePraying"],0],1,3])}catch{}re()}}function re(){N&&(cancelAnimationFrame(N),N=null);const H=++f;let ee=performance.now();function J(pe){if(!$||H!==f)return;const ge=t();if(!ge||!I.some(Ee=>ge.getLayer(Ee))){N=null;return}const je=(pe-ee)/1e3;for(let Ee=0;Ee0){if(i.push(a.trim()),a="",r)o.push(...i),r=!1;else if(i.length>1){const p={};o.forEach((_,v)=>{p[_]=i[v]||""}),n.push(p)}i=[]}}else a+=c}if((a||i.length>0)&&(i.push(a.trim()),!r&&i.length>1)){const l={};o.forEach((c,u)=>{l[c]=i[u]||""}),n.push(l)}return{headers:o,data:n}}async loadCSVData(t){try{const o=await(await fetch(this.baseUrl+t.path)).text(),{headers:a,data:s}=this.parseCSV(o);return this.rawData=s,this.validateFieldMappings(t.fieldMappings,a,t.name),this.normalizeData(t),this.normalizedData}catch(n){throw console.error("Failed to load CSV data:",n),n}}validateFieldMappings(t,n,o){const a=new Set(n.map(i=>i.trim())),s=[];for(const[i,r]of Object.entries(t||{}))if(Array.isArray(r))for(const l of r)a.has(l)||s.push({systemField:i,sourceField:l,isComposite:!0});else r&&!a.has(r)&&s.push({systemField:i,sourceField:r,isComposite:!1});s.length>0&&console.warn(`[DataSourceManager] ${o}: missing CSV columns:`,s)}async loadAPIData(t){try{const o=await(await fetch(t.url||t.endpoint)).json();return this.rawData=Array.isArray(o)?o:o.posts||o.data||o.peopleGroups||o.results||[],this.normalizeData(t),this.normalizedData}catch(n){throw console.error("Failed to load API data:",n),n}}async loadRestApiData(t){var l,c;const n=Ab(),o=((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 i={...t.queryParams||{}};this.locale&&(i.lang=this.locale);for(const[u,p]of Object.entries(i))s.push(`${u}=${encodeURIComponent(p)}`);const r=`${n}${o}?${s.join("&")}`;try{const u=await fetch(r);if(!u.ok)throw new Error(`HTTP ${u.status}: ${u.statusText}`);const p=u.headers.get("content-type")||"";if(!p.includes("application/json"))throw new Error(`API returned "${p}" instead of JSON. Server at ${n} may be down or misconfigured.`);const _=await u.json();return this.rawData=Array.isArray(_)?_:_.posts||_.data||_.results||[],this.normalizeData(t),this.normalizedData}catch(u){throw console.error(`[rest-api] Failed to load from ${t.id}:`,u),u}}normalizeData(t){const n=t.fieldMappings||{};this.normalizedData=[],this.dataByUniqueId=new Map;for(const o of this.rawData){const a={};for(const[l,c]of Object.entries(n))if(Array.isArray(c)){const u=c.map(p=>this.getFieldValue(o,p));a[l]=u.join("_")}else a[l]=this.getFieldValue(o,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 i=a.adoptionStatus;i!=null&&(a.adoptionStatus=i===!0||i===1||i==="1"||i==="true"||typeof i=="object"&&!!(i!=null&&i.value)||typeof i=="number"&&i>0||typeof i=="string"&&parseInt(i,10)>0);const r=["doxaRegion","wagfRegion","wagfBlock","wagfMember","affinityBlock","cluster","peopleGroup","countryIso","religion","religionCode"];for(const l of r){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=o,this.normalizedData.push(a),this.dataByUniqueId.set(a.uniqueId,a)}this.rawData=null}getFieldValue(t,n){if(!n)return"";if(t[n]!==void 0)return t[n];const o=n.trim();if(t[o]!==void 0)return t[o];for(const a of Object.keys(t))if(a.trim()===o||a.includes(o)||o.includes(a.trim()))return t[a];return""}parsePopulation(t){if(!t)return 0;const n=String(t).replace(/,/g,"").trim(),o=parseInt(n,10);return isNaN(o)?0:o}getImageUrl(t,n){if(!n)return"";const o=n.placeholderUrl||"",a=t[n.useField];return a&&String(a).trim()&&!String(a).includes("NoImageAvailable")?a:o}getData(){return this.normalizedData}getByUniqueId(t){return this.dataByUniqueId.get(t)}getByCoordinates(t,n,o=1e-4){return this.normalizedData.find(a=>Math.abs(a.latitude-t)n.peopleGroupId===t)}getLanguageFamilies(){const t=new Set;return this.normalizedData.forEach(n=>{n.languageFamily&&t.add(n.languageFamily)}),Array.from(t).sort()}getDataByLanguageFamily(){const t={};return this.normalizedData.forEach(n=>{const o=n.languageFamily||"Unknown";t[o]||(t[o]=[]),t[o].push(n)}),t}getDataByRegion(){const t={};return this.normalizedData.forEach(n=>{const o=n.doxaRegion||"Unknown";t[o]||(t[o]=[]),t[o].push(n)}),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 Lc;const Sb={class:"dm-root"},vb={class:"dm-tab-bar"},kb=["onClick"],Tb={class:"dm-map-area"},Eb={key:0,class:"dm-loading"},$b={key:1,class:"dm-error"},Lb={key:2,class:"dm-legend"},Cb={class:"dm-legend-title"},wb=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"demo-map",setup(e){ps(` +`&&l++,a||i.length>0){if(i.push(a.trim()),a="",r)o.push(...i),r=!1;else if(i.length>1){const p={};o.forEach((_,v)=>{p[_]=i[v]||""}),n.push(p)}i=[]}}else a+=c}if((a||i.length>0)&&(i.push(a.trim()),!r&&i.length>1)){const l={};o.forEach((c,u)=>{l[c]=i[u]||""}),n.push(l)}return{headers:o,data:n}}async loadCSVData(t){try{const o=await(await fetch(this.baseUrl+t.path)).text(),{headers:a,data:s}=this.parseCSV(o);return this.rawData=s,this.validateFieldMappings(t.fieldMappings,a,t.name),this.normalizeData(t),this.normalizedData}catch(n){throw console.error("Failed to load CSV data:",n),n}}validateFieldMappings(t,n,o){const a=new Set(n.map(i=>i.trim())),s=[];for(const[i,r]of Object.entries(t||{}))if(Array.isArray(r))for(const l of r)a.has(l)||s.push({systemField:i,sourceField:l,isComposite:!0});else r&&!a.has(r)&&s.push({systemField:i,sourceField:r,isComposite:!1});s.length>0&&console.warn(`[DataSourceManager] ${o}: missing CSV columns:`,s)}async loadAPIData(t){try{const o=await(await fetch(t.url||t.endpoint)).json();return this.rawData=Array.isArray(o)?o:o.posts||o.data||o.peopleGroups||o.results||[],this.normalizeData(t),this.normalizedData}catch(n){throw console.error("Failed to load API data:",n),n}}async loadRestApiData(t){var l,c;const n=Tb(),o=((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 i={...t.queryParams||{}};this.locale&&(i.lang=this.locale);for(const[u,p]of Object.entries(i))s.push(`${u}=${encodeURIComponent(p)}`);const r=`${n}${o}?${s.join("&")}`;try{const u=await fetch(r);if(!u.ok)throw new Error(`HTTP ${u.status}: ${u.statusText}`);const p=u.headers.get("content-type")||"";if(!p.includes("application/json"))throw new Error(`API returned "${p}" instead of JSON. Server at ${n} may be down or misconfigured.`);const _=await u.json();return this.rawData=Array.isArray(_)?_:_.posts||_.data||_.results||[],this.normalizeData(t),this.normalizedData}catch(u){throw console.error(`[rest-api] Failed to load from ${t.id}:`,u),u}}normalizeData(t){const n=t.fieldMappings||{};this.normalizedData=[],this.dataByUniqueId=new Map;for(const o of this.rawData){const a={};for(const[l,c]of Object.entries(n))if(Array.isArray(c)){const u=c.map(p=>this.getFieldValue(o,p));a[l]=u.join("_")}else a[l]=this.getFieldValue(o,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 i=a.adoptionStatus;i!=null&&(a.adoptionStatus=i===!0||i===1||i==="1"||i==="true"||typeof i=="object"&&!!(i!=null&&i.value)||typeof i=="number"&&i>0||typeof i=="string"&&parseInt(i,10)>0);const r=["doxaRegion","wagfRegion","wagfBlock","wagfMember","affinityBlock","cluster","peopleGroup","countryIso","religion","religionCode"];for(const l of r){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=o,this.normalizedData.push(a),this.dataByUniqueId.set(a.uniqueId,a)}this.rawData=null}getFieldValue(t,n){if(!n)return"";if(t[n]!==void 0)return t[n];const o=n.trim();if(t[o]!==void 0)return t[o];for(const a of Object.keys(t))if(a.trim()===o||a.includes(o)||o.includes(a.trim()))return t[a];return""}parsePopulation(t){if(!t)return 0;const n=String(t).replace(/,/g,"").trim(),o=parseInt(n,10);return isNaN(o)?0:o}getImageUrl(t,n){if(!n)return"";const o=n.placeholderUrl||"",a=t[n.useField];return a&&String(a).trim()&&!String(a).includes("NoImageAvailable")?a:o}getData(){return this.normalizedData}getByUniqueId(t){return this.dataByUniqueId.get(t)}getByCoordinates(t,n,o=1e-4){return this.normalizedData.find(a=>Math.abs(a.latitude-t)n.peopleGroupId===t)}getLanguageFamilies(){const t=new Set;return this.normalizedData.forEach(n=>{n.languageFamily&&t.add(n.languageFamily)}),Array.from(t).sort()}getDataByLanguageFamily(){const t={};return this.normalizedData.forEach(n=>{const o=n.languageFamily||"Unknown";t[o]||(t[o]=[]),t[o].push(n)}),t}getDataByRegion(){const t={};return this.normalizedData.forEach(n=>{const o=n.doxaRegion||"Unknown";t[o]||(t[o]=[]),t[o].push(n)}),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 Cc;const Eb={class:"dm-root"},$b={class:"dm-tab-bar"},Lb=["onClick"],Cb={class:"dm-map-area"},wb={key:0,class:"dm-loading"},Nb={key:1,class:"dm-error"},Ib={key:2,class:"dm-legend"},Pb={class:"dm-legend-title"},Mb=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"demo-map",setup(e){ps(` .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; @@ -229,4 +229,4 @@ 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=Re("profileConfig"),n=Re("mapboxToken"),o=Re("dataSource"),a=[{id:"religion",label:"By Religion",colorStrategy:oa.RELIGION},{id:"purple",label:"Purple Pins",colorStrategy:oa.SINGLE_COLOR}],s=be(()=>{var y;return((y=t==null?void 0:t.value)==null?void 0:y.tabs)??a}),i=ce(null),r=be(()=>s.value.find(y=>y.id===i.value)??s.value[0]);function l(y){if(y===i.value)return;i.value=y;const U=s.value.find(K=>K.id===y),z=m.value;!U||!z||!z.getLayer("language-family-pins")||z.setPaintProperty("language-family-pins","circle-color",Ac(U.colorStrategy))}const c=be(()=>{var U,z;const y=ws((U=r.value)==null?void 0:U.colorStrategy);return y?y.families?Object.entries(y.families).map(([K,Q])=>{var te;return{label:Q,color:((te=y.palette)==null?void 0:te[K])??y.fallback}}):[{label:"All people groups",color:((z=y.palette)==null?void 0:z.pin)??y.fallback}]:[]}),u=be(()=>{var y,U;return((U=ws((y=r.value)==null?void 0:y.colorStrategy))==null?void 0:U.name)??"Legend"}),p=Re("instanceId",null),_=(p==null?void 0:p.value)||p||"demo-map-"+Math.random().toString(36).slice(2,7);pt("mapId",_);const v=Re("mapStore"),T=Re("dataStore"),S=Re("uiStore"),w=ce(null),N=ce(!1),$=ce(null),f=new Lc,{map:m,initializeMap:k,destroy:E}=ub({containerRef:w,accessToken:n.value,style:"mapbox://styles/mapbox/light-v11",center:[20,10],zoom:1.8}),I=fb({mapId:_,dataSourceId:o.value,dataSourceManager:f,dataStore:T,markRaw:y=>y}),P=yb({getMap:()=>m.value,mapId:_,getLanguageFamilyColor:ta,getNormalizedPeopleGroups:()=>I.normalizedPeopleGroups.value||[]});return yn(async()=>{var U,z;i.value=((U=s.value[0])==null?void 0:U.id)??null,(z=S==null?void 0:S.updateBreakpoint)==null||z.call(S,window.innerWidth);const y=I.loadData().catch(K=>(console.error("[demo-map] Data load failed:",K),{normalizedPeopleGroups:[]}));try{await k()}catch(K){console.error("[demo-map] Map failed to initialize —",K),$.value=String((K==null?void 0:K.message)||K);return}if(!m.value){console.error("[demo-map] Map failed to initialize — check token and container"),$.value="Map failed to initialize — check token and container";return}m.value.once("style.load",async()=>{var K,Q,te;try{const{normalizedPeopleGroups:B}=await y;(K=v==null?void 0:v.registerMap)==null||K.call(v,_,m.value);try{m.value.setProjection("mercator")}catch{}B!=null&&B.length&&P.addLanguageFamilyLayer(B,(Q=r.value)==null?void 0:Q.colorStrategy),(te=v==null?void 0:v.setMapReady)==null||te.call(v,_),N.value=!0}catch(B){console.error("[demo-map] Map ready failed:",B),$.value=String((B==null?void 0:B.message)||B)}})}),Mo(()=>{var y;(y=v==null?void 0:v.unregisterMap)==null||y.call(v,_),E()}),(y,U)=>(Ne(),Fe("div",Sb,[me("div",vb,[(Ne(!0),Fe(Ve,null,Oi(s.value,z=>{var K;return Ne(),Fe("button",{key:z.id,class:fn(["dm-tab",{active:((K=r.value)==null?void 0:K.id)===z.id}]),onClick:Q=>l(z.id)},ct(z.label),11,kb)}),128))]),me("div",Tb,[!N.value&&!$.value?(Ne(),Fe("div",Eb,"Loading map…")):ln("",!0),$.value?(Ne(),Fe("div",$b,"The map could not be loaded. "+ct($.value),1)):ln("",!0),me("div",{ref_key:"mapContainer",ref:w,class:"dm-map-canvas"},null,512),N.value?(Ne(),Fe("div",Lb,[me("div",Cb,ct(u.value),1),(Ne(!0),Fe(Ve,null,Oi(c.value,z=>(Ne(),Fe("div",{key:z.label,class:"dm-legend-row"},[me("span",{class:"dm-dot",style:po({background:z.color})},null,4),ot(ct(z.label),1)]))),128))])):ln("",!0)])]))}}},Symbol.toStringTag,{value:"Module"}))})(); +`,"demo-map");const t=Re("profileConfig"),n=Re("mapboxToken"),o=Re("dataSource"),a=[{id:"religion",label:"By Religion",colorStrategy:oa.RELIGION},{id:"purple",label:"Purple Pins",colorStrategy:oa.SINGLE_COLOR}],s=be(()=>{var y;return((y=t==null?void 0:t.value)==null?void 0:y.tabs)??a}),i=ce(null),r=be(()=>s.value.find(y=>y.id===i.value)??s.value[0]);function l(y){if(y===i.value)return;i.value=y;const U=s.value.find(K=>K.id===y),z=m.value;!U||!z||!z.getLayer("language-family-pins")||z.setPaintProperty("language-family-pins","circle-color",Ac(U.colorStrategy))}const c=be(()=>{var U,z;const y=ws((U=r.value)==null?void 0:U.colorStrategy);return y?y.families?Object.entries(y.families).map(([K,Q])=>{var te;return{label:Q,color:((te=y.palette)==null?void 0:te[K])??y.fallback}}):[{label:"All people groups",color:((z=y.palette)==null?void 0:z.pin)??y.fallback}]:[]}),u=be(()=>{var y,U;return((U=ws((y=r.value)==null?void 0:y.colorStrategy))==null?void 0:U.name)??"Legend"}),p=Re("instanceId",null),_=(p==null?void 0:p.value)||p||"demo-map-"+Math.random().toString(36).slice(2,7);pt("mapId",_);const v=Re("mapStore"),T=Re("dataStore"),S=Re("uiStore"),w=ce(null),N=ce(!1),$=ce(null),f=new Cc,{map:m,initializeMap:k,destroy:E}=gb({containerRef:w,accessToken:n.value,provider:pb(t),style:"mapbox://styles/mapbox/light-v11",center:[20,10],zoom:1.8}),I=_b({mapId:_,dataSourceId:o.value,dataSourceManager:f,dataStore:T,markRaw:y=>y}),P=kb({getMap:()=>m.value,mapId:_,getLanguageFamilyColor:ta,getNormalizedPeopleGroups:()=>I.normalizedPeopleGroups.value||[]});return yn(async()=>{var U,z;i.value=((U=s.value[0])==null?void 0:U.id)??null,(z=S==null?void 0:S.updateBreakpoint)==null||z.call(S,window.innerWidth);const y=I.loadData().catch(K=>(console.error("[demo-map] Data load failed:",K),{normalizedPeopleGroups:[]}));try{await k()}catch(K){console.error("[demo-map] Map failed to initialize —",K),$.value=String((K==null?void 0:K.message)||K);return}if(!m.value){console.error("[demo-map] Map failed to initialize — check token and container"),$.value="Map failed to initialize — check token and container";return}m.value.once("style.load",async()=>{var K,Q,te;try{const{normalizedPeopleGroups:B}=await y;(K=v==null?void 0:v.registerMap)==null||K.call(v,_,m.value);try{m.value.setProjection("mercator")}catch{}B!=null&&B.length&&P.addLanguageFamilyLayer(B,(Q=r.value)==null?void 0:Q.colorStrategy),(te=v==null?void 0:v.setMapReady)==null||te.call(v,_),N.value=!0}catch(B){console.error("[demo-map] Map ready failed:",B),$.value=String((B==null?void 0:B.message)||B)}})}),Mo(()=>{var y;(y=v==null?void 0:v.unregisterMap)==null||y.call(v,_),E()}),(y,U)=>(Ne(),Fe("div",Eb,[me("div",$b,[(Ne(!0),Fe(Ve,null,Oi(s.value,z=>{var K;return Ne(),Fe("button",{key:z.id,class:fn(["dm-tab",{active:((K=r.value)==null?void 0:K.id)===z.id}]),onClick:Q=>l(z.id)},ct(z.label),11,Lb)}),128))]),me("div",Cb,[!N.value&&!$.value?(Ne(),Fe("div",wb,"Loading map…")):ln("",!0),$.value?(Ne(),Fe("div",Nb,"The map could not be loaded. "+ct($.value),1)):ln("",!0),me("div",{ref_key:"mapContainer",ref:w,class:"dm-map-canvas"},null,512),N.value?(Ne(),Fe("div",Ib,[me("div",Pb,ct(u.value),1),(Ne(!0),Fe(Ve,null,Oi(c.value,z=>(Ne(),Fe("div",{key:z.label,class:"dm-legend-row"},[me("span",{class:"dm-dot",style:po({background:z.color})},null,4),ot(ct(z.label),1)]))),128))])):ln("",!0)])]))}}},Symbol.toStringTag,{value:"Module"}))})(); diff --git a/public/js/doxa-maps-build/doxa-maps/demo-map/demo-map/index.html b/public/js/doxa-maps-build/doxa-maps/demo-map/demo-map/index.html index 2126d406..9128aa62 100644 --- a/public/js/doxa-maps-build/doxa-maps/demo-map/demo-map/index.html +++ b/public/js/doxa-maps-build/doxa-maps/demo-map/demo-map/index.html @@ -29,7 +29,7 @@ - + + + + +
+
loading map…
+ + + + + + + + diff --git a/public/js/doxa-maps-build/doxa-maps/demo-map/index.html b/public/js/doxa-maps-build/doxa-maps/demo-map/index.html index 04abbbf0..18d47c50 100644 --- a/public/js/doxa-maps-build/doxa-maps/demo-map/index.html +++ b/public/js/doxa-maps-build/doxa-maps/demo-map/index.html @@ -130,7 +130,7 @@ header.top .sub { margin-top: 3px; font: 12px/1.4 var(--sans); color: var(--mut) + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":9,"profileCount":17,"bundles":[{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-B+SyViDxVGRi34FHMkYac/xvZ43ATdtjC581+MYPyim2Z8wk+6uAWj7DNt6GA+C2","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-B+SyViDxVGRi34FHMkYac/xvZ43ATdtjC581+MYPyim2Z8wk+6uAWj7DNt6GA+C2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]}]}; + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"app-profiles/*/*.vue","embedBase":".","bundleCount":9,"profileCount":17,"bundles":[{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-rJEeD6vD8BPEh2Ab2sprUPjIYzkledq5jMjNzpVXJNDlnDzX8ejRbACR4xRQaxAg","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"","element":"cities-internet-map","iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-rJEeD6vD8BPEh2Ab2sprUPjIYzkledq5jMjNzpVXJNDlnDzX8ejRbACR4xRQaxAg\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"","element":"cities-internet-map","iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-rJEeD6vD8BPEh2Ab2sprUPjIYzkledq5jMjNzpVXJNDlnDzX8ejRbACR4xRQaxAg\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"","element":"cities-internet-map","iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-rJEeD6vD8BPEh2Ab2sprUPjIYzkledq5jMjNzpVXJNDlnDzX8ejRbACR4xRQaxAg\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/cities-internet-map>"}}]},{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-FBtv267lu0P9eg9CMAttrXz1NOkbktgrwvUDjBJvRIEkpqxHCy1UD7ceJeIfAvjX","elements":["country-posters-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"","element":"country-posters-map","iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-FBtv267lu0P9eg9CMAttrXz1NOkbktgrwvUDjBJvRIEkpqxHCy1UD7ceJeIfAvjX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"","element":"country-posters-map","iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-FBtv267lu0P9eg9CMAttrXz1NOkbktgrwvUDjBJvRIEkpqxHCy1UD7ceJeIfAvjX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/country-posters-map>"}}]},{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-B+SyViDxVGRi34FHMkYac/xvZ43ATdtjC581+MYPyim2Z8wk+6uAWj7DNt6GA+C2","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-B+SyViDxVGRi34FHMkYac/xvZ43ATdtjC581+MYPyim2Z8wk+6uAWj7DNt6GA+C2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]},{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-ucQyb81oBIScE6DAnHkfssGlIPACxSPP/BoC6mtdkuRn/XNSgyGDssUDTKtodUCL","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"","element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-ucQyb81oBIScE6DAnHkfssGlIPACxSPP/BoC6mtdkuRn/XNSgyGDssUDTKtodUCL\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/doxa-research-map>"}}]},{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-bhqFr7F7wpWDfWVigz0L7MH4tqQObm/W3xhcuzx82x9C64JFGpHDO8QgCRojX56a","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"","element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-bhqFr7F7wpWDfWVigz0L7MH4tqQObm/W3xhcuzx82x9C64JFGpHDO8QgCRojX56a\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-0njmRPwldwfw1NeqYab3u/cQVuoqBH67iFau1BeBrR81ouB32h8nTw7CbRktgvtx","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-0njmRPwldwfw1NeqYab3u/cQVuoqBH67iFau1BeBrR81ouB32h8nTw7CbRktgvtx\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-0njmRPwldwfw1NeqYab3u/cQVuoqBH67iFau1BeBrR81ouB32h8nTw7CbRktgvtx\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-0njmRPwldwfw1NeqYab3u/cQVuoqBH67iFau1BeBrR81ouB32h8nTw7CbRktgvtx\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"","element":"gospel-resources-map","iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-0njmRPwldwfw1NeqYab3u/cQVuoqBH67iFau1BeBrR81ouB32h8nTw7CbRktgvtx\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/gospel-resources-map>"}}]},{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-EmL+y2EzMjdr+l2gPQNQ0WVmiSatcqpr50yMftD6vTaYYnkHyZL90vN2OIb4XXfi","elements":["my-upg-100-list-map"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"","element":"my-upg-100-list-map","iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-EmL+y2EzMjdr+l2gPQNQ0WVmiSatcqpr50yMftD6vTaYYnkHyZL90vN2OIb4XXfi\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"","element":"my-upg-100-list-map","iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-EmL+y2EzMjdr+l2gPQNQ0WVmiSatcqpr50yMftD6vTaYYnkHyZL90vN2OIb4XXfi\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/my-upg-100-list-map>"}}]},{"bundle":"research-dashboard","scriptUrl":"./research-dashboard/research-dashboard.js","output":"doxa-maps/research-dashboard/research-dashboard.js","integrity":"sha384-lZ7gBho2rDVPcokskvREISv+36u3aHZnZZ/cX9sy180aP+qyCxdgmnd8VacYOfqq","elements":["research-dashboard-map"],"profiles":[{"profile":"research-dashboard","file":"research-dashboard.vue","description":"Coordinated-Multiple-Views research dashboard for 10/40-window UPGs (live pray.doxa.life): docked facet rail + map-as-hero + linked table/charts, brushing-and-linking over one in-memory store.","element":"research-dashboard-map","iframeUrl":"./research-dashboard/research-dashboard/index.html","scriptUrl":"./research-dashboard/research-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./research-dashboard/research-dashboard/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-lZ7gBho2rDVPcokskvREISv+36u3aHZnZZ/cX9sy180aP+qyCxdgmnd8VacYOfqq\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/research-dashboard-map>"},"bundle":"research-dashboard"}]},{"bundle":"template-bundle","scriptUrl":"./template-bundle/template-bundle.js","output":"doxa-maps/template-bundle/template-bundle.js","integrity":"sha384-ThNZrcpzvq928ggsPM27BNm0El0/e8ZLi2Gf8XdzQFWUPxdiP/LmBbq9np5+SZDI","elements":["template-bundle"],"profiles":[{"profile":"template-map-a","file":"template-map-a.vue","description":"Minimal example profile A — a colored placeholder, no Mapbox or data.","element":"template-bundle","iframeUrl":"./template-bundle/template-map-a/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-a/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-ThNZrcpzvq928ggsPM27BNm0El0/e8ZLi2Gf8XdzQFWUPxdiP/LmBbq9np5+SZDI\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-a\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"},{"profile":"template-map-b","file":"template-map-b.vue","description":"Minimal example profile B — a second profile in the same bundle.","element":"template-bundle","iframeUrl":"./template-bundle/template-map-b/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-b/index.html\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-ThNZrcpzvq928ggsPM27BNm0El0/e8ZLi2Gf8XdzQFWUPxdiP/LmBbq9np5+SZDI\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-b\",\"tk\":\"YOUR_MAPBOX_TOKEN\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"}]}]}; \n" + "script": "\n" }, + "instances": [ + { + "id": "maplibre", + "title": "Demo map — MapLibre (token-free)", + "apiBaseUrl": "", + "props": { + "profile": "demo-map", + "provider": "maplibre", + "instanceId": "demo-maplibre" + }, + "element": "demo-map", + "iframeUrl": "./demo-map/demo-map/maplibre/index.html", + "embed": { + "iframe": "" + } + } + ], "bundle": "demo-map" } ] diff --git a/public/js/doxa-maps-build/doxa-maps/my-upg-100-list/poster-wall/index.html b/public/js/doxa-maps-build/doxa-maps/my-upg-100-list/poster-wall/index.html index ec5f9adf..b072a94d 100644 --- a/public/js/doxa-maps-build/doxa-maps/my-upg-100-list/poster-wall/index.html +++ b/public/js/doxa-maps-build/doxa-maps/my-upg-100-list/poster-wall/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"poster-wall","dataSource":"pray-tools","instanceId":"my-upg-100-list-poster-wall","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("my-upg-100-list-map"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it. diff --git a/public/js/doxa-maps-build/doxa-maps/my-upg-100-list/upg-100-list/index.html b/public/js/doxa-maps-build/doxa-maps/my-upg-100-list/upg-100-list/index.html index 7ef5d0b2..62abd3d9 100644 --- a/public/js/doxa-maps-build/doxa-maps/my-upg-100-list/upg-100-list/index.html +++ b/public/js/doxa-maps-build/doxa-maps/my-upg-100-list/upg-100-list/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"upg-100-list","dataSource":"pray-tools","instanceId":"my-upg-100-list-upg-100-list","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("my-upg-100-list-map"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it. diff --git a/public/js/doxa-maps-build/doxa-maps/research-dashboard/research-dashboard/index.html b/public/js/doxa-maps-build/doxa-maps/research-dashboard/research-dashboard/index.html index 49dae244..b05df899 100644 --- a/public/js/doxa-maps-build/doxa-maps/research-dashboard/research-dashboard/index.html +++ b/public/js/doxa-maps-build/doxa-maps/research-dashboard/research-dashboard/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"research-dashboard","dataSource":"pray-tools","instanceId":"research-dashboard-research-dashboard","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("research-dashboard-map"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it. diff --git a/public/js/doxa-maps-build/doxa-maps/template-bundle/template-map-a/index.html b/public/js/doxa-maps-build/doxa-maps/template-bundle/template-map-a/index.html index c195a2de..d8c2e98d 100644 --- a/public/js/doxa-maps-build/doxa-maps/template-bundle/template-map-a/index.html +++ b/public/js/doxa-maps-build/doxa-maps/template-bundle/template-map-a/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"template-map-a","dataSource":"pray-tools","instanceId":"template-bundle-template-map-a","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("template-bundle"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it. diff --git a/public/js/doxa-maps-build/doxa-maps/template-bundle/template-map-b/index.html b/public/js/doxa-maps-build/doxa-maps/template-bundle/template-map-b/index.html index 575baf0f..3b38ab65 100644 --- a/public/js/doxa-maps-build/doxa-maps/template-bundle/template-map-b/index.html +++ b/public/js/doxa-maps-build/doxa-maps/template-bundle/template-map-b/index.html @@ -46,6 +46,8 @@ var slot = document.getElementById('slot'); var status = document.getElementById('status'); var BASE_CONFIG = {"profile":"template-map-b","dataSource":"pray-tools","instanceId":"template-bundle-template-map-b","assetsBase":"../../../assets","qa":true}; + // MapLibre pages need NO token: the ladder below is skipped entirely. + var TOKEN_FREE = false; var TOKEN_SRC = "/api/maps/token.json"; var BAKED_TOKEN = ""; var DEFAULT_TOKEN_URL = '/api/maps/token'; @@ -70,9 +72,9 @@ function done() { if (status && status.parentNode) { status.parentNode.removeChild(status); } } function mount(token) { - if (!token) { return askToken(); } + if (!token && !TOKEN_FREE) { return askToken(); } try { - var cfg = Object.assign({}, BASE_CONFIG, { tk: token }); + var cfg = token ? Object.assign({}, BASE_CONFIG, { tk: token }) : BASE_CONFIG; var el = document.createElement("template-bundle"); el.setAttribute('profile-config', JSON.stringify(cfg)); slot.innerHTML = ''; @@ -100,6 +102,7 @@ var urlTk = qp('tk'); if (urlTk) { try { localStorage.setItem('MAPS_STAGING_TK', urlTk); } catch (e) {} } var directToken = (BASE_CONFIG && BASE_CONFIG.tk) || urlTk || stored || BAKED_TOKEN; + if (TOKEN_FREE) { return mount(''); } if (directToken) { return mount(directToken); } // Rungs 4-6: resolve a token endpoint and fetch it.