doxa-maps/public/dx-maps/plugin-studio/plugin-studio.js
Doxa Maps a559665e17
Some checks are pending
Deploy to GitHub Pages / build (push) Waiting to run
Deploy to GitHub Pages / deploy (push) Blocked by required conditions
Update from source 3ed7d8d0c
2026-09-28 12:24:20 +00:00

236 lines
228 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(function(){"use strict";/**
* @vue/shared v3.5.42
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/function Wo(e){const t=Object.create(null);for(const o of e.split(","))t[o]=1;return o=>o in t}const B={},lt=[],ye=()=>{},Rn=()=>!1,Yt=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Jt=e=>e.startsWith("onUpdate:"),Q=Object.assign,zo=(e,t)=>{const o=e.indexOf(t);o>-1&&e.splice(o,1)},nl=Object.prototype.hasOwnProperty,D=(e,t)=>nl.call(e,t),T=Array.isArray,Ge=e=>vt(e)==="[object Map]",Xt=e=>vt(e)==="[object Set]",Wn=e=>vt(e)==="[object Date]",O=e=>typeof e=="function",J=e=>typeof e=="string",_e=e=>typeof e=="symbol",W=e=>e!==null&&typeof e=="object",zn=e=>(W(e)||O(e))&&O(e.then)&&O(e.catch),jn=Object.prototype.toString,vt=e=>jn.call(e),sl=e=>vt(e).slice(8,-1),Zt=e=>vt(e)==="[object Object]",jo=e=>J(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,xt=Wo(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Qt=e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))},il=/-\w/g,ne=Qt(e=>e.replace(il,t=>t.slice(1).toUpperCase())),ll=/\B([A-Z])/g,be=Qt(e=>e.replace(ll,"-$1").toLowerCase()),eo=Qt(e=>e.charAt(0).toUpperCase()+e.slice(1)),Bo=Qt(e=>e?`on${eo(e)}`:""),De=(e,t)=>!Object.is(e,t),to=(e,...t)=>{for(let o=0;o<e.length;o++)e[o](...t)},Bn=(e,t,o,n=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:o})},Ko=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Kn=e=>{const t=J(e)?Number(e):NaN;return isNaN(t)?e:t};let Vn;const oo=()=>Vn||(Vn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function kt(e){if(T(e)){const t={};for(let o=0;o<e.length;o++){const n=e[o],s=J(n)?dl(n):kt(n);if(s)for(const i in s)t[i]=s[i]}return t}else if(J(e)||W(e))return e}const al=/;(?![^(]*\))/g,rl=/:([^]+)/,cl=/\/\*[^]*?\*\//g;function dl(e){const t={};return e.replace(cl,"").split(al).forEach(o=>{if(o){const n=o.split(rl);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function ge(e){let t="";if(J(e))t=e;else if(T(e))for(let o=0;o<e.length;o++){const n=ge(e[o]);n&&(t+=n+" ")}else if(W(e))for(const o in e)e[o]&&(t+=o+" ");return t.trim()}const pl=Wo("itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly");function qn(e){return!!e||e===""}function ul(e,t){if(e.length!==t.length)return!1;let o=!0;for(let n=0;o&&n<e.length;n++)o=no(e[n],t[n]);return o}function Gn(e,t){if(e.size!==t.size)return!1;const o=Array.from(t),n=new Uint8Array(o.length);for(const s of e){let i=-1;for(let l=0;l<o.length;l++)if(!n[l]&&no(s,o[l])){i=l;break}if(i<0)return!1;n[i]=1}return!0}function no(e,t){if(e===t)return!0;let o=Wn(e),n=Wn(t);if(o||n)return o&&n?e.getTime()===t.getTime():!1;if(o=_e(e),n=_e(t),o||n)return e===t;if(o=T(e),n=T(t),o||n)return o&&n?ul(e,t):!1;if(o=W(e),n=W(t),o||n){if(!o||!n)return!1;if(o=Ge(e),n=Ge(t),o||n||(o=Xt(e),n=Xt(t),o||n))return o&&n?Gn(e,t):!1;const s=Object.keys(e).length,i=Object.keys(t).length;if(s!==i)return!1;for(const l in e){const a=e.hasOwnProperty(l),r=t.hasOwnProperty(l);if(a&&!r||!a&&r||!no(e[l],t[l]))return!1}}return String(e)===String(t)}const Yn=e=>!!(e&&e.__v_isRef===!0),P=e=>J(e)?e:e==null?"":T(e)||W(e)&&(e.toString===jn||!O(e.toString))?Yn(e)?P(e.value):JSON.stringify(e,Jn,2):String(e),Jn=(e,t)=>Yn(t)?Jn(e,t.value):Ge(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[n,s],i)=>(o[Vo(n,i)+" =>"]=s,o),{})}:Xt(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>Vo(o))}:_e(t)?Vo(t):W(t)&&!T(t)&&!Zt(t)?String(t):t,Vo=(e,t="")=>{var o;return _e(e)?`Symbol(${(o=e.description)!=null?o:t})`:e};/**
* @vue/reactivity v3.5.42
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/let se;class fl{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&&se&&(se.active?(this.parent=se,this.index=(se.scopes||(se.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,o;if(this.scopes){const n=this.scopes.slice();for(t=0,o=n.length;t<o;t++)n[t].pause()}for(t=0,o=this.effects.length;t<o;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,o;if(this.scopes){const s=this.scopes.slice();for(t=0,o=s.length;t<o;t++)s[t].resume()}const n=this.effects.slice();for(t=0,o=n.length;t<o;t++)n[t].resume()}}run(t){if(this._active){const o=se;try{return se=this,t()}finally{se=o}}}on(){++this._on===1&&(this.prevScope=se,se=this)}off(){if(this._on>0&&--this._on===0){if(se===this)se=this.prevScope;else{let t=se;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let o,n;for(o=0,n=this.effects.length;o<n;o++)this.effects[o].stop();for(this.effects.length=0,o=0,n=this.cleanups.length;o<n;o++)this.cleanups[o]();if(this.cleanups.length=0,this.scopes){const s=this.scopes.slice();for(o=0,n=s.length;o<n;o++)s[o].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const s=this.parent.scopes.pop();s&&s!==this&&(this.parent.scopes[this.index]=s,s.index=this.index)}this.parent=void 0}}}function gl(){return se}let V;const qo=new WeakSet;class Xn{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,se&&(se.active?se.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,qo.has(this)&&(qo.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||Qn(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,ss(this),es(this);const t=V,o=ve;V=this,ve=!0;try{return this.fn()}finally{ts(this),V=t,ve=o,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Xo(t);this.deps=this.depsTail=void 0,ss(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?qo.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Jo(this)&&this.run()}get dirty(){return Jo(this)}}let Zn=0,yt,wt;function Qn(e,t=!1){if(e.flags|=8,t){e.next=wt,wt=e;return}e.next=yt,yt=e}function Go(){Zn++}function Yo(){if(--Zn>0)return;if(wt){let t=wt;for(wt=void 0;t;){const o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;yt;){let t=yt;for(yt=void 0;t;){const o=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=o}}if(e)throw e}function es(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ts(e){let t,o=e.depsTail,n=o;for(;n;){const s=n.prevDep;n.version===-1?(n===o&&(o=s),Xo(n),hl(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=s}e.deps=t,e.depsTail=o}function Jo(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(os(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function os(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===St)||(e.globalVersion=St,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Jo(e))))return;e.flags|=2;const t=e.dep,o=V,n=ve;V=e,ve=!0;try{es(e);const s=e.fn(e._value);(t.version===0||De(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{V=o,ve=n,ts(e),e.flags&=-3}}function Xo(e,t=!1){const{dep:o,prevSub:n,nextSub:s}=e;if(n&&(n.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=n,e.nextSub=void 0),o.subs===e&&(o.subs=n,!n&&o.computed)){o.computed.flags&=-5;for(let i=o.computed.deps;i;i=i.nextDep)Xo(i,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function hl(e){const{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}let ve=!0;const ns=[];function we(){ns.push(ve),ve=!1}function Se(){const e=ns.pop();ve=e===void 0?!0:e}function ss(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const o=V;V=void 0;try{t()}finally{V=o}}}let St=0;class $l{constructor(t,o){this.sub=t,this.dep=o,this.version=o.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class is{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(!V||!ve||V===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==V)o=this.activeLink=new $l(V,this),V.deps?(o.prevDep=V.depsTail,V.depsTail.nextDep=o,V.depsTail=o):V.deps=V.depsTail=o,ls(o);else if(o.version===-1&&(o.version=this.version,o.nextDep)){const n=o.nextDep;n.prevDep=o.prevDep,o.prevDep&&(o.prevDep.nextDep=n),o.prevDep=V.depsTail,o.nextDep=void 0,V.depsTail.nextDep=o,V.depsTail=o,V.deps===o&&(V.deps=n)}return o}trigger(t){this.version++,St++,this.notify(t)}notify(t){Go();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{Yo()}}}function ls(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)ls(n)}const o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}const Zo=new WeakMap,Ze=Symbol(""),Qo=Symbol(""),Lt=Symbol("");function ae(e,t,o){if(ve&&V){let n=Zo.get(e);n||Zo.set(e,n=new Map);let s=n.get(o);s||(n.set(o,s=new is),s.map=n,s.key=o),s.track()}}function Ue(e,t,o,n,s,i){const l=Zo.get(e);if(!l){St++;return}const a=r=>{r&&r.trigger()};if(Go(),t==="clear")l.forEach(a);else{const r=T(e),p=r&&jo(o);if(r&&o==="length"){const d=Number(n);l.forEach((f,v)=>{(v==="length"||v===Lt||!_e(v)&&v>=d)&&a(f)})}else switch((o!==void 0||l.has(void 0))&&a(l.get(o)),p&&a(l.get(Lt)),t){case"add":r?p&&a(l.get("length")):(a(l.get(Ze)),Ge(e)&&a(l.get(Qo)));break;case"delete":r||(a(l.get(Ze)),Ge(e)&&a(l.get(Qo)));break;case"set":Ge(e)&&a(l.get(Ze));break}}Yo()}function at(e){const t=U(e);return t===e?t:(ae(t,"iterate",Lt),xe(e)?t:t.map(We))}function so(e){return ae(e=U(e),"iterate",Lt),e}function Le(e,t){return Ye(e)?rt(Qe(e)?We(t):t):We(t)}const bl={__proto__:null,[Symbol.iterator](){return en(this,Symbol.iterator,e=>Le(this,e))},concat(...e){return at(this).concat(...e.map(t=>T(t)?at(t):t))},entries(){return en(this,"entries",e=>(e[1]=Le(this,e[1]),e))},every(e,t){return Re(this,"every",e,t,void 0,arguments)},filter(e,t){return Re(this,"filter",e,t,o=>o.map(n=>Le(this,n)),arguments)},find(e,t){return Re(this,"find",e,t,o=>Le(this,o),arguments)},findIndex(e,t){return Re(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Re(this,"findLast",e,t,o=>Le(this,o),arguments)},findLastIndex(e,t){return Re(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Re(this,"forEach",e,t,void 0,arguments)},includes(...e){return tn(this,"includes",e)},indexOf(...e){return tn(this,"indexOf",e)},join(e){return at(this).join(e)},lastIndexOf(...e){return tn(this,"lastIndexOf",e)},map(e,t){return Re(this,"map",e,t,void 0,arguments)},pop(){return Nt(this,"pop")},push(...e){return Nt(this,"push",e)},reduce(e,...t){return as(this,"reduce",e,t)},reduceRight(e,...t){return as(this,"reduceRight",e,t)},shift(){return Nt(this,"shift")},some(e,t){return Re(this,"some",e,t,void 0,arguments)},splice(...e){return Nt(this,"splice",e)},toReversed(){return at(this).toReversed()},toSorted(e){return at(this).toSorted(e)},toSpliced(...e){return at(this).toSpliced(...e)},unshift(...e){return Nt(this,"unshift",e)},values(){return en(this,"values",e=>Le(this,e))}};function en(e,t,o){const n=so(e),s=n[t]();return n!==e&&!xe(e)&&(s._next=s.next,s.next=()=>{const i=s._next();return i.done||(i.value=o(i.value)),i}),s}const ml=Array.prototype;function Re(e,t,o,n,s,i){const l=so(e),a=l!==e&&!xe(e),r=l[t];if(r!==ml[t]){const f=r.apply(e,i);return a?We(f):f}let p=o;l!==e&&(a?p=function(f,v){return o.call(this,Le(e,f),v,e)}:o.length>2&&(p=function(f,v){return o.call(this,f,v,e)}));const d=r.call(l,p,n);return a&&s?s(d):d}function as(e,t,o,n){const s=so(e),i=s!==e&&!xe(e);let l=o,a=!1;s!==e&&(i?(a=n.length===0,l=function(p,d,f){return a&&(a=!1,p=Le(e,p)),o.call(this,p,Le(e,d),f,e)}):o.length>3&&(l=function(p,d,f){return o.call(this,p,d,f,e)}));const r=s[t](l,...n);return a?Le(e,r):r}function tn(e,t,o){const n=U(e);ae(n,"iterate",Lt);const s=n[t](...o);return(s===-1||s===!1)&&ln(o[0])?(o[0]=U(o[0]),n[t](...o)):s}function Nt(e,t,o=[]){we(),Go();const n=U(e)[t].apply(e,o);return Yo(),Se(),n}const _l=Wo("__proto__,__v_isRef,__isVue"),rs=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(_e));function vl(e){_e(e)||(e=String(e));const t=U(this);return ae(t,"has",e),t.hasOwnProperty(e)}class cs{constructor(t=!1,o=!1){this._isReadonly=t,this._isShallow=o}get(t,o,n){if(o==="__v_skip")return t.__v_skip;const s=this._isReadonly,i=this._isShallow;if(o==="__v_isReactive")return!s;if(o==="__v_isReadonly")return s;if(o==="__v_isShallow")return i;if(o==="__v_raw")return n===(s?i?hs:gs:i?fs:us).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const l=T(t);if(!s){let r;if(l&&(r=bl[o]))return r;if(o==="hasOwnProperty")return vl}const a=Reflect.get(t,o,re(t)?t:n);if((_e(o)?rs.has(o):_l(o))||(s||ae(t,"get",o),i))return a;if(re(a)){const r=l&&jo(o)?a:a.value;return s&&W(r)?sn(r):r}return W(a)?s?sn(a):nn(a):a}}class ds extends cs{constructor(t=!1){super(!1,t)}set(t,o,n,s){let i=t[o];const l=T(t)&&jo(o);if(!this._isShallow){const p=Ye(i);if(!xe(n)&&!Ye(n)&&(i=U(i),n=U(n)),!l&&re(i)&&!re(n))return p||(i.value=n),!0}const a=l?Number(o)<t.length:D(t,o),r=Reflect.set(t,o,n,re(t)?t:s);return t===U(s)&&r&&(a?De(n,i)&&Ue(t,"set",o,n):Ue(t,"add",o,n)),r}deleteProperty(t,o){const n=D(t,o);t[o];const s=Reflect.deleteProperty(t,o);return s&&n&&Ue(t,"delete",o,void 0),s}has(t,o){const n=Reflect.has(t,o);return(!_e(o)||!rs.has(o))&&ae(t,"has",o),n}ownKeys(t){return ae(t,"iterate",T(t)?"length":Ze),Reflect.ownKeys(t)}}class ps extends cs{constructor(t=!1){super(!0,t)}set(t,o){return!0}deleteProperty(t,o){return!0}}const xl=new ds,kl=new ps,yl=new ds(!0),wl=new ps(!0),on=e=>e,io=e=>Reflect.getPrototypeOf(e);function Sl(e,t,o){return function(...n){const s=this.__v_raw,i=U(s),l=Ge(i),a=e==="entries"||e===Symbol.iterator&&l,r=e==="keys"&&l,p=s[e](...n),d=o?on:t?rt:We;return!t&&ae(i,"iterate",r?Qo:Ze),Q(Object.create(p),{next(){const{value:f,done:v}=p.next();return v?{value:f,done:v}:{value:a?[d(f[0]),d(f[1])]:d(f),done:v}}})}}function lo(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Ll(e,t){const o={get(s){const i=this.__v_raw,l=U(i),a=U(s);e||(De(s,a)&&ae(l,"get",s),ae(l,"get",a));const{has:r}=io(l),p=t?on:e?rt:We;if(r.call(l,s))return p(i.get(s));if(r.call(l,a))return p(i.get(a));i!==l&&i.get(s)},get size(){const s=this.__v_raw;return!e&&ae(U(s),"iterate",Ze),s.size},has(s){const i=this.__v_raw,l=U(i),a=U(s);return e||(De(s,a)&&ae(l,"has",s),ae(l,"has",a)),s===a?i.has(s):i.has(s)||i.has(a)},forEach(s,i){const l=this,a=l.__v_raw,r=U(a),p=t?on:e?rt:We;return!e&&ae(r,"iterate",Ze),a.forEach((d,f)=>s.call(i,p(d),p(f),l))}};return Q(o,e?{add:lo("add"),set:lo("set"),delete:lo("delete"),clear:lo("clear")}:{add(s){const i=U(this),l=io(i),a=U(s),r=!t&&!xe(s)&&!Ye(s)?a:s;return l.has.call(i,r)||De(s,r)&&l.has.call(i,s)||De(a,r)&&l.has.call(i,a)||(i.add(r),Ue(i,"add",r,r)),this},set(s,i){!t&&!xe(i)&&!Ye(i)&&(i=U(i));const l=U(this),{has:a,get:r}=io(l);let p=a.call(l,s);p||(s=U(s),p=a.call(l,s));const d=r.call(l,s);return l.set(s,i),p?De(i,d)&&Ue(l,"set",s,i):Ue(l,"add",s,i),this},delete(s){const i=U(this),{has:l,get:a}=io(i);let r=l.call(i,s);r||(s=U(s),r=l.call(i,s)),a&&a.call(i,s);const p=i.delete(s);return r&&Ue(i,"delete",s,void 0),p},clear(){const s=U(this),i=s.size!==0,l=s.clear();return i&&Ue(s,"clear",void 0,void 0),l}}),["keys","values","entries",Symbol.iterator].forEach(s=>{o[s]=Sl(s,e,t)}),o}function ao(e,t){const o=Ll(e,t);return(n,s,i)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?n:Reflect.get(D(o,s)&&s in n?o:n,s,i)}const Nl={get:ao(!1,!1)},Pl={get:ao(!1,!0)},Cl={get:ao(!0,!1)},El={get:ao(!0,!0)},us=new WeakMap,fs=new WeakMap,gs=new WeakMap,hs=new WeakMap;function Ml(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function nn(e){return Ye(e)?e:ro(e,!1,xl,Nl,us)}function Tl(e){return ro(e,!1,yl,Pl,fs)}function sn(e){return ro(e,!0,kl,Cl,gs)}function Fp(e){return ro(e,!0,wl,El,hs)}function ro(e,t,o,n,s){if(!W(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const i=s.get(e);if(i)return i;const l=Ml(sl(e));if(l===0)return e;const a=new Proxy(e,l===2?n:o);return s.set(e,a),a}function Qe(e){return Ye(e)?Qe(e.__v_raw):!!(e&&e.__v_isReactive)}function Ye(e){return!!(e&&e.__v_isReadonly)}function xe(e){return!!(e&&e.__v_isShallow)}function ln(e){return e?!!e.__v_raw:!1}function U(e){const t=e&&e.__v_raw;return t?U(t):e}function Al(e){return!D(e,"__v_skip")&&Object.isExtensible(e)&&Bn(e,"__v_skip",!0),e}const We=e=>W(e)?nn(e):e,rt=e=>W(e)?sn(e):e;function re(e){return e?e.__v_isRef===!0:!1}function $s(e){return re(e)?e.value:e}const Ol={get:(e,t,o)=>t==="__v_raw"?e:$s(Reflect.get(e,t,o)),set:(e,t,o,n)=>{const s=e[t];return re(s)&&!re(o)?(s.value=o,!0):Reflect.set(e,t,o,n)}};function bs(e){return Qe(e)?e:new Proxy(e,Ol)}class Fl{constructor(t,o,n){this.fn=t,this.setter=o,this._value=void 0,this.dep=new is(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=St-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&V!==this)return Qn(this,!0),!0}get value(){const t=this.dep.track();return os(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Il(e,t,o=!1){let n,s;return O(e)?n=e:(n=e.get,s=e.set),new Fl(n,s,o)}const co={},po=new WeakMap;let et;function Hl(e,t=!1,o=et){if(o){let n=po.get(o);n||po.set(o,n=[]),n.push(e)}}function Dl(e,t,o=B){const{immediate:n,deep:s,once:i,scheduler:l,augmentJob:a,call:r}=o,p=M=>s?M:xe(M)||s===!1||s===0?ze(M,1):ze(M);let d,f,v,x,R=!1,F=!1;if(re(e)?(f=()=>e.value,R=xe(e)):Qe(e)?(f=()=>p(e),R=!0):T(e)?(F=!0,R=e.some(M=>Qe(M)||xe(M)),f=()=>e.map(M=>{if(re(M))return M.value;if(Qe(M))return p(M);if(O(M))return r?r(M,2):M()})):O(e)?t?f=r?()=>r(e,2):e:f=()=>{if(v){we();try{v()}finally{Se()}}const M=et;et=d;try{return r?r(e,3,[x]):e(x)}finally{et=M}}:f=ye,t&&s){const M=f,oe=s===!0?1/0:s;f=()=>ze(M(),oe)}const ee=gl(),X=()=>{d.stop(),ee&&ee.active&&zo(ee.effects,d)};if(i&&t){const M=t;t=(...oe)=>{const Te=M(...oe);return X(),Te}}let H=F?new Array(e.length).fill(co):co;const z=M=>{if(!(!(d.flags&1)||!d.dirty&&!M))if(t){const oe=d.run();if(M||s||R||(F?oe.some((Te,Ae)=>De(Te,H[Ae])):De(oe,H))){v&&v();const Te=et;et=d;try{const Ae=[oe,H===co?void 0:F&&H[0]===co?[]:H,x];H=oe,r?r(t,3,Ae):t(...Ae)}finally{et=Te}}}else d.run()};return a&&a(z),d=new Xn(f),d.scheduler=l?()=>l(z,!1):z,x=M=>Hl(M,!1,d),v=d.onStop=()=>{const M=po.get(d);if(M){if(r)r(M,4);else for(const oe of M)oe();po.delete(d)}},t?n?z(!0):H=d.run():l?l(z.bind(null,!0),!0):d.run(),X.pause=d.pause.bind(d),X.resume=d.resume.bind(d),X.stop=X,X}function ze(e,t=1/0,o){if(t<=0||!W(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,re(e))ze(e.value,t,o);else if(T(e))for(let n=0;n<e.length;n++)ze(e[n],t,o);else if(Xt(e)||Ge(e))e.forEach(n=>{ze(n,t,o)});else if(Zt(e)){for(const n in e)ze(e[n],t,o);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&ze(e[n],t,o)}return e}/**
* @vue/runtime-core v3.5.42
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/const Pt=[];let an=!1;function Ip(e,...t){if(an)return;an=!0,we();const o=Pt.length?Pt[Pt.length-1].component:null,n=o&&o.appContext.config.warnHandler,s=Ul();if(n)ct(n,o,11,[e+t.map(i=>{var l,a;return(a=(l=i.toString)==null?void 0:l.call(i))!=null?a:JSON.stringify(i)}).join(""),o&&o.proxy,s.map(({vnode:i})=>`at <${mi(o,i.type)}>`).join(`
`),s]);else{const i=[`[Vue warn]: ${e}`,...t];s.length&&i.push(`
`,...Rl(s)),console.warn(...i)}Se(),an=!1}function Ul(){let e=Pt[Pt.length-1];if(!e)return[];const t=[];for(;e;){const o=t[0];o&&o.vnode===e?o.recurseCount++:t.push({vnode:e,recurseCount:0});const n=e.component&&e.component.parent;e=n&&n.vnode}return t}function Rl(e){const t=[];return e.forEach((o,n)=>{t.push(...n===0?[]:[`
`],...Wl(o))}),t}function Wl({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:"",n=e.component?e.component.parent==null:!1,s=` at <${mi(e.component,e.type,n)}`,i=">"+o;return e.props?[s,...zl(e.props),i]:[s+i]}function zl(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach(n=>{t.push(...ms(n,e[n]))}),o.length>3&&t.push(" ..."),t}function ms(e,t,o){return J(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?o?t:[`${e}=${t}`]:re(t)?(t=ms(e,U(t.value),!0),o?t:[`${e}=Ref<`,t,">"]):O(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=U(t),o?t:[`${e}=`,t])}function ct(e,t,o,n){try{return n?e(...n):e()}catch(s){uo(s,t,o)}}function ke(e,t,o,n){if(O(e)){const s=ct(e,t,o,n);return s&&zn(s)&&s.catch(i=>{uo(i,t,o)}),s}if(T(e)){const s=[];for(let i=0;i<e.length;i++)s.push(ke(e[i],t,o,n));return s}}function uo(e,t,o,n=!0){const s=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:l}=t&&t.appContext.config||B;if(t){let a=t.parent;const r=t.proxy,p=`https://vuejs.org/error-reference/#runtime-${o}`;for(;a;){const d=a.ec;if(d){for(let f=0;f<d.length;f++)if(d[f](e,r,p)===!1)return}a=a.parent}if(i){we(),ct(i,null,10,[e,r,p]),Se();return}}jl(e,o,s,n,l)}function jl(e,t,o,n=!0,s=!1){if(s)throw e;console.error(e)}const de=[];let Ne=-1;const dt=[];let Je=null,pt=0;const _s=Promise.resolve();let fo=null;function vs(e){const t=fo||_s;return e?t.then(this?e.bind(this):e):t}function Bl(e){let t=Ne+1,o=de.length;for(;t<o;){const n=t+o>>>1,s=de[n],i=Ct(s);i<e||i===e&&s.flags&2?t=n+1:o=n}return t}function rn(e){if(!(e.flags&1)){const t=Ct(e),o=de[de.length-1];!o||!(e.flags&2)&&t>=Ct(o)?de.push(e):de.splice(Bl(t),0,e),e.flags|=1,xs()}}function xs(){fo||(fo=_s.then(ws))}function Kl(e){if(!T(e))Je&&e.id===-1?Je.splice(pt+1,0,e):e.flags&1||(dt.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)dt.push(e[t]);xs()}function ks(e,t,o=Ne+1){for(;o<de.length;o++){const n=de[o];if(n&&n.flags&2){if(e&&n.id!==e.uid)continue;de.splice(o,1),o--,n.flags&4&&(n.flags&=-2),n(),n.flags&4||(n.flags&=-2)}}}function ys(e){if(dt.length){const t=[...new Set(dt)].sort((o,n)=>Ct(o)-Ct(n));if(dt.length=0,Je){for(let o=0;o<t.length;o++)Je.push(t[o]);return}for(Je=t,pt=0;pt<Je.length;pt++){const o=Je[pt];o.flags&4&&(o.flags&=-2),o.flags&8||o(),o.flags&=-2}Je=null,pt=0}}const Ct=e=>e.id==null?e.flags&2?-1:1/0:e.id;function ws(e){try{for(Ne=0;Ne<de.length;Ne++){const t=de[Ne];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),ct(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Ne<de.length;Ne++){const t=de[Ne];t&&(t.flags&=-2)}Ne=-1,de.length=0,ys(),fo=null,(de.length||dt.length)&&ws()}}let ie=null,Ss=null;function go(e){const t=ie;return ie=e,Ss=e&&e.type.__scopeId||null,t}function ut(e,t=ie,o){if(!t||e._n)return e;const n=(...s)=>{n._d&&ci(-1);const i=go(t),l=Be.length;let a;try{a=e(...s)}finally{for(let r=Be.length;r>l;r--)kn();go(i),n._d&&ci(1)}return a};return n._n=!0,n._c=!0,n._d=!0,n}function ft(e,t){if(ie===null)return e;const o=Lo(ie),n=e.dirs||(e.dirs=[]);for(let s=0;s<t.length;s++){let[i,l,a,r=B]=t[s];i&&(O(i)&&(i={mounted:i,updated:i}),i.deep&&ze(l),n.push({dir:i,instance:o,value:l,oldValue:void 0,arg:a,modifiers:r}))}return e}function tt(e,t,o,n){const s=e.dirs,i=t&&t.dirs;for(let l=0;l<s.length;l++){const a=s[l];i&&(a.oldValue=i[l].value);let r=a.dir[n];r&&(we(),ke(r,o,8,[e.el,a,e,t]),Se())}}function Vl(e,t){if(ce){let o=ce.provides;const n=ce.parent&&ce.parent.provides;n===o&&(o=ce.provides=Object.create(n)),o[e]=t}}function Et(e,t,o=!1){const n=ui();if(n||ht){let s=ht?ht._context.provides:n?n.parent==null||n.ce?n.vnode.appContext&&n.vnode.appContext.provides:n.parent.provides:void 0;if(s&&e in s)return s[e];if(arguments.length>1)return o&&O(t)?t.call(n&&n.proxy):t}}const ql=Symbol.for("v-scx"),Gl=()=>Et(ql);function cn(e,t,o){return Ls(e,t,o)}function Ls(e,t,o=B){const{immediate:n,deep:s,flush:i,once:l}=o,a=Q({},o),r=t&&n||!t&&i!=="post";let p;if(Ut){if(i==="sync"){const x=Gl();p=x.__watcherHandles||(x.__watcherHandles=[])}else if(!r){const x=()=>{};return x.stop=ye,x.resume=ye,x.pause=ye,x}}const d=ce;a.call=(x,R,F)=>ke(x,d,R,F);let f=!1;i==="post"?a.scheduler=x=>{fe(x,d&&d.suspense)}:i!=="sync"&&(f=!0,a.scheduler=(x,R)=>{R?x():rn(x)}),a.augmentJob=x=>{t&&(x.flags|=4),f&&(x.flags|=2,d&&(x.id=d.uid,x.i=d))};const v=Dl(e,t,a);return Ut&&(p?p.push(v):r&&v()),v}function Yl(e,t,o){const n=this.proxy,s=J(e)?e.includes(".")?Ns(n,e):()=>n[e]:e.bind(n,n);let i;O(t)?i=t:(i=t.handler,o=t);const l=Dt(this),a=Ls(s,i.bind(n),o);return l(),a}function Ns(e,t){const o=t.split(".");return()=>{let n=e;for(let s=0;s<o.length&&n;s++)n=n[o[s]];return n}}const Jl=Symbol("_vte"),ho=e=>e.__isTeleport,dn=Symbol("_leaveCb");function Xl(e){let t=e[0];if(e.length>1){for(const o of e)if(o.type!==Ce){t=o;break}}return t}function Ps(e){if(!un(e))return ho(e.type)&&e.children?Xl(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:o}=e;if(o){if(t&16)return o[0];if(t&32&&O(o.default))return o.default()}}function pn(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const o=e.component.subTree;pn(ho(o.type)&&Ps(o)||o,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function $o(e,t){return O(e)?Q({name:e.name},t,{setup:e}):e}function Cs(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Es(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}const bo=new WeakMap;function Mt(e,t,o,n,s=!1){if(T(e)){e.forEach((F,ee)=>Mt(F,t&&(T(t)?t[ee]:t),o,n,s));return}if(gt(n)&&!s){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&Mt(e,t,o,n.component.subTree);return}const i=n.shapeFlag&4?Lo(n.component):n.el,l=s?null:i,{i:a,r}=e,p=t&&t.r,d=a.refs===B?a.refs={}:a.refs,f=a.setupState,v=U(f),x=f===B?Rn:F=>Es(d,F)?!1:D(v,F),R=(F,ee)=>!(ee&&Es(d,ee));if(p!=null&&p!==r){if(Ms(t),J(p))d[p]=null,x(p)&&(f[p]=null);else if(re(p)){const F=t;R(p,F.k)&&(p.value=null),F.k&&(d[F.k]=null)}}if(O(r))ct(r,a,12,[l,d]);else{const F=J(r),ee=re(r);if(F||ee){const X=()=>{if(e.f){const H=F?x(r)?f[r]:d[r]:R()||!e.k?r.value:d[e.k];if(s)T(H)&&zo(H,i);else if(T(H))H.includes(i)||H.push(i);else if(F)d[r]=[i],x(r)&&(f[r]=d[r]);else{const z=[i];R(r,e.k)&&(r.value=z),e.k&&(d[e.k]=z)}}else F?(d[r]=l,x(r)&&(f[r]=l)):ee&&(R(r,e.k)&&(r.value=l),e.k&&(d[e.k]=l))};if(l){const H=()=>{X(),bo.delete(e)};H.id=-1,bo.set(e,H),fe(H,o)}else Ms(e),X()}}}function Ms(e){const t=bo.get(e);t&&(t.flags|=8,bo.delete(e))}oo().requestIdleCallback,oo().cancelIdleCallback;const gt=e=>!!e.type.__asyncLoader,un=e=>e.type.__isKeepAlive;function Zl(e,t){Ts(e,"a",t)}function Ql(e,t){Ts(e,"da",t)}function Ts(e,t,o=ce){const n=e.__wdc||(e.__wdc=()=>{let s=o;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(mo(t,n,o),o){let s=o.parent;for(;s&&s.parent;)un(s.parent.vnode)&&ea(n,t,o,s),s=s.parent}}function ea(e,t,o,n){const s=mo(t,e,n,!0);Os(()=>{zo(n[t],s)},o)}function mo(e,t,o=ce,n=!1){if(o){const s=o[e]||(o[e]=[]),i=t.__weh||(t.__weh=(...l)=>{we();const a=Dt(o),r=ke(t,o,e,l);return a(),Se(),r});return n?s.unshift(i):s.push(i),i}}const je=e=>(t,o=ce)=>{(!Ut||e==="sp")&&mo(e,(...n)=>t(...n),o)},ta=je("bm"),As=je("m"),oa=je("bu"),na=je("u"),sa=je("bum"),Os=je("um"),ia=je("sp"),la=je("rtg"),aa=je("rtc");function ra(e,t=ce){mo("ec",e,t)}const ca="components";function Fs(e,t){return pa(ca,e,!0,t)||e}const da=Symbol.for("v-ndc");function pa(e,t,o=!0,n=!1){const s=ie||ce;if(s){const i=s.type;{const a=bi(i,!1);if(a&&(a===t||a===ne(t)||a===eo(ne(t))))return i}const l=Is(s[e]||i[e],t)||Is(s.appContext[e],t);return!l&&n?i:l}}function Is(e,t){return e&&(e[t]||e[ne(t)]||e[eo(ne(t))])}function Pe(e,t,o,n){let s;const i=o,l=T(e);if(l||J(e)){const a=l&&Qe(e);let r=!1,p=!1;a&&(r=!xe(e),p=Ye(e),e=so(e)),s=new Array(e.length);for(let d=0,f=e.length;d<f;d++)s[d]=t(r?p?rt(We(e[d])):We(e[d]):e[d],d,void 0,i)}else if(typeof e=="number"){s=new Array(e);for(let a=0;a<e;a++)s[a]=t(a+1,a,void 0,i)}else if(W(e))if(e[Symbol.iterator])s=Array.from(e,(a,r)=>t(a,r,void 0,i));else{const a=Object.keys(e);s=new Array(a.length);for(let r=0,p=a.length;r<p;r++){const d=a[r];s[r]=t(e[d],d,r,i)}}else s=[];return s}function Tt(e,t,o,n,s,i){if(o==null&&(o={}),ie.ce||ie.parent&&gt(ie.parent)&&ie.parent.ce){const p=i!=null&&o.key==null?Q({},o,{key:i}):o,d=Object.keys(p).length>0;return t!=="default"&&(p.name=t),L(),ko(G,null,[me("slot",p,n)],d?-2:64)}let l=e[t];l&&l._c&&(l._d=!1);const a=Be.length;L();let r;try{const p=l&&Hs(l(o)),d=o.key||i||p&&p.key;r=ko(G,{key:(d&&!_e(d)?d:`_${t}`)+(!p&&n?"_fb":"")},p||(n?n():[]),p&&e._===1?64:-2)}catch(p){for(let d=Be.length;d>a;d--)kn();throw p}finally{l&&l._c&&(l._d=!0)}return r.scopeId&&(r.slotScopeIds=[r.scopeId+"-s"]),r}function Hs(e){return e.some(t=>yn(t)?!(t.type===Ce||t.type===G&&!Hs(t.children)):!0)?e:null}const fn=e=>e?gi(e)?Lo(e):fn(e.parent):null,At=Q(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=>fn(e.parent),$root:e=>fn(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ws(e),$forceUpdate:e=>e.f||(e.f=()=>{rn(e.update)}),$nextTick:e=>e.n||(e.n=vs.bind(e.proxy)),$watch:e=>Yl.bind(e)}),gn=(e,t)=>e!==B&&!e.__isScriptSetup&&D(e,t),ua={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:o,setupState:n,data:s,props:i,accessCache:l,type:a,appContext:r}=e;if(t[0]!=="$"){const v=l[t];if(v!==void 0)switch(v){case 1:return n[t];case 2:return s[t];case 4:return o[t];case 3:return i[t]}else{if(gn(n,t))return l[t]=1,n[t];if(s!==B&&D(s,t))return l[t]=2,s[t];if(D(i,t))return l[t]=3,i[t];if(o!==B&&D(o,t))return l[t]=4,o[t];hn&&(l[t]=0)}}const p=At[t];let d,f;if(p)return t==="$attrs"&&ae(e.attrs,"get",""),p(e);if((d=a.__cssModules)&&(d=d[t]))return d;if(o!==B&&D(o,t))return l[t]=4,o[t];if(f=r.config.globalProperties,D(f,t))return f[t]},set({_:e},t,o){const{data:n,setupState:s,ctx:i}=e;return gn(s,t)?(s[t]=o,!0):n!==B&&D(n,t)?(n[t]=o,!0):D(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:n,appContext:s,props:i,type:l}},a){let r;return!!(o[a]||e!==B&&a[0]!=="$"&&D(e,a)||gn(t,a)||D(i,a)||D(n,a)||D(At,a)||D(s.config.globalProperties,a)||(r=l.__cssModules)&&r[a])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:D(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function Ds(e){return T(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}let hn=!0;function fa(e){const t=Ws(e),o=e.proxy,n=e.ctx;hn=!1,t.beforeCreate&&Us(t.beforeCreate,e,"bc");const{data:s,computed:i,methods:l,watch:a,provide:r,inject:p,created:d,beforeMount:f,mounted:v,beforeUpdate:x,updated:R,activated:F,deactivated:ee,beforeDestroy:X,beforeUnmount:H,destroyed:z,unmounted:M,render:oe,renderTracked:Te,renderTriggered:Ae,errorCaptured:Xe,serverPrefetch:Io,expose:nt,inheritAttrs:Kt,components:Ho,directives:Do,filters:Dn}=t;if(p&&ga(p,n,null),l)for(const Z in l){const q=l[Z];O(q)&&(n[Z]=q.bind(o))}if(s){const Z=s.call(o,o);W(Z)&&(e.data=nn(Z))}if(hn=!0,i)for(const Z in i){const q=i[Z],st=O(q)?q.bind(o,o):O(q.get)?q.get.bind(o,o):ye,Uo=!O(q)&&O(q.set)?q.set.bind(o):ye,it=Xa({get:st,set:Uo});Object.defineProperty(n,Z,{enumerable:!0,configurable:!0,get:()=>it.value,set:Oe=>it.value=Oe})}if(a)for(const Z in a)Rs(a[Z],n,o,Z);if(r){const Z=O(r)?r.call(o):r;Reflect.ownKeys(Z).forEach(q=>{Vl(q,Z[q])})}d&&Us(d,e,"c");function ue(Z,q){T(q)?q.forEach(st=>Z(st.bind(o))):q&&Z(q.bind(o))}if(ue(ta,f),ue(As,v),ue(oa,x),ue(na,R),ue(Zl,F),ue(Ql,ee),ue(ra,Xe),ue(aa,Te),ue(la,Ae),ue(sa,H),ue(Os,M),ue(ia,Io),T(nt))if(nt.length){const Z=e.exposed||(e.exposed={});nt.forEach(q=>{Object.defineProperty(Z,q,{get:()=>o[q],set:st=>o[q]=st,enumerable:!0})})}else e.exposed||(e.exposed={});oe&&e.render===ye&&(e.render=oe),Kt!=null&&(e.inheritAttrs=Kt),Ho&&(e.components=Ho),Do&&(e.directives=Do),Io&&Cs(e)}function ga(e,t,o=ye){T(e)&&(e=$n(e));for(const n in e){const s=e[n];let i;W(s)?"default"in s?i=Et(s.from||n,s.default,!0):i=Et(s.from||n):i=Et(s),re(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:l=>i.value=l}):t[n]=i}}function Us(e,t,o){ke(T(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,o)}function Rs(e,t,o,n){let s=n.includes(".")?Ns(o,n):()=>o[n];if(J(e)){const i=t[e];O(i)&&cn(s,i)}else if(O(e))cn(s,e.bind(o));else if(W(e))if(T(e))e.forEach(i=>Rs(i,t,o,n));else{const i=O(e.handler)?e.handler.bind(o):t[e.handler];O(i)&&cn(s,i,e)}}function Ws(e){const t=e.type,{mixins:o,extends:n}=t,{mixins:s,optionsCache:i,config:{optionMergeStrategies:l}}=e.appContext,a=i.get(t);let r;return a?r=a:!s.length&&!o&&!n?r=t:(r={},s.length&&s.forEach(p=>_o(r,p,l,!0)),_o(r,t,l)),W(t)&&i.set(t,r),r}function _o(e,t,o,n=!1){const{mixins:s,extends:i}=t;i&&_o(e,i,o,!0),s&&s.forEach(l=>_o(e,l,o,!0));for(const l in t)if(!(n&&l==="expose")){const a=ha[l]||o&&o[l];e[l]=a?a(e[l],t[l]):t[l]}return e}const ha={data:zs,props:js,emits:js,methods:Ot,computed:Ot,beforeCreate:pe,created:pe,beforeMount:pe,mounted:pe,beforeUpdate:pe,updated:pe,beforeDestroy:pe,beforeUnmount:pe,destroyed:pe,unmounted:pe,activated:pe,deactivated:pe,errorCaptured:pe,serverPrefetch:pe,components:Ot,directives:Ot,watch:ba,provide:zs,inject:$a};function zs(e,t){return t?e?function(){return Q(O(e)?e.call(this,this):e,O(t)?t.call(this,this):t)}:t:e}function $a(e,t){return Ot($n(e),$n(t))}function $n(e){if(T(e)){const t={};for(let o=0;o<e.length;o++)t[e[o]]=e[o];return t}return e}function pe(e,t){return e?[...new Set([].concat(e,t))]:t}function Ot(e,t){return e?Q(Object.create(null),e,t):t}function js(e,t){return e?T(e)&&T(t)?[...new Set([...e,...t])]:Q(Object.create(null),Ds(e),Ds(t??{})):t}function ba(e,t){if(!e)return t;if(!t)return e;const o=Q(Object.create(null),e);for(const n in t)o[n]=pe(e[n],t[n]);return o}function Bs(){return{app:null,config:{isNativeTag:Rn,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let ma=0;function _a(e,t){return function(n,s=null){O(n)||(n=Q({},n)),s!=null&&!W(s)&&(s=null);const i=Bs(),l=new WeakSet,a=[];let r=!1;const p=i.app={_uid:ma++,_component:n,_props:s,_container:null,_context:i,_instance:null,version:Za,get config(){return i.config},set config(d){},use(d,...f){return l.has(d)||(d&&O(d.install)?(l.add(d),d.install(p,...f)):O(d)&&(l.add(d),d(p,...f))),p},mixin(d){return i.mixins.includes(d)||i.mixins.push(d),p},component(d,f){return f?(i.components[d]=f,p):i.components[d]},directive(d,f){return f?(i.directives[d]=f,p):i.directives[d]},mount(d,f,v){if(!r){const x=p._ceVNode||me(n,s);return x.appContext=i,v===!0?v="svg":v===!1&&(v=void 0),e(x,d,v),r=!0,p._container=d,d.__vue_app__=p,Lo(x.component)}},onUnmount(d){a.push(d)},unmount(){r&&(ke(a,p._instance,16),e(null,p._container),delete p._container.__vue_app__)},provide(d,f){return i.provides[d]=f,p},runWithContext(d){const f=ht;ht=p;try{return d()}finally{ht=f}}};return p}}let ht=null;const va=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${ne(t)}Modifiers`]||e[`${be(t)}Modifiers`];function xa(e,t,...o){if(e.isUnmounted)return;const n=e.vnode.props||B;let s=o;const i=t.startsWith("update:"),l=i&&va(n,t.slice(7));l&&(l.trim&&(s=o.map(d=>J(d)?d.trim():d)),l.number&&(s=s.map(Ko)));let a,r=n[a=Bo(t)]||n[a=Bo(ne(t))];!r&&i&&(r=n[a=Bo(be(t))]),r&&ke(r,e,6,s);const p=n[a+"Once"];if(p){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,ke(p,e,6,s)}}const ka=new WeakMap;function Ks(e,t,o=!1){const n=o?ka:t.emitsCache,s=n.get(e);if(s!==void 0)return s;const i=e.emits;let l={},a=!1;if(!O(e)){const r=p=>{const d=Ks(p,t,!0);d&&(a=!0,Q(l,d))};!o&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return!i&&!a?(W(e)&&n.set(e,null),null):(T(i)?i.forEach(r=>l[r]=null):Q(l,i),W(e)&&n.set(e,l),l)}function vo(e,t){return!e||!Yt(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),D(e,t[0].toLowerCase()+t.slice(1))||D(e,be(t))||D(e,t))}function Hp(){}function Vs(e){const{type:t,vnode:o,proxy:n,withProxy:s,propsOptions:[i],slots:l,attrs:a,emit:r,render:p,renderCache:d,props:f,data:v,setupState:x,ctx:R,inheritAttrs:F}=e,ee=go(e);let X,H;try{if(o.shapeFlag&4){const M=s||n,oe=M;X=Ee(p.call(oe,M,d,f,x,v,R)),H=a}else{const M=t;X=Ee(M.length>1?M(f,{attrs:a,slots:l,emit:r}):M(f,null)),H=t.props?a:ya(a)}}catch(M){Be.length=0,uo(M,e,1),X=me(Ce)}let z=X;if(H&&F!==!1){const M=Object.keys(H),{shapeFlag:oe}=z;M.length&&oe&7&&(i&&M.some(Jt)&&(H=wa(H,i)),z=$t(z,H,!1,!0))}if(o.dirs&&(z=$t(z,null,!1,!0),z.dirs=z.dirs?z.dirs.concat(o.dirs):o.dirs),o.transition){const M=ho(z.type)&&Ps(z)||z;pn(M,o.transition)}return X=z,go(ee),X}const ya=e=>{let t;for(const o in e)(o==="class"||o==="style"||Yt(o))&&((t||(t={}))[o]=e[o]);return t},wa=(e,t)=>{const o={};for(const n in e)(!Jt(n)||!(n.slice(9)in t))&&(o[n]=e[n]);return o};function Sa(e,t,o){const{props:n,children:s,component:i}=e,{props:l,children:a,patchFlag:r}=t,p=i.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&r>=0){if(r&1024)return!0;if(r&16)return n?qs(n,l,p):!!l;if(r&8){const d=t.dynamicProps;for(let f=0;f<d.length;f++){const v=d[f];if(Gs(l,n,v)&&!vo(p,v))return!0}}}else return(s||a)&&(!a||!a.$stable)?!0:n===l?!1:n?l?qs(n,l,p):!0:!!l;return!1}function qs(e,t,o){const n=Object.keys(t);if(n.length!==Object.keys(e).length)return!0;for(let s=0;s<n.length;s++){const i=n[s];if(Gs(t,e,i)&&!vo(o,i))return!0}return!1}function Gs(e,t,o){const n=e[o],s=t[o];return o==="style"&&W(n)&&W(s)?!no(n,s):n!==s}function La({vnode:e,parent:t,suspense:o},n){for(;t;){const s=t.subTree;if(s.suspense&&s.suspense.activeBranch===e&&(s.suspense.vnode.el=s.el=n,e=s),s===e)(e=t.vnode).el=n,t=t.parent;else break}o&&o.activeBranch===e&&(o.vnode.el=n)}const Ys={},Js=()=>Object.create(Ys),Xs=e=>Object.getPrototypeOf(e)===Ys;function Na(e,t,o,n=!1){const s={},i=Js();e.propsDefaults=Object.create(null),Zs(e,t,s,i);for(const l in e.propsOptions[0])l in s||(s[l]=void 0);o?e.props=n?s:Tl(s):e.type.props?e.props=s:e.props=i,e.attrs=i}function Pa(e,t,o,n){const{props:s,attrs:i,vnode:{patchFlag:l}}=e,a=U(s),[r]=e.propsOptions;let p=!1;if((n||l>0)&&!(l&16)){if(l&8){const d=e.vnode.dynamicProps;for(let f=0;f<d.length;f++){let v=d[f];if(vo(e.emitsOptions,v))continue;const x=t[v];if(r)if(D(i,v))x!==i[v]&&(i[v]=x,p=!0);else{const R=ne(v);s[R]=bn(r,a,R,x,e,!1)}else x!==i[v]&&(i[v]=x,p=!0)}}}else{Zs(e,t,s,i)&&(p=!0);let d;for(const f in a)(!t||!D(t,f)&&((d=be(f))===f||!D(t,d)))&&(r?o&&(o[f]!==void 0||o[d]!==void 0)&&(s[f]=bn(r,a,f,void 0,e,!0)):delete s[f]);if(i!==a)for(const f in i)(!t||!D(t,f))&&(delete i[f],p=!0)}p&&Ue(e.attrs,"set","")}function Zs(e,t,o,n){const[s,i]=e.propsOptions;let l=!1,a;if(t)for(let r in t){if(xt(r))continue;const p=t[r];let d;s&&D(s,d=ne(r))?!i||!i.includes(d)?o[d]=p:(a||(a={}))[d]=p:vo(e.emitsOptions,r)||(!(r in n)||p!==n[r])&&(n[r]=p,l=!0)}if(i){const r=U(o),p=a||B;for(let d=0;d<i.length;d++){const f=i[d];o[f]=bn(s,r,f,p[f],e,!D(p,f))}}return l}function bn(e,t,o,n,s,i){const l=e[o];if(l!=null){const a=D(l,"default");if(a&&n===void 0){const r=l.default;if(l.type!==Function&&!l.skipFactory&&O(r)){const{propsDefaults:p}=s;if(o in p)n=p[o];else{const d=Dt(s);n=p[o]=r.call(null,t),d()}}else n=r;s.ce&&s.ce._setProp(o,n)}l[0]&&(i&&!a?n=!1:l[1]&&(n===""||n===be(o))&&(n=!0))}return n}const Ca=new WeakMap;function Qs(e,t,o=!1){const n=o?Ca:t.propsCache,s=n.get(e);if(s)return s;const i=e.props,l={},a=[];let r=!1;if(!O(e)){const d=f=>{r=!0;const[v,x]=Qs(f,t,!0);Q(l,v),x&&a.push(...x)};!o&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!i&&!r)return W(e)&&n.set(e,lt),lt;if(T(i))for(let d=0;d<i.length;d++){const f=ne(i[d]);ei(f)&&(l[f]=B)}else if(i)for(const d in i){const f=ne(d);if(ei(f)){const v=i[d],x=l[f]=T(v)||O(v)?{type:v}:Q({},v),R=x.type;let F=!1,ee=!0;if(T(R))for(let X=0;X<R.length;++X){const H=R[X],z=O(H)&&H.name;if(z==="Boolean"){F=!0;break}else z==="String"&&(ee=!1)}else F=O(R)&&R.name==="Boolean";x[0]=F,x[1]=ee,(F||D(x,"default"))&&a.push(f)}}const p=[l,a];return W(e)&&n.set(e,p),p}function ei(e){return e[0]!=="$"&&!xt(e)}const mn=e=>e==="_"||e==="_ctx"||e==="$stable",_n=e=>T(e)?e.map(Ee):[Ee(e)],Ea=(e,t,o)=>{if(t._n)return t;const n=ut((...s)=>_n(t(...s)),o);return n._c=!1,n},ti=(e,t,o)=>{const n=e._ctx;for(const s in e){if(mn(s))continue;const i=e[s];if(O(i))t[s]=Ea(s,i,n);else if(i!=null){const l=_n(i);t[s]=()=>l}}},oi=(e,t)=>{const o=_n(t);e.slots.default=()=>o},ni=(e,t,o)=>{for(const n in t)(o||!mn(n))&&(e[n]=t[n])},Ma=(e,t,o)=>{const n=e.slots=Js();if(e.vnode.shapeFlag&32){const s=t._;s?(ni(n,t,o),o&&Bn(n,"_",s,!0)):ti(t,n)}else t&&oi(e,t)},Ta=(e,t,o)=>{const{vnode:n,slots:s}=e;let i=!0,l=B;if(n.shapeFlag&32){const a=t._;a?o&&a===1?i=!1:ni(s,t,o):(i=!t.$stable,ti(t,s)),l=t}else t&&(oi(e,t),l={default:1});if(i)for(const a in s)!mn(a)&&l[a]==null&&delete s[a]},fe=Ha;function Aa(e){return Oa(e)}function Oa(e,t){const o=oo();o.__VUE__=!0;const{insert:n,remove:s,patchProp:i,createElement:l,createText:a,createComment:r,setText:p,setElementText:d,parentNode:f,nextSibling:v,setScopeId:x=ye,insertStaticContent:R}=e,F=(c,u,g,m=null,b=null,h=null,w=void 0,y=null,k=!!u.dynamicChildren)=>{if(c===u)return;c&&!It(c,u)&&(m=Ro(c),Oe(c,b,h,!0),c=null),u.patchFlag===-2&&(k=!1,u.dynamicChildren=null);const{type:$,ref:E,shapeFlag:S}=u;switch($){case xo:ee(c,u,g,m);break;case Ce:X(c,u,g,m);break;case xn:c==null&&H(u,g,m,w);break;case G:Ho(c,u,g,m,b,h,w,y,k);break;default:S&1?oe(c,u,g,m,b,h,w,y,k):S&6?Do(c,u,g,m,b,h,w,y,k):(S&64||S&128)&&$.process(c,u,g,m,b,h,w,y,k,qt)}E!=null&&b?Mt(E,c&&c.ref,h,u||c,!u):E==null&&c&&c.ref!=null&&Mt(c.ref,null,h,c,!0)},ee=(c,u,g,m)=>{if(c==null)n(u.el=a(u.children),g,m);else{const b=u.el=c.el;u.children!==c.children&&p(b,u.children)}},X=(c,u,g,m)=>{c==null?n(u.el=r(u.children||""),g,m):u.el=c.el},H=(c,u,g,m)=>{[c.el,c.anchor]=R(c.children,u,g,m,c.el,c.anchor)},z=({el:c,anchor:u},g,m)=>{let b;for(;c&&c!==u;)b=v(c),n(c,g,m),c=b;n(u,g,m)},M=({el:c,anchor:u})=>{let g;for(;c&&c!==u;)g=v(c),s(c),c=g;s(u)},oe=(c,u,g,m,b,h,w,y,k)=>{if(u.type==="svg"?w="svg":u.type==="math"&&(w="mathml"),c==null)Te(u,g,m,b,h,w,y,k);else{const $=c.el&&c.el._isVueCE?c.el:null;try{$&&$._beginPatch(),Io(c,u,b,h,w,y,k)}finally{$&&$._endPatch()}}},Te=(c,u,g,m,b,h,w,y)=>{let k,$;const{props:E,shapeFlag:S,transition:C,dirs:A}=c;if(k=c.el=l(c.type,h,E&&E.is,E),S&8?d(k,c.children):S&16&&Xe(c.children,k,null,m,b,vn(c,h),w,y),A&&tt(c,null,m,"created"),Ae(k,c,c.scopeId,w,m),E){for(const K in E)K!=="value"&&!xt(K)&&i(k,K,null,E[K],h,m);"value"in E&&i(k,"value",null,E.value,h),($=E.onVnodeBeforeMount)&&Me($,m,c)}A&&tt(c,null,m,"beforeMount");const I=Fa(b,C);I&&C.beforeEnter(k),n(k,u,g),(($=E&&E.onVnodeMounted)||I||A)&&fe(()=>{try{$&&Me($,m,c),I&&C.enter(k),A&&tt(c,null,m,"mounted")}finally{}},b)},Ae=(c,u,g,m,b)=>{if(g&&x(c,g),m)for(let h=0;h<m.length;h++)x(c,m[h]);if(b){let h=b.subTree;if(u===h||ri(h.type)&&(h.ssContent===u||h.ssFallback===u)){const w=b.vnode;Ae(c,w,w.scopeId,w.slotScopeIds,b.parent)}}},Xe=(c,u,g,m,b,h,w,y,k=0)=>{for(let $=k;$<c.length;$++){const E=c[$]=y?Ve(c[$]):Ee(c[$]);F(null,E,u,g,m,b,h,w,y)}},Io=(c,u,g,m,b,h,w)=>{const y=u.el=c.el;let{patchFlag:k,dynamicChildren:$,dirs:E}=u;k|=c.patchFlag&16;const S=c.props||B,C=u.props||B;let A;if(g&&ot(g,!1),(A=C.onVnodeBeforeUpdate)&&Me(A,g,u,c),E&&tt(u,c,g,"beforeUpdate"),g&&ot(g,!0),$&&(!c.dynamicChildren||c.dynamicChildren.length!==$.length)&&(k=0,w=!1,$=null),(S.innerHTML&&C.innerHTML==null||S.textContent&&C.textContent==null)&&d(y,""),$?nt(c.dynamicChildren,$,y,g,m,vn(u,b),h):w||q(c,u,y,null,g,m,vn(u,b),h,!1),k>0){if(k&16)Kt(y,S,C,g,b);else if(k&2&&S.class!==C.class&&i(y,"class",null,C.class,b),k&4&&i(y,"style",S.style,C.style,b),k&8){const I=u.dynamicProps;for(let K=0;K<I.length;K++){const j=I[K],te=S[j],le=C[j];(le!==te||j==="value")&&i(y,j,te,le,b,g)}}k&1&&c.children!==u.children&&d(y,u.children)}else!w&&$==null&&Kt(y,S,C,g,b);((A=C.onVnodeUpdated)||E)&&fe(()=>{A&&Me(A,g,u,c),E&&tt(u,c,g,"updated")},m)},nt=(c,u,g,m,b,h,w)=>{for(let y=0;y<u.length;y++){const k=c[y],$=u[y],E=k.el&&(k.type===G||!It(k,$)||k.shapeFlag&198)?f(k.el):g;F(k,$,E,null,m,b,h,w,!0)}},Kt=(c,u,g,m,b)=>{if(u!==g){if(u!==B)for(const h in u)!xt(h)&&!(h in g)&&i(c,h,u[h],null,b,m);for(const h in g){if(xt(h))continue;const w=g[h],y=u[h];w!==y&&h!=="value"&&i(c,h,y,w,b,m)}"value"in g&&i(c,"value",u.value,g.value,b)}},Ho=(c,u,g,m,b,h,w,y,k)=>{const $=u.el=c?c.el:a(""),E=u.anchor=c?c.anchor:a("");let{patchFlag:S,dynamicChildren:C,slotScopeIds:A}=u;A&&(y=y?y.concat(A):A),c==null?(n($,g,m),n(E,g,m),Xe(u.children||[],g,E,b,h,w,y,k)):S>0&&S&64&&C&&c.dynamicChildren&&c.dynamicChildren.length===C.length?(nt(c.dynamicChildren,C,g,b,h,w,y),(u.key!=null||b&&u===b.subTree)&&si(c,u,!0)):q(c,u,g,E,b,h,w,y,k)},Do=(c,u,g,m,b,h,w,y,k)=>{u.slotScopeIds=y,c==null?u.shapeFlag&512?b.ctx.activate(u,g,m,w,k):Dn(u,g,m,b,h,w,k):Xi(c,u,k)},Dn=(c,u,g,m,b,h,w)=>{const y=c.component=ja(c,m,b);if(un(c)&&(y.ctx.renderer=qt),Ba(y,!1,w),y.asyncDep){if(b&&b.registerDep(y,ue,w),!c.el){const k=y.subTree=me(Ce);X(null,k,u,g),c.placeholder=k.el}}else ue(y,c,u,g,b,h,w)},Xi=(c,u,g)=>{const m=u.component=c.component;if(Sa(c,u,g))if(m.asyncDep&&!m.asyncResolved){Z(m,u,g);return}else m.next=u,m.update();else u.el=c.el,m.vnode=u},ue=(c,u,g,m,b,h,w)=>{const y=()=>{if(c.isMounted){let{next:S,bu:C,u:A,parent:I,vnode:K}=c;{const Ie=ii(c);if(Ie){S&&(S.el=K.el,Z(c,S,w)),Ie.asyncDep.then(()=>{fe(()=>{c.isUnmounted||$()},b)});return}}let j=S,te;ot(c,!1),S?(S.el=K.el,Z(c,S,w)):S=K,C&&to(C),(te=S.props&&S.props.onVnodeBeforeUpdate)&&Me(te,I,S,K),ot(c,!0);const le=Vs(c),Fe=c.subTree;c.subTree=le,F(Fe,le,f(Fe.el),Ro(Fe),c,b,h),S.el=le.el,j===null&&La(c,le.el),A&&fe(A,b),(te=S.props&&S.props.onVnodeUpdated)&&fe(()=>Me(te,I,S,K),b)}else{let S;const{el:C,props:A}=u,{bm:I,m:K,parent:j,root:te,type:le}=c,Fe=gt(u);ot(c,!1),I&&to(I),!Fe&&(S=A&&A.onVnodeBeforeMount)&&Me(S,j,u),ot(c,!0);{te.ce&&te.ce._hasShadowRoot()&&te.ce._injectChildStyle(le,c.parent?c.parent.type:void 0);const Ie=c.subTree=Vs(c);F(null,Ie,g,m,c,b,h),u.el=Ie.el}if(K&&fe(K,b),!Fe&&(S=A&&A.onVnodeMounted)){const Ie=u;fe(()=>Me(S,j,Ie),b)}(u.shapeFlag&256||j&&gt(j.vnode)&&j.vnode.shapeFlag&256)&&c.a&&fe(c.a,b),c.isMounted=!0,u=g=m=null}};c.scope.on();const k=c.effect=new Xn(y);c.scope.off();const $=c.update=k.run.bind(k),E=c.job=k.runIfDirty.bind(k);E.i=c,E.id=c.uid,k.scheduler=()=>rn(E),ot(c,!0),$()},Z=(c,u,g)=>{u.component=c;const m=c.vnode.props;c.vnode=u,c.next=null,Pa(c,u.props,m,g),Ta(c,u.children,g),we(),ks(c),Se()},q=(c,u,g,m,b,h,w,y,k=!1)=>{const $=c&&c.children,E=c?c.shapeFlag:0,S=u.children,{patchFlag:C,shapeFlag:A}=u;if(C>0){if(C&128){Uo($,S,g,m,b,h,w,y,k);return}else if(C&256){st($,S,g,m,b,h,w,y,k);return}}A&8?(E&16&&Vt($,b,h),S!==$&&d(g,S)):E&16?A&16?Uo($,S,g,m,b,h,w,y,k):Vt($,b,h,!0):(E&8&&d(g,""),A&16&&Xe(S,g,m,b,h,w,y,k))},st=(c,u,g,m,b,h,w,y,k)=>{c=c||lt,u=u||lt;const $=c.length,E=u.length,S=Math.min($,E);let C;for(C=0;C<S;C++){const A=u[C]=k?Ve(u[C]):Ee(u[C]);F(c[C],A,g,null,b,h,w,y,k)}$>E?Vt(c,b,h,!0,!1,S):Xe(u,g,m,b,h,w,y,k,S)},Uo=(c,u,g,m,b,h,w,y,k)=>{let $=0;const E=u.length;let S=c.length-1,C=E-1;for(;$<=S&&$<=C;){const A=c[$],I=u[$]=k?Ve(u[$]):Ee(u[$]);if(It(A,I))F(A,I,g,null,b,h,w,y,k);else break;$++}for(;$<=S&&$<=C;){const A=c[S],I=u[C]=k?Ve(u[C]):Ee(u[C]);if(It(A,I))F(A,I,g,null,b,h,w,y,k);else break;S--,C--}if($>S){if($<=C){const A=C+1,I=A<E?u[A].el:m;for(;$<=C;)F(null,u[$]=k?Ve(u[$]):Ee(u[$]),g,I,b,h,w,y,k),$++}}else if($>C)for(;$<=S;)Oe(c[$],b,h,!0),$++;else{const A=$,I=$,K=new Map;for($=I;$<=C;$++){const $e=u[$]=k?Ve(u[$]):Ee(u[$]);$e.key!=null&&K.set($e.key,$)}let j,te=0;const le=C-I+1;let Fe=!1,Ie=0;const Gt=new Array(le);for($=0;$<le;$++)Gt[$]=0;for($=A;$<=S;$++){const $e=c[$];if(te>=le){Oe($e,b,h,!0);continue}let He;if($e.key!=null)He=K.get($e.key);else for(j=I;j<=C;j++)if(Gt[j-I]===0&&It($e,u[j])){He=j;break}He===void 0?Oe($e,b,h,!0):(Gt[He-I]=$+1,He>=Ie?Ie=He:Fe=!0,F($e,u[He],g,null,b,h,w,y,k),te++)}const el=Fe?Ia(Gt):lt;for(j=el.length-1,$=le-1;$>=0;$--){const $e=I+$,He=u[$e],tl=u[$e+1],ol=$e+1<E?tl.el||ai(tl):m;Gt[$]===0?F(null,He,g,ol,b,h,w,y,k):Fe&&(j<0||$!==el[j]?it(He,g,ol,2):j--)}}},it=(c,u,g,m,b=null)=>{const{el:h,type:w,transition:y,children:k,shapeFlag:$}=c;if($&6){it(c.component.subTree,u,g,m);return}if($&128){c.suspense.move(u,g,m);return}if($&64){w.move(c,u,g,qt);return}if(w===G){n(h,u,g);for(let S=0;S<k.length;S++)it(k[S],u,g,m);n(c.anchor,u,g);return}if(w===xn){z(c,u,g);return}if(m!==2&&$&1&&y)if(m===0)y.persisted&&!h[dn]?n(h,u,g):(y.beforeEnter(h),n(h,u,g),fe(()=>y.enter(h),b));else{const{leave:S,delayLeave:C,afterLeave:A}=y,I=()=>{c.ctx.isUnmounted?s(h):n(h,u,g)},K=()=>{const j=h._isLeaving||!!h[dn];h._isLeaving&&h[dn](!0),y.persisted&&!j?I():S(h,()=>{I(),A&&A()})};C?C(h,I,K):K()}else n(h,u,g)},Oe=(c,u,g,m=!1,b=!1)=>{const{type:h,props:w,ref:y,children:k,dynamicChildren:$,shapeFlag:E,patchFlag:S,dirs:C,cacheIndex:A,memo:I}=c;if(S===-2&&(b=!1),y!=null&&(we(),Mt(y,null,g,c,!0),Se()),A!=null&&(u.renderCache[A]=void 0),E&256){u.ctx.deactivate(c);return}const K=E&1&&C,j=!gt(c);let te;if(j&&(te=w&&w.onVnodeBeforeUnmount)&&Me(te,u,c),E&6)Ap(c.component,g,m);else{if(E&128){c.suspense.unmount(g,m);return}K&&tt(c,null,u,"beforeUnmount"),E&64?c.type.remove(c,u,g,qt,m):$&&!$.hasOnce&&(h!==G||S>0&&S&64)?Vt($,u,g,!1,!0):(h===G&&S&384||!b&&E&16)&&Vt(k,u,g),m&&Zi(c)}const le=I!=null&&A==null;(j&&(te=w&&w.onVnodeUnmounted)||K||le)&&fe(()=>{te&&Me(te,u,c),K&&tt(c,null,u,"unmounted"),le&&(c.el=null)},g)},Zi=c=>{const{type:u,el:g,anchor:m,transition:b}=c;if(u===G){Tp(g,m);return}if(u===xn){M(c);return}const h=()=>{s(g),b&&!b.persisted&&b.afterLeave&&b.afterLeave()};if(c.shapeFlag&1&&b&&!b.persisted){const{leave:w,delayLeave:y}=b,k=()=>w(g,h);y?y(c.el,h,k):k()}else h()},Tp=(c,u)=>{let g;for(;c!==u;)g=v(c),s(c),c=g;s(u)},Ap=(c,u,g)=>{const{bum:m,scope:b,job:h,subTree:w,um:y,m:k,a:$}=c;li(k),li($),m&&to(m),b.stop(),h&&(h.flags|=8,Oe(w,c,u,g)),y&&fe(y,u),fe(()=>{c.isUnmounted=!0},u)},Vt=(c,u,g,m=!1,b=!1,h=0)=>{for(let w=h;w<c.length;w++)Oe(c[w],u,g,m,b)},Ro=c=>{if(c.shapeFlag&6)return Ro(c.component.subTree);if(c.shapeFlag&128)return c.suspense.next();const u=v(c.anchor||c.el),g=u&&u[Jl];return g?v(g):u};let Un=!1;const Qi=(c,u,g)=>{let m;c==null?u._vnode&&(Oe(u._vnode,null,null,!0),m=u._vnode.component):F(u._vnode||null,c,u,null,null,null,g),u._vnode=c,Un||(Un=!0,ks(m),ys(),Un=!1)},qt={p:F,um:Oe,m:it,r:Zi,mt:Dn,mc:Xe,pc:q,pbc:nt,n:Ro,o:e};return{render:Qi,hydrate:void 0,createApp:_a(Qi)}}function vn({type:e,props:t},o){return o==="svg"&&e==="foreignObject"||o==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:o}function ot({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Fa(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function si(e,t,o=!1){const n=e.children,s=t.children;if(T(n)&&T(s))for(let i=0;i<n.length;i++){const l=n[i];let a=s[i];a.shapeFlag&1&&!a.dynamicChildren&&((a.patchFlag<=0||a.patchFlag===32)&&(a=s[i]=Ve(s[i]),a.el=l.el),!o&&a.patchFlag!==-2&&si(l,a)),a.type===xo&&(a.patchFlag===-1&&(a=s[i]=Ve(a)),a.el=l.el),a.type===Ce&&!a.el&&(a.el=l.el)}}function Ia(e){const t=e.slice(),o=[0];let n,s,i,l,a;const r=e.length;for(n=0;n<r;n++){const p=e[n];if(p!==0){if(s=o[o.length-1],e[s]<p){t[n]=s,o.push(n);continue}for(i=0,l=o.length-1;i<l;)a=i+l>>1,e[o[a]]<p?i=a+1:l=a;p<e[o[i]]&&(i>0&&(t[n]=o[i-1]),o[i]=n)}}for(i=o.length,l=o[i-1];i-- >0;)o[i]=l,l=t[l];return o}function ii(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:ii(t)}function li(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function ai(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?ai(t.subTree):null}const ri=e=>e.__isSuspense;function Ha(e,t){t&&t.pendingBranch?T(e)?t.effects.push(...e):t.effects.push(e):Kl(e)}const G=Symbol.for("v-fgt"),xo=Symbol.for("v-txt"),Ce=Symbol.for("v-cmt"),xn=Symbol.for("v-stc"),Be=[];let he=null;function L(e=!1){Be.push(he=e?null:[])}function kn(){Be.pop(),he=Be[Be.length-1]||null}let Ft=1;function ci(e,t=!1){Ft+=e,e<0&&he&&t&&(he.hasOnce=!0)}function di(e){return e.dynamicChildren=Ft>0?he||lt:null,kn(),Ft>0&&he&&he.push(e),e}function N(e,t,o,n,s,i){return di(_(e,t,o,n,s,i,!0))}function ko(e,t,o,n,s){return di(me(e,t,o,n,s,!0))}function yn(e){return e?e.__v_isVNode===!0:!1}function It(e,t){return e.type===t.type&&e.key===t.key}const pi=({key:e})=>e??null,yo=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?J(e)||re(e)||O(e)?{i:ie,r:e,k:t,f:!!o}:e:null);function _(e,t=null,o=null,n=0,s=null,i=e===G?0:1,l=!1,a=!1){const r={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&pi(t),ref:t&&yo(t),scopeId:Ss,slotScopeIds:null,children:o,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:n,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:ie};return a?(wo(r,o),i&128&&e.normalize(r)):o&&(r.shapeFlag|=J(o)?8:16),Ft>0&&!l&&he&&(r.patchFlag>0||i&6)&&r.patchFlag!==32&&he.push(r),r}const me=Da;function Da(e,t=null,o=null,n=0,s=null,i=!1){if((!e||e===da)&&(e=Ce),yn(e)){const a=$t(e,t,!0);return o&&wo(a,o),Ft>0&&!i&&he&&(a.shapeFlag&6?he[he.indexOf(e)]=a:he.push(a)),a.patchFlag=-2,a}if(Ja(e)&&(e=e.__vccOpts),t){t=Ua(t);let{class:a,style:r}=t;a&&!J(a)&&(t.class=ge(a)),W(r)&&(ln(r)&&!T(r)&&(r=Q({},r)),t.style=kt(r))}const l=J(e)?1:ri(e)?128:ho(e)?64:W(e)?4:O(e)?2:0;return _(e,t,o,n,s,l,i,!0)}function Ua(e){return e?ln(e)||Xs(e)?Q({},e):e:null}function $t(e,t,o=!1,n=!1){const{props:s,ref:i,patchFlag:l,children:a,transition:r}=e,p=t?Ra(s||{},t):s,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:p,key:p&&pi(p),ref:t&&t.ref?o&&i?T(i)?i.concat(yo(t)):[i,yo(t)]:yo(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==G?l===-1?16:l|16:l,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:r,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&$t(e.ssContent),ssFallback:e.ssFallback&&$t(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return r&&n&&pn(d,r.clone(d)),d}function Ke(e=" ",t=0){return me(xo,null,e,t)}function Y(e="",t=!1){return t?(L(),ko(Ce,null,e)):me(Ce,null,e)}function Ee(e){return e==null||typeof e=="boolean"?me(Ce):T(e)?me(G,null,e.slice()):yn(e)?Ve(e):me(xo,null,String(e))}function Ve(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:$t(e)}function wo(e,t){let o=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(T(t))o=16;else if(typeof t=="object")if(n&65){const s=t.default;s&&(s._c&&(s._d=!1),wo(e,s()),s._c&&(s._d=!0));return}else{o=32;const s=t._;!s&&!Xs(t)?t._ctx=ie:s===3&&ie&&(ie.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(O(t)){if(n&65){wo(e,{default:t});return}t={default:t,_ctx:ie},o=32}else t=String(t),n&64?(o=16,t=[Ke(t)]):o=8;e.children=t,e.shapeFlag|=o}function Ra(...e){const t={};for(let o=0;o<e.length;o++){const n=e[o];for(const s in n)if(s==="class")t.class!==n.class&&(t.class=ge([t.class,n.class]));else if(s==="style")t.style=kt([t.style,n.style]);else if(Yt(s)){const i=t[s],l=n[s];l&&i!==l&&!(T(i)&&i.includes(l))?t[s]=i?[].concat(i,l):l:l==null&&i==null&&!Jt(s)&&(t[s]=l)}else s!==""&&(t[s]=n[s])}return t}function Me(e,t,o,n=null){ke(e,t,7,[o,n])}const Wa=Bs();let za=0;function ja(e,t,o){const n=e.type,s=(t?t.appContext:e.appContext)||Wa,i={uid:za++,vnode:e,type:n,parent:t,appContext:s,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new fl(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(s.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Qs(n,s),emitsOptions:Ks(n,s),emit:null,emitted:null,propsDefaults:B,inheritAttrs:n.inheritAttrs,ctx:B,data:B,props:B,attrs:B,slots:B,refs:B,setupState:B,setupContext:null,suspense:o,suspenseId:o?o.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=xa.bind(null,i),e.ce&&e.ce(i),i}let ce=null;const ui=()=>ce||ie;let So,Ht;{const e=oo(),t=(o,n)=>{let s;return(s=e[o])||(s=e[o]=[]),s.push(n),i=>{s.length>1?s.forEach(l=>l(i)):s[0](i)}};So=t("__VUE_INSTANCE_SETTERS__",o=>ce=o),Ht=t("__VUE_SSR_SETTERS__",o=>Ut=o)}const Dt=e=>{const t=ce;return So(e),e.scope.on(),()=>{e.scope.off(),So(t)}},fi=()=>{ce&&ce.scope.off(),So(null)};function gi(e){return e.vnode.shapeFlag&4}let Ut=!1;function Ba(e,t=!1,o=!1){t&&Ht(t);const{props:n,children:s}=e.vnode,i=gi(e);Na(e,n,i,t),Ma(e,s,o||t);const l=i?Ka(e,t):void 0;return t&&Ht(!1),l}function Ka(e,t){const o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,ua);const{setup:n}=o;if(n){we();const s=e.setupContext=n.length>1?qa(e):null,i=Dt(e),l=ct(n,e,0,[e.props,s]),a=zn(l);if(Se(),i(),(a||e.sp)&&!gt(e)&&Cs(e),a){if(l.then(fi,fi),t)return l.then(r=>{Ht(!0);try{hi(e,r,t)}finally{Ht(!1)}}).catch(r=>{uo(r,e,0)});e.asyncDep=l}else hi(e,l)}else $i(e)}function hi(e,t,o){O(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:W(t)&&(e.setupState=bs(t)),$i(e)}function $i(e,t,o){const n=e.type;e.render||(e.render=n.render||ye);{const s=Dt(e);we();try{fa(e)}finally{Se(),s()}}}const Va={get(e,t){return ae(e,"get",""),e[t]}};function qa(e){const t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,Va),slots:e.slots,emit:e.emit,expose:t}}function Lo(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(bs(Al(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in At)return At[o](e)},has(t,o){return o in t||o in At}})):e.proxy}const Ga=/(?:^|[-_])\w/g,Ya=e=>e.replace(Ga,t=>t.toUpperCase()).replace(/[-_]/g,"");function bi(e,t=!0){return O(e)?e.displayName||e.name:e.name||t&&e.__name}function mi(e,t,o=!1){let n=bi(t);if(!n&&t.__file){const s=t.__file.match(/([^/\\]+)\.\w+$/);s&&(n=s[1])}if(!n&&e){const s=i=>{for(const l in i)if(i[l]===t)return l};n=s(e.components)||e.parent&&s(e.parent.type.components)||s(e.appContext.components)}return n?Ya(n):o?"App":"Anonymous"}function Ja(e){return O(e)&&"__vccOpts"in e}const Xa=(e,t)=>Il(e,t,Ut),Za="3.5.42";/**
* @vue/runtime-dom v3.5.42
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/let wn;const _i=typeof window<"u"&&window.trustedTypes;if(_i)try{wn=_i.createPolicy("vue",{createHTML:e=>e})}catch{}const vi=wn?e=>wn.createHTML(e):e=>e,Qa="http://www.w3.org/2000/svg",er="http://www.w3.org/1998/Math/MathML",qe=typeof document<"u"?document:null,xi=qe&&qe.createElement("template"),tr={insert:(e,t,o)=>{t.insertBefore(e,o||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,o,n)=>{const s=t==="svg"?qe.createElementNS(Qa,e):t==="mathml"?qe.createElementNS(er,e):o?qe.createElement(e,{is:o}):qe.createElement(e);return e==="select"&&n&&n.multiple!=null&&s.setAttribute("multiple",n.multiple),s},createText:e=>qe.createTextNode(e),createComment:e=>qe.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>qe.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,n,s,i){const l=o?o.previousSibling:t.lastChild;if(s&&(s===i||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),o),!(s===i||!(s=s.nextSibling)););else{xi.innerHTML=vi(n==="svg"?`<svg>${e}</svg>`:n==="mathml"?`<math>${e}</math>`:e);const a=xi.content;if(n==="svg"||n==="mathml"){const r=a.firstChild;for(;r.firstChild;)a.appendChild(r.firstChild);a.removeChild(r)}t.insertBefore(a,o)}return[l?l.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}},or=Symbol("_vtc");function nr(e,t,o){const n=e[or];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}const No=Symbol("_vod"),ki=Symbol("_vsh"),Sn={name:"show",beforeMount(e,{value:t},{transition:o}){e[No]=e.style.display==="none"?"":e.style.display,o&&t?o.beforeEnter(e):Rt(e,t)},mounted(e,{value:t},{transition:o}){o&&t&&o.enter(e)},updated(e,{value:t,oldValue:o},{transition:n}){!t!=!o&&(n?t?(n.beforeEnter(e),Rt(e,!0),n.enter(e)):n.leave(e,()=>{Rt(e,!1)}):Rt(e,t))},beforeUnmount(e,{value:t}){Rt(e,t)}};function Rt(e,t){e.style.display=t?e[No]:"none",e[ki]=!t}const sr=Symbol(""),ir=/(?:^|;)\s*display\s*:/;function lr(e,t,o){const n=e.style,s=J(o);let i=!1;if(o&&!s){if(t)if(J(t))for(const l of t.split(";")){const a=l.slice(0,l.indexOf(":")).trim();o[a]==null&&Wt(n,a,"")}else for(const l in t)o[l]==null&&Wt(n,l,"");for(const l in o){l==="display"&&(i=!0);const a=o[l];a!=null?rr(e,l,!J(t)&&t?t[l]:void 0,a)||Wt(n,l,a):Wt(n,l,"")}}else if(s){if(t!==o){const l=n[sr];l&&(o+=";"+l),n.cssText=o,i=ir.test(o)}}else t&&e.removeAttribute("style");No in e&&(e[No]=i?n.display:"",e[ki]&&(n.display="none"))}const Po=/\s*!important$/;function Wt(e,t,o){if(T(o))o.forEach(n=>Wt(e,t,n));else if(o==null&&(o=""),t.startsWith("--"))Po.test(o)?e.setProperty(t,o.replace(Po,""),"important"):e.setProperty(t,o);else{const n=ar(e,t);Po.test(o)?e.setProperty(be(n),o.replace(Po,""),"important"):e[n]=o}}const yi=["Webkit","Moz","ms"],Ln={};function ar(e,t){const o=Ln[t];if(o)return o;let n=ne(t);if(n!=="filter"&&n in e)return Ln[t]=n;n=eo(n);for(let s=0;s<yi.length;s++){const i=yi[s]+n;if(i in e)return Ln[t]=i}return t}function rr(e,t,o,n){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&J(n)&&o===n}const wi="http://www.w3.org/1999/xlink";function Si(e,t,o,n,s,i=pl(t)){n&&t.startsWith("xlink:")?o==null?e.removeAttributeNS(wi,t.slice(6,t.length)):e.setAttributeNS(wi,t,o):o==null||i&&!qn(o)?e.removeAttribute(t):e.setAttribute(t,i?"":_e(o)?String(o):o)}function Li(e,t,o,n,s){if(t==="innerHTML"||t==="textContent"){o!=null&&(e[t]=t==="innerHTML"?vi(o):o);return}const i=e.tagName;if(t==="value"&&i!=="PROGRESS"&&!i.includes("-")){const a=i==="OPTION"?e.getAttribute("value")||"":e.value,r=o==null?e.type==="checkbox"?"on":"":String(o);(a!==r||!("_value"in e))&&(e.value=r),o==null&&e.removeAttribute(t),e._value=o;return}let l=!1;if(o===""||o==null){const a=typeof e[t];a==="boolean"?o=qn(o):o==null&&a==="string"?(o="",l=!0):a==="number"&&(o=0,l=!0)}try{e[t]=o}catch{}l&&e.removeAttribute(s||t)}function bt(e,t,o,n){e.addEventListener(t,o,n)}function cr(e,t,o,n){e.removeEventListener(t,o,n)}const Ni=Symbol("_vei");function dr(e,t,o,n,s=null){const i=e[Ni]||(e[Ni]={}),l=i[t];if(n&&l)l.value=n;else{const[a,r]=fr(t);if(n){const p=i[t]=$r(n,s);bt(e,a,p,r)}else l&&(cr(e,a,l,r),i[t]=void 0)}}const pr=/(Once|Passive|Capture)$/,ur=/^on:?(?:Once|Passive|Capture)$/;function fr(e){let t,o;for(;(o=e.match(pr))&&!ur.test(e);)t||(t={}),e=e.slice(0,e.length-o[1].length),t[o[1].toLowerCase()]=!0;return[e[2]===":"?e.slice(3):be(e.slice(2)),t]}let Nn=0;const gr=Promise.resolve(),hr=()=>Nn||(gr.then(()=>Nn=0),Nn=Date.now());function $r(e,t){const o=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=o.attached)return;const s=o.value;if(T(s)){const i=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{i.call(n),n._stopped=!0};const l=s.slice(),a=[n];for(let r=0;r<l.length&&!n._stopped;r++){const p=l[r];p&&ke(p,t,5,a)}}else ke(s,t,5,[n])};return o.value=e,o.attached=hr(),o}const Pi=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,br=(e,t,o,n,s,i)=>{const l=s==="svg";t==="class"?nr(e,n,l):t==="style"?lr(e,o,n):Yt(t)?Jt(t)||dr(e,t,o,n,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):mr(e,t,n,l))?(Li(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Si(e,t,n,l,i,t!=="value")):e._isVueCE&&(_r(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!J(n)))?Li(e,ne(t),n,i,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),Si(e,t,n,l))};function mr(e,t,o,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&Pi(t)&&O(o));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return Pi(t)&&J(o)?!1:t in e}function _r(e,t){const o=e._def.props;if(!o)return!1;const n=ne(t);return Array.isArray(o)?o.some(s=>ne(s)===n):Object.keys(o).some(s=>ne(s)===n)}const Ci={};function vr(e,t,o){let n=$o(e,t);Zt(n)&&(n=Q({},n,t));class s extends Pn{constructor(l){super(n,l,o)}}return s.def=n,s}const xr=typeof HTMLElement<"u"?HTMLElement:class{};class Pn extends xr{constructor(t,o={},n=Fi){super(),this._def=t,this._props=o,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&n!==Fi?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Q({},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 Pn){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,vs(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const o of t)this._setAttr(o.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let n=0;n<this.attributes.length;n++)this._setAttr(this.attributes[n].name);this._ob=new MutationObserver(this._processMutations.bind(this)),this._ob.observe(this,{attributes:!0});const t=(n,s=!1)=>{this._resolved=!0,this._pendingResolve=void 0;const{props:i,styles:l}=n;let a;if(i&&!T(i))for(const r in i){const p=i[r];(p===Number||p&&p.type===Number)&&(r in this._props&&(this._props[r]=Kn(this._props[r])),(a||(a=Object.create(null)))[ne(r)]=!0)}this._numberProps=a,this._resolveProps(n),this.shadowRoot&&this._applyStyles(l),this._mount(n)},o=this._def.__asyncLoader;if(o)return this._pendingResolve=o().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const o=this._instance&&this._instance.exposed;if(o)for(const n in o)D(this,n)||Object.defineProperty(this,n,{get:()=>$s(o[n])})}_resolveProps(t){const{props:o}=t,n=T(o)?o:Object.keys(o||{});for(const s of Object.keys(this))s[0]!=="_"&&n.includes(s)&&this._setProp(s,this[s]);for(const s of n.map(ne))Object.defineProperty(this,s,{get(){return this._getProp(s)},set(i){this._setProp(s,i,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const o=this.hasAttribute(t);let n=o?this.getAttribute(t):Ci;const s=ne(t);o&&this._numberProps&&this._numberProps[s]&&(n=Kn(n)),this._setProp(s,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,o,n=!0,s=!1){if(o!==this._props[t]&&(this._dirty=!0,o===Ci?delete this._props[t]:(this._props[t]=o,t==="key"&&this._app&&(this._app._ceVNode.key=o)),s&&this._instance&&this._update(),n)){const i=this._ob;i&&(this._processMutations(i.takeRecords()),i.disconnect()),o===!0?this.setAttribute(be(t),""):typeof o=="string"||typeof o=="number"?this.setAttribute(be(t),o+""):o||this.removeAttribute(be(t)),i&&i.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),Lr(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const o=me(this._def,Q(t,this._props));return this._instance||(o.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const s=(i,l)=>{this.dispatchEvent(new CustomEvent(i,Zt(l[0])?Q({detail:l},l[0]):{detail:l}))};n.emit=(i,...l)=>{s(i,l),be(i)!==i&&s(be(i),l)},this._setParent()}),o}_applyStyles(t,o,n){if(!t)return;if(o){if(o===this._def||this._styleChildren.has(o))return;this._styleChildren.add(o)}const s=this._nonce,i=this.shadowRoot,l=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(i);let a=null;for(let r=t.length-1;r>=0;r--){const p=document.createElement("style");s&&p.setAttribute("nonce",s),p.textContent=t[r],i.insertBefore(p,a||l),a=p,r===0&&(n||this._styleAnchors.set(this._def,p),o&&this._styleAnchors.set(o,p))}}_getStyleAnchor(t){if(!t)return null;const o=this._styleAnchors.get(t);return o&&o.parentNode===this.shadowRoot?o:(o&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let o=0;o<t.childNodes.length;o++){const n=t.childNodes[o];if(!(n instanceof HTMLStyleElement))return n}return null}_parseSlots(){const t=this._slots={};let o;for(;o=this.firstChild;){const n=o.nodeType===1&&o.getAttribute("slot")||"default";(t[n]||(t[n]=[])).push(o),this.removeChild(o)}}_renderSlots(){const t=this._getSlots(),o=this._instance.type.__scopeId;for(let n=0;n<t.length;n++){const s=t[n],i=s.getAttribute("name")||"default",l=this._slots[i],a=s.parentNode;if(l)for(const r of l){if(o&&r.nodeType===1){const p=o+"-s",d=document.createTreeWalker(r,1);r.setAttribute(p,"");let f;for(;f=d.nextNode();)f.setAttribute(p,"")}a.insertBefore(r,s)}else for(;s.firstChild;)a.insertBefore(s.firstChild,s);a.removeChild(s)}}_getSlots(){const t=[this];this._teleportTargets&&t.push(...this._teleportTargets);const o=new Set;for(const n of t){const s=n.querySelectorAll("slot");for(let i=0;i<s.length;i++)o.add(s[i])}return Array.from(o)}_injectChildStyle(t,o){this._applyStyles(t.styles,t,o)}_beginPatch(){this._patching=!0,this._dirty=!1}_endPatch(){this._patching=!1,this._dirty&&this._instance&&this._update()}_hasShadowRoot(){return this._def.shadowRoot!==!1}_removeChildStyle(t){}}const Ei=e=>{const t=e.props["onUpdate:modelValue"]||!1;return T(t)?o=>to(t,o):t};function kr(e){e.target.composing=!0}function Mi(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Co=Symbol("_assign"),Eo=Symbol("_initialValue");function Cn(e,t,o){return t&&(e=e.trim()),o&&(e=Ko(e)),e}const En={created(e,{modifiers:{lazy:t,trim:o,number:n}},s){e.parentNode&&(e.type==="text"?e[Eo]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[Eo]=e.defaultValue.replace(/\r\n?/g,`
`))),e[Co]=Ei(s);const i=n||s.props&&s.props.type==="number";bt(e,t?"change":"input",l=>{l.target.composing||e[Co](Cn(e.value,o,i))}),(o||i)&&bt(e,"change",()=>{e.value=Cn(e.value,o,i)}),t||(bt(e,"compositionstart",kr),bt(e,"compositionend",Mi),bt(e,"change",Mi))},mounted(e,{value:t,modifiers:{trim:o,number:n}}){const s=t??"",i=e[Eo];delete e[Eo],i!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==i?e[Co](Cn(e.value,o,n)):e.value=s},beforeUpdate(e,{value:t,oldValue:o,modifiers:{lazy:n,trim:s,number:i}},l){if(e[Co]=Ei(l),e.composing)return;const a=(i||e.type==="number")&&!/^0\d/.test(e.value)?Ko(e.value):e.value,r=t??"";if(a===r)return;const p=e.getRootNode();(p instanceof Document||p instanceof ShadowRoot)&&p.activeElement===e&&e.type!=="range"&&(n&&t===o||s&&e.value.trim()===r)||(e.value=r)}},yr=["ctrl","shift","alt","meta"],wr={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>yr.some(o=>e[`${o}Key`]&&!t.includes(o))},Ti=(e,t)=>{if(!e)return e;const o=e._withMods||(e._withMods={}),n=t.join(".");return o[n]||(o[n]=(s,...i)=>{for(let l=0;l<t.length;l++){const a=wr[t[l]];if(a&&a(s,t))return}return e(s,...i)})},Sr=Q({patchProp:br},tr);let Ai;function Oi(){return Ai||(Ai=Aa(Sr))}const Lr=(...e)=>{Oi().render(...e)},Fi=(...e)=>{const t=Oi().createApp(...e),{mount:o}=t;return t.mount=n=>{const s=Pr(n);if(!s)return;const i=t._component;!O(i)&&!i.render&&!i.template&&(i.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const l=o(s,!1,Nr(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),l},t};function Nr(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Pr(e){return J(e)?document.querySelector(e):e}const Cr={title:"استوديو الإضافات",navLabel:"الإضافات حسب القدرة",countLabel:"{bundles} حزمة · {elements} إضافة مدرجة هنا",changeLanguage:"تغيير اللغة",copyEmbed:"نسخ رمز التضمين",copy:"نسخ",copied:"تم النسخ",scriptEmbed:"تضمين عبر سكربت",loading:"جارٍ تحميل {name}…",couldNotLoad:"تعذّر تحميل {name}.",chooseElement:"اختر إضافة من القائمة.",filterPlaceholder:"تصفية الإضافات",collapseAll:"طي الكل",noMatch:"لا توجد إضافة تطابق «{query}».",openSection:"فتح {cap}، {label}",part:"جزء",noStandalone:"بلا صفحة مستقلة",cap5:"هيكل التطبيق",cap4:"مركّب",cap3:"متعدد العروض",cap2:"إعداد مسبق",cap1:"مفرد",stageExperimental:"تجريبي","widget:rudder-voice/rudder-voice":"Rudder · تحويل الصوت إلى نص",toggleList:"إظهار القائمة أو إخفاؤها",openViews:"فتح قائمة العروض",expandList:"توسيع القائمة",collapseList:"طي القائمة",collapse:"طي",partOf:"جزء من {name}، غير منشور بمفرده",mapToken:"رمز الخريطة",mapboxToken:"رمز Mapbox",tokenPaste:"رمز Mapbox العام (pk.…)",tokenUrlLabel:"…أو رابط خدمة الرموز",tokenApply:"استخدام",tokenClear:"مسح",tokenStoredHere:"يُحفظ في هذا المتصفح فقط.",tokenSourceYours:"يُستخدم رمزك",tokenSourceUrl:"يُستخدم رمز من {url}",tokenSourceBuilt:"يُستخدم الرمز المضمَّن في هذه الصفحة",tokenSourceNone:"لا يوجد رمز Mapbox: لا يمكن تحميل خرائط Mapbox (خرائط MapLibre لا تحتاج رمزًا)",tokenSecret:"هذا رمز سري (sk.…). الصق رمزًا عامًا (pk.…): هذه الصفحة عامة.",tokenNotPk:"يبدأ رمز Mapbox العام بـ pk.",tokenUrlFailed:"تعذّر الحصول على رمز من هذا الرابط: {why}",settings:"الإعدادات",mapEngine:"محرّك الخرائط",engineDefault:"الافتراضي لكل خريطة",engineMapboxNote:"يحتاج إلى رمز",engineMaplibreNote:"لا يحتاج إلى رمز",tokenNotNeeded:"تم اختيار MapLibre: خرائطه لا تحتاج إلى رمز Mapbox",hideHeader:"إخفاء الشريط العلوي",showHeader:"إظهار الشريط العلوي",elementsCount:"{n} عناصر",elements:"عناصر"},Er={title:"Plugin-Studio",navLabel:"Plugins nach Fähigkeit",countLabel:"{bundles} Bundles · {elements} Plugins hier aufgeführt",changeLanguage:"Sprache ändern",copyEmbed:"Einbettung kopieren",copy:"Kopieren",copied:"Kopiert",scriptEmbed:"Skript-Einbettung",loading:"{name} wird geladen…",couldNotLoad:"{name} konnte nicht geladen werden.",chooseElement:"Wählen Sie ein Plugin aus der Liste.",filterPlaceholder:"Plugins filtern",collapseAll:"Alle einklappen",noMatch:"Kein Plugin entspricht „{query}“.",openSection:"{cap} öffnen, {label}",part:"Teil",noStandalone:"keine eigene Seite",cap5:"App-Shell",cap4:"Komposit",cap3:"Mehrfachansicht",cap2:"Voreinstellung",cap1:"Einzeln",stageExperimental:"Experimentell","widget:rudder-voice/rudder-voice":"Rudder · Sprache zu Text",toggleList:"Liste ein-/ausblenden",openViews:"Ansichtsliste öffnen",expandList:"Liste ausklappen",collapseList:"Liste einklappen",collapse:"Einklappen",partOf:"Teil von {name}, nicht eigenständig veröffentlicht",mapToken:"Karten-Token",mapboxToken:"Mapbox-Token",tokenPaste:"Öffentlicher Mapbox-Token (pk.…)",tokenUrlLabel:"…oder die URL eines Token-Dienstes",tokenApply:"Verwenden",tokenClear:"Löschen",tokenStoredHere:"Nur in diesem Browser gespeichert.",tokenSourceYours:"Ihr Token wird verwendet",tokenSourceUrl:"Token von {url} wird verwendet",tokenSourceBuilt:"Der in diese Seite eingebaute Token wird verwendet",tokenSourceNone:"Kein Mapbox-Token: Mapbox-Karten können nicht laden (MapLibre-Karten brauchen keinen)",tokenSecret:"Das ist ein geheimer Token (sk.…). Fügen Sie einen öffentlichen ein (pk.…): Diese Seite ist öffentlich.",tokenNotPk:"Ein öffentlicher Mapbox-Token beginnt mit pk.",tokenUrlFailed:"Von dieser URL kam kein Token: {why}",settings:"Einstellungen",mapEngine:"Karten-Engine",engineDefault:"Je Karte eigenes",engineMapboxNote:"braucht einen Token",engineMaplibreNote:"kein Token nötig",tokenNotNeeded:"MapLibre ist gewählt: Seine Karten brauchen keinen Mapbox-Token",hideHeader:"Kopfzeile ausblenden",showHeader:"Kopfzeile einblenden",elementsCount:"{n} Elemente",elements:"Elemente"},Mr={title:"Plugin Studio",navLabel:"Plugins by capability",countLabel:"{bundles} bundles · {elements} plugins listed here",changeLanguage:"Change language",copyEmbed:"Copy embed",copy:"Copy",copied:"Copied",scriptEmbed:"Script embed",loading:"Loading {name}…",couldNotLoad:"Could not load {name}.",chooseElement:"Choose a plugin from the list.",filterPlaceholder:"Filter plugins",collapseAll:"Collapse all",noMatch:"No plugin matches “{query}”.",openSection:"Open {cap}, {label}",part:"part",noStandalone:"no standalone page",cap5:"App shell",cap4:"Composite",cap3:"Multi-view",cap2:"Preset",cap1:"Single",stageExperimental:"Experimental","widget:rudder-voice/rudder-voice":"Rudder · voice to text",toggleList:"Toggle list",openViews:"Open the list of views",expandList:"Expand list",collapseList:"Collapse list",collapse:"Collapse",partOf:"part of {name}, not published on its own",mapToken:"Map token",mapboxToken:"Mapbox token",tokenPaste:"Mapbox public token (pk.…)",tokenUrlLabel:"…or the URL of a token service",tokenApply:"Use",tokenClear:"Clear",tokenStoredHere:"Kept in this browser only.",tokenSourceYours:"Using your token",tokenSourceUrl:"Using a token from {url}",tokenSourceBuilt:"Using the token built into this page",tokenSourceNone:"No Mapbox token: Mapbox maps cannot load (MapLibre maps need none)",tokenSecret:"That is a secret token (sk.…). Paste a public one (pk.…): this page is public.",tokenNotPk:"A Mapbox public token starts with pk.",tokenUrlFailed:"Could not get a token from that URL: {why}",settings:"Settings",mapEngine:"Map engine",engineDefault:"Each map’s own",engineMapboxNote:"needs a token",engineMaplibreNote:"no token needed",tokenNotNeeded:"MapLibre is selected: its maps need no Mapbox token",hideHeader:"Hide header",showHeader:"Show header",elementsCount:"{n} elements",elements:"elements"},Tr={title:"Estudio de plugins",navLabel:"Plugins por capacidad",countLabel:"{bundles} paquetes · {elements} plugins listados aquí",changeLanguage:"Cambiar idioma",copyEmbed:"Copiar código de inserción",copy:"Copiar",copied:"Copiado",scriptEmbed:"Inserción por script",loading:"Cargando {name}…",couldNotLoad:"No se pudo cargar {name}.",chooseElement:"Elija un plugin de la lista.",filterPlaceholder:"Filtrar plugins",collapseAll:"Contraer todo",noMatch:"Ningún plugin coincide con «{query}».",openSection:"Abrir {cap}, {label}",part:"parte",noStandalone:"sin página propia",cap5:"Contenedor de aplicación",cap4:"Compuesto",cap3:"Multivista",cap2:"Preajuste",cap1:"Individual",stageExperimental:"Experimental","widget:rudder-voice/rudder-voice":"Rudder · voz a texto",toggleList:"Mostrar u ocultar la lista",openViews:"Abrir la lista de vistas",expandList:"Expandir la lista",collapseList:"Contraer la lista",collapse:"Contraer",partOf:"parte de {name}, no publicada por separado",mapToken:"Token del mapa",mapboxToken:"Token de Mapbox",tokenPaste:"Token público de Mapbox (pk.…)",tokenUrlLabel:"…o la URL de un servicio de tokens",tokenApply:"Usar",tokenClear:"Borrar",tokenStoredHere:"Se guarda solo en este navegador.",tokenSourceYours:"Usando tu token",tokenSourceUrl:"Usando un token de {url}",tokenSourceBuilt:"Usando el token integrado en esta página",tokenSourceNone:"Sin token de Mapbox: los mapas de Mapbox no cargan (los de MapLibre no lo necesitan)",tokenSecret:"Ese es un token secreto (sk.…). Pega uno público (pk.…): esta página es pública.",tokenNotPk:"Un token público de Mapbox empieza por pk.",tokenUrlFailed:"No se pudo obtener un token de esa URL: {why}",settings:"Ajustes",mapEngine:"Motor de mapas",engineDefault:"El de cada mapa",engineMapboxNote:"necesita un token",engineMaplibreNote:"no necesita token",tokenNotNeeded:"MapLibre está seleccionado: sus mapas no necesitan token de Mapbox",hideHeader:"Ocultar encabezado",showHeader:"Mostrar encabezado",elementsCount:"{n} elementos",elements:"elementos"},Ar={title:"Studio de plugins",navLabel:"Plugins par capacité",countLabel:"{bundles} paquets · {elements} plugins listés ici",changeLanguage:"Changer de langue",copyEmbed:"Copier le code d’intégration",copy:"Copier",copied:"Copié",scriptEmbed:"Intégration par script",loading:"Chargement de {name}…",couldNotLoad:"Impossible de charger {name}.",chooseElement:"Choisissez un plugin dans la liste.",filterPlaceholder:"Filtrer les plugins",collapseAll:"Tout replier",noMatch:"Aucun plugin ne correspond à « {query} ».",openSection:"Ouvrir {cap}, {label}",part:"partie",noStandalone:"pas de page autonome",cap5:"Coquille d’application",cap4:"Composite",cap3:"Multivue",cap2:"Préréglage",cap1:"Simple",stageExperimental:"Expérimental","widget:rudder-voice/rudder-voice":"Rudder · voix vers texte",toggleList:"Afficher ou masquer la liste",openViews:"Ouvrir la liste des vues",expandList:"Déplier la liste",collapseList:"Replier la liste",collapse:"Replier",partOf:"partie de {name}, non publiée seule",mapToken:"Jeton de carte",mapboxToken:"Jeton Mapbox",tokenPaste:"Jeton public Mapbox (pk.…)",tokenUrlLabel:"…ou l’URL d’un service de jetons",tokenApply:"Utiliser",tokenClear:"Effacer",tokenStoredHere:"Conservé dans ce navigateur uniquement.",tokenSourceYours:"Votre jeton est utilisé",tokenSourceUrl:"Jeton obtenu de {url}",tokenSourceBuilt:"Jeton intégré à cette page",tokenSourceNone:"Aucun jeton Mapbox : les cartes Mapbox ne peuvent pas charger (MapLibre n’en a pas besoin)",tokenSecret:"C’est un jeton secret (sk.…). Collez un jeton public (pk.…) : cette page est publique.",tokenNotPk:"Un jeton public Mapbox commence par pk.",tokenUrlFailed:"Impossible d’obtenir un jeton depuis cette URL : {why}",settings:"Paramètres",mapEngine:"Moteur de carte",engineDefault:"Celui de chaque carte",engineMapboxNote:"nécessite un jeton",engineMaplibreNote:"aucun jeton requis",tokenNotNeeded:"MapLibre est sélectionné : ses cartes n’ont pas besoin de jeton Mapbox",hideHeader:"Masquer l'en-tête",showHeader:"Afficher l'en-tête",elementsCount:"{n} éléments",elements:"éléments"},Or={title:"प्लगइन स्टूडियो",navLabel:"क्षमता के अनुसार प्लगइन",countLabel:"{bundles} बंडल · यहाँ {elements} प्लगइन सूचीबद्ध",changeLanguage:"भाषा बदलें",copyEmbed:"एम्बेड कोड कॉपी करें",copy:"कॉपी करें",copied:"कॉपी हो गया",scriptEmbed:"स्क्रिप्ट एम्बेड",loading:"{name} लोड हो रहा है…",couldNotLoad:"{name} लोड नहीं हो सका।",chooseElement:"सूची से कोई प्लगइन चुनें।",filterPlaceholder:"प्लगइन फ़िल्टर करें",collapseAll:"सभी संक्षिप्त करें",noMatch:"“{query}” से कोई प्लगइन मेल नहीं खाता।",openSection:"{cap} खोलें, {label}",part:"भाग",noStandalone:"कोई अलग पेज नहीं",cap5:"ऐप शेल",cap4:"संयुक्त",cap3:"बहु-दृश्य",cap2:"प्रीसेट",cap1:"एकल",stageExperimental:"प्रायोगिक","widget:rudder-voice/rudder-voice":"Rudder · आवाज़ से टेक्स्ट",toggleList:"सूची दिखाएँ या छिपाएँ",openViews:"दृश्यों की सूची खोलें",expandList:"सूची फैलाएँ",collapseList:"सूची संक्षिप्त करें",collapse:"संक्षिप्त करें",partOf:"{name} का भाग, अलग से प्रकाशित नहीं",mapToken:"मानचित्र टोकन",mapboxToken:"Mapbox टोकन",tokenPaste:"Mapbox सार्वजनिक टोकन (pk.…)",tokenUrlLabel:"…या किसी टोकन सेवा का URL",tokenApply:"उपयोग करें",tokenClear:"साफ़ करें",tokenStoredHere:"केवल इसी ब्राउज़र में रखा जाता है।",tokenSourceYours:"आपका टोकन उपयोग हो रहा है",tokenSourceUrl:"{url} से टोकन उपयोग हो रहा है",tokenSourceBuilt:"इस पेज में बना टोकन उपयोग हो रहा है",tokenSourceNone:"कोई Mapbox टोकन नहीं: Mapbox मानचित्र लोड नहीं हो सकते (MapLibre को इसकी ज़रूरत नहीं)",tokenSecret:"यह एक गुप्त टोकन है (sk.…)। सार्वजनिक टोकन (pk.…) चिपकाएँ: यह पेज सार्वजनिक है।",tokenNotPk:"Mapbox सार्वजनिक टोकन pk. से शुरू होता है",tokenUrlFailed:"उस URL से टोकन नहीं मिल सका: {why}",settings:"सेटिंग्स",mapEngine:"मानचित्र इंजन",engineDefault:"हर मानचित्र का अपना",engineMapboxNote:"टोकन चाहिए",engineMaplibreNote:"टोकन की ज़रूरत नहीं",tokenNotNeeded:"MapLibre चुना गया है: इसके मानचित्रों को Mapbox टोकन नहीं चाहिए",hideHeader:"हेडर छिपाएँ",showHeader:"हेडर दिखाएँ",elementsCount:"{n} तत्व",elements:"तत्व"},Fr={title:"Studio dei plugin",navLabel:"Plugin per capacità",countLabel:"{bundles} pacchetti · {elements} plugin elencati qui",changeLanguage:"Cambia lingua",copyEmbed:"Copia codice di incorporamento",copy:"Copia",copied:"Copiato",scriptEmbed:"Incorporamento tramite script",loading:"Caricamento di {name}…",couldNotLoad:"Impossibile caricare {name}.",chooseElement:"Scegli un plugin dall’elenco.",filterPlaceholder:"Filtra i plugin",collapseAll:"Comprimi tutto",noMatch:"Nessun plugin corrisponde a «{query}».",openSection:"Apri {cap}, {label}",part:"parte",noStandalone:"nessuna pagina propria",cap5:"Shell dell’app",cap4:"Composito",cap3:"Multivista",cap2:"Preimpostato",cap1:"Singolo",stageExperimental:"Sperimentale","widget:rudder-voice/rudder-voice":"Rudder · voce in testo",toggleList:"Mostra o nascondi l’elenco",openViews:"Apri l’elenco delle viste",expandList:"Espandi l’elenco",collapseList:"Comprimi l’elenco",collapse:"Comprimi",partOf:"parte di {name}, non pubblicata da sola",mapToken:"Token mappa",mapboxToken:"Token Mapbox",tokenPaste:"Token pubblico Mapbox (pk.…)",tokenUrlLabel:"…o l’URL di un servizio di token",tokenApply:"Usa",tokenClear:"Cancella",tokenStoredHere:"Conservato solo in questo browser.",tokenSourceYours:"Uso il tuo token",tokenSourceUrl:"Uso un token da {url}",tokenSourceBuilt:"Uso il token integrato in questa pagina",tokenSourceNone:"Nessun token Mapbox: le mappe Mapbox non si caricano (MapLibre non ne ha bisogno)",tokenSecret:"Questo è un token segreto (sk.…). Incolla un token pubblico (pk.…): questa pagina è pubblica.",tokenNotPk:"Un token pubblico Mapbox inizia con pk.",tokenUrlFailed:"Impossibile ottenere un token da quell’URL: {why}",settings:"Impostazioni",mapEngine:"Motore mappe",engineDefault:"Quello di ogni mappa",engineMapboxNote:"richiede un token",engineMaplibreNote:"nessun token necessario",tokenNotNeeded:"MapLibre è selezionato: le sue mappe non richiedono un token Mapbox",hideHeader:"Nascondi intestazione",showHeader:"Mostra intestazione",elementsCount:"{n} elementi",elements:"elementi"},Ir={title:"Estúdio de plugins",navLabel:"Plugins por capacidade",countLabel:"{bundles} pacotes · {elements} plugins listados aqui",changeLanguage:"Mudar idioma",copyEmbed:"Copiar código de incorporação",copy:"Copiar",copied:"Copiado",scriptEmbed:"Incorporação por script",loading:"Carregando {name}…",couldNotLoad:"Não foi possível carregar {name}.",chooseElement:"Escolha um plugin na lista.",filterPlaceholder:"Filtrar plugins",collapseAll:"Recolher tudo",noMatch:"Nenhum plugin corresponde a “{query}”.",openSection:"Abrir {cap}, {label}",part:"parte",noStandalone:"sem página própria",cap5:"Shell do aplicativo",cap4:"Composto",cap3:"Multivisualização",cap2:"Predefinição",cap1:"Único",stageExperimental:"Experimental","widget:rudder-voice/rudder-voice":"Rudder · voz para texto",toggleList:"Mostrar ou ocultar a lista",openViews:"Abrir a lista de visualizações",expandList:"Expandir a lista",collapseList:"Recolher a lista",collapse:"Recolher",partOf:"parte de {name}, não publicada separadamente",mapToken:"Token do mapa",mapboxToken:"Token do Mapbox",tokenPaste:"Token público do Mapbox (pk.…)",tokenUrlLabel:"…ou o URL de um serviço de tokens",tokenApply:"Usar",tokenClear:"Limpar",tokenStoredHere:"Guardado apenas neste navegador.",tokenSourceYours:"A usar o seu token",tokenSourceUrl:"A usar um token de {url}",tokenSourceBuilt:"A usar o token incorporado nesta página",tokenSourceNone:"Sem token do Mapbox: os mapas Mapbox não carregam (os MapLibre não precisam)",tokenSecret:"Esse é um token secreto (sk.…). Cole um público (pk.…): esta página é pública.",tokenNotPk:"Um token público do Mapbox começa por pk.",tokenUrlFailed:"Não foi possível obter um token desse URL: {why}",settings:"Definições",mapEngine:"Motor de mapas",engineDefault:"O de cada mapa",engineMapboxNote:"precisa de um token",engineMaplibreNote:"não precisa de token",tokenNotNeeded:"MapLibre está selecionado: os seus mapas não precisam de token do Mapbox",hideHeader:"Ocultar cabeçalho",showHeader:"Mostrar cabeçalho",elementsCount:"{n} elementos",elements:"elementos"},Hr={title:"Studio de pluginuri",navLabel:"Pluginuri după capacitate",countLabel:"{bundles} pachete · {elements} pluginuri listate aici",changeLanguage:"Schimbă limba",copyEmbed:"Copiază codul de încorporare",copy:"Copiază",copied:"Copiat",scriptEmbed:"Încorporare prin script",loading:"Se încarcă {name}…",couldNotLoad:"{name} nu a putut fi încărcat.",chooseElement:"Alegeți un plugin din listă.",filterPlaceholder:"Filtrează pluginurile",collapseAll:"Restrânge tot",noMatch:"Niciun plugin nu corespunde cu „{query}”.",openSection:"Deschide {cap}, {label}",part:"parte",noStandalone:"fără pagină proprie",cap5:"Cadru de aplicație",cap4:"Compus",cap3:"Vizualizări multiple",cap2:"Presetat",cap1:"Simplu",stageExperimental:"Experimental","widget:rudder-voice/rudder-voice":"Rudder · voce în text",toggleList:"Afișează sau ascunde lista",openViews:"Deschide lista de vizualizări",expandList:"Extinde lista",collapseList:"Restrânge lista",collapse:"Restrânge",partOf:"parte din {name}, nepublicată separat",mapToken:"Token hartă",mapboxToken:"Token Mapbox",tokenPaste:"Token public Mapbox (pk.…)",tokenUrlLabel:"…sau adresa URL a unui serviciu de tokenuri",tokenApply:"Folosește",tokenClear:"Șterge",tokenStoredHere:"Păstrat doar în acest browser.",tokenSourceYours:"Se folosește tokenul tău",tokenSourceUrl:"Se folosește un token de la {url}",tokenSourceBuilt:"Se folosește tokenul inclus în această pagină",tokenSourceNone:"Niciun token Mapbox: hărțile Mapbox nu se pot încărca (MapLibre nu are nevoie)",tokenSecret:"Acesta este un token secret (sk.…). Lipește unul public (pk.…): pagina este publică.",tokenNotPk:"Un token public Mapbox începe cu pk.",tokenUrlFailed:"Nu s-a putut obține un token de la acea adresă: {why}",settings:"Setări",mapEngine:"Motor hărți",engineDefault:"Al fiecărei hărți",engineMapboxNote:"necesită un token",engineMaplibreNote:"nu necesită token",tokenNotNeeded:"MapLibre este selectat: hărțile sale nu necesită token Mapbox",hideHeader:"Ascunde antetul",showHeader:"Afișează antetul",elementsCount:"{n} elemente",elements:"elemente"},Dr={title:"Студия плагинов",navLabel:"Плагины по возможностям",countLabel:"Здесь: пакетов {bundles} · плагинов {elements}",changeLanguage:"Сменить язык",copyEmbed:"Скопировать код встраивания",copy:"Копировать",copied:"Скопировано",scriptEmbed:"Встраивание через скрипт",loading:"Загрузка {name}…",couldNotLoad:"Не удалось загрузить {name}.",chooseElement:"Выберите плагин из списка.",filterPlaceholder:"Фильтр плагинов",collapseAll:"Свернуть всё",noMatch:"Нет плагинов, соответствующих «{query}».",openSection:"Открыть {cap}, {label}",part:"часть",noStandalone:"нет отдельной страницы",cap5:"Оболочка приложения",cap4:"Составной",cap3:"Несколько видов",cap2:"Предустановка",cap1:"Одиночный",stageExperimental:"Экспериментальные","widget:rudder-voice/rudder-voice":"Rudder · голос в текст",toggleList:"Показать или скрыть список",openViews:"Открыть список представлений",expandList:"Развернуть список",collapseList:"Свернуть список",collapse:"Свернуть",partOf:"часть {name}, не публикуется отдельно",mapToken:"Токен карты",mapboxToken:"Токен Mapbox",tokenPaste:"Публичный токен Mapbox (pk.…)",tokenUrlLabel:"…или адрес службы токенов",tokenApply:"Применить",tokenClear:"Очистить",tokenStoredHere:"Хранится только в этом браузере.",tokenSourceYours:"Используется ваш токен",tokenSourceUrl:"Используется токен с {url}",tokenSourceBuilt:"Используется токен, встроенный в страницу",tokenSourceNone:"Нет токена Mapbox: карты Mapbox не загрузятся (MapLibre он не нужен)",tokenSecret:"Это секретный токен (sk.…). Вставьте публичный (pk.…): эта страница общедоступна.",tokenNotPk:"Публичный токен Mapbox начинается с pk.",tokenUrlFailed:"Не удалось получить токен по этому адресу: {why}",settings:"Настройки",mapEngine:"Движок карт",engineDefault:"Свой у каждой карты",engineMapboxNote:"нужен токен",engineMaplibreNote:"токен не нужен",tokenNotNeeded:"Выбран MapLibre: его картам не нужен токен Mapbox",hideHeader:"Скрыть заголовок",showHeader:"Показать заголовок",elementsCount:"{n} элементов",elements:"элементов"},Ur={title:"插件工作室",navLabel:"按能力分类的插件",countLabel:"此处列出 {bundles} 个包 · {elements} 个插件",changeLanguage:"切换语言",copyEmbed:"复制嵌入代码",copy:"复制",copied:"已复制",scriptEmbed:"脚本嵌入",loading:"正在加载 {name}…",couldNotLoad:"无法加载 {name}。",chooseElement:"请从列表中选择一个插件。",filterPlaceholder:"筛选插件",collapseAll:"全部折叠",noMatch:"没有与“{query}”匹配的插件。",openSection:"打开 {cap},{label}",part:"部分",noStandalone:"无独立页面",cap5:"应用外壳",cap4:"组合",cap3:"多视图",cap2:"预设",cap1:"单一",stageExperimental:"实验性","widget:rudder-voice/rudder-voice":"Rudder · 语音转文字",toggleList:"显示或隐藏列表",openViews:"打开视图列表",expandList:"展开列表",collapseList:"折叠列表",collapse:"折叠",partOf:"{name} 的一部分,不单独发布",mapToken:"地图令牌",mapboxToken:"Mapbox 令牌",tokenPaste:"Mapbox 公开令牌 (pk.…)",tokenUrlLabel:"…或令牌服务的网址",tokenApply:"使用",tokenClear:"清除",tokenStoredHere:"仅保存在此浏览器中。",tokenSourceYours:"正在使用您的令牌",tokenSourceUrl:"正在使用来自 {url} 的令牌",tokenSourceBuilt:"正在使用此页面内置的令牌",tokenSourceNone:"没有 Mapbox 令牌:Mapbox 地图无法加载(MapLibre 地图不需要)",tokenSecret:"这是秘密令牌 (sk.…)。请粘贴公开令牌 (pk.…):此页面是公开的。",tokenNotPk:"Mapbox 公开令牌以 pk. 开头",tokenUrlFailed:"无法从该网址获取令牌:{why}",settings:"设置",mapEngine:"地图引擎",engineDefault:"各地图自身的",engineMapboxNote:"需要令牌",engineMaplibreNote:"无需令牌",tokenNotNeeded:"已选择 MapLibre:其地图无需 Mapbox 令牌",hideHeader:"隐藏标题栏",showHeader:"显示标题栏",elementsCount:"{n} 个元素",elements:"元素"};function Mn(e,t){const o=ui(),n=t||(o&&o.type&&o.type.__hmrId?"hmr-"+o.type.__hmrId:Wr(e));As(()=>{var r;if(!o)return;const s=(r=o.proxy)==null?void 0:r.$el;if(!s)return;const i=s.getRootNode();if(!(i instanceof ShadowRoot))return;if(!i.querySelector('style[data-shadow-styles="reduced-motion"]')){const p=document.createElement("style");p.setAttribute("data-shadow-styles","reduced-motion"),p.textContent=Rr,i.appendChild(p)}const l=i.querySelector(`style[data-shadow-styles="${n}"]`);if(l){l.textContent!==e&&(l.textContent=e);return}const a=document.createElement("style");a.setAttribute("data-shadow-styles",n),a.textContent=e,i.appendChild(a)})}const Rr=`@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
scroll-behavior: auto !important;
}
}`;function Wr(e){let t=0;for(let o=0;o<e.length;o++)t=(t<<5)-t+e.charCodeAt(o),t|=0;return"s"+Math.abs(t).toString(36)}const zr=Object.assign({"./locales/ar/grid.json":{search:"ابحث عن الشعوب…",hide_filters:"إخفاء عوامل التصفية",show_filters:"إظهار عوامل التصفية",total:"الإجمالي",showing:"المعروض",load_more:"عرض المزيد",full_profile:"الملف الكامل",wagf_region:"المنطقة",wagf_block:"كتلة التقارب",rop1:"الشعب",religion:"الدين",exact_filter:"تطابق تام",clear_all:"مسح الكل",loading:"جارٍ التحميل…",no_results:"لا توجد شعوب مطابقة لهذا التصفية.",type_to_search:"اكتب للبحث...",load_failed:"تعذّر تحميل بيانات الشعوب. هذه مشكلة اتصال، وليست مشكلة في التصفية.",search_people_or_countries:"ابحث عن الشعوب أو الدول…"},"./locales/ar/messages.json":{menuComingSoon:"القائمة قادمة قريباً",pinHint:{tapDot:"اضغط على نقطة ملوّنة — لا يزال هناك من يحتاج إلى الصلاة"},upg100WallHeading:"قائمتي UPG 100 — قوائم الصلاة والملصقات",upg100WallTag:"تعبئة للصلاة",upg100WallIntroA:"وزّع مهمة الصلاة في مجموعات من خمسين ومئة — كما أطعم يسوع الخمسة آلاف (لوقا ٩:١٤). كل ملصق هو قائمة من 100 يمكنك أن تصلي بها وتطبعها وتعلّقها على الحائط — مصلّيًا لأجلهم ",upg100WallIntroEmph:"باسم شعبهم",upg100WallIntroB:".",loadingNamed:"جارٍ تحميل {name}…",couldNotLoadNamed:"تعذّر تحميل {name}.",engineMissing:"لم يتم تحميل محرك الخرائط {engine}.",packetFailed:"فشل إنشاء الكُتيّب: {reason}",selectionPacketFailed:"فشل إنشاء كُتيّب التحديد: {reason}",posterOneTerritory:"الملصق يطبع منطقة واحدة في كل مرة — {count} محددة.",selectionPosterFailed:"فشل إنشاء ملصق التحديد: {reason}",mapUnavailable:"الخريطة غير متاحة",copied:"تم النسخ!",copyFailed:"فشل النسخ — اضغط Ctrl/Cmd-C",engineNotLoaded:"لم يتم تحميل محرك الخريطة",engineNotLoadedDetail:"لم يتم تحميل محرك الخريطة {engine}. القائمة ووسيلة الإيضاح غير متأثرتين.",viewLoadFailed:"تعذّر تحميل هذا العرض.",retry:"إعادة المحاولة"},"./locales/ar/poster.json":{export_poster:"تصدير الملصق",size:"الحجم",orientation:"الاتجاه",portrait:"طولي",landscape:"عرضي",dpi:"DPI",format:"الصيغة",png_raster:"PNG (نقطي)",pdf_raster:"PDF (نقطي على صفحة متجهية)",title:"العنوان",map_title:"عنوان الخريطة",subtitle:"العنوان الفرعي",slots:"العناصر",scale_bar:"شريط المقياس",north_arrow:"سهم الشمال",footer_attribution:"التذييل (الإسناد مطلوب)",cancel:"إلغاء",map_preview:"معاينة الخريطة",loading_snapshot:"جارٍ تحميل لقطة الخريطة…",preview_unavailable:"المعاينة غير متاحة"},"./locales/ar/search.json":{placeholder:"شعب، مكان، لغة، ديانة",placeholderNoPlaces:"شعب، لغة، ديانة (البحث عن الأماكن يتطلب رمز Mapbox)",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"},sections:{within:"ضمن {selection}",allData:"كل بيانات DOXA"},upg100Placeholder:"ابحث عن شعب أو قائمة UPG-100 أو منطقة…"},"./locales/de/grid.json":{search:"Volksgruppen suchen…",hide_filters:"Filter ausblenden",show_filters:"Filter anzeigen",total:"Gesamt",showing:"Angezeigt",load_more:"Mehr laden",full_profile:"Vollständiges Profil",wagf_region:"Region",wagf_block:"Affinitätsblock",rop1:"Volk",religion:"Religion",exact_filter:"Exakt",clear_all:"Alle löschen",loading:"Wird geladen…",no_results:"Keine Volksgruppen entsprechen diesem Filter.",type_to_search:"Zum Suchen tippen...",load_failed:"Die Daten konnten nicht geladen werden. Das ist ein Verbindungsproblem, nicht Ihr Filter.",search_people_or_countries:"Volksgruppen oder Länder suchen…"},"./locales/de/messages.json":{menuComingSoon:"Menü folgt in Kürze",pinHint:{tapDot:"Tippe auf einen farbigen Punkt — jemand braucht noch Gebet"},upg100WallHeading:"Meine UPG-100-Liste — Gebetslisten und Poster",upg100WallTag:"Gebetsmobilisierung",upg100WallIntroA:"Teilen Sie die Gebetsaufgabe in Gruppen zu fünfzig und hundert auf — so wie Jesus die 5.000 speiste (Lukas 9,14). Jedes Poster ist eine 100er-Liste, die Sie beten, drucken und an die Wand hängen können — und für sie ",upg100WallIntroEmph:"mit dem Namen ihrer Volksgruppe",upg100WallIntroB:" beten.",loadingNamed:"{name} wird geladen…",couldNotLoadNamed:"{name} konnte nicht geladen werden.",engineMissing:"Die Karten-Engine {engine} wurde nicht geladen.",packetFailed:"Heft fehlgeschlagen: {reason}",selectionPacketFailed:"Heft der Auswahl fehlgeschlagen: {reason}",posterOneTerritory:"Das Plakat druckt ein Gebiet auf einmal — {count} ausgewählt.",selectionPosterFailed:"Plakat der Auswahl fehlgeschlagen: {reason}",mapUnavailable:"Karte nicht verfügbar",copied:"Kopiert!",copyFailed:"Kopieren fehlgeschlagen — Strg/Cmd-C drücken",engineNotLoaded:"Karten-Engine nicht geladen",engineNotLoadedDetail:"Die Karten-Engine {engine} wurde nicht geladen. Liste und Legende sind nicht betroffen.",viewLoadFailed:"Diese Ansicht konnte nicht geladen werden.",retry:"Erneut versuchen"},"./locales/de/poster.json":{export_poster:"Poster exportieren",size:"Größe",orientation:"Ausrichtung",portrait:"Hochformat",landscape:"Querformat",dpi:"DPI",format:"Format",png_raster:"PNG (Raster)",pdf_raster:"PDF (Raster auf Vektorseite)",title:"Titel",map_title:"Kartentitel",subtitle:"Untertitel",slots:"Elemente",scale_bar:"Maßstabsleiste",north_arrow:"Nordpfeil",footer_attribution:"Fußzeile (Quellenangabe erforderlich)",cancel:"Abbrechen",map_preview:"Kartenvorschau",loading_snapshot:"Kartenaufnahme wird geladen…",preview_unavailable:"Vorschau nicht verfügbar"},"./locales/de/search.json":{placeholder:"Volk, Ort, Sprache, Religion",placeholderNoPlaces:"Volk, Sprache, Religion (Ortssuche braucht ein Mapbox-Token)",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"},kinds:{people:"Volk + Land",peopleGroup:"Volk",bloc:"Affinitätsblock",cluster:"Völkercluster",country:"Land",region:"Region",family:"Sprachfamilie",languageKind:"Sprache",dialect:"Dialekt",religionKind:"Religion"},upg100Placeholder:"Volksgruppe, UPG-100-Liste oder Region suchen…"},"./locales/en/grid.json":{search:"Search people groups…",hide_filters:"Hide Filters",show_filters:"Show Filters",total:"Total",showing:"Showing",load_more:"Load More",full_profile:"Full Profile",wagf_region:"Region",wagf_block:"Affinity Block",rop1:"People Group",religion:"Religion",exact_filter:"Exact",clear_all:"Clear All",loading:"Loading…",no_results:"No people groups match this filter.",type_to_search:"Type to search...",load_failed:"People-group data could not be loaded. This is a connection problem, not your filter.",search_people_or_countries:"Search people groups or countries…"},"./locales/en/messages.json":{menuComingSoon:"Menu coming soon",pinHint:{tapDot:"Tap a coloured dot — someone still needs prayer"},upg100WallHeading:"My UPG 100 List — Prayer Lists & Posters",upg100WallTag:"Prayer Mobilization",upg100WallIntroA:"Hand away the prayer task in clusters of fifties and hundreds — the way Jesus fed the 5,000 (Luke 9:14). Each poster is a 100-list you can pray, print, and put on a wall — praying for them ",upg100WallIntroEmph:"by their people group name",upg100WallIntroB:".",loadingNamed:"Loading {name}…",couldNotLoadNamed:"Could not load {name}.",engineMissing:"The {engine} map engine did not load.",packetFailed:"Packet failed: {reason}",selectionPacketFailed:"Selection packet failed: {reason}",posterOneTerritory:"Poster prints one territory at a time — {count} selected.",selectionPosterFailed:"Selection poster failed: {reason}",mapUnavailable:"Map unavailable",copied:"Copied!",copyFailed:"Copy failed — press Ctrl/Cmd-C",engineNotLoaded:"map engine not loaded",engineNotLoadedDetail:"The {engine} map engine did not load. The list and legend are unaffected.",viewLoadFailed:"This view couldn't load.",retry:"Retry"},"./locales/en/poster.json":{export_poster:"Export Poster",size:"Size",orientation:"Orientation",portrait:"Portrait",landscape:"Landscape",dpi:"DPI",format:"Format",png_raster:"PNG (raster)",pdf_raster:"PDF (raster on vector page)",title:"Title",map_title:"Map title",subtitle:"Subtitle",slots:"Slots",scale_bar:"Scale bar",north_arrow:"North arrow",footer_attribution:"Footer (attribution required)",cancel:"Cancel",map_preview:"map preview",loading_snapshot:"Loading map snapshot…",preview_unavailable:"preview unavailable"},"./locales/en/search.json":{placeholder:"People, place, language, religion",placeholderNoPlaces:"People, language, religion (place search needs a Mapbox token)",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"},upg100Placeholder:"Search people group, UPG-100 list, or region…"},"./locales/es/grid.json":{search:"Buscar pueblos…",hide_filters:"Ocultar filtros",show_filters:"Mostrar filtros",total:"Total",showing:"Mostrando",load_more:"Cargar más",full_profile:"Perfil completo",wagf_region:"Región",wagf_block:"Bloque de afinidad",rop1:"Pueblo",religion:"Religión",exact_filter:"Exacto",clear_all:"Borrar todo",loading:"Cargando…",no_results:"Ningún pueblo coincide con este filtro.",type_to_search:"Escribe para buscar...",load_failed:"No se pudieron cargar los datos de pueblos. Es un problema de conexión, no de tu filtro.",search_people_or_countries:"Buscar pueblos o países…"},"./locales/es/messages.json":{menuComingSoon:"Menú próximamente",pinHint:{tapDot:"Toca un punto de color: alguien todavía necesita oración"},upg100WallHeading:"Mi lista UPG 100 — Listas de oración y carteles",upg100WallTag:"Movilización de oración",upg100WallIntroA:"Reparte la tarea de la oración en grupos de cincuenta y de cien, como Jesús alimentó a los 5.000 (Lucas 9:14). Cada cartel es una lista de 100 que puedes orar, imprimir y poner en la pared — orando por ellos ",upg100WallIntroEmph:"por el nombre de su pueblo",upg100WallIntroB:".",loadingNamed:"Cargando {name}…",couldNotLoadNamed:"No se pudo cargar {name}.",engineMissing:"El motor de mapas {engine} no se cargó.",packetFailed:"Error al generar el cuadernillo: {reason}",selectionPacketFailed:"Error al generar el cuadernillo de la selección: {reason}",posterOneTerritory:"El cartel imprime un territorio a la vez: {count} seleccionados.",selectionPosterFailed:"Error al generar el cartel de la selección: {reason}",mapUnavailable:"Mapa no disponible",copied:"¡Copiado!",copyFailed:"Error al copiar: pulsa Ctrl/Cmd-C",engineNotLoaded:"motor de mapas no cargado",engineNotLoadedDetail:"El motor de mapas {engine} no se cargó. La lista y la leyenda no se ven afectadas.",viewLoadFailed:"No se pudo cargar esta vista.",retry:"Reintentar"},"./locales/es/poster.json":{export_poster:"Exportar póster",size:"Tamaño",orientation:"Orientación",portrait:"Vertical",landscape:"Horizontal",dpi:"DPI",format:"Formato",png_raster:"PNG (ráster)",pdf_raster:"PDF (ráster en página vectorial)",title:"Título",map_title:"Título del mapa",subtitle:"Subtítulo",slots:"Elementos",scale_bar:"Barra de escala",north_arrow:"Flecha norte",footer_attribution:"Pie de página (atribución obligatoria)",cancel:"Cancelar",map_preview:"vista previa del mapa",loading_snapshot:"Cargando la captura del mapa…",preview_unavailable:"vista previa no disponible"},"./locales/es/search.json":{placeholder:"Pueblo, lugar, idioma, religión",placeholderNoPlaces:"Pueblo, idioma, religión (buscar lugares requiere un token de Mapbox)",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"},sections:{within:"Dentro de {selection}",allData:"Todos los datos DOXA"},upg100Placeholder:"Buscar pueblo, lista UPG-100 o región…"},"./locales/fr/grid.json":{search:"Rechercher des peuples…",hide_filters:"Masquer les filtres",show_filters:"Afficher les filtres",total:"Total",showing:"Affichage",load_more:"Charger plus",full_profile:"Profil complet",wagf_region:"Région",wagf_block:"Bloc d'affinité",rop1:"Peuple",religion:"Religion",exact_filter:"Exact",clear_all:"Tout effacer",loading:"Chargement…",no_results:"Aucun peuple ne correspond à ce filtre.",type_to_search:"Tapez pour rechercher...",load_failed:"Les données n’ont pas pu être chargées. C’est un problème de connexion, pas votre filtre.",search_people_or_countries:"Rechercher des peuples ou des pays…"},"./locales/fr/messages.json":{menuComingSoon:"Menu bientôt disponible",pinHint:{tapDot:"Touchez un point coloré — quelqu’un a encore besoin de prière"},upg100WallHeading:"Ma liste UPG 100 — Listes de prière et affiches",upg100WallTag:"Mobilisation pour la prière",upg100WallIntroA:"Répartissez la tâche de la prière par groupes de cinquante et de cent — comme Jésus a nourri les 5 000 (Luc 9:14). Chaque affiche est une liste de 100 que vous pouvez prier, imprimer et afficher au mur — en priant pour eux ",upg100WallIntroEmph:"par le nom de leur peuple",upg100WallIntroB:".",loadingNamed:"Chargement de {name}…",couldNotLoadNamed:"Impossible de charger {name}.",engineMissing:"Le moteur de carte {engine} ne s’est pas chargé.",packetFailed:"Échec du livret : {reason}",selectionPacketFailed:"Échec du livret de la sélection : {reason}",posterOneTerritory:"L’affiche imprime un territoire à la fois — {count} sélectionnés.",selectionPosterFailed:"Échec de l’affiche de la sélection : {reason}",mapUnavailable:"Carte indisponible",copied:"Copié !",copyFailed:"Échec de la copie — appuyez sur Ctrl/Cmd-C",engineNotLoaded:"moteur cartographique non chargé",engineNotLoadedDetail:"Le moteur cartographique {engine} ne s’est pas chargé. La liste et la légende ne sont pas affectées.",viewLoadFailed:"Impossible de charger cette vue.",retry:"Réessayer"},"./locales/fr/poster.json":{export_poster:"Exporter l'affiche",size:"Taille",orientation:"Orientation",portrait:"Portrait",landscape:"Paysage",dpi:"DPI",format:"Format",png_raster:"PNG (raster)",pdf_raster:"PDF (raster sur page vectorielle)",title:"Titre",map_title:"Titre de la carte",subtitle:"Sous-titre",slots:"Éléments",scale_bar:"Échelle",north_arrow:"Flèche du nord",footer_attribution:"Pied de page (attribution requise)",cancel:"Annuler",map_preview:"aperçu de la carte",loading_snapshot:"Chargement de l'instantané de la carte…",preview_unavailable:"aperçu indisponible"},"./locales/fr/search.json":{placeholder:"Peuple, lieu, langue, religion",placeholderNoPlaces:"Peuple, langue, religion (la recherche de lieux requiert un jeton Mapbox)",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"},sections:{within:"Dans {selection}",allData:"Toutes les données DOXA"},upg100Placeholder:"Rechercher un peuple, une liste UPG-100 ou une région…"},"./locales/hi/grid.json":{search:"जनसमूह खोजें…",hide_filters:"फ़िल्टर छिपाएँ",show_filters:"फ़िल्टर दिखाएँ",total:"कुल",showing:"दिखा रहे हैं",load_more:"और देखें",full_profile:"पूरी प्रोफ़ाइल",wagf_region:"क्षेत्र",wagf_block:"समानता समूह",rop1:"जनसमूह",religion:"धर्म",exact_filter:"सटीक",clear_all:"सब हटाएँ",loading:"लोड हो रहा है…",no_results:"इस फ़िल्टर से कोई जनसमूह मेल नहीं खाता।",type_to_search:"खोजने के लिए लिखें...",load_failed:"जनसमूह डेटा लोड नहीं हो सका। यह कनेक्शन की समस्या है, आपके फ़िल्टर की नहीं।",search_people_or_countries:"जनसमूह या देश खोजें…"},"./locales/hi/messages.json":{menuComingSoon:"मेनू शीघ्र आ रहा है",pinHint:{tapDot:"किसी रंगीन बिंदु पर टैप करें — किसी को अभी भी प्रार्थना की आवश्यकता है"},upg100WallHeading:"मेरी UPG 100 सूची — प्रार्थना सूचियाँ और पोस्टर",upg100WallTag:"प्रार्थना लामबंदी",upg100WallIntroA:"प्रार्थना के काम को पचास-पचास और सौ-सौ के समूहों में बाँटें — जैसे यीशु ने 5,000 लोगों को खिलाया (लूका 9:14)। हर पोस्टर 100 की एक सूची है जिसके लिए आप प्रार्थना कर सकते हैं, छाप सकते हैं और दीवार पर लगा सकते हैं — उनके लिए ",upg100WallIntroEmph:"उनके जनसमूह के नाम से",upg100WallIntroB:" प्रार्थना करते हुए।",loadingNamed:"{name} लोड हो रहा है…",couldNotLoadNamed:"{name} लोड नहीं हो सका।",engineMissing:"{engine} नक्शा इंजन लोड नहीं हुआ।",packetFailed:"पुस्तिका विफल: {reason}",selectionPacketFailed:"चयन की पुस्तिका विफल: {reason}",posterOneTerritory:"पोस्टर एक समय में एक क्षेत्र छापता है — {count} चयनित।",selectionPosterFailed:"चयन का पोस्टर विफल: {reason}",mapUnavailable:"मानचित्र अनुपलब्ध",copied:"कॉपी हो गया!",copyFailed:"कॉपी विफल — Ctrl/Cmd-C दबाएँ",engineNotLoaded:"मानचित्र इंजन लोड नहीं हुआ",engineNotLoadedDetail:"{engine} मानचित्र इंजन लोड नहीं हुआ। सूची और लेजेंड अप्रभावित हैं।",viewLoadFailed:"यह दृश्य लोड नहीं हो सका।",retry:"फिर से कोशिश करें"},"./locales/hi/poster.json":{export_poster:"पोस्टर निर्यात करें",size:"आकार",orientation:"अभिविन्यास",portrait:"पोर्ट्रेट",landscape:"लैंडस्केप",dpi:"DPI",format:"प्रारूप",png_raster:"PNG (रास्टर)",pdf_raster:"PDF (वेक्टर पृष्ठ पर रास्टर)",title:"शीर्षक",map_title:"मानचित्र शीर्षक",subtitle:"उपशीर्षक",slots:"स्लॉट",scale_bar:"स्केल बार",north_arrow:"उत्तर तीर",footer_attribution:"फ़ुटर (एट्रिब्यूशन आवश्यक)",cancel:"रद्द करें",map_preview:"मानचित्र पूर्वावलोकन",loading_snapshot:"मानचित्र स्नैपशॉट लोड हो रहा है…",preview_unavailable:"पूर्वावलोकन उपलब्ध नहीं"},"./locales/hi/search.json":{placeholder:"लोग, स्थान, भाषा, धर्म",placeholderNoPlaces:"लोग, भाषा, धर्म (स्थान खोज के लिए Mapbox टोकन चाहिए)",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"},sections:{within:"{selection} के भीतर",allData:"सभी DOXA डेटा"},kinds:{people:"जनसमूह + देश",peopleGroup:"जनसमूह",bloc:"समानता समूह",cluster:"जनसमूह क्लस्टर",country:"देश",region:"क्षेत्र",family:"भाषा परिवार",languageKind:"भाषा",dialect:"बोली",religionKind:"धर्म"},upg100Placeholder:"जनसमूह, UPG-100 सूची या क्षेत्र खोजें…"},"./locales/it/grid.json":{search:"Cerca popoli…",hide_filters:"Nascondi filtri",show_filters:"Mostra filtri",total:"Totale",showing:"Mostrati",load_more:"Carica altro",full_profile:"Profilo completo",wagf_region:"Regione",wagf_block:"Blocco di affinità",rop1:"Popolo",religion:"Religione",exact_filter:"Esatto",clear_all:"Cancella tutto",loading:"Caricamento…",no_results:"Nessun popolo corrisponde a questo filtro.",type_to_search:"Digita per cercare...",load_failed:"Impossibile caricare i dati dei popoli. È un problema di connessione, non del filtro.",search_people_or_countries:"Cerca popoli o paesi…"},"./locales/it/messages.json":{menuComingSoon:"Menu in arrivo",pinHint:{tapDot:"Tocca un punto colorato — qualcuno ha ancora bisogno di preghiera"},upg100WallHeading:"La mia lista UPG 100 — Liste di preghiera e poster",upg100WallTag:"Mobilitazione alla preghiera",upg100WallIntroA:"Distribuisci il compito della preghiera in gruppi di cinquanta e di cento — come Gesù sfamò i 5.000 (Luca 9:14). Ogni poster è una lista di 100 che puoi pregare, stampare e appendere al muro — pregando per loro ",upg100WallIntroEmph:"con il nome del loro popolo",upg100WallIntroB:".",loadingNamed:"Caricamento di {name}…",couldNotLoadNamed:"Impossibile caricare {name}.",engineMissing:"Il motore di mappa {engine} non è stato caricato.",packetFailed:"Libretto non riuscito: {reason}",selectionPacketFailed:"Libretto della selezione non riuscito: {reason}",posterOneTerritory:"Il manifesto stampa un territorio alla volta — {count} selezionati.",selectionPosterFailed:"Manifesto della selezione non riuscito: {reason}",mapUnavailable:"Mappa non disponibile",copied:"Copiato!",copyFailed:"Copia non riuscita — premi Ctrl/Cmd-C",engineNotLoaded:"motore di mappe non caricato",engineNotLoadedDetail:"Il motore di mappe {engine} non si è caricato. L’elenco e la legenda non sono interessati.",viewLoadFailed:"Impossibile caricare questa vista.",retry:"Riprova"},"./locales/it/poster.json":{export_poster:"Esporta poster",size:"Dimensione",orientation:"Orientamento",portrait:"Verticale",landscape:"Orizzontale",dpi:"DPI",format:"Formato",png_raster:"PNG (raster)",pdf_raster:"PDF (raster su pagina vettoriale)",title:"Titolo",map_title:"Titolo della mappa",subtitle:"Sottotitolo",slots:"Elementi",scale_bar:"Barra della scala",north_arrow:"Freccia nord",footer_attribution:"Piè di pagina (attribuzione obbligatoria)",cancel:"Annulla",map_preview:"anteprima della mappa",loading_snapshot:"Caricamento dell'istantanea della mappa…",preview_unavailable:"anteprima non disponibile"},"./locales/it/search.json":{placeholder:"Popolo, luogo, lingua, religione",placeholderNoPlaces:"Popolo, lingua, religione (la ricerca di luoghi richiede un token Mapbox)",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"},sections:{within:"In {selection}",allData:"Tutti i dati DOXA"},kinds:{people:"Popolo + paese",peopleGroup:"Popolo",bloc:"Blocco di affinità",cluster:"Cluster di popoli",country:"Paese",region:"Regione",family:"Famiglia linguistica",languageKind:"Lingua",dialect:"Dialetto",religionKind:"Religione"},upg100Placeholder:"Cerca popolo, elenco UPG-100 o regione…"},"./locales/pt/grid.json":{search:"Pesquisar povos…",hide_filters:"Ocultar filtros",show_filters:"Mostrar filtros",total:"Total",showing:"Mostrando",load_more:"Carregar mais",full_profile:"Perfil completo",wagf_region:"Região",wagf_block:"Bloco de afinidade",rop1:"Povo",religion:"Religião",exact_filter:"Exato",clear_all:"Limpar tudo",loading:"A carregar…",no_results:"Nenhum povo corresponde a este filtro.",type_to_search:"Escreva para pesquisar...",load_failed:"Não foi possível carregar os dados dos povos. É um problema de ligação, não do seu filtro.",search_people_or_countries:"Pesquisar povos ou países…"},"./locales/pt/messages.json":{menuComingSoon:"Menu em breve",pinHint:{tapDot:"Toque num ponto colorido — alguém ainda precisa de oração"},upg100WallHeading:"A minha lista UPG 100 — Listas de oração e cartazes",upg100WallTag:"Mobilização de oração",upg100WallIntroA:"Reparta a tarefa da oração em grupos de cinquenta e de cem — como Jesus alimentou os 5.000 (Lucas 9:14). Cada cartaz é uma lista de 100 que pode orar, imprimir e pôr na parede — orando por eles ",upg100WallIntroEmph:"pelo nome do seu povo",upg100WallIntroB:".",loadingNamed:"Carregando {name}…",couldNotLoadNamed:"Não foi possível carregar {name}.",engineMissing:"O motor de mapa {engine} não foi carregado.",packetFailed:"Falha ao gerar o caderno: {reason}",selectionPacketFailed:"Falha ao gerar o caderno da seleção: {reason}",posterOneTerritory:"O cartaz imprime um território de cada vez — {count} selecionados.",selectionPosterFailed:"Falha ao gerar o cartaz da seleção: {reason}",mapUnavailable:"Mapa indisponível",copied:"Copiado!",copyFailed:"Falha ao copiar — pressione Ctrl/Cmd-C",engineNotLoaded:"motor de mapas não carregado",engineNotLoadedDetail:"O motor de mapas {engine} não carregou. A lista e a legenda não são afetadas.",viewLoadFailed:"Não foi possível carregar esta visualização.",retry:"Tentar novamente"},"./locales/pt/poster.json":{export_poster:"Exportar pôster",size:"Tamanho",orientation:"Orientação",portrait:"Retrato",landscape:"Paisagem",dpi:"DPI",format:"Formato",png_raster:"PNG (raster)",pdf_raster:"PDF (raster em página vetorial)",title:"Título",map_title:"Título do mapa",subtitle:"Subtítulo",slots:"Elementos",scale_bar:"Barra de escala",north_arrow:"Seta norte",footer_attribution:"Rodapé (atribuição obrigatória)",cancel:"Cancelar",map_preview:"pré-visualização do mapa",loading_snapshot:"Carregando o instantâneo do mapa…",preview_unavailable:"pré-visualização indisponível"},"./locales/pt/search.json":{placeholder:"Povo, local, língua, religião",placeholderNoPlaces:"Povo, língua, religião (a busca de locais requer um token do Mapbox)",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"},sections:{within:"Dentro de {selection}",allData:"Todos os dados DOXA"},upg100Placeholder:"Procurar povo, lista UPG-100 ou região…"},"./locales/ro/grid.json":{search:"Caută popoare…",hide_filters:"Ascunde filtrele",show_filters:"Arată filtrele",total:"Total",showing:"Se afișează",load_more:"Încarcă mai mult",full_profile:"Profil complet",wagf_region:"Regiune",wagf_block:"Bloc de afinitate",rop1:"Popor",religion:"Religie",exact_filter:"Exact",clear_all:"Șterge tot",loading:"Se încarcă…",no_results:"Niciun popor nu corespunde acestui filtru.",type_to_search:"Scrie pentru a căuta...",load_failed:"Datele despre popoare nu au putut fi încărcate. Este o problemă de conexiune, nu a filtrului.",search_people_or_countries:"Caută popoare sau țări…"},"./locales/ro/messages.json":{menuComingSoon:"Meniu în curând",pinHint:{tapDot:"Atinge un punct colorat — cineva are încă nevoie de rugăciune"},upg100WallHeading:"Lista mea UPG 100 — Liste de rugăciune și afișe",upg100WallTag:"Mobilizare pentru rugăciune",upg100WallIntroA:"Împarte sarcina rugăciunii în grupuri de câte cincizeci și o sută — așa cum Isus a hrănit cei 5.000 (Luca 9:14). Fiecare afiș este o listă de 100 pe care o poți ruga, tipări și pune pe perete — rugându-te pentru ei ",upg100WallIntroEmph:"pe numele poporului lor",upg100WallIntroB:".",loadingNamed:"Se încarcă {name}…",couldNotLoadNamed:"Nu s-a putut încărca {name}.",engineMissing:"Motorul de hartă {engine} nu s-a încărcat.",packetFailed:"Broșura a eșuat: {reason}",selectionPacketFailed:"Broșura selecției a eșuat: {reason}",posterOneTerritory:"Afișul tipărește un teritoriu pe rând — {count} selectate.",selectionPosterFailed:"Afișul selecției a eșuat: {reason}",mapUnavailable:"Harta indisponibilă",copied:"Copiat!",copyFailed:"Copierea a eșuat — apasă Ctrl/Cmd-C",engineNotLoaded:"motorul de hărți nu s-a încărcat",engineNotLoadedDetail:"Motorul de hărți {engine} nu s-a încărcat. Lista și legenda nu sunt afectate.",viewLoadFailed:"Această vizualizare nu s-a putut încărca.",retry:"Reîncearcă"},"./locales/ro/poster.json":{export_poster:"Exportă posterul",size:"Dimensiune",orientation:"Orientare",portrait:"Portret",landscape:"Peisaj",dpi:"DPI",format:"Format",png_raster:"PNG (raster)",pdf_raster:"PDF (raster pe pagină vectorială)",title:"Titlu",map_title:"Titlul hărții",subtitle:"Subtitlu",slots:"Elemente",scale_bar:"Bară de scară",north_arrow:"Săgeata nord",footer_attribution:"Subsol (atribuire obligatorie)",cancel:"Anulează",map_preview:"previzualizare hartă",loading_snapshot:"Se încarcă instantaneul hărții…",preview_unavailable:"previzualizare indisponibilă"},"./locales/ro/search.json":{placeholder:"Popor, loc, limbă, religie",placeholderNoPlaces:"Popor, limbă, religie (căutarea locurilor necesită un token Mapbox)",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"},sections:{within:"În {selection}",allData:"Toate datele DOXA"},kinds:{people:"Popor + țară",peopleGroup:"Popor",bloc:"Bloc de afinitate",cluster:"Grup de popoare",country:"Țară",region:"Regiune",family:"Familie de limbi",languageKind:"Limbă",dialect:"Dialect",religionKind:"Religie"},upg100Placeholder:"Caută popor, listă UPG-100 sau regiune…"},"./locales/ru/grid.json":{search:"Поиск народов…",hide_filters:"Скрыть фильтры",show_filters:"Показать фильтры",total:"Всего",showing:"Показано",load_more:"Показать ещё",full_profile:"Полный профиль",wagf_region:"Регион",wagf_block:"Блок родства",rop1:"Народ",religion:"Религия",exact_filter:"Точное совпадение",clear_all:"Очистить всё",loading:"Загрузка…",no_results:"Нет народов, соответствующих этому фильтру.",type_to_search:"Введите для поиска...",load_failed:"Не удалось загрузить данные о народах. Это проблема соединения, а не фильтра.",search_people_or_countries:"Поиск народов или стран…"},"./locales/ru/messages.json":{menuComingSoon:"Меню скоро появится",pinHint:{tapDot:"Нажмите на цветную точку — кому-то всё ещё нужна молитва"},upg100WallHeading:"Мой список UPG 100 — молитвенные списки и плакаты",upg100WallTag:"Молитвенная мобилизация",upg100WallIntroA:"Разделите молитвенный труд на группы по пятьдесят и по сто — так Иисус накормил 5000 (Луки 9:14). Каждый плакат — это список из 100, о котором можно молиться, распечатать и повесить на стену, молясь о них ",upg100WallIntroEmph:"по имени их народа",upg100WallIntroB:".",loadingNamed:"Загрузка {name}…",couldNotLoadNamed:"Не удалось загрузить {name}.",engineMissing:"Картографический движок {engine} не загрузился.",packetFailed:"Не удалось создать буклет: {reason}",selectionPacketFailed:"Не удалось создать буклет выбора: {reason}",posterOneTerritory:"Плакат печатает по одной территории — выбрано {count}.",selectionPosterFailed:"Не удалось создать плакат выбора: {reason}",mapUnavailable:"Карта недоступна",copied:"Скопировано!",copyFailed:"Не удалось скопировать — нажмите Ctrl/Cmd-C",engineNotLoaded:"движок карты не загружен",engineNotLoadedDetail:"Движок карты {engine} не загрузился. Список и легенда не затронуты.",viewLoadFailed:"Не удалось загрузить этот раздел.",retry:"Повторить"},"./locales/ru/poster.json":{export_poster:"Экспорт плаката",size:"Размер",orientation:"Ориентация",portrait:"Портретная",landscape:"Альбомная",dpi:"DPI",format:"Формат",png_raster:"PNG (растр)",pdf_raster:"PDF (растр на векторной странице)",title:"Заголовок",map_title:"Заголовок карты",subtitle:"Подзаголовок",slots:"Элементы",scale_bar:"Масштабная линейка",north_arrow:"Указатель севера",footer_attribution:"Нижний колонтитул (указание источника обязательно)",cancel:"Отмена",map_preview:"предпросмотр карты",loading_snapshot:"Загрузка снимка карты…",preview_unavailable:"предпросмотр недоступен"},"./locales/ru/search.json":{placeholder:"Народ, место, язык, религия",placeholderNoPlaces:"Народ, язык, религия (для поиска мест нужен токен Mapbox)",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"},sections:{within:"В пределах {selection}",allData:"Все данные DOXA"},upg100Placeholder:"Поиск народа, списка UPG-100 или региона…"},"./locales/zh/grid.json":{search:"搜索民族…",hide_filters:"隐藏筛选",show_filters:"显示筛选",total:"总计",showing:"显示",load_more:"加载更多",full_profile:"完整档案",wagf_region:"区域",wagf_block:"亲缘板块",rop1:"民族",religion:"宗教",exact_filter:"精确",clear_all:"全部清除",loading:"加载中…",no_results:"没有符合此筛选条件的民族。",type_to_search:"输入以搜索...",load_failed:"无法加载民族数据。这是连接问题,而不是筛选问题。",search_people_or_countries:"搜索民族或国家…"},"./locales/zh/messages.json":{menuComingSoon:"菜单即将推出",pinHint:{tapDot:"点按一个彩色圆点——仍有人需要祷告"},upg100WallHeading:"我的 UPG 100 名單 — 禱告名單與海報",upg100WallTag:"禱告動員",upg100WallIntroA:"將禱告的工作分成五十人、一百人一組 — 就像耶穌餵飽五千人那樣(路加福音 9:14)。每一張海報都是一份 100 人名單,你可以為他們禱告、列印出來、貼在牆上 — ",upg100WallIntroEmph:"按著他們族群的名字",upg100WallIntroB:"為他們禱告。",loadingNamed:"正在加载{name}…",couldNotLoadNamed:"无法加载{name}。",engineMissing:"{engine} 地图引擎未能加载。",packetFailed:"祷告册生成失败:{reason}",selectionPacketFailed:"所选内容的祷告册生成失败:{reason}",posterOneTerritory:"海报一次只能打印一个区域——已选 {count} 个。",selectionPosterFailed:"所选内容的海报生成失败:{reason}",mapUnavailable:"地图不可用",copied:"已复制!",copyFailed:"复制失败——请按 Ctrl/Cmd-C",engineNotLoaded:"地图引擎未加载",engineNotLoadedDetail:"{engine} 地图引擎未能加载。列表和图例不受影响。",viewLoadFailed:"此视图无法加载。",retry:"重试"},"./locales/zh/poster.json":{export_poster:"导出海报",size:"尺寸",orientation:"方向",portrait:"纵向",landscape:"横向",dpi:"DPI",format:"格式",png_raster:"PNG(位图)",pdf_raster:"PDF(矢量页面上的位图)",title:"标题",map_title:"地图标题",subtitle:"副标题",slots:"元素",scale_bar:"比例尺",north_arrow:"指北针",footer_attribution:"页脚(必须署名)",cancel:"取消",map_preview:"地图预览",loading_snapshot:"正在加载地图快照…",preview_unavailable:"预览不可用"},"./locales/zh/search.json":{placeholder:"民族、地点、语言、宗教",placeholderNoPlaces:"民族、语言、宗教(地点搜索需要 Mapbox 令牌)",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"},sections:{within:"在 {selection} 之內",allData:"所有 DOXA 資料"},kinds:{people:"民族 + 国家",peopleGroup:"民族",bloc:"亲缘板块",cluster:"民族群",country:"国家",region:"区域",family:"语系",languageKind:"语言",dialect:"方言",religionKind:"宗教"},upg100Placeholder:"搜索民族、UPG-100 名单或区域…"}}),zt={};for(const[e,t]of Object.entries(zr)){const o=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!o)continue;const[,n,s]=o;zt[n]??(zt[n]={}),zt[n][s]=t}const Ii=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function jr(){try{const e=new URLSearchParams(window.location.search);return(e.get("lang")||e.get("locale")||"").split("-")[0].toLowerCase()}catch{return""}}function Br(){var n;const e=jr();if(Ii.includes(e))return e;const o=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return Ii.includes(o)?o:"en"}const Kr="__DOXA_PAGE_LOCALE";function Vr(){try{return typeof window<"u"&&window[Kr]||""}catch{return""}}function qr(e,t){const o=s=>{let i=zt[s];for(const l of String(e).split(".")){if(!i||typeof i!="object")return;i=i[l]}return typeof i=="string"?i:void 0},n=Vr()||Br();return o(n)??o("en")}const Hi={menu:'<line x1="3" y1="6" x2="21" y2="6"/><line x1="3" y1="12" x2="21" y2="12"/><line x1="3" y1="18" x2="21" y2="18"/>',map:'<polygon points="3 6 9 3 15 6 21 3 21 18 15 21 9 18 3 21"/><line x1="9" y1="3" x2="9" y2="18"/><line x1="15" y1="6" x2="15" y2="21"/>',globe:'<circle cx="12" cy="12" r="9"/><path d="M3 12h18"/><path d="M12 3a15 15 0 0 1 0 18a15 15 0 0 1 0-18"/>',heart:'<path d="M19 14c1.5-1.5 3-3.5 3-5.5A4.5 4.5 0 0 0 12 6a4.5 4.5 0 0 0-10 2.5C2 10.5 3.5 12.5 5 14l7 7Z"/>',prayer:'<path d="M12 4.2c-.9 1.4-1.9 2.6-2.9 3.8-1 1.2-1.6 2.6-1.6 4.2v3.3c0 1.3.7 2.4 1.8 3 .5.3 1.1-.1 1.1-.7"/><path d="M12 4.2c.9 1.4 1.9 2.6 2.9 3.8 1 1.2 1.6 2.6 1.6 4.2v3.3c0 1.3-.7 2.4-1.8 3-.5.3-1.1-.1-1.1-.7"/><path d="M12 4.2V17"/>',list:'<line x1="8" y1="6" x2="21" y2="6"/><line x1="8" y1="12" x2="21" y2="12"/><line x1="8" y1="18" x2="21" y2="18"/><circle cx="4" cy="6" r="1"/><circle cx="4" cy="12" r="1"/><circle cx="4" cy="18" r="1"/>',users:'<path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.9"/><path d="M16 3.1a4 4 0 0 1 0 7.8"/>',flag:'<path d="M4 15s1-1 4-1 5 2 8 2 4-1 4-1V4s-1 1-4 1-5-2-8-2-4 1-4 1z"/><line x1="4" y1="22" x2="4" y2="15"/>',target:'<circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5"/><circle cx="12" cy="12" r="1"/>',pin:'<path d="M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z"/><circle cx="12" cy="10" r="3"/>',monitor:'<rect x="2" y="3" width="20" height="14" rx="2"/><line x1="8" y1="21" x2="16" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/>',chart:'<line x1="18" y1="20" x2="18" y2="10"/><line x1="12" y1="20" x2="12" y2="4"/><line x1="6" y1="20" x2="6" y2="14"/>',folder:'<path d="M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>',layers:'<polygon points="12 2 2 7 12 12 22 7 12 2"/><polyline points="2 17 12 22 22 17"/><polyline points="2 12 12 17 22 12"/>',flask:'<path d="M9 3h6v5l5 11a2 2 0 0 1-2 3H6a2 2 0 0 1-2-3l5-11z"/><line x1="9" y1="3" x2="15" y2="3"/><line x1="6" y1="15" x2="18" y2="15"/>',share:'<circle cx="18" cy="5" r="3"/><circle cx="6" cy="12" r="3"/><circle cx="18" cy="19" r="3"/><line x1="8.6" y1="13.5" x2="15.4" y2="17.5"/><line x1="15.4" y1="6.5" x2="8.6" y2="10.5"/>',beaker:'<path d="M6 3h12"/><path d="M8 3v7l-3 8a2 2 0 0 0 2 3h10a2 2 0 0 0 2-3l-3-8V3"/>',chevron:'<polyline points="9 18 15 12 9 6"/>',grid:'<rect x="3" y="3" width="7" height="7"/><rect x="14" y="3" width="7" height="7"/><rect x="14" y="14" width="7" height="7"/><rect x="3" y="14" width="7" height="7"/>',tree:'<rect x="9" y="3" width="6" height="5" rx="1"/><rect x="2" y="16" width="6" height="5" rx="1"/><rect x="16" y="16" width="6" height="5" rx="1"/><path d="M12 8v4M5 16v-2h14v2"/>',dots:'<circle cx="12" cy="5" r="1.5"/><circle cx="12" cy="12" r="1.5"/><circle cx="12" cy="19" r="1.5"/>',embed:'<polyline points="9 7 4 12 9 17"/><polyline points="15 7 20 12 15 17"/>',send:'<path d="M21 3 L3 10.5 L9.5 13.5 L12.5 20 Z"/><line x1="21" y1="3" x2="9.5" y2="13.5"/>',poster:'<rect x="4" y="3" width="16" height="18" rx="2"/><circle cx="12" cy="10" r="2.5"/><path d="M8 17h8"/>',search:'<circle cx="10.5" cy="10.5" r="7.5"/><line x1="15.8" y1="15.8" x2="20.5" y2="20.5"/>',book:'<path d="M12 6.5C12 6.5 9.5 4.5 4 4.5v13C9.5 17.5 12 19.5 12 19.5"/><path d="M12 6.5C12 6.5 14.5 4.5 20 4.5v13C14.5 17.5 12 19.5 12 19.5"/>',wifi:'<path d="M3.5 9a13 13 0 0 1 17 0"/><path d="M6.8 12.4a8.5 8.5 0 0 1 10.4 0"/><path d="M10 15.7a4 4 0 0 1 4 0"/><circle cx="12" cy="19" r="1"/>'};function Di(e,t=""){const o=Hi[e]||Hi.map;return`<svg class="ic ${t}" viewBox="0 0 24 24" fill="none" stroke="currentColor"
stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">${o}</svg>`}const jt={};function Tn(e,t){return e?(jt[e]||(jt[e]=new Promise((o,n)=>{const s=document.createElement("script");s.src=e,(/^\/plugin-designs\//.test(e)||/\/index\.js(\?|$)/.test(e))&&(s.type="module"),s.onload=()=>o(),s.onerror=()=>{delete jt[e],n(new Error("failed to load "+e))},document.head.appendChild(s)})),jt[e]):Promise.resolve()}function Ui(e,t){return typeof customElements>"u"||customElements.get(e)?Promise.resolve():Promise.race([customElements.whenDefined(e),new Promise((o,n)=>setTimeout(()=>{customElements.get(e)||n(new Error("<"+e+"> never registered (bundle loaded but defined no element)"))},15e3))])}function Gr(){try{const e=typeof document<"u"&&document.currentScript&&document.currentScript.src||"";return e?e.replace(/[^/]+\/[^/]+$/,"").replace(/\/+$/,"")+"/":""}catch{return""}}const Yr=".vtl{position:absolute;top:0;right:0;bottom:0;left:0;display:grid!important;grid-template-rows:auto 1fr;height:100%;width:100%;min-height:420px;background:#f3f3f1;color:#3b463d;font-family:Public Sans,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased;--vtl-accent:#92b195;--vtl-border:#d1d4cd;--vtl-elevated:#ffffff;--vtl-accented:#d1d4cd;--vtl-muted:#6d766e;--vtl-rail:256px}.vtl.no-header{grid-template-rows:1fr}.vtl-top{flex:0 0 auto;display:flex;align-items:center;gap:10px;box-sizing:border-box;min-height:64px;padding:8px 16px;border-bottom:1px solid var(--vtl-border);background:#fff}.vtl-menu{display:none;font:16px/1 system-ui;color:#3b463d;background:#d1d4cd;border:1px solid #d1d4cd;border-radius:8px;padding:5px 10px;cursor:pointer}.vtl-fab{position:absolute;z-index:15;left:calc(12px + env(safe-area-inset-left));bottom:calc(12px + env(safe-area-inset-bottom));width:44px;height:44px;display:flex;align-items:center;justify-content:center;font:18px/1 system-ui;color:#3b463d;background:#fff;border:1px solid var(--vtl-border);border-radius:50%;box-shadow:0 2px 10px #0000002e;cursor:pointer}.vtl-fab:hover{background:#d1d4cd}.vtl-fab:focus-visible{outline:2px solid var(--vtl-accent);outline-offset:2px}.vtl-menu:hover{background:#d1d4cd}.vtl-brand{display:inline-flex;align-items:center}.vtl-brand:empty{display:none}.vtl-title{font-size:15px;font-weight:600;letter-spacing:-.01em;color:#3b463d}.vtl-meta{color:var(--vtl-muted);font-size:12px;margin-left:auto;display:inline-flex;align-items:center;gap:8px}.vtl-body{min-height:0;position:relative;display:flex}.vtl-nav{position:absolute;top:0;bottom:0;left:0;z-index:5;width:256px;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;border-right:1px solid var(--vtl-border);padding:12px 12px 20px;background:#fff;scrollbar-width:thin;scrollbar-color:#c4c8c0 transparent;contain:layout paint;transform:translate(0);transition:transform .2s cubic-bezier(.4,0,.2,1);will-change:transform}.vtl-nav::-webkit-scrollbar{width:8px;height:8px}.vtl-nav::-webkit-scrollbar-track{background:transparent}.vtl-nav::-webkit-scrollbar-thumb{background:#c4c8c0;border-radius:8px}.vtl-nav::-webkit-scrollbar-thumb:hover{background:#9aa197}.vtl-collapse{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;margin:0 0 8px;padding:7px 10px;border:1px solid var(--vtl-border);border-radius:8px;background:#d1d4cd;color:var(--vtl-muted);font:inherit;font-size:12px;cursor:pointer}.vtl-collapse:hover{background:var(--vtl-accented);color:#3b463d}.vtl-collapse:focus-visible{outline:2px solid var(--vtl-accent);outline-offset:-2px}.vtl-collapse-ic{flex:0 0 auto;display:inline-flex;transition:transform .16s ease;transform:rotate(180deg)}.vtl-collapse-ic svg{width:16px;height:16px}.vtl-collapse-tx{white-space:nowrap}.vtl-grp{margin-bottom:2px}.vtl-grp+.vtl-grp{margin-top:8px;padding-top:8px;border-top:1px solid var(--vtl-border)}.vtl-tier{width:100%;padding:8px 8px 6px;display:flex;align-items:center;gap:8px;box-sizing:border-box}.vtl-tier-btn{border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-align:left;border-radius:8px}.vtl-tier-btn:hover{background:var(--vtl-accented)}.vtl-tier-btn:focus-visible{outline:2px solid var(--vtl-accent);outline-offset:-2px}.vtl-tier-ic{flex:0 0 auto;display:inline-flex;color:var(--vtl-muted)}.vtl-tier-ic svg{width:15px;height:15px}.vtl-cap{font:700 10px/1 system-ui;letter-spacing:.4px;color:#052e16;background:var(--vtl-accent);border-radius:999px;padding:3px 7px}.vtl-tl{font-weight:600;font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:var(--vtl-muted)}.vtl-td{color:#6b6b6b;font-size:11px;margin-left:auto}.vtl-chev{margin-left:auto;display:inline-flex;color:var(--vtl-muted);transition:transform .16s ease}.vtl-chev svg{width:15px;height:15px}.vtl-chev.open{transform:rotate(90deg)}.vtl-rows{display:flex;flex-direction:column;gap:1px}.vtl-tab{display:flex;align-items:center;gap:11px;width:100%;min-height:48px;text-align:left;border:0;background:none;color:var(--vtl-muted);padding:8px 12px;cursor:pointer;border-radius:var(--vtl-radius,8px);font:inherit;margin:0;transition:background .13s ease,color .13s ease}.vtl-tab:hover{background:var(--vtl-accented);color:#3b463d}.vtl-tab:focus-visible{outline:2px solid var(--vtl-accent);outline-offset:-2px}.vtl-tab.active{background:var(--vtl-accented);color:#3b463d;font-weight:500}.vtl-tab.active .vtl-tab-ic{color:var(--vtl-accent)}.vtl-tab-ic{flex:0 0 auto;display:inline-flex;color:var(--vtl-muted)}.vtl-tab-ic svg{width:20px;height:20px}.vtl-tab-emoji{font-size:17px;line-height:1;flex:0 0 auto}.vtl-tab-fallback{display:none;flex:0 0 auto;width:20px;height:20px;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--vtl-muted);background:var(--vtl-accented);border-radius:6px}.vtl-tab.active .vtl-tab-fallback{color:var(--vtl-accent)}.vtl-tab-text{display:flex;flex-direction:column;min-width:0}.vtl-tab-label{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.vtl-tab-badge{font:600 9px/1 system-ui;letter-spacing:.3px;text-transform:uppercase;color:var(--vtl-accent);border:1px solid var(--vtl-accent);border-radius:var(--vtl-radius,8px);padding:2px 5px}.vtl-tab-sub{font-size:11px;color:#6b6b6b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vtl-tab-sub code{font-family:ui-monospace,Menlo,monospace}.vtl-tab.active .vtl-tab-sub{color:var(--vtl-muted)}.vtl-main{position:absolute;top:0;bottom:0;right:0;left:256px;min-width:0;display:flex;flex-direction:column}.vtl-content{flex:1 1 auto;position:relative;min-height:0}.vtl-host{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;--profile-min-h:0}.vtl-host-slot{position:relative;min-height:100%}.vtl-host-slot>*{min-height:0;max-height:none}.vtl-host-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;color:var(--dx-muted, #6d766e);font-size:13px;padding:20px}.vtl-host-hint.err{color:#f87171}.vtl-host-hint small{color:var(--dx-muted, #6d766e)}.vtl.rail-collapsed .vtl-nav{transform:translate(-184px)}.vtl.rail-collapsed .vtl-main{left:72px}.vtl.rail-collapsed .vtl-collapse{padding-left:184px;justify-content:flex-start}.vtl.rail-collapsed .vtl-collapse-ic{transform:rotate(0)}.vtl.rail-collapsed .vtl-collapse-tx{display:none}.vtl.rail-collapsed .vtl-tab{padding-left:188px;gap:0}.vtl.rail-collapsed .vtl-tab-text{display:none}.vtl.rail-collapsed .vtl-tab-emoji{font-size:19px}.vtl.rail-collapsed .vtl-tab-fallback{display:inline-flex}.vtl.rail-collapsed .vtl-tier{padding-left:196px}.vtl.rail-collapsed .vtl-tl,.vtl.rail-collapsed .vtl-td,.vtl.rail-collapsed .vtl-cap,.vtl.rail-collapsed .vtl-chev{display:none}.vtl.rail-collapsed .vtl-grp+.vtl-grp{margin-top:6px;padding-top:6px}@media (max-width: 760px){.vtl-top{min-height:56px}.vtl-menu{display:inline-block}.vtl-meta{display:none}.vtl-nav{z-index:20;width:256px;box-shadow:0 0 28px #0000008c;transform:translate(-100%)}.vtl.nav-open .vtl-nav{transform:translate(0);z-index:1000}.vtl-main{left:0}.vtl.rail-collapsed .vtl-nav{transform:translate(-100%)}.vtl.rail-collapsed.nav-open .vtl-nav{transform:translate(0)}.vtl.rail-collapsed .vtl-main{left:0}.vtl.rail-collapsed .vtl-collapse{padding-left:10px;justify-content:flex-start}.vtl.rail-collapsed .vtl-collapse-ic{transform:rotate(180deg)}.vtl.rail-collapsed .vtl-collapse-tx{display:inline}.vtl.rail-collapsed .vtl-tab{padding-left:10px;gap:11px}.vtl.rail-collapsed .vtl-tab-text{display:flex}.vtl.rail-collapsed .vtl-tab-fallback{display:none}.vtl.rail-collapsed .vtl-tier{padding-left:8px}.vtl.rail-collapsed .vtl-tl,.vtl.rail-collapsed .vtl-td,.vtl.rail-collapsed .vtl-cap,.vtl.rail-collapsed .vtl-chev{display:inline}}.vtl:dir(rtl) .vtl-nav{left:auto;right:0;border-right:0;border-left:1px solid var(--vtl-border)}.vtl:dir(rtl) .vtl-main{left:0;right:256px}.vtl:dir(rtl) .vtl-tab,.vtl:dir(rtl) .vtl-tier-btn{text-align:right}.vtl:dir(rtl) .vtl-meta,.vtl:dir(rtl) .vtl-td,.vtl:dir(rtl) .vtl-chev{margin-left:0;margin-right:auto}.vtl:dir(rtl) .vtl-chev:not(.open){transform:scaleX(-1)}.vtl:dir(rtl) .vtl-collapse-ic svg{transform:scaleX(-1)}.vtl:dir(rtl) .vtl-fab{left:auto;right:calc(12px + env(safe-area-inset-right))}.vtl.rail-collapsed:dir(rtl) .vtl-nav{transform:translate(184px)}.vtl.rail-collapsed:dir(rtl) .vtl-main{left:0;right:72px}.vtl.rail-collapsed:dir(rtl) .vtl-collapse{padding-left:10px;padding-right:184px}.vtl.rail-collapsed:dir(rtl) .vtl-tab{padding-left:12px;padding-right:188px}.vtl.rail-collapsed:dir(rtl) .vtl-tier{padding-left:8px;padding-right:196px}@media (max-width: 760px){.vtl:dir(rtl) .vtl-nav{transform:translate(100%)}.vtl.nav-open:dir(rtl) .vtl-nav{transform:translate(0)}.vtl:dir(rtl) .vtl-main,.vtl.rail-collapsed:dir(rtl) .vtl-main{left:0;right:0}.vtl.rail-collapsed:dir(rtl) .vtl-nav{transform:translate(100%)}.vtl.rail-collapsed.nav-open:dir(rtl) .vtl-nav{transform:translate(0)}.vtl.rail-collapsed:dir(rtl) .vtl-collapse{padding-left:10px;padding-right:10px}.vtl.rail-collapsed:dir(rtl) .vtl-tab{padding-left:12px;padding-right:10px}.vtl.rail-collapsed:dir(rtl) .vtl-tier{padding-left:8px;padding-right:8px}}",An=(e,t)=>{const o=e.__vccOpts||e;for(const[n,s]of t)o[n]=s;return o},Jr=(e,t)=>qr(e)||t,Xr=e=>Tn(e);function Zr(e,t=5e3){return typeof customElements>"u"||customElements.get(e)?Promise.resolve():customElements.whenDefined?Promise.race([customElements.whenDefined(e),new Promise((o,n)=>setTimeout(()=>n(new Error("timeout waiting for <"+e+">")),t))]):Promise.resolve()}const Qr=`
.vtl { position:absolute; inset:0; display:grid !important; grid-template-rows:auto 1fr; height:100%; width:100%; min-height:420px; background:#f3f3f1; color:#3b463d; font-family:'Public Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif; -webkit-font-smoothing:antialiased; --vtl-accent:#92b195; --vtl-border:#d1d4cd; --vtl-elevated:#ffffff; --vtl-accented:#d1d4cd; --vtl-muted:#6d766e; --vtl-rail:256px; }
.vtl.no-header { grid-template-rows:1fr; }
.vtl-top { flex:0 0 auto; display:flex; align-items:center; gap:10px; box-sizing:border-box; min-height:64px; padding:8px 16px; border-bottom:1px solid var(--vtl-border); background:#ffffff; }
.vtl-menu { display:none; font:16px/1 system-ui; color:#3b463d; background:#d1d4cd; border:1px solid #d1d4cd; border-radius:8px; padding:5px 10px; cursor:pointer; }
.vtl-fab { position:absolute; z-index:15; left:calc(12px + env(safe-area-inset-left)); bottom:calc(12px + env(safe-area-inset-bottom)); width:44px; height:44px; display:flex; align-items:center; justify-content:center; font:18px/1 system-ui; color:#3b463d; background:#ffffff; border:1px solid var(--vtl-border); border-radius:50%; box-shadow:0 2px 10px rgba(0,0,0,.18); cursor:pointer; }
.vtl-fab:hover { background:#d1d4cd; }
.vtl-fab:focus-visible { outline:2px solid var(--vtl-accent); outline-offset:2px; }
.vtl-menu:hover { background:#d1d4cd; }
.vtl-brand { display:inline-flex; align-items:center; }
.vtl-brand:empty { display:none; }
.vtl-title { font-size:15px; font-weight:600; letter-spacing:-0.01em; color:#3b463d; }
.vtl-meta { color:var(--vtl-muted); font-size:12px; margin-left:auto; display:inline-flex; align-items:center; gap:8px; }
.vtl-body { min-height:0; position:relative; display:flex; }
.vtl-nav { position:absolute; top:0; bottom:0; left:0; z-index:5; width:256px; box-sizing:border-box; overflow-y:auto; overflow-x:hidden; border-right:1px solid var(--vtl-border); padding:12px 12px 20px; background:#ffffff; scrollbar-width:thin; scrollbar-color:#c4c8c0 transparent; contain:layout paint; transform:translateX(0); transition:transform .2s cubic-bezier(.4,0,.2,1); will-change:transform; }
.vtl-nav::-webkit-scrollbar { width:8px; height:8px; }
.vtl-nav::-webkit-scrollbar-track { background:transparent; }
.vtl-nav::-webkit-scrollbar-thumb { background:#c4c8c0; border-radius:8px; }
.vtl-nav::-webkit-scrollbar-thumb:hover { background:#9aa197; }
.vtl-collapse { display:flex; align-items:center; gap:8px; width:100%; box-sizing:border-box; margin:0 0 8px; padding:7px 10px; border:1px solid var(--vtl-border); border-radius:8px; background:#d1d4cd; color:var(--vtl-muted); font:inherit; font-size:12px; cursor:pointer; }
.vtl-collapse:hover { background:var(--vtl-accented); color:#3b463d; }
.vtl-collapse:focus-visible { outline:2px solid var(--vtl-accent); outline-offset:-2px; }
.vtl-collapse-ic { flex:0 0 auto; display:inline-flex; transition:transform .16s ease; transform:rotate(180deg); }
.vtl-collapse-ic svg { width:16px; height:16px; }
.vtl-collapse-tx { white-space:nowrap; }
.vtl-grp { margin-bottom:2px; }
.vtl-grp + .vtl-grp { margin-top:8px; padding-top:8px; border-top:1px solid var(--vtl-border); }
.vtl-tier { width:100%; padding:8px 8px 6px; display:flex; align-items:center; gap:8px; box-sizing:border-box; }
.vtl-tier-btn { border:0; background:none; color:inherit; font:inherit; cursor:pointer; text-align:left; border-radius:8px; }
.vtl-tier-btn:hover { background:var(--vtl-accented); }
.vtl-tier-btn:focus-visible { outline:2px solid var(--vtl-accent); outline-offset:-2px; }
.vtl-tier-ic { flex:0 0 auto; display:inline-flex; color:var(--vtl-muted); }
.vtl-tier-ic svg { width:15px; height:15px; }
.vtl-cap { font:700 10px/1 system-ui; letter-spacing:.4px; color:#052e16; background:var(--vtl-accent); border-radius:999px; padding:3px 7px; }
.vtl-tl { font-weight:600; font-size:11px; letter-spacing:.03em; text-transform:uppercase; color:var(--vtl-muted); }
.vtl-td { color:#6b6b6b; font-size:11px; margin-left:auto; }
.vtl-chev { margin-left:auto; display:inline-flex; color:var(--vtl-muted); transition:transform .16s ease; }
.vtl-chev svg { width:15px; height:15px; }
.vtl-chev.open { transform:rotate(90deg); }
.vtl-rows { display:flex; flex-direction:column; gap:1px; }
.vtl-tab { display:flex; align-items:center; gap:11px; width:100%; min-height:48px; text-align:left; border:0; background:none; color:var(--vtl-muted); padding:8px 12px; cursor:pointer; border-radius:var(--vtl-radius,8px); font:inherit; margin:0; transition:background .13s ease,color .13s ease; }
.vtl-tab:hover { background:var(--vtl-accented); color:#3b463d; }
.vtl-tab:focus-visible { outline:2px solid var(--vtl-accent); outline-offset:-2px; }
.vtl-tab.active { background:var(--vtl-accented); color:#3b463d; font-weight:500; }
.vtl-tab.active .vtl-tab-ic { color:var(--vtl-accent); }
.vtl-tab-ic { flex:0 0 auto; display:inline-flex; color:var(--vtl-muted); }
.vtl-tab-ic svg { width:20px; height:20px; }
.vtl-tab-emoji { font-size:17px; line-height:1; flex:0 0 auto; }
.vtl-tab-fallback { display:none; flex:0 0 auto; width:20px; height:20px; align-items:center; justify-content:center; font-size:12px; font-weight:600; color:var(--vtl-muted); background:var(--vtl-accented); border-radius:6px; }
.vtl-tab.active .vtl-tab-fallback { color:var(--vtl-accent); }
.vtl-tab-text { display:flex; flex-direction:column; min-width:0; }
.vtl-tab-label { font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:flex; align-items:center; gap:6px; }
.vtl-tab-badge { font:600 9px/1 system-ui; letter-spacing:.3px; text-transform:uppercase; color:var(--vtl-accent); border:1px solid var(--vtl-accent); border-radius:var(--vtl-radius,8px); padding:2px 5px; }
.vtl-tab-sub { font-size:11px; color:#6b6b6b; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.vtl-tab-sub code { font-family:ui-monospace,Menlo,monospace; }
.vtl-tab.active .vtl-tab-sub { color:var(--vtl-muted); }
.vtl-main { position:absolute; top:0; bottom:0; right:0; left:256px; min-width:0; display:flex; flex-direction:column; }
.vtl-content { flex:1 1 auto; position:relative; min-height:0; }
.vtl-host { position:absolute; inset:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; --profile-min-h:0; }
.vtl-host-slot { position:relative; min-height:100%; }
.vtl-host-slot > * { min-height:0; max-height:none; }
.vtl-host-hint { position:absolute; inset:0; display:grid; place-items:center; text-align:center; color:var(--dx-muted, #6d766e); font-size:13px; padding:20px; }
.vtl-host-hint.err { color:#f87171; }
.vtl-host-hint small { color:var(--dx-muted, #6d766e); }
.vtl.rail-collapsed .vtl-nav { transform:translateX(-184px); }
.vtl.rail-collapsed .vtl-main { left:72px; }
.vtl.rail-collapsed .vtl-collapse { padding-left:184px; justify-content:flex-start; }
.vtl.rail-collapsed .vtl-collapse-ic { transform:rotate(0deg); }
.vtl.rail-collapsed .vtl-collapse-tx { display:none; }
.vtl.rail-collapsed .vtl-tab { padding-left:188px; gap:0; }
.vtl.rail-collapsed .vtl-tab-text { display:none; }
.vtl.rail-collapsed .vtl-tab-emoji { font-size:19px; }
.vtl.rail-collapsed .vtl-tab-fallback { display:inline-flex; }
.vtl.rail-collapsed .vtl-tier { padding-left:196px; }
.vtl.rail-collapsed .vtl-tl, .vtl.rail-collapsed .vtl-td, .vtl.rail-collapsed .vtl-cap, .vtl.rail-collapsed .vtl-chev { display:none; }
.vtl.rail-collapsed .vtl-grp + .vtl-grp { margin-top:6px; padding-top:6px; }
@media (max-width: 760px) {
.vtl-top { min-height:56px; }
.vtl-menu { display:inline-block; }
.vtl-meta { display:none; }
.vtl-nav { z-index:20; width:256px; box-shadow:0 0 28px rgba(0,0,0,.55); transform:translateX(-100%); }
.vtl.nav-open .vtl-nav { transform:translateX(0); z-index:1000; }
.vtl-main { left:0; }
.vtl.rail-collapsed .vtl-nav { transform:translateX(-100%); }
.vtl.rail-collapsed.nav-open .vtl-nav { transform:translateX(0); }
.vtl.rail-collapsed .vtl-main { left:0; }
.vtl.rail-collapsed .vtl-collapse { padding-left:10px; justify-content:flex-start; }
.vtl.rail-collapsed .vtl-collapse-ic { transform:rotate(180deg); }
.vtl.rail-collapsed .vtl-collapse-tx { display:inline; }
.vtl.rail-collapsed .vtl-tab { padding-left:10px; gap:11px; }
.vtl.rail-collapsed .vtl-tab-text { display:flex; }
.vtl.rail-collapsed .vtl-tab-fallback { display:none; }
.vtl.rail-collapsed .vtl-tier { padding-left:8px; }
.vtl.rail-collapsed .vtl-tl, .vtl.rail-collapsed .vtl-td, .vtl.rail-collapsed .vtl-cap, .vtl.rail-collapsed .vtl-chev { display:inline; }
}
.vtl:dir(rtl) .vtl-nav { left:auto; right:0; border-right:0; border-left:1px solid var(--vtl-border); }
.vtl:dir(rtl) .vtl-main { left:0; right:256px; }
.vtl:dir(rtl) .vtl-tab, .vtl:dir(rtl) .vtl-tier-btn { text-align:right; }
.vtl:dir(rtl) .vtl-meta, .vtl:dir(rtl) .vtl-td, .vtl:dir(rtl) .vtl-chev { margin-left:0; margin-right:auto; }
.vtl:dir(rtl) .vtl-chev:not(.open) { transform:scaleX(-1); }
.vtl:dir(rtl) .vtl-collapse-ic svg { transform:scaleX(-1); }
.vtl:dir(rtl) .vtl-fab { left:auto; right:calc(12px + env(safe-area-inset-right)); }
.vtl.rail-collapsed:dir(rtl) .vtl-nav { transform:translateX(184px); }
.vtl.rail-collapsed:dir(rtl) .vtl-main { left:0; right:72px; }
.vtl.rail-collapsed:dir(rtl) .vtl-collapse { padding-left:10px; padding-right:184px; }
.vtl.rail-collapsed:dir(rtl) .vtl-tab { padding-left:12px; padding-right:188px; }
.vtl.rail-collapsed:dir(rtl) .vtl-tier { padding-left:8px; padding-right:196px; }
@media (max-width: 760px) {
.vtl:dir(rtl) .vtl-nav { transform:translateX(100%); }
.vtl.nav-open:dir(rtl) .vtl-nav { transform:translateX(0); }
.vtl:dir(rtl) .vtl-main, .vtl.rail-collapsed:dir(rtl) .vtl-main { left:0; right:0; }
.vtl.rail-collapsed:dir(rtl) .vtl-nav { transform:translateX(100%); }
.vtl.rail-collapsed.nav-open:dir(rtl) .vtl-nav { transform:translateX(0); }
.vtl.rail-collapsed:dir(rtl) .vtl-collapse { padding-left:10px; padding-right:10px; }
.vtl.rail-collapsed:dir(rtl) .vtl-tab { padding-left:12px; padding-right:10px; }
.vtl.rail-collapsed:dir(rtl) .vtl-tier { padding-left:8px; padding-right:8px; }
}
`,ec=$o({name:"VerticalTabsLayout",props:{active:{type:String,default:""},title:{type:String,default:""},items:{type:Array,default:()=>[]},groups:{type:Array,default:()=>[]},navLabel:{type:String,default:"Sections"},labels:{type:Object,default:()=>({})},initialNavOpen:{type:Boolean,default:!0},header:{type:Boolean,default:!0},initialRailCollapsed:{type:Boolean,default:!1}},emits:["update:active"],setup(){return Mn(Qr,"vertical-tabs-layout"),{T:Jr}},data(){return{navOpen:this.initialNavOpen,railCollapsed:this.initialRailCollapsed,_tabEls:{},folderOverride:{},narrow:!1,_mql:null,_onMedia:null,activatedKeys:{},hostState:{},hostError:{},_hostSlots:{},_hostMounted:{}}},computed:{railShown(){return this.narrow?this.navOpen:!0},allRows(){if(this.groups&&this.groups.length){const e=[];for(const t of this.groups)for(const o of t.rows||[])e.push(o);return e}return this.items},orderedKeys(){return this.allRows.map(e=>e.key)},elementRows(){return this.allRows.filter(e=>e&&e.element)},mountedElementRows(){return this.elementRows.filter(e=>this.activatedKeys[e.key])}},watch:{active:{immediate:!0,handler(e){this.activateElement(e)}}},mounted(){try{window.matchMedia&&(this._mql=window.matchMedia("(max-width: 760px)"),this.narrow=this._mql.matches,this.reconcileForWidth(),this._onMedia=e=>{this.narrow=e.matches,this.reconcileForWidth()},this._mql.addEventListener?this._mql.addEventListener("change",this._onMedia):this._mql.addListener&&this._mql.addListener(this._onMedia))}catch{}this.$nextTick(()=>this.activateElement(this.active))},beforeUnmount(){try{this._mql&&this._onMedia&&(this._mql.removeEventListener?this._mql.removeEventListener("change",this._onMedia):this._mql.removeListener&&this._mql.removeListener(this._onMedia))}catch{}this._mql=null,this._onMedia=null},methods:{registerTab(e,t){t&&(this._tabEls[e]=t)},isNarrow(){return this.narrow},reconcileForWidth(){this.narrow?(this.navOpen=!1,this.railCollapsed=!1):this.navOpen=!0},label(e){const t={toggleList:"Toggle list",openViews:"Open the list of views",expandList:"Expand list",collapseList:"Collapse list",collapse:"Collapse"};return this.labels&&this.labels[e]||t[e]},expandRail(){!this.narrow&&this.railCollapsed&&(this.railCollapsed=!1)},toggleRail(){this.narrow?this.navOpen=!this.navOpen:this.railCollapsed=!this.railCollapsed},setHostSlot(e,t){t&&(this._hostSlots[e]=t,this.$nextTick(()=>this.mountHostElement(e)))},activateElement(e){!e||!this.elementRows.find(o=>o.key===e)||(this.activatedKeys[e]||(this.activatedKeys={...this.activatedKeys,[e]:!0},this.hostState={...this.hostState,[e]:"loading"}),this.$nextTick(()=>this.mountHostElement(e)))},mountHostElement(e){if(this._hostMounted[e])return;const t=this.elementRows.find(n=>n.key===e),o=this._hostSlots[e];!t||!o||(this._hostMounted[e]=!0,this.hostState={...this.hostState,[e]:"loading"},Xr(t.src).then(()=>Zr(t.element)).then(()=>{o.innerHTML="";const n=document.createElement(t.element),s=t.attrs||{};for(const i in s){const l=s[i],a=l!=null&&typeof l=="object"?JSON.stringify(l):String(l);try{n[i]=l}catch{}try{n.setAttribute(i,a)}catch{}}n.style.cssText="display:block;position:absolute;inset:0;width:100%;height:100%;",o.appendChild(n),this.hostState={...this.hostState,[e]:"ready"}}).catch(n=>{this._hostMounted[e]=!1,this.hostState={...this.hostState,[e]:"error"},this.hostError={...this.hostError,[e]:n&&n.message||String(n)}}))},iconSvg(e){return e?Di(e):""},initial(e){const t=(e||"").trim();return t?t.charAt(0).toUpperCase():"•"},isFolderClosed(e){const t=this.folderOverride[e.key];return t!=null?!t:e.open!==!0},toggleFolder(e){const t=this.folderOverride[e],o=(this.groups||[]).find(s=>s.key===e),n=t??(o&&o.open===!0);this.folderOverride={...this.folderOverride,[e]:!n}},pick(e){this.$emit("update:active",e),this.narrow&&(this.navOpen=!1)},onKey(e){const t=this.orderedKeys;if(!t.length)return;const o=t.indexOf(this.active);let n=-1;if(e.key==="ArrowDown"||e.key==="ArrowRight")n=(o+1)%t.length;else if(e.key==="ArrowUp"||e.key==="ArrowLeft")n=(o-1+t.length)%t.length;else if(e.key==="Home")n=0;else if(e.key==="End")n=t.length-1;else return;e.preventDefault();const s=t[n];this.pick(s),this.$nextTick(()=>{const i=this._tabEls[s];i&&i.focus&&i.focus()})}}}),tc={key:0,class:"vtl-top"},oc=["aria-expanded","aria-label"],nc={class:"vtl-brand"},sc={class:"vtl-title"},ic={class:"vtl-meta"},lc=["aria-expanded","aria-label"],ac={class:"vtl-body"},rc=["aria-label","aria-hidden","role","aria-orientation"],cc=["aria-expanded","aria-label"],dc=["innerHTML"],pc={class:"vtl-collapse-tx"},uc=["aria-expanded","onClick"],fc={key:0,class:"vtl-cap"},gc={class:"vtl-tl"},hc={key:1,class:"vtl-td"},$c=["innerHTML"],bc={key:1,class:"vtl-tier"},mc={key:0,class:"vtl-cap"},_c={class:"vtl-tl"},vc={key:1,class:"vtl-td"},xc={class:"vtl-rows"},kc=["aria-selected","tabindex","onClick"],yc=["innerHTML"],wc={key:1,class:"vtl-tab-emoji","aria-hidden":"true"},Sc={key:2,class:"vtl-tab-fallback","aria-hidden":"true"},Lc={class:"vtl-tab-text"},Nc={class:"vtl-tab-label"},Pc={key:0,class:"vtl-tab-badge"},Cc={key:0,class:"vtl-tab-sub"},Ec=["innerHTML"],Mc=["aria-selected","tabindex","onClick"],Tc=["innerHTML"],Ac={key:1,class:"vtl-tab-emoji","aria-hidden":"true"},Oc={key:2,class:"vtl-tab-fallback","aria-hidden":"true"},Fc={class:"vtl-tab-text"},Ic={class:"vtl-tab-label"},Hc={key:0,class:"vtl-tab-sub"},Dc={class:"vtl-main"},Uc={class:"vtl-content"},Rc=["hidden"],Wc={key:0,class:"vtl-host-hint"},zc={key:1,class:"vtl-host-hint err"};function jc(e,t,o,n,s,i){return L(),N("div",{class:ge(["vtl",{"nav-open":e.navOpen,"rail-collapsed":e.railCollapsed,"no-header":!e.header}])},[e.header?(L(),N("header",tc,[_("button",{class:"vtl-menu",type:"button","aria-expanded":String(e.navOpen),onClick:t[0]||(t[0]=l=>e.navOpen=!e.navOpen),"aria-label":e.label("toggleList")},"☰",8,oc),_("span",nc,[Tt(e.$slots,"brand")]),_("b",sc,P(e.title),1),_("span",ic,[Tt(e.$slots,"meta")])])):Y("",!0),e.narrow&&!e.header&&!e.navOpen?(L(),N("button",{key:1,class:"vtl-fab",type:"button","aria-expanded":String(e.navOpen),onClick:t[1]||(t[1]=l=>e.navOpen=!0),"aria-label":e.label("openViews")},"☰",8,lc)):Y("",!0),_("div",ac,[_("nav",{class:"vtl-nav","aria-label":e.navLabel,"aria-hidden":String(!e.railShown),role:e.$slots.rail?null:"tablist","aria-orientation":e.$slots.rail?null:"vertical"},[_("button",{type:"button",class:"vtl-collapse","aria-expanded":String(!e.railCollapsed),"aria-label":e.railCollapsed?e.label("expandList"):e.label("collapseList"),onClick:t[2]||(t[2]=(...l)=>e.toggleRail&&e.toggleRail(...l))},[_("span",{class:"vtl-collapse-ic","aria-hidden":"true",innerHTML:e.iconSvg("chevron")},null,8,dc),_("span",pc,P(e.label("collapse")),1)],8,cc),e.$slots.rail?Tt(e.$slots,"rail",{collapsed:e.railCollapsed&&!e.narrow,expand:e.expandRail,pick:e.pick},void 0,void 0,0):e.groups&&e.groups.length?(L(!0),N(G,{key:1},Pe(e.groups,l=>(L(),N("div",{class:"vtl-grp",key:l.key},[l.folder?(L(),N("button",{key:0,type:"button",class:"vtl-tier vtl-tier-btn","aria-expanded":String(!e.isFolderClosed(l)),onClick:a=>e.toggleFolder(l.key)},[l.badge?(L(),N("span",fc,P(l.badge),1)):Y("",!0),_("span",gc,P(l.label),1),l.count!=null?(L(),N("span",hc,P(l.count),1)):Y("",!0),_("span",{class:ge(["vtl-chev",{open:!e.isFolderClosed(l)}]),"aria-hidden":"true",innerHTML:e.iconSvg("chevron")},null,10,$c)],8,uc)):(L(),N("div",bc,[l.badge?(L(),N("span",mc,P(l.badge),1)):Y("",!0),_("span",_c,P(l.label),1),l.count!=null?(L(),N("span",vc,P(l.count),1)):Y("",!0)])),ft(_("div",xc,[(L(!0),N(G,null,Pe(l.rows,a=>(L(),N("button",{key:a.key,type:"button",role:"tab",class:ge(["vtl-tab",{active:a.key===e.active}]),"aria-selected":String(a.key===e.active),tabindex:a.key===e.active?0:-1,ref_for:!0,ref:r=>e.registerTab(a.key,r),onClick:r=>e.pick(a.key),onKeydown:t[3]||(t[3]=r=>e.onKey(r))},[a.icon?(L(),N("span",{key:0,class:"vtl-tab-ic","aria-hidden":"true",innerHTML:e.iconSvg(a.icon)},null,8,yc)):a.emoji?(L(),N("span",wc,P(a.emoji),1)):(L(),N("span",Sc,P(e.initial(a.label)),1)),_("span",Lc,[_("span",Nc,[Ke(P(a.label),1),a.badge?(L(),N("span",Pc,P(a.badge),1)):Y("",!0)]),a.sub?(L(),N("span",Cc,[_("span",{innerHTML:a.sub},null,8,Ec)])):Y("",!0)])],42,kc))),128))],512),[[Sn,!l.folder||!e.isFolderClosed(l)]])]))),128)):(L(!0),N(G,{key:2},Pe(e.items,l=>(L(),N("button",{key:l.key,type:"button",role:"tab",class:ge(["vtl-tab",{active:l.key===e.active}]),"aria-selected":String(l.key===e.active),tabindex:l.key===e.active?0:-1,ref_for:!0,ref:a=>e.registerTab(l.key,a),onClick:a=>e.pick(l.key),onKeydown:t[4]||(t[4]=a=>e.onKey(a))},[l.icon?(L(),N("span",{key:0,class:"vtl-tab-ic","aria-hidden":"true",innerHTML:e.iconSvg(l.icon)},null,8,Tc)):l.emoji?(L(),N("span",Ac,P(l.emoji),1)):(L(),N("span",Oc,P(e.initial(l.label)),1)),_("span",Fc,[_("span",Ic,P(l.label),1),l.sub?(L(),N("span",Hc,P(l.sub),1)):Y("",!0)])],42,Mc))),128))],8,rc),_("main",Dc,[e.header?Tt(e.$slots,"toolbar",{},void 0,void 0,0):Y("",!0),_("div",Uc,[(L(!0),N(G,null,Pe(e.mountedElementRows,l=>ft((L(),N("section",{key:l.key,class:"vtl-host",hidden:l.key!==e.active},[_("div",{class:"vtl-host-slot",ref_for:!0,ref:a=>e.setHostSlot(l.key,a)},null,512),e.hostState[l.key]==="loading"?(L(),N("div",Wc,P(e.T("messages.loadingNamed","Loading {name}…").replace("{name}",l.label)),1)):e.hostState[l.key]==="error"?(L(),N("div",zc,[Ke(P(e.T("messages.couldNotLoadNamed","Could not load {name}.").replace("{name}",l.label)),1),t[5]||(t[5]=_("br",null,null,-1)),_("small",null,P(e.hostError[l.key]),1)])):Y("",!0)],8,Rc)),[[Sn,l.key===e.active]])),128)),Tt(e.$slots,"default")])])])],2)}const Bc=An(ec,[["render",jc],["styles",[Yr]]]),Kc='.st{display:flex;flex-direction:column;margin:0 -12px}.st-bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fff}.st-find{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:6px;height:30px;padding:0 8px;border:1px solid #d1d4cd;border-radius:8px;background:#f3f3f1;color:#6d766e}.st-find:focus-within{border-color:#92b195;background:#fff}.st-find-ic{display:inline-flex}.st-find-ic svg{width:14px;height:14px}.st-find-in{flex:1 1 auto;min-width:0;border:0;outline:0;background:none;font:inherit;font-size:13px;color:#3b463d}.st-tool{flex:0 0 auto;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:8px;background:none;color:#6d766e;cursor:pointer}.st-tool:hover{background:#f3f3f1;color:#3b463d}.st-tool:focus-visible{outline:2px solid #92b195;outline-offset:-2px}.st-tool svg{width:16px;height:16px}.st-tree{display:flex;flex-direction:column;padding:0 0 8px;outline:0}.st-row{position:relative;display:flex;align-items:center;gap:6px;height:28px;box-sizing:border-box;padding-block:0;padding-inline:calc(8px + var(--st-depth) * 14px) 10px;font-size:13px;color:#3b463d;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;outline:0}.st-row:hover{background:#f3f3f1}.st-row:focus-visible{box-shadow:inset 0 0 0 1px #92b195}.st-row.active{background:#92b1953d}.st-row.active:after{content:"";position:absolute;inset-inline-start:0;top:4px;bottom:4px;width:3px;border-start-end-radius:3px;border-end-end-radius:3px;background:#92b195}.st-row.alias.active{background:#92b1951f}.st-sec{position:sticky;top:46px;z-index:2;height:30px;margin-top:6px;background:#fff;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#6d766e;border-top:1px solid #eceee9}.st-sec:first-child{margin-top:0;border-top:0}.st-sec:hover{background:#fff;color:#3b463d}.st-cap{flex:0 0 auto;font:700 10px/1 system-ui,sans-serif;letter-spacing:.3px;padding:3px 6px;border-radius:999px;background:#92b195;color:#1d2a1f}.st-sec-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.st-twisty,.st-twisty-sp{flex:0 0 16px;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:#6d766e}.st-twisty svg{width:14px;height:14px;transition:transform .12s ease}.st-row[aria-expanded=true]>.st-twisty svg{transform:rotate(90deg)}.st:dir(rtl) .st-twisty svg{transform:scaleX(-1)}.st:dir(rtl) .st-row[aria-expanded=true]>.st-twisty svg{transform:rotate(90deg)}.st-ic{flex:0 0 16px;display:inline-flex;color:#6d766e}.st-ic svg{width:16px;height:16px}.st-row.active .st-ic{color:#5f8a63}.st-label{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.st-desc{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;font:11px/1 ui-monospace,Menlo,monospace;color:#8a928b}.st-part{flex:0 0 auto;font:600 9px/1 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.3px;padding:2px 4px;border:1px solid #92b195;border-radius:4px;color:#5f8a63}.st-count{flex:0 0 auto;margin-inline-start:auto;min-width:18px;text-align:right;font-size:11px;font-weight:500;letter-spacing:0;color:#6d766e}.st-guide{position:absolute;top:0;bottom:0;inset-inline-start:calc(15px + var(--st-g) * 14px);border-inline-start:1px solid #dfe2db;pointer-events:none}.st-row:hover>.st-guide{border-inline-start-color:#c4c8c0}.st-empty{margin:12px;font-size:13px;color:#6d766e}.st-activity{display:flex;flex-direction:column;gap:4px}.st-act{position:relative;display:flex;align-items:center;justify-content:center;width:48px;height:44px;margin-inline-start:172px;padding:0;border:0;border-radius:10px;background:none;color:#6d766e;cursor:pointer}.st-act:hover,.st-act.active{background:#f3f3f1;color:#3b463d}.st-act:focus-visible{outline:2px solid #92b195;outline-offset:-2px}.st-act-ic{display:inline-flex}.st-act-ic svg{width:20px;height:20px}.st-act-n{position:absolute;right:6px;bottom:5px;font:700 9px/1 system-ui,sans-serif;color:#5f8a63}',Vc='.st { display:flex; flex-direction:column; margin:0 -12px; }.st-bar { position:sticky; top:0; z-index:3; display:flex; align-items:center; gap:6px; padding:8px 12px 8px; background:#ffffff; }.st-find { flex:1 1 auto; min-width:0; display:flex; align-items:center; gap:6px; height:30px; padding:0 8px; border:1px solid #d1d4cd; border-radius:8px; background:#f3f3f1; color:#6d766e; }.st-find:focus-within { border-color:#92b195; background:#ffffff; }.st-find-ic { display:inline-flex; } .st-find-ic svg { width:14px; height:14px; }.st-find-in { flex:1 1 auto; min-width:0; border:0; outline:0; background:none; font:inherit; font-size:13px; color:#3b463d; }.st-tool { flex:0 0 auto; width:30px; height:30px; display:inline-flex; align-items:center; justify-content:center; padding:0; border:0; border-radius:8px; background:none; color:#6d766e; cursor:pointer; }.st-tool:hover { background:#f3f3f1; color:#3b463d; } .st-tool:focus-visible { outline:2px solid #92b195; outline-offset:-2px; }.st-tool svg { width:16px; height:16px; }.st-tree { display:flex; flex-direction:column; padding:0 0 8px; outline:0; }.st-row { position:relative; display:flex; align-items:center; gap:6px; height:28px; box-sizing:border-box; padding-block:0; padding-inline:calc(8px + var(--st-depth) * 14px) 10px; font-size:13px; color:#3b463d; cursor:pointer; white-space:nowrap; user-select:none; outline:0; }.st-row:hover { background:#f3f3f1; }.st-row:focus-visible { box-shadow:inset 0 0 0 1px #92b195; }.st-row.active { background:rgba(146,177,149,.24); }.st-row.active::after { content:""; position:absolute; inset-inline-start:0; top:4px; bottom:4px; width:3px; border-start-end-radius:3px; border-end-end-radius:3px; background:#92b195; }.st-row.alias.active { background:rgba(146,177,149,.12); }.st-sec { position:sticky; top:46px; z-index:2; height:30px; margin-top:6px; background:#ffffff; font-size:11px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:#6d766e; border-top:1px solid #eceee9; }.st-sec:first-child { margin-top:0; border-top:0; }.st-sec:hover { background:#ffffff; color:#3b463d; }.st-cap { flex:0 0 auto; font:700 10px/1 system-ui,sans-serif; letter-spacing:.3px; padding:3px 6px; border-radius:999px; background:#92b195; color:#1d2a1f; }.st-sec-label { flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; }.st-twisty, .st-twisty-sp { flex:0 0 16px; width:16px; height:16px; display:inline-flex; align-items:center; justify-content:center; color:#6d766e; }.st-twisty svg { width:14px; height:14px; transition:transform .12s ease; }.st-row[aria-expanded="true"] > .st-twisty svg { transform:rotate(90deg); }.st:dir(rtl) .st-twisty svg { transform:scaleX(-1); } .st:dir(rtl) .st-row[aria-expanded="true"] > .st-twisty svg { transform:rotate(90deg); }.st-ic { flex:0 0 16px; display:inline-flex; color:#6d766e; } .st-ic svg { width:16px; height:16px; }.st-row.active .st-ic { color:#5f8a63; }.st-label { flex:0 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; }.st-desc { flex:1 1 0; min-width:0; overflow:hidden; text-overflow:ellipsis; font:11px/1 ui-monospace,Menlo,monospace; color:#8a928b; }.st-part { flex:0 0 auto; font:600 9px/1 system-ui,sans-serif; text-transform:uppercase; letter-spacing:.3px; padding:2px 4px; border:1px solid #92b195; border-radius:4px; color:#5f8a63; }.st-count { flex:0 0 auto; margin-inline-start:auto; min-width:18px; text-align:right; font-size:11px; font-weight:500; letter-spacing:0; color:#6d766e; }.st-guide { position:absolute; top:0; bottom:0; inset-inline-start:calc(15px + var(--st-g) * 14px); border-inline-start:1px solid #dfe2db; pointer-events:none; }.st-row:hover > .st-guide { border-inline-start-color:#c4c8c0; }.st-empty { margin:12px; font-size:13px; color:#6d766e; }.st-activity { display:flex; flex-direction:column; gap:4px; }.st-act { position:relative; display:flex; align-items:center; justify-content:center; width:48px; height:44px; margin-inline-start:172px; padding:0; border:0; border-radius:10px; background:none; color:#6d766e; cursor:pointer; }.st-act:hover, .st-act.active { background:#f3f3f1; color:#3b463d; }.st-act:focus-visible { outline:2px solid #92b195; outline-offset:-2px; }.st-act-ic { display:inline-flex; } .st-act-ic svg { width:20px; height:20px; }.st-act-n { position:absolute; right:6px; bottom:5px; font:700 9px/1 system-ui,sans-serif; color:#5f8a63; }',qc='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="16" height="16" rx="3"/><line x1="8.5" y1="12" x2="15.5" y2="12"/></svg>',Gc={filterPlaceholder:"Filter plugins",collapseAll:"Collapse all",noMatch:"No plugin matches “{query}”.",treeLabel:"Plugins by capability",openSection:"Open {cap}, {label}",part:"part"},Yc='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 6 15 12 9 18"/></svg>',On=e=>e.canonical!==void 0?!!e.canonical:e.depth===0,Jc=e=>e.canonical!==void 0?!e.canonical&&!e.folder:e.depth>0,Xc=$o({name:"StudioTree",props:{sections:{type:Array,default:()=>[]},active:{type:String,default:""},collapsed:{type:Boolean,default:!1},pick:{type:Function,default:null},expand:{type:Function,default:null},strings:{type:Object,default:()=>({})}},emits:["select"],setup(){Mn(Vc,"studio-tree")},data(){const e=this.readState();return{query:"",focusId:"",secClosed:e.sec||{},nodeOpen:e.node||{},chev:Yc,collapseAllSvg:qc}},computed:{byId(){const e=new Map;for(const t of this.sections)for(const o of t.nodes)e.set(o.id,o);return e},q(){return this.query.trim().toLowerCase()},kept(){if(!this.q)return null;const e=new Set;for(const t of this.sections)for(const o of t.nodes){if(!(o.label.toLowerCase().includes(this.q)||String(o.desc||"").toLowerCase().includes(this.q)))continue;e.add(o.id);let s=o.parent;for(;s;)e.add(s),s=this.byId.get(s)&&this.byId.get(s).parent}return e},visible(){const e=[];for(const t of this.sections){const o=this.kept?t.nodes.filter(n=>this.kept.has(n.id)):t.nodes;if(!(this.kept&&!o.length)&&(e.push({id:"sec:"+t.id,section:!0,sectionId:t.id,level:1,depth:0,expandable:!0,cap:t.cap,badge:t.badge||"CAP "+t.cap,label:t.label,title:t.title||"",count:t.nodes.filter(n=>n.depth===0).length}),!(!this.kept&&this.secClosed[t.id])))for(const n of o)!this.kept&&!this.ancestorsOpen(n)||e.push({...n,sectionId:t.id,level:n.depth+2,expandable:!!n.kids,alias:Jc(n)})}return e},activeSectionId(){for(const e of this.sections)if(e.nodes.some(t=>On(t)&&t.target===this.active))return e.id;return""}},watch:{active:{handler(){this.reveal()},immediate:!0},sections(){this.reveal()},query(e){e&&this.visible.length&&(this.focusId=this.visible[0].id)}},methods:{svg(e){return e?Di(e):""},str(e,t){let o=this.strings[e]||Gc[e]||e;if(t)for(const n in t)o=o.split("{"+n+"}").join(String(t[n]));return o},storageKey(){return"dx-studio-tree:"+(typeof location<"u"&&location.pathname||"")},readState(){try{return JSON.parse(window.localStorage.getItem(this.storageKey())||"{}")||{}}catch{return{}}},saveState(){try{window.localStorage.setItem(this.storageKey(),JSON.stringify({sec:this.secClosed,node:this.nodeOpen}))}catch{}},ancestorsOpen(e){let t=e.parent;for(;t;){if(!this.nodeOpen[t])return!1;t=this.byId.get(t)&&this.byId.get(t).parent}return!0},isOpen(e){return this.kept?!0:e.section?!this.secClosed[e.sectionId]:!!this.nodeOpen[e.id]},setOpen(e,t){e.section?this.secClosed={...this.secClosed,[e.sectionId]:!t}:this.nodeOpen={...this.nodeOpen,[e.id]:t},this.saveState()},toggle(e){e.expandable&&this.setOpen(e,!this.isOpen(e))},collapseAll(){this.nodeOpen={},this.saveState();const e=this.visible.find(t=>!t.section&&t.target===this.active&&On(t));e&&(this.focusId=e.id)},rowClass(e){return{"st-row":!0,"st-sec":!!e.section,active:!e.section&&e.target===this.active,alias:!!e.alias}},setRow(e,t){this._rows||(this._rows={}),t?this._rows[e]=t:delete this._rows[e]},activate(e){if(e.section){this.toggle(e);return}e.target&&(this.pick?this.pick(e.target):this.$emit("select",e.target))},onRowClick(e){this.focusId=e.id,this.activate(e)},focusRow(e){e&&(this.focusId=e,this.$nextTick(()=>{const t=this._rows&&this._rows[e];t&&(t.focus({preventScroll:!0}),t.scrollIntoView({block:"nearest"}))}))},onTreeKey(e){const t=this.visible;if(!t.length)return;const o=Math.max(0,t.findIndex(i=>i.id===this.focusId)),n=t[o],s=i=>i.section?"":i.parent||"sec:"+i.sectionId;switch(e.key){case"ArrowDown":this.focusRow((t[o+1]||n).id);break;case"ArrowUp":this.focusRow((t[o-1]||n).id);break;case"Home":this.focusRow(t[0].id);break;case"End":this.focusRow(t[t.length-1].id);break;case"ArrowRight":if(!n.expandable)break;this.isOpen(n)?t[o+1]&&t[o+1].level>n.level&&this.focusRow(t[o+1].id):this.setOpen(n,!0);break;case"ArrowLeft":n.expandable&&this.isOpen(n)&&!this.kept?this.setOpen(n,!1):this.focusRow(s(n));break;case"Enter":case" ":this.activate(n);break;default:if(e.key.length===1&&/\S/.test(e.key)&&!e.ctrlKey&&!e.metaKey&&!e.altKey){const i=e.key.toLowerCase(),a=t.slice(o+1).concat(t.slice(0,o+1)).find(r=>String(r.label).toLowerCase().startsWith(i));a&&this.focusRow(a.id);break}return}e.preventDefault()},onFindKey(e){e.key==="Escape"?(this.query="",e.preventDefault()):e.key==="ArrowDown"&&this.visible.length&&(this.focusRow(this.visible[0].id),e.preventDefault())},reveal(){if(!this.active||!this.sections.length)return;let e=null;for(const t of this.sections)if(e=t.nodes.find(o=>On(o)&&o.target===this.active),e){this.secClosed[t.id]&&(this.secClosed={...this.secClosed,[t.id]:!1},this.saveState());break}if(e)for(let t=e.parent;t;){const o=this.byId.get(t);if(!o)break;if(o.target===this.active&&!this.nodeOpen[t]){e=o;break}t=o.parent}if(e){let t=e.parent,o=!1;for(;t;)this.nodeOpen[t]||(this.nodeOpen={...this.nodeOpen,[t]:!0},o=!0),t=this.byId.get(t)&&this.byId.get(t).parent;o&&this.saveState()}e&&((!this.focusId||!this.byId.has(this.focusId)||this.byId.get(this.focusId).target!==this.active)&&(this.focusId=e.id),this.$nextTick(()=>{const t=this._rows&&this._rows[e.id];t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest"})}))},openSectionFromActivity(e){this.secClosed[e]&&(this.secClosed={...this.secClosed,[e]:!1},this.saveState()),this.expand&&this.expand(),this.$nextTick(()=>this.focusRow("sec:"+e))}}}),Zc={key:0,class:"st-activity"},Qc=["aria-label","onClick"],ed=["innerHTML"],td={class:"st-act-n","aria-hidden":"true"},od={key:1,class:"st"},nd={class:"st-bar"},sd={class:"st-find"},id=["innerHTML"],ld=["placeholder","aria-label"],ad=["aria-label","title"],rd=["innerHTML"],cd=["aria-label"],dd=["aria-level","aria-expanded","aria-selected","tabindex","title","onClick","onFocus"],pd=["innerHTML"],ud={class:"st-cap"},fd={class:"st-sec-label"},gd={class:"st-count"},hd=["innerHTML","onClick"],$d={key:1,class:"st-twisty-sp","aria-hidden":"true"},bd=["innerHTML"],md={class:"st-label"},_d={key:2,class:"st-part"},vd={class:"st-desc"},xd={key:3,class:"st-count"},kd={key:0,class:"st-empty"};function yd(e,t,o,n,s,i){return e.collapsed?(L(),N("div",Zc,[(L(!0),N(G,null,Pe(e.sections,l=>(L(),N("button",{key:l.id,type:"button",class:ge(["st-act",{active:l.id===e.activeSectionId}]),"aria-label":e.str("openSection",{cap:l.badge||"CAP "+l.cap,label:l.label}),onClick:a=>e.openSectionFromActivity(l.id)},[_("span",{class:"st-act-ic","aria-hidden":"true",innerHTML:e.svg(l.icon)},null,8,ed),_("span",td,P(l.short||l.cap),1)],10,Qc))),128))])):(L(),N("div",od,[_("div",nd,[_("label",sd,[_("span",{class:"st-find-ic","aria-hidden":"true",innerHTML:e.svg("search")},null,8,id),ft(_("input",{ref:"find",type:"search",class:"st-find-in","onUpdate:modelValue":t[0]||(t[0]=l=>e.query=l),placeholder:e.str("filterPlaceholder"),"aria-label":e.str("filterPlaceholder"),onKeydown:t[1]||(t[1]=(...l)=>e.onFindKey&&e.onFindKey(...l))},null,40,ld),[[En,e.query]])]),_("button",{type:"button",class:"st-tool","aria-label":e.str("collapseAll"),title:e.str("collapseAll"),onClick:t[2]||(t[2]=(...l)=>e.collapseAll&&e.collapseAll(...l))},[_("span",{"aria-hidden":"true",innerHTML:e.collapseAllSvg},null,8,rd)],8,ad)]),_("div",{class:"st-tree",role:"tree","aria-label":e.str("treeLabel"),onKeydown:t[3]||(t[3]=(...l)=>e.onTreeKey&&e.onTreeKey(...l))},[(L(!0),N(G,null,Pe(e.visible,l=>(L(),N("div",{key:l.id,ref_for:!0,ref:a=>e.setRow(l.id,a),role:"treeitem","aria-level":l.level,"aria-expanded":l.expandable?String(e.isOpen(l)):null,"aria-selected":l.section?null:String(l.target===e.active),tabindex:l.id===e.focusId?0:-1,class:ge(e.rowClass(l)),style:kt({"--st-depth":l.depth}),title:l.title||null,onClick:a=>e.onRowClick(l),onFocus:a=>e.focusId=l.id},[l.section?(L(),N(G,{key:0},[_("span",{class:"st-twisty","aria-hidden":"true",innerHTML:e.chev},null,8,pd),_("span",ud,P(l.badge),1),_("span",fd,P(l.label),1),_("span",gd,P(l.count),1)],64)):(L(),N(G,{key:1},[(L(!0),N(G,null,Pe(l.depth,a=>(L(),N("span",{key:a,class:"st-guide",style:kt({"--st-g":a-1}),"aria-hidden":"true"},null,4))),128)),l.expandable?(L(),N("span",{key:0,class:"st-twisty","aria-hidden":"true",innerHTML:e.chev,onClick:Ti(a=>e.toggle(l),["stop"])},null,8,hd)):(L(),N("span",$d)),_("span",{class:"st-ic","aria-hidden":"true",innerHTML:e.svg(l.icon)},null,8,bd),_("span",md,P(l.label),1),l.part?(L(),N("span",_d,P(e.str("part")),1)):Y("",!0),_("span",vd,P(l.desc),1),l.expandable?(L(),N("span",xd,P(l.kids),1)):Y("",!0)],64))],46,dd))),128)),e.query&&!e.visible.length?(L(),N("p",kd,P(e.str("noMatch",{query:e.query})),1)):Y("",!0)],40,cd)]))}const wd=An(Xc,[["render",yd],["styles",[Kc]]]),Mo=[{code:"en",name:"English",nativeName:"English",flag:"🇺🇸"},{code:"es",name:"Spanish",nativeName:"Español",flag:"🇪🇸"},{code:"fr",name:"French",nativeName:"Français",flag:"🇫🇷"},{code:"pt",name:"Portuguese",nativeName:"Português",flag:"🇵🇹"},{code:"ar",name:"Arabic",nativeName:"العربية",flag:"🇸🇦",dir:"rtl"},{code:"ru",name:"Russian",nativeName:"Русский",flag:"🇷🇺"},{code:"de",name:"German",nativeName:"Deutsch",flag:"🇩🇪",hideFromSwitcher:!0},{code:"hi",name:"Hindi",nativeName:"हिन्दी",flag:"🇮🇳",hideFromSwitcher:!0},{code:"it",name:"Italian",nativeName:"Italiano",flag:"🇮🇹",hideFromSwitcher:!0},{code:"ro",name:"Romanian",nativeName:"Română",flag:"🇷🇴",hideFromSwitcher:!0},{code:"zh",name:"Chinese",nativeName:"中文",flag:"🇨🇳",hideFromSwitcher:!0}];Mo.filter(e=>!e.hideFromSwitcher);function Sd(e){return Mo.find(t=>t.code===e)}function Fn(e){const t=String(e||"").split("-")[0].toLowerCase();return Mo.some(o=>o.code===t)?t:"en"}const Ri="doxa-maps:locale";function Ld(){try{const e=localStorage.getItem(Ri);if(e)return Fn(e)}catch{}return Fn(navigator==null?void 0:navigator.language)}function Nd(e){try{localStorage.setItem(Ri,e)}catch{}}const To="__doxaMapToken",Wi="doxa:map-token",zi="__doxaMapTokenBridge",Bt=()=>{if(typeof window>"u")return"";const e=window[To];return typeof e=="string"?e:""};function ji(e){if(typeof window>"u")return"";Bi();const t=typeof e=="string"?e.trim():"";if(!t||t===Bt())return Bt();window[To]=t;try{window.dispatchEvent(new CustomEvent(Wi,{detail:t}))}catch{}return t}function Pd(){var t;if(typeof window>"u")return;const e=Bt()||typeof window.MAP_TOKEN=="string"&&window.MAP_TOKEN;if(Bi(),window[To]="",!((t=Object.getOwnPropertyDescriptor(window,"MAP_TOKEN"))!=null&&t.get))try{window.MAP_TOKEN=""}catch{}if(e)try{window.dispatchEvent(new CustomEvent(Wi,{detail:""}))}catch{}}function Bi(){var t;if(typeof window>"u"||window[zi]&&((t=Object.getOwnPropertyDescriptor(window,"MAP_TOKEN"))!=null&&t.get))return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!Bt()&&(window[To]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return Bt()},set(o){ji(o)}}),window[zi]=!0}catch{}}const Cd=":host{display:block;position:relative;height:var(--plugin-studio-height, 85vh);min-height:480px}:host([hidden]){display:none}.ps-logo{display:inline-flex;align-items:center}.ps-logo svg{display:block}.ps-count{color:#6d766e}.vtl-top{position:relative;z-index:3}.vtl-body{isolation:isolate}.ps-token{position:relative;display:inline-flex}.ps-show-header{position:fixed;top:8px;inset-inline-end:8px;z-index:2147483000;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #d1d4cd;border-radius:999px;background:#fffffff0;color:#3b463d;font:600 12px system-ui,sans-serif;cursor:pointer;box-shadow:0 4px 14px #0000002e}.ps-show-header:hover,.ps-show-header:focus-visible{background:#fff;outline:2px solid #92b195}.ps-token-dot{width:8px;height:8px;border-radius:50%;background:#b8bdb4}.ps-token-dot.is-yours,.ps-token-dot.is-url{background:#92b195}.ps-token-dot.is-built{background:#c9b36a}.ps-token-dot.is-none{background:#d27a6a}.ps-token-panel{position:absolute;top:100%;inset-inline-end:0;margin-top:4px;z-index:30;width:min(340px,90vw);display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid #d1d4cd;border-radius:10px;background:#fff;box-shadow:0 12px 32px #00000040;color:#3b463d;font-size:12px}.ps-token-label{display:flex;flex-direction:column;gap:4px}.ps-token-input{font:inherit;font-size:12px;padding:6px 8px;border:1px solid #d1d4cd;border-radius:7px;background:#f8f8f6;color:#3b463d;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.ps-token-row{display:flex;gap:8px}.ps-token-apply,.ps-token-clear{font:inherit;font-size:12px;padding:5px 12px;border-radius:7px;border:1px solid #d1d4cd;background:#d1d4cd;color:#3b463d;cursor:pointer}.ps-token-apply{background:#92b195;border-color:#92b195;color:#fff}.ps-token-apply:disabled{opacity:.6;cursor:progress}.ps-token-status{margin:0}.ps-token-head{margin:0;font-weight:600;font-size:12px}.ps-token-status.err{color:#b3412f}.ps-token-note{margin:0;color:#6d766e}.ps-locale{position:relative;display:inline-flex}.ps-locale-btn{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12px;padding:4px 9px;border:1px solid #d1d4cd;border-radius:8px;background:#d1d4cd;color:#3b463d;cursor:pointer}.ps-locale-btn:hover{background:#d1d4cd}.ps-flag{font-size:13px;line-height:1}.ps-locale-name{max-width:11ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ps-token-btn .ps-locale-name{max-width:none}.ps-dots{color:#6d766e}.ps-locale-menu{position:absolute;top:100%;right:0;margin-top:4px;z-index:30;min-width:180px;list-style:none;padding:6px;border:1px solid #d1d4cd;border-radius:10px;background:#fff;box-shadow:0 12px 32px #00000080;max-height:320px;overflow:auto}.ps-locale-opt{display:flex;align-items:center;gap:8px;width:100%;text-align:left;font:inherit;font-size:13px;padding:7px 9px;border:0;border-radius:7px;background:none;color:#3b463d;cursor:pointer}.ps-locale-opt:hover,.ps-locale-opt.active{background:#d1d4cd;color:#3b463d}.ps-locale-opt.active .ps-locale-name{color:#92b195}.ps-locale-en{margin-left:auto;font-size:11px;color:#6d766e}.ps-toolbar{display:flex;flex-direction:column;gap:8px;padding:10px 12px 0}.ps-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ps-bar-t{flex:1 1 auto;min-width:0}.ps-bar-t b{font-size:15px;color:#3b463d}.ps-bar-sub{display:block;font-size:12px;color:#6d766e}.ps-btn{font:inherit;font-size:12px;padding:5px 10px;border:1px solid #d1d4cd;border-radius:8px;background:#d1d4cd;color:#3b463d;cursor:pointer;white-space:nowrap}.ps-btn:hover{background:#d1d4cd}.ps-embed{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid #d1d4cd;border-radius:8px;background:#f3f3f1}.ps-embed label{font-size:12px;color:#6d766e;display:flex;justify-content:space-between;align-items:center}.ps-embed textarea{width:100%;height:58px;font:11px/1.35 ui-monospace,Menlo,monospace;border:1px solid #d1d4cd;border-radius:6px;background:#fff;color:#3b463d;padding:6px;resize:vertical}.ps-stage{position:absolute;top:10px;right:12px;bottom:12px;left:12px;border:1px solid #d1d4cd;border-radius:10px;overflow:hidden;background:#f3f3f1}.ps-pane{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;--profile-min-h: 0}.ps-slot{position:relative;min-height:100%}.ps-slot>*{min-height:0;max-height:none}.ps-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;color:#6d766e;font-size:13px;padding:20px}.ps-hint.err{color:#f87171}.ps-hint small{color:#6d766e}",Ao="plugin-studio:mapbox-token",Oo="plugin-studio:mapbox-token-url",Ki="plugin-studio:header-hidden",Vi="plugin-studio:map-provider";function mt(e){try{return typeof window<"u"&&window.localStorage.getItem(e)||""}catch{return""}}function _t(e,t){try{t?window.localStorage.setItem(e,t):window.localStorage.removeItem(e)}catch{}}const Ed=`
:host { display:block; position:relative; height:var(--plugin-studio-height, 85vh); min-height:480px; }
:host([hidden]) { display:none; }
.ps-logo { display:inline-flex; align-items:center; }
.ps-logo svg { display:block; }
.ps-count { color:#6d766e; }
.vtl-top { position:relative; z-index:3; }
.vtl-body { isolation:isolate; }
.ps-token { position:relative; display:inline-flex; }
.ps-show-header { position:fixed; top:8px; inset-inline-end:8px; z-index:2147483000; display:inline-flex; align-items:center; gap:6px; padding:6px 12px; border:1px solid #d1d4cd; border-radius:999px; background:rgba(255,255,255,.94); color:#3b463d; font:600 12px system-ui, sans-serif; cursor:pointer; box-shadow:0 4px 14px rgba(0,0,0,.18); }
.ps-show-header:hover, .ps-show-header:focus-visible { background:#ffffff; outline:2px solid #92b195; }
.ps-token-dot { width:8px; height:8px; border-radius:50%; background:#b8bdb4; }
.ps-token-dot.is-yours, .ps-token-dot.is-url { background:#92b195; }
.ps-token-dot.is-built { background:#c9b36a; }
.ps-token-dot.is-none { background:#d27a6a; }
.ps-token-panel { position:absolute; top:100%; inset-inline-end:0; margin-top:4px; z-index:30; width:min(340px, 90vw); display:flex; flex-direction:column; gap:8px; padding:12px; border:1px solid #d1d4cd; border-radius:10px; background:#ffffff; box-shadow:0 12px 32px rgba(0,0,0,.25); color:#3b463d; font-size:12px; }
.ps-token-label { display:flex; flex-direction:column; gap:4px; }
.ps-token-input { font:inherit; font-size:12px; padding:6px 8px; border:1px solid #d1d4cd; border-radius:7px; background:#f8f8f6; color:#3b463d; font-family:ui-monospace, SFMono-Regular, Menlo, monospace; }
.ps-token-row { display:flex; gap:8px; }
.ps-token-apply, .ps-token-clear { font:inherit; font-size:12px; padding:5px 12px; border-radius:7px; border:1px solid #d1d4cd; background:#d1d4cd; color:#3b463d; cursor:pointer; }
.ps-token-apply { background:#92b195; border-color:#92b195; color:#fff; }
.ps-token-apply:disabled { opacity:.6; cursor:progress; }
.ps-token-status { margin:0; }
.ps-token-head { margin:0; font-weight:600; font-size:12px; }
.ps-token-status.err { color:#b3412f; }
.ps-token-note { margin:0; color:#6d766e; }
.ps-locale { position:relative; display:inline-flex; }
.ps-locale-btn { display:inline-flex; align-items:center; gap:6px; font:inherit; font-size:12px; padding:4px 9px; border:1px solid #d1d4cd; border-radius:8px; background:#d1d4cd; color:#3b463d; cursor:pointer; }
.ps-locale-btn:hover { background:#d1d4cd; }
.ps-flag { font-size:13px; line-height:1; }
.ps-locale-name { max-width:11ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ps-token-btn .ps-locale-name { max-width:none; }
.ps-dots { color:#6d766e; }
.ps-locale-menu { position:absolute; top:100%; right:0; margin-top:4px; z-index:30; min-width:180px; list-style:none; padding:6px; border:1px solid #d1d4cd; border-radius:10px; background:#ffffff; box-shadow:0 12px 32px rgba(0,0,0,.5); max-height:320px; overflow:auto; }
.ps-locale-opt { display:flex; align-items:center; gap:8px; width:100%; text-align:left; font:inherit; font-size:13px; padding:7px 9px; border:0; border-radius:7px; background:none; color:#3b463d; cursor:pointer; }
.ps-locale-opt:hover { background:#d1d4cd; color:#3b463d; }
.ps-locale-opt.active { background:#d1d4cd; color:#3b463d; }
.ps-locale-opt.active .ps-locale-name { color:#92b195; }
.ps-locale-en { margin-left:auto; font-size:11px; color:#6d766e; }
.ps-toolbar { display:flex; flex-direction:column; gap:8px; padding:10px 12px 0; }
.ps-bar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.ps-bar-t { flex:1 1 auto; min-width:0; }
.ps-bar-t b { font-size:15px; color:#3b463d; }
.ps-bar-sub { display:block; font-size:12px; color:#6d766e; }
.ps-btn { font:inherit; font-size:12px; padding:5px 10px; border:1px solid #d1d4cd; border-radius:8px; background:#d1d4cd; color:#3b463d; cursor:pointer; white-space:nowrap; }
.ps-btn:hover { background:#d1d4cd; }
.ps-embed { display:flex; flex-direction:column; gap:6px; padding:8px; border:1px solid #d1d4cd; border-radius:8px; background:#f3f3f1; }
.ps-embed label { font-size:12px; color:#6d766e; display:flex; justify-content:space-between; align-items:center; }
.ps-embed textarea { width:100%; height:58px; font:11px/1.35 ui-monospace,Menlo,monospace; border:1px solid #d1d4cd; border-radius:6px; background:#ffffff; color:#3b463d; padding:6px; resize:vertical; }
.ps-stage { position:absolute; inset:10px 12px 12px; border:1px solid #d1d4cd; border-radius:10px; overflow:hidden; background:#f3f3f1; }
.ps-pane { position:absolute; inset:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; --profile-min-h:0; }
.ps-slot { position:relative; min-height:100%; }
.ps-slot > * { min-height:0; max-height:none; }
.ps-hint { position:absolute; inset:0; display:grid; place-items:center; text-align:center; color:#6d766e; font-size:13px; padding:20px; }
.ps-hint.err { color:#f87171; }
.ps-hint small { color:#6d766e; }
`,Md={5:"App shell · nested-mfe-spa",4:"Composite element",3:"Multi-view element",2:"Preset element",1:"Single element"},qi={"nested-mfe-spa":0,"nested-elements-mfe":1,monolithic:2,parameterized:3,single:4},Td=e=>qi[e]!=null?5-qi[e]:1,Ad={5:"nested-mfe-spa",4:"nested-elements-mfe",3:"monolithic",2:"parameterized",1:"single"},In={5:"monitor",4:"tree",3:"layers",2:"grid",1:"embed"},Gi=new Set(["doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map","doxa-map","doxa-maps-spa","dashboard-plus-grid","research-dashboard-map","demo-map","all-people-groups","country-posters-map","key-cities-map","research-map-plus-grid","gospel-internet-board"]),Yi=new Set(["big-picture"]),Fo={};for(const[e,t]of Object.entries(Object.assign({"../../library/i18n/locales/ar/studio.json":Cr,"../../library/i18n/locales/de/studio.json":Er,"../../library/i18n/locales/en/studio.json":Mr,"../../library/i18n/locales/es/studio.json":Tr,"../../library/i18n/locales/fr/studio.json":Ar,"../../library/i18n/locales/hi/studio.json":Or,"../../library/i18n/locales/it/studio.json":Fr,"../../library/i18n/locales/pt/studio.json":Ir,"../../library/i18n/locales/ro/studio.json":Hr,"../../library/i18n/locales/ru/studio.json":Dr,"../../library/i18n/locales/zh/studio.json":Ur}))){const o=e.match(/locales\/([^/]+)\/studio\.json$/);o&&(Fo[o[1]]=t)}const Ji={},Hn=e=>String(e).split(/[-_]+/).filter(Boolean).map(t=>t[0].toUpperCase()+t.slice(1)).join(" ");function Od(e,t){const o=e+"/"+t.profile;if(Ji[o])return Ji[o];const n=typeof t.label=="string"?t.label.replace(/\s*\([^()]*\)\s*$/,"").trim():"";return n||(t.profile===e?Hn(e):Hn(e)+" · "+Hn(t.profile))}const Fd=`
[data-studio-widgets]{position:fixed;z-index:2147483647;display:flex;flex-direction:column;gap:10px;pointer-events:none}
[data-studio-widgets] > *{pointer-events:auto}
[data-studio-widgets="bottom-right"]{bottom:max(16px,env(safe-area-inset-bottom));right:max(16px,env(safe-area-inset-right));align-items:flex-end}
[data-studio-widgets="bottom-left"]{bottom:max(16px,env(safe-area-inset-bottom));left:max(16px,env(safe-area-inset-left));align-items:flex-start}
[data-studio-widgets="top-right"]{top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));align-items:flex-end}
[data-studio-widgets="top-left"]{top:max(16px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));align-items:flex-start}
[data-widget]{display:flex;flex-direction:column;align-items:inherit;gap:10px}
[data-studio-widgets^="top"] [data-widget]{flex-direction:column-reverse}
[data-widget-panel]{display:none;position:relative;width:360px;max-width:calc(100vw - 32px);height:min(480px,calc(100vh - 110px));height:min(480px,calc(100dvh - 110px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));border-radius:16px;overflow:hidden;background:#0b0f14;box-shadow:0 12px 40px rgba(0,0,0,.35)}
[data-widget-panel][data-open]{display:block}
[data-widget-bubble]{position:relative;display:inline-flex;align-items:center;gap:8px;height:48px;max-width:min(360px,calc(100vw - 32px));padding:0 18px 0 14px;border:1px solid #334155;border-radius:999px;background:#0f172a;color:#e5e7eb;font:600 14px/1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.3)}
[data-widget-bubble]:focus-visible{outline:3px solid #7dd3fc;outline-offset:3px}
[data-wb-icon]{display:grid;place-items:center;flex:none;color:#38bdf8}
[data-wb-icon] svg,[data-wb-chev] svg{width:20px;height:20px;display:block}
[data-wb-text]{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
[data-widget-bubble][data-listening="true"]{width:min(300px,calc(100vw - 32px))}
[data-widget-bubble][data-listening="true"] [data-wb-text]{flex:1 1 auto}
[data-wb-dot],[data-wb-chev]{display:none;flex:none}
[data-wb-dot]{width:10px;height:10px;border-radius:50%;background:#ef4444}
[data-widget-bubble][aria-expanded="true"] [data-wb-chev]{display:block}
[data-widget-bubble][data-listening="true"]{border-color:#ef4444;background:#1f0f12;animation:studio-widget-pulse 1.4s ease-out infinite}
[data-widget-bubble][data-listening="true"] [data-wb-dot]{display:block}
[data-widget-bubble][data-listening="true"] [data-wb-icon]{color:#6b7280}
[data-widget-bubble][data-speaking="true"] [data-wb-icon]{color:#4ade80;animation:studio-widget-speak .5s ease-in-out infinite alternate}
@keyframes studio-widget-pulse{0%{box-shadow:0 0 0 0 rgba(239,68,68,.55)}70%{box-shadow:0 0 0 12px rgba(239,68,68,0)}100%{box-shadow:0 0 0 0 rgba(239,68,68,0)}}
@keyframes studio-widget-speak{from{transform:scale(1)}to{transform:scale(1.18)}}
@media (prefers-reduced-motion:reduce){[data-widget-bubble][data-listening="true"],[data-widget-bubble][data-speaking="true"] [data-wb-icon]{animation:none}}
@media (max-width:480px){
[data-studio-widgets^="bottom"]{bottom:max(8px,env(safe-area-inset-bottom))}
[data-studio-widgets$="right"]{right:max(8px,env(safe-area-inset-right))}
[data-studio-widgets$="left"]{left:max(8px,env(safe-area-inset-left))}
[data-widget-panel]{width:calc(100vw - 16px);max-width:none;height:60vh;height:60dvh}
[data-widget-bubble]{max-width:calc(100vw - 16px)}
}`,Id='<span data-wb-dot aria-hidden="true"></span><span data-wb-icon>'+'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="9" y="2" width="6" height="12" rx="3"/><path d="M5 10v1a7 7 0 0 0 14 0v-1"/><path d="M12 18v4"/></svg>'+"</span><span data-wb-text></span><span data-wb-chev>"+'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" aria-hidden="true"><path d="M6 9l6 6 6-6"/></svg>'+"</span>",Hd=$o({name:"PluginStudio",inheritAttrs:!1,components:{VerticalTabsLayout:Bc,StudioTree:wd},props:{treeBase:{type:String,default:""},profileConfig:{type:[String,Object],default:""},provider:{type:String,default:""},heading:{type:String,default:""},tokenUrl:{type:String,default:""},tk:{type:String,default:""}},setup(){return Mn(Ed,"plugin-studio"),{injectedBase:Et("psTreeBase","")}},data(){return{activeKey:"",embedOpen:!1,locale:this.initialLocale(),localeOpen:!1,settingsOpen:!1,headerHidden:mt(Ki)==="1",engineOpen:!1,userProvider:mt(Vi),tokenBusy:!1,tokenErr:"",tokenDraft:mt(Ao),urlDraft:mt(Oo),userTk:mt(Ao),userTokenUrl:mt(Oo),fetchedTk:"",bakedTk:"",hostProvider:"",switcherLangs:Mo,rows:[],manifestBundles:[]}},computed:{cfg(){let e=this.profileConfig;if(typeof e=="string")try{e=e?JSON.parse(e):{}}catch{e={}}return e&&typeof e=="object"?e:{}},base(){const e=(this.treeBase||this.cfg.treeBase||this.injectedBase||"").trim();return e?e.replace(/\/+$/,"")+"/":""},flatRows(){return this.rows},groups(){const e={};for(const t of this.rows)(e[t.cap]=e[t.cap]||[]).push(t);return[5,4,3,2,1].filter(t=>e[t]&&e[t].length).map(t=>({cap:t,label:Md[t]||"capability "+t,rows:e[t]}))},treeSections(){const e=new Map(this.compositionTrees.map(s=>[s.nodes[0].selects,s])),t=new Map;for(const s of this.rows)t.has(s.bundle)||t.set(s.bundle,[]),t.get(s.bundle).push(s);const o=[...t.entries()].map(([s,i])=>({bundle:s,rows:i,cap:Math.max(...i.map(l=>l.cap))}));return[5,4,3,2,1].map(s=>({cap:s,group:o.filter(i=>i.cap===s).sort((i,l)=>i.bundle.localeCompare(l.bundle))})).map(({cap:s,group:i})=>{if(!i.length)return null;const l=[],a=(r,p,d)=>{const f=e.get(r.key);if(l.push({id:r.key,parent:d,depth:p,label:r.label,desc:(r.stage==="production"?"":this.tr("stageExperimental")+" · ")+"cap "+r.cap+" · "+r.tag,icon:r.icon,target:r.key,canonical:!0,kids:f?f.nodes[0].kids:0,title:r.label+" · <"+r.tag+"> · CAP "+r.cap+" "+this.tr("cap"+r.cap)}),!f)return;const v=x=>x===0?r.key:r.key+">"+x;for(const x of f.nodes.slice(1))l.push({id:v(x.id),parent:v(x.ancestors[x.ancestors.length-1]),depth:p+x.depth,label:x.label,part:!!x.part,target:x.selects||"",canonical:!1,icon:x.part?"dots":In[x.cap]||"embed",desc:x.part?this.tr("noStandalone"):"cap "+x.cap+" · "+x.tag,kids:x.kids||0,title:x.part?x.label+" · "+this.tr("partOf",{name:r.label}):x.label+" · <"+x.tag+"> · CAP "+x.cap+" "+this.tr("cap"+x.cap)})};for(const r of i){const p=[...r.rows].sort((f,v)=>v.cap-f.cap||f.label.localeCompare(v.label));if(p.length===1){a(p[0],0,"");continue}const d="bundle:"+r.bundle;l.push({id:d,parent:"",depth:0,label:r.bundle,desc:this.tr("elementsCount",{n:p.length}),icon:"folder",target:p[0].key,canonical:!1,folder:!0,kids:p.length,title:r.bundle+" · plugin-designs/"+r.bundle+"/ · "+p.length+" "+this.tr("elements")});for(const f of p)a(f,1,d)}return{id:"cap-"+s,cap:s,label:this.tr("cap"+s),title:this.tr("cap"+s)+" · "+(Ad[s]||""),icon:In[s]||"embed",nodes:l}}).filter(Boolean)},compositionTrees(){const e=[],t=(o,n,s,i,l)=>{const a=this.manifestBundles.find(v=>v.bundle===o.bundle),r=o.cap>=4&&a&&a.composes||[],p=[],d=[],f=new Set;for(const v of r){const x=this.resolveRef(v,o.bundle);if(!x){d.push(v);continue}x.key===o.key||f.has(x.key)||(f.add(x.key),p.push(x))}p.sort((v,x)=>x.cap-v.cap||v.label.localeCompare(x.label));for(const v of p){const x={id:i.length,label:v.label,tag:v.tag,cap:v.cap,selects:v.key,depth:n+1,ancestors:l,kids:0};i.push(x);const R=i.length;s.has(v.key)||t(v,n+1,new Set([...s,v.key]),i,[...l,x.id]),x.kids=i.filter((F,ee)=>ee>=R&&F.depth===n+2).length}for(const v of d)i.push({id:i.length,label:v,part:!0,selects:o.key,depth:n+1,ancestors:l,kids:0})};for(const o of this.manifestBundles){if(!o.composes||!o.composes.length||Yi.has(o.bundle))continue;const n=this.rows.find(i=>i.bundle===o.bundle);if(!n)continue;const s=[{id:0,label:n.label,tag:n.tag,cap:n.cap,selects:n.key,depth:0,ancestors:[]}];t(n,0,new Set([n.key]),s,[0]),s[0].kids=s.filter(i=>i.depth===1).length,s.length>1&&e.push({bundle:o.bundle,nodes:s})}return e},active(){return this.rows.find(e=>e.key===this.activeKey)||null},effectiveTk(){return this.userTk||this.fetchedTk||this.tk||this.cfg.tk||this.bakedTk||""},effectiveProvider(){const e=String(this.userProvider||this.provider||this.cfg.provider||"").toLowerCase().trim();return e==="maplibre"||e==="mapbox"?e:""},engines(){return[{id:"",label:this.tr("engineDefault"),note:""},{id:"mapbox",label:"Mapbox",note:this.tr("engineMapboxNote")},{id:"maplibre",label:"MapLibre",note:this.tr("engineMaplibreNote")}]},engineLabel(){return this.userProvider==="mapbox"?"Mapbox":this.userProvider==="maplibre"?"MapLibre":this.tr("engineDefault")},tokenSource(){return this.userTk?"yours":this.fetchedTk?"url":this.tk||this.cfg.tk||this.bakedTk?"built":"none"},tokenStatus(){return this.effectiveProvider==="maplibre"?this.tr("tokenNotNeeded"):this.tokenSource==="yours"?this.tr("tokenSourceYours"):this.tokenSource==="url"?this.tr("tokenSourceUrl",{url:this.userTokenUrl}):this.tokenSource==="built"?this.tr("tokenSourceBuilt"):this.tr("tokenSourceNone")},countLabel(){const e=new Set(this.rows.map(t=>t.bundle)).size;return this.tr("countLabel",{bundles:e,elements:this.rows.length})},activeLang(){return Sd(this.locale)||{code:this.locale,flag:"🌐",nativeName:this.locale}},uiDir(){return(this.activeLang&&this.activeLang.dir)==="rtl"?"rtl":"ltr"}},mounted(){this.bakedTk=typeof window<"u"&&window.MAP_TOKEN||"",this.hostProvider=typeof window<"u"&&typeof window.MAP_PROVIDER=="string"?window.MAP_PROVIDER:"",this.publishProvider(),this.userTk?this.publishToken():(this.userTokenUrl||this.tokenUrl||this.cfg.tokenUrl)&&this.fetchToken(this.userTokenUrl||this.tokenUrl||this.cfg.tokenUrl).then(e=>{e&&e!==this.fetchedTk&&(this.fetchedTk=e,this.publishToken(),this.remountPanes())}).catch(()=>{}),this.loadManifest()},methods:{async fetchToken(e){if(!/^https?:\/\//i.test(e))throw new Error("not an http(s) URL");let t;try{t=await fetch(e,{cache:"no-store",credentials:"same-origin"})}catch{throw new Error("the request was blocked or the server did not answer (cross-origin rules can do this)")}if(!t.ok)throw new Error("HTTP "+t.status);const o=(await t.text()).trim();let n=o;try{const s=JSON.parse(o);n=s&&(s.token||s.tk||s.accessToken)||(typeof s=="string"?s:"")}catch{}if(n=String(n||"").trim(),n.startsWith("sk."))throw new Error(this.tr("tokenSecret"));if(!n.startsWith("pk."))throw new Error(this.tr("tokenNotPk"));return n},async applyToken(){this.tokenErr="";const e=this.tokenDraft,t=this.urlDraft;if(e.startsWith("sk.")){this.tokenErr=this.tr("tokenSecret");return}if(e&&!e.startsWith("pk.")){this.tokenErr=this.tr("tokenNotPk");return}this.tokenBusy=!0;try{let o="";if(!e&&t)try{o=await this.fetchToken(t)}catch(n){this.tokenErr=this.tr("tokenUrlFailed",{why:n.message});return}this.userTk=e,this.userTokenUrl=e?"":t,this.fetchedTk=o,_t(Ao,this.userTk),_t(Oo,this.userTokenUrl),this.publishToken(),this.remountPanes(),this.settingsOpen=!1}finally{this.tokenBusy=!1}},setHeaderHidden(e){this.headerHidden=!!e,this.settingsOpen=!1,this.engineOpen=!1,this.localeOpen=!1,_t(Ki,e?"1":"")},setProvider(e){this.engineOpen=!1,e!==this.userProvider&&(this.userProvider=e,_t(Vi,e),this.publishProvider(),this.remountPanes())},publishProvider(){typeof window>"u"||(this.effectiveProvider?window.MAP_PROVIDER=this.effectiveProvider:this.hostProvider?window.MAP_PROVIDER=this.hostProvider:"MAP_PROVIDER"in window&&delete window.MAP_PROVIDER)},clearToken(){this.tokenDraft="",this.urlDraft="",this.tokenErr="",this.userTk="",this.userTokenUrl="",this.fetchedTk="",_t(Ao,""),_t(Oo,""),this.publishToken(),this.remountPanes()},publishToken(){typeof window>"u"||(this.effectiveTk?(ji(this.effectiveTk),window.MAP_TOKEN!==this.effectiveTk&&(window.MAP_TOKEN=this.effectiveTk)):Pd())},remountPanes(){for(const t of this.rows)t.mounted&&this.releaseRow(t);const e=this.active;e&&this.$nextTick(()=>{this.activeKey===e.key&&this.mountElement(e)})},tr(e,t){const o=(this.locale||"en").split("-")[0];let n=(Fo[this.locale]||{})[e]||(Fo[o]||{})[e]||(Fo.en||{})[e]||e;if(t)for(const s in t)n=n.split("{"+s+"}").join(String(t[s]));return n},resolveRef(e,t){return t&&this.rows.find(o=>o.key===t+"/"+e)||this.rows.find(o=>o.key===e)||this.rows.find(o=>o.tag===e)||this.rows.find(o=>o.bundle===e)||null},setSlot(e,t){t&&(this._slots=Object.assign(this._slots||{},{[e]:t}))},initialLocale(){let e=this.profileConfig;if(typeof e=="string")try{e=e?JSON.parse(e):{}}catch{e={}}let t="";try{const n=new URLSearchParams(window.location.search);t=n.get("lang")||n.get("locale")||""}catch{}const o=e&&(e.locale||e.lang)||t;return o?Fn(o):Ld()},paneConfig(e,t){const o={profile:e.profile,instanceId:"ps-"+e.key.replace(/\//g,"-"),locale:t};this.effectiveTk&&(o.tk=this.effectiveTk);const n=this.userTokenUrl||this.tokenUrl||this.cfg.tokenUrl;return n&&(o.tokenUrl=n),this.effectiveProvider&&(o.provider=this.effectiveProvider),this.base&&(o.treeBase=this.base),o},setLocale(e){this.locale=e,this.localeOpen=!1,Nd(e);try{for(const t of this.rows){if(!t.mounted)continue;const o=this._slots&&this._slots[t.key],n=o&&o.firstElementChild;n&&n.setAttribute&&n.setAttribute("profile-config",JSON.stringify(this.paneConfig(t,e)))}}catch{}},resolve(e){const t=String(e);if(/^(https?:)?\/\//.test(t)||t.startsWith("/"))return t;const o=t.replace(/^\.\//,"");return this.base?this.base.replace(/\/+$/,"")+"/"+o:"../"+o},loadManifest(){const e=o=>{this.manifestBundles=o&&o.bundles||[],this.rows=this.rowsFromManifest(o),this.setupWidgets(),this.route()},t=typeof window<"u"&&window.__psBaked||null;if(typeof fetch=="function"&&typeof location<"u"&&location.protocol!=="file:"){const o=this.base?this.resolve("manifest.json"):"../manifest.json";fetch(o,{cache:"no-cache"}).then(n=>n.ok?n.json():null).then(n=>e(n||t||{bundles:[]})).catch(()=>e(t||{bundles:[]}))}else e(t||{bundles:[]})},rowsFromManifest(e){const t=[];for(const o of e.bundles||[])if(!(o.bundle==="plugin-studio"||Yi.has(o.bundle)))for(const n of o.profiles||[]){const s=o.elements&&o.elements.length?o.elements:null,i=(n.element&&(!s||s.includes(n.element))?n.element:null)||s&&s[0]||n.element||o.bundle,l=Td(n.type||"single"),a=Gi.has(i)||Gi.has(o.bundle)||n.heavy===!0;t.push({key:o.bundle+"/"+n.profile,bundle:o.bundle,stage:o.stage==="production"?"production":"experimental",label:Od(o.bundle,n),profile:n.profile,tag:i,cap:l,icon:In[l]||"embed",description:n.description||"",widget:n.widget&&["bottom-right","bottom-left","top-right","top-left"].includes(n.widget.corner)?n.widget.corner:"",heavy:a,bundleJs:o.scriptUrl||o.bundle+"/"+o.bundle+".js",embed:n.embed&&n.embed.script||"",mounted:!1,state:"idle",error:""})}return t.sort((o,n)=>n.cap-o.cap||o.bundle.localeCompare(n.bundle)||o.label.localeCompare(n.label)),t},route(){const e=(typeof location<"u"&&location.hash||"").replace(/^#\/?/,"");if(e&&this.rows.some(o=>o.key===e)){this.select(e);return}const t=this.readLastTab();if(t&&this.rows.some(o=>o.key===t)){this.select(t);return}this.rows.length&&this.select(this.rows[0].key)},storageKey(){return"dx-studio-tab:"+(typeof location<"u"&&location.pathname||"")},readLastTab(){try{return window.localStorage.getItem(this.storageKey())||""}catch{return""}},writeLastTab(e){try{window.localStorage.setItem(this.storageKey(),e)}catch{}},select(e){if(!this.rows.some(s=>s.key===e))return;const t=this.rows.find(s=>s.key===e);if(t&&t.widget){this.openWidget(t,!0);return}const o=this.activeKey;if(this.activeKey=e,this.embedOpen=!1,o&&o!==e){const s=this.rows.find(i=>i.key===o);s&&s.heavy&&s.mounted&&this.releaseRow(s)}const n=this.rows.find(s=>s.key===e);n&&(this.writeLastTab(e),n.mounted||this.$nextTick(()=>{this.activeKey===n.key&&this.mountElement(n)}))},releaseRow(e){try{const t=this._slots&&this._slots[e.key];t&&(t.innerHTML="")}catch{}this._slots&&delete this._slots[e.key],e.mounted=!1,e.state="idle",e.error=""},widgetStore(){return window.__doxaStudioWidgets||(window.__doxaStudioWidgets={hosts:{},els:{}}),window.__doxaStudioWidgets},widgetHost(e){const t=this.widgetStore();if(!document.getElementById("studio-widget-css")){const n=document.createElement("style");n.id="studio-widget-css",n.textContent=Fd,document.head.appendChild(n)}if(t.hosts[e]&&t.hosts[e].isConnected)return t.hosts[e];const o=document.createElement("div");return o.setAttribute("data-studio-widgets",e),document.body.appendChild(o),t.hosts[e]=o,o},setupWidgets(){for(const e of this.rows.filter(t=>t.widget)){const t=this.widgetStore(),o=this.widgetHost(e.widget);let n=o.querySelector(`[data-widget="${e.key}"]`);if(!n){n=document.createElement("div"),n.setAttribute("data-widget",e.key);const i=document.createElement("div");i.setAttribute("data-widget-panel","");const l=document.createElement("button");l.type="button",l.setAttribute("data-widget-bubble","");const a="widget:"+e.key,r=this.tr(a);l.setAttribute("aria-label",r!==a?r:e.label),l.title=l.getAttribute("aria-label"),l.setAttribute("aria-expanded","false"),l.innerHTML=Id,l.querySelector("[data-wb-text]").textContent=l.getAttribute("aria-label"),l.addEventListener("click",()=>this.openWidget(e,!i.hasAttribute("data-open"))),n.appendChild(i),n.appendChild(l),o.appendChild(n)}t.els[e.key]&&!n.querySelector(e.tag)&&n.querySelector("[data-widget-panel]").appendChild(t.els[e.key]);let s=!1;try{s=localStorage.getItem("plugin-studio:widget-open:"+e.key)==="1"}catch{}s&&this.openWidget(e,!0)}},openWidget(e,t){const n=this.widgetHost(e.widget).querySelector(`[data-widget="${e.key}"]`);if(!n){this.setupWidgets();return}const s=n.querySelector("[data-widget-panel]"),i=n.querySelector("[data-widget-bubble]");t?s.setAttribute("data-open",""):s.removeAttribute("data-open"),i.setAttribute("aria-expanded",t?"true":"false");try{localStorage.setItem("plugin-studio:widget-open:"+e.key,t?"1":"0")}catch{}const l=this.widgetStore();!t||l.els[e.key]||Tn(this.resolve(e.bundleJs)).then(()=>Ui(e.tag)).then(()=>{if(l.els[e.key])return;const a=document.createElement(e.tag);a.setAttribute("profile-config",JSON.stringify(this.paneConfig(e,this.locale))),a.setAttribute("variant","widget"),this.base&&a.setAttribute("tree-base",this.base.replace(/\/+$/,"")),a.style.cssText="display:block;position:absolute;inset:0;width:100%;height:100%;overflow-y:auto;overscroll-behavior:contain;";const r=n.querySelector("[data-widget-bubble]"),p=r.querySelector("[data-wb-text]");a.addEventListener("recording",d=>{const f=!!(Array.isArray(d.detail)?d.detail[0]:d.detail);r.setAttribute("data-listening",f?"true":"false"),f?p.textContent="":(r.setAttribute("data-speaking","false"),p.textContent=r.getAttribute("aria-label"))}),a.addEventListener("activity",d=>{const f=(Array.isArray(d.detail)?d.detail[0]:d.detail)||{};if(r.getAttribute("data-listening")!=="true")return;r.setAttribute("data-speaking",f.speaking?"true":"false");const v=f.words||"";p.textContent=v.length>34?"…"+v.slice(-33):v}),l.els[e.key]=a,s.appendChild(a)}).catch(a=>{s.textContent=a&&a.message||String(a)})},mountElement(e){e.mounted=!0,e.state="loading";const t=this.resolve(e.bundleJs);Tn(t).then(()=>Ui(e.tag)).then(()=>{try{if(e.heavy&&this.activeKey!==e.key){e.mounted=!1,e.state="idle";return}const o=this._slots&&this._slots[e.key];if(!o){e.state="error",e.error="no slot";return}o.innerHTML="";const n=document.createElement(e.tag);n.setAttribute("profile-config",JSON.stringify(this.paneConfig(e,this.locale))),this.base&&n.setAttribute("tree-base",this.base.replace(/\/+$/,"")),n.style.cssText="display:block;position:absolute;inset:0;width:100%;height:100%;",o.appendChild(n),e.state="ready"}catch(o){e.state="error",e.error="mount failed: "+(o&&o.message||String(o))}}).catch(o=>{e.state="error",e.error=o&&o.message||String(o)})},copyText(e,t){const o=()=>{const n=t.textContent;t.textContent=this.tr("copied"),setTimeout(()=>{t.textContent=n},1200)};if(navigator.clipboard&&navigator.clipboard.writeText)navigator.clipboard.writeText(e).then(o,()=>{});else try{const n=document.createElement("textarea");n.value=e,document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n),o()}catch{}}}}),Dd={class:"ps-count"},Ud={class:"ps-locale"},Rd=["aria-expanded","aria-label"],Wd={class:"ps-flag"},zd={class:"ps-locale-name"},jd={key:0,class:"ps-locale-menu",role:"listbox"},Bd=["aria-selected"],Kd=["onClick"],Vd={class:"ps-flag"},qd={class:"ps-locale-name"},Gd={class:"ps-locale-en"},Yd={class:"ps-locale ps-engine"},Jd=["aria-expanded","aria-label","title"],Xd={class:"ps-locale-name"},Zd=["aria-label"],Qd=["aria-selected"],ep=["onClick"],tp={class:"ps-locale-name"},op={class:"ps-locale-en"},np={class:"ps-token"},sp=["aria-expanded","title"],ip={class:"ps-locale-name"},lp={class:"ps-token-head"},ap={class:"ps-token-label"},rp={class:"ps-token-label"},cp={class:"ps-token-row"},dp=["disabled"],pp={class:"ps-token-note"},up=["title","aria-label"],fp={class:"ps-locale-name"},gp={key:0,class:"ps-toolbar"},hp={class:"ps-bar"},$p={class:"ps-bar-t"},bp={class:"ps-bar-sub"},mp={key:0},_p=["aria-expanded"],vp={key:0,class:"ps-embed"},xp=["value"],kp=["title","aria-label"],yp={class:"ps-stage"},wp=["hidden"],Sp={key:0,class:"ps-hint"},Lp={key:1,class:"ps-hint err"},Np={key:0,class:"ps-hint"};function Pp(e,t,o,n,s,i){const l=Fs("StudioTree"),a=Fs("VerticalTabsLayout");return L(),ko(a,{title:e.heading||e.tr("title"),dir:e.uiDir,"nav-label":e.tr("navLabel"),labels:{toggleList:e.tr("toggleList"),openViews:e.tr("openViews"),expandList:e.tr("expandList"),collapseList:e.tr("collapseList"),collapse:e.tr("collapse")},header:!e.headerHidden,active:e.activeKey,"onUpdate:active":e.select},{rail:ut(({collapsed:r,expand:p,pick:d})=>[me(l,{sections:e.treeSections,active:e.activeKey,collapsed:r,expand:p,pick:d,strings:{filterPlaceholder:e.tr("filterPlaceholder"),collapseAll:e.tr("collapseAll"),noMatch:e.tr("noMatch"),treeLabel:e.tr("navLabel"),openSection:e.tr("openSection"),part:e.tr("part")}},null,8,["sections","active","collapsed","expand","pick","strings"])]),brand:ut(()=>[...t[11]||(t[11]=[_("span",{class:"ps-logo","aria-hidden":"true"},[_("svg",{viewBox:"0 0 24 24",width:"22",height:"22",fill:"none",stroke:"#92b195","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},[_("path",{d:"M10 3v3M14 3v3M7 6h10v5a5 5 0 0 1-10 0V6Z"}),_("path",{d:"M12 16v5"})])],-1)])]),meta:ut(()=>[_("span",Dd,P(e.countLabel),1),_("span",Ud,[_("button",{type:"button",class:"ps-locale-btn","aria-expanded":String(e.localeOpen),"aria-label":e.tr("changeLanguage"),onClick:t[0]||(t[0]=r=>{e.localeOpen=!e.localeOpen,e.engineOpen=!1,e.settingsOpen=!1})},[_("span",Wd,P(e.activeLang.flag),1),_("span",zd,P(e.activeLang.nativeName),1),t[12]||(t[12]=_("span",{class:"ps-dots","aria-hidden":"true"},"⋮",-1))],8,Rd),e.localeOpen?(L(),N("ul",jd,[(L(!0),N(G,null,Pe(e.switcherLangs,r=>(L(),N("li",{key:r.code,role:"option","aria-selected":String(r.code===e.locale)},[_("button",{type:"button",class:ge(["ps-locale-opt",{active:r.code===e.locale}]),onClick:p=>e.setLocale(r.code)},[_("span",Vd,P(r.flag),1),_("span",qd,P(r.nativeName),1),_("span",Gd,P(r.name),1)],10,Kd)],8,Bd))),128))])):Y("",!0)]),_("span",Yd,[_("button",{type:"button",class:"ps-locale-btn","aria-expanded":String(e.engineOpen),"aria-label":e.tr("mapEngine"),title:e.tr("mapEngine"),onClick:t[1]||(t[1]=r=>{e.engineOpen=!e.engineOpen,e.localeOpen=!1,e.settingsOpen=!1})},[t[13]||(t[13]=_("span",{"aria-hidden":"true"},"🗺",-1)),_("span",Xd,P(e.engineLabel),1),t[14]||(t[14]=_("span",{class:"ps-dots","aria-hidden":"true"},"⋮",-1))],8,Jd),e.engineOpen?(L(),N("ul",{key:0,class:"ps-locale-menu",role:"listbox","aria-label":e.tr("mapEngine")},[(L(!0),N(G,null,Pe(e.engines,r=>(L(),N("li",{key:r.id||"default",role:"option","aria-selected":String(r.id===e.userProvider)},[_("button",{type:"button",class:ge(["ps-locale-opt",{active:r.id===e.userProvider}]),onClick:p=>e.setProvider(r.id)},[_("span",tp,P(r.label),1),_("span",op,P(r.note),1)],10,ep)],8,Qd))),128))],8,Zd)):Y("",!0)]),_("span",np,[_("button",{type:"button",class:"ps-locale-btn ps-token-btn","aria-expanded":String(e.settingsOpen),title:e.tokenStatus,onClick:t[2]||(t[2]=r=>{e.settingsOpen=!e.settingsOpen,e.localeOpen=!1,e.engineOpen=!1})},[_("span",ip,P(e.tr("mapboxToken")),1),_("span",{class:ge(["ps-token-dot","is-"+e.tokenSource]),"aria-hidden":"true"},null,2)],8,sp),e.settingsOpen?(L(),N("form",{key:0,class:"ps-token-panel",onSubmit:t[6]||(t[6]=Ti((...r)=>e.applyToken&&e.applyToken(...r),["prevent"]))},[_("p",lp,P(e.tr("mapToken")),1),_("label",ap,[Ke(P(e.tr("tokenPaste"))+" ",1),ft(_("input",{class:"ps-token-input","onUpdate:modelValue":t[3]||(t[3]=r=>e.tokenDraft=r),placeholder:"pk.eyJ…",autocomplete:"off",spellcheck:"false"},null,512),[[En,e.tokenDraft,void 0,{trim:!0}]])]),_("label",rp,[Ke(P(e.tr("tokenUrlLabel"))+" ",1),ft(_("input",{class:"ps-token-input","onUpdate:modelValue":t[4]||(t[4]=r=>e.urlDraft=r),type:"url",placeholder:"https://doxa.life/api/maps/token",autocomplete:"off",spellcheck:"false"},null,512),[[En,e.urlDraft,void 0,{trim:!0}]])]),_("div",cp,[_("button",{type:"submit",class:"ps-token-apply",disabled:e.tokenBusy},P(e.tr("tokenApply")),9,dp),_("button",{type:"button",class:"ps-token-clear",onClick:t[5]||(t[5]=(...r)=>e.clearToken&&e.clearToken(...r))},P(e.tr("tokenClear")),1)]),_("p",{class:ge(["ps-token-status",{err:!!e.tokenErr}]),role:"status"},P(e.tokenErr||e.tokenStatus),3),_("p",pp,P(e.tr("tokenStoredHere")),1)],32)):Y("",!0)]),_("button",{type:"button",class:"ps-locale-btn ps-hide-header",title:e.tr("hideHeader"),"aria-label":e.tr("hideHeader"),onClick:t[7]||(t[7]=r=>e.setHeaderHidden(!0))},[t[15]||(t[15]=_("span",{"aria-hidden":"true"},"⌃",-1)),_("span",fp,P(e.tr("hideHeader")),1)],8,up)]),toolbar:ut(()=>[e.active?(L(),N("div",gp,[_("div",hp,[_("div",$p,[_("b",null,P(e.active.label),1),_("span",bp,[Ke(P(e.active.bundle)+" · <"+P(e.active.tag)+">",1),e.active.description?(L(),N("span",mp," · "+P(e.active.description),1)):Y("",!0)])]),e.active.embed?(L(),N("button",{key:0,type:"button",class:"ps-btn","aria-expanded":String(e.embedOpen),onClick:t[8]||(t[8]=r=>e.embedOpen=!e.embedOpen)},P(e.tr("copyEmbed")),9,_p)):Y("",!0)]),e.embedOpen&&e.active.embed?(L(),N("div",vp,[_("label",null,[Ke(P(e.tr("scriptEmbed"))+" ",1),_("button",{type:"button",class:"ps-btn",onClick:t[9]||(t[9]=r=>e.copyText(e.active.embed,r.target))},P(e.tr("copy")),1)]),_("textarea",{readonly:"",value:e.active.embed},null,8,xp)])):Y("",!0)])):Y("",!0)]),default:ut(()=>[e.headerHidden?(L(),N("button",{key:0,type:"button",class:"ps-show-header",title:e.tr("showHeader"),"aria-label":e.tr("showHeader"),onClick:t[10]||(t[10]=r=>e.setHeaderHidden(!1))},[t[16]||(t[16]=_("span",{"aria-hidden":"true"},"⌄",-1)),Ke(" "+P(e.tr("showHeader")),1)],8,kp)):Y("",!0),_("div",yp,[(L(!0),N(G,null,Pe(e.flatRows,r=>ft((L(),N("section",{key:r.key,class:"ps-pane",hidden:r.key!==e.activeKey},[!r.heavy||r.key===e.activeKey?(L(),N(G,{key:0},[_("div",{class:"ps-slot",ref_for:!0,ref:p=>e.setSlot(r.key,p)},null,512),r.state==="loading"?(L(),N("div",Sp,P(e.tr("loading",{name:r.label})),1)):r.state==="error"?(L(),N("div",Lp,[Ke(P(e.tr("couldNotLoad",{name:r.label})),1),t[17]||(t[17]=_("br",null,null,-1)),_("small",null,P(r.error),1)])):Y("",!0)],64)):Y("",!0)],8,wp)),[[Sn,r.key===e.activeKey]])),128)),e.activeKey?Y("",!0):(L(),N("div",Np,P(e.tr("chooseElement")),1))])]),_:1},8,["title","dir","nav-label","labels","header","active","onUpdate:active"])}const Cp=An(Hd,[["render",Pp],["styles",[Cd]]]),Ep=Gr(),Mp=vr(Cp,{configureApp(e){e.provide("psTreeBase",Ep)}});typeof customElements<"u"&&!customElements.get("plugin-studio")&&customElements.define("plugin-studio",Mp)})();