From 70c29013bae925dc1b60053d2cd7bacdbf248488 Mon Sep 17 00:00:00 2001 From: Doxa Maps Date: Sat, 26 Sep 2026 01:39:45 +0000 Subject: [PATCH] Update from source 6d7da1c0 --- plugin-designs/README.md | 10 +++++----- plugin-designs/doxa-vision-card/doxa-vision-card.vue | 4 +++- public/dx-maps/doxa-maps-spa/manifest.json | 4 ++-- public/dx-maps/doxa-vision-card/doxa-vision-card.js | 2 +- .../doxa-vision-card/default/index.html | 2 +- .../doxa-vision-card/frontier/index.html | 2 +- .../doxa-vision-card/doxa-vision-card/index.html | 2 +- public/dx-maps/manifest.json | 4 ++-- 8 files changed, 16 insertions(+), 14 deletions(-) diff --git a/plugin-designs/README.md b/plugin-designs/README.md index 50d8df96..442a9058 100644 --- a/plugin-designs/README.md +++ b/plugin-designs/README.md @@ -47,7 +47,7 @@ plugin-designs// ← one FOLDER = one BUNDLE, named after the fold ├── overview.vue ← one .vue = one PROFILE (flat in the folder — no profiles/ subfolder) └── detail.vue ← another profile in the SAME bundle - builds to ─────────────► public/doxa-maps//.js (one file) + builds to ─────────────► public/dx-maps//.js (one file) ``` - **Folder name = bundle name.** Folders starting with `_` or `.` are skipped (handy for WIP). @@ -55,9 +55,9 @@ plugin-designs// ← one FOLDER = one BUNDLE, named after the fold - **Pick the profile at embed time** with the `profile` field — every profile shares one bundle: ```html - - - + + + ``` ## Add a map — three steps @@ -69,7 +69,7 @@ mkdir -p plugin-designs/ # .vue ← your screen, built from @map/* blocks (flat in the folder) # 2. build -npm run build # → public/doxa-maps//.js +npm run build # → public/dx-maps//.js # (just this one: BUNDLE= npm run build:bundle) # 3. embed the script tag + element (dev staging at `npm run dev` shows a paste-ready snippet) diff --git a/plugin-designs/doxa-vision-card/doxa-vision-card.vue b/plugin-designs/doxa-vision-card/doxa-vision-card.vue index 3cea7bd3..ff971400 100644 --- a/plugin-designs/doxa-vision-card/doxa-vision-card.vue +++ b/plugin-designs/doxa-vision-card/doxa-vision-card.vue @@ -50,7 +50,9 @@ const urlLang = (() => { try { const q = new URLSearchParams(window.location.search); return q.get('lang') || q.get('locale') || '' } catch { return '' } })() const locale = computed(() => { - const raw = String(config.value.locale || urlLang || (typeof document !== 'undefined' && document.documentElement.lang) || 'en') + // profile-config `locale` OR `lang`: composites forward the page language as `lang`, so a card + // nested in one missed it and fell back to English (documentation/reference-universal-props.md). + const raw = String(config.value.locale || config.value.lang || urlLang || (typeof document !== 'undefined' && document.documentElement.lang) || 'en') const base = raw.split('-')[0].toLowerCase() return STRINGS[raw] ? raw : (STRINGS[base] ? base : 'en') }) diff --git a/public/dx-maps/doxa-maps-spa/manifest.json b/public/dx-maps/doxa-maps-spa/manifest.json index 1f88b10f..78f614ac 100644 --- a/public/dx-maps/doxa-maps-spa/manifest.json +++ b/public/dx-maps/doxa-maps-spa/manifest.json @@ -492,7 +492,7 @@ "bundle": "doxa-vision-card", "scriptUrl": "./doxa-vision-card/doxa-vision-card.js", "output": "dx-maps/doxa-vision-card/doxa-vision-card.js", - "integrity": "sha384-ga7XpXFyxJDd8VrtMejKuLRx8YFuxJoT+DXkcpehJXptsM4phiKamyTBYJpudSSj", + "integrity": "sha384-ZChtIPhUBbNtPSWFmaGfEJWMn/LnEJWC+/qyPGAOYSRenGdrx+ZjoOchfsLg0Epr", "elements": [ "doxa-vision-card" ], @@ -508,7 +508,7 @@ "scriptUrl": "./doxa-vision-card/doxa-vision-card.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { diff --git a/public/dx-maps/doxa-vision-card/doxa-vision-card.js b/public/dx-maps/doxa-vision-card/doxa-vision-card.js index 4e9d8216..c8dca9e6 100644 --- a/public/dx-maps/doxa-vision-card/doxa-vision-card.js +++ b/public/dx-maps/doxa-vision-card/doxa-vision-card.js @@ -17,4 +17,4 @@ * @vue/runtime-dom v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Zn;const Fo=typeof window<"u"&&window.trustedTypes;if(Fo)try{Zn=Fo.createPolicy("vue",{createHTML:e=>e})}catch{}const Ro=Zn?e=>Zn.createHTML(e):e=>e,nl="http://www.w3.org/2000/svg",sl="http://www.w3.org/1998/Math/MathML",ke=typeof document<"u"?document:null,ko=ke&&ke.createElement("template"),ol={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const o=t==="svg"?ke.createElementNS(nl,e):t==="mathml"?ke.createElementNS(sl,e):n?ke.createElement(e,{is:n}):ke.createElement(e);return e==="select"&&s&&s.multiple!=null&&o.setAttribute("multiple",s.multiple),o},createText:e=>ke.createTextNode(e),createComment:e=>ke.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ke.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,o,r){const i=n?n.previousSibling:t.lastChild;if(o&&(o===r||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===r||!(o=o.nextSibling)););else{ko.innerHTML=Ro(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=ko.content;if(s==="svg"||s==="mathml"){const a=l.firstChild;for(;a.firstChild;)l.appendChild(a.firstChild);l.removeChild(a)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},rl=Symbol("_vtc");function il(e,t,n){const s=e[rl];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const jo=Symbol("_vod"),ll=Symbol("_vsh"),cl=Symbol(""),al=/(?:^|;)\s*display\s*:/;function ul(e,t,n){const s=e.style,o=W(n);let r=!1;if(n&&!o){if(t)if(W(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&Dt(s,l,"")}else for(const i in t)n[i]==null&&Dt(s,i,"");for(const i in n){i==="display"&&(r=!0);const l=n[i];l!=null?dl(e,i,!W(t)&&t?t[i]:void 0,l)||Dt(s,i,l):Dt(s,i,"")}}else if(o){if(t!==n){const i=s[cl];i&&(n+=";"+i),s.cssText=n,r=al.test(n)}}else t&&e.removeAttribute("style");jo in e&&(e[jo]=r?s.display:"",e[ll]&&(s.display="none"))}const fn=/\s*!important$/;function Dt(e,t,n){if(S(n))n.forEach(s=>Dt(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))fn.test(n)?e.setProperty(t,n.replace(fn,""),"important"):e.setProperty(t,n);else{const s=fl(e,t);fn.test(n)?e.setProperty(ue(s),n.replace(fn,""),"important"):e[s]=n}}const Bo=["Webkit","Moz","ms"],Qn={};function fl(e,t){const n=Qn[t];if(n)return n;let s=ie(t);if(s!=="filter"&&s in e)return Qn[t]=s;s=cs(s);for(let o=0;oes||($l.then(()=>es=0),es=Date.now());function vl(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;const o=n.value;if(S(o)){const r=s.stopImmediatePropagation;s.stopImmediatePropagation=()=>{r.call(s),s._stopped=!0};const i=o.slice(),l=[s];for(let a=0;ae.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,yl=(e,t,n,s,o,r)=>{const i=o==="svg";t==="class"?il(e,s,i):t==="style"?ul(e,n,s):Ft(t)?Rt(t)||gl(e,t,n,s,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Al(e,t,s,i))?(Ho(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Vo(e,t,s,i,r,t!=="value")):e._isVueCE&&(wl(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!W(s)))?Ho(e,ie(t),s,r,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Vo(e,t,s,i))};function Al(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Ko(t)&&E(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 o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return Ko(t)&&W(n)?!1:t in e}function wl(e,t){const n=e._def.props;if(!n)return!1;const s=ie(t);return Array.isArray(n)?n.some(o=>ie(o)===s):Object.keys(n).some(o=>ie(o)===s)}const Wo={};function Ll(e,t,n){let s=Qr(e,t);jt(s)&&(s=G({},s,t));class o extends ts{constructor(i){super(s,i,n)}}return o.def=s,o}const Nl=typeof HTMLElement<"u"?HTMLElement:class{};class ts extends Nl{constructor(t,n={},s=Go){super(),this._def=t,this._props=n,this._createApp=s,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&&s!==Go?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(G({},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 ts){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,js(()=>{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 s=0;s{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:i}=s;let l;if(r&&!S(r))for(const a in r){const d=r[a];(d===Number||d&&d.type===Number)&&(a in this._props&&(this._props[a]=us(this._props[a])),(l||(l=Object.create(null)))[ie(a)]=!0)}this._numberProps=l,this._resolveProps(s),this.shadowRoot&&this._applyStyles(i),this._mount(s)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(s=>{s.configureApp=this._def.configureApp,t(this._def=s,!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 s in n)I(this,s)||Object.defineProperty(this,s,{get:()=>Is(n[s])})}_resolveProps(t){const{props:n}=t,s=S(n)?n:Object.keys(n||{});for(const o of Object.keys(this))o[0]!=="_"&&s.includes(o)&&this._setProp(o,this[o]);for(const o of s.map(ie))Object.defineProperty(this,o,{get(){return this._getProp(o)},set(r){this._setProp(o,r,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const n=this.hasAttribute(t);let s=n?this.getAttribute(t):Wo;const o=ie(t);n&&this._numberProps&&this._numberProps[o]&&(s=us(s)),this._setProp(o,s,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,s=!0,o=!1){if(n!==this._props[t]&&(this._dirty=!0,n===Wo?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),o&&this._instance&&this._update(),s)){const r=this._ob;r&&(this._processMutations(r.takeRecords()),r.disconnect()),n===!0?this.setAttribute(ue(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(ue(t),n+""):n||this.removeAttribute(ue(t)),r&&r.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Ol(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=He(this._def,G(t,this._props));return this._instance||(n.ce=s=>{this._instance=s,s.ce=this,s.isCE=!0;const o=(r,i)=>{this.dispatchEvent(new CustomEvent(r,jt(i[0])?G({detail:i},i[0]):{detail:i}))};s.emit=(r,...i)=>{o(r,i),ue(r)!==r&&o(ue(r),i)},this._setParent()}),n}_applyStyles(t,n,s){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const o=this._nonce,r=this.shadowRoot,i=s?this._getStyleAnchor(s)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(r);let l=null;for(let a=t.length-1;a>=0;a--){const d=document.createElement("style");o&&d.setAttribute("nonce",o),d.textContent=t[a],r.insertBefore(d,l||i),l=d,a===0&&(s||this._styleAnchors.set(this._def,d),n&&this._styleAnchors.set(n,d))}}_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{zo().render(...e)},Go=(...e)=>{const t=zo().createApp(...e),{mount:n}=t;return t.mount=s=>{const o=Dl(s);if(!o)return;const r=t._component;!E(r)&&!r.render&&!r.template&&(r.template=o.innerHTML),o.nodeType===1&&(o.textContent="");const i=n(o,!1,Sl(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t};function Sl(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Dl(e){return W(e)?document.querySelector(e):e}const Ml={kicker:"DOXA · الرؤية",title:"كل شعب. كل مكان.",tagline:"من كل مجموعات الشعوب في العالم إلى التي تصلي لأجلها DOXA، محسوبةً من البيانات.",funnelLabel:"من كل مجموعات الشعوب إلى مجموعات شعوب DOXA",allLabel:"مجموعات الشعوب",allNote:"كل مجموعة شعب، في كل بلد تعيش فيه",unreachedLabel:"غير المُبشَّرة",unreachedNote:"أقل من 2% إنجيليون",frontierLabel:"الحدودية",frontierNote:"أقل من 0.1% إنجيليون",doxaLabel:"مجموعات شعوب DOXA",doxaNote:"{frontier} منها حدودية",people:"{n} نسمة",sources:"مجموعات الشعوب: {imb}، بيانات {date}. قائمة DOXA: ‏pray.doxa.life، {date2}.",howCounted:"كيف تُحسب هذه الأرقام",ruleAll:"كل صف في بيانات IMB لمجموعات الشعوب: مجموعة شعب واحدة في بلد واحد.",ruleUnreached:"أولوية الضياع لدى IMB من 0 إلى 2: أقل من 2% إنجيليون.",ruleFrontier:"أولوية الضياع لدى IMB رقم 0: أقل من 0.1% إنجيليون. جزء من غير المُبشَّرة.",ruleDoxa:"كل مجموعة في قائمة صلاة DOXA، مطابَقة مع بيانات IMB حسب الشعب والبلد. ليست كلها حدودية."},El={kicker:"DOXA · Vision",title:"Jedes Volk. Jeder Ort.",tagline:"Von allen Volksgruppen der Welt bis zu denen, für die DOXA betet, aus den Daten gezählt.",funnelLabel:"Von allen Volksgruppen zu den DOXA-Volksgruppen",allLabel:"Volksgruppen",allNote:"jede Volksgruppe in jedem Land, in dem sie lebt",unreachedLabel:"Unerreicht",unreachedNote:"unter 2 % Evangelikale",frontierLabel:"Frontier",frontierNote:"unter 0,1 % Evangelikale",doxaLabel:"DOXA-Volksgruppen",doxaNote:"{frontier} davon sind Frontier",people:"{n} Menschen",sources:"Volksgruppen: {imb}, Datenstand {date}. DOXA-Liste: pray.doxa.life, {date2}.",howCounted:"So wird gezählt",ruleAll:"Jede Zeile der IMB-Volksgruppendaten: eine Volksgruppe in einem Land.",ruleUnreached:"IMB-Lostness-Priorität 0 bis 2: weniger als 2 % Evangelikale.",ruleFrontier:"IMB-Lostness-Priorität 0: weniger als 0,1 % Evangelikale. Eine Teilmenge der Unerreichten.",ruleDoxa:"Jede Gruppe auf der DOXA-Gebetsliste, den IMB-Daten nach Volk und Land zugeordnet. Nicht alle sind Frontier."},Tl={kicker:"DOXA · Vision",title:"Every people. Every place.",tagline:"From every people group on earth to the ones DOXA prays for, counted from the data.",funnelLabel:"From all people groups to DOXA people groups",allLabel:"People groups",allNote:"each people group, in each country it lives in",unreachedLabel:"Unreached",unreachedNote:"under 2% evangelical",frontierLabel:"Frontier",frontierNote:"under 0.1% evangelical",doxaLabel:"DOXA people groups",doxaNote:"{frontier} of them are frontier",people:"{n} people",sources:"People groups: {imb}, data of {date}. DOXA list: pray.doxa.life, {date2}.",howCounted:"How these are counted",ruleAll:"Every row of the IMB people-group data: one people group in one country.",ruleUnreached:"IMB lostness priority 0 to 2: less than 2% evangelical.",ruleFrontier:"IMB lostness priority 0: less than 0.1% evangelical. A subset of the unreached.",ruleDoxa:"Every group on the DOXA prayer list, matched to the IMB data by people and country. Not all are frontier."},Pl={kicker:"DOXA · Visión",title:"Cada pueblo. Cada lugar.",tagline:"De todos los grupos étnicos del mundo a aquellos por los que DOXA ora, contados a partir de los datos.",funnelLabel:"De todos los grupos étnicos a los grupos étnicos de DOXA",allLabel:"Grupos étnicos",allNote:"cada grupo étnico, en cada país donde vive",unreachedLabel:"No alcanzados",unreachedNote:"menos del 2 % evangélicos",frontierLabel:"Frontera",frontierNote:"menos del 0,1 % evangélicos",doxaLabel:"Grupos étnicos de DOXA",doxaNote:"{frontier} de ellos son de frontera",people:"{n} personas",sources:"Grupos étnicos: {imb}, datos de {date}. Lista de DOXA: pray.doxa.life, {date2}.",howCounted:"Cómo se cuentan",ruleAll:"Cada fila de los datos de grupos étnicos del IMB: un grupo étnico en un país.",ruleUnreached:"Prioridad de perdición del IMB de 0 a 2: menos del 2 % evangélicos.",ruleFrontier:"Prioridad de perdición del IMB 0: menos del 0,1 % evangélicos. Un subconjunto de los no alcanzados.",ruleDoxa:"Cada grupo de la lista de oración de DOXA, vinculado a los datos del IMB por pueblo y país. No todos son de frontera."},Il={kicker:"DOXA · Vision",title:"Chaque peuple. Chaque lieu.",tagline:"De tous les groupes ethniques du monde à ceux pour qui DOXA prie, comptés à partir des données.",funnelLabel:"De tous les groupes ethniques aux groupes ethniques DOXA",allLabel:"Groupes ethniques",allNote:"chaque groupe ethnique, dans chaque pays où il vit",unreachedLabel:"Non atteints",unreachedNote:"moins de 2 % d’évangéliques",frontierLabel:"Frontière",frontierNote:"moins de 0,1 % d’évangéliques",doxaLabel:"Groupes ethniques DOXA",doxaNote:"dont {frontier} de frontière",people:"{n} personnes",sources:"Groupes ethniques : {imb}, données du {date}. Liste DOXA : pray.doxa.life, {date2}.",howCounted:"Comment ces chiffres sont comptés",ruleAll:"Chaque ligne des données IMB : un groupe ethnique dans un pays.",ruleUnreached:"Priorité de perdition IMB 0 à 2 : moins de 2 % d’évangéliques.",ruleFrontier:"Priorité de perdition IMB 0 : moins de 0,1 % d’évangéliques. Un sous-ensemble des non-atteints.",ruleDoxa:"Chaque groupe de la liste de prière DOXA, rapproché des données IMB par peuple et pays. Tous ne sont pas de frontière."},Fl={kicker:"DOXA · दर्शन",title:"हर जनसमूह। हर स्थान।",tagline:"दुनिया के हर जनसमूह से उन तक जिनके लिए DOXA प्रार्थना करता है, आँकड़ों से गिने गए।",funnelLabel:"सभी जनसमूहों से DOXA जनसमूहों तक",allLabel:"जनसमूह",allNote:"हर जनसमूह, हर उस देश में जहाँ वह रहता है",unreachedLabel:"अप्रचारित",unreachedNote:"2% से कम इवेंजेलिकल",frontierLabel:"सीमांत",frontierNote:"0.1% से कम इवेंजेलिकल",doxaLabel:"DOXA जनसमूह",doxaNote:"इनमें से {frontier} सीमांत हैं",people:"{n} लोग",sources:"जनसमूह: {imb}, {date} के आँकड़े। DOXA सूची: pray.doxa.life, {date2}।",howCounted:"ये कैसे गिने गए",ruleAll:"IMB जनसमूह आँकड़ों की हर पंक्ति: एक देश में एक जनसमूह।",ruleUnreached:"IMB लॉस्टनेस प्राथमिकता 0 से 2: 2% से कम इवेंजेलिकल।",ruleFrontier:"IMB लॉस्टनेस प्राथमिकता 0: 0.1% से कम इवेंजेलिकल। अप्रचारितों का एक भाग।",ruleDoxa:"DOXA प्रार्थना सूची का हर समूह, जनसमूह और देश के आधार पर IMB आँकड़ों से मिलाया गया। सभी सीमांत नहीं हैं।"},Rl={kicker:"DOXA · Visione",title:"Ogni popolo. Ogni luogo.",tagline:"Da tutti i gruppi etnici del mondo a quelli per cui DOXA prega, contati dai dati.",funnelLabel:"Da tutti i gruppi etnici ai gruppi etnici DOXA",allLabel:"Gruppi etnici",allNote:"ogni gruppo etnico, in ogni paese in cui vive",unreachedLabel:"Non raggiunti",unreachedNote:"meno del 2% evangelici",frontierLabel:"Frontiera",frontierNote:"meno dello 0,1% evangelici",doxaLabel:"Gruppi etnici DOXA",doxaNote:"{frontier} di questi sono di frontiera",people:"{n} persone",sources:"Gruppi etnici: {imb}, dati del {date}. Elenco DOXA: pray.doxa.life, {date2}.",howCounted:"Come vengono contati",ruleAll:"Ogni riga dei dati IMB sui gruppi etnici: un gruppo etnico in un paese.",ruleUnreached:"Priorità di perdizione IMB da 0 a 2: meno del 2% evangelici.",ruleFrontier:"Priorità di perdizione IMB 0: meno dello 0,1% evangelici. Un sottoinsieme dei non raggiunti.",ruleDoxa:"Ogni gruppo dell’elenco di preghiera DOXA, abbinato ai dati IMB per popolo e paese. Non tutti sono di frontiera."},kl={kicker:"DOXA · Visão",title:"Cada povo. Cada lugar.",tagline:"De todos os grupos étnicos do mundo àqueles pelos quais a DOXA ora, contados a partir dos dados.",funnelLabel:"De todos os grupos étnicos aos grupos étnicos da DOXA",allLabel:"Grupos étnicos",allNote:"cada grupo étnico, em cada país onde vive",unreachedLabel:"Não alcançados",unreachedNote:"menos de 2% evangélicos",frontierLabel:"Fronteira",frontierNote:"menos de 0,1% evangélicos",doxaLabel:"Grupos étnicos da DOXA",doxaNote:"{frontier} deles são de fronteira",people:"{n} pessoas",sources:"Grupos étnicos: {imb}, dados de {date}. Lista da DOXA: pray.doxa.life, {date2}.",howCounted:"Como são contados",ruleAll:"Cada linha dos dados de grupos étnicos do IMB: um grupo étnico em um país.",ruleUnreached:"Prioridade de perdição do IMB de 0 a 2: menos de 2% evangélicos.",ruleFrontier:"Prioridade de perdição do IMB 0: menos de 0,1% evangélicos. Um subconjunto dos não alcançados.",ruleDoxa:"Cada grupo da lista de oração da DOXA, associado aos dados do IMB por povo e país. Nem todos são de fronteira."},jl={kicker:"DOXA · Viziune",title:"Fiecare popor. Fiecare loc.",tagline:"De la toate grupurile etnice ale lumii la cele pentru care se roagă DOXA, numărate din date.",funnelLabel:"De la toate grupurile etnice la grupurile etnice DOXA",allLabel:"Grupuri etnice",allNote:"fiecare grup etnic, în fiecare țară în care trăiește",unreachedLabel:"Neatinse",unreachedNote:"sub 2% evanghelici",frontierLabel:"Frontieră",frontierNote:"sub 0,1% evanghelici",doxaLabel:"Grupuri etnice DOXA",doxaNote:"{frontier} dintre ele sunt de frontieră",people:"{n} oameni",sources:"Grupuri etnice: {imb}, date din {date}. Lista DOXA: pray.doxa.life, {date2}.",howCounted:"Cum sunt numărate",ruleAll:"Fiecare rând din datele IMB despre grupuri etnice: un grup etnic într-o țară.",ruleUnreached:"Prioritatea de pierzare IMB 0–2: sub 2% evanghelici.",ruleFrontier:"Prioritatea de pierzare IMB 0: sub 0,1% evanghelici. O submulțime a celor neatinse.",ruleDoxa:"Fiecare grup de pe lista de rugăciune DOXA, potrivit cu datele IMB după popor și țară. Nu toate sunt de frontieră."},Bl={kicker:"DOXA · Видение",title:"Каждый народ. Каждое место.",tagline:"От всех народов мира до тех, за кого молится DOXA, — по данным.",funnelLabel:"От всех народов до народов DOXA",allLabel:"Народы",allNote:"каждый народ в каждой стране, где он живёт",unreachedLabel:"Недостигнутые",unreachedNote:"менее 2% евангельских христиан",frontierLabel:"Рубежные",frontierNote:"менее 0,1% евангельских христиан",doxaLabel:"Народы DOXA",doxaNote:"из них рубежных: {frontier}",people:"{n} человек",sources:"Народы: {imb}, данные на {date}. Список DOXA: pray.doxa.life, {date2}.",howCounted:"Как это посчитано",ruleAll:"Каждая строка данных IMB о народах: один народ в одной стране.",ruleUnreached:"Приоритет IMB 0–2: менее 2% евангельских христиан.",ruleFrontier:"Приоритет IMB 0: менее 0,1% евангельских христиан. Часть недостигнутых.",ruleDoxa:"Каждая группа из молитвенного списка DOXA, сопоставленная с данными IMB по народу и стране. Не все из них рубежные."},Ul={kicker:"DOXA · 异象",title:"每一个民族,每一个地方。",tagline:"从世界上所有族群到 DOXA 为之祷告的族群,全部依据数据计算。",funnelLabel:"从所有族群到 DOXA 族群",allLabel:"族群",allNote:"每个族群在其居住的每个国家各计一次",unreachedLabel:"未得之民",unreachedNote:"福音派信徒少于 2%",frontierLabel:"前沿族群",frontierNote:"福音派信徒少于 0.1%",doxaLabel:"DOXA 族群",doxaNote:"其中 {frontier} 个为前沿族群",people:"{n} 人",sources:"族群:{imb},数据日期 {date}。DOXA 名单:pray.doxa.life,{date2}。",howCounted:"这些数字如何计算",ruleAll:"IMB 族群数据的每一行:一个国家中的一个族群。",ruleUnreached:"IMB 迷失优先级 0 至 2:福音派信徒少于 2%。",ruleFrontier:"IMB 迷失优先级 0:福音派信徒少于 0.1%。属于未得之民的一部分。",ruleDoxa:"DOXA 祷告名单上的每个族群,按民族和国家与 IMB 数据匹配。并非全部都是前沿族群。"},Mt={sources:{imb:{publisher:"IMB / peoplegroups.org",captured:"2026-07-16"},doxa:{fetched:"2026-09-25"}},steps:[{id:"all",groups:12379,population:8288563969},{id:"unreached",groups:7341,population:4893057899},{id:"frontier",groups:4754,population:2813855464},{id:"doxa",groups:2107,population:209079159,frontier:1745,unreached:2082,matched:2091,unmatched:16}]},Vl=":host{display:block}.vc-root{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;box-sizing:border-box;background:#f3f3f1;color:#3b463d;font-family:Public Sans,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.vc-card{width:100%;max-width:640px;box-sizing:border-box;background:#fff;border:1px solid #d1d4cd;border-radius:16px;box-shadow:0 1px 2px #3b463d0f,0 8px 24px -12px #3b463d2e;padding:28px 28px 20px}.vc-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6d766e}.vc-mark{width:8px;height:8px;border-radius:50%;background:var(--accent)}.vc-title{margin:10px 0 6px;font-size:clamp(22px,4.2vw,30px);line-height:1.15;font-weight:800;color:#3b463d}.vc-tagline{margin:0 0 22px;font-size:15px;line-height:1.5;color:#6d766e}.vc-funnel{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.vc-bar-row{display:flex;justify-content:center}.vc-bar{box-sizing:border-box;min-height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 10px;background:var(--accent);color:#1d2a1f;animation:vc-grow .7s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--i) * 90ms);transform-origin:center}.vc-step-all .vc-bar{background:#dfe7df}.vc-step-unreached .vc-bar{background:#c3d5c4}.vc-step-frontier .vc-bar{background:#a8c3aa}.vc-step-doxa .vc-bar{background:#3b463d;color:#fff}.vc-n{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.vc-caption{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:6px;text-align:center}.vc-label{font-size:14px;font-weight:700;color:#3b463d}.vc-note{font-size:12.5px;color:#6d766e}@keyframes vc-grow{0%{transform:scaleX(.2);opacity:0}to{transform:scaleX(1);opacity:1}}@media (prefers-reduced-motion: reduce){.vc-bar{animation:none}}.vc-how{margin-top:22px;border-top:1px solid #e6e8e3;padding-top:12px;font-size:13px;color:#3b463d}.vc-how summary{cursor:pointer;font-weight:700;color:#3b463d}.vc-how summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.vc-how ul{margin:8px 0 0;padding-inline-start:18px;line-height:1.55;color:#3b463d}.vc-source{margin:12px 0 0;font-size:11.5px;line-height:1.5;color:#6d766e}",Hl=(e,t)=>{const n=e.__vccOpts||e;for(const[s,o]of t)n[s]=o;return n},Xl=["dir","lang"],Kl={class:"vc-card"},Wl={class:"vc-kicker"},ql={class:"vc-title"},zl={class:"vc-tagline"},Gl=["aria-label"],Jl={class:"vc-bar-row"},Yl={class:"vc-n"},Zl={class:"vc-caption"},Ql={class:"vc-label"},ec={class:"vc-note"},tc={class:"vc-how"},nc={class:"vc-source"},sc=Ll(Hl({__name:"doxa-vision-card",props:{profileConfig:{type:String,default:""}},setup(e){const t={};for(const[L,T]of Object.entries(Object.assign({"../../library/i18n/locales/ar/vision.json":Ml,"../../library/i18n/locales/de/vision.json":El,"../../library/i18n/locales/en/vision.json":Tl,"../../library/i18n/locales/es/vision.json":Pl,"../../library/i18n/locales/fr/vision.json":Il,"../../library/i18n/locales/hi/vision.json":Fl,"../../library/i18n/locales/it/vision.json":Rl,"../../library/i18n/locales/pt/vision.json":kl,"../../library/i18n/locales/ro/vision.json":jl,"../../library/i18n/locales/ru/vision.json":Bl,"../../library/i18n/locales/zh/vision.json":Ul}))){const A=L.match(/locales\/([^/]+)\/vision\.json$/);A&&(t[A[1]]=T)}const n=e,s=Le(()=>{if(!n.profileConfig)return{};try{return JSON.parse(n.profileConfig)||{}}catch{return{}}}),o=(()=>{try{const L=new URLSearchParams(window.location.search);return L.get("lang")||L.get("locale")||""}catch{return""}})(),r=Le(()=>{const L=String(s.value.locale||o||typeof document<"u"&&document.documentElement.lang||"en"),T=L.split("-")[0].toLowerCase();return t[L]?L:t[T]?T:"en"}),i=Le(()=>r.value==="ar"?"rtl":"ltr");function l(L,T){let A=(t[r.value]||{})[L]||(t.en||{})[L]||L;if(T)for(const X in T)A=A.split("{"+X+"}").join(String(T[X]));return A}const a=L=>new Intl.NumberFormat(r.value).format(L),d=L=>new Intl.NumberFormat(r.value,{notation:"compact",maximumFractionDigits:1}).format(L),f=L=>{try{return new Intl.DateTimeFormat(r.value,{year:"numeric",month:"long",day:"numeric"}).format(new Date(L+"T00:00:00Z"))}catch{return L}},p=Le(()=>s.value.accent||"#92b195"),w=Le(()=>s.value.title||l("title")),N=Le(()=>s.value.tagline||l("tagline")),R=Mt.steps[0].groups,M=Le(()=>Mt.steps.map(L=>({id:L.id,groups:a(L.groups),population:l("people",{n:d(L.population)}),label:l(L.id+"Label"),note:L.id==="doxa"?l("doxaNote",{frontier:a(L.frontier)}):l(L.id+"Note"),width:Math.max(24,Math.round(L.groups/R*100))}))),z=Le(()=>["ruleAll","ruleUnreached","ruleFrontier","ruleDoxa"].map(L=>l(L))),H=Le(()=>l("sources",{imb:Mt.sources.imb.publisher,date:f(Mt.sources.imb.captured),date2:f(Mt.sources.doxa.fetched)}));return(L,T)=>(At(),Lt("div",{class:"vc-root",dir:i.value,lang:r.value,style:ft({"--accent":p.value})},[Y("article",Kl,[Y("div",Wl,[T[0]||(T[0]=Y("span",{class:"vc-mark","aria-hidden":"true"},null,-1)),Do(fe(l("kicker")),1)]),Y("h1",ql,fe(w.value),1),Y("p",zl,fe(N.value),1),Y("ol",{class:"vc-funnel","aria-label":l("funnelLabel")},[(At(!0),Lt(ge,null,Qs(M.value,(A,X)=>(At(),Lt("li",{key:A.id,class:Vt(["vc-step","vc-step-"+A.id])},[Y("div",Jl,[Y("div",{class:"vc-bar",style:ft({width:A.width+"%","--i":X})},[Y("span",Yl,fe(A.groups),1)],4)]),Y("div",Zl,[Y("span",Ql,fe(A.label),1),Y("span",ec,fe(A.note)+" · "+fe(A.population),1)])],2))),128))],8,Gl),Y("details",tc,[Y("summary",null,fe(l("howCounted")),1),Y("ul",null,[(At(!0),Lt(ge,null,Qs(z.value,(A,X)=>(At(),Lt("li",{key:X},fe(A),1))),128))])]),Y("p",nc,fe(H.value),1)])],12,Xl))}},[["styles",[Vl]]]));typeof customElements<"u"&&!customElements.get("doxa-vision-card")&&customElements.define("doxa-vision-card",sc)})(); +**/let Zn;const Fo=typeof window<"u"&&window.trustedTypes;if(Fo)try{Zn=Fo.createPolicy("vue",{createHTML:e=>e})}catch{}const Ro=Zn?e=>Zn.createHTML(e):e=>e,nl="http://www.w3.org/2000/svg",sl="http://www.w3.org/1998/Math/MathML",ke=typeof document<"u"?document:null,ko=ke&&ke.createElement("template"),ol={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const o=t==="svg"?ke.createElementNS(nl,e):t==="mathml"?ke.createElementNS(sl,e):n?ke.createElement(e,{is:n}):ke.createElement(e);return e==="select"&&s&&s.multiple!=null&&o.setAttribute("multiple",s.multiple),o},createText:e=>ke.createTextNode(e),createComment:e=>ke.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ke.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,o,r){const i=n?n.previousSibling:t.lastChild;if(o&&(o===r||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===r||!(o=o.nextSibling)););else{ko.innerHTML=Ro(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=ko.content;if(s==="svg"||s==="mathml"){const a=l.firstChild;for(;a.firstChild;)l.appendChild(a.firstChild);l.removeChild(a)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},rl=Symbol("_vtc");function il(e,t,n){const s=e[rl];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const jo=Symbol("_vod"),ll=Symbol("_vsh"),cl=Symbol(""),al=/(?:^|;)\s*display\s*:/;function ul(e,t,n){const s=e.style,o=W(n);let r=!1;if(n&&!o){if(t)if(W(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&Dt(s,l,"")}else for(const i in t)n[i]==null&&Dt(s,i,"");for(const i in n){i==="display"&&(r=!0);const l=n[i];l!=null?dl(e,i,!W(t)&&t?t[i]:void 0,l)||Dt(s,i,l):Dt(s,i,"")}}else if(o){if(t!==n){const i=s[cl];i&&(n+=";"+i),s.cssText=n,r=al.test(n)}}else t&&e.removeAttribute("style");jo in e&&(e[jo]=r?s.display:"",e[ll]&&(s.display="none"))}const fn=/\s*!important$/;function Dt(e,t,n){if(S(n))n.forEach(s=>Dt(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))fn.test(n)?e.setProperty(t,n.replace(fn,""),"important"):e.setProperty(t,n);else{const s=fl(e,t);fn.test(n)?e.setProperty(ue(s),n.replace(fn,""),"important"):e[s]=n}}const Bo=["Webkit","Moz","ms"],Qn={};function fl(e,t){const n=Qn[t];if(n)return n;let s=ie(t);if(s!=="filter"&&s in e)return Qn[t]=s;s=cs(s);for(let o=0;oes||($l.then(()=>es=0),es=Date.now());function vl(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;const o=n.value;if(S(o)){const r=s.stopImmediatePropagation;s.stopImmediatePropagation=()=>{r.call(s),s._stopped=!0};const i=o.slice(),l=[s];for(let a=0;ae.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,yl=(e,t,n,s,o,r)=>{const i=o==="svg";t==="class"?il(e,s,i):t==="style"?ul(e,n,s):Ft(t)?Rt(t)||gl(e,t,n,s,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Al(e,t,s,i))?(Ho(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Vo(e,t,s,i,r,t!=="value")):e._isVueCE&&(wl(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!W(s)))?Ho(e,ie(t),s,r,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Vo(e,t,s,i))};function Al(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Ko(t)&&E(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 o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return Ko(t)&&W(n)?!1:t in e}function wl(e,t){const n=e._def.props;if(!n)return!1;const s=ie(t);return Array.isArray(n)?n.some(o=>ie(o)===s):Object.keys(n).some(o=>ie(o)===s)}const Wo={};function Ll(e,t,n){let s=Qr(e,t);jt(s)&&(s=G({},s,t));class o extends ts{constructor(i){super(s,i,n)}}return o.def=s,o}const Nl=typeof HTMLElement<"u"?HTMLElement:class{};class ts extends Nl{constructor(t,n={},s=Go){super(),this._def=t,this._props=n,this._createApp=s,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&&s!==Go?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(G({},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 ts){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,js(()=>{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 s=0;s{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:i}=s;let l;if(r&&!S(r))for(const a in r){const d=r[a];(d===Number||d&&d.type===Number)&&(a in this._props&&(this._props[a]=us(this._props[a])),(l||(l=Object.create(null)))[ie(a)]=!0)}this._numberProps=l,this._resolveProps(s),this.shadowRoot&&this._applyStyles(i),this._mount(s)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(s=>{s.configureApp=this._def.configureApp,t(this._def=s,!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 s in n)I(this,s)||Object.defineProperty(this,s,{get:()=>Is(n[s])})}_resolveProps(t){const{props:n}=t,s=S(n)?n:Object.keys(n||{});for(const o of Object.keys(this))o[0]!=="_"&&s.includes(o)&&this._setProp(o,this[o]);for(const o of s.map(ie))Object.defineProperty(this,o,{get(){return this._getProp(o)},set(r){this._setProp(o,r,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const n=this.hasAttribute(t);let s=n?this.getAttribute(t):Wo;const o=ie(t);n&&this._numberProps&&this._numberProps[o]&&(s=us(s)),this._setProp(o,s,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,s=!0,o=!1){if(n!==this._props[t]&&(this._dirty=!0,n===Wo?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),o&&this._instance&&this._update(),s)){const r=this._ob;r&&(this._processMutations(r.takeRecords()),r.disconnect()),n===!0?this.setAttribute(ue(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(ue(t),n+""):n||this.removeAttribute(ue(t)),r&&r.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Ol(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=He(this._def,G(t,this._props));return this._instance||(n.ce=s=>{this._instance=s,s.ce=this,s.isCE=!0;const o=(r,i)=>{this.dispatchEvent(new CustomEvent(r,jt(i[0])?G({detail:i},i[0]):{detail:i}))};s.emit=(r,...i)=>{o(r,i),ue(r)!==r&&o(ue(r),i)},this._setParent()}),n}_applyStyles(t,n,s){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const o=this._nonce,r=this.shadowRoot,i=s?this._getStyleAnchor(s)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(r);let l=null;for(let a=t.length-1;a>=0;a--){const d=document.createElement("style");o&&d.setAttribute("nonce",o),d.textContent=t[a],r.insertBefore(d,l||i),l=d,a===0&&(s||this._styleAnchors.set(this._def,d),n&&this._styleAnchors.set(n,d))}}_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{zo().render(...e)},Go=(...e)=>{const t=zo().createApp(...e),{mount:n}=t;return t.mount=s=>{const o=Dl(s);if(!o)return;const r=t._component;!E(r)&&!r.render&&!r.template&&(r.template=o.innerHTML),o.nodeType===1&&(o.textContent="");const i=n(o,!1,Sl(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t};function Sl(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Dl(e){return W(e)?document.querySelector(e):e}const Ml={kicker:"DOXA · الرؤية",title:"كل شعب. كل مكان.",tagline:"من كل مجموعات الشعوب في العالم إلى التي تصلي لأجلها DOXA، محسوبةً من البيانات.",funnelLabel:"من كل مجموعات الشعوب إلى مجموعات شعوب DOXA",allLabel:"مجموعات الشعوب",allNote:"كل مجموعة شعب، في كل بلد تعيش فيه",unreachedLabel:"غير المُبشَّرة",unreachedNote:"أقل من 2% إنجيليون",frontierLabel:"الحدودية",frontierNote:"أقل من 0.1% إنجيليون",doxaLabel:"مجموعات شعوب DOXA",doxaNote:"{frontier} منها حدودية",people:"{n} نسمة",sources:"مجموعات الشعوب: {imb}، بيانات {date}. قائمة DOXA: ‏pray.doxa.life، {date2}.",howCounted:"كيف تُحسب هذه الأرقام",ruleAll:"كل صف في بيانات IMB لمجموعات الشعوب: مجموعة شعب واحدة في بلد واحد.",ruleUnreached:"أولوية الضياع لدى IMB من 0 إلى 2: أقل من 2% إنجيليون.",ruleFrontier:"أولوية الضياع لدى IMB رقم 0: أقل من 0.1% إنجيليون. جزء من غير المُبشَّرة.",ruleDoxa:"كل مجموعة في قائمة صلاة DOXA، مطابَقة مع بيانات IMB حسب الشعب والبلد. ليست كلها حدودية."},El={kicker:"DOXA · Vision",title:"Jedes Volk. Jeder Ort.",tagline:"Von allen Volksgruppen der Welt bis zu denen, für die DOXA betet, aus den Daten gezählt.",funnelLabel:"Von allen Volksgruppen zu den DOXA-Volksgruppen",allLabel:"Volksgruppen",allNote:"jede Volksgruppe in jedem Land, in dem sie lebt",unreachedLabel:"Unerreicht",unreachedNote:"unter 2 % Evangelikale",frontierLabel:"Frontier",frontierNote:"unter 0,1 % Evangelikale",doxaLabel:"DOXA-Volksgruppen",doxaNote:"{frontier} davon sind Frontier",people:"{n} Menschen",sources:"Volksgruppen: {imb}, Datenstand {date}. DOXA-Liste: pray.doxa.life, {date2}.",howCounted:"So wird gezählt",ruleAll:"Jede Zeile der IMB-Volksgruppendaten: eine Volksgruppe in einem Land.",ruleUnreached:"IMB-Lostness-Priorität 0 bis 2: weniger als 2 % Evangelikale.",ruleFrontier:"IMB-Lostness-Priorität 0: weniger als 0,1 % Evangelikale. Eine Teilmenge der Unerreichten.",ruleDoxa:"Jede Gruppe auf der DOXA-Gebetsliste, den IMB-Daten nach Volk und Land zugeordnet. Nicht alle sind Frontier."},Tl={kicker:"DOXA · Vision",title:"Every people. Every place.",tagline:"From every people group on earth to the ones DOXA prays for, counted from the data.",funnelLabel:"From all people groups to DOXA people groups",allLabel:"People groups",allNote:"each people group, in each country it lives in",unreachedLabel:"Unreached",unreachedNote:"under 2% evangelical",frontierLabel:"Frontier",frontierNote:"under 0.1% evangelical",doxaLabel:"DOXA people groups",doxaNote:"{frontier} of them are frontier",people:"{n} people",sources:"People groups: {imb}, data of {date}. DOXA list: pray.doxa.life, {date2}.",howCounted:"How these are counted",ruleAll:"Every row of the IMB people-group data: one people group in one country.",ruleUnreached:"IMB lostness priority 0 to 2: less than 2% evangelical.",ruleFrontier:"IMB lostness priority 0: less than 0.1% evangelical. A subset of the unreached.",ruleDoxa:"Every group on the DOXA prayer list, matched to the IMB data by people and country. Not all are frontier."},Pl={kicker:"DOXA · Visión",title:"Cada pueblo. Cada lugar.",tagline:"De todos los grupos étnicos del mundo a aquellos por los que DOXA ora, contados a partir de los datos.",funnelLabel:"De todos los grupos étnicos a los grupos étnicos de DOXA",allLabel:"Grupos étnicos",allNote:"cada grupo étnico, en cada país donde vive",unreachedLabel:"No alcanzados",unreachedNote:"menos del 2 % evangélicos",frontierLabel:"Frontera",frontierNote:"menos del 0,1 % evangélicos",doxaLabel:"Grupos étnicos de DOXA",doxaNote:"{frontier} de ellos son de frontera",people:"{n} personas",sources:"Grupos étnicos: {imb}, datos de {date}. Lista de DOXA: pray.doxa.life, {date2}.",howCounted:"Cómo se cuentan",ruleAll:"Cada fila de los datos de grupos étnicos del IMB: un grupo étnico en un país.",ruleUnreached:"Prioridad de perdición del IMB de 0 a 2: menos del 2 % evangélicos.",ruleFrontier:"Prioridad de perdición del IMB 0: menos del 0,1 % evangélicos. Un subconjunto de los no alcanzados.",ruleDoxa:"Cada grupo de la lista de oración de DOXA, vinculado a los datos del IMB por pueblo y país. No todos son de frontera."},Il={kicker:"DOXA · Vision",title:"Chaque peuple. Chaque lieu.",tagline:"De tous les groupes ethniques du monde à ceux pour qui DOXA prie, comptés à partir des données.",funnelLabel:"De tous les groupes ethniques aux groupes ethniques DOXA",allLabel:"Groupes ethniques",allNote:"chaque groupe ethnique, dans chaque pays où il vit",unreachedLabel:"Non atteints",unreachedNote:"moins de 2 % d’évangéliques",frontierLabel:"Frontière",frontierNote:"moins de 0,1 % d’évangéliques",doxaLabel:"Groupes ethniques DOXA",doxaNote:"dont {frontier} de frontière",people:"{n} personnes",sources:"Groupes ethniques : {imb}, données du {date}. Liste DOXA : pray.doxa.life, {date2}.",howCounted:"Comment ces chiffres sont comptés",ruleAll:"Chaque ligne des données IMB : un groupe ethnique dans un pays.",ruleUnreached:"Priorité de perdition IMB 0 à 2 : moins de 2 % d’évangéliques.",ruleFrontier:"Priorité de perdition IMB 0 : moins de 0,1 % d’évangéliques. Un sous-ensemble des non-atteints.",ruleDoxa:"Chaque groupe de la liste de prière DOXA, rapproché des données IMB par peuple et pays. Tous ne sont pas de frontière."},Fl={kicker:"DOXA · दर्शन",title:"हर जनसमूह। हर स्थान।",tagline:"दुनिया के हर जनसमूह से उन तक जिनके लिए DOXA प्रार्थना करता है, आँकड़ों से गिने गए।",funnelLabel:"सभी जनसमूहों से DOXA जनसमूहों तक",allLabel:"जनसमूह",allNote:"हर जनसमूह, हर उस देश में जहाँ वह रहता है",unreachedLabel:"अप्रचारित",unreachedNote:"2% से कम इवेंजेलिकल",frontierLabel:"सीमांत",frontierNote:"0.1% से कम इवेंजेलिकल",doxaLabel:"DOXA जनसमूह",doxaNote:"इनमें से {frontier} सीमांत हैं",people:"{n} लोग",sources:"जनसमूह: {imb}, {date} के आँकड़े। DOXA सूची: pray.doxa.life, {date2}।",howCounted:"ये कैसे गिने गए",ruleAll:"IMB जनसमूह आँकड़ों की हर पंक्ति: एक देश में एक जनसमूह।",ruleUnreached:"IMB लॉस्टनेस प्राथमिकता 0 से 2: 2% से कम इवेंजेलिकल।",ruleFrontier:"IMB लॉस्टनेस प्राथमिकता 0: 0.1% से कम इवेंजेलिकल। अप्रचारितों का एक भाग।",ruleDoxa:"DOXA प्रार्थना सूची का हर समूह, जनसमूह और देश के आधार पर IMB आँकड़ों से मिलाया गया। सभी सीमांत नहीं हैं।"},Rl={kicker:"DOXA · Visione",title:"Ogni popolo. Ogni luogo.",tagline:"Da tutti i gruppi etnici del mondo a quelli per cui DOXA prega, contati dai dati.",funnelLabel:"Da tutti i gruppi etnici ai gruppi etnici DOXA",allLabel:"Gruppi etnici",allNote:"ogni gruppo etnico, in ogni paese in cui vive",unreachedLabel:"Non raggiunti",unreachedNote:"meno del 2% evangelici",frontierLabel:"Frontiera",frontierNote:"meno dello 0,1% evangelici",doxaLabel:"Gruppi etnici DOXA",doxaNote:"{frontier} di questi sono di frontiera",people:"{n} persone",sources:"Gruppi etnici: {imb}, dati del {date}. Elenco DOXA: pray.doxa.life, {date2}.",howCounted:"Come vengono contati",ruleAll:"Ogni riga dei dati IMB sui gruppi etnici: un gruppo etnico in un paese.",ruleUnreached:"Priorità di perdizione IMB da 0 a 2: meno del 2% evangelici.",ruleFrontier:"Priorità di perdizione IMB 0: meno dello 0,1% evangelici. Un sottoinsieme dei non raggiunti.",ruleDoxa:"Ogni gruppo dell’elenco di preghiera DOXA, abbinato ai dati IMB per popolo e paese. Non tutti sono di frontiera."},kl={kicker:"DOXA · Visão",title:"Cada povo. Cada lugar.",tagline:"De todos os grupos étnicos do mundo àqueles pelos quais a DOXA ora, contados a partir dos dados.",funnelLabel:"De todos os grupos étnicos aos grupos étnicos da DOXA",allLabel:"Grupos étnicos",allNote:"cada grupo étnico, em cada país onde vive",unreachedLabel:"Não alcançados",unreachedNote:"menos de 2% evangélicos",frontierLabel:"Fronteira",frontierNote:"menos de 0,1% evangélicos",doxaLabel:"Grupos étnicos da DOXA",doxaNote:"{frontier} deles são de fronteira",people:"{n} pessoas",sources:"Grupos étnicos: {imb}, dados de {date}. Lista da DOXA: pray.doxa.life, {date2}.",howCounted:"Como são contados",ruleAll:"Cada linha dos dados de grupos étnicos do IMB: um grupo étnico em um país.",ruleUnreached:"Prioridade de perdição do IMB de 0 a 2: menos de 2% evangélicos.",ruleFrontier:"Prioridade de perdição do IMB 0: menos de 0,1% evangélicos. Um subconjunto dos não alcançados.",ruleDoxa:"Cada grupo da lista de oração da DOXA, associado aos dados do IMB por povo e país. Nem todos são de fronteira."},jl={kicker:"DOXA · Viziune",title:"Fiecare popor. Fiecare loc.",tagline:"De la toate grupurile etnice ale lumii la cele pentru care se roagă DOXA, numărate din date.",funnelLabel:"De la toate grupurile etnice la grupurile etnice DOXA",allLabel:"Grupuri etnice",allNote:"fiecare grup etnic, în fiecare țară în care trăiește",unreachedLabel:"Neatinse",unreachedNote:"sub 2% evanghelici",frontierLabel:"Frontieră",frontierNote:"sub 0,1% evanghelici",doxaLabel:"Grupuri etnice DOXA",doxaNote:"{frontier} dintre ele sunt de frontieră",people:"{n} oameni",sources:"Grupuri etnice: {imb}, date din {date}. Lista DOXA: pray.doxa.life, {date2}.",howCounted:"Cum sunt numărate",ruleAll:"Fiecare rând din datele IMB despre grupuri etnice: un grup etnic într-o țară.",ruleUnreached:"Prioritatea de pierzare IMB 0–2: sub 2% evanghelici.",ruleFrontier:"Prioritatea de pierzare IMB 0: sub 0,1% evanghelici. O submulțime a celor neatinse.",ruleDoxa:"Fiecare grup de pe lista de rugăciune DOXA, potrivit cu datele IMB după popor și țară. Nu toate sunt de frontieră."},Bl={kicker:"DOXA · Видение",title:"Каждый народ. Каждое место.",tagline:"От всех народов мира до тех, за кого молится DOXA, — по данным.",funnelLabel:"От всех народов до народов DOXA",allLabel:"Народы",allNote:"каждый народ в каждой стране, где он живёт",unreachedLabel:"Недостигнутые",unreachedNote:"менее 2% евангельских христиан",frontierLabel:"Рубежные",frontierNote:"менее 0,1% евангельских христиан",doxaLabel:"Народы DOXA",doxaNote:"из них рубежных: {frontier}",people:"{n} человек",sources:"Народы: {imb}, данные на {date}. Список DOXA: pray.doxa.life, {date2}.",howCounted:"Как это посчитано",ruleAll:"Каждая строка данных IMB о народах: один народ в одной стране.",ruleUnreached:"Приоритет IMB 0–2: менее 2% евангельских христиан.",ruleFrontier:"Приоритет IMB 0: менее 0,1% евангельских христиан. Часть недостигнутых.",ruleDoxa:"Каждая группа из молитвенного списка DOXA, сопоставленная с данными IMB по народу и стране. Не все из них рубежные."},Ul={kicker:"DOXA · 异象",title:"每一个民族,每一个地方。",tagline:"从世界上所有族群到 DOXA 为之祷告的族群,全部依据数据计算。",funnelLabel:"从所有族群到 DOXA 族群",allLabel:"族群",allNote:"每个族群在其居住的每个国家各计一次",unreachedLabel:"未得之民",unreachedNote:"福音派信徒少于 2%",frontierLabel:"前沿族群",frontierNote:"福音派信徒少于 0.1%",doxaLabel:"DOXA 族群",doxaNote:"其中 {frontier} 个为前沿族群",people:"{n} 人",sources:"族群:{imb},数据日期 {date}。DOXA 名单:pray.doxa.life,{date2}。",howCounted:"这些数字如何计算",ruleAll:"IMB 族群数据的每一行:一个国家中的一个族群。",ruleUnreached:"IMB 迷失优先级 0 至 2:福音派信徒少于 2%。",ruleFrontier:"IMB 迷失优先级 0:福音派信徒少于 0.1%。属于未得之民的一部分。",ruleDoxa:"DOXA 祷告名单上的每个族群,按民族和国家与 IMB 数据匹配。并非全部都是前沿族群。"},Mt={sources:{imb:{publisher:"IMB / peoplegroups.org",captured:"2026-07-16"},doxa:{fetched:"2026-09-25"}},steps:[{id:"all",groups:12379,population:8288563969},{id:"unreached",groups:7341,population:4893057899},{id:"frontier",groups:4754,population:2813855464},{id:"doxa",groups:2107,population:209079159,frontier:1745,unreached:2082,matched:2091,unmatched:16}]},Vl=":host{display:block}.vc-root{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;box-sizing:border-box;background:#f3f3f1;color:#3b463d;font-family:Public Sans,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.vc-card{width:100%;max-width:640px;box-sizing:border-box;background:#fff;border:1px solid #d1d4cd;border-radius:16px;box-shadow:0 1px 2px #3b463d0f,0 8px 24px -12px #3b463d2e;padding:28px 28px 20px}.vc-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6d766e}.vc-mark{width:8px;height:8px;border-radius:50%;background:var(--accent)}.vc-title{margin:10px 0 6px;font-size:clamp(22px,4.2vw,30px);line-height:1.15;font-weight:800;color:#3b463d}.vc-tagline{margin:0 0 22px;font-size:15px;line-height:1.5;color:#6d766e}.vc-funnel{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.vc-bar-row{display:flex;justify-content:center}.vc-bar{box-sizing:border-box;min-height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 10px;background:var(--accent);color:#1d2a1f;animation:vc-grow .7s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--i) * 90ms);transform-origin:center}.vc-step-all .vc-bar{background:#dfe7df}.vc-step-unreached .vc-bar{background:#c3d5c4}.vc-step-frontier .vc-bar{background:#a8c3aa}.vc-step-doxa .vc-bar{background:#3b463d;color:#fff}.vc-n{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.vc-caption{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:6px;text-align:center}.vc-label{font-size:14px;font-weight:700;color:#3b463d}.vc-note{font-size:12.5px;color:#6d766e}@keyframes vc-grow{0%{transform:scaleX(.2);opacity:0}to{transform:scaleX(1);opacity:1}}@media (prefers-reduced-motion: reduce){.vc-bar{animation:none}}.vc-how{margin-top:22px;border-top:1px solid #e6e8e3;padding-top:12px;font-size:13px;color:#3b463d}.vc-how summary{cursor:pointer;font-weight:700;color:#3b463d}.vc-how summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.vc-how ul{margin:8px 0 0;padding-inline-start:18px;line-height:1.55;color:#3b463d}.vc-source{margin:12px 0 0;font-size:11.5px;line-height:1.5;color:#6d766e}",Hl=(e,t)=>{const n=e.__vccOpts||e;for(const[s,o]of t)n[s]=o;return n},Xl=["dir","lang"],Kl={class:"vc-card"},Wl={class:"vc-kicker"},ql={class:"vc-title"},zl={class:"vc-tagline"},Gl=["aria-label"],Jl={class:"vc-bar-row"},Yl={class:"vc-n"},Zl={class:"vc-caption"},Ql={class:"vc-label"},ec={class:"vc-note"},tc={class:"vc-how"},nc={class:"vc-source"},sc=Ll(Hl({__name:"doxa-vision-card",props:{profileConfig:{type:String,default:""}},setup(e){const t={};for(const[L,T]of Object.entries(Object.assign({"../../library/i18n/locales/ar/vision.json":Ml,"../../library/i18n/locales/de/vision.json":El,"../../library/i18n/locales/en/vision.json":Tl,"../../library/i18n/locales/es/vision.json":Pl,"../../library/i18n/locales/fr/vision.json":Il,"../../library/i18n/locales/hi/vision.json":Fl,"../../library/i18n/locales/it/vision.json":Rl,"../../library/i18n/locales/pt/vision.json":kl,"../../library/i18n/locales/ro/vision.json":jl,"../../library/i18n/locales/ru/vision.json":Bl,"../../library/i18n/locales/zh/vision.json":Ul}))){const A=L.match(/locales\/([^/]+)\/vision\.json$/);A&&(t[A[1]]=T)}const n=e,s=Le(()=>{if(!n.profileConfig)return{};try{return JSON.parse(n.profileConfig)||{}}catch{return{}}}),o=(()=>{try{const L=new URLSearchParams(window.location.search);return L.get("lang")||L.get("locale")||""}catch{return""}})(),r=Le(()=>{const L=String(s.value.locale||s.value.lang||o||typeof document<"u"&&document.documentElement.lang||"en"),T=L.split("-")[0].toLowerCase();return t[L]?L:t[T]?T:"en"}),i=Le(()=>r.value==="ar"?"rtl":"ltr");function l(L,T){let A=(t[r.value]||{})[L]||(t.en||{})[L]||L;if(T)for(const X in T)A=A.split("{"+X+"}").join(String(T[X]));return A}const a=L=>new Intl.NumberFormat(r.value).format(L),d=L=>new Intl.NumberFormat(r.value,{notation:"compact",maximumFractionDigits:1}).format(L),f=L=>{try{return new Intl.DateTimeFormat(r.value,{year:"numeric",month:"long",day:"numeric"}).format(new Date(L+"T00:00:00Z"))}catch{return L}},p=Le(()=>s.value.accent||"#92b195"),w=Le(()=>s.value.title||l("title")),N=Le(()=>s.value.tagline||l("tagline")),R=Mt.steps[0].groups,M=Le(()=>Mt.steps.map(L=>({id:L.id,groups:a(L.groups),population:l("people",{n:d(L.population)}),label:l(L.id+"Label"),note:L.id==="doxa"?l("doxaNote",{frontier:a(L.frontier)}):l(L.id+"Note"),width:Math.max(24,Math.round(L.groups/R*100))}))),z=Le(()=>["ruleAll","ruleUnreached","ruleFrontier","ruleDoxa"].map(L=>l(L))),H=Le(()=>l("sources",{imb:Mt.sources.imb.publisher,date:f(Mt.sources.imb.captured),date2:f(Mt.sources.doxa.fetched)}));return(L,T)=>(At(),Lt("div",{class:"vc-root",dir:i.value,lang:r.value,style:ft({"--accent":p.value})},[Y("article",Kl,[Y("div",Wl,[T[0]||(T[0]=Y("span",{class:"vc-mark","aria-hidden":"true"},null,-1)),Do(fe(l("kicker")),1)]),Y("h1",ql,fe(w.value),1),Y("p",zl,fe(N.value),1),Y("ol",{class:"vc-funnel","aria-label":l("funnelLabel")},[(At(!0),Lt(ge,null,Qs(M.value,(A,X)=>(At(),Lt("li",{key:A.id,class:Vt(["vc-step","vc-step-"+A.id])},[Y("div",Jl,[Y("div",{class:"vc-bar",style:ft({width:A.width+"%","--i":X})},[Y("span",Yl,fe(A.groups),1)],4)]),Y("div",Zl,[Y("span",Ql,fe(A.label),1),Y("span",ec,fe(A.note)+" · "+fe(A.population),1)])],2))),128))],8,Gl),Y("details",tc,[Y("summary",null,fe(l("howCounted")),1),Y("ul",null,[(At(!0),Lt(ge,null,Qs(z.value,(A,X)=>(At(),Lt("li",{key:X},fe(A),1))),128))])]),Y("p",nc,fe(H.value),1)])],12,Xl))}},[["styles",[Vl]]]));typeof customElements<"u"&&!customElements.get("doxa-vision-card")&&customElements.define("doxa-vision-card",sc)})(); diff --git a/public/dx-maps/doxa-vision-card/doxa-vision-card/default/index.html b/public/dx-maps/doxa-vision-card/doxa-vision-card/default/index.html index 94564c3a..b64ef181 100644 --- a/public/dx-maps/doxa-vision-card/doxa-vision-card/default/index.html +++ b/public/dx-maps/doxa-vision-card/doxa-vision-card/default/index.html @@ -26,7 +26,7 @@ - + - + - + \n\n" + "script": "\n\n" }, "instances": [ {