diff --git a/htdocs/assets/index.js b/htdocs/assets/index.js index 85fae368..440ff9cd 100644 --- a/htdocs/assets/index.js +++ b/htdocs/assets/index.js @@ -7,25 +7,25 @@ * @vue/reactivity v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Sn;class kp{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Sn,!e&&Sn&&(this.index=(Sn.scopes||(Sn.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,n;if(this.scopes)for(e=0,n=this.scopes.length;e0)return;if(sa){let e=sa;for(sa=void 0;e;){const n=e.next;e.next=void 0,e.flags&=-9,e=n}}let t;for(;na;){let e=na;for(na=void 0;e;){const n=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(s){t||(t=s)}e=n}}if(t)throw t}function r_(t){for(let e=t.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function o_(t){let e,n=t.depsTail,s=n;for(;s;){const i=s.prevDep;s.version===-1?(s===n&&(n=i),Op(s),y3(s)):e=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=i}t.deps=e,t.depsTail=n}function mf(t){for(let e=t.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&(a_(e.dep.computed)||e.dep.version!==e.version))return!0;return!!t._dirty}function a_(t){if(t.flags&4&&!(t.flags&16)||(t.flags&=-17,t.globalVersion===Ea))return;t.globalVersion=Ea;const e=t.dep;if(t.flags|=2,e.version>0&&!t.isSSR&&t.deps&&!mf(t)){t.flags&=-3;return}const n=Ee,s=Ss;Ee=t,Ss=!0;try{r_(t);const i=t.fn(t._value);(e.version===0||cn(i,t._value))&&(t._value=i,e.version++)}catch(i){throw e.version++,i}finally{Ee=n,Ss=s,o_(t),t.flags&=-3}}function Op(t,e=!1){const{dep:n,prevSub:s,nextSub:i}=t;if(s&&(s.nextSub=i,t.prevSub=void 0),i&&(i.prevSub=s,t.nextSub=void 0),n.subs===t&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let r=n.computed.deps;r;r=r.nextDep)Op(r,!0)}!e&&!--n.sc&&n.map&&n.map.delete(n.key)}function y3(t){const{prevDep:e,nextDep:n}=t;e&&(e.nextDep=n,t.prevDep=void 0),n&&(n.prevDep=e,t.nextDep=void 0)}function _3(t,e){t.effect instanceof Sa&&(t=t.effect.fn);const n=new Sa(t);e&&Jt(n,e);try{n.run()}catch(i){throw n.stop(),i}const s=n.run.bind(n);return s.effect=n,s}function v3(t){t.effect.stop()}let Ss=!0;const l_=[];function Gi(){l_.push(Ss),Ss=!1}function Ki(){const t=l_.pop();Ss=t===void 0?!0:t}function am(t){const{cleanup:e}=t;if(t.cleanup=void 0,e){const n=Ee;Ee=void 0;try{e()}finally{Ee=n}}}let Ea=0;class S3{constructor(e,n){this.sub=e,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ou{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!Ee||!Ss||Ee===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==Ee)n=this.activeLink=new S3(Ee,this),Ee.deps?(n.prevDep=Ee.depsTail,Ee.depsTail.nextDep=n,Ee.depsTail=n):Ee.deps=Ee.depsTail=n,c_(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=Ee.depsTail,n.nextDep=void 0,Ee.depsTail.nextDep=n,Ee.depsTail=n,Ee.deps===n&&(Ee.deps=s)}return n}trigger(e){this.version++,Ea++,this.notify(e)}notify(e){xp();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Ap()}}}function c_(t){if(t.dep.sc++,t.sub.flags&4){const e=t.dep.computed;if(e&&!t.dep.subs){e.flags|=20;for(let s=e.deps;s;s=s.nextDep)c_(s)}const n=t.dep.subs;n!==t&&(t.prevSub=n,n&&(n.nextSub=t)),t.dep.subs=t}}const hc=new WeakMap,hr=Symbol(""),gf=Symbol(""),wa=Symbol("");function un(t,e,n){if(Ss&&Ee){let s=hc.get(t);s||hc.set(t,s=new Map);let i=s.get(n);i||(s.set(n,i=new ou),i.map=s,i.key=n),i.track()}}function Ys(t,e,n,s,i,r){const o=hc.get(t);if(!o){Ea++;return}const a=l=>{l&&l.trigger()};if(xp(),e==="clear")o.forEach(a);else{const l=bt(t),c=l&&su(n);if(l&&n==="length"){const u=Number(s);o.forEach((d,f)=>{(f==="length"||f===wa||!Tn(f)&&f>=u)&&a(d)})}else switch((n!==void 0||o.has(void 0))&&a(o.get(n)),c&&a(o.get(wa)),e){case"add":l?c&&a(o.get("length")):(a(o.get(hr)),dr(t)&&a(o.get(gf)));break;case"delete":l||(a(o.get(hr)),dr(t)&&a(o.get(gf)));break;case"set":dr(t)&&a(o.get(hr));break}}Ap()}function E3(t,e){const n=hc.get(t);return n&&n.get(e)}function Rr(t){const e=ee(t);return e===t?e:(un(e,"iterate",wa),zn(t)?e:e.map(dn))}function au(t){return un(t=ee(t),"iterate",wa),t}const w3={__proto__:null,[Symbol.iterator](){return gd(this,Symbol.iterator,dn)},concat(...t){return Rr(this).concat(...t.map(e=>bt(e)?Rr(e):e))},entries(){return gd(this,"entries",t=>(t[1]=dn(t[1]),t))},every(t,e){return Ws(this,"every",t,e,void 0,arguments)},filter(t,e){return Ws(this,"filter",t,e,n=>n.map(dn),arguments)},find(t,e){return Ws(this,"find",t,e,dn,arguments)},findIndex(t,e){return Ws(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return Ws(this,"findLast",t,e,dn,arguments)},findLastIndex(t,e){return Ws(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return Ws(this,"forEach",t,e,void 0,arguments)},includes(...t){return bd(this,"includes",t)},indexOf(...t){return bd(this,"indexOf",t)},join(t){return Rr(this).join(t)},lastIndexOf(...t){return bd(this,"lastIndexOf",t)},map(t,e){return Ws(this,"map",t,e,void 0,arguments)},pop(){return Mo(this,"pop")},push(...t){return Mo(this,"push",t)},reduce(t,...e){return lm(this,"reduce",t,e)},reduceRight(t,...e){return lm(this,"reduceRight",t,e)},shift(){return Mo(this,"shift")},some(t,e){return Ws(this,"some",t,e,void 0,arguments)},splice(...t){return Mo(this,"splice",t)},toReversed(){return Rr(this).toReversed()},toSorted(t){return Rr(this).toSorted(t)},toSpliced(...t){return Rr(this).toSpliced(...t)},unshift(...t){return Mo(this,"unshift",t)},values(){return gd(this,"values",dn)}};function gd(t,e,n){const s=au(t),i=s[e]();return s!==t&&!zn(t)&&(i._next=i.next,i.next=()=>{const r=i._next();return r.value&&(r.value=n(r.value)),r}),i}const C3=Array.prototype;function Ws(t,e,n,s,i,r){const o=au(t),a=o!==t&&!zn(t),l=o[e];if(l!==C3[e]){const d=l.apply(t,r);return a?dn(d):d}let c=n;o!==t&&(a?c=function(d,f){return n.call(this,dn(d),f,t)}:n.length>2&&(c=function(d,f){return n.call(this,d,f,t)}));const u=l.call(o,c,s);return a&&i?i(u):u}function lm(t,e,n,s){const i=au(t);let r=n;return i!==t&&(zn(t)?n.length>3&&(r=function(o,a,l){return n.call(this,o,a,l,t)}):r=function(o,a,l){return n.call(this,o,dn(a),l,t)}),i[e](r,...s)}function bd(t,e,n){const s=ee(t);un(s,"iterate",wa);const i=s[e](...n);return(i===-1||i===!1)&&uu(n[0])?(n[0]=ee(n[0]),s[e](...n)):i}function Mo(t,e,n=[]){Gi(),xp();const s=ee(t)[e].apply(t,n);return Ap(),Ki(),s}const k3=en("__proto__,__v_isRef,__isVue"),u_=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(Tn));function T3(t){Tn(t)||(t=String(t));const e=ee(this);return un(e,"has",t),e.hasOwnProperty(t)}class d_{constructor(e=!1,n=!1){this._isReadonly=e,this._isShallow=n}get(e,n,s){if(n==="__v_skip")return e.__v_skip;const i=this._isReadonly,r=this._isShallow;if(n==="__v_isReactive")return!i;if(n==="__v_isReadonly")return i;if(n==="__v_isShallow")return r;if(n==="__v_raw")return s===(i?r?b_:g_:r?m_:h_).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(s)?e:void 0;const o=bt(e);if(!i){let l;if(o&&(l=w3[n]))return l;if(n==="hasOwnProperty")return T3}const a=Reflect.get(e,n,Ae(e)?e:s);return(Tn(n)?u_.has(n):k3(n))||(i||un(e,"get",n),r)?a:Ae(a)?o&&su(n)?a:a.value:de(a)?i?Np(a):To(a):a}}class f_ extends d_{constructor(e=!1){super(!1,e)}set(e,n,s,i){let r=e[n];if(!this._isShallow){const l=Ui(r);if(!zn(s)&&!Ui(s)&&(r=ee(r),s=ee(s)),!bt(e)&&Ae(r)&&!Ae(s))return l?!1:(r.value=s,!0)}const o=bt(e)&&su(n)?Number(n)t,fl=t=>Reflect.getPrototypeOf(t);function N3(t,e,n){return function(...s){const i=this.__v_raw,r=ee(i),o=dr(r),a=t==="entries"||t===Symbol.iterator&&o,l=t==="keys"&&o,c=i[t](...s),u=n?bf:e?yf:dn;return!e&&un(r,"iterate",l?gf:hr),{next(){const{value:d,done:f}=c.next();return f?{value:d,done:f}:{value:a?[u(d[0]),u(d[1])]:u(d),done:f}},[Symbol.iterator](){return this}}}}function pl(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function P3(t,e){const n={get(i){const r=this.__v_raw,o=ee(r),a=ee(i);t||(cn(i,a)&&un(o,"get",i),un(o,"get",a));const{has:l}=fl(o),c=e?bf:t?yf:dn;if(l.call(o,i))return c(r.get(i));if(l.call(o,a))return c(r.get(a));r!==o&&r.get(i)},get size(){const i=this.__v_raw;return!t&&un(ee(i),"iterate",hr),Reflect.get(i,"size",i)},has(i){const r=this.__v_raw,o=ee(r),a=ee(i);return t||(cn(i,a)&&un(o,"has",i),un(o,"has",a)),i===a?r.has(i):r.has(i)||r.has(a)},forEach(i,r){const o=this,a=o.__v_raw,l=ee(a),c=e?bf:t?yf:dn;return!t&&un(l,"iterate",hr),a.forEach((u,d)=>i.call(r,c(u),c(d),o))}};return Jt(n,t?{add:pl("add"),set:pl("set"),delete:pl("delete"),clear:pl("clear")}:{add(i){!e&&!zn(i)&&!Ui(i)&&(i=ee(i));const r=ee(this);return fl(r).has.call(r,i)||(r.add(i),Ys(r,"add",i,i)),this},set(i,r){!e&&!zn(r)&&!Ui(r)&&(r=ee(r));const o=ee(this),{has:a,get:l}=fl(o);let c=a.call(o,i);c||(i=ee(i),c=a.call(o,i));const u=l.call(o,i);return o.set(i,r),c?cn(r,u)&&Ys(o,"set",i,r):Ys(o,"add",i,r),this},delete(i){const r=ee(this),{has:o,get:a}=fl(r);let l=o.call(r,i);l||(i=ee(i),l=o.call(r,i)),a&&a.call(r,i);const c=r.delete(i);return l&&Ys(r,"delete",i,void 0),c},clear(){const i=ee(this),r=i.size!==0,o=i.clear();return r&&Ys(i,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(i=>{n[i]=N3(i,t,e)}),n}function lu(t,e){const n=P3(t,e);return(s,i,r)=>i==="__v_isReactive"?!t:i==="__v_isReadonly"?t:i==="__v_raw"?s:Reflect.get(ae(n,i)&&i in s?n:s,i,r)}const $3={get:lu(!1,!1)},R3={get:lu(!1,!0)},L3={get:lu(!0,!1)},D3={get:lu(!0,!0)},h_=new WeakMap,m_=new WeakMap,g_=new WeakMap,b_=new WeakMap;function M3(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function F3(t){return t.__v_skip||!Object.isExtensible(t)?0:M3(Wy(t))}function To(t){return Ui(t)?t:cu(t,!1,x3,$3,h_)}function Ip(t){return cu(t,!1,O3,R3,m_)}function Np(t){return cu(t,!0,A3,L3,g_)}function V3(t){return cu(t,!0,I3,D3,b_)}function cu(t,e,n,s,i){if(!de(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const r=i.get(t);if(r)return r;const o=F3(t);if(o===0)return t;const a=new Proxy(t,o===2?s:n);return i.set(t,a),a}function Fs(t){return Ui(t)?Fs(t.__v_raw):!!(t&&t.__v_isReactive)}function Ui(t){return!!(t&&t.__v_isReadonly)}function zn(t){return!!(t&&t.__v_isShallow)}function uu(t){return t?!!t.__v_raw:!1}function ee(t){const e=t&&t.__v_raw;return e?ee(e):t}function du(t){return!ae(t,"__v_skip")&&Object.isExtensible(t)&&Sp(t,"__v_skip",!0),t}const dn=t=>de(t)?To(t):t,yf=t=>de(t)?Np(t):t;function Ae(t){return t?t.__v_isRef===!0:!1}function ss(t){return y_(t,!1)}function fu(t){return y_(t,!0)}function y_(t,e){return Ae(t)?t:new H3(t,e)}class H3{constructor(e,n){this.dep=new ou,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?e:ee(e),this._value=n?e:dn(e),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(e){const n=this._rawValue,s=this.__v_isShallow||zn(e)||Ui(e);e=s?e:ee(e),cn(e,n)&&(this._rawValue=e,this._value=s?e:dn(e),this.dep.trigger())}}function U3(t){t.dep&&t.dep.trigger()}function Ln(t){return Ae(t)?t.value:t}function j3(t){return Ot(t)?t():Ln(t)}const B3={get:(t,e,n)=>e==="__v_raw"?t:Ln(Reflect.get(t,e,n)),set:(t,e,n,s)=>{const i=t[e];return Ae(i)&&!Ae(n)?(i.value=n,!0):Reflect.set(t,e,n,s)}};function Pp(t){return Fs(t)?t:new Proxy(t,B3)}class W3{constructor(e){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new ou,{get:s,set:i}=e(n.track.bind(n),n.trigger.bind(n));this._get=s,this._set=i}get value(){return this._value=this._get()}set value(e){this._set(e)}}function __(t){return new W3(t)}function v_(t){const e=bt(t)?new Array(t.length):{};for(const n in t)e[n]=S_(t,n);return e}class z3{constructor(e,n,s){this._object=e,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const e=this._object[this._key];return this._value=e===void 0?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return E3(ee(this._object),this._key)}}class q3{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function G3(t,e,n){return Ae(t)?t:Ot(t)?new q3(t):de(t)&&arguments.length>1?S_(t,e,n):ss(t)}function S_(t,e,n){const s=t[e];return Ae(s)?s:new z3(t,e,n)}class K3{constructor(e,n,s){this.fn=e,this.setter=n,this._value=void 0,this.dep=new ou(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ea-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&Ee!==this)return i_(this,!0),!0}get value(){const e=this.dep.track();return a_(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function X3(t,e,n=!1){let s,i;return Ot(t)?s=t:(s=t.get,i=t.set),new K3(s,i,n)}const Y3={GET:"get",HAS:"has",ITERATE:"iterate"},Z3={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},hl={},mc=new WeakMap;let Ti;function J3(){return Ti}function E_(t,e=!1,n=Ti){if(n){let s=mc.get(n);s||mc.set(n,s=[]),s.push(t)}}function Q3(t,e,n=Zt){const{immediate:s,deep:i,once:r,scheduler:o,augmentJob:a,call:l}=n,c=v=>i?v:zn(v)||i===!1||i===0?Zs(v,1):Zs(v);let u,d,f,p,h=!1,m=!1;if(Ae(t)?(d=()=>t.value,h=zn(t)):Fs(t)?(d=()=>c(t),h=!0):bt(t)?(m=!0,h=t.some(v=>Fs(v)||zn(v)),d=()=>t.map(v=>{if(Ae(v))return v.value;if(Fs(v))return c(v);if(Ot(v))return l?l(v,2):v()})):Ot(t)?e?d=l?()=>l(t,2):t:d=()=>{if(f){Gi();try{f()}finally{Ki()}}const v=Ti;Ti=u;try{return l?l(t,3,[p]):t(p)}finally{Ti=v}}:d=Qe,e&&i){const v=d,E=i===!0?1/0:i;d=()=>Zs(v(),E)}const _=Tp(),y=()=>{u.stop(),_&&_.active&&eu(_.effects,u)};if(r&&e){const v=e;e=(...E)=>{v(...E),y()}}let S=m?new Array(t.length).fill(hl):hl;const b=v=>{if(!(!(u.flags&1)||!u.dirty&&!v))if(e){const E=u.run();if(i||h||(m?E.some((w,P)=>cn(w,S[P])):cn(E,S))){f&&f();const w=Ti;Ti=u;try{const P=[E,S===hl?void 0:m&&S[0]===hl?[]:S,p];l?l(e,3,P):e(...P),S=E}finally{Ti=w}}}else u.run()};return a&&a(b),u=new Sa(d),u.scheduler=o?()=>o(b,!1):b,p=v=>E_(v,!1,u),f=u.onStop=()=>{const v=mc.get(u);if(v){if(l)l(v,4);else for(const E of v)E();mc.delete(u)}},e?s?b(!0):S=u.run():o?o(b.bind(null,!0),!0):u.run(),y.pause=u.pause.bind(u),y.resume=u.resume.bind(u),y.stop=y,y}function Zs(t,e=1/0,n){if(e<=0||!de(t)||t.__v_skip||(n=n||new Set,n.has(t)))return t;if(n.add(t),e--,Ae(t))Zs(t.value,e,n);else if(bt(t))for(let s=0;s{Zs(s,e,n)});else if(Wa(t)){for(const s in t)Zs(t[s],e,n);for(const s of Object.getOwnPropertySymbols(t))Object.prototype.propertyIsEnumerable.call(t,s)&&Zs(t[s],e,n)}return t}/** +**/let Sn;class kp{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Sn,!e&&Sn&&(this.index=(Sn.scopes||(Sn.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,n;if(this.scopes)for(e=0,n=this.scopes.length;e0)return;if(sa){let e=sa;for(sa=void 0;e;){const n=e.next;e.next=void 0,e.flags&=-9,e=n}}let t;for(;na;){let e=na;for(na=void 0;e;){const n=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(s){t||(t=s)}e=n}}if(t)throw t}function r_(t){for(let e=t.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function o_(t){let e,n=t.depsTail,s=n;for(;s;){const i=s.prevDep;s.version===-1?(s===n&&(n=i),Op(s),y3(s)):e=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=i}t.deps=e,t.depsTail=n}function mf(t){for(let e=t.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&(a_(e.dep.computed)||e.dep.version!==e.version))return!0;return!!t._dirty}function a_(t){if(t.flags&4&&!(t.flags&16)||(t.flags&=-17,t.globalVersion===Ea))return;t.globalVersion=Ea;const e=t.dep;if(t.flags|=2,e.version>0&&!t.isSSR&&t.deps&&!mf(t)){t.flags&=-3;return}const n=Ee,s=Ss;Ee=t,Ss=!0;try{r_(t);const i=t.fn(t._value);(e.version===0||cn(i,t._value))&&(t._value=i,e.version++)}catch(i){throw e.version++,i}finally{Ee=n,Ss=s,o_(t),t.flags&=-3}}function Op(t,e=!1){const{dep:n,prevSub:s,nextSub:i}=t;if(s&&(s.nextSub=i,t.prevSub=void 0),i&&(i.prevSub=s,t.nextSub=void 0),n.subs===t&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let r=n.computed.deps;r;r=r.nextDep)Op(r,!0)}!e&&!--n.sc&&n.map&&n.map.delete(n.key)}function y3(t){const{prevDep:e,nextDep:n}=t;e&&(e.nextDep=n,t.prevDep=void 0),n&&(n.prevDep=e,t.nextDep=void 0)}function _3(t,e){t.effect instanceof Sa&&(t=t.effect.fn);const n=new Sa(t);e&&Jt(n,e);try{n.run()}catch(i){throw n.stop(),i}const s=n.run.bind(n);return s.effect=n,s}function v3(t){t.effect.stop()}let Ss=!0;const l_=[];function Gi(){l_.push(Ss),Ss=!1}function Ki(){const t=l_.pop();Ss=t===void 0?!0:t}function am(t){const{cleanup:e}=t;if(t.cleanup=void 0,e){const n=Ee;Ee=void 0;try{e()}finally{Ee=n}}}let Ea=0;class S3{constructor(e,n){this.sub=e,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ou{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!Ee||!Ss||Ee===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==Ee)n=this.activeLink=new S3(Ee,this),Ee.deps?(n.prevDep=Ee.depsTail,Ee.depsTail.nextDep=n,Ee.depsTail=n):Ee.deps=Ee.depsTail=n,c_(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=Ee.depsTail,n.nextDep=void 0,Ee.depsTail.nextDep=n,Ee.depsTail=n,Ee.deps===n&&(Ee.deps=s)}return n}trigger(e){this.version++,Ea++,this.notify(e)}notify(e){xp();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Ap()}}}function c_(t){if(t.dep.sc++,t.sub.flags&4){const e=t.dep.computed;if(e&&!t.dep.subs){e.flags|=20;for(let s=e.deps;s;s=s.nextDep)c_(s)}const n=t.dep.subs;n!==t&&(t.prevSub=n,n&&(n.nextSub=t)),t.dep.subs=t}}const hc=new WeakMap,hr=Symbol(""),gf=Symbol(""),wa=Symbol("");function un(t,e,n){if(Ss&&Ee){let s=hc.get(t);s||hc.set(t,s=new Map);let i=s.get(n);i||(s.set(n,i=new ou),i.map=s,i.key=n),i.track()}}function Ys(t,e,n,s,i,r){const o=hc.get(t);if(!o){Ea++;return}const a=l=>{l&&l.trigger()};if(xp(),e==="clear")o.forEach(a);else{const l=bt(t),c=l&&su(n);if(l&&n==="length"){const u=Number(s);o.forEach((d,f)=>{(f==="length"||f===wa||!Tn(f)&&f>=u)&&a(d)})}else switch((n!==void 0||o.has(void 0))&&a(o.get(n)),c&&a(o.get(wa)),e){case"add":l?c&&a(o.get("length")):(a(o.get(hr)),dr(t)&&a(o.get(gf)));break;case"delete":l||(a(o.get(hr)),dr(t)&&a(o.get(gf)));break;case"set":dr(t)&&a(o.get(hr));break}}Ap()}function E3(t,e){const n=hc.get(t);return n&&n.get(e)}function Rr(t){const e=ee(t);return e===t?e:(un(e,"iterate",wa),zn(t)?e:e.map(dn))}function au(t){return un(t=ee(t),"iterate",wa),t}const w3={__proto__:null,[Symbol.iterator](){return gd(this,Symbol.iterator,dn)},concat(...t){return Rr(this).concat(...t.map(e=>bt(e)?Rr(e):e))},entries(){return gd(this,"entries",t=>(t[1]=dn(t[1]),t))},every(t,e){return Ws(this,"every",t,e,void 0,arguments)},filter(t,e){return Ws(this,"filter",t,e,n=>n.map(dn),arguments)},find(t,e){return Ws(this,"find",t,e,dn,arguments)},findIndex(t,e){return Ws(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return Ws(this,"findLast",t,e,dn,arguments)},findLastIndex(t,e){return Ws(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return Ws(this,"forEach",t,e,void 0,arguments)},includes(...t){return bd(this,"includes",t)},indexOf(...t){return bd(this,"indexOf",t)},join(t){return Rr(this).join(t)},lastIndexOf(...t){return bd(this,"lastIndexOf",t)},map(t,e){return Ws(this,"map",t,e,void 0,arguments)},pop(){return Mo(this,"pop")},push(...t){return Mo(this,"push",t)},reduce(t,...e){return lm(this,"reduce",t,e)},reduceRight(t,...e){return lm(this,"reduceRight",t,e)},shift(){return Mo(this,"shift")},some(t,e){return Ws(this,"some",t,e,void 0,arguments)},splice(...t){return Mo(this,"splice",t)},toReversed(){return Rr(this).toReversed()},toSorted(t){return Rr(this).toSorted(t)},toSpliced(...t){return Rr(this).toSpliced(...t)},unshift(...t){return Mo(this,"unshift",t)},values(){return gd(this,"values",dn)}};function gd(t,e,n){const s=au(t),i=s[e]();return s!==t&&!zn(t)&&(i._next=i.next,i.next=()=>{const r=i._next();return r.value&&(r.value=n(r.value)),r}),i}const C3=Array.prototype;function Ws(t,e,n,s,i,r){const o=au(t),a=o!==t&&!zn(t),l=o[e];if(l!==C3[e]){const d=l.apply(t,r);return a?dn(d):d}let c=n;o!==t&&(a?c=function(d,f){return n.call(this,dn(d),f,t)}:n.length>2&&(c=function(d,f){return n.call(this,d,f,t)}));const u=l.call(o,c,s);return a&&i?i(u):u}function lm(t,e,n,s){const i=au(t);let r=n;return i!==t&&(zn(t)?n.length>3&&(r=function(o,a,l){return n.call(this,o,a,l,t)}):r=function(o,a,l){return n.call(this,o,dn(a),l,t)}),i[e](r,...s)}function bd(t,e,n){const s=ee(t);un(s,"iterate",wa);const i=s[e](...n);return(i===-1||i===!1)&&uu(n[0])?(n[0]=ee(n[0]),s[e](...n)):i}function Mo(t,e,n=[]){Gi(),xp();const s=ee(t)[e].apply(t,n);return Ap(),Ki(),s}const k3=en("__proto__,__v_isRef,__isVue"),u_=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(Tn));function T3(t){Tn(t)||(t=String(t));const e=ee(this);return un(e,"has",t),e.hasOwnProperty(t)}class d_{constructor(e=!1,n=!1){this._isReadonly=e,this._isShallow=n}get(e,n,s){if(n==="__v_skip")return e.__v_skip;const i=this._isReadonly,r=this._isShallow;if(n==="__v_isReactive")return!i;if(n==="__v_isReadonly")return i;if(n==="__v_isShallow")return r;if(n==="__v_raw")return s===(i?r?b_:g_:r?m_:h_).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(s)?e:void 0;const o=bt(e);if(!i){let l;if(o&&(l=w3[n]))return l;if(n==="hasOwnProperty")return T3}const a=Reflect.get(e,n,Ae(e)?e:s);return(Tn(n)?u_.has(n):k3(n))||(i||un(e,"get",n),r)?a:Ae(a)?o&&su(n)?a:a.value:de(a)?i?Np(a):To(a):a}}class f_ extends d_{constructor(e=!1){super(!1,e)}set(e,n,s,i){let r=e[n];if(!this._isShallow){const l=Ui(r);if(!zn(s)&&!Ui(s)&&(r=ee(r),s=ee(s)),!bt(e)&&Ae(r)&&!Ae(s))return l?!1:(r.value=s,!0)}const o=bt(e)&&su(n)?Number(n)t,fl=t=>Reflect.getPrototypeOf(t);function N3(t,e,n){return function(...s){const i=this.__v_raw,r=ee(i),o=dr(r),a=t==="entries"||t===Symbol.iterator&&o,l=t==="keys"&&o,c=i[t](...s),u=n?bf:e?yf:dn;return!e&&un(r,"iterate",l?gf:hr),{next(){const{value:d,done:f}=c.next();return f?{value:d,done:f}:{value:a?[u(d[0]),u(d[1])]:u(d),done:f}},[Symbol.iterator](){return this}}}}function pl(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function P3(t,e){const n={get(i){const r=this.__v_raw,o=ee(r),a=ee(i);t||(cn(i,a)&&un(o,"get",i),un(o,"get",a));const{has:l}=fl(o),c=e?bf:t?yf:dn;if(l.call(o,i))return c(r.get(i));if(l.call(o,a))return c(r.get(a));r!==o&&r.get(i)},get size(){const i=this.__v_raw;return!t&&un(ee(i),"iterate",hr),Reflect.get(i,"size",i)},has(i){const r=this.__v_raw,o=ee(r),a=ee(i);return t||(cn(i,a)&&un(o,"has",i),un(o,"has",a)),i===a?r.has(i):r.has(i)||r.has(a)},forEach(i,r){const o=this,a=o.__v_raw,l=ee(a),c=e?bf:t?yf:dn;return!t&&un(l,"iterate",hr),a.forEach((u,d)=>i.call(r,c(u),c(d),o))}};return Jt(n,t?{add:pl("add"),set:pl("set"),delete:pl("delete"),clear:pl("clear")}:{add(i){!e&&!zn(i)&&!Ui(i)&&(i=ee(i));const r=ee(this);return fl(r).has.call(r,i)||(r.add(i),Ys(r,"add",i,i)),this},set(i,r){!e&&!zn(r)&&!Ui(r)&&(r=ee(r));const o=ee(this),{has:a,get:l}=fl(o);let c=a.call(o,i);c||(i=ee(i),c=a.call(o,i));const u=l.call(o,i);return o.set(i,r),c?cn(r,u)&&Ys(o,"set",i,r):Ys(o,"add",i,r),this},delete(i){const r=ee(this),{has:o,get:a}=fl(r);let l=o.call(r,i);l||(i=ee(i),l=o.call(r,i)),a&&a.call(r,i);const c=r.delete(i);return l&&Ys(r,"delete",i,void 0),c},clear(){const i=ee(this),r=i.size!==0,o=i.clear();return r&&Ys(i,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(i=>{n[i]=N3(i,t,e)}),n}function lu(t,e){const n=P3(t,e);return(s,i,r)=>i==="__v_isReactive"?!t:i==="__v_isReadonly"?t:i==="__v_raw"?s:Reflect.get(ae(n,i)&&i in s?n:s,i,r)}const $3={get:lu(!1,!1)},R3={get:lu(!1,!0)},L3={get:lu(!0,!1)},D3={get:lu(!0,!0)},h_=new WeakMap,m_=new WeakMap,g_=new WeakMap,b_=new WeakMap;function M3(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function F3(t){return t.__v_skip||!Object.isExtensible(t)?0:M3(Wy(t))}function To(t){return Ui(t)?t:cu(t,!1,x3,$3,h_)}function Ip(t){return cu(t,!1,O3,R3,m_)}function Np(t){return cu(t,!0,A3,L3,g_)}function V3(t){return cu(t,!0,I3,D3,b_)}function cu(t,e,n,s,i){if(!de(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const r=i.get(t);if(r)return r;const o=F3(t);if(o===0)return t;const a=new Proxy(t,o===2?s:n);return i.set(t,a),a}function Ms(t){return Ui(t)?Ms(t.__v_raw):!!(t&&t.__v_isReactive)}function Ui(t){return!!(t&&t.__v_isReadonly)}function zn(t){return!!(t&&t.__v_isShallow)}function uu(t){return t?!!t.__v_raw:!1}function ee(t){const e=t&&t.__v_raw;return e?ee(e):t}function du(t){return!ae(t,"__v_skip")&&Object.isExtensible(t)&&Sp(t,"__v_skip",!0),t}const dn=t=>de(t)?To(t):t,yf=t=>de(t)?Np(t):t;function Ae(t){return t?t.__v_isRef===!0:!1}function ss(t){return y_(t,!1)}function fu(t){return y_(t,!0)}function y_(t,e){return Ae(t)?t:new H3(t,e)}class H3{constructor(e,n){this.dep=new ou,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?e:ee(e),this._value=n?e:dn(e),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(e){const n=this._rawValue,s=this.__v_isShallow||zn(e)||Ui(e);e=s?e:ee(e),cn(e,n)&&(this._rawValue=e,this._value=s?e:dn(e),this.dep.trigger())}}function U3(t){t.dep&&t.dep.trigger()}function Ln(t){return Ae(t)?t.value:t}function j3(t){return Ot(t)?t():Ln(t)}const B3={get:(t,e,n)=>e==="__v_raw"?t:Ln(Reflect.get(t,e,n)),set:(t,e,n,s)=>{const i=t[e];return Ae(i)&&!Ae(n)?(i.value=n,!0):Reflect.set(t,e,n,s)}};function Pp(t){return Ms(t)?t:new Proxy(t,B3)}class W3{constructor(e){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new ou,{get:s,set:i}=e(n.track.bind(n),n.trigger.bind(n));this._get=s,this._set=i}get value(){return this._value=this._get()}set value(e){this._set(e)}}function __(t){return new W3(t)}function v_(t){const e=bt(t)?new Array(t.length):{};for(const n in t)e[n]=S_(t,n);return e}class z3{constructor(e,n,s){this._object=e,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const e=this._object[this._key];return this._value=e===void 0?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return E3(ee(this._object),this._key)}}class q3{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function G3(t,e,n){return Ae(t)?t:Ot(t)?new q3(t):de(t)&&arguments.length>1?S_(t,e,n):ss(t)}function S_(t,e,n){const s=t[e];return Ae(s)?s:new z3(t,e,n)}class K3{constructor(e,n,s){this.fn=e,this.setter=n,this._value=void 0,this.dep=new ou(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ea-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&Ee!==this)return i_(this,!0),!0}get value(){const e=this.dep.track();return a_(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function X3(t,e,n=!1){let s,i;return Ot(t)?s=t:(s=t.get,i=t.set),new K3(s,i,n)}const Y3={GET:"get",HAS:"has",ITERATE:"iterate"},Z3={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},hl={},mc=new WeakMap;let Ti;function J3(){return Ti}function E_(t,e=!1,n=Ti){if(n){let s=mc.get(n);s||mc.set(n,s=[]),s.push(t)}}function Q3(t,e,n=Zt){const{immediate:s,deep:i,once:r,scheduler:o,augmentJob:a,call:l}=n,c=v=>i?v:zn(v)||i===!1||i===0?Zs(v,1):Zs(v);let u,d,f,p,h=!1,m=!1;if(Ae(t)?(d=()=>t.value,h=zn(t)):Ms(t)?(d=()=>c(t),h=!0):bt(t)?(m=!0,h=t.some(v=>Ms(v)||zn(v)),d=()=>t.map(v=>{if(Ae(v))return v.value;if(Ms(v))return c(v);if(Ot(v))return l?l(v,2):v()})):Ot(t)?e?d=l?()=>l(t,2):t:d=()=>{if(f){Gi();try{f()}finally{Ki()}}const v=Ti;Ti=u;try{return l?l(t,3,[p]):t(p)}finally{Ti=v}}:d=Qe,e&&i){const v=d,E=i===!0?1/0:i;d=()=>Zs(v(),E)}const _=Tp(),y=()=>{u.stop(),_&&_.active&&eu(_.effects,u)};if(r&&e){const v=e;e=(...E)=>{v(...E),y()}}let S=m?new Array(t.length).fill(hl):hl;const b=v=>{if(!(!(u.flags&1)||!u.dirty&&!v))if(e){const E=u.run();if(i||h||(m?E.some((w,P)=>cn(w,S[P])):cn(E,S))){f&&f();const w=Ti;Ti=u;try{const P=[E,S===hl?void 0:m&&S[0]===hl?[]:S,p];l?l(e,3,P):e(...P),S=E}finally{Ti=w}}}else u.run()};return a&&a(b),u=new Sa(d),u.scheduler=o?()=>o(b,!1):b,p=v=>E_(v,!1,u),f=u.onStop=()=>{const v=mc.get(u);if(v){if(l)l(v,4);else for(const E of v)E();mc.delete(u)}},e?s?b(!0):S=u.run():o?o(b.bind(null,!0),!0):u.run(),y.pause=u.pause.bind(u),y.resume=u.resume.bind(u),y.stop=y,y}function Zs(t,e=1/0,n){if(e<=0||!de(t)||t.__v_skip||(n=n||new Set,n.has(t)))return t;if(n.add(t),e--,Ae(t))Zs(t.value,e,n);else if(bt(t))for(let s=0;s{Zs(s,e,n)});else if(Wa(t)){for(const s in t)Zs(t[s],e,n);for(const s of Object.getOwnPropertySymbols(t))Object.prototype.propertyIsEnumerable.call(t,s)&&Zs(t[s],e,n)}return t}/** * @vue/runtime-core v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const w_=[];function tE(t){w_.push(t)}function eE(){w_.pop()}function nE(t,e){}const sE={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},iE={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush",15:"component update",16:"app unmount cleanup function"};function xo(t,e,n,s){try{return s?t(...s):t()}catch(i){Or(i,e,n)}}function as(t,e,n,s){if(Ot(t)){const i=xo(t,e,n,s);return i&&nu(i)&&i.catch(r=>{Or(r,e,n)}),i}if(bt(t)){const i=[];for(let r=0;r>>1,i=En[s],r=ka(i);r=ka(n)?En.push(t):En.splice(oE(e),0,t),t.flags|=1,k_()}}function k_(){gc||(gc=C_.then(T_))}function Ca(t){bt(t)?io.push(...t):xi&&t.id===-1?xi.splice(zr+1,0,t):t.flags&1||(io.push(t),t.flags|=1),k_()}function cm(t,e,n=Rs+1){for(;nka(n)-ka(s));if(io.length=0,xi){xi.push(...e);return}for(xi=e,zr=0;zrt.id==null?t.flags&2?-1:1/0:t.id;function T_(t){try{for(Rs=0;Rsqr.emit(i,...r)),ml=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((e.__VUE_DEVTOOLS_HOOK_REPLAY__=e.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(r=>{x_(r,e)}),setTimeout(()=>{qr||(e.__VUE_DEVTOOLS_HOOK_REPLAY__=null,ml=[])},3e3)):ml=[]}let Xe=null,pu=null;function Ta(t){const e=Xe;return Xe=t,pu=t&&t.type.__scopeId||null,e}function aE(t){pu=t}function lE(){pu=null}const cE=t=>D;function D(t,e=Xe,n){if(!e||t._n)return t;const s=(...i)=>{s._d&&Tf(-1);const r=Ta(e);let o;try{o=t(...i)}finally{Ta(r),s._d&&Tf(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function xn(t,e){if(Xe===null)return t;const n=Za(Xe),s=t.dirs||(t.dirs=[]);for(let i=0;it.__isTeleport,ia=t=>t&&(t.disabled||t.disabled===""),um=t=>t&&(t.defer||t.defer===""),dm=t=>typeof SVGElement<"u"&&t instanceof SVGElement,fm=t=>typeof MathMLElement=="function"&&t instanceof MathMLElement,_f=(t,e)=>{const n=t&&t.to;return $t(n)?e?e(n):null:n},I_={name:"Teleport",__isTeleport:!0,process(t,e,n,s,i,r,o,a,l,c){const{mc:u,pc:d,pbc:f,o:{insert:p,querySelector:h,createText:m,createComment:_}}=c,y=ia(e.props);let{shapeFlag:S,children:b,dynamicChildren:v}=e;if(t==null){const E=e.el=m(""),w=e.anchor=m("");p(E,n,s),p(w,n,s);const P=(k,R)=>{S&16&&(i&&i.isCE&&(i.ce._teleportTarget=k),u(b,k,R,i,r,o,a,l))},L=()=>{const k=e.target=_f(e.props,h),R=N_(k,e,m,p);k&&(o!=="svg"&&dm(k)?o="svg":o!=="mathml"&&fm(k)&&(o="mathml"),y||(P(k,R),Bl(e,!1)))};y&&(P(n,w),Bl(e,!0)),um(e.props)?Ge(()=>{L(),e.el.__isMounted=!0},r):L()}else{if(um(e.props)&&!t.el.__isMounted){Ge(()=>{I_.process(t,e,n,s,i,r,o,a,l,c),delete t.el.__isMounted},r);return}e.el=t.el,e.targetStart=t.targetStart;const E=e.anchor=t.anchor,w=e.target=t.target,P=e.targetAnchor=t.targetAnchor,L=ia(t.props),k=L?n:w,R=L?E:P;if(o==="svg"||dm(w)?o="svg":(o==="mathml"||fm(w))&&(o="mathml"),v?(f(t.dynamicChildren,v,k,i,r,o,a),Wp(t,e,!0)):l||d(t,e,k,R,i,r,o,a,!1),y)L?e.props&&t.props&&e.props.to!==t.props.to&&(e.props.to=t.props.to):gl(e,n,E,c,1);else if((e.props&&e.props.to)!==(t.props&&t.props.to)){const B=e.target=_f(e.props,h);B&&gl(e,B,null,c,0)}else L&&gl(e,w,P,c,1);Bl(e,y)}},remove(t,e,n,{um:s,o:{remove:i}},r){const{shapeFlag:o,children:a,anchor:l,targetStart:c,targetAnchor:u,target:d,props:f}=t;if(d&&(i(c),i(u)),r&&i(l),o&16){const p=r||!ia(f);for(let h=0;h{t.isMounted=!0}),bu(()=>{t.isUnmounting=!0}),t}const Zn=[Function,Array],Lp={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Zn,onEnter:Zn,onAfterEnter:Zn,onEnterCancelled:Zn,onBeforeLeave:Zn,onLeave:Zn,onAfterLeave:Zn,onLeaveCancelled:Zn,onBeforeAppear:Zn,onAppear:Zn,onAfterAppear:Zn,onAppearCancelled:Zn},P_=t=>{const e=t.subTree;return e.component?P_(e.component):e},dE={name:"BaseTransition",props:Lp,setup(t,{slots:e}){const n=An(),s=Rp();return()=>{const i=e.default&&hu(e.default(),!0);if(!i||!i.length)return;const r=$_(i),o=ee(t),{mode:a}=o;if(s.isLeaving)return yd(r);const l=pm(r);if(!l)return yd(r);let c=co(l,o,s,n,d=>c=d);l.type!==ze&&li(l,c);let u=n.subTree&&pm(n.subTree);if(u&&u.type!==ze&&!ys(l,u)&&P_(n).type!==ze){let d=co(u,o,s,n);if(li(u,d),a==="out-in"&&l.type!==ze)return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete d.afterLeave,u=void 0},yd(r);a==="in-out"&&l.type!==ze?d.delayLeave=(f,p,h)=>{const m=L_(s,u);m[String(u.key)]=u,f[Ai]=()=>{p(),f[Ai]=void 0,delete c.delayedLeave,u=void 0},c.delayedLeave=()=>{h(),delete c.delayedLeave,u=void 0}}:u=void 0}else u&&(u=void 0);return r}}};function $_(t){let e=t[0];if(t.length>1){for(const n of t)if(n.type!==ze){e=n;break}}return e}const R_=dE;function L_(t,e){const{leavingVNodes:n}=t;let s=n.get(e.type);return s||(s=Object.create(null),n.set(e.type,s)),s}function co(t,e,n,s,i){const{appear:r,mode:o,persisted:a=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:p,onAfterLeave:h,onLeaveCancelled:m,onBeforeAppear:_,onAppear:y,onAfterAppear:S,onAppearCancelled:b}=e,v=String(t.key),E=L_(n,t),w=(k,R)=>{k&&as(k,s,9,R)},P=(k,R)=>{const B=R[1];w(k,R),bt(k)?k.every(V=>V.length<=1)&&B():k.length<=1&&B()},L={mode:o,persisted:a,beforeEnter(k){let R=l;if(!n.isMounted)if(r)R=_||l;else return;k[Ai]&&k[Ai](!0);const B=E[v];B&&ys(t,B)&&B.el[Ai]&&B.el[Ai](),w(R,[k])},enter(k){let R=c,B=u,V=d;if(!n.isMounted)if(r)R=y||c,B=S||u,V=b||d;else return;let j=!1;const Z=k[bl]=ot=>{j||(j=!0,ot?w(V,[k]):w(B,[k]),L.delayedLeave&&L.delayedLeave(),k[bl]=void 0)};R?P(R,[k,Z]):Z()},leave(k,R){const B=String(t.key);if(k[bl]&&k[bl](!0),n.isUnmounting)return R();w(f,[k]);let V=!1;const j=k[Ai]=Z=>{V||(V=!0,R(),Z?w(m,[k]):w(h,[k]),k[Ai]=void 0,E[B]===t&&delete E[B])};E[B]=t,p?P(p,[k,j]):j()},clone(k){const R=co(k,e,n,s,i);return i&&i(R),R}};return L}function yd(t){if(Ga(t))return t=Hs(t),t.children=null,t}function pm(t){if(!Ga(t))return O_(t.type)&&t.children?$_(t.children):t;const{shapeFlag:e,children:n}=t;if(n){if(e&16)return n[0];if(e&32&&Ot(n.default))return n.default()}}function li(t,e){t.shapeFlag&6&&t.component?(t.transition=e,li(t.component.subTree,e)):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}function hu(t,e=!1,n){let s=[],i=0;for(let r=0;r1)for(let r=0;rn.value,set:r=>n.value=r})}return n}function xa(t,e,n,s,i=!1){if(bt(t)){t.forEach((h,m)=>xa(h,e&&(bt(e)?e[m]:e),n,s,i));return}if(Fi(s)&&!i){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&xa(t,e,n,s.component.subTree);return}const r=s.shapeFlag&4?Za(s.component):s.el,o=i?null:r,{i:a,r:l}=t,c=e&&e.r,u=a.refs===Zt?a.refs={}:a.refs,d=a.setupState,f=ee(d),p=d===Zt?()=>!1:h=>ae(f,h);if(c!=null&&c!==l&&($t(c)?(u[c]=null,p(c)&&(d[c]=null)):Ae(c)&&(c.value=null)),Ot(l))xo(l,a,12,[o,u]);else{const h=$t(l),m=Ae(l);if(h||m){const _=()=>{if(t.f){const y=h?p(l)?d[l]:u[l]:l.value;i?bt(y)&&eu(y,r):bt(y)?y.includes(r)||y.push(r):h?(u[l]=[r],p(l)&&(d[l]=u[l])):(l.value=[r],t.k&&(u[t.k]=l.value))}else h?(u[l]=o,p(l)&&(d[l]=o)):m&&(l.value=o,t.k&&(u[t.k]=o))};o?(_.id=-1,Ge(_,n)):_()}}}let hm=!1;const Lr=()=>{hm||(console.error("Hydration completed but contains mismatches."),hm=!0)},hE=t=>t.namespaceURI.includes("svg")&&t.tagName!=="foreignObject",mE=t=>t.namespaceURI.includes("MathML"),yl=t=>{if(t.nodeType===1){if(hE(t))return"svg";if(mE(t))return"mathml"}},to=t=>t.nodeType===8;function gE(t){const{mt:e,p:n,o:{patchProp:s,createText:i,nextSibling:r,parentNode:o,remove:a,insert:l,createComment:c}}=t,u=(b,v)=>{if(!v.hasChildNodes()){n(null,b,v),bc(),v._vnode=b;return}d(v.firstChild,b,null,null,null),bc(),v._vnode=b},d=(b,v,E,w,P,L=!1)=>{L=L||!!v.dynamicChildren;const k=to(b)&&b.data==="[",R=()=>m(b,v,E,w,P,k),{type:B,ref:V,shapeFlag:j,patchFlag:Z}=v;let ot=b.nodeType;v.el=b,Z===-2&&(L=!1,v.dynamicChildren=null);let q=null;switch(B){case si:ot!==3?v.children===""?(l(v.el=i(""),o(b),b),q=b):q=R():(b.data!==v.children&&(Lr(),b.data=v.children),q=r(b));break;case ze:S(b)?(q=r(b),y(v.el=b.content.firstChild,b,E)):ot!==8||k?q=R():q=r(b);break;case gr:if(k&&(b=r(b),ot=b.nodeType),ot===1||ot===3){q=b;const et=!v.children.length;for(let at=0;at{L=L||!!v.dynamicChildren;const{type:k,props:R,patchFlag:B,shapeFlag:V,dirs:j,transition:Z}=v,ot=k==="input"||k==="option";if(ot||B!==-1){j&&Ls(v,null,E,"created");let q=!1;if(S(b)){q=av(null,Z)&&E&&E.vnode.props&&E.vnode.props.appear;const at=b.content.firstChild;q&&Z.beforeEnter(at),y(at,b,E),v.el=b=at}if(V&16&&!(R&&(R.innerHTML||R.textContent))){let at=p(b.firstChild,v,b,E,w,P,L);for(;at;){_l(b,1)||Lr();const kt=at;at=at.nextSibling,a(kt)}}else if(V&8){let at=v.children;at[0]===` -`&&(b.tagName==="PRE"||b.tagName==="TEXTAREA")&&(at=at.slice(1)),b.textContent!==at&&(_l(b,0)||Lr(),b.textContent=v.children)}if(R){if(ot||!L||B&48){const at=b.tagName.includes("-");for(const kt in R)(ot&&(kt.endsWith("value")||kt==="indeterminate")||Wi(kt)&&!ni(kt)||kt[0]==="."||at)&&s(b,kt,null,R[kt],void 0,E)}else if(R.onClick)s(b,"onClick",null,R.onClick,void 0,E);else if(B&4&&Fs(R.style))for(const at in R.style)R.style[at]}let et;(et=R&&R.onVnodeBeforeMount)&&$n(et,E,v),j&&Ls(v,null,E,"beforeMount"),((et=R&&R.onVnodeMounted)||j||q)&&bv(()=>{et&&$n(et,E,v),q&&Z.enter(b),j&&Ls(v,null,E,"mounted")},w)}return b.nextSibling},p=(b,v,E,w,P,L,k)=>{k=k||!!v.dynamicChildren;const R=v.children,B=R.length;for(let V=0;V{const{slotScopeIds:k}=v;k&&(P=P?P.concat(k):k);const R=o(b),B=p(r(b),v,R,E,w,P,L);return B&&to(B)&&B.data==="]"?r(v.anchor=B):(Lr(),l(v.anchor=c("]"),R,B),B)},m=(b,v,E,w,P,L)=>{if(_l(b.parentElement,1)||Lr(),v.el=null,L){const B=_(b);for(;;){const V=r(b);if(V&&V!==B)a(V);else break}}const k=r(b),R=o(b);return a(b),n(null,v,R,k,E,w,yl(R),P),E&&(E.vnode.el=v.el,vu(E,v.el)),k},_=(b,v="[",E="]")=>{let w=0;for(;b;)if(b=r(b),b&&to(b)&&(b.data===v&&w++,b.data===E)){if(w===0)return r(b);w--}return b},y=(b,v,E)=>{const w=v.parentNode;w&&w.replaceChild(b,v);let P=E;for(;P;)P.vnode.el===v&&(P.vnode.el=P.subTree.el=b),P=P.parent},S=b=>b.nodeType===1&&b.tagName==="TEMPLATE";return[u,d]}const mm="data-allow-mismatch",bE={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function _l(t,e){if(e===0||e===1)for(;t&&!t.hasAttribute(mm);)t=t.parentElement;const n=t&&t.getAttribute(mm);if(n==null)return!1;if(n==="")return!0;{const s=n.split(",");return e===0&&s.includes("children")?!0:n.split(",").includes(bE[e])}}const yE=za().requestIdleCallback||(t=>setTimeout(t,1)),_E=za().cancelIdleCallback||(t=>clearTimeout(t)),vE=(t=1e4)=>e=>{const n=yE(e,{timeout:t});return()=>_E(n)};function SE(t){const{top:e,left:n,bottom:s,right:i}=t.getBoundingClientRect(),{innerHeight:r,innerWidth:o}=window;return(e>0&&e0&&s0&&n0&&i(e,n)=>{const s=new IntersectionObserver(i=>{for(const r of i)if(r.isIntersecting){s.disconnect(),e();break}},t);return n(i=>{if(i instanceof Element){if(SE(i))return e(),s.disconnect(),!1;s.observe(i)}}),()=>s.disconnect()},wE=t=>e=>{if(t){const n=matchMedia(t);if(n.matches)e();else return n.addEventListener("change",e,{once:!0}),()=>n.removeEventListener("change",e)}},CE=(t=[])=>(e,n)=>{$t(t)&&(t=[t]);let s=!1;const i=o=>{s||(s=!0,r(),e(),o.target.dispatchEvent(new o.constructor(o.type,o)))},r=()=>{n(o=>{for(const a of t)o.removeEventListener(a,i)})};return n(o=>{for(const a of t)o.addEventListener(a,i,{once:!0})}),r};function kE(t,e){if(to(t)&&t.data==="["){let n=1,s=t.nextSibling;for(;s;){if(s.nodeType===1){if(e(s)===!1)break}else if(to(s))if(s.data==="]"){if(--n===0)break}else s.data==="["&&n++;s=s.nextSibling}}else e(t)}const Fi=t=>!!t.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function TE(t){Ot(t)&&(t={loader:t});const{loader:e,loadingComponent:n,errorComponent:s,delay:i=200,hydrate:r,timeout:o,suspensible:a=!0,onError:l}=t;let c=null,u,d=0;const f=()=>(d++,c=null,p()),p=()=>{let h;return c||(h=c=e().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((_,y)=>{l(m,()=>_(f()),()=>y(m),d+1)});throw m}).then(m=>h!==c&&c?c:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),u=m,m)))};return fi({name:"AsyncComponentWrapper",__asyncLoader:p,__asyncHydrate(h,m,_){const y=r?()=>{const S=r(_,b=>kE(h,b));S&&(m.bum||(m.bum=[])).push(S)}:_;u?y():p().then(()=>!m.isUnmounted&&y())},get __asyncResolved(){return u},setup(){const h=Ke;if(Dp(h),u)return()=>_d(u,h);const m=b=>{c=null,Or(b,h,13,!s)};if(a&&h.suspense||uo)return p().then(b=>()=>_d(b,h)).catch(b=>(m(b),()=>s?C(s,{error:b}):null));const _=ss(!1),y=ss(),S=ss(!!i);return i&&setTimeout(()=>{S.value=!1},i),o!=null&&setTimeout(()=>{if(!_.value&&!y.value){const b=new Error(`Async component timed out after ${o}ms.`);m(b),y.value=b}},o),p().then(()=>{_.value=!0,h.parent&&Ga(h.parent.vnode)&&h.parent.update()}).catch(b=>{m(b),y.value=b}),()=>{if(_.value&&u)return _d(u,h);if(y.value&&s)return C(s,{error:y.value});if(n&&!S.value)return C(n)}}})}function _d(t,e){const{ref:n,props:s,children:i,ce:r}=e.vnode,o=C(t,s,i);return o.ref=n,o.ce=r,delete e.vnode.ce,o}const Ga=t=>t.type.__isKeepAlive,xE={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(t,{slots:e}){const n=An(),s=n.ctx;if(!s.renderer)return()=>{const S=e.default&&e.default();return S&&S.length===1?S[0]:S};const i=new Map,r=new Set;let o=null;const a=n.suspense,{renderer:{p:l,m:c,um:u,o:{createElement:d}}}=s,f=d("div");s.activate=(S,b,v,E,w)=>{const P=S.component;c(S,b,v,0,a),l(P.vnode,S,b,v,P,a,E,S.slotScopeIds,w),Ge(()=>{P.isDeactivated=!1,P.a&&pr(P.a);const L=S.props&&S.props.onVnodeMounted;L&&$n(L,P.parent,S)},a)},s.deactivate=S=>{const b=S.component;_c(b.m),_c(b.a),c(S,f,null,1,a),Ge(()=>{b.da&&pr(b.da);const v=S.props&&S.props.onVnodeUnmounted;v&&$n(v,b.parent,S),b.isDeactivated=!0},a)};function p(S){vd(S),u(S,n,a,!0)}function h(S){i.forEach((b,v)=>{const E=Nf(b.type);E&&!S(E)&&m(v)})}function m(S){const b=i.get(S);b&&(!o||!ys(b,o))?p(b):o&&vd(o),i.delete(S),r.delete(S)}qn(()=>[t.include,t.exclude],([S,b])=>{S&&h(v=>Ko(S,v)),b&&h(v=>!Ko(b,v))},{flush:"post",deep:!0});let _=null;const y=()=>{_!=null&&(vc(n.subTree.type)?Ge(()=>{i.set(_,vl(n.subTree))},n.subTree.suspense):i.set(_,vl(n.subTree)))};return Ao(y),gu(y),bu(()=>{i.forEach(S=>{const{subTree:b,suspense:v}=n,E=vl(b);if(S.type===E.type&&S.key===E.key){vd(E);const w=E.component.da;w&&Ge(w,v);return}p(S)})}),()=>{if(_=null,!e.default)return o=null;const S=e.default(),b=S[0];if(S.length>1)return o=null,S;if(!ci(b)||!(b.shapeFlag&4)&&!(b.shapeFlag&128))return o=null,b;let v=vl(b);if(v.type===ze)return o=null,v;const E=v.type,w=Nf(Fi(v)?v.type.__asyncResolved||{}:E),{include:P,exclude:L,max:k}=t;if(P&&(!w||!Ko(P,w))||L&&w&&Ko(L,w))return v.shapeFlag&=-257,o=v,b;const R=v.key==null?E:v.key,B=i.get(R);return v.el&&(v=Hs(v),b.shapeFlag&128&&(b.ssContent=v)),_=R,B?(v.el=B.el,v.component=B.component,v.transition&&li(v,v.transition),v.shapeFlag|=512,r.delete(R),r.add(R)):(r.add(R),k&&r.size>parseInt(k,10)&&m(r.values().next().value)),v.shapeFlag|=256,o=v,vc(b.type)?b:v}}},AE=xE;function Ko(t,e){return bt(t)?t.some(n=>Ko(n,e)):$t(t)?t.split(",").includes(e):By(t)?(t.lastIndex=0,t.test(e)):!1}function D_(t,e){F_(t,"a",e)}function M_(t,e){F_(t,"da",e)}function F_(t,e,n=Ke){const s=t.__wdc||(t.__wdc=()=>{let i=n;for(;i;){if(i.isDeactivated)return;i=i.parent}return t()});if(mu(e,s,n),n){let i=n.parent;for(;i&&i.parent;)Ga(i.parent.vnode)&&OE(s,e,n,i),i=i.parent}}function OE(t,e,n,s){const i=mu(e,t,s,!0);Ka(()=>{eu(s[e],i)},n)}function vd(t){t.shapeFlag&=-257,t.shapeFlag&=-513}function vl(t){return t.shapeFlag&128?t.ssContent:t}function mu(t,e,n=Ke,s=!1){if(n){const i=n[t]||(n[t]=[]),r=e.__weh||(e.__weh=(...o)=>{Gi();const a=Sr(n),l=as(e,n,t,o);return a(),Ki(),l});return s?i.unshift(r):i.push(r),r}}const pi=t=>(e,n=Ke)=>{(!uo||t==="sp")&&mu(t,(...s)=>e(...s),n)},V_=pi("bm"),Ao=pi("m"),Mp=pi("bu"),gu=pi("u"),bu=pi("bum"),Ka=pi("um"),H_=pi("sp"),U_=pi("rtg"),j_=pi("rtc");function B_(t,e=Ke){mu("ec",t,e)}const Fp="components",IE="directives";function x(t,e){return Hp(Fp,t,!0,e)||t}const W_=Symbol.for("v-ndc");function yu(t){return $t(t)?Hp(Fp,t,!1)||t:t||W_}function Vp(t){return Hp(IE,t)}function Hp(t,e,n=!0,s=!1){const i=Xe||Ke;if(i){const r=i.type;if(t===Fp){const a=Nf(r,!1);if(a&&(a===e||a===we(e)||a===qi(we(e))))return r}const o=gm(i[t]||r[t],e)||gm(i.appContext[t],e);return!o&&s?r:o}}function gm(t,e){return t&&(t[e]||t[we(e)]||t[qi(we(e))])}function fe(t,e,n,s){let i;const r=n&&n[s],o=bt(t);if(o||$t(t)){const a=o&&Fs(t);let l=!1;a&&(l=!zn(t),t=au(t)),i=new Array(t.length);for(let c=0,u=t.length;ce(a,l,void 0,r&&r[l]));else{const a=Object.keys(t);i=new Array(a.length);for(let l=0,c=a.length;l{const r=s.fn(...i);return r&&(r.key=s.key),r}:s.fn)}return t}function ge(t,e,n={},s,i){if(Xe.ce||Xe.parent&&Fi(Xe.parent)&&Xe.parent.ce)return e!=="default"&&(n.name=e),O(),vt(ht,null,[C("slot",n,s&&s())],64);let r=t[e];r&&r._c&&(r._d=!1),O();const o=r&&Up(r(n)),a=n.key||o&&o.key,l=vt(ht,{key:(a&&!Tn(a)?a:`_${e}`)+(!o&&s?"_fb":"")},o||(s?s():[]),o&&t._===1?64:-2);return!i&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),r&&r._c&&(r._d=!0),l}function Up(t){return t.some(e=>ci(e)?!(e.type===ze||e.type===ht&&!Up(e.children)):!0)?t:null}function NE(t,e){const n={};for(const s in t)n[e&&/[A-Z]/.test(s)?`on:${s}`:fr(s)]=t[s];return n}const vf=t=>t?wv(t)?Za(t):vf(t.parent):null,ra=Jt(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>vf(t.parent),$root:t=>vf(t.root),$host:t=>t.ce,$emit:t=>t.emit,$options:t=>jp(t),$forceUpdate:t=>t.f||(t.f=()=>{$p(t.update)}),$nextTick:t=>t.n||(t.n=Ir.bind(t.proxy)),$watch:t=>aw.bind(t)}),Sd=(t,e)=>t!==Zt&&!t.__isScriptSetup&&ae(t,e),Sf={get({_:t},e){if(e==="__v_skip")return!0;const{ctx:n,setupState:s,data:i,props:r,accessCache:o,type:a,appContext:l}=t;let c;if(e[0]!=="$"){const p=o[e];if(p!==void 0)switch(p){case 1:return s[e];case 2:return i[e];case 4:return n[e];case 3:return r[e]}else{if(Sd(s,e))return o[e]=1,s[e];if(i!==Zt&&ae(i,e))return o[e]=2,i[e];if((c=t.propsOptions[0])&&ae(c,e))return o[e]=3,r[e];if(n!==Zt&&ae(n,e))return o[e]=4,n[e];Ef&&(o[e]=0)}}const u=ra[e];let d,f;if(u)return e==="$attrs"&&un(t.attrs,"get",""),u(t);if((d=a.__cssModules)&&(d=d[e]))return d;if(n!==Zt&&ae(n,e))return o[e]=4,n[e];if(f=l.config.globalProperties,ae(f,e))return f[e]},set({_:t},e,n){const{data:s,setupState:i,ctx:r}=t;return Sd(i,e)?(i[e]=n,!0):s!==Zt&&ae(s,e)?(s[e]=n,!0):ae(t.props,e)||e[0]==="$"&&e.slice(1)in t?!1:(r[e]=n,!0)},has({_:{data:t,setupState:e,accessCache:n,ctx:s,appContext:i,propsOptions:r}},o){let a;return!!n[o]||t!==Zt&&ae(t,o)||Sd(e,o)||(a=r[0])&&ae(a,o)||ae(s,o)||ae(ra,o)||ae(i.config.globalProperties,o)},defineProperty(t,e,n){return n.get!=null?t._.accessCache[e]=0:ae(n,"value")&&this.set(t,e,n.value,null),Reflect.defineProperty(t,e,n)}},PE=Jt({},Sf,{get(t,e){if(e!==Symbol.unscopables)return Sf.get(t,e,t)},has(t,e){return e[0]!=="_"&&!Ep(e)}});function $E(){return null}function RE(){return null}function LE(t){}function DE(t){}function ME(){return null}function FE(){}function VE(t,e){return null}function HE(){return z_().slots}function UE(){return z_().attrs}function z_(){const t=An();return t.setupContext||(t.setupContext=Tv(t))}function Aa(t){return bt(t)?t.reduce((e,n)=>(e[n]=null,e),{}):t}function jE(t,e){const n=Aa(t);for(const s in e){if(s.startsWith("__skip"))continue;let i=n[s];i?bt(i)||Ot(i)?i=n[s]={type:i,default:e[s]}:i.default=e[s]:i===null&&(i=n[s]={default:e[s]}),i&&e[`__skip_${s}`]&&(i.skipFactory=!0)}return n}function BE(t,e){return!t||!e?t||e:bt(t)&&bt(e)?t.concat(e):Jt({},Aa(t),Aa(e))}function WE(t,e){const n={};for(const s in t)e.includes(s)||Object.defineProperty(n,s,{enumerable:!0,get:()=>t[s]});return n}function zE(t){const e=An();let n=t();return Af(),nu(n)&&(n=n.catch(s=>{throw Sr(e),s})),[n,()=>Sr(e)]}let Ef=!0;function qE(t){const e=jp(t),n=t.proxy,s=t.ctx;Ef=!1,e.beforeCreate&&bm(e.beforeCreate,t,"bc");const{data:i,computed:r,methods:o,watch:a,provide:l,inject:c,created:u,beforeMount:d,mounted:f,beforeUpdate:p,updated:h,activated:m,deactivated:_,beforeDestroy:y,beforeUnmount:S,destroyed:b,unmounted:v,render:E,renderTracked:w,renderTriggered:P,errorCaptured:L,serverPrefetch:k,expose:R,inheritAttrs:B,components:V,directives:j,filters:Z}=e;if(c&&GE(c,s,null),o)for(const et in o){const at=o[et];Ot(at)&&(s[et]=at.bind(n))}if(i){const et=i.call(n,n);de(et)&&(t.data=To(et))}if(Ef=!0,r)for(const et in r){const at=r[et],kt=Ot(at)?at.bind(n,n):Ot(at.get)?at.get.bind(n,n):Qe,Kt=!Ot(at)&&Ot(at.set)?at.set.bind(n):Qe,Vt=Je({get:kt,set:Kt});Object.defineProperty(s,et,{enumerable:!0,configurable:!0,get:()=>Vt.value,set:Wt=>Vt.value=Wt})}if(a)for(const et in a)q_(a[et],s,n,et);if(l){const et=Ot(l)?l.call(n):l;Reflect.ownKeys(et).forEach(at=>{oa(at,et[at])})}u&&bm(u,t,"c");function q(et,at){bt(at)?at.forEach(kt=>et(kt.bind(n))):at&&et(at.bind(n))}if(q(V_,d),q(Ao,f),q(Mp,p),q(gu,h),q(D_,m),q(M_,_),q(B_,L),q(j_,w),q(U_,P),q(bu,S),q(Ka,v),q(H_,k),bt(R))if(R.length){const et=t.exposed||(t.exposed={});R.forEach(at=>{Object.defineProperty(et,at,{get:()=>n[at],set:kt=>n[at]=kt})})}else t.exposed||(t.exposed={});E&&t.render===Qe&&(t.render=E),B!=null&&(t.inheritAttrs=B),V&&(t.components=V),j&&(t.directives=j),k&&Dp(t)}function GE(t,e,n=Qe){bt(t)&&(t=wf(t));for(const s in t){const i=t[s];let r;de(i)?"default"in i?r=is(i.from||s,i.default,!0):r=is(i.from||s):r=is(i),Ae(r)?Object.defineProperty(e,s,{enumerable:!0,configurable:!0,get:()=>r.value,set:o=>r.value=o}):e[s]=r}}function bm(t,e,n){as(bt(t)?t.map(s=>s.bind(e.proxy)):t.bind(e.proxy),e,n)}function q_(t,e,n,s){let i=s.includes(".")?pv(n,s):()=>n[s];if($t(t)){const r=e[t];Ot(r)&&qn(i,r)}else if(Ot(t))qn(i,t.bind(n));else if(de(t))if(bt(t))t.forEach(r=>q_(r,e,n,s));else{const r=Ot(t.handler)?t.handler.bind(n):e[t.handler];Ot(r)&&qn(i,r,t)}}function jp(t){const e=t.type,{mixins:n,extends:s}=e,{mixins:i,optionsCache:r,config:{optionMergeStrategies:o}}=t.appContext,a=r.get(e);let l;return a?l=a:!i.length&&!n&&!s?l=e:(l={},i.length&&i.forEach(c=>yc(l,c,o,!0)),yc(l,e,o)),de(e)&&r.set(e,l),l}function yc(t,e,n,s=!1){const{mixins:i,extends:r}=e;r&&yc(t,r,n,!0),i&&i.forEach(o=>yc(t,o,n,!0));for(const o in e)if(!(s&&o==="expose")){const a=KE[o]||n&&n[o];t[o]=a?a(t[o],e[o]):e[o]}return t}const KE={data:ym,props:_m,emits:_m,methods:Xo,computed:Xo,beforeCreate:yn,created:yn,beforeMount:yn,mounted:yn,beforeUpdate:yn,updated:yn,beforeDestroy:yn,beforeUnmount:yn,destroyed:yn,unmounted:yn,activated:yn,deactivated:yn,errorCaptured:yn,serverPrefetch:yn,components:Xo,directives:Xo,watch:YE,provide:ym,inject:XE};function ym(t,e){return e?t?function(){return Jt(Ot(t)?t.call(this,this):t,Ot(e)?e.call(this,this):e)}:e:t}function XE(t,e){return Xo(wf(t),wf(e))}function wf(t){if(bt(t)){const e={};for(let n=0;n1)return n&&Ot(e)?e.call(s&&s.proxy):e}}function K_(){return!!(Ke||Xe||mr)}const X_={},Y_=()=>Object.create(X_),Z_=t=>Object.getPrototypeOf(t)===X_;function QE(t,e,n,s=!1){const i={},r=Y_();t.propsDefaults=Object.create(null),J_(t,e,i,r);for(const o in t.propsOptions[0])o in i||(i[o]=void 0);n?t.props=s?i:Ip(i):t.type.props?t.props=i:t.props=r,t.attrs=r}function tw(t,e,n,s){const{props:i,attrs:r,vnode:{patchFlag:o}}=t,a=ee(i),[l]=t.propsOptions;let c=!1;if((s||o>0)&&!(o&16)){if(o&8){const u=t.vnode.dynamicProps;for(let d=0;d{l=!0;const[f,p]=Q_(d,e,!0);Jt(o,f),p&&a.push(...p)};!n&&e.mixins.length&&e.mixins.forEach(u),t.extends&&u(t.extends),t.mixins&&t.mixins.forEach(u)}if(!r&&!l)return de(t)&&s.set(t,ur),ur;if(bt(r))for(let u=0;ut[0]==="_"||t==="$stable",Bp=t=>bt(t)?t.map(Rn):[Rn(t)],nw=(t,e,n)=>{if(e._n)return e;const s=D((...i)=>Bp(e(...i)),n);return s._c=!1,s},ev=(t,e,n)=>{const s=t._ctx;for(const i in t){if(tv(i))continue;const r=t[i];if(Ot(r))e[i]=nw(i,r,s);else if(r!=null){const o=Bp(r);e[i]=()=>o}}},nv=(t,e)=>{const n=Bp(e);t.slots.default=()=>n},sv=(t,e,n)=>{for(const s in e)(n||s!=="_")&&(t[s]=e[s])},sw=(t,e,n)=>{const s=t.slots=Y_();if(t.vnode.shapeFlag&32){const i=e._;i?(sv(s,e,n),n&&Sp(s,"_",i,!0)):ev(e,s)}else e&&nv(t,e)},iw=(t,e,n)=>{const{vnode:s,slots:i}=t;let r=!0,o=Zt;if(s.shapeFlag&32){const a=e._;a?n&&a===1?r=!1:sv(i,e,n):(r=!e.$stable,ev(e,i)),o=e}else e&&(nv(t,e),o={default:1});if(r)for(const a in i)!tv(a)&&o[a]==null&&delete i[a]},Ge=bv;function iv(t){return ov(t)}function rv(t){return ov(t,gE)}function ov(t,e){const n=za();n.__VUE__=!0;const{insert:s,remove:i,patchProp:r,createElement:o,createText:a,createComment:l,setText:c,setElementText:u,parentNode:d,nextSibling:f,setScopeId:p=Qe,insertStaticContent:h}=t,m=(A,$,z,st=null,Q=null,T=null,N=void 0,H=null,X=!!$.dynamicChildren)=>{if(A===$)return;A&&!ys(A,$)&&(st=Y(A),Wt(A,Q,T,!0),A=null),$.patchFlag===-2&&(X=!1,$.dynamicChildren=null);const{type:nt,ref:lt,shapeFlag:F}=$;switch(nt){case si:_(A,$,z,st);break;case ze:y(A,$,z,st);break;case gr:A==null&&S($,z,st,N);break;case ht:V(A,$,z,st,Q,T,N,H,X);break;default:F&1?E(A,$,z,st,Q,T,N,H,X):F&6?j(A,$,z,st,Q,T,N,H,X):(F&64||F&128)&&nt.process(A,$,z,st,Q,T,N,H,X,yt)}lt!=null&&Q&&xa(lt,A&&A.ref,T,$||A,!$)},_=(A,$,z,st)=>{if(A==null)s($.el=a($.children),z,st);else{const Q=$.el=A.el;$.children!==A.children&&c(Q,$.children)}},y=(A,$,z,st)=>{A==null?s($.el=l($.children||""),z,st):$.el=A.el},S=(A,$,z,st)=>{[A.el,A.anchor]=h(A.children,$,z,st,A.el,A.anchor)},b=({el:A,anchor:$},z,st)=>{let Q;for(;A&&A!==$;)Q=f(A),s(A,z,st),A=Q;s($,z,st)},v=({el:A,anchor:$})=>{let z;for(;A&&A!==$;)z=f(A),i(A),A=z;i($)},E=(A,$,z,st,Q,T,N,H,X)=>{$.type==="svg"?N="svg":$.type==="math"&&(N="mathml"),A==null?w($,z,st,Q,T,N,H,X):k(A,$,Q,T,N,H,X)},w=(A,$,z,st,Q,T,N,H)=>{let X,nt;const{props:lt,shapeFlag:F,transition:G,dirs:pt}=A;if(X=A.el=o(A.type,T,lt&<.is,lt),F&8?u(X,A.children):F&16&&L(A.children,X,null,st,Q,Ed(A,T),N,H),pt&&Ls(A,null,st,"created"),P(X,A,A.scopeId,N,st),lt){for(const qt in lt)qt!=="value"&&!ni(qt)&&r(X,qt,null,lt[qt],T,st);"value"in lt&&r(X,"value",null,lt.value,T),(nt=lt.onVnodeBeforeMount)&&$n(nt,st,A)}pt&&Ls(A,null,st,"beforeMount");const Et=av(Q,G);Et&&G.beforeEnter(X),s(X,$,z),((nt=lt&<.onVnodeMounted)||Et||pt)&&Ge(()=>{nt&&$n(nt,st,A),Et&&G.enter(X),pt&&Ls(A,null,st,"mounted")},Q)},P=(A,$,z,st,Q)=>{if(z&&p(A,z),st)for(let T=0;T{for(let nt=X;nt{const H=$.el=A.el;let{patchFlag:X,dynamicChildren:nt,dirs:lt}=$;X|=A.patchFlag&16;const F=A.props||Zt,G=$.props||Zt;let pt;if(z&&Qi(z,!1),(pt=G.onVnodeBeforeUpdate)&&$n(pt,z,$,A),lt&&Ls($,A,z,"beforeUpdate"),z&&Qi(z,!0),(F.innerHTML&&G.innerHTML==null||F.textContent&&G.textContent==null)&&u(H,""),nt?R(A.dynamicChildren,nt,H,z,st,Ed($,Q),T):N||at(A,$,H,null,z,st,Ed($,Q),T,!1),X>0){if(X&16)B(H,F,G,z,Q);else if(X&2&&F.class!==G.class&&r(H,"class",null,G.class,Q),X&4&&r(H,"style",F.style,G.style,Q),X&8){const Et=$.dynamicProps;for(let qt=0;qt{pt&&$n(pt,z,$,A),lt&&Ls($,A,z,"updated")},st)},R=(A,$,z,st,Q,T,N)=>{for(let H=0;H<$.length;H++){const X=A[H],nt=$[H],lt=X.el&&(X.type===ht||!ys(X,nt)||X.shapeFlag&70)?d(X.el):z;m(X,nt,lt,null,st,Q,T,N,!0)}},B=(A,$,z,st,Q)=>{if($!==z){if($!==Zt)for(const T in $)!ni(T)&&!(T in z)&&r(A,T,$[T],null,Q,st);for(const T in z){if(ni(T))continue;const N=z[T],H=$[T];N!==H&&T!=="value"&&r(A,T,H,N,Q,st)}"value"in z&&r(A,"value",$.value,z.value,Q)}},V=(A,$,z,st,Q,T,N,H,X)=>{const nt=$.el=A?A.el:a(""),lt=$.anchor=A?A.anchor:a("");let{patchFlag:F,dynamicChildren:G,slotScopeIds:pt}=$;pt&&(H=H?H.concat(pt):pt),A==null?(s(nt,z,st),s(lt,z,st),L($.children||[],z,lt,Q,T,N,H,X)):F>0&&F&64&&G&&A.dynamicChildren?(R(A.dynamicChildren,G,z,Q,T,N,H),($.key!=null||Q&&$===Q.subTree)&&Wp(A,$,!0)):at(A,$,z,lt,Q,T,N,H,X)},j=(A,$,z,st,Q,T,N,H,X)=>{$.slotScopeIds=H,A==null?$.shapeFlag&512?Q.ctx.activate($,z,st,N,X):Z($,z,st,Q,T,N,X):ot(A,$,X)},Z=(A,$,z,st,Q,T,N)=>{const H=A.component=Ev(A,st,Q);if(Ga(A)&&(H.ctx.renderer=yt),Cv(H,!1,N),H.asyncDep){if(Q&&Q.registerDep(H,q,N),!A.el){const X=H.subTree=C(ze);y(null,X,$,z)}}else q(H,A,$,z,Q,T,N)},ot=(A,$,z)=>{const st=$.component=A.component;if(pw(A,$,z))if(st.asyncDep&&!st.asyncResolved){et(st,$,z);return}else st.next=$,st.update();else $.el=A.el,st.vnode=$},q=(A,$,z,st,Q,T,N)=>{const H=()=>{if(A.isMounted){let{next:F,bu:G,u:pt,parent:Et,vnode:qt}=A;{const mt=lv(A);if(mt){F&&(F.el=qt.el,et(A,F,N)),mt.asyncDep.then(()=>{A.isUnmounted||H()});return}}let U=F,W;Qi(A,!1),F?(F.el=qt.el,et(A,F,N)):F=qt,G&&pr(G),(W=F.props&&F.props.onVnodeBeforeUpdate)&&$n(W,Et,F,qt),Qi(A,!0);const K=Wl(A),it=A.subTree;A.subTree=K,m(it,K,d(it.el),Y(it),A,Q,T),F.el=K.el,U===null&&vu(A,K.el),pt&&Ge(pt,Q),(W=F.props&&F.props.onVnodeUpdated)&&Ge(()=>$n(W,Et,F,qt),Q)}else{let F;const{el:G,props:pt}=$,{bm:Et,m:qt,parent:U,root:W,type:K}=A,it=Fi($);if(Qi(A,!1),Et&&pr(Et),!it&&(F=pt&&pt.onVnodeBeforeMount)&&$n(F,U,$),Qi(A,!0),G&&Xt){const mt=()=>{A.subTree=Wl(A),Xt(G,A.subTree,A,Q,null)};it&&K.__asyncHydrate?K.__asyncHydrate(G,A,mt):mt()}else{W.ce&&W.ce._injectChildStyle(K);const mt=A.subTree=Wl(A);m(null,mt,z,st,A,Q,T),$.el=mt.el}if(qt&&Ge(qt,Q),!it&&(F=pt&&pt.onVnodeMounted)){const mt=$;Ge(()=>$n(F,U,mt),Q)}($.shapeFlag&256||U&&Fi(U.vnode)&&U.vnode.shapeFlag&256)&&A.a&&Ge(A.a,Q),A.isMounted=!0,$=z=st=null}};A.scope.on();const X=A.effect=new Sa(H);A.scope.off();const nt=A.update=X.run.bind(X),lt=A.job=X.runIfDirty.bind(X);lt.i=A,lt.id=A.uid,X.scheduler=()=>$p(lt),Qi(A,!0),nt()},et=(A,$,z)=>{$.component=A;const st=A.vnode.props;A.vnode=$,A.next=null,tw(A,$.props,st,z),iw(A,$.children,z),Gi(),cm(A),Ki()},at=(A,$,z,st,Q,T,N,H,X=!1)=>{const nt=A&&A.children,lt=A?A.shapeFlag:0,F=$.children,{patchFlag:G,shapeFlag:pt}=$;if(G>0){if(G&128){Kt(nt,F,z,st,Q,T,N,H,X);return}else if(G&256){kt(nt,F,z,st,Q,T,N,H,X);return}}pt&8?(lt&16&&zt(nt,Q,T),F!==nt&&u(z,F)):lt&16?pt&16?Kt(nt,F,z,st,Q,T,N,H,X):zt(nt,Q,T,!0):(lt&8&&u(z,""),pt&16&&L(F,z,st,Q,T,N,H,X))},kt=(A,$,z,st,Q,T,N,H,X)=>{A=A||ur,$=$||ur;const nt=A.length,lt=$.length,F=Math.min(nt,lt);let G;for(G=0;Glt?zt(A,Q,T,!0,!1,F):L($,z,st,Q,T,N,H,X,F)},Kt=(A,$,z,st,Q,T,N,H,X)=>{let nt=0;const lt=$.length;let F=A.length-1,G=lt-1;for(;nt<=F&&nt<=G;){const pt=A[nt],Et=$[nt]=X?Oi($[nt]):Rn($[nt]);if(ys(pt,Et))m(pt,Et,z,null,Q,T,N,H,X);else break;nt++}for(;nt<=F&&nt<=G;){const pt=A[F],Et=$[G]=X?Oi($[G]):Rn($[G]);if(ys(pt,Et))m(pt,Et,z,null,Q,T,N,H,X);else break;F--,G--}if(nt>F){if(nt<=G){const pt=G+1,Et=ptG)for(;nt<=F;)Wt(A[nt],Q,T,!0),nt++;else{const pt=nt,Et=nt,qt=new Map;for(nt=Et;nt<=G;nt++){const Lt=$[nt]=X?Oi($[nt]):Rn($[nt]);Lt.key!=null&&qt.set(Lt.key,nt)}let U,W=0;const K=G-Et+1;let it=!1,mt=0;const xt=new Array(K);for(nt=0;nt=K){Wt(Lt,Q,T,!0);continue}let oe;if(Lt.key!=null)oe=qt.get(Lt.key);else for(U=Et;U<=G;U++)if(xt[U-Et]===0&&ys(Lt,$[U])){oe=U;break}oe===void 0?Wt(Lt,Q,T,!0):(xt[oe-Et]=nt+1,oe>=mt?mt=oe:it=!0,m(Lt,$[oe],z,null,Q,T,N,H,X),W++)}const Dt=it?rw(xt):ur;for(U=Dt.length-1,nt=K-1;nt>=0;nt--){const Lt=Et+nt,oe=$[Lt],Nt=Lt+1{const{el:T,type:N,transition:H,children:X,shapeFlag:nt}=A;if(nt&6){Vt(A.component.subTree,$,z,st);return}if(nt&128){A.suspense.move($,z,st);return}if(nt&64){N.move(A,$,z,yt);return}if(N===ht){s(T,$,z);for(let F=0;FH.enter(T),Q);else{const{leave:F,delayLeave:G,afterLeave:pt}=H,Et=()=>s(T,$,z),qt=()=>{F(T,()=>{Et(),pt&&pt()})};G?G(T,Et,qt):qt()}else s(T,$,z)},Wt=(A,$,z,st=!1,Q=!1)=>{const{type:T,props:N,ref:H,children:X,dynamicChildren:nt,shapeFlag:lt,patchFlag:F,dirs:G,cacheIndex:pt}=A;if(F===-2&&(Q=!1),H!=null&&xa(H,null,z,A,!0),pt!=null&&($.renderCache[pt]=void 0),lt&256){$.ctx.deactivate(A);return}const Et=lt&1&&G,qt=!Fi(A);let U;if(qt&&(U=N&&N.onVnodeBeforeUnmount)&&$n(U,$,A),lt&6)_e(A.component,z,st);else{if(lt&128){A.suspense.unmount(z,st);return}Et&&Ls(A,null,$,"beforeUnmount"),lt&64?A.type.remove(A,$,z,yt,st):nt&&!nt.hasOnce&&(T!==ht||F>0&&F&64)?zt(nt,$,z,!1,!0):(T===ht&&F&384||!Q&<&16)&&zt(X,$,z),st&&pe(A)}(qt&&(U=N&&N.onVnodeUnmounted)||Et)&&Ge(()=>{U&&$n(U,$,A),Et&&Ls(A,null,$,"unmounted")},z)},pe=A=>{const{type:$,el:z,anchor:st,transition:Q}=A;if($===ht){be(z,st);return}if($===gr){v(A);return}const T=()=>{i(z),Q&&!Q.persisted&&Q.afterLeave&&Q.afterLeave()};if(A.shapeFlag&1&&Q&&!Q.persisted){const{leave:N,delayLeave:H}=Q,X=()=>N(z,T);H?H(A.el,T,X):X()}else T()},be=(A,$)=>{let z;for(;A!==$;)z=f(A),i(A),A=z;i($)},_e=(A,$,z)=>{const{bum:st,scope:Q,job:T,subTree:N,um:H,m:X,a:nt}=A;_c(X),_c(nt),st&&pr(st),Q.stop(),T&&(T.flags|=8,Wt(N,A,$,z)),H&&Ge(H,$),Ge(()=>{A.isUnmounted=!0},$),$&&$.pendingBranch&&!$.isUnmounted&&A.asyncDep&&!A.asyncResolved&&A.suspenseId===$.pendingId&&($.deps--,$.deps===0&&$.resolve())},zt=(A,$,z,st=!1,Q=!1,T=0)=>{for(let N=T;N{if(A.shapeFlag&6)return Y(A.component.subTree);if(A.shapeFlag&128)return A.suspense.next();const $=f(A.anchor||A.el),z=$&&$[A_];return z?f(z):$};let dt=!1;const ct=(A,$,z)=>{A==null?$._vnode&&Wt($._vnode,null,null,!0):m($._vnode||null,A,$,null,null,null,z),$._vnode=A,dt||(dt=!0,cm(),bc(),dt=!1)},yt={p:m,um:Wt,m:Vt,r:pe,mt:Z,mc:L,pc:at,pbc:R,n:Y,o:t};let Ht,Xt;return e&&([Ht,Xt]=e(yt)),{render:ct,hydrate:Ht,createApp:JE(ct,Ht)}}function Ed({type:t,props:e},n){return n==="svg"&&t==="foreignObject"||n==="mathml"&&t==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:n}function Qi({effect:t,job:e},n){n?(t.flags|=32,e.flags|=4):(t.flags&=-33,e.flags&=-5)}function av(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function Wp(t,e,n=!1){const s=t.children,i=e.children;if(bt(s)&&bt(i))for(let r=0;r>1,t[n[a]]0&&(e[s]=n[r-1]),n[r]=s)}}for(r=n.length,o=n[r-1];r-- >0;)n[r]=o,o=e[o];return n}function lv(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:lv(e)}function _c(t){if(t)for(let e=0;eis(cv);function dv(t,e){return Ya(t,null,e)}function ow(t,e){return Ya(t,null,{flush:"post"})}function fv(t,e){return Ya(t,null,{flush:"sync"})}function qn(t,e,n){return Ya(t,e,n)}function Ya(t,e,n=Zt){const{immediate:s,deep:i,flush:r,once:o}=n,a=Jt({},n),l=e&&s||!e&&r!=="post";let c;if(uo){if(r==="sync"){const p=uv();c=p.__watcherHandles||(p.__watcherHandles=[])}else if(!l){const p=()=>{};return p.stop=Qe,p.resume=Qe,p.pause=Qe,p}}const u=Ke;a.call=(p,h,m)=>as(p,u,h,m);let d=!1;r==="post"?a.scheduler=p=>{Ge(p,u&&u.suspense)}:r!=="sync"&&(d=!0,a.scheduler=(p,h)=>{h?p():$p(p)}),a.augmentJob=p=>{e&&(p.flags|=4),d&&(p.flags|=2,u&&(p.id=u.uid,p.i=u))};const f=Q3(t,e,a);return uo&&(c?c.push(f):l&&f()),f}function aw(t,e,n){const s=this.proxy,i=$t(t)?t.includes(".")?pv(s,t):()=>s[t]:t.bind(s,s);let r;Ot(e)?r=e:(r=e.handler,n=e);const o=Sr(this),a=Ya(i,r.bind(s),n);return o(),a}function pv(t,e){const n=e.split(".");return()=>{let s=t;for(let i=0;i{let u,d=Zt,f;return fv(()=>{const p=t[i];cn(u,p)&&(u=p,c())}),{get(){return l(),n.get?n.get(u):u},set(p){const h=n.set?n.set(p):p;if(!cn(h,u)&&!(d!==Zt&&cn(p,d)))return;const m=s.vnode.props;m&&(e in m||i in m||r in m)&&(`onUpdate:${e}`in m||`onUpdate:${i}`in m||`onUpdate:${r}`in m)||(u=p,c()),s.emit(`update:${e}`,h),cn(p,h)&&cn(p,d)&&!cn(h,f)&&c(),d=p,f=h}}});return a[Symbol.iterator]=()=>{let l=0;return{next(){return l<2?{value:l++?o||Zt:a,done:!1}:{done:!0}}}},a}const hv=(t,e)=>e==="modelValue"||e==="model-value"?t.modelModifiers:t[`${e}Modifiers`]||t[`${we(e)}Modifiers`]||t[`${fn(e)}Modifiers`];function cw(t,e,...n){if(t.isUnmounted)return;const s=t.vnode.props||Zt;let i=n;const r=e.startsWith("update:"),o=r&&hv(s,e.slice(7));o&&(o.trim&&(i=n.map(u=>$t(u)?u.trim():u)),o.number&&(i=n.map(_a)));let a,l=s[a=fr(e)]||s[a=fr(we(e))];!l&&r&&(l=s[a=fr(fn(e))]),l&&as(l,t,6,i);const c=s[a+"Once"];if(c){if(!t.emitted)t.emitted={};else if(t.emitted[a])return;t.emitted[a]=!0,as(c,t,6,i)}}function mv(t,e,n=!1){const s=e.emitsCache,i=s.get(t);if(i!==void 0)return i;const r=t.emits;let o={},a=!1;if(!Ot(t)){const l=c=>{const u=mv(c,e,!0);u&&(a=!0,Jt(o,u))};!n&&e.mixins.length&&e.mixins.forEach(l),t.extends&&l(t.extends),t.mixins&&t.mixins.forEach(l)}return!r&&!a?(de(t)&&s.set(t,null),null):(bt(r)?r.forEach(l=>o[l]=null):Jt(o,r),de(t)&&s.set(t,o),o)}function _u(t,e){return!t||!Wi(e)?!1:(e=e.slice(2).replace(/Once$/,""),ae(t,e[0].toLowerCase()+e.slice(1))||ae(t,fn(e))||ae(t,e))}function Wl(t){const{type:e,vnode:n,proxy:s,withProxy:i,propsOptions:[r],slots:o,attrs:a,emit:l,render:c,renderCache:u,props:d,data:f,setupState:p,ctx:h,inheritAttrs:m}=t,_=Ta(t);let y,S;try{if(n.shapeFlag&4){const v=i||s,E=v;y=Rn(c.call(E,v,u,d,p,f,h)),S=a}else{const v=e;y=Rn(v.length>1?v(d,{attrs:a,slots:o,emit:l}):v(d,null)),S=e.props?a:dw(a)}}catch(v){aa.length=0,Or(v,t,1),y=C(ze)}let b=y;if(S&&m!==!1){const v=Object.keys(S),{shapeFlag:E}=b;v.length&&E&7&&(r&&v.some(tu)&&(S=fw(S,r)),b=Hs(b,S,!1,!0))}return n.dirs&&(b=Hs(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&li(b,n.transition),y=b,Ta(_),y}function uw(t,e=!0){let n;for(let s=0;s{let e;for(const n in t)(n==="class"||n==="style"||Wi(n))&&((e||(e={}))[n]=t[n]);return e},fw=(t,e)=>{const n={};for(const s in t)(!tu(s)||!(s.slice(9)in e))&&(n[s]=t[s]);return n};function pw(t,e,n){const{props:s,children:i,component:r}=t,{props:o,children:a,patchFlag:l}=e,c=r.emitsOptions;if(e.dirs||e.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return s?Sm(s,o,c):!!o;if(l&8){const u=e.dynamicProps;for(let d=0;dt.__isSuspense;let kf=0;const hw={name:"Suspense",__isSuspense:!0,process(t,e,n,s,i,r,o,a,l,c){if(t==null)gw(e,n,s,i,r,o,a,l,c);else{if(r&&r.deps>0&&!t.suspense.isInFallback){e.suspense=t.suspense,e.suspense.vnode=e,e.el=t.el;return}bw(t,e,n,s,i,o,a,l,c)}},hydrate:yw,normalize:_w},mw=hw;function Oa(t,e){const n=t.props&&t.props[e];Ot(n)&&n()}function gw(t,e,n,s,i,r,o,a,l){const{p:c,o:{createElement:u}}=l,d=u("div"),f=t.suspense=gv(t,i,s,e,d,n,r,o,a,l);c(null,f.pendingBranch=t.ssContent,d,null,s,f,r,o),f.deps>0?(Oa(t,"onPending"),Oa(t,"onFallback"),c(null,t.ssFallback,e,n,s,null,r,o),ro(f,t.ssFallback)):f.resolve(!1,!0)}function bw(t,e,n,s,i,r,o,a,{p:l,um:c,o:{createElement:u}}){const d=e.suspense=t.suspense;d.vnode=e,e.el=t.el;const f=e.ssContent,p=e.ssFallback,{activeBranch:h,pendingBranch:m,isInFallback:_,isHydrating:y}=d;if(m)d.pendingBranch=f,ys(f,m)?(l(m,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0?d.resolve():_&&(y||(l(h,p,n,s,i,null,r,o,a),ro(d,p)))):(d.pendingId=kf++,y?(d.isHydrating=!1,d.activeBranch=m):c(m,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u("div"),_?(l(null,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0?d.resolve():(l(h,p,n,s,i,null,r,o,a),ro(d,p))):h&&ys(f,h)?(l(h,f,n,s,i,d,r,o,a),d.resolve(!0)):(l(null,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0&&d.resolve()));else if(h&&ys(f,h))l(h,f,n,s,i,d,r,o,a),ro(d,f);else if(Oa(e,"onPending"),d.pendingBranch=f,f.shapeFlag&512?d.pendingId=f.component.suspenseId:d.pendingId=kf++,l(null,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0)d.resolve();else{const{timeout:S,pendingId:b}=d;S>0?setTimeout(()=>{d.pendingId===b&&d.fallback(p)},S):S===0&&d.fallback(p)}}function gv(t,e,n,s,i,r,o,a,l,c,u=!1){const{p:d,m:f,um:p,n:h,o:{parentNode:m,remove:_}}=c;let y;const S=vw(t);S&&e&&e.pendingBranch&&(y=e.pendingId,e.deps++);const b=t.props?va(t.props.timeout):void 0,v=r,E={vnode:t,parent:e,parentComponent:n,namespace:o,container:s,hiddenContainer:i,deps:0,pendingId:kf++,timeout:typeof b=="number"?b:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(w=!1,P=!1){const{vnode:L,activeBranch:k,pendingBranch:R,pendingId:B,effects:V,parentComponent:j,container:Z}=E;let ot=!1;E.isHydrating?E.isHydrating=!1:w||(ot=k&&R.transition&&R.transition.mode==="out-in",ot&&(k.transition.afterLeave=()=>{B===E.pendingId&&(f(R,Z,r===v?h(k):r,0),Ca(V))}),k&&(m(k.el)===Z&&(r=h(k)),p(k,j,E,!0)),ot||f(R,Z,r,0)),ro(E,R),E.pendingBranch=null,E.isInFallback=!1;let q=E.parent,et=!1;for(;q;){if(q.pendingBranch){q.effects.push(...V),et=!0;break}q=q.parent}!et&&!ot&&Ca(V),E.effects=[],S&&e&&e.pendingBranch&&y===e.pendingId&&(e.deps--,e.deps===0&&!P&&e.resolve()),Oa(L,"onResolve")},fallback(w){if(!E.pendingBranch)return;const{vnode:P,activeBranch:L,parentComponent:k,container:R,namespace:B}=E;Oa(P,"onFallback");const V=h(L),j=()=>{E.isInFallback&&(d(null,w,R,V,k,null,B,a,l),ro(E,w))},Z=w.transition&&w.transition.mode==="out-in";Z&&(L.transition.afterLeave=j),E.isInFallback=!0,p(L,k,null,!0),Z||j()},move(w,P,L){E.activeBranch&&f(E.activeBranch,w,P,L),E.container=w},next(){return E.activeBranch&&h(E.activeBranch)},registerDep(w,P,L){const k=!!E.pendingBranch;k&&E.deps++;const R=w.vnode.el;w.asyncDep.catch(B=>{Or(B,w,0)}).then(B=>{if(w.isUnmounted||E.isUnmounted||E.pendingId!==w.suspenseId)return;w.asyncResolved=!0;const{vnode:V}=w;Of(w,B,!1),R&&(V.el=R);const j=!R&&w.subTree.el;P(w,V,m(R||w.subTree.el),R?null:h(w.subTree),E,o,L),j&&_(j),vu(w,V.el),k&&--E.deps===0&&E.resolve()})},unmount(w,P){E.isUnmounted=!0,E.activeBranch&&p(E.activeBranch,n,w,P),E.pendingBranch&&p(E.pendingBranch,n,w,P)}};return E}function yw(t,e,n,s,i,r,o,a,l){const c=e.suspense=gv(e,s,n,t.parentNode,document.createElement("div"),null,i,r,o,a,!0),u=l(t,c.pendingBranch=e.ssContent,n,c,r,o);return c.deps===0&&c.resolve(!1,!0),u}function _w(t){const{shapeFlag:e,children:n}=t,s=e&32;t.ssContent=Em(s?n.default:n),t.ssFallback=s?Em(n.fallback):C(ze)}function Em(t){let e;if(Ot(t)){const n=vr&&t._c;n&&(t._d=!1,O()),t=t(),n&&(t._d=!0,e=gn,yv())}return bt(t)&&(t=uw(t)),t=Rn(t),e&&!t.dynamicChildren&&(t.dynamicChildren=e.filter(n=>n!==t)),t}function bv(t,e){e&&e.pendingBranch?bt(t)?e.effects.push(...t):e.effects.push(t):Ca(t)}function ro(t,e){t.activeBranch=e;const{vnode:n,parentComponent:s}=t;let i=e.el;for(;!i&&e.component;)e=e.component.subTree,i=e.el;n.el=i,s&&s.subTree===n&&(s.vnode.el=i,vu(s,i))}function vw(t){const e=t.props&&t.props.suspensible;return e!=null&&e!==!1}const ht=Symbol.for("v-fgt"),si=Symbol.for("v-txt"),ze=Symbol.for("v-cmt"),gr=Symbol.for("v-stc"),aa=[];let gn=null;function O(t=!1){aa.push(gn=t?null:[])}function yv(){aa.pop(),gn=aa[aa.length-1]||null}let vr=1;function Tf(t,e=!1){vr+=t,t<0&&gn&&e&&(gn.hasOnce=!0)}function _v(t){return t.dynamicChildren=vr>0?gn||ur:null,yv(),vr>0&&gn&&gn.push(t),t}function M(t,e,n,s,i,r){return _v(g(t,e,n,s,i,r,!0))}function vt(t,e,n,s,i){return _v(C(t,e,n,s,i,!0))}function ci(t){return t?t.__v_isVNode===!0:!1}function ys(t,e){return t.type===e.type&&t.key===e.key}function Sw(t){}const vv=({key:t})=>t??null,zl=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?$t(t)||Ae(t)||Ot(t)?{i:Xe,r:t,k:e,f:!!n}:t:null);function g(t,e=null,n=null,s=0,i=null,r=t===ht?0:1,o=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&vv(e),ref:e&&zl(e),scopeId:pu,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:s,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:Xe};return a?(zp(l,n),r&128&&t.normalize(l)):n&&(l.shapeFlag|=$t(n)?8:16),vr>0&&!o&&gn&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&gn.push(l),l}const C=Ew;function Ew(t,e=null,n=null,s=0,i=null,r=!1){if((!t||t===W_)&&(t=ze),ci(t)){const a=Hs(t,e,!0);return n&&zp(a,n),vr>0&&!r&&gn&&(a.shapeFlag&6?gn[gn.indexOf(t)]=a:gn.push(a)),a.patchFlag=-2,a}if(Iw(t)&&(t=t.__vccOpts),e){e=Sv(e);let{class:a,style:l}=e;a&&!$t(a)&&(e.class=Bt(a)),de(l)&&(uu(l)&&!bt(l)&&(l=Jt({},l)),e.style=di(l))}const o=$t(t)?1:vc(t)?128:O_(t)?64:de(t)?4:Ot(t)?2:0;return g(t,e,n,s,i,o,r,!0)}function Sv(t){return t?uu(t)||Z_(t)?Jt({},t):t:null}function Hs(t,e,n=!1,s=!1){const{props:i,ref:r,patchFlag:o,children:a,transition:l}=t,c=e?eo(i||{},e):i,u={__v_isVNode:!0,__v_skip:!0,type:t.type,props:c,key:c&&vv(c),ref:e&&e.ref?n&&r?bt(r)?r.concat(zl(e)):[r,zl(e)]:zl(e):r,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:a,target:t.target,targetStart:t.targetStart,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==ht?o===-1?16:o|16:o,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:l,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&Hs(t.ssContent),ssFallback:t.ssFallback&&Hs(t.ssFallback),el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return l&&s&&li(u,l.clone(u)),u}function Us(t=" ",e=0){return C(si,null,t,e)}function ww(t,e){const n=C(gr,null,t);return n.staticCount=e,n}function _t(t="",e=!1){return e?(O(),vt(ze,null,t)):C(ze,null,t)}function Rn(t){return t==null||typeof t=="boolean"?C(ze):bt(t)?C(ht,null,t.slice()):ci(t)?Oi(t):C(si,null,String(t))}function Oi(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:Hs(t)}function zp(t,e){let n=0;const{shapeFlag:s}=t;if(e==null)e=null;else if(bt(e))n=16;else if(typeof e=="object")if(s&65){const i=e.default;i&&(i._c&&(i._d=!1),zp(t,i()),i._c&&(i._d=!0));return}else{n=32;const i=e._;!i&&!Z_(e)?e._ctx=Xe:i===3&&Xe&&(Xe.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else Ot(e)?(e={default:e,_ctx:Xe},n=32):(e=String(e),s&64?(n=16,e=[Us(e)]):n=8);t.children=e,t.shapeFlag|=n}function eo(...t){const e={};for(let n=0;nKe||Xe;let Sc,xf;{const t=za(),e=(n,s)=>{let i;return(i=t[n])||(i=t[n]=[]),i.push(s),r=>{i.length>1?i.forEach(o=>o(r)):i[0](r)}};Sc=e("__VUE_INSTANCE_SETTERS__",n=>Ke=n),xf=e("__VUE_SSR_SETTERS__",n=>uo=n)}const Sr=t=>{const e=Ke;return Sc(t),t.scope.on(),()=>{t.scope.off(),Sc(e)}},Af=()=>{Ke&&Ke.scope.off(),Sc(null)};function wv(t){return t.vnode.shapeFlag&4}let uo=!1;function Cv(t,e=!1,n=!1){e&&xf(e);const{props:s,children:i}=t.vnode,r=wv(t);QE(t,s,r,e),sw(t,i,n);const o=r?Tw(t,e):void 0;return e&&xf(!1),o}function Tw(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,Sf);const{setup:s}=n;if(s){Gi();const i=t.setupContext=s.length>1?Tv(t):null,r=Sr(t),o=xo(s,t,0,[t.props,i]),a=nu(o);if(Ki(),r(),(a||t.sp)&&!Fi(t)&&Dp(t),a){if(o.then(Af,Af),e)return o.then(l=>{Of(t,l,e)}).catch(l=>{Or(l,t,0)});t.asyncDep=o}else Of(t,o,e)}else kv(t,e)}function Of(t,e,n){Ot(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:de(e)&&(t.setupState=Pp(e)),kv(t,n)}let Ec,If;function xw(t){Ec=t,If=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,PE))}}const Aw=()=>!Ec;function kv(t,e,n){const s=t.type;if(!t.render){if(!e&&Ec&&!s.render){const i=s.template||jp(t).template;if(i){const{isCustomElement:r,compilerOptions:o}=t.appContext.config,{delimiters:a,compilerOptions:l}=s,c=Jt(Jt({isCustomElement:r,delimiters:a},o),l);s.render=Ec(i,c)}}t.render=s.render||Qe,If&&If(t)}{const i=Sr(t);Gi();try{qE(t)}finally{Ki(),i()}}}const Ow={get(t,e){return un(t,"get",""),t[e]}};function Tv(t){const e=n=>{t.exposed=n||{}};return{attrs:new Proxy(t.attrs,Ow),slots:t.slots,emit:t.emit,expose:e}}function Za(t){return t.exposed?t.exposeProxy||(t.exposeProxy=new Proxy(Pp(du(t.exposed)),{get(e,n){if(n in e)return e[n];if(n in ra)return ra[n](t)},has(e,n){return n in e||n in ra}})):t.proxy}function Nf(t,e=!0){return Ot(t)?t.displayName||t.name:t.name||e&&t.__name}function Iw(t){return Ot(t)&&"__vccOpts"in t}const Je=(t,e)=>X3(t,e,uo);function Ms(t,e,n){const s=arguments.length;return s===2?de(e)&&!bt(e)?ci(e)?C(t,null,[e]):C(t,e):C(t,null,e):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&ci(n)&&(n=[n]),C(t,e,n))}function Nw(){}function Pw(t,e,n,s){const i=n[s];if(i&&xv(i,t))return i;const r=e();return r.memo=t.slice(),r.cacheIndex=s,n[s]=r}function xv(t,e){const n=t.memo;if(n.length!=e.length)return!1;for(let s=0;s0&&gn&&gn.push(t),!0}const Av="3.5.13",$w=Qe,Rw=iE,Lw=qr,Dw=x_,Mw={createComponentInstance:Ev,setupComponent:Cv,renderComponentRoot:Wl,setCurrentRenderingInstance:Ta,isVNode:ci,normalizeVNode:Rn,getComponentPublicInstance:Za,ensureValidVNode:Up,pushWarningContext:tE,popWarningContext:eE},Fw=Mw,Vw=null,Hw=null,Uw=null;/** +**/const w_=[];function tE(t){w_.push(t)}function eE(){w_.pop()}function nE(t,e){}const sE={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},iE={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush",15:"component update",16:"app unmount cleanup function"};function xo(t,e,n,s){try{return s?t(...s):t()}catch(i){Or(i,e,n)}}function as(t,e,n,s){if(Ot(t)){const i=xo(t,e,n,s);return i&&nu(i)&&i.catch(r=>{Or(r,e,n)}),i}if(bt(t)){const i=[];for(let r=0;r>>1,i=En[s],r=ka(i);r=ka(n)?En.push(t):En.splice(oE(e),0,t),t.flags|=1,k_()}}function k_(){gc||(gc=C_.then(T_))}function Ca(t){bt(t)?io.push(...t):xi&&t.id===-1?xi.splice(zr+1,0,t):t.flags&1||(io.push(t),t.flags|=1),k_()}function cm(t,e,n=$s+1){for(;nka(n)-ka(s));if(io.length=0,xi){xi.push(...e);return}for(xi=e,zr=0;zrt.id==null?t.flags&2?-1:1/0:t.id;function T_(t){try{for($s=0;$sqr.emit(i,...r)),ml=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((e.__VUE_DEVTOOLS_HOOK_REPLAY__=e.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(r=>{x_(r,e)}),setTimeout(()=>{qr||(e.__VUE_DEVTOOLS_HOOK_REPLAY__=null,ml=[])},3e3)):ml=[]}let Xe=null,pu=null;function Ta(t){const e=Xe;return Xe=t,pu=t&&t.type.__scopeId||null,e}function aE(t){pu=t}function lE(){pu=null}const cE=t=>D;function D(t,e=Xe,n){if(!e||t._n)return t;const s=(...i)=>{s._d&&Tf(-1);const r=Ta(e);let o;try{o=t(...i)}finally{Ta(r),s._d&&Tf(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function xn(t,e){if(Xe===null)return t;const n=Za(Xe),s=t.dirs||(t.dirs=[]);for(let i=0;it.__isTeleport,ia=t=>t&&(t.disabled||t.disabled===""),um=t=>t&&(t.defer||t.defer===""),dm=t=>typeof SVGElement<"u"&&t instanceof SVGElement,fm=t=>typeof MathMLElement=="function"&&t instanceof MathMLElement,_f=(t,e)=>{const n=t&&t.to;return $t(n)?e?e(n):null:n},I_={name:"Teleport",__isTeleport:!0,process(t,e,n,s,i,r,o,a,l,c){const{mc:u,pc:d,pbc:f,o:{insert:p,querySelector:h,createText:m,createComment:_}}=c,y=ia(e.props);let{shapeFlag:S,children:b,dynamicChildren:v}=e;if(t==null){const E=e.el=m(""),w=e.anchor=m("");p(E,n,s),p(w,n,s);const P=(k,R)=>{S&16&&(i&&i.isCE&&(i.ce._teleportTarget=k),u(b,k,R,i,r,o,a,l))},L=()=>{const k=e.target=_f(e.props,h),R=N_(k,e,m,p);k&&(o!=="svg"&&dm(k)?o="svg":o!=="mathml"&&fm(k)&&(o="mathml"),y||(P(k,R),Bl(e,!1)))};y&&(P(n,w),Bl(e,!0)),um(e.props)?Ge(()=>{L(),e.el.__isMounted=!0},r):L()}else{if(um(e.props)&&!t.el.__isMounted){Ge(()=>{I_.process(t,e,n,s,i,r,o,a,l,c),delete t.el.__isMounted},r);return}e.el=t.el,e.targetStart=t.targetStart;const E=e.anchor=t.anchor,w=e.target=t.target,P=e.targetAnchor=t.targetAnchor,L=ia(t.props),k=L?n:w,R=L?E:P;if(o==="svg"||dm(w)?o="svg":(o==="mathml"||fm(w))&&(o="mathml"),v?(f(t.dynamicChildren,v,k,i,r,o,a),Wp(t,e,!0)):l||d(t,e,k,R,i,r,o,a,!1),y)L?e.props&&t.props&&e.props.to!==t.props.to&&(e.props.to=t.props.to):gl(e,n,E,c,1);else if((e.props&&e.props.to)!==(t.props&&t.props.to)){const B=e.target=_f(e.props,h);B&&gl(e,B,null,c,0)}else L&&gl(e,w,P,c,1);Bl(e,y)}},remove(t,e,n,{um:s,o:{remove:i}},r){const{shapeFlag:o,children:a,anchor:l,targetStart:c,targetAnchor:u,target:d,props:f}=t;if(d&&(i(c),i(u)),r&&i(l),o&16){const p=r||!ia(f);for(let h=0;h{t.isMounted=!0}),bu(()=>{t.isUnmounting=!0}),t}const Zn=[Function,Array],Lp={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Zn,onEnter:Zn,onAfterEnter:Zn,onEnterCancelled:Zn,onBeforeLeave:Zn,onLeave:Zn,onAfterLeave:Zn,onLeaveCancelled:Zn,onBeforeAppear:Zn,onAppear:Zn,onAfterAppear:Zn,onAppearCancelled:Zn},P_=t=>{const e=t.subTree;return e.component?P_(e.component):e},dE={name:"BaseTransition",props:Lp,setup(t,{slots:e}){const n=An(),s=Rp();return()=>{const i=e.default&&hu(e.default(),!0);if(!i||!i.length)return;const r=$_(i),o=ee(t),{mode:a}=o;if(s.isLeaving)return yd(r);const l=pm(r);if(!l)return yd(r);let c=co(l,o,s,n,d=>c=d);l.type!==ze&&li(l,c);let u=n.subTree&&pm(n.subTree);if(u&&u.type!==ze&&!ys(l,u)&&P_(n).type!==ze){let d=co(u,o,s,n);if(li(u,d),a==="out-in"&&l.type!==ze)return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete d.afterLeave,u=void 0},yd(r);a==="in-out"&&l.type!==ze?d.delayLeave=(f,p,h)=>{const m=L_(s,u);m[String(u.key)]=u,f[Ai]=()=>{p(),f[Ai]=void 0,delete c.delayedLeave,u=void 0},c.delayedLeave=()=>{h(),delete c.delayedLeave,u=void 0}}:u=void 0}else u&&(u=void 0);return r}}};function $_(t){let e=t[0];if(t.length>1){for(const n of t)if(n.type!==ze){e=n;break}}return e}const R_=dE;function L_(t,e){const{leavingVNodes:n}=t;let s=n.get(e.type);return s||(s=Object.create(null),n.set(e.type,s)),s}function co(t,e,n,s,i){const{appear:r,mode:o,persisted:a=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:p,onAfterLeave:h,onLeaveCancelled:m,onBeforeAppear:_,onAppear:y,onAfterAppear:S,onAppearCancelled:b}=e,v=String(t.key),E=L_(n,t),w=(k,R)=>{k&&as(k,s,9,R)},P=(k,R)=>{const B=R[1];w(k,R),bt(k)?k.every(V=>V.length<=1)&&B():k.length<=1&&B()},L={mode:o,persisted:a,beforeEnter(k){let R=l;if(!n.isMounted)if(r)R=_||l;else return;k[Ai]&&k[Ai](!0);const B=E[v];B&&ys(t,B)&&B.el[Ai]&&B.el[Ai](),w(R,[k])},enter(k){let R=c,B=u,V=d;if(!n.isMounted)if(r)R=y||c,B=S||u,V=b||d;else return;let j=!1;const Z=k[bl]=ot=>{j||(j=!0,ot?w(V,[k]):w(B,[k]),L.delayedLeave&&L.delayedLeave(),k[bl]=void 0)};R?P(R,[k,Z]):Z()},leave(k,R){const B=String(t.key);if(k[bl]&&k[bl](!0),n.isUnmounting)return R();w(f,[k]);let V=!1;const j=k[Ai]=Z=>{V||(V=!0,R(),Z?w(m,[k]):w(h,[k]),k[Ai]=void 0,E[B]===t&&delete E[B])};E[B]=t,p?P(p,[k,j]):j()},clone(k){const R=co(k,e,n,s,i);return i&&i(R),R}};return L}function yd(t){if(Ga(t))return t=Vs(t),t.children=null,t}function pm(t){if(!Ga(t))return O_(t.type)&&t.children?$_(t.children):t;const{shapeFlag:e,children:n}=t;if(n){if(e&16)return n[0];if(e&32&&Ot(n.default))return n.default()}}function li(t,e){t.shapeFlag&6&&t.component?(t.transition=e,li(t.component.subTree,e)):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}function hu(t,e=!1,n){let s=[],i=0;for(let r=0;r1)for(let r=0;rn.value,set:r=>n.value=r})}return n}function xa(t,e,n,s,i=!1){if(bt(t)){t.forEach((h,m)=>xa(h,e&&(bt(e)?e[m]:e),n,s,i));return}if(Fi(s)&&!i){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&xa(t,e,n,s.component.subTree);return}const r=s.shapeFlag&4?Za(s.component):s.el,o=i?null:r,{i:a,r:l}=t,c=e&&e.r,u=a.refs===Zt?a.refs={}:a.refs,d=a.setupState,f=ee(d),p=d===Zt?()=>!1:h=>ae(f,h);if(c!=null&&c!==l&&($t(c)?(u[c]=null,p(c)&&(d[c]=null)):Ae(c)&&(c.value=null)),Ot(l))xo(l,a,12,[o,u]);else{const h=$t(l),m=Ae(l);if(h||m){const _=()=>{if(t.f){const y=h?p(l)?d[l]:u[l]:l.value;i?bt(y)&&eu(y,r):bt(y)?y.includes(r)||y.push(r):h?(u[l]=[r],p(l)&&(d[l]=u[l])):(l.value=[r],t.k&&(u[t.k]=l.value))}else h?(u[l]=o,p(l)&&(d[l]=o)):m&&(l.value=o,t.k&&(u[t.k]=o))};o?(_.id=-1,Ge(_,n)):_()}}}let hm=!1;const Lr=()=>{hm||(console.error("Hydration completed but contains mismatches."),hm=!0)},hE=t=>t.namespaceURI.includes("svg")&&t.tagName!=="foreignObject",mE=t=>t.namespaceURI.includes("MathML"),yl=t=>{if(t.nodeType===1){if(hE(t))return"svg";if(mE(t))return"mathml"}},to=t=>t.nodeType===8;function gE(t){const{mt:e,p:n,o:{patchProp:s,createText:i,nextSibling:r,parentNode:o,remove:a,insert:l,createComment:c}}=t,u=(b,v)=>{if(!v.hasChildNodes()){n(null,b,v),bc(),v._vnode=b;return}d(v.firstChild,b,null,null,null),bc(),v._vnode=b},d=(b,v,E,w,P,L=!1)=>{L=L||!!v.dynamicChildren;const k=to(b)&&b.data==="[",R=()=>m(b,v,E,w,P,k),{type:B,ref:V,shapeFlag:j,patchFlag:Z}=v;let ot=b.nodeType;v.el=b,Z===-2&&(L=!1,v.dynamicChildren=null);let q=null;switch(B){case si:ot!==3?v.children===""?(l(v.el=i(""),o(b),b),q=b):q=R():(b.data!==v.children&&(Lr(),b.data=v.children),q=r(b));break;case ze:S(b)?(q=r(b),y(v.el=b.content.firstChild,b,E)):ot!==8||k?q=R():q=r(b);break;case gr:if(k&&(b=r(b),ot=b.nodeType),ot===1||ot===3){q=b;const et=!v.children.length;for(let at=0;at{L=L||!!v.dynamicChildren;const{type:k,props:R,patchFlag:B,shapeFlag:V,dirs:j,transition:Z}=v,ot=k==="input"||k==="option";if(ot||B!==-1){j&&Rs(v,null,E,"created");let q=!1;if(S(b)){q=av(null,Z)&&E&&E.vnode.props&&E.vnode.props.appear;const at=b.content.firstChild;q&&Z.beforeEnter(at),y(at,b,E),v.el=b=at}if(V&16&&!(R&&(R.innerHTML||R.textContent))){let at=p(b.firstChild,v,b,E,w,P,L);for(;at;){_l(b,1)||Lr();const kt=at;at=at.nextSibling,a(kt)}}else if(V&8){let at=v.children;at[0]===` +`&&(b.tagName==="PRE"||b.tagName==="TEXTAREA")&&(at=at.slice(1)),b.textContent!==at&&(_l(b,0)||Lr(),b.textContent=v.children)}if(R){if(ot||!L||B&48){const at=b.tagName.includes("-");for(const kt in R)(ot&&(kt.endsWith("value")||kt==="indeterminate")||Wi(kt)&&!ni(kt)||kt[0]==="."||at)&&s(b,kt,null,R[kt],void 0,E)}else if(R.onClick)s(b,"onClick",null,R.onClick,void 0,E);else if(B&4&&Ms(R.style))for(const at in R.style)R.style[at]}let et;(et=R&&R.onVnodeBeforeMount)&&$n(et,E,v),j&&Rs(v,null,E,"beforeMount"),((et=R&&R.onVnodeMounted)||j||q)&&bv(()=>{et&&$n(et,E,v),q&&Z.enter(b),j&&Rs(v,null,E,"mounted")},w)}return b.nextSibling},p=(b,v,E,w,P,L,k)=>{k=k||!!v.dynamicChildren;const R=v.children,B=R.length;for(let V=0;V{const{slotScopeIds:k}=v;k&&(P=P?P.concat(k):k);const R=o(b),B=p(r(b),v,R,E,w,P,L);return B&&to(B)&&B.data==="]"?r(v.anchor=B):(Lr(),l(v.anchor=c("]"),R,B),B)},m=(b,v,E,w,P,L)=>{if(_l(b.parentElement,1)||Lr(),v.el=null,L){const B=_(b);for(;;){const V=r(b);if(V&&V!==B)a(V);else break}}const k=r(b),R=o(b);return a(b),n(null,v,R,k,E,w,yl(R),P),E&&(E.vnode.el=v.el,vu(E,v.el)),k},_=(b,v="[",E="]")=>{let w=0;for(;b;)if(b=r(b),b&&to(b)&&(b.data===v&&w++,b.data===E)){if(w===0)return r(b);w--}return b},y=(b,v,E)=>{const w=v.parentNode;w&&w.replaceChild(b,v);let P=E;for(;P;)P.vnode.el===v&&(P.vnode.el=P.subTree.el=b),P=P.parent},S=b=>b.nodeType===1&&b.tagName==="TEMPLATE";return[u,d]}const mm="data-allow-mismatch",bE={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function _l(t,e){if(e===0||e===1)for(;t&&!t.hasAttribute(mm);)t=t.parentElement;const n=t&&t.getAttribute(mm);if(n==null)return!1;if(n==="")return!0;{const s=n.split(",");return e===0&&s.includes("children")?!0:n.split(",").includes(bE[e])}}const yE=za().requestIdleCallback||(t=>setTimeout(t,1)),_E=za().cancelIdleCallback||(t=>clearTimeout(t)),vE=(t=1e4)=>e=>{const n=yE(e,{timeout:t});return()=>_E(n)};function SE(t){const{top:e,left:n,bottom:s,right:i}=t.getBoundingClientRect(),{innerHeight:r,innerWidth:o}=window;return(e>0&&e0&&s0&&n0&&i(e,n)=>{const s=new IntersectionObserver(i=>{for(const r of i)if(r.isIntersecting){s.disconnect(),e();break}},t);return n(i=>{if(i instanceof Element){if(SE(i))return e(),s.disconnect(),!1;s.observe(i)}}),()=>s.disconnect()},wE=t=>e=>{if(t){const n=matchMedia(t);if(n.matches)e();else return n.addEventListener("change",e,{once:!0}),()=>n.removeEventListener("change",e)}},CE=(t=[])=>(e,n)=>{$t(t)&&(t=[t]);let s=!1;const i=o=>{s||(s=!0,r(),e(),o.target.dispatchEvent(new o.constructor(o.type,o)))},r=()=>{n(o=>{for(const a of t)o.removeEventListener(a,i)})};return n(o=>{for(const a of t)o.addEventListener(a,i,{once:!0})}),r};function kE(t,e){if(to(t)&&t.data==="["){let n=1,s=t.nextSibling;for(;s;){if(s.nodeType===1){if(e(s)===!1)break}else if(to(s))if(s.data==="]"){if(--n===0)break}else s.data==="["&&n++;s=s.nextSibling}}else e(t)}const Fi=t=>!!t.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function TE(t){Ot(t)&&(t={loader:t});const{loader:e,loadingComponent:n,errorComponent:s,delay:i=200,hydrate:r,timeout:o,suspensible:a=!0,onError:l}=t;let c=null,u,d=0;const f=()=>(d++,c=null,p()),p=()=>{let h;return c||(h=c=e().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((_,y)=>{l(m,()=>_(f()),()=>y(m),d+1)});throw m}).then(m=>h!==c&&c?c:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),u=m,m)))};return fi({name:"AsyncComponentWrapper",__asyncLoader:p,__asyncHydrate(h,m,_){const y=r?()=>{const S=r(_,b=>kE(h,b));S&&(m.bum||(m.bum=[])).push(S)}:_;u?y():p().then(()=>!m.isUnmounted&&y())},get __asyncResolved(){return u},setup(){const h=Ke;if(Dp(h),u)return()=>_d(u,h);const m=b=>{c=null,Or(b,h,13,!s)};if(a&&h.suspense||uo)return p().then(b=>()=>_d(b,h)).catch(b=>(m(b),()=>s?C(s,{error:b}):null));const _=ss(!1),y=ss(),S=ss(!!i);return i&&setTimeout(()=>{S.value=!1},i),o!=null&&setTimeout(()=>{if(!_.value&&!y.value){const b=new Error(`Async component timed out after ${o}ms.`);m(b),y.value=b}},o),p().then(()=>{_.value=!0,h.parent&&Ga(h.parent.vnode)&&h.parent.update()}).catch(b=>{m(b),y.value=b}),()=>{if(_.value&&u)return _d(u,h);if(y.value&&s)return C(s,{error:y.value});if(n&&!S.value)return C(n)}}})}function _d(t,e){const{ref:n,props:s,children:i,ce:r}=e.vnode,o=C(t,s,i);return o.ref=n,o.ce=r,delete e.vnode.ce,o}const Ga=t=>t.type.__isKeepAlive,xE={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(t,{slots:e}){const n=An(),s=n.ctx;if(!s.renderer)return()=>{const S=e.default&&e.default();return S&&S.length===1?S[0]:S};const i=new Map,r=new Set;let o=null;const a=n.suspense,{renderer:{p:l,m:c,um:u,o:{createElement:d}}}=s,f=d("div");s.activate=(S,b,v,E,w)=>{const P=S.component;c(S,b,v,0,a),l(P.vnode,S,b,v,P,a,E,S.slotScopeIds,w),Ge(()=>{P.isDeactivated=!1,P.a&&pr(P.a);const L=S.props&&S.props.onVnodeMounted;L&&$n(L,P.parent,S)},a)},s.deactivate=S=>{const b=S.component;_c(b.m),_c(b.a),c(S,f,null,1,a),Ge(()=>{b.da&&pr(b.da);const v=S.props&&S.props.onVnodeUnmounted;v&&$n(v,b.parent,S),b.isDeactivated=!0},a)};function p(S){vd(S),u(S,n,a,!0)}function h(S){i.forEach((b,v)=>{const E=Nf(b.type);E&&!S(E)&&m(v)})}function m(S){const b=i.get(S);b&&(!o||!ys(b,o))?p(b):o&&vd(o),i.delete(S),r.delete(S)}qn(()=>[t.include,t.exclude],([S,b])=>{S&&h(v=>Ko(S,v)),b&&h(v=>!Ko(b,v))},{flush:"post",deep:!0});let _=null;const y=()=>{_!=null&&(vc(n.subTree.type)?Ge(()=>{i.set(_,vl(n.subTree))},n.subTree.suspense):i.set(_,vl(n.subTree)))};return Ao(y),gu(y),bu(()=>{i.forEach(S=>{const{subTree:b,suspense:v}=n,E=vl(b);if(S.type===E.type&&S.key===E.key){vd(E);const w=E.component.da;w&&Ge(w,v);return}p(S)})}),()=>{if(_=null,!e.default)return o=null;const S=e.default(),b=S[0];if(S.length>1)return o=null,S;if(!ci(b)||!(b.shapeFlag&4)&&!(b.shapeFlag&128))return o=null,b;let v=vl(b);if(v.type===ze)return o=null,v;const E=v.type,w=Nf(Fi(v)?v.type.__asyncResolved||{}:E),{include:P,exclude:L,max:k}=t;if(P&&(!w||!Ko(P,w))||L&&w&&Ko(L,w))return v.shapeFlag&=-257,o=v,b;const R=v.key==null?E:v.key,B=i.get(R);return v.el&&(v=Vs(v),b.shapeFlag&128&&(b.ssContent=v)),_=R,B?(v.el=B.el,v.component=B.component,v.transition&&li(v,v.transition),v.shapeFlag|=512,r.delete(R),r.add(R)):(r.add(R),k&&r.size>parseInt(k,10)&&m(r.values().next().value)),v.shapeFlag|=256,o=v,vc(b.type)?b:v}}},AE=xE;function Ko(t,e){return bt(t)?t.some(n=>Ko(n,e)):$t(t)?t.split(",").includes(e):By(t)?(t.lastIndex=0,t.test(e)):!1}function D_(t,e){F_(t,"a",e)}function M_(t,e){F_(t,"da",e)}function F_(t,e,n=Ke){const s=t.__wdc||(t.__wdc=()=>{let i=n;for(;i;){if(i.isDeactivated)return;i=i.parent}return t()});if(mu(e,s,n),n){let i=n.parent;for(;i&&i.parent;)Ga(i.parent.vnode)&&OE(s,e,n,i),i=i.parent}}function OE(t,e,n,s){const i=mu(e,t,s,!0);Ka(()=>{eu(s[e],i)},n)}function vd(t){t.shapeFlag&=-257,t.shapeFlag&=-513}function vl(t){return t.shapeFlag&128?t.ssContent:t}function mu(t,e,n=Ke,s=!1){if(n){const i=n[t]||(n[t]=[]),r=e.__weh||(e.__weh=(...o)=>{Gi();const a=Sr(n),l=as(e,n,t,o);return a(),Ki(),l});return s?i.unshift(r):i.push(r),r}}const pi=t=>(e,n=Ke)=>{(!uo||t==="sp")&&mu(t,(...s)=>e(...s),n)},V_=pi("bm"),Ao=pi("m"),Mp=pi("bu"),gu=pi("u"),bu=pi("bum"),Ka=pi("um"),H_=pi("sp"),U_=pi("rtg"),j_=pi("rtc");function B_(t,e=Ke){mu("ec",t,e)}const Fp="components",IE="directives";function x(t,e){return Hp(Fp,t,!0,e)||t}const W_=Symbol.for("v-ndc");function yu(t){return $t(t)?Hp(Fp,t,!1)||t:t||W_}function Vp(t){return Hp(IE,t)}function Hp(t,e,n=!0,s=!1){const i=Xe||Ke;if(i){const r=i.type;if(t===Fp){const a=Nf(r,!1);if(a&&(a===e||a===we(e)||a===qi(we(e))))return r}const o=gm(i[t]||r[t],e)||gm(i.appContext[t],e);return!o&&s?r:o}}function gm(t,e){return t&&(t[e]||t[we(e)]||t[qi(we(e))])}function fe(t,e,n,s){let i;const r=n&&n[s],o=bt(t);if(o||$t(t)){const a=o&&Ms(t);let l=!1;a&&(l=!zn(t),t=au(t)),i=new Array(t.length);for(let c=0,u=t.length;ce(a,l,void 0,r&&r[l]));else{const a=Object.keys(t);i=new Array(a.length);for(let l=0,c=a.length;l{const r=s.fn(...i);return r&&(r.key=s.key),r}:s.fn)}return t}function ge(t,e,n={},s,i){if(Xe.ce||Xe.parent&&Fi(Xe.parent)&&Xe.parent.ce)return e!=="default"&&(n.name=e),O(),vt(ht,null,[C("slot",n,s&&s())],64);let r=t[e];r&&r._c&&(r._d=!1),O();const o=r&&Up(r(n)),a=n.key||o&&o.key,l=vt(ht,{key:(a&&!Tn(a)?a:`_${e}`)+(!o&&s?"_fb":"")},o||(s?s():[]),o&&t._===1?64:-2);return!i&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),r&&r._c&&(r._d=!0),l}function Up(t){return t.some(e=>ci(e)?!(e.type===ze||e.type===ht&&!Up(e.children)):!0)?t:null}function NE(t,e){const n={};for(const s in t)n[e&&/[A-Z]/.test(s)?`on:${s}`:fr(s)]=t[s];return n}const vf=t=>t?wv(t)?Za(t):vf(t.parent):null,ra=Jt(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>vf(t.parent),$root:t=>vf(t.root),$host:t=>t.ce,$emit:t=>t.emit,$options:t=>jp(t),$forceUpdate:t=>t.f||(t.f=()=>{$p(t.update)}),$nextTick:t=>t.n||(t.n=Ir.bind(t.proxy)),$watch:t=>aw.bind(t)}),Sd=(t,e)=>t!==Zt&&!t.__isScriptSetup&&ae(t,e),Sf={get({_:t},e){if(e==="__v_skip")return!0;const{ctx:n,setupState:s,data:i,props:r,accessCache:o,type:a,appContext:l}=t;let c;if(e[0]!=="$"){const p=o[e];if(p!==void 0)switch(p){case 1:return s[e];case 2:return i[e];case 4:return n[e];case 3:return r[e]}else{if(Sd(s,e))return o[e]=1,s[e];if(i!==Zt&&ae(i,e))return o[e]=2,i[e];if((c=t.propsOptions[0])&&ae(c,e))return o[e]=3,r[e];if(n!==Zt&&ae(n,e))return o[e]=4,n[e];Ef&&(o[e]=0)}}const u=ra[e];let d,f;if(u)return e==="$attrs"&&un(t.attrs,"get",""),u(t);if((d=a.__cssModules)&&(d=d[e]))return d;if(n!==Zt&&ae(n,e))return o[e]=4,n[e];if(f=l.config.globalProperties,ae(f,e))return f[e]},set({_:t},e,n){const{data:s,setupState:i,ctx:r}=t;return Sd(i,e)?(i[e]=n,!0):s!==Zt&&ae(s,e)?(s[e]=n,!0):ae(t.props,e)||e[0]==="$"&&e.slice(1)in t?!1:(r[e]=n,!0)},has({_:{data:t,setupState:e,accessCache:n,ctx:s,appContext:i,propsOptions:r}},o){let a;return!!n[o]||t!==Zt&&ae(t,o)||Sd(e,o)||(a=r[0])&&ae(a,o)||ae(s,o)||ae(ra,o)||ae(i.config.globalProperties,o)},defineProperty(t,e,n){return n.get!=null?t._.accessCache[e]=0:ae(n,"value")&&this.set(t,e,n.value,null),Reflect.defineProperty(t,e,n)}},PE=Jt({},Sf,{get(t,e){if(e!==Symbol.unscopables)return Sf.get(t,e,t)},has(t,e){return e[0]!=="_"&&!Ep(e)}});function $E(){return null}function RE(){return null}function LE(t){}function DE(t){}function ME(){return null}function FE(){}function VE(t,e){return null}function HE(){return z_().slots}function UE(){return z_().attrs}function z_(){const t=An();return t.setupContext||(t.setupContext=Tv(t))}function Aa(t){return bt(t)?t.reduce((e,n)=>(e[n]=null,e),{}):t}function jE(t,e){const n=Aa(t);for(const s in e){if(s.startsWith("__skip"))continue;let i=n[s];i?bt(i)||Ot(i)?i=n[s]={type:i,default:e[s]}:i.default=e[s]:i===null&&(i=n[s]={default:e[s]}),i&&e[`__skip_${s}`]&&(i.skipFactory=!0)}return n}function BE(t,e){return!t||!e?t||e:bt(t)&&bt(e)?t.concat(e):Jt({},Aa(t),Aa(e))}function WE(t,e){const n={};for(const s in t)e.includes(s)||Object.defineProperty(n,s,{enumerable:!0,get:()=>t[s]});return n}function zE(t){const e=An();let n=t();return Af(),nu(n)&&(n=n.catch(s=>{throw Sr(e),s})),[n,()=>Sr(e)]}let Ef=!0;function qE(t){const e=jp(t),n=t.proxy,s=t.ctx;Ef=!1,e.beforeCreate&&bm(e.beforeCreate,t,"bc");const{data:i,computed:r,methods:o,watch:a,provide:l,inject:c,created:u,beforeMount:d,mounted:f,beforeUpdate:p,updated:h,activated:m,deactivated:_,beforeDestroy:y,beforeUnmount:S,destroyed:b,unmounted:v,render:E,renderTracked:w,renderTriggered:P,errorCaptured:L,serverPrefetch:k,expose:R,inheritAttrs:B,components:V,directives:j,filters:Z}=e;if(c&&GE(c,s,null),o)for(const et in o){const at=o[et];Ot(at)&&(s[et]=at.bind(n))}if(i){const et=i.call(n,n);de(et)&&(t.data=To(et))}if(Ef=!0,r)for(const et in r){const at=r[et],kt=Ot(at)?at.bind(n,n):Ot(at.get)?at.get.bind(n,n):Qe,Kt=!Ot(at)&&Ot(at.set)?at.set.bind(n):Qe,Vt=Je({get:kt,set:Kt});Object.defineProperty(s,et,{enumerable:!0,configurable:!0,get:()=>Vt.value,set:Wt=>Vt.value=Wt})}if(a)for(const et in a)q_(a[et],s,n,et);if(l){const et=Ot(l)?l.call(n):l;Reflect.ownKeys(et).forEach(at=>{oa(at,et[at])})}u&&bm(u,t,"c");function q(et,at){bt(at)?at.forEach(kt=>et(kt.bind(n))):at&&et(at.bind(n))}if(q(V_,d),q(Ao,f),q(Mp,p),q(gu,h),q(D_,m),q(M_,_),q(B_,L),q(j_,w),q(U_,P),q(bu,S),q(Ka,v),q(H_,k),bt(R))if(R.length){const et=t.exposed||(t.exposed={});R.forEach(at=>{Object.defineProperty(et,at,{get:()=>n[at],set:kt=>n[at]=kt})})}else t.exposed||(t.exposed={});E&&t.render===Qe&&(t.render=E),B!=null&&(t.inheritAttrs=B),V&&(t.components=V),j&&(t.directives=j),k&&Dp(t)}function GE(t,e,n=Qe){bt(t)&&(t=wf(t));for(const s in t){const i=t[s];let r;de(i)?"default"in i?r=is(i.from||s,i.default,!0):r=is(i.from||s):r=is(i),Ae(r)?Object.defineProperty(e,s,{enumerable:!0,configurable:!0,get:()=>r.value,set:o=>r.value=o}):e[s]=r}}function bm(t,e,n){as(bt(t)?t.map(s=>s.bind(e.proxy)):t.bind(e.proxy),e,n)}function q_(t,e,n,s){let i=s.includes(".")?pv(n,s):()=>n[s];if($t(t)){const r=e[t];Ot(r)&&qn(i,r)}else if(Ot(t))qn(i,t.bind(n));else if(de(t))if(bt(t))t.forEach(r=>q_(r,e,n,s));else{const r=Ot(t.handler)?t.handler.bind(n):e[t.handler];Ot(r)&&qn(i,r,t)}}function jp(t){const e=t.type,{mixins:n,extends:s}=e,{mixins:i,optionsCache:r,config:{optionMergeStrategies:o}}=t.appContext,a=r.get(e);let l;return a?l=a:!i.length&&!n&&!s?l=e:(l={},i.length&&i.forEach(c=>yc(l,c,o,!0)),yc(l,e,o)),de(e)&&r.set(e,l),l}function yc(t,e,n,s=!1){const{mixins:i,extends:r}=e;r&&yc(t,r,n,!0),i&&i.forEach(o=>yc(t,o,n,!0));for(const o in e)if(!(s&&o==="expose")){const a=KE[o]||n&&n[o];t[o]=a?a(t[o],e[o]):e[o]}return t}const KE={data:ym,props:_m,emits:_m,methods:Xo,computed:Xo,beforeCreate:yn,created:yn,beforeMount:yn,mounted:yn,beforeUpdate:yn,updated:yn,beforeDestroy:yn,beforeUnmount:yn,destroyed:yn,unmounted:yn,activated:yn,deactivated:yn,errorCaptured:yn,serverPrefetch:yn,components:Xo,directives:Xo,watch:YE,provide:ym,inject:XE};function ym(t,e){return e?t?function(){return Jt(Ot(t)?t.call(this,this):t,Ot(e)?e.call(this,this):e)}:e:t}function XE(t,e){return Xo(wf(t),wf(e))}function wf(t){if(bt(t)){const e={};for(let n=0;n1)return n&&Ot(e)?e.call(s&&s.proxy):e}}function K_(){return!!(Ke||Xe||mr)}const X_={},Y_=()=>Object.create(X_),Z_=t=>Object.getPrototypeOf(t)===X_;function QE(t,e,n,s=!1){const i={},r=Y_();t.propsDefaults=Object.create(null),J_(t,e,i,r);for(const o in t.propsOptions[0])o in i||(i[o]=void 0);n?t.props=s?i:Ip(i):t.type.props?t.props=i:t.props=r,t.attrs=r}function tw(t,e,n,s){const{props:i,attrs:r,vnode:{patchFlag:o}}=t,a=ee(i),[l]=t.propsOptions;let c=!1;if((s||o>0)&&!(o&16)){if(o&8){const u=t.vnode.dynamicProps;for(let d=0;d{l=!0;const[f,p]=Q_(d,e,!0);Jt(o,f),p&&a.push(...p)};!n&&e.mixins.length&&e.mixins.forEach(u),t.extends&&u(t.extends),t.mixins&&t.mixins.forEach(u)}if(!r&&!l)return de(t)&&s.set(t,ur),ur;if(bt(r))for(let u=0;ut[0]==="_"||t==="$stable",Bp=t=>bt(t)?t.map(Rn):[Rn(t)],nw=(t,e,n)=>{if(e._n)return e;const s=D((...i)=>Bp(e(...i)),n);return s._c=!1,s},ev=(t,e,n)=>{const s=t._ctx;for(const i in t){if(tv(i))continue;const r=t[i];if(Ot(r))e[i]=nw(i,r,s);else if(r!=null){const o=Bp(r);e[i]=()=>o}}},nv=(t,e)=>{const n=Bp(e);t.slots.default=()=>n},sv=(t,e,n)=>{for(const s in e)(n||s!=="_")&&(t[s]=e[s])},sw=(t,e,n)=>{const s=t.slots=Y_();if(t.vnode.shapeFlag&32){const i=e._;i?(sv(s,e,n),n&&Sp(s,"_",i,!0)):ev(e,s)}else e&&nv(t,e)},iw=(t,e,n)=>{const{vnode:s,slots:i}=t;let r=!0,o=Zt;if(s.shapeFlag&32){const a=e._;a?n&&a===1?r=!1:sv(i,e,n):(r=!e.$stable,ev(e,i)),o=e}else e&&(nv(t,e),o={default:1});if(r)for(const a in i)!tv(a)&&o[a]==null&&delete i[a]},Ge=bv;function iv(t){return ov(t)}function rv(t){return ov(t,gE)}function ov(t,e){const n=za();n.__VUE__=!0;const{insert:s,remove:i,patchProp:r,createElement:o,createText:a,createComment:l,setText:c,setElementText:u,parentNode:d,nextSibling:f,setScopeId:p=Qe,insertStaticContent:h}=t,m=(A,$,z,st=null,Q=null,T=null,N=void 0,H=null,X=!!$.dynamicChildren)=>{if(A===$)return;A&&!ys(A,$)&&(st=Y(A),Wt(A,Q,T,!0),A=null),$.patchFlag===-2&&(X=!1,$.dynamicChildren=null);const{type:nt,ref:lt,shapeFlag:F}=$;switch(nt){case si:_(A,$,z,st);break;case ze:y(A,$,z,st);break;case gr:A==null&&S($,z,st,N);break;case ht:V(A,$,z,st,Q,T,N,H,X);break;default:F&1?E(A,$,z,st,Q,T,N,H,X):F&6?j(A,$,z,st,Q,T,N,H,X):(F&64||F&128)&&nt.process(A,$,z,st,Q,T,N,H,X,yt)}lt!=null&&Q&&xa(lt,A&&A.ref,T,$||A,!$)},_=(A,$,z,st)=>{if(A==null)s($.el=a($.children),z,st);else{const Q=$.el=A.el;$.children!==A.children&&c(Q,$.children)}},y=(A,$,z,st)=>{A==null?s($.el=l($.children||""),z,st):$.el=A.el},S=(A,$,z,st)=>{[A.el,A.anchor]=h(A.children,$,z,st,A.el,A.anchor)},b=({el:A,anchor:$},z,st)=>{let Q;for(;A&&A!==$;)Q=f(A),s(A,z,st),A=Q;s($,z,st)},v=({el:A,anchor:$})=>{let z;for(;A&&A!==$;)z=f(A),i(A),A=z;i($)},E=(A,$,z,st,Q,T,N,H,X)=>{$.type==="svg"?N="svg":$.type==="math"&&(N="mathml"),A==null?w($,z,st,Q,T,N,H,X):k(A,$,Q,T,N,H,X)},w=(A,$,z,st,Q,T,N,H)=>{let X,nt;const{props:lt,shapeFlag:F,transition:G,dirs:pt}=A;if(X=A.el=o(A.type,T,lt&<.is,lt),F&8?u(X,A.children):F&16&&L(A.children,X,null,st,Q,Ed(A,T),N,H),pt&&Rs(A,null,st,"created"),P(X,A,A.scopeId,N,st),lt){for(const qt in lt)qt!=="value"&&!ni(qt)&&r(X,qt,null,lt[qt],T,st);"value"in lt&&r(X,"value",null,lt.value,T),(nt=lt.onVnodeBeforeMount)&&$n(nt,st,A)}pt&&Rs(A,null,st,"beforeMount");const Et=av(Q,G);Et&&G.beforeEnter(X),s(X,$,z),((nt=lt&<.onVnodeMounted)||Et||pt)&&Ge(()=>{nt&&$n(nt,st,A),Et&&G.enter(X),pt&&Rs(A,null,st,"mounted")},Q)},P=(A,$,z,st,Q)=>{if(z&&p(A,z),st)for(let T=0;T{for(let nt=X;nt{const H=$.el=A.el;let{patchFlag:X,dynamicChildren:nt,dirs:lt}=$;X|=A.patchFlag&16;const F=A.props||Zt,G=$.props||Zt;let pt;if(z&&Qi(z,!1),(pt=G.onVnodeBeforeUpdate)&&$n(pt,z,$,A),lt&&Rs($,A,z,"beforeUpdate"),z&&Qi(z,!0),(F.innerHTML&&G.innerHTML==null||F.textContent&&G.textContent==null)&&u(H,""),nt?R(A.dynamicChildren,nt,H,z,st,Ed($,Q),T):N||at(A,$,H,null,z,st,Ed($,Q),T,!1),X>0){if(X&16)B(H,F,G,z,Q);else if(X&2&&F.class!==G.class&&r(H,"class",null,G.class,Q),X&4&&r(H,"style",F.style,G.style,Q),X&8){const Et=$.dynamicProps;for(let qt=0;qt{pt&&$n(pt,z,$,A),lt&&Rs($,A,z,"updated")},st)},R=(A,$,z,st,Q,T,N)=>{for(let H=0;H<$.length;H++){const X=A[H],nt=$[H],lt=X.el&&(X.type===ht||!ys(X,nt)||X.shapeFlag&70)?d(X.el):z;m(X,nt,lt,null,st,Q,T,N,!0)}},B=(A,$,z,st,Q)=>{if($!==z){if($!==Zt)for(const T in $)!ni(T)&&!(T in z)&&r(A,T,$[T],null,Q,st);for(const T in z){if(ni(T))continue;const N=z[T],H=$[T];N!==H&&T!=="value"&&r(A,T,H,N,Q,st)}"value"in z&&r(A,"value",$.value,z.value,Q)}},V=(A,$,z,st,Q,T,N,H,X)=>{const nt=$.el=A?A.el:a(""),lt=$.anchor=A?A.anchor:a("");let{patchFlag:F,dynamicChildren:G,slotScopeIds:pt}=$;pt&&(H=H?H.concat(pt):pt),A==null?(s(nt,z,st),s(lt,z,st),L($.children||[],z,lt,Q,T,N,H,X)):F>0&&F&64&&G&&A.dynamicChildren?(R(A.dynamicChildren,G,z,Q,T,N,H),($.key!=null||Q&&$===Q.subTree)&&Wp(A,$,!0)):at(A,$,z,lt,Q,T,N,H,X)},j=(A,$,z,st,Q,T,N,H,X)=>{$.slotScopeIds=H,A==null?$.shapeFlag&512?Q.ctx.activate($,z,st,N,X):Z($,z,st,Q,T,N,X):ot(A,$,X)},Z=(A,$,z,st,Q,T,N)=>{const H=A.component=Ev(A,st,Q);if(Ga(A)&&(H.ctx.renderer=yt),Cv(H,!1,N),H.asyncDep){if(Q&&Q.registerDep(H,q,N),!A.el){const X=H.subTree=C(ze);y(null,X,$,z)}}else q(H,A,$,z,Q,T,N)},ot=(A,$,z)=>{const st=$.component=A.component;if(pw(A,$,z))if(st.asyncDep&&!st.asyncResolved){et(st,$,z);return}else st.next=$,st.update();else $.el=A.el,st.vnode=$},q=(A,$,z,st,Q,T,N)=>{const H=()=>{if(A.isMounted){let{next:F,bu:G,u:pt,parent:Et,vnode:qt}=A;{const mt=lv(A);if(mt){F&&(F.el=qt.el,et(A,F,N)),mt.asyncDep.then(()=>{A.isUnmounted||H()});return}}let U=F,W;Qi(A,!1),F?(F.el=qt.el,et(A,F,N)):F=qt,G&&pr(G),(W=F.props&&F.props.onVnodeBeforeUpdate)&&$n(W,Et,F,qt),Qi(A,!0);const K=Wl(A),it=A.subTree;A.subTree=K,m(it,K,d(it.el),Y(it),A,Q,T),F.el=K.el,U===null&&vu(A,K.el),pt&&Ge(pt,Q),(W=F.props&&F.props.onVnodeUpdated)&&Ge(()=>$n(W,Et,F,qt),Q)}else{let F;const{el:G,props:pt}=$,{bm:Et,m:qt,parent:U,root:W,type:K}=A,it=Fi($);if(Qi(A,!1),Et&&pr(Et),!it&&(F=pt&&pt.onVnodeBeforeMount)&&$n(F,U,$),Qi(A,!0),G&&Xt){const mt=()=>{A.subTree=Wl(A),Xt(G,A.subTree,A,Q,null)};it&&K.__asyncHydrate?K.__asyncHydrate(G,A,mt):mt()}else{W.ce&&W.ce._injectChildStyle(K);const mt=A.subTree=Wl(A);m(null,mt,z,st,A,Q,T),$.el=mt.el}if(qt&&Ge(qt,Q),!it&&(F=pt&&pt.onVnodeMounted)){const mt=$;Ge(()=>$n(F,U,mt),Q)}($.shapeFlag&256||U&&Fi(U.vnode)&&U.vnode.shapeFlag&256)&&A.a&&Ge(A.a,Q),A.isMounted=!0,$=z=st=null}};A.scope.on();const X=A.effect=new Sa(H);A.scope.off();const nt=A.update=X.run.bind(X),lt=A.job=X.runIfDirty.bind(X);lt.i=A,lt.id=A.uid,X.scheduler=()=>$p(lt),Qi(A,!0),nt()},et=(A,$,z)=>{$.component=A;const st=A.vnode.props;A.vnode=$,A.next=null,tw(A,$.props,st,z),iw(A,$.children,z),Gi(),cm(A),Ki()},at=(A,$,z,st,Q,T,N,H,X=!1)=>{const nt=A&&A.children,lt=A?A.shapeFlag:0,F=$.children,{patchFlag:G,shapeFlag:pt}=$;if(G>0){if(G&128){Kt(nt,F,z,st,Q,T,N,H,X);return}else if(G&256){kt(nt,F,z,st,Q,T,N,H,X);return}}pt&8?(lt&16&&zt(nt,Q,T),F!==nt&&u(z,F)):lt&16?pt&16?Kt(nt,F,z,st,Q,T,N,H,X):zt(nt,Q,T,!0):(lt&8&&u(z,""),pt&16&&L(F,z,st,Q,T,N,H,X))},kt=(A,$,z,st,Q,T,N,H,X)=>{A=A||ur,$=$||ur;const nt=A.length,lt=$.length,F=Math.min(nt,lt);let G;for(G=0;Glt?zt(A,Q,T,!0,!1,F):L($,z,st,Q,T,N,H,X,F)},Kt=(A,$,z,st,Q,T,N,H,X)=>{let nt=0;const lt=$.length;let F=A.length-1,G=lt-1;for(;nt<=F&&nt<=G;){const pt=A[nt],Et=$[nt]=X?Oi($[nt]):Rn($[nt]);if(ys(pt,Et))m(pt,Et,z,null,Q,T,N,H,X);else break;nt++}for(;nt<=F&&nt<=G;){const pt=A[F],Et=$[G]=X?Oi($[G]):Rn($[G]);if(ys(pt,Et))m(pt,Et,z,null,Q,T,N,H,X);else break;F--,G--}if(nt>F){if(nt<=G){const pt=G+1,Et=ptG)for(;nt<=F;)Wt(A[nt],Q,T,!0),nt++;else{const pt=nt,Et=nt,qt=new Map;for(nt=Et;nt<=G;nt++){const Lt=$[nt]=X?Oi($[nt]):Rn($[nt]);Lt.key!=null&&qt.set(Lt.key,nt)}let U,W=0;const K=G-Et+1;let it=!1,mt=0;const xt=new Array(K);for(nt=0;nt=K){Wt(Lt,Q,T,!0);continue}let oe;if(Lt.key!=null)oe=qt.get(Lt.key);else for(U=Et;U<=G;U++)if(xt[U-Et]===0&&ys(Lt,$[U])){oe=U;break}oe===void 0?Wt(Lt,Q,T,!0):(xt[oe-Et]=nt+1,oe>=mt?mt=oe:it=!0,m(Lt,$[oe],z,null,Q,T,N,H,X),W++)}const Dt=it?rw(xt):ur;for(U=Dt.length-1,nt=K-1;nt>=0;nt--){const Lt=Et+nt,oe=$[Lt],Nt=Lt+1{const{el:T,type:N,transition:H,children:X,shapeFlag:nt}=A;if(nt&6){Vt(A.component.subTree,$,z,st);return}if(nt&128){A.suspense.move($,z,st);return}if(nt&64){N.move(A,$,z,yt);return}if(N===ht){s(T,$,z);for(let F=0;FH.enter(T),Q);else{const{leave:F,delayLeave:G,afterLeave:pt}=H,Et=()=>s(T,$,z),qt=()=>{F(T,()=>{Et(),pt&&pt()})};G?G(T,Et,qt):qt()}else s(T,$,z)},Wt=(A,$,z,st=!1,Q=!1)=>{const{type:T,props:N,ref:H,children:X,dynamicChildren:nt,shapeFlag:lt,patchFlag:F,dirs:G,cacheIndex:pt}=A;if(F===-2&&(Q=!1),H!=null&&xa(H,null,z,A,!0),pt!=null&&($.renderCache[pt]=void 0),lt&256){$.ctx.deactivate(A);return}const Et=lt&1&&G,qt=!Fi(A);let U;if(qt&&(U=N&&N.onVnodeBeforeUnmount)&&$n(U,$,A),lt&6)_e(A.component,z,st);else{if(lt&128){A.suspense.unmount(z,st);return}Et&&Rs(A,null,$,"beforeUnmount"),lt&64?A.type.remove(A,$,z,yt,st):nt&&!nt.hasOnce&&(T!==ht||F>0&&F&64)?zt(nt,$,z,!1,!0):(T===ht&&F&384||!Q&<&16)&&zt(X,$,z),st&&pe(A)}(qt&&(U=N&&N.onVnodeUnmounted)||Et)&&Ge(()=>{U&&$n(U,$,A),Et&&Rs(A,null,$,"unmounted")},z)},pe=A=>{const{type:$,el:z,anchor:st,transition:Q}=A;if($===ht){be(z,st);return}if($===gr){v(A);return}const T=()=>{i(z),Q&&!Q.persisted&&Q.afterLeave&&Q.afterLeave()};if(A.shapeFlag&1&&Q&&!Q.persisted){const{leave:N,delayLeave:H}=Q,X=()=>N(z,T);H?H(A.el,T,X):X()}else T()},be=(A,$)=>{let z;for(;A!==$;)z=f(A),i(A),A=z;i($)},_e=(A,$,z)=>{const{bum:st,scope:Q,job:T,subTree:N,um:H,m:X,a:nt}=A;_c(X),_c(nt),st&&pr(st),Q.stop(),T&&(T.flags|=8,Wt(N,A,$,z)),H&&Ge(H,$),Ge(()=>{A.isUnmounted=!0},$),$&&$.pendingBranch&&!$.isUnmounted&&A.asyncDep&&!A.asyncResolved&&A.suspenseId===$.pendingId&&($.deps--,$.deps===0&&$.resolve())},zt=(A,$,z,st=!1,Q=!1,T=0)=>{for(let N=T;N{if(A.shapeFlag&6)return Y(A.component.subTree);if(A.shapeFlag&128)return A.suspense.next();const $=f(A.anchor||A.el),z=$&&$[A_];return z?f(z):$};let dt=!1;const ct=(A,$,z)=>{A==null?$._vnode&&Wt($._vnode,null,null,!0):m($._vnode||null,A,$,null,null,null,z),$._vnode=A,dt||(dt=!0,cm(),bc(),dt=!1)},yt={p:m,um:Wt,m:Vt,r:pe,mt:Z,mc:L,pc:at,pbc:R,n:Y,o:t};let Ht,Xt;return e&&([Ht,Xt]=e(yt)),{render:ct,hydrate:Ht,createApp:JE(ct,Ht)}}function Ed({type:t,props:e},n){return n==="svg"&&t==="foreignObject"||n==="mathml"&&t==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:n}function Qi({effect:t,job:e},n){n?(t.flags|=32,e.flags|=4):(t.flags&=-33,e.flags&=-5)}function av(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function Wp(t,e,n=!1){const s=t.children,i=e.children;if(bt(s)&&bt(i))for(let r=0;r>1,t[n[a]]0&&(e[s]=n[r-1]),n[r]=s)}}for(r=n.length,o=n[r-1];r-- >0;)n[r]=o,o=e[o];return n}function lv(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:lv(e)}function _c(t){if(t)for(let e=0;eis(cv);function dv(t,e){return Ya(t,null,e)}function ow(t,e){return Ya(t,null,{flush:"post"})}function fv(t,e){return Ya(t,null,{flush:"sync"})}function qn(t,e,n){return Ya(t,e,n)}function Ya(t,e,n=Zt){const{immediate:s,deep:i,flush:r,once:o}=n,a=Jt({},n),l=e&&s||!e&&r!=="post";let c;if(uo){if(r==="sync"){const p=uv();c=p.__watcherHandles||(p.__watcherHandles=[])}else if(!l){const p=()=>{};return p.stop=Qe,p.resume=Qe,p.pause=Qe,p}}const u=Ke;a.call=(p,h,m)=>as(p,u,h,m);let d=!1;r==="post"?a.scheduler=p=>{Ge(p,u&&u.suspense)}:r!=="sync"&&(d=!0,a.scheduler=(p,h)=>{h?p():$p(p)}),a.augmentJob=p=>{e&&(p.flags|=4),d&&(p.flags|=2,u&&(p.id=u.uid,p.i=u))};const f=Q3(t,e,a);return uo&&(c?c.push(f):l&&f()),f}function aw(t,e,n){const s=this.proxy,i=$t(t)?t.includes(".")?pv(s,t):()=>s[t]:t.bind(s,s);let r;Ot(e)?r=e:(r=e.handler,n=e);const o=Sr(this),a=Ya(i,r.bind(s),n);return o(),a}function pv(t,e){const n=e.split(".");return()=>{let s=t;for(let i=0;i{let u,d=Zt,f;return fv(()=>{const p=t[i];cn(u,p)&&(u=p,c())}),{get(){return l(),n.get?n.get(u):u},set(p){const h=n.set?n.set(p):p;if(!cn(h,u)&&!(d!==Zt&&cn(p,d)))return;const m=s.vnode.props;m&&(e in m||i in m||r in m)&&(`onUpdate:${e}`in m||`onUpdate:${i}`in m||`onUpdate:${r}`in m)||(u=p,c()),s.emit(`update:${e}`,h),cn(p,h)&&cn(p,d)&&!cn(h,f)&&c(),d=p,f=h}}});return a[Symbol.iterator]=()=>{let l=0;return{next(){return l<2?{value:l++?o||Zt:a,done:!1}:{done:!0}}}},a}const hv=(t,e)=>e==="modelValue"||e==="model-value"?t.modelModifiers:t[`${e}Modifiers`]||t[`${we(e)}Modifiers`]||t[`${fn(e)}Modifiers`];function cw(t,e,...n){if(t.isUnmounted)return;const s=t.vnode.props||Zt;let i=n;const r=e.startsWith("update:"),o=r&&hv(s,e.slice(7));o&&(o.trim&&(i=n.map(u=>$t(u)?u.trim():u)),o.number&&(i=n.map(_a)));let a,l=s[a=fr(e)]||s[a=fr(we(e))];!l&&r&&(l=s[a=fr(fn(e))]),l&&as(l,t,6,i);const c=s[a+"Once"];if(c){if(!t.emitted)t.emitted={};else if(t.emitted[a])return;t.emitted[a]=!0,as(c,t,6,i)}}function mv(t,e,n=!1){const s=e.emitsCache,i=s.get(t);if(i!==void 0)return i;const r=t.emits;let o={},a=!1;if(!Ot(t)){const l=c=>{const u=mv(c,e,!0);u&&(a=!0,Jt(o,u))};!n&&e.mixins.length&&e.mixins.forEach(l),t.extends&&l(t.extends),t.mixins&&t.mixins.forEach(l)}return!r&&!a?(de(t)&&s.set(t,null),null):(bt(r)?r.forEach(l=>o[l]=null):Jt(o,r),de(t)&&s.set(t,o),o)}function _u(t,e){return!t||!Wi(e)?!1:(e=e.slice(2).replace(/Once$/,""),ae(t,e[0].toLowerCase()+e.slice(1))||ae(t,fn(e))||ae(t,e))}function Wl(t){const{type:e,vnode:n,proxy:s,withProxy:i,propsOptions:[r],slots:o,attrs:a,emit:l,render:c,renderCache:u,props:d,data:f,setupState:p,ctx:h,inheritAttrs:m}=t,_=Ta(t);let y,S;try{if(n.shapeFlag&4){const v=i||s,E=v;y=Rn(c.call(E,v,u,d,p,f,h)),S=a}else{const v=e;y=Rn(v.length>1?v(d,{attrs:a,slots:o,emit:l}):v(d,null)),S=e.props?a:dw(a)}}catch(v){aa.length=0,Or(v,t,1),y=C(ze)}let b=y;if(S&&m!==!1){const v=Object.keys(S),{shapeFlag:E}=b;v.length&&E&7&&(r&&v.some(tu)&&(S=fw(S,r)),b=Vs(b,S,!1,!0))}return n.dirs&&(b=Vs(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&li(b,n.transition),y=b,Ta(_),y}function uw(t,e=!0){let n;for(let s=0;s{let e;for(const n in t)(n==="class"||n==="style"||Wi(n))&&((e||(e={}))[n]=t[n]);return e},fw=(t,e)=>{const n={};for(const s in t)(!tu(s)||!(s.slice(9)in e))&&(n[s]=t[s]);return n};function pw(t,e,n){const{props:s,children:i,component:r}=t,{props:o,children:a,patchFlag:l}=e,c=r.emitsOptions;if(e.dirs||e.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return s?Sm(s,o,c):!!o;if(l&8){const u=e.dynamicProps;for(let d=0;dt.__isSuspense;let kf=0;const hw={name:"Suspense",__isSuspense:!0,process(t,e,n,s,i,r,o,a,l,c){if(t==null)gw(e,n,s,i,r,o,a,l,c);else{if(r&&r.deps>0&&!t.suspense.isInFallback){e.suspense=t.suspense,e.suspense.vnode=e,e.el=t.el;return}bw(t,e,n,s,i,o,a,l,c)}},hydrate:yw,normalize:_w},mw=hw;function Oa(t,e){const n=t.props&&t.props[e];Ot(n)&&n()}function gw(t,e,n,s,i,r,o,a,l){const{p:c,o:{createElement:u}}=l,d=u("div"),f=t.suspense=gv(t,i,s,e,d,n,r,o,a,l);c(null,f.pendingBranch=t.ssContent,d,null,s,f,r,o),f.deps>0?(Oa(t,"onPending"),Oa(t,"onFallback"),c(null,t.ssFallback,e,n,s,null,r,o),ro(f,t.ssFallback)):f.resolve(!1,!0)}function bw(t,e,n,s,i,r,o,a,{p:l,um:c,o:{createElement:u}}){const d=e.suspense=t.suspense;d.vnode=e,e.el=t.el;const f=e.ssContent,p=e.ssFallback,{activeBranch:h,pendingBranch:m,isInFallback:_,isHydrating:y}=d;if(m)d.pendingBranch=f,ys(f,m)?(l(m,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0?d.resolve():_&&(y||(l(h,p,n,s,i,null,r,o,a),ro(d,p)))):(d.pendingId=kf++,y?(d.isHydrating=!1,d.activeBranch=m):c(m,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u("div"),_?(l(null,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0?d.resolve():(l(h,p,n,s,i,null,r,o,a),ro(d,p))):h&&ys(f,h)?(l(h,f,n,s,i,d,r,o,a),d.resolve(!0)):(l(null,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0&&d.resolve()));else if(h&&ys(f,h))l(h,f,n,s,i,d,r,o,a),ro(d,f);else if(Oa(e,"onPending"),d.pendingBranch=f,f.shapeFlag&512?d.pendingId=f.component.suspenseId:d.pendingId=kf++,l(null,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0)d.resolve();else{const{timeout:S,pendingId:b}=d;S>0?setTimeout(()=>{d.pendingId===b&&d.fallback(p)},S):S===0&&d.fallback(p)}}function gv(t,e,n,s,i,r,o,a,l,c,u=!1){const{p:d,m:f,um:p,n:h,o:{parentNode:m,remove:_}}=c;let y;const S=vw(t);S&&e&&e.pendingBranch&&(y=e.pendingId,e.deps++);const b=t.props?va(t.props.timeout):void 0,v=r,E={vnode:t,parent:e,parentComponent:n,namespace:o,container:s,hiddenContainer:i,deps:0,pendingId:kf++,timeout:typeof b=="number"?b:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(w=!1,P=!1){const{vnode:L,activeBranch:k,pendingBranch:R,pendingId:B,effects:V,parentComponent:j,container:Z}=E;let ot=!1;E.isHydrating?E.isHydrating=!1:w||(ot=k&&R.transition&&R.transition.mode==="out-in",ot&&(k.transition.afterLeave=()=>{B===E.pendingId&&(f(R,Z,r===v?h(k):r,0),Ca(V))}),k&&(m(k.el)===Z&&(r=h(k)),p(k,j,E,!0)),ot||f(R,Z,r,0)),ro(E,R),E.pendingBranch=null,E.isInFallback=!1;let q=E.parent,et=!1;for(;q;){if(q.pendingBranch){q.effects.push(...V),et=!0;break}q=q.parent}!et&&!ot&&Ca(V),E.effects=[],S&&e&&e.pendingBranch&&y===e.pendingId&&(e.deps--,e.deps===0&&!P&&e.resolve()),Oa(L,"onResolve")},fallback(w){if(!E.pendingBranch)return;const{vnode:P,activeBranch:L,parentComponent:k,container:R,namespace:B}=E;Oa(P,"onFallback");const V=h(L),j=()=>{E.isInFallback&&(d(null,w,R,V,k,null,B,a,l),ro(E,w))},Z=w.transition&&w.transition.mode==="out-in";Z&&(L.transition.afterLeave=j),E.isInFallback=!0,p(L,k,null,!0),Z||j()},move(w,P,L){E.activeBranch&&f(E.activeBranch,w,P,L),E.container=w},next(){return E.activeBranch&&h(E.activeBranch)},registerDep(w,P,L){const k=!!E.pendingBranch;k&&E.deps++;const R=w.vnode.el;w.asyncDep.catch(B=>{Or(B,w,0)}).then(B=>{if(w.isUnmounted||E.isUnmounted||E.pendingId!==w.suspenseId)return;w.asyncResolved=!0;const{vnode:V}=w;Of(w,B,!1),R&&(V.el=R);const j=!R&&w.subTree.el;P(w,V,m(R||w.subTree.el),R?null:h(w.subTree),E,o,L),j&&_(j),vu(w,V.el),k&&--E.deps===0&&E.resolve()})},unmount(w,P){E.isUnmounted=!0,E.activeBranch&&p(E.activeBranch,n,w,P),E.pendingBranch&&p(E.pendingBranch,n,w,P)}};return E}function yw(t,e,n,s,i,r,o,a,l){const c=e.suspense=gv(e,s,n,t.parentNode,document.createElement("div"),null,i,r,o,a,!0),u=l(t,c.pendingBranch=e.ssContent,n,c,r,o);return c.deps===0&&c.resolve(!1,!0),u}function _w(t){const{shapeFlag:e,children:n}=t,s=e&32;t.ssContent=Em(s?n.default:n),t.ssFallback=s?Em(n.fallback):C(ze)}function Em(t){let e;if(Ot(t)){const n=vr&&t._c;n&&(t._d=!1,O()),t=t(),n&&(t._d=!0,e=gn,yv())}return bt(t)&&(t=uw(t)),t=Rn(t),e&&!t.dynamicChildren&&(t.dynamicChildren=e.filter(n=>n!==t)),t}function bv(t,e){e&&e.pendingBranch?bt(t)?e.effects.push(...t):e.effects.push(t):Ca(t)}function ro(t,e){t.activeBranch=e;const{vnode:n,parentComponent:s}=t;let i=e.el;for(;!i&&e.component;)e=e.component.subTree,i=e.el;n.el=i,s&&s.subTree===n&&(s.vnode.el=i,vu(s,i))}function vw(t){const e=t.props&&t.props.suspensible;return e!=null&&e!==!1}const ht=Symbol.for("v-fgt"),si=Symbol.for("v-txt"),ze=Symbol.for("v-cmt"),gr=Symbol.for("v-stc"),aa=[];let gn=null;function O(t=!1){aa.push(gn=t?null:[])}function yv(){aa.pop(),gn=aa[aa.length-1]||null}let vr=1;function Tf(t,e=!1){vr+=t,t<0&&gn&&e&&(gn.hasOnce=!0)}function _v(t){return t.dynamicChildren=vr>0?gn||ur:null,yv(),vr>0&&gn&&gn.push(t),t}function M(t,e,n,s,i,r){return _v(g(t,e,n,s,i,r,!0))}function vt(t,e,n,s,i){return _v(C(t,e,n,s,i,!0))}function ci(t){return t?t.__v_isVNode===!0:!1}function ys(t,e){return t.type===e.type&&t.key===e.key}function Sw(t){}const vv=({key:t})=>t??null,zl=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?$t(t)||Ae(t)||Ot(t)?{i:Xe,r:t,k:e,f:!!n}:t:null);function g(t,e=null,n=null,s=0,i=null,r=t===ht?0:1,o=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&vv(e),ref:e&&zl(e),scopeId:pu,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:s,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:Xe};return a?(zp(l,n),r&128&&t.normalize(l)):n&&(l.shapeFlag|=$t(n)?8:16),vr>0&&!o&&gn&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&gn.push(l),l}const C=Ew;function Ew(t,e=null,n=null,s=0,i=null,r=!1){if((!t||t===W_)&&(t=ze),ci(t)){const a=Vs(t,e,!0);return n&&zp(a,n),vr>0&&!r&&gn&&(a.shapeFlag&6?gn[gn.indexOf(t)]=a:gn.push(a)),a.patchFlag=-2,a}if(Iw(t)&&(t=t.__vccOpts),e){e=Sv(e);let{class:a,style:l}=e;a&&!$t(a)&&(e.class=Bt(a)),de(l)&&(uu(l)&&!bt(l)&&(l=Jt({},l)),e.style=di(l))}const o=$t(t)?1:vc(t)?128:O_(t)?64:de(t)?4:Ot(t)?2:0;return g(t,e,n,s,i,o,r,!0)}function Sv(t){return t?uu(t)||Z_(t)?Jt({},t):t:null}function Vs(t,e,n=!1,s=!1){const{props:i,ref:r,patchFlag:o,children:a,transition:l}=t,c=e?eo(i||{},e):i,u={__v_isVNode:!0,__v_skip:!0,type:t.type,props:c,key:c&&vv(c),ref:e&&e.ref?n&&r?bt(r)?r.concat(zl(e)):[r,zl(e)]:zl(e):r,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:a,target:t.target,targetStart:t.targetStart,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==ht?o===-1?16:o|16:o,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:l,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&Vs(t.ssContent),ssFallback:t.ssFallback&&Vs(t.ssFallback),el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return l&&s&&li(u,l.clone(u)),u}function Hs(t=" ",e=0){return C(si,null,t,e)}function ww(t,e){const n=C(gr,null,t);return n.staticCount=e,n}function _t(t="",e=!1){return e?(O(),vt(ze,null,t)):C(ze,null,t)}function Rn(t){return t==null||typeof t=="boolean"?C(ze):bt(t)?C(ht,null,t.slice()):ci(t)?Oi(t):C(si,null,String(t))}function Oi(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:Vs(t)}function zp(t,e){let n=0;const{shapeFlag:s}=t;if(e==null)e=null;else if(bt(e))n=16;else if(typeof e=="object")if(s&65){const i=e.default;i&&(i._c&&(i._d=!1),zp(t,i()),i._c&&(i._d=!0));return}else{n=32;const i=e._;!i&&!Z_(e)?e._ctx=Xe:i===3&&Xe&&(Xe.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else Ot(e)?(e={default:e,_ctx:Xe},n=32):(e=String(e),s&64?(n=16,e=[Hs(e)]):n=8);t.children=e,t.shapeFlag|=n}function eo(...t){const e={};for(let n=0;nKe||Xe;let Sc,xf;{const t=za(),e=(n,s)=>{let i;return(i=t[n])||(i=t[n]=[]),i.push(s),r=>{i.length>1?i.forEach(o=>o(r)):i[0](r)}};Sc=e("__VUE_INSTANCE_SETTERS__",n=>Ke=n),xf=e("__VUE_SSR_SETTERS__",n=>uo=n)}const Sr=t=>{const e=Ke;return Sc(t),t.scope.on(),()=>{t.scope.off(),Sc(e)}},Af=()=>{Ke&&Ke.scope.off(),Sc(null)};function wv(t){return t.vnode.shapeFlag&4}let uo=!1;function Cv(t,e=!1,n=!1){e&&xf(e);const{props:s,children:i}=t.vnode,r=wv(t);QE(t,s,r,e),sw(t,i,n);const o=r?Tw(t,e):void 0;return e&&xf(!1),o}function Tw(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,Sf);const{setup:s}=n;if(s){Gi();const i=t.setupContext=s.length>1?Tv(t):null,r=Sr(t),o=xo(s,t,0,[t.props,i]),a=nu(o);if(Ki(),r(),(a||t.sp)&&!Fi(t)&&Dp(t),a){if(o.then(Af,Af),e)return o.then(l=>{Of(t,l,e)}).catch(l=>{Or(l,t,0)});t.asyncDep=o}else Of(t,o,e)}else kv(t,e)}function Of(t,e,n){Ot(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:de(e)&&(t.setupState=Pp(e)),kv(t,n)}let Ec,If;function xw(t){Ec=t,If=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,PE))}}const Aw=()=>!Ec;function kv(t,e,n){const s=t.type;if(!t.render){if(!e&&Ec&&!s.render){const i=s.template||jp(t).template;if(i){const{isCustomElement:r,compilerOptions:o}=t.appContext.config,{delimiters:a,compilerOptions:l}=s,c=Jt(Jt({isCustomElement:r,delimiters:a},o),l);s.render=Ec(i,c)}}t.render=s.render||Qe,If&&If(t)}{const i=Sr(t);Gi();try{qE(t)}finally{Ki(),i()}}}const Ow={get(t,e){return un(t,"get",""),t[e]}};function Tv(t){const e=n=>{t.exposed=n||{}};return{attrs:new Proxy(t.attrs,Ow),slots:t.slots,emit:t.emit,expose:e}}function Za(t){return t.exposed?t.exposeProxy||(t.exposeProxy=new Proxy(Pp(du(t.exposed)),{get(e,n){if(n in e)return e[n];if(n in ra)return ra[n](t)},has(e,n){return n in e||n in ra}})):t.proxy}function Nf(t,e=!0){return Ot(t)?t.displayName||t.name:t.name||e&&t.__name}function Iw(t){return Ot(t)&&"__vccOpts"in t}const Je=(t,e)=>X3(t,e,uo);function Ds(t,e,n){const s=arguments.length;return s===2?de(e)&&!bt(e)?ci(e)?C(t,null,[e]):C(t,e):C(t,null,e):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&ci(n)&&(n=[n]),C(t,e,n))}function Nw(){}function Pw(t,e,n,s){const i=n[s];if(i&&xv(i,t))return i;const r=e();return r.memo=t.slice(),r.cacheIndex=s,n[s]=r}function xv(t,e){const n=t.memo;if(n.length!=e.length)return!1;for(let s=0;s0&&gn&&gn.push(t),!0}const Av="3.5.13",$w=Qe,Rw=iE,Lw=qr,Dw=x_,Mw={createComponentInstance:Ev,setupComponent:Cv,renderComponentRoot:Wl,setCurrentRenderingInstance:Ta,isVNode:ci,normalizeVNode:Rn,getComponentPublicInstance:Za,ensureValidVNode:Up,pushWarningContext:tE,popWarningContext:eE},Fw=Mw,Vw=null,Hw=null,Uw=null;/** * @vue/runtime-dom v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Pf;const wm=typeof window<"u"&&window.trustedTypes;if(wm)try{Pf=wm.createPolicy("vue",{createHTML:t=>t})}catch{}const Ov=Pf?t=>Pf.createHTML(t):t=>t,jw="http://www.w3.org/2000/svg",Bw="http://www.w3.org/1998/Math/MathML",Xs=typeof document<"u"?document:null,Cm=Xs&&Xs.createElement("template"),Ww={insert:(t,e,n)=>{e.insertBefore(t,n||null)},remove:t=>{const e=t.parentNode;e&&e.removeChild(t)},createElement:(t,e,n,s)=>{const i=e==="svg"?Xs.createElementNS(jw,t):e==="mathml"?Xs.createElementNS(Bw,t):n?Xs.createElement(t,{is:n}):Xs.createElement(t);return t==="select"&&s&&s.multiple!=null&&i.setAttribute("multiple",s.multiple),i},createText:t=>Xs.createTextNode(t),createComment:t=>Xs.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>Xs.querySelector(t),setScopeId(t,e){t.setAttribute(e,"")},insertStaticContent(t,e,n,s,i,r){const o=n?n.previousSibling:e.lastChild;if(i&&(i===r||i.nextSibling))for(;e.insertBefore(i.cloneNode(!0),n),!(i===r||!(i=i.nextSibling)););else{Cm.innerHTML=Ov(s==="svg"?`${t}`:s==="mathml"?`${t}`:t);const a=Cm.content;if(s==="svg"||s==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}e.insertBefore(a,n)}return[o?o.nextSibling:e.firstChild,n?n.previousSibling:e.lastChild]}},bi="transition",Fo="animation",fo=Symbol("_vtc"),Iv={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Nv=Jt({},Lp,Iv),zw=t=>(t.displayName="Transition",t.props=Nv,t),Pv=zw((t,{slots:e})=>Ms(R_,$v(t),e)),tr=(t,e=[])=>{bt(t)?t.forEach(n=>n(...e)):t&&t(...e)},km=t=>t?bt(t)?t.some(e=>e.length>1):t.length>1:!1;function $v(t){const e={};for(const V in t)V in Iv||(e[V]=t[V]);if(t.css===!1)return e;const{name:n="v",type:s,duration:i,enterFromClass:r=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:l=r,appearActiveClass:c=o,appearToClass:u=a,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=t,h=qw(i),m=h&&h[0],_=h&&h[1],{onBeforeEnter:y,onEnter:S,onEnterCancelled:b,onLeave:v,onLeaveCancelled:E,onBeforeAppear:w=y,onAppear:P=S,onAppearCancelled:L=b}=e,k=(V,j,Z,ot)=>{V._enterCancelled=ot,Ci(V,j?u:a),Ci(V,j?c:o),Z&&Z()},R=(V,j)=>{V._isLeaving=!1,Ci(V,d),Ci(V,p),Ci(V,f),j&&j()},B=V=>(j,Z)=>{const ot=V?P:S,q=()=>k(j,V,Z);tr(ot,[j,q]),Tm(()=>{Ci(j,V?l:r),Ps(j,V?u:a),km(ot)||xm(j,s,m,q)})};return Jt(e,{onBeforeEnter(V){tr(y,[V]),Ps(V,r),Ps(V,o)},onBeforeAppear(V){tr(w,[V]),Ps(V,l),Ps(V,c)},onEnter:B(!1),onAppear:B(!0),onLeave(V,j){V._isLeaving=!0;const Z=()=>R(V,j);Ps(V,d),V._enterCancelled?(Ps(V,f),$f()):($f(),Ps(V,f)),Tm(()=>{V._isLeaving&&(Ci(V,d),Ps(V,p),km(v)||xm(V,s,_,Z))}),tr(v,[V,Z])},onEnterCancelled(V){k(V,!1,void 0,!0),tr(b,[V])},onAppearCancelled(V){k(V,!0,void 0,!0),tr(L,[V])},onLeaveCancelled(V){R(V),tr(E,[V])}})}function qw(t){if(t==null)return null;if(de(t))return[wd(t.enter),wd(t.leave)];{const e=wd(t);return[e,e]}}function wd(t){return va(t)}function Ps(t,e){e.split(/\s+/).forEach(n=>n&&t.classList.add(n)),(t[fo]||(t[fo]=new Set)).add(e)}function Ci(t,e){e.split(/\s+/).forEach(s=>s&&t.classList.remove(s));const n=t[fo];n&&(n.delete(e),n.size||(t[fo]=void 0))}function Tm(t){requestAnimationFrame(()=>{requestAnimationFrame(t)})}let Gw=0;function xm(t,e,n,s){const i=t._endId=++Gw,r=()=>{i===t._endId&&s()};if(n!=null)return setTimeout(r,n);const{type:o,timeout:a,propCount:l}=Rv(t,e);if(!o)return s();const c=o+"end";let u=0;const d=()=>{t.removeEventListener(c,f),r()},f=p=>{p.target===t&&++u>=l&&d()};setTimeout(()=>{u(n[h]||"").split(", "),i=s(`${bi}Delay`),r=s(`${bi}Duration`),o=Am(i,r),a=s(`${Fo}Delay`),l=s(`${Fo}Duration`),c=Am(a,l);let u=null,d=0,f=0;e===bi?o>0&&(u=bi,d=o,f=r.length):e===Fo?c>0&&(u=Fo,d=c,f=l.length):(d=Math.max(o,c),u=d>0?o>c?bi:Fo:null,f=u?u===bi?r.length:l.length:0);const p=u===bi&&/\b(transform|all)(,|$)/.test(s(`${bi}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function Am(t,e){for(;t.lengthOm(n)+Om(t[s])))}function Om(t){return t==="auto"?0:Number(t.slice(0,-1).replace(",","."))*1e3}function $f(){return document.body.offsetHeight}function Kw(t,e,n){const s=t[fo];s&&(e=(e?[e,...s]:[...s]).join(" ")),e==null?t.removeAttribute("class"):n?t.setAttribute("class",e):t.className=e}const wc=Symbol("_vod"),Lv=Symbol("_vsh"),Cc={beforeMount(t,{value:e},{transition:n}){t[wc]=t.style.display==="none"?"":t.style.display,n&&e?n.beforeEnter(t):Vo(t,e)},mounted(t,{value:e},{transition:n}){n&&e&&n.enter(t)},updated(t,{value:e,oldValue:n},{transition:s}){!e!=!n&&(s?e?(s.beforeEnter(t),Vo(t,!0),s.enter(t)):s.leave(t,()=>{Vo(t,!1)}):Vo(t,e))},beforeUnmount(t,{value:e}){Vo(t,e)}};function Vo(t,e){t.style.display=e?t[wc]:"none",t[Lv]=!e}function Xw(){Cc.getSSRProps=({value:t})=>{if(!t)return{style:{display:"none"}}}}const Dv=Symbol("");function Yw(t){const e=An();if(!e)return;const n=e.ut=(i=t(e.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${e.uid}"]`)).forEach(r=>kc(r,i))},s=()=>{const i=t(e.proxy);e.ce?kc(e.ce,i):Rf(e.subTree,i),n(i)};Mp(()=>{Ca(s)}),Ao(()=>{qn(s,Qe,{flush:"post"});const i=new MutationObserver(s);i.observe(e.subTree.el.parentNode,{childList:!0}),Ka(()=>i.disconnect())})}function Rf(t,e){if(t.shapeFlag&128){const n=t.suspense;t=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Rf(n.activeBranch,e)})}for(;t.component;)t=t.component.subTree;if(t.shapeFlag&1&&t.el)kc(t.el,e);else if(t.type===ht)t.children.forEach(n=>Rf(n,e));else if(t.type===gr){let{el:n,anchor:s}=t;for(;n&&(kc(n,e),n!==s);)n=n.nextSibling}}function kc(t,e){if(t.nodeType===1){const n=t.style;let s="";for(const i in e)n.setProperty(`--${i}`,e[i]),s+=`--${i}: ${e[i]};`;n[Dv]=s}}const Zw=/(^|;)\s*display\s*:/;function Jw(t,e,n){const s=t.style,i=$t(n);let r=!1;if(n&&!i){if(e)if($t(e))for(const o of e.split(";")){const a=o.slice(0,o.indexOf(":")).trim();n[a]==null&&ql(s,a,"")}else for(const o in e)n[o]==null&&ql(s,o,"");for(const o in n)o==="display"&&(r=!0),ql(s,o,n[o])}else if(i){if(e!==n){const o=s[Dv];o&&(n+=";"+o),s.cssText=n,r=Zw.test(n)}}else e&&t.removeAttribute("style");wc in t&&(t[wc]=r?s.display:"",t[Lv]&&(s.display="none"))}const Im=/\s*!important$/;function ql(t,e,n){if(bt(n))n.forEach(s=>ql(t,e,s));else if(n==null&&(n=""),e.startsWith("--"))t.setProperty(e,n);else{const s=Qw(t,e);Im.test(n)?t.setProperty(fn(s),n.replace(Im,""),"important"):t[s]=n}}const Nm=["Webkit","Moz","ms"],Cd={};function Qw(t,e){const n=Cd[e];if(n)return n;let s=we(e);if(s!=="filter"&&s in t)return Cd[e]=s;s=qi(s);for(let i=0;ikd||(sC.then(()=>kd=0),kd=Date.now());function rC(t,e){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;as(oC(s,n.value),e,5,[s])};return n.value=t,n.attached=iC(),n}function oC(t,e){if(bt(e)){const n=t.stopImmediatePropagation;return t.stopImmediatePropagation=()=>{n.call(t),t._stopped=!0},e.map(s=>i=>!i._stopped&&s&&s(i))}else return e}const Mm=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>96&&t.charCodeAt(2)<123,aC=(t,e,n,s,i,r)=>{const o=i==="svg";e==="class"?Kw(t,s,o):e==="style"?Jw(t,n,s):Wi(e)?tu(e)||eC(t,e,n,s,r):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):lC(t,e,s,o))?(Rm(t,e,s),!t.tagName.includes("-")&&(e==="value"||e==="checked"||e==="selected")&&$m(t,e,s,o,r,e!=="value")):t._isVueCE&&(/[A-Z]/.test(e)||!$t(s))?Rm(t,we(e),s,r,e):(e==="true-value"?t._trueValue=s:e==="false-value"&&(t._falseValue=s),$m(t,e,s,o))};function lC(t,e,n,s){if(s)return!!(e==="innerHTML"||e==="textContent"||e in t&&Mm(e)&&Ot(n));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&t.tagName==="INPUT"||e==="type"&&t.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const i=t.tagName;if(i==="IMG"||i==="VIDEO"||i==="CANVAS"||i==="SOURCE")return!1}return Mm(e)&&$t(n)?!1:e in t}const Fm={};/*! #__NO_SIDE_EFFECTS__ */function Mv(t,e,n){const s=fi(t,e);Wa(s)&&Jt(s,e);class i extends Su{constructor(o){super(s,o,n)}}return i.def=s,i}/*! #__NO_SIDE_EFFECTS__ */const cC=(t,e)=>Mv(t,e,Xv),uC=typeof HTMLElement<"u"?HTMLElement:class{};class Su extends uC{constructor(e,n={},s=xc){super(),this._def=e,this._props=n,this._createApp=s,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._ob=null,this.shadowRoot&&s!==xc?this._root=this.shadowRoot:e.shadowRoot!==!1?(this.attachShadow({mode:"open"}),this._root=this.shadowRoot):this._root=this,this._def.__asyncLoader||this._resolveProps(this._def)}connectedCallback(){if(!this.isConnected)return;this.shadowRoot||this._parseSlots(),this._connected=!0;let e=this;for(;e=e&&(e.parentNode||e.host);)if(e instanceof Su){this._parent=e;break}this._instance||(this._resolved?(this._setParent(),this._update()):e&&e._pendingResolve?this._pendingResolve=e._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(e=this._parent){e&&(this._instance.parent=e._instance,this._instance.provides=e._instance.provides)}disconnectedCallback(){this._connected=!1,Ir(()=>{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)})}_resolveDef(){if(this._pendingResolve)return;for(let s=0;s{for(const i of s)this._setAttr(i.attributeName)}),this._ob.observe(this,{attributes:!0});const e=(s,i=!1)=>{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:o}=s;let a;if(r&&!bt(r))for(const l in r){const c=r[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=va(this._props[l])),(a||(a=Object.create(null)))[we(l)]=!0)}this._numberProps=a,i&&this._resolveProps(s),this.shadowRoot&&this._applyStyles(o),this._mount(s)},n=this._def.__asyncLoader;n?this._pendingResolve=n().then(s=>e(this._def=s,!0)):e(this._def)}_mount(e){this._app=this._createApp(e),e.configureApp&&e.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const n=this._instance&&this._instance.exposed;if(n)for(const s in n)ae(this,s)||Object.defineProperty(this,s,{get:()=>Ln(n[s])})}_resolveProps(e){const{props:n}=e,s=bt(n)?n:Object.keys(n||{});for(const i of Object.keys(this))i[0]!=="_"&&s.includes(i)&&this._setProp(i,this[i]);for(const i of s.map(we))Object.defineProperty(this,i,{get(){return this._getProp(i)},set(r){this._setProp(i,r,!0,!0)}})}_setAttr(e){if(e.startsWith("data-v-"))return;const n=this.hasAttribute(e);let s=n?this.getAttribute(e):Fm;const i=we(e);n&&this._numberProps&&this._numberProps[i]&&(s=va(s)),this._setProp(i,s,!1,!0)}_getProp(e){return this._props[e]}_setProp(e,n,s=!0,i=!1){if(n!==this._props[e]&&(n===Fm?delete this._props[e]:(this._props[e]=n,e==="key"&&this._app&&(this._app._ceVNode.key=n)),i&&this._instance&&this._update(),s)){const r=this._ob;r&&r.disconnect(),n===!0?this.setAttribute(fn(e),""):typeof n=="string"||typeof n=="number"?this.setAttribute(fn(e),n+""):n||this.removeAttribute(fn(e)),r&&r.observe(this,{attributes:!0})}}_update(){Kv(this._createVNode(),this._root)}_createVNode(){const e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));const n=C(this._def,Jt(e,this._props));return this._instance||(n.ce=s=>{this._instance=s,s.ce=this,s.isCE=!0;const i=(r,o)=>{this.dispatchEvent(new CustomEvent(r,Wa(o[0])?Jt({detail:o},o[0]):{detail:o}))};s.emit=(r,...o)=>{i(r,o),fn(r)!==r&&i(fn(r),o)},this._setParent()}),n}_applyStyles(e,n){if(!e)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const s=this._nonce;for(let i=e.length-1;i>=0;i--){const r=document.createElement("style");s&&r.setAttribute("nonce",s),r.textContent=e[i],this.shadowRoot.prepend(r)}}_parseSlots(){const e=this._slots={};let n;for(;n=this.firstChild;){const s=n.nodeType===1&&n.getAttribute("slot")||"default";(e[s]||(e[s]=[])).push(n),this.removeChild(n)}}_renderSlots(){const e=(this._teleportTarget||this).querySelectorAll("slot"),n=this._instance.type.__scopeId;for(let s=0;s(delete t.props.mode,t),hC=pC({name:"TransitionGroup",props:Jt({},Nv,{tag:String,moveClass:String}),setup(t,{slots:e}){const n=An(),s=Rp();let i,r;return gu(()=>{if(!i.length)return;const o=t.moveClass||`${t.name||"v"}-move`;if(!_C(i[0].el,n.vnode.el,o))return;i.forEach(gC),i.forEach(bC);const a=i.filter(yC);$f(),a.forEach(l=>{const c=l.el,u=c.style;Ps(c,o),u.transform=u.webkitTransform=u.transitionDuration="";const d=c[Tc]=f=>{f&&f.target!==c||(!f||/transform$/.test(f.propertyName))&&(c.removeEventListener("transitionend",d),c[Tc]=null,Ci(c,o))};c.addEventListener("transitionend",d)})}),()=>{const o=ee(t),a=$v(o);let l=o.tag||ht;if(i=[],r)for(let c=0;c{a.split(/\s+/).forEach(l=>l&&s.classList.remove(l))}),n.split(/\s+/).forEach(a=>a&&s.classList.add(a)),s.style.display="none";const r=e.nodeType===1?e:e.parentNode;r.appendChild(s);const{hasTransform:o}=Rv(s);return r.removeChild(s),o}const ji=t=>{const e=t.props["onUpdate:modelValue"]||!1;return bt(e)?n=>pr(e,n):e};function vC(t){t.target.composing=!0}function Hm(t){const e=t.target;e.composing&&(e.composing=!1,e.dispatchEvent(new Event("input")))}const rs=Symbol("_assign"),Xn={created(t,{modifiers:{lazy:e,trim:n,number:s}},i){t[rs]=ji(i);const r=s||i.props&&i.props.type==="number";Js(t,e?"change":"input",o=>{if(o.target.composing)return;let a=t.value;n&&(a=a.trim()),r&&(a=_a(a)),t[rs](a)}),n&&Js(t,"change",()=>{t.value=t.value.trim()}),e||(Js(t,"compositionstart",vC),Js(t,"compositionend",Hm),Js(t,"change",Hm))},mounted(t,{value:e}){t.value=e??""},beforeUpdate(t,{value:e,oldValue:n,modifiers:{lazy:s,trim:i,number:r}},o){if(t[rs]=ji(o),t.composing)return;const a=(r||t.type==="number")&&!/^0\d/.test(t.value)?_a(t.value):t.value,l=e??"";a!==l&&(document.activeElement===t&&t.type!=="range"&&(s&&e===n||i&&t.value.trim()===l)||(t.value=l))}},qp={deep:!0,created(t,e,n){t[rs]=ji(n),Js(t,"change",()=>{const s=t._modelValue,i=po(t),r=t.checked,o=t[rs];if(bt(s)){const a=qa(s,i),l=a!==-1;if(r&&!l)o(s.concat(i));else if(!r&&l){const c=[...s];c.splice(a,1),o(c)}}else if(zi(s)){const a=new Set(s);r?a.add(i):a.delete(i),o(a)}else o(Uv(t,r))})},mounted:Um,beforeUpdate(t,e,n){t[rs]=ji(n),Um(t,e,n)}};function Um(t,{value:e,oldValue:n},s){t._modelValue=e;let i;if(bt(e))i=qa(e,s.props.value)>-1;else if(zi(e))i=e.has(s.props.value);else{if(e===n)return;i=ai(e,Uv(t,!0))}t.checked!==i&&(t.checked=i)}const Gp={created(t,{value:e},n){t.checked=ai(e,n.props.value),t[rs]=ji(n),Js(t,"change",()=>{t[rs](po(t))})},beforeUpdate(t,{value:e,oldValue:n},s){t[rs]=ji(s),e!==n&&(t.checked=ai(e,s.props.value))}},Kp={deep:!0,created(t,{value:e,modifiers:{number:n}},s){const i=zi(e);Js(t,"change",()=>{const r=Array.prototype.filter.call(t.options,o=>o.selected).map(o=>n?_a(po(o)):po(o));t[rs](t.multiple?i?new Set(r):r:r[0]),t._assigning=!0,Ir(()=>{t._assigning=!1})}),t[rs]=ji(s)},mounted(t,{value:e}){jm(t,e)},beforeUpdate(t,e,n){t[rs]=ji(n)},updated(t,{value:e}){t._assigning||jm(t,e)}};function jm(t,e){const n=t.multiple,s=bt(e);if(!(n&&!s&&!zi(e))){for(let i=0,r=t.options.length;iString(c)===String(a)):o.selected=qa(e,a)>-1}else o.selected=e.has(a);else if(ai(po(o),e)){t.selectedIndex!==i&&(t.selectedIndex=i);return}}!n&&t.selectedIndex!==-1&&(t.selectedIndex=-1)}}function po(t){return"_value"in t?t._value:t.value}function Uv(t,e){const n=e?"_trueValue":"_falseValue";return n in t?t[n]:e}const jv={created(t,e,n){Sl(t,e,n,null,"created")},mounted(t,e,n){Sl(t,e,n,null,"mounted")},beforeUpdate(t,e,n,s){Sl(t,e,n,s,"beforeUpdate")},updated(t,e,n,s){Sl(t,e,n,s,"updated")}};function Bv(t,e){switch(t){case"SELECT":return Kp;case"TEXTAREA":return Xn;default:switch(e){case"checkbox":return qp;case"radio":return Gp;default:return Xn}}}function Sl(t,e,n,s,i){const o=Bv(t.tagName,n.props&&n.props.type)[i];o&&o(t,e,n,s)}function SC(){Xn.getSSRProps=({value:t})=>({value:t}),Gp.getSSRProps=({value:t},e)=>{if(e.props&&ai(e.props.value,t))return{checked:!0}},qp.getSSRProps=({value:t},e)=>{if(bt(t)){if(e.props&&qa(t,e.props.value)>-1)return{checked:!0}}else if(zi(t)){if(e.props&&t.has(e.props.value))return{checked:!0}}else if(t)return{checked:!0}},jv.getSSRProps=(t,e)=>{if(typeof e.type!="string")return;const n=Bv(e.type.toUpperCase(),e.props&&e.props.type);if(n.getSSRProps)return n.getSSRProps(t,e)}}const EC=["ctrl","shift","alt","meta"],wC={stop:t=>t.stopPropagation(),prevent:t=>t.preventDefault(),self:t=>t.target!==t.currentTarget,ctrl:t=>!t.ctrlKey,shift:t=>!t.shiftKey,alt:t=>!t.altKey,meta:t=>!t.metaKey,left:t=>"button"in t&&t.button!==0,middle:t=>"button"in t&&t.button!==1,right:t=>"button"in t&&t.button!==2,exact:(t,e)=>EC.some(n=>t[`${n}Key`]&&!e.includes(n))},Oe=(t,e)=>{const n=t._withMods||(t._withMods={}),s=e.join(".");return n[s]||(n[s]=(i,...r)=>{for(let o=0;o{const n=t._withKeys||(t._withKeys={}),s=e.join(".");return n[s]||(n[s]=i=>{if(!("key"in i))return;const r=fn(i.key);if(e.some(o=>o===r||CC[o]===r))return t(i)})},zv=Jt({patchProp:aC},Ww);let la,Bm=!1;function qv(){return la||(la=iv(zv))}function Gv(){return la=Bm?la:rv(zv),Bm=!0,la}const Kv=(...t)=>{qv().render(...t)},kC=(...t)=>{Gv().hydrate(...t)},xc=(...t)=>{const e=qv().createApp(...t),{mount:n}=e;return e.mount=s=>{const i=Zv(s);if(!i)return;const r=e._component;!Ot(r)&&!r.render&&!r.template&&(r.template=i.innerHTML),i.nodeType===1&&(i.textContent="");const o=n(i,!1,Yv(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),o},e},Xv=(...t)=>{const e=Gv().createApp(...t),{mount:n}=e;return e.mount=s=>{const i=Zv(s);if(i)return n(i,!0,Yv(i))},e};function Yv(t){if(t instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&t instanceof MathMLElement)return"mathml"}function Zv(t){return $t(t)?document.querySelector(t):t}let Wm=!1;const TC=()=>{Wm||(Wm=!0,SC(),Xw())},xC=Object.freeze(Object.defineProperty({__proto__:null,BaseTransition:R_,BaseTransitionPropsValidators:Lp,Comment:ze,DeprecationTypes:Uw,EffectScope:kp,ErrorCodes:sE,ErrorTypeStrings:Rw,Fragment:ht,KeepAlive:AE,ReactiveEffect:Sa,Static:gr,Suspense:mw,Teleport:us,Text:si,TrackOpTypes:Y3,Transition:Pv,TransitionGroup:mC,TriggerOpTypes:Z3,VueElement:Su,assertNumber:nE,callWithAsyncErrorHandling:as,callWithErrorHandling:xo,camelize:we,capitalize:qi,cloneVNode:Hs,compatUtils:Hw,computed:Je,createApp:xc,createBlock:vt,createCommentVNode:_t,createElementBlock:M,createElementVNode:g,createHydrationRenderer:rv,createPropsRestProxy:WE,createRenderer:iv,createSSRApp:Xv,createSlots:Xa,createStaticVNode:ww,createTextVNode:Us,createVNode:C,customRef:__,defineAsyncComponent:TE,defineComponent:fi,defineCustomElement:Mv,defineEmits:RE,defineExpose:LE,defineModel:FE,defineOptions:DE,defineProps:$E,defineSSRCustomElement:cC,defineSlots:ME,devtools:Lw,effect:_3,effectScope:ru,getCurrentInstance:An,getCurrentScope:Tp,getCurrentWatcher:J3,getTransitionRawChildren:hu,guardReactiveProps:Sv,h:Ms,handleError:Or,hasInjectionContext:K_,hydrate:kC,hydrateOnIdle:vE,hydrateOnInteraction:CE,hydrateOnMediaQuery:wE,hydrateOnVisible:EE,initCustomFormatter:Nw,initDirectivesForSSR:TC,inject:is,isMemoSame:xv,isProxy:uu,isReactive:Fs,isReadonly:Ui,isRef:Ae,isRuntimeOnly:Aw,isShallow:zn,isVNode:ci,markRaw:du,mergeDefaults:jE,mergeModels:BE,mergeProps:eo,nextTick:Ir,normalizeClass:Bt,normalizeProps:Qr,normalizeStyle:di,onActivated:D_,onBeforeMount:V_,onBeforeUnmount:bu,onBeforeUpdate:Mp,onDeactivated:M_,onErrorCaptured:B_,onMounted:Ao,onRenderTracked:j_,onRenderTriggered:U_,onScopeDispose:n_,onServerPrefetch:H_,onUnmounted:Ka,onUpdated:gu,onWatcherCleanup:E_,openBlock:O,popScopeId:lE,provide:oa,proxyRefs:Pp,pushScopeId:aE,queuePostFlushCb:Ca,reactive:To,readonly:Np,ref:ss,registerRuntimeCompiler:xw,render:Kv,renderList:fe,renderSlot:ge,resolveComponent:x,resolveDirective:Vp,resolveDynamicComponent:yu,resolveFilter:Vw,resolveTransitionHooks:co,setBlockTracking:Tf,setDevtoolsHook:Dw,setTransitionHooks:li,shallowReactive:Ip,shallowReadonly:V3,shallowRef:fu,ssrContextKey:cv,ssrUtils:Fw,stop:v3,toDisplayString:I,toHandlerKey:fr,toHandlers:NE,toRaw:ee,toRef:G3,toRefs:v_,toValue:j3,transformVNodeArgs:Sw,triggerRef:U3,unref:Ln,useAttrs:UE,useCssModule:fC,useCssVars:Yw,useHost:Fv,useId:fE,useModel:lw,useSSRContext:uv,useShadowRoot:dC,useSlots:HE,useTemplateRef:pE,useTransitionState:Rp,vModelCheckbox:qp,vModelDynamic:jv,vModelRadio:Gp,vModelSelect:Kp,vModelText:Xn,vShow:Cc,version:Av,warn:$w,watch:qn,watchEffect:dv,watchPostEffect:ow,watchSyncEffect:fv,withAsyncContext:zE,withCtx:D,withDefaults:VE,withDirectives:xn,withKeys:Wv,withMemo:Pw,withModifiers:Oe,withScopeId:cE},Symbol.toStringTag,{value:"Module"})),rt=(t,e)=>{const n=t.__vccOpts||t;for(const[s,i]of e)n[s]=i;return n},AC={name:"ModalDialog",props:{actions:{type:Array,required:!0},show:Boolean,title:{type:String,default:""}},emits:["close"],watch:{show(t){const{classList:e}=document.querySelector("html");t?e.add("is-clipped"):e.remove("is-clipped")}}},OC={key:0,class:"modal is-active"},IC={class:"modal-content"},NC={class:"card is-shadowless"},PC={class:"card-content"},$C=["textContent"],RC={key:0,class:"card-footer"},LC=["onClick"],DC=["textContent"];function MC(t,e,n,s,i,r){const o=x("mdicon");return O(),vt(Pv,{name:"fade"},{default:D(()=>[n.show?(O(),M("div",OC,[g("div",{class:"modal-background",onClick:e[0]||(e[0]=a=>t.$emit("close"))}),g("div",IC,[g("div",NC,[g("div",PC,[n.title?(O(),M("p",{key:0,class:"title is-4",textContent:I(n.title)},null,8,$C)):_t("",!0),ge(t.$slots,"content",{},void 0,!0)]),n.actions.length?(O(),M("footer",RC,[(O(!0),M(ht,null,fe(n.actions,a=>(O(),M("a",{key:a.label,class:Bt(["card-footer-item",{"is-disabled":a.disabled}]),onClick:a.handler},[C(o,{class:"icon",name:a.icon,size:"16"},null,8,["name"]),g("span",{class:"is-size-7",textContent:I(a.label)},null,8,DC)],10,LC))),128))])):_t("",!0)])])])):_t("",!0)]),_:3})}const hi=rt(AC,[["render",MC],["__scopeId","data-v-8923bb74"]]);/*! +**/let Pf;const wm=typeof window<"u"&&window.trustedTypes;if(wm)try{Pf=wm.createPolicy("vue",{createHTML:t=>t})}catch{}const Ov=Pf?t=>Pf.createHTML(t):t=>t,jw="http://www.w3.org/2000/svg",Bw="http://www.w3.org/1998/Math/MathML",Xs=typeof document<"u"?document:null,Cm=Xs&&Xs.createElement("template"),Ww={insert:(t,e,n)=>{e.insertBefore(t,n||null)},remove:t=>{const e=t.parentNode;e&&e.removeChild(t)},createElement:(t,e,n,s)=>{const i=e==="svg"?Xs.createElementNS(jw,t):e==="mathml"?Xs.createElementNS(Bw,t):n?Xs.createElement(t,{is:n}):Xs.createElement(t);return t==="select"&&s&&s.multiple!=null&&i.setAttribute("multiple",s.multiple),i},createText:t=>Xs.createTextNode(t),createComment:t=>Xs.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>Xs.querySelector(t),setScopeId(t,e){t.setAttribute(e,"")},insertStaticContent(t,e,n,s,i,r){const o=n?n.previousSibling:e.lastChild;if(i&&(i===r||i.nextSibling))for(;e.insertBefore(i.cloneNode(!0),n),!(i===r||!(i=i.nextSibling)););else{Cm.innerHTML=Ov(s==="svg"?`${t}`:s==="mathml"?`${t}`:t);const a=Cm.content;if(s==="svg"||s==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}e.insertBefore(a,n)}return[o?o.nextSibling:e.firstChild,n?n.previousSibling:e.lastChild]}},bi="transition",Fo="animation",fo=Symbol("_vtc"),Iv={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Nv=Jt({},Lp,Iv),zw=t=>(t.displayName="Transition",t.props=Nv,t),Pv=zw((t,{slots:e})=>Ds(R_,$v(t),e)),tr=(t,e=[])=>{bt(t)?t.forEach(n=>n(...e)):t&&t(...e)},km=t=>t?bt(t)?t.some(e=>e.length>1):t.length>1:!1;function $v(t){const e={};for(const V in t)V in Iv||(e[V]=t[V]);if(t.css===!1)return e;const{name:n="v",type:s,duration:i,enterFromClass:r=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:l=r,appearActiveClass:c=o,appearToClass:u=a,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=t,h=qw(i),m=h&&h[0],_=h&&h[1],{onBeforeEnter:y,onEnter:S,onEnterCancelled:b,onLeave:v,onLeaveCancelled:E,onBeforeAppear:w=y,onAppear:P=S,onAppearCancelled:L=b}=e,k=(V,j,Z,ot)=>{V._enterCancelled=ot,Ci(V,j?u:a),Ci(V,j?c:o),Z&&Z()},R=(V,j)=>{V._isLeaving=!1,Ci(V,d),Ci(V,p),Ci(V,f),j&&j()},B=V=>(j,Z)=>{const ot=V?P:S,q=()=>k(j,V,Z);tr(ot,[j,q]),Tm(()=>{Ci(j,V?l:r),Ns(j,V?u:a),km(ot)||xm(j,s,m,q)})};return Jt(e,{onBeforeEnter(V){tr(y,[V]),Ns(V,r),Ns(V,o)},onBeforeAppear(V){tr(w,[V]),Ns(V,l),Ns(V,c)},onEnter:B(!1),onAppear:B(!0),onLeave(V,j){V._isLeaving=!0;const Z=()=>R(V,j);Ns(V,d),V._enterCancelled?(Ns(V,f),$f()):($f(),Ns(V,f)),Tm(()=>{V._isLeaving&&(Ci(V,d),Ns(V,p),km(v)||xm(V,s,_,Z))}),tr(v,[V,Z])},onEnterCancelled(V){k(V,!1,void 0,!0),tr(b,[V])},onAppearCancelled(V){k(V,!0,void 0,!0),tr(L,[V])},onLeaveCancelled(V){R(V),tr(E,[V])}})}function qw(t){if(t==null)return null;if(de(t))return[wd(t.enter),wd(t.leave)];{const e=wd(t);return[e,e]}}function wd(t){return va(t)}function Ns(t,e){e.split(/\s+/).forEach(n=>n&&t.classList.add(n)),(t[fo]||(t[fo]=new Set)).add(e)}function Ci(t,e){e.split(/\s+/).forEach(s=>s&&t.classList.remove(s));const n=t[fo];n&&(n.delete(e),n.size||(t[fo]=void 0))}function Tm(t){requestAnimationFrame(()=>{requestAnimationFrame(t)})}let Gw=0;function xm(t,e,n,s){const i=t._endId=++Gw,r=()=>{i===t._endId&&s()};if(n!=null)return setTimeout(r,n);const{type:o,timeout:a,propCount:l}=Rv(t,e);if(!o)return s();const c=o+"end";let u=0;const d=()=>{t.removeEventListener(c,f),r()},f=p=>{p.target===t&&++u>=l&&d()};setTimeout(()=>{u(n[h]||"").split(", "),i=s(`${bi}Delay`),r=s(`${bi}Duration`),o=Am(i,r),a=s(`${Fo}Delay`),l=s(`${Fo}Duration`),c=Am(a,l);let u=null,d=0,f=0;e===bi?o>0&&(u=bi,d=o,f=r.length):e===Fo?c>0&&(u=Fo,d=c,f=l.length):(d=Math.max(o,c),u=d>0?o>c?bi:Fo:null,f=u?u===bi?r.length:l.length:0);const p=u===bi&&/\b(transform|all)(,|$)/.test(s(`${bi}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function Am(t,e){for(;t.lengthOm(n)+Om(t[s])))}function Om(t){return t==="auto"?0:Number(t.slice(0,-1).replace(",","."))*1e3}function $f(){return document.body.offsetHeight}function Kw(t,e,n){const s=t[fo];s&&(e=(e?[e,...s]:[...s]).join(" ")),e==null?t.removeAttribute("class"):n?t.setAttribute("class",e):t.className=e}const wc=Symbol("_vod"),Lv=Symbol("_vsh"),Cc={beforeMount(t,{value:e},{transition:n}){t[wc]=t.style.display==="none"?"":t.style.display,n&&e?n.beforeEnter(t):Vo(t,e)},mounted(t,{value:e},{transition:n}){n&&e&&n.enter(t)},updated(t,{value:e,oldValue:n},{transition:s}){!e!=!n&&(s?e?(s.beforeEnter(t),Vo(t,!0),s.enter(t)):s.leave(t,()=>{Vo(t,!1)}):Vo(t,e))},beforeUnmount(t,{value:e}){Vo(t,e)}};function Vo(t,e){t.style.display=e?t[wc]:"none",t[Lv]=!e}function Xw(){Cc.getSSRProps=({value:t})=>{if(!t)return{style:{display:"none"}}}}const Dv=Symbol("");function Yw(t){const e=An();if(!e)return;const n=e.ut=(i=t(e.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${e.uid}"]`)).forEach(r=>kc(r,i))},s=()=>{const i=t(e.proxy);e.ce?kc(e.ce,i):Rf(e.subTree,i),n(i)};Mp(()=>{Ca(s)}),Ao(()=>{qn(s,Qe,{flush:"post"});const i=new MutationObserver(s);i.observe(e.subTree.el.parentNode,{childList:!0}),Ka(()=>i.disconnect())})}function Rf(t,e){if(t.shapeFlag&128){const n=t.suspense;t=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Rf(n.activeBranch,e)})}for(;t.component;)t=t.component.subTree;if(t.shapeFlag&1&&t.el)kc(t.el,e);else if(t.type===ht)t.children.forEach(n=>Rf(n,e));else if(t.type===gr){let{el:n,anchor:s}=t;for(;n&&(kc(n,e),n!==s);)n=n.nextSibling}}function kc(t,e){if(t.nodeType===1){const n=t.style;let s="";for(const i in e)n.setProperty(`--${i}`,e[i]),s+=`--${i}: ${e[i]};`;n[Dv]=s}}const Zw=/(^|;)\s*display\s*:/;function Jw(t,e,n){const s=t.style,i=$t(n);let r=!1;if(n&&!i){if(e)if($t(e))for(const o of e.split(";")){const a=o.slice(0,o.indexOf(":")).trim();n[a]==null&&ql(s,a,"")}else for(const o in e)n[o]==null&&ql(s,o,"");for(const o in n)o==="display"&&(r=!0),ql(s,o,n[o])}else if(i){if(e!==n){const o=s[Dv];o&&(n+=";"+o),s.cssText=n,r=Zw.test(n)}}else e&&t.removeAttribute("style");wc in t&&(t[wc]=r?s.display:"",t[Lv]&&(s.display="none"))}const Im=/\s*!important$/;function ql(t,e,n){if(bt(n))n.forEach(s=>ql(t,e,s));else if(n==null&&(n=""),e.startsWith("--"))t.setProperty(e,n);else{const s=Qw(t,e);Im.test(n)?t.setProperty(fn(s),n.replace(Im,""),"important"):t[s]=n}}const Nm=["Webkit","Moz","ms"],Cd={};function Qw(t,e){const n=Cd[e];if(n)return n;let s=we(e);if(s!=="filter"&&s in t)return Cd[e]=s;s=qi(s);for(let i=0;ikd||(sC.then(()=>kd=0),kd=Date.now());function rC(t,e){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;as(oC(s,n.value),e,5,[s])};return n.value=t,n.attached=iC(),n}function oC(t,e){if(bt(e)){const n=t.stopImmediatePropagation;return t.stopImmediatePropagation=()=>{n.call(t),t._stopped=!0},e.map(s=>i=>!i._stopped&&s&&s(i))}else return e}const Mm=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>96&&t.charCodeAt(2)<123,aC=(t,e,n,s,i,r)=>{const o=i==="svg";e==="class"?Kw(t,s,o):e==="style"?Jw(t,n,s):Wi(e)?tu(e)||eC(t,e,n,s,r):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):lC(t,e,s,o))?(Rm(t,e,s),!t.tagName.includes("-")&&(e==="value"||e==="checked"||e==="selected")&&$m(t,e,s,o,r,e!=="value")):t._isVueCE&&(/[A-Z]/.test(e)||!$t(s))?Rm(t,we(e),s,r,e):(e==="true-value"?t._trueValue=s:e==="false-value"&&(t._falseValue=s),$m(t,e,s,o))};function lC(t,e,n,s){if(s)return!!(e==="innerHTML"||e==="textContent"||e in t&&Mm(e)&&Ot(n));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&t.tagName==="INPUT"||e==="type"&&t.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const i=t.tagName;if(i==="IMG"||i==="VIDEO"||i==="CANVAS"||i==="SOURCE")return!1}return Mm(e)&&$t(n)?!1:e in t}const Fm={};/*! #__NO_SIDE_EFFECTS__ */function Mv(t,e,n){const s=fi(t,e);Wa(s)&&Jt(s,e);class i extends Su{constructor(o){super(s,o,n)}}return i.def=s,i}/*! #__NO_SIDE_EFFECTS__ */const cC=(t,e)=>Mv(t,e,Xv),uC=typeof HTMLElement<"u"?HTMLElement:class{};class Su extends uC{constructor(e,n={},s=xc){super(),this._def=e,this._props=n,this._createApp=s,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._ob=null,this.shadowRoot&&s!==xc?this._root=this.shadowRoot:e.shadowRoot!==!1?(this.attachShadow({mode:"open"}),this._root=this.shadowRoot):this._root=this,this._def.__asyncLoader||this._resolveProps(this._def)}connectedCallback(){if(!this.isConnected)return;this.shadowRoot||this._parseSlots(),this._connected=!0;let e=this;for(;e=e&&(e.parentNode||e.host);)if(e instanceof Su){this._parent=e;break}this._instance||(this._resolved?(this._setParent(),this._update()):e&&e._pendingResolve?this._pendingResolve=e._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(e=this._parent){e&&(this._instance.parent=e._instance,this._instance.provides=e._instance.provides)}disconnectedCallback(){this._connected=!1,Ir(()=>{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)})}_resolveDef(){if(this._pendingResolve)return;for(let s=0;s{for(const i of s)this._setAttr(i.attributeName)}),this._ob.observe(this,{attributes:!0});const e=(s,i=!1)=>{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:o}=s;let a;if(r&&!bt(r))for(const l in r){const c=r[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=va(this._props[l])),(a||(a=Object.create(null)))[we(l)]=!0)}this._numberProps=a,i&&this._resolveProps(s),this.shadowRoot&&this._applyStyles(o),this._mount(s)},n=this._def.__asyncLoader;n?this._pendingResolve=n().then(s=>e(this._def=s,!0)):e(this._def)}_mount(e){this._app=this._createApp(e),e.configureApp&&e.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const n=this._instance&&this._instance.exposed;if(n)for(const s in n)ae(this,s)||Object.defineProperty(this,s,{get:()=>Ln(n[s])})}_resolveProps(e){const{props:n}=e,s=bt(n)?n:Object.keys(n||{});for(const i of Object.keys(this))i[0]!=="_"&&s.includes(i)&&this._setProp(i,this[i]);for(const i of s.map(we))Object.defineProperty(this,i,{get(){return this._getProp(i)},set(r){this._setProp(i,r,!0,!0)}})}_setAttr(e){if(e.startsWith("data-v-"))return;const n=this.hasAttribute(e);let s=n?this.getAttribute(e):Fm;const i=we(e);n&&this._numberProps&&this._numberProps[i]&&(s=va(s)),this._setProp(i,s,!1,!0)}_getProp(e){return this._props[e]}_setProp(e,n,s=!0,i=!1){if(n!==this._props[e]&&(n===Fm?delete this._props[e]:(this._props[e]=n,e==="key"&&this._app&&(this._app._ceVNode.key=n)),i&&this._instance&&this._update(),s)){const r=this._ob;r&&r.disconnect(),n===!0?this.setAttribute(fn(e),""):typeof n=="string"||typeof n=="number"?this.setAttribute(fn(e),n+""):n||this.removeAttribute(fn(e)),r&&r.observe(this,{attributes:!0})}}_update(){Kv(this._createVNode(),this._root)}_createVNode(){const e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));const n=C(this._def,Jt(e,this._props));return this._instance||(n.ce=s=>{this._instance=s,s.ce=this,s.isCE=!0;const i=(r,o)=>{this.dispatchEvent(new CustomEvent(r,Wa(o[0])?Jt({detail:o},o[0]):{detail:o}))};s.emit=(r,...o)=>{i(r,o),fn(r)!==r&&i(fn(r),o)},this._setParent()}),n}_applyStyles(e,n){if(!e)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const s=this._nonce;for(let i=e.length-1;i>=0;i--){const r=document.createElement("style");s&&r.setAttribute("nonce",s),r.textContent=e[i],this.shadowRoot.prepend(r)}}_parseSlots(){const e=this._slots={};let n;for(;n=this.firstChild;){const s=n.nodeType===1&&n.getAttribute("slot")||"default";(e[s]||(e[s]=[])).push(n),this.removeChild(n)}}_renderSlots(){const e=(this._teleportTarget||this).querySelectorAll("slot"),n=this._instance.type.__scopeId;for(let s=0;s(delete t.props.mode,t),hC=pC({name:"TransitionGroup",props:Jt({},Nv,{tag:String,moveClass:String}),setup(t,{slots:e}){const n=An(),s=Rp();let i,r;return gu(()=>{if(!i.length)return;const o=t.moveClass||`${t.name||"v"}-move`;if(!_C(i[0].el,n.vnode.el,o))return;i.forEach(gC),i.forEach(bC);const a=i.filter(yC);$f(),a.forEach(l=>{const c=l.el,u=c.style;Ns(c,o),u.transform=u.webkitTransform=u.transitionDuration="";const d=c[Tc]=f=>{f&&f.target!==c||(!f||/transform$/.test(f.propertyName))&&(c.removeEventListener("transitionend",d),c[Tc]=null,Ci(c,o))};c.addEventListener("transitionend",d)})}),()=>{const o=ee(t),a=$v(o);let l=o.tag||ht;if(i=[],r)for(let c=0;c{a.split(/\s+/).forEach(l=>l&&s.classList.remove(l))}),n.split(/\s+/).forEach(a=>a&&s.classList.add(a)),s.style.display="none";const r=e.nodeType===1?e:e.parentNode;r.appendChild(s);const{hasTransform:o}=Rv(s);return r.removeChild(s),o}const ji=t=>{const e=t.props["onUpdate:modelValue"]||!1;return bt(e)?n=>pr(e,n):e};function vC(t){t.target.composing=!0}function Hm(t){const e=t.target;e.composing&&(e.composing=!1,e.dispatchEvent(new Event("input")))}const rs=Symbol("_assign"),Xn={created(t,{modifiers:{lazy:e,trim:n,number:s}},i){t[rs]=ji(i);const r=s||i.props&&i.props.type==="number";Js(t,e?"change":"input",o=>{if(o.target.composing)return;let a=t.value;n&&(a=a.trim()),r&&(a=_a(a)),t[rs](a)}),n&&Js(t,"change",()=>{t.value=t.value.trim()}),e||(Js(t,"compositionstart",vC),Js(t,"compositionend",Hm),Js(t,"change",Hm))},mounted(t,{value:e}){t.value=e??""},beforeUpdate(t,{value:e,oldValue:n,modifiers:{lazy:s,trim:i,number:r}},o){if(t[rs]=ji(o),t.composing)return;const a=(r||t.type==="number")&&!/^0\d/.test(t.value)?_a(t.value):t.value,l=e??"";a!==l&&(document.activeElement===t&&t.type!=="range"&&(s&&e===n||i&&t.value.trim()===l)||(t.value=l))}},qp={deep:!0,created(t,e,n){t[rs]=ji(n),Js(t,"change",()=>{const s=t._modelValue,i=po(t),r=t.checked,o=t[rs];if(bt(s)){const a=qa(s,i),l=a!==-1;if(r&&!l)o(s.concat(i));else if(!r&&l){const c=[...s];c.splice(a,1),o(c)}}else if(zi(s)){const a=new Set(s);r?a.add(i):a.delete(i),o(a)}else o(Uv(t,r))})},mounted:Um,beforeUpdate(t,e,n){t[rs]=ji(n),Um(t,e,n)}};function Um(t,{value:e,oldValue:n},s){t._modelValue=e;let i;if(bt(e))i=qa(e,s.props.value)>-1;else if(zi(e))i=e.has(s.props.value);else{if(e===n)return;i=ai(e,Uv(t,!0))}t.checked!==i&&(t.checked=i)}const Gp={created(t,{value:e},n){t.checked=ai(e,n.props.value),t[rs]=ji(n),Js(t,"change",()=>{t[rs](po(t))})},beforeUpdate(t,{value:e,oldValue:n},s){t[rs]=ji(s),e!==n&&(t.checked=ai(e,s.props.value))}},Kp={deep:!0,created(t,{value:e,modifiers:{number:n}},s){const i=zi(e);Js(t,"change",()=>{const r=Array.prototype.filter.call(t.options,o=>o.selected).map(o=>n?_a(po(o)):po(o));t[rs](t.multiple?i?new Set(r):r:r[0]),t._assigning=!0,Ir(()=>{t._assigning=!1})}),t[rs]=ji(s)},mounted(t,{value:e}){jm(t,e)},beforeUpdate(t,e,n){t[rs]=ji(n)},updated(t,{value:e}){t._assigning||jm(t,e)}};function jm(t,e){const n=t.multiple,s=bt(e);if(!(n&&!s&&!zi(e))){for(let i=0,r=t.options.length;iString(c)===String(a)):o.selected=qa(e,a)>-1}else o.selected=e.has(a);else if(ai(po(o),e)){t.selectedIndex!==i&&(t.selectedIndex=i);return}}!n&&t.selectedIndex!==-1&&(t.selectedIndex=-1)}}function po(t){return"_value"in t?t._value:t.value}function Uv(t,e){const n=e?"_trueValue":"_falseValue";return n in t?t[n]:e}const jv={created(t,e,n){Sl(t,e,n,null,"created")},mounted(t,e,n){Sl(t,e,n,null,"mounted")},beforeUpdate(t,e,n,s){Sl(t,e,n,s,"beforeUpdate")},updated(t,e,n,s){Sl(t,e,n,s,"updated")}};function Bv(t,e){switch(t){case"SELECT":return Kp;case"TEXTAREA":return Xn;default:switch(e){case"checkbox":return qp;case"radio":return Gp;default:return Xn}}}function Sl(t,e,n,s,i){const o=Bv(t.tagName,n.props&&n.props.type)[i];o&&o(t,e,n,s)}function SC(){Xn.getSSRProps=({value:t})=>({value:t}),Gp.getSSRProps=({value:t},e)=>{if(e.props&&ai(e.props.value,t))return{checked:!0}},qp.getSSRProps=({value:t},e)=>{if(bt(t)){if(e.props&&qa(t,e.props.value)>-1)return{checked:!0}}else if(zi(t)){if(e.props&&t.has(e.props.value))return{checked:!0}}else if(t)return{checked:!0}},jv.getSSRProps=(t,e)=>{if(typeof e.type!="string")return;const n=Bv(e.type.toUpperCase(),e.props&&e.props.type);if(n.getSSRProps)return n.getSSRProps(t,e)}}const EC=["ctrl","shift","alt","meta"],wC={stop:t=>t.stopPropagation(),prevent:t=>t.preventDefault(),self:t=>t.target!==t.currentTarget,ctrl:t=>!t.ctrlKey,shift:t=>!t.shiftKey,alt:t=>!t.altKey,meta:t=>!t.metaKey,left:t=>"button"in t&&t.button!==0,middle:t=>"button"in t&&t.button!==1,right:t=>"button"in t&&t.button!==2,exact:(t,e)=>EC.some(n=>t[`${n}Key`]&&!e.includes(n))},Oe=(t,e)=>{const n=t._withMods||(t._withMods={}),s=e.join(".");return n[s]||(n[s]=(i,...r)=>{for(let o=0;o{const n=t._withKeys||(t._withKeys={}),s=e.join(".");return n[s]||(n[s]=i=>{if(!("key"in i))return;const r=fn(i.key);if(e.some(o=>o===r||CC[o]===r))return t(i)})},zv=Jt({patchProp:aC},Ww);let la,Bm=!1;function qv(){return la||(la=iv(zv))}function Gv(){return la=Bm?la:rv(zv),Bm=!0,la}const Kv=(...t)=>{qv().render(...t)},kC=(...t)=>{Gv().hydrate(...t)},xc=(...t)=>{const e=qv().createApp(...t),{mount:n}=e;return e.mount=s=>{const i=Zv(s);if(!i)return;const r=e._component;!Ot(r)&&!r.render&&!r.template&&(r.template=i.innerHTML),i.nodeType===1&&(i.textContent="");const o=n(i,!1,Yv(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),o},e},Xv=(...t)=>{const e=Gv().createApp(...t),{mount:n}=e;return e.mount=s=>{const i=Zv(s);if(i)return n(i,!0,Yv(i))},e};function Yv(t){if(t instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&t instanceof MathMLElement)return"mathml"}function Zv(t){return $t(t)?document.querySelector(t):t}let Wm=!1;const TC=()=>{Wm||(Wm=!0,SC(),Xw())},xC=Object.freeze(Object.defineProperty({__proto__:null,BaseTransition:R_,BaseTransitionPropsValidators:Lp,Comment:ze,DeprecationTypes:Uw,EffectScope:kp,ErrorCodes:sE,ErrorTypeStrings:Rw,Fragment:ht,KeepAlive:AE,ReactiveEffect:Sa,Static:gr,Suspense:mw,Teleport:us,Text:si,TrackOpTypes:Y3,Transition:Pv,TransitionGroup:mC,TriggerOpTypes:Z3,VueElement:Su,assertNumber:nE,callWithAsyncErrorHandling:as,callWithErrorHandling:xo,camelize:we,capitalize:qi,cloneVNode:Vs,compatUtils:Hw,computed:Je,createApp:xc,createBlock:vt,createCommentVNode:_t,createElementBlock:M,createElementVNode:g,createHydrationRenderer:rv,createPropsRestProxy:WE,createRenderer:iv,createSSRApp:Xv,createSlots:Xa,createStaticVNode:ww,createTextVNode:Hs,createVNode:C,customRef:__,defineAsyncComponent:TE,defineComponent:fi,defineCustomElement:Mv,defineEmits:RE,defineExpose:LE,defineModel:FE,defineOptions:DE,defineProps:$E,defineSSRCustomElement:cC,defineSlots:ME,devtools:Lw,effect:_3,effectScope:ru,getCurrentInstance:An,getCurrentScope:Tp,getCurrentWatcher:J3,getTransitionRawChildren:hu,guardReactiveProps:Sv,h:Ds,handleError:Or,hasInjectionContext:K_,hydrate:kC,hydrateOnIdle:vE,hydrateOnInteraction:CE,hydrateOnMediaQuery:wE,hydrateOnVisible:EE,initCustomFormatter:Nw,initDirectivesForSSR:TC,inject:is,isMemoSame:xv,isProxy:uu,isReactive:Ms,isReadonly:Ui,isRef:Ae,isRuntimeOnly:Aw,isShallow:zn,isVNode:ci,markRaw:du,mergeDefaults:jE,mergeModels:BE,mergeProps:eo,nextTick:Ir,normalizeClass:Bt,normalizeProps:Qr,normalizeStyle:di,onActivated:D_,onBeforeMount:V_,onBeforeUnmount:bu,onBeforeUpdate:Mp,onDeactivated:M_,onErrorCaptured:B_,onMounted:Ao,onRenderTracked:j_,onRenderTriggered:U_,onScopeDispose:n_,onServerPrefetch:H_,onUnmounted:Ka,onUpdated:gu,onWatcherCleanup:E_,openBlock:O,popScopeId:lE,provide:oa,proxyRefs:Pp,pushScopeId:aE,queuePostFlushCb:Ca,reactive:To,readonly:Np,ref:ss,registerRuntimeCompiler:xw,render:Kv,renderList:fe,renderSlot:ge,resolveComponent:x,resolveDirective:Vp,resolveDynamicComponent:yu,resolveFilter:Vw,resolveTransitionHooks:co,setBlockTracking:Tf,setDevtoolsHook:Dw,setTransitionHooks:li,shallowReactive:Ip,shallowReadonly:V3,shallowRef:fu,ssrContextKey:cv,ssrUtils:Fw,stop:v3,toDisplayString:I,toHandlerKey:fr,toHandlers:NE,toRaw:ee,toRef:G3,toRefs:v_,toValue:j3,transformVNodeArgs:Sw,triggerRef:U3,unref:Ln,useAttrs:UE,useCssModule:fC,useCssVars:Yw,useHost:Fv,useId:fE,useModel:lw,useSSRContext:uv,useShadowRoot:dC,useSlots:HE,useTemplateRef:pE,useTransitionState:Rp,vModelCheckbox:qp,vModelDynamic:jv,vModelRadio:Gp,vModelSelect:Kp,vModelText:Xn,vShow:Cc,version:Av,warn:$w,watch:qn,watchEffect:dv,watchPostEffect:ow,watchSyncEffect:fv,withAsyncContext:zE,withCtx:D,withDefaults:VE,withDirectives:xn,withKeys:Wv,withMemo:Pw,withModifiers:Oe,withScopeId:cE},Symbol.toStringTag,{value:"Module"})),rt=(t,e)=>{const n=t.__vccOpts||t;for(const[s,i]of e)n[s]=i;return n},AC={name:"ModalDialog",props:{actions:{type:Array,required:!0},show:Boolean,title:{type:String,default:""}},emits:["close"],watch:{show(t){const{classList:e}=document.querySelector("html");t?e.add("is-clipped"):e.remove("is-clipped")}}},OC={key:0,class:"modal is-active"},IC={class:"modal-content"},NC={class:"card is-shadowless"},PC={class:"card-content"},$C=["textContent"],RC={key:0,class:"card-footer"},LC=["onClick"],DC=["textContent"];function MC(t,e,n,s,i,r){const o=x("mdicon");return O(),vt(Pv,{name:"fade"},{default:D(()=>[n.show?(O(),M("div",OC,[g("div",{class:"modal-background",onClick:e[0]||(e[0]=a=>t.$emit("close"))}),g("div",IC,[g("div",NC,[g("div",PC,[n.title?(O(),M("p",{key:0,class:"title is-4",textContent:I(n.title)},null,8,$C)):_t("",!0),ge(t.$slots,"content",{},void 0,!0)]),n.actions.length?(O(),M("footer",RC,[(O(!0),M(ht,null,fe(n.actions,a=>(O(),M("a",{key:a.label,class:Bt(["card-footer-item",{"is-disabled":a.disabled}]),onClick:a.handler},[C(o,{class:"icon",name:a.icon,size:"16"},null,8,["name"]),g("span",{class:"is-size-7",textContent:I(a.label)},null,8,DC)],10,LC))),128))])):_t("",!0)])])])):_t("",!0)]),_:3})}const hi=rt(AC,[["render",MC],["__scopeId","data-v-8923bb74"]]);/*! * pinia v3.0.1 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let Jv;const Eu=t=>Jv=t,Qv=Symbol();function Lf(t){return t&&typeof t=="object"&&Object.prototype.toString.call(t)==="[object Object]"&&typeof t.toJSON!="function"}var ca;(function(t){t.direct="direct",t.patchObject="patch object",t.patchFunction="patch function"})(ca||(ca={}));function FC(){const t=ru(!0),e=t.run(()=>ss({}));let n=[],s=[];const i=du({install(r){Eu(i),i._a=r,r.provide(Qv,i),r.config.globalProperties.$pinia=i,s.forEach(o=>n.push(o)),s=[]},use(r){return this._a?n.push(r):s.push(r),this},_p:n,_a:null,_e:t,_s:new Map,state:e});return i}const t0=()=>{};function zm(t,e,n,s=t0){t.push(e);const i=()=>{const r=t.indexOf(e);r>-1&&(t.splice(r,1),s())};return!n&&Tp()&&n_(i),i}function Dr(t,...e){t.slice().forEach(n=>{n(...e)})}const VC=t=>t(),qm=Symbol(),Td=Symbol();function Df(t,e){t instanceof Map&&e instanceof Map?e.forEach((n,s)=>t.set(s,n)):t instanceof Set&&e instanceof Set&&e.forEach(t.add,t);for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n],i=t[n];Lf(i)&&Lf(s)&&t.hasOwnProperty(n)&&!Ae(s)&&!Fs(s)?t[n]=Df(i,s):t[n]=s}return t}const HC=Symbol();function UC(t){return!Lf(t)||!t.hasOwnProperty(HC)}const{assign:ki}=Object;function jC(t){return!!(Ae(t)&&t.effect)}function BC(t,e,n,s){const{state:i,actions:r,getters:o}=e,a=n.state.value[t];let l;function c(){a||(n.state.value[t]=i?i():{});const u=v_(n.state.value[t]);return ki(u,r,Object.keys(o||{}).reduce((d,f)=>(d[f]=du(Je(()=>{Eu(n);const p=n._s.get(t);return o[f].call(p,p)})),d),{}))}return l=e0(t,c,e,n,s,!0),l}function e0(t,e,n={},s,i,r){let o;const a=ki({actions:{}},n),l={deep:!0};let c,u,d=[],f=[],p;const h=s.state.value[t];!r&&!h&&(s.state.value[t]={}),ss({});let m;function _(L){let k;c=u=!1,typeof L=="function"?(L(s.state.value[t]),k={type:ca.patchFunction,storeId:t,events:p}):(Df(s.state.value[t],L),k={type:ca.patchObject,payload:L,storeId:t,events:p});const R=m=Symbol();Ir().then(()=>{m===R&&(c=!0)}),u=!0,Dr(d,k,s.state.value[t])}const y=r?function(){const{state:k}=n,R=k?k():{};this.$patch(B=>{ki(B,R)})}:t0;function S(){o.stop(),d=[],f=[],s._s.delete(t)}const b=(L,k="")=>{if(qm in L)return L[Td]=k,L;const R=function(){Eu(s);const B=Array.from(arguments),V=[],j=[];function Z(et){V.push(et)}function ot(et){j.push(et)}Dr(f,{args:B,name:R[Td],store:E,after:Z,onError:ot});let q;try{q=L.apply(this&&this.$id===t?this:E,B)}catch(et){throw Dr(j,et),et}return q instanceof Promise?q.then(et=>(Dr(V,et),et)).catch(et=>(Dr(j,et),Promise.reject(et))):(Dr(V,q),q)};return R[qm]=!0,R[Td]=k,R},v={_p:s,$id:t,$onAction:zm.bind(null,f),$patch:_,$reset:y,$subscribe(L,k={}){const R=zm(d,L,k.detached,()=>B()),B=o.run(()=>qn(()=>s.state.value[t],V=>{(k.flush==="sync"?u:c)&&L({storeId:t,type:ca.direct,events:p},V)},ki({},l,k)));return R},$dispose:S},E=To(v);s._s.set(t,E);const P=(s._a&&s._a.runWithContext||VC)(()=>s._e.run(()=>(o=ru()).run(()=>e({action:b}))));for(const L in P){const k=P[L];if(Ae(k)&&!jC(k)||Fs(k))r||(h&&UC(k)&&(Ae(k)?k.value=h[L]:Df(k,h[L])),s.state.value[t][L]=k);else if(typeof k=="function"){const R=b(k,L);P[L]=R,a.actions[L]=k}}return ki(E,P),ki(ee(E),P),Object.defineProperty(E,"$state",{get:()=>s.state.value[t],set:L=>{_(k=>{ki(k,L)})}}),s._p.forEach(L=>{ki(E,o.run(()=>L({store:E,app:s._a,pinia:s,options:a})))}),h&&r&&n.hydrate&&n.hydrate(E.$state,h),c=!0,u=!0,E}/*! #__NO_SIDE_EFFECTS__ */function ds(t,e,n){let s;const i=typeof e=="function";s=i?n:e;function r(o,a){const l=K_();return o=o||(l?is(Qv,null):null),o&&Eu(o),o=Jv,o._s.has(t)||(i?e0(t,e,s,o):BC(t,s,o)),o._s.get(t)}return r.$id=t,r}const Xp=ds("RemotesStore",{state:()=>({pairing:{}})});function n0(t,e){return function(){return t.apply(e,arguments)}}const{toString:WC}=Object.prototype,{getPrototypeOf:Yp}=Object,wu=(t=>e=>{const n=WC.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Ts=t=>(t=t.toLowerCase(),e=>wu(e)===t),Cu=t=>e=>typeof e===t,{isArray:Oo}=Array,Ia=Cu("undefined");function zC(t){return t!==null&&!Ia(t)&&t.constructor!==null&&!Ia(t.constructor)&&Gn(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const s0=Ts("ArrayBuffer");function qC(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&s0(t.buffer),e}const GC=Cu("string"),Gn=Cu("function"),i0=Cu("number"),ku=t=>t!==null&&typeof t=="object",KC=t=>t===!0||t===!1,Gl=t=>{if(wu(t)!=="object")return!1;const e=Yp(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},XC=Ts("Date"),YC=Ts("File"),ZC=Ts("Blob"),JC=Ts("FileList"),QC=t=>ku(t)&&Gn(t.pipe),tk=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||Gn(t.append)&&((e=wu(t))==="formdata"||e==="object"&&Gn(t.toString)&&t.toString()==="[object FormData]"))},ek=Ts("URLSearchParams"),[nk,sk,ik,rk]=["ReadableStream","Request","Response","Headers"].map(Ts),ok=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ja(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let s,i;if(typeof t!="object"&&(t=[t]),Oo(t))for(s=0,i=t.length;s0;)if(i=n[s],e===i.toLowerCase())return i;return null}const ar=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,o0=t=>!Ia(t)&&t!==ar;function Mf(){const{caseless:t}=o0(this)&&this||{},e={},n=(s,i)=>{const r=t&&r0(e,i)||i;Gl(e[r])&&Gl(s)?e[r]=Mf(e[r],s):Gl(s)?e[r]=Mf({},s):Oo(s)?e[r]=s.slice():e[r]=s};for(let s=0,i=arguments.length;s(Ja(e,(i,r)=>{n&&Gn(i)?t[r]=n0(i,n):t[r]=i},{allOwnKeys:s}),t),lk=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),ck=(t,e,n,s)=>{t.prototype=Object.create(e.prototype,s),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},uk=(t,e,n,s)=>{let i,r,o;const a={};if(e=e||{},t==null)return e;do{for(i=Object.getOwnPropertyNames(t),r=i.length;r-- >0;)o=i[r],(!s||s(o,t,e))&&!a[o]&&(e[o]=t[o],a[o]=!0);t=n!==!1&&Yp(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},dk=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;const s=t.indexOf(e,n);return s!==-1&&s===n},fk=t=>{if(!t)return null;if(Oo(t))return t;let e=t.length;if(!i0(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},pk=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&Yp(Uint8Array)),hk=(t,e)=>{const s=(t&&t[Symbol.iterator]).call(t);let i;for(;(i=s.next())&&!i.done;){const r=i.value;e.call(t,r[0],r[1])}},mk=(t,e)=>{let n;const s=[];for(;(n=t.exec(e))!==null;)s.push(n);return s},gk=Ts("HTMLFormElement"),bk=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,i){return s.toUpperCase()+i}),Gm=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),yk=Ts("RegExp"),a0=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),s={};Ja(n,(i,r)=>{let o;(o=e(i,r,t))!==!1&&(s[r]=o||i)}),Object.defineProperties(t,s)},_k=t=>{a0(t,(e,n)=>{if(Gn(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=t[n];if(Gn(s)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},vk=(t,e)=>{const n={},s=i=>{i.forEach(r=>{n[r]=!0})};return Oo(t)?s(t):s(String(t).split(e)),n},Sk=()=>{},Ek=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e,xd="abcdefghijklmnopqrstuvwxyz",Km="0123456789",l0={DIGIT:Km,ALPHA:xd,ALPHA_DIGIT:xd+xd.toUpperCase()+Km},wk=(t=16,e=l0.ALPHA_DIGIT)=>{let n="";const{length:s}=e;for(;t--;)n+=e[Math.random()*s|0];return n};function Ck(t){return!!(t&&Gn(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}const kk=t=>{const e=new Array(10),n=(s,i)=>{if(ku(s)){if(e.indexOf(s)>=0)return;if(!("toJSON"in s)){e[i]=s;const r=Oo(s)?[]:{};return Ja(s,(o,a)=>{const l=n(o,i+1);!Ia(l)&&(r[a]=l)}),e[i]=void 0,r}}return s};return n(t,0)},Tk=Ts("AsyncFunction"),xk=t=>t&&(ku(t)||Gn(t))&&Gn(t.then)&&Gn(t.catch),c0=((t,e)=>t?setImmediate:e?((n,s)=>(ar.addEventListener("message",({source:i,data:r})=>{i===ar&&r===n&&s.length&&s.shift()()},!1),i=>{s.push(i),ar.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Gn(ar.postMessage)),Ak=typeof queueMicrotask<"u"?queueMicrotask.bind(ar):typeof process<"u"&&process.nextTick||c0,J={isArray:Oo,isArrayBuffer:s0,isBuffer:zC,isFormData:tk,isArrayBufferView:qC,isString:GC,isNumber:i0,isBoolean:KC,isObject:ku,isPlainObject:Gl,isReadableStream:nk,isRequest:sk,isResponse:ik,isHeaders:rk,isUndefined:Ia,isDate:XC,isFile:YC,isBlob:ZC,isRegExp:yk,isFunction:Gn,isStream:QC,isURLSearchParams:ek,isTypedArray:pk,isFileList:JC,forEach:Ja,merge:Mf,extend:ak,trim:ok,stripBOM:lk,inherits:ck,toFlatObject:uk,kindOf:wu,kindOfTest:Ts,endsWith:dk,toArray:fk,forEachEntry:hk,matchAll:mk,isHTMLForm:gk,hasOwnProperty:Gm,hasOwnProp:Gm,reduceDescriptors:a0,freezeMethods:_k,toObjectSet:vk,toCamelCase:bk,noop:Sk,toFiniteNumber:Ek,findKey:r0,global:ar,isContextDefined:o0,ALPHABET:l0,generateString:wk,isSpecCompliantForm:Ck,toJSONObject:kk,isAsyncFn:Tk,isThenable:xk,setImmediate:c0,asap:Ak};function jt(t,e,n,s,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),s&&(this.request=s),i&&(this.response=i,this.status=i.status?i.status:null)}J.inherits(jt,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:J.toJSONObject(this.config),code:this.code,status:this.status}}});const u0=jt.prototype,d0={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{d0[t]={value:t}});Object.defineProperties(jt,d0);Object.defineProperty(u0,"isAxiosError",{value:!0});jt.from=(t,e,n,s,i,r)=>{const o=Object.create(u0);return J.toFlatObject(t,o,function(l){return l!==Error.prototype},a=>a!=="isAxiosError"),jt.call(o,t.message,e,n,s,i),o.cause=t,o.name=t.name,r&&Object.assign(o,r),o};const Ok=null;function Ff(t){return J.isPlainObject(t)||J.isArray(t)}function f0(t){return J.endsWith(t,"[]")?t.slice(0,-2):t}function Xm(t,e,n){return t?t.concat(e).map(function(i,r){return i=f0(i),!n&&r?"["+i+"]":i}).join(n?".":""):e}function Ik(t){return J.isArray(t)&&!t.some(Ff)}const Nk=J.toFlatObject(J,{},null,function(e){return/^is[A-Z]/.test(e)});function Tu(t,e,n){if(!J.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,n=J.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,_){return!J.isUndefined(_[m])});const s=n.metaTokens,i=n.visitor||u,r=n.dots,o=n.indexes,l=(n.Blob||typeof Blob<"u"&&Blob)&&J.isSpecCompliantForm(e);if(!J.isFunction(i))throw new TypeError("visitor must be a function");function c(h){if(h===null)return"";if(J.isDate(h))return h.toISOString();if(!l&&J.isBlob(h))throw new jt("Blob is not supported. Use a Buffer instead.");return J.isArrayBuffer(h)||J.isTypedArray(h)?l&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function u(h,m,_){let y=h;if(h&&!_&&typeof h=="object"){if(J.endsWith(m,"{}"))m=s?m:m.slice(0,-2),h=JSON.stringify(h);else if(J.isArray(h)&&Ik(h)||(J.isFileList(h)||J.endsWith(m,"[]"))&&(y=J.toArray(h)))return m=f0(m),y.forEach(function(b,v){!(J.isUndefined(b)||b===null)&&e.append(o===!0?Xm([m],v,r):o===null?m:m+"[]",c(b))}),!1}return Ff(h)?!0:(e.append(Xm(_,m,r),c(h)),!1)}const d=[],f=Object.assign(Nk,{defaultVisitor:u,convertValue:c,isVisitable:Ff});function p(h,m){if(!J.isUndefined(h)){if(d.indexOf(h)!==-1)throw Error("Circular reference detected in "+m.join("."));d.push(h),J.forEach(h,function(y,S){(!(J.isUndefined(y)||y===null)&&i.call(e,y,J.isString(S)?S.trim():S,m,f))===!0&&p(y,m?m.concat(S):[S])}),d.pop()}}if(!J.isObject(t))throw new TypeError("data must be an object");return p(t),e}function Ym(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(s){return e[s]})}function Zp(t,e){this._pairs=[],t&&Tu(t,this,e)}const p0=Zp.prototype;p0.append=function(e,n){this._pairs.push([e,n])};p0.toString=function(e){const n=e?function(s){return e.call(this,s,Ym)}:Ym;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};function Pk(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function h0(t,e,n){if(!e)return t;const s=n&&n.encode||Pk;J.isFunction(n)&&(n={serialize:n});const i=n&&n.serialize;let r;if(i?r=i(e,n):r=J.isURLSearchParams(e)?e.toString():new Zp(e,n).toString(s),r){const o=t.indexOf("#");o!==-1&&(t=t.slice(0,o)),t+=(t.indexOf("?")===-1?"?":"&")+r}return t}class Zm{constructor(){this.handlers=[]}use(e,n,s){return this.handlers.push({fulfilled:e,rejected:n,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){J.forEach(this.handlers,function(s){s!==null&&e(s)})}}const m0={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},$k=typeof URLSearchParams<"u"?URLSearchParams:Zp,Rk=typeof FormData<"u"?FormData:null,Lk=typeof Blob<"u"?Blob:null,Dk={isBrowser:!0,classes:{URLSearchParams:$k,FormData:Rk,Blob:Lk},protocols:["http","https","file","blob","url","data"]},Jp=typeof window<"u"&&typeof document<"u",Vf=typeof navigator=="object"&&navigator||void 0,Mk=Jp&&(!Vf||["ReactNative","NativeScript","NS"].indexOf(Vf.product)<0),Fk=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Vk=Jp&&window.location.href||"http://localhost",Hk=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Jp,hasStandardBrowserEnv:Mk,hasStandardBrowserWebWorkerEnv:Fk,navigator:Vf,origin:Vk},Symbol.toStringTag,{value:"Module"})),pn={...Hk,...Dk};function Uk(t,e){return Tu(t,new pn.classes.URLSearchParams,Object.assign({visitor:function(n,s,i,r){return pn.isNode&&J.isBuffer(n)?(this.append(s,n.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},e))}function jk(t){return J.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function Bk(t){const e={},n=Object.keys(t);let s;const i=n.length;let r;for(s=0;s=n.length;return o=!o&&J.isArray(i)?i.length:o,l?(J.hasOwnProp(i,o)?i[o]=[i[o],s]:i[o]=s,!a):((!i[o]||!J.isObject(i[o]))&&(i[o]=[]),e(n,s,i[o],r)&&J.isArray(i[o])&&(i[o]=Bk(i[o])),!a)}if(J.isFormData(t)&&J.isFunction(t.entries)){const n={};return J.forEachEntry(t,(s,i)=>{e(jk(s),i,n,0)}),n}return null}function Wk(t,e,n){if(J.isString(t))try{return(e||JSON.parse)(t),J.trim(t)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(t)}const Qa={transitional:m0,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const s=n.getContentType()||"",i=s.indexOf("application/json")>-1,r=J.isObject(e);if(r&&J.isHTMLForm(e)&&(e=new FormData(e)),J.isFormData(e))return i?JSON.stringify(g0(e)):e;if(J.isArrayBuffer(e)||J.isBuffer(e)||J.isStream(e)||J.isFile(e)||J.isBlob(e)||J.isReadableStream(e))return e;if(J.isArrayBufferView(e))return e.buffer;if(J.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(r){if(s.indexOf("application/x-www-form-urlencoded")>-1)return Uk(e,this.formSerializer).toString();if((a=J.isFileList(e))||s.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return Tu(a?{"files[]":e}:e,l&&new l,this.formSerializer)}}return r||i?(n.setContentType("application/json",!1),Wk(e)):e}],transformResponse:[function(e){const n=this.transitional||Qa.transitional,s=n&&n.forcedJSONParsing,i=this.responseType==="json";if(J.isResponse(e)||J.isReadableStream(e))return e;if(e&&J.isString(e)&&(s&&!this.responseType||i)){const o=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(e)}catch(a){if(o)throw a.name==="SyntaxError"?jt.from(a,jt.ERR_BAD_RESPONSE,this,null,this.response):a}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:pn.classes.FormData,Blob:pn.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};J.forEach(["delete","get","head","post","put","patch"],t=>{Qa.headers[t]={}});const zk=J.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),qk=t=>{const e={};let n,s,i;return t&&t.split(` + */let Jv;const Eu=t=>Jv=t,Qv=Symbol();function Lf(t){return t&&typeof t=="object"&&Object.prototype.toString.call(t)==="[object Object]"&&typeof t.toJSON!="function"}var ca;(function(t){t.direct="direct",t.patchObject="patch object",t.patchFunction="patch function"})(ca||(ca={}));function FC(){const t=ru(!0),e=t.run(()=>ss({}));let n=[],s=[];const i=du({install(r){Eu(i),i._a=r,r.provide(Qv,i),r.config.globalProperties.$pinia=i,s.forEach(o=>n.push(o)),s=[]},use(r){return this._a?n.push(r):s.push(r),this},_p:n,_a:null,_e:t,_s:new Map,state:e});return i}const t0=()=>{};function zm(t,e,n,s=t0){t.push(e);const i=()=>{const r=t.indexOf(e);r>-1&&(t.splice(r,1),s())};return!n&&Tp()&&n_(i),i}function Dr(t,...e){t.slice().forEach(n=>{n(...e)})}const VC=t=>t(),qm=Symbol(),Td=Symbol();function Df(t,e){t instanceof Map&&e instanceof Map?e.forEach((n,s)=>t.set(s,n)):t instanceof Set&&e instanceof Set&&e.forEach(t.add,t);for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n],i=t[n];Lf(i)&&Lf(s)&&t.hasOwnProperty(n)&&!Ae(s)&&!Ms(s)?t[n]=Df(i,s):t[n]=s}return t}const HC=Symbol();function UC(t){return!Lf(t)||!t.hasOwnProperty(HC)}const{assign:ki}=Object;function jC(t){return!!(Ae(t)&&t.effect)}function BC(t,e,n,s){const{state:i,actions:r,getters:o}=e,a=n.state.value[t];let l;function c(){a||(n.state.value[t]=i?i():{});const u=v_(n.state.value[t]);return ki(u,r,Object.keys(o||{}).reduce((d,f)=>(d[f]=du(Je(()=>{Eu(n);const p=n._s.get(t);return o[f].call(p,p)})),d),{}))}return l=e0(t,c,e,n,s,!0),l}function e0(t,e,n={},s,i,r){let o;const a=ki({actions:{}},n),l={deep:!0};let c,u,d=[],f=[],p;const h=s.state.value[t];!r&&!h&&(s.state.value[t]={}),ss({});let m;function _(L){let k;c=u=!1,typeof L=="function"?(L(s.state.value[t]),k={type:ca.patchFunction,storeId:t,events:p}):(Df(s.state.value[t],L),k={type:ca.patchObject,payload:L,storeId:t,events:p});const R=m=Symbol();Ir().then(()=>{m===R&&(c=!0)}),u=!0,Dr(d,k,s.state.value[t])}const y=r?function(){const{state:k}=n,R=k?k():{};this.$patch(B=>{ki(B,R)})}:t0;function S(){o.stop(),d=[],f=[],s._s.delete(t)}const b=(L,k="")=>{if(qm in L)return L[Td]=k,L;const R=function(){Eu(s);const B=Array.from(arguments),V=[],j=[];function Z(et){V.push(et)}function ot(et){j.push(et)}Dr(f,{args:B,name:R[Td],store:E,after:Z,onError:ot});let q;try{q=L.apply(this&&this.$id===t?this:E,B)}catch(et){throw Dr(j,et),et}return q instanceof Promise?q.then(et=>(Dr(V,et),et)).catch(et=>(Dr(j,et),Promise.reject(et))):(Dr(V,q),q)};return R[qm]=!0,R[Td]=k,R},v={_p:s,$id:t,$onAction:zm.bind(null,f),$patch:_,$reset:y,$subscribe(L,k={}){const R=zm(d,L,k.detached,()=>B()),B=o.run(()=>qn(()=>s.state.value[t],V=>{(k.flush==="sync"?u:c)&&L({storeId:t,type:ca.direct,events:p},V)},ki({},l,k)));return R},$dispose:S},E=To(v);s._s.set(t,E);const P=(s._a&&s._a.runWithContext||VC)(()=>s._e.run(()=>(o=ru()).run(()=>e({action:b}))));for(const L in P){const k=P[L];if(Ae(k)&&!jC(k)||Ms(k))r||(h&&UC(k)&&(Ae(k)?k.value=h[L]:Df(k,h[L])),s.state.value[t][L]=k);else if(typeof k=="function"){const R=b(k,L);P[L]=R,a.actions[L]=k}}return ki(E,P),ki(ee(E),P),Object.defineProperty(E,"$state",{get:()=>s.state.value[t],set:L=>{_(k=>{ki(k,L)})}}),s._p.forEach(L=>{ki(E,o.run(()=>L({store:E,app:s._a,pinia:s,options:a})))}),h&&r&&n.hydrate&&n.hydrate(E.$state,h),c=!0,u=!0,E}/*! #__NO_SIDE_EFFECTS__ */function ds(t,e,n){let s;const i=typeof e=="function";s=i?n:e;function r(o,a){const l=K_();return o=o||(l?is(Qv,null):null),o&&Eu(o),o=Jv,o._s.has(t)||(i?e0(t,e,s,o):BC(t,s,o)),o._s.get(t)}return r.$id=t,r}const Xp=ds("RemotesStore",{state:()=>({pairing:{}})});function n0(t,e){return function(){return t.apply(e,arguments)}}const{toString:WC}=Object.prototype,{getPrototypeOf:Yp}=Object,wu=(t=>e=>{const n=WC.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Ts=t=>(t=t.toLowerCase(),e=>wu(e)===t),Cu=t=>e=>typeof e===t,{isArray:Oo}=Array,Ia=Cu("undefined");function zC(t){return t!==null&&!Ia(t)&&t.constructor!==null&&!Ia(t.constructor)&&Gn(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const s0=Ts("ArrayBuffer");function qC(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&s0(t.buffer),e}const GC=Cu("string"),Gn=Cu("function"),i0=Cu("number"),ku=t=>t!==null&&typeof t=="object",KC=t=>t===!0||t===!1,Gl=t=>{if(wu(t)!=="object")return!1;const e=Yp(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},XC=Ts("Date"),YC=Ts("File"),ZC=Ts("Blob"),JC=Ts("FileList"),QC=t=>ku(t)&&Gn(t.pipe),tk=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||Gn(t.append)&&((e=wu(t))==="formdata"||e==="object"&&Gn(t.toString)&&t.toString()==="[object FormData]"))},ek=Ts("URLSearchParams"),[nk,sk,ik,rk]=["ReadableStream","Request","Response","Headers"].map(Ts),ok=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ja(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let s,i;if(typeof t!="object"&&(t=[t]),Oo(t))for(s=0,i=t.length;s0;)if(i=n[s],e===i.toLowerCase())return i;return null}const ar=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,o0=t=>!Ia(t)&&t!==ar;function Mf(){const{caseless:t}=o0(this)&&this||{},e={},n=(s,i)=>{const r=t&&r0(e,i)||i;Gl(e[r])&&Gl(s)?e[r]=Mf(e[r],s):Gl(s)?e[r]=Mf({},s):Oo(s)?e[r]=s.slice():e[r]=s};for(let s=0,i=arguments.length;s(Ja(e,(i,r)=>{n&&Gn(i)?t[r]=n0(i,n):t[r]=i},{allOwnKeys:s}),t),lk=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),ck=(t,e,n,s)=>{t.prototype=Object.create(e.prototype,s),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},uk=(t,e,n,s)=>{let i,r,o;const a={};if(e=e||{},t==null)return e;do{for(i=Object.getOwnPropertyNames(t),r=i.length;r-- >0;)o=i[r],(!s||s(o,t,e))&&!a[o]&&(e[o]=t[o],a[o]=!0);t=n!==!1&&Yp(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},dk=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;const s=t.indexOf(e,n);return s!==-1&&s===n},fk=t=>{if(!t)return null;if(Oo(t))return t;let e=t.length;if(!i0(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},pk=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&Yp(Uint8Array)),hk=(t,e)=>{const s=(t&&t[Symbol.iterator]).call(t);let i;for(;(i=s.next())&&!i.done;){const r=i.value;e.call(t,r[0],r[1])}},mk=(t,e)=>{let n;const s=[];for(;(n=t.exec(e))!==null;)s.push(n);return s},gk=Ts("HTMLFormElement"),bk=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,i){return s.toUpperCase()+i}),Gm=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),yk=Ts("RegExp"),a0=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),s={};Ja(n,(i,r)=>{let o;(o=e(i,r,t))!==!1&&(s[r]=o||i)}),Object.defineProperties(t,s)},_k=t=>{a0(t,(e,n)=>{if(Gn(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=t[n];if(Gn(s)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},vk=(t,e)=>{const n={},s=i=>{i.forEach(r=>{n[r]=!0})};return Oo(t)?s(t):s(String(t).split(e)),n},Sk=()=>{},Ek=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e,xd="abcdefghijklmnopqrstuvwxyz",Km="0123456789",l0={DIGIT:Km,ALPHA:xd,ALPHA_DIGIT:xd+xd.toUpperCase()+Km},wk=(t=16,e=l0.ALPHA_DIGIT)=>{let n="";const{length:s}=e;for(;t--;)n+=e[Math.random()*s|0];return n};function Ck(t){return!!(t&&Gn(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}const kk=t=>{const e=new Array(10),n=(s,i)=>{if(ku(s)){if(e.indexOf(s)>=0)return;if(!("toJSON"in s)){e[i]=s;const r=Oo(s)?[]:{};return Ja(s,(o,a)=>{const l=n(o,i+1);!Ia(l)&&(r[a]=l)}),e[i]=void 0,r}}return s};return n(t,0)},Tk=Ts("AsyncFunction"),xk=t=>t&&(ku(t)||Gn(t))&&Gn(t.then)&&Gn(t.catch),c0=((t,e)=>t?setImmediate:e?((n,s)=>(ar.addEventListener("message",({source:i,data:r})=>{i===ar&&r===n&&s.length&&s.shift()()},!1),i=>{s.push(i),ar.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Gn(ar.postMessage)),Ak=typeof queueMicrotask<"u"?queueMicrotask.bind(ar):typeof process<"u"&&process.nextTick||c0,J={isArray:Oo,isArrayBuffer:s0,isBuffer:zC,isFormData:tk,isArrayBufferView:qC,isString:GC,isNumber:i0,isBoolean:KC,isObject:ku,isPlainObject:Gl,isReadableStream:nk,isRequest:sk,isResponse:ik,isHeaders:rk,isUndefined:Ia,isDate:XC,isFile:YC,isBlob:ZC,isRegExp:yk,isFunction:Gn,isStream:QC,isURLSearchParams:ek,isTypedArray:pk,isFileList:JC,forEach:Ja,merge:Mf,extend:ak,trim:ok,stripBOM:lk,inherits:ck,toFlatObject:uk,kindOf:wu,kindOfTest:Ts,endsWith:dk,toArray:fk,forEachEntry:hk,matchAll:mk,isHTMLForm:gk,hasOwnProperty:Gm,hasOwnProp:Gm,reduceDescriptors:a0,freezeMethods:_k,toObjectSet:vk,toCamelCase:bk,noop:Sk,toFiniteNumber:Ek,findKey:r0,global:ar,isContextDefined:o0,ALPHABET:l0,generateString:wk,isSpecCompliantForm:Ck,toJSONObject:kk,isAsyncFn:Tk,isThenable:xk,setImmediate:c0,asap:Ak};function jt(t,e,n,s,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),s&&(this.request=s),i&&(this.response=i,this.status=i.status?i.status:null)}J.inherits(jt,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:J.toJSONObject(this.config),code:this.code,status:this.status}}});const u0=jt.prototype,d0={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{d0[t]={value:t}});Object.defineProperties(jt,d0);Object.defineProperty(u0,"isAxiosError",{value:!0});jt.from=(t,e,n,s,i,r)=>{const o=Object.create(u0);return J.toFlatObject(t,o,function(l){return l!==Error.prototype},a=>a!=="isAxiosError"),jt.call(o,t.message,e,n,s,i),o.cause=t,o.name=t.name,r&&Object.assign(o,r),o};const Ok=null;function Ff(t){return J.isPlainObject(t)||J.isArray(t)}function f0(t){return J.endsWith(t,"[]")?t.slice(0,-2):t}function Xm(t,e,n){return t?t.concat(e).map(function(i,r){return i=f0(i),!n&&r?"["+i+"]":i}).join(n?".":""):e}function Ik(t){return J.isArray(t)&&!t.some(Ff)}const Nk=J.toFlatObject(J,{},null,function(e){return/^is[A-Z]/.test(e)});function Tu(t,e,n){if(!J.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,n=J.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,_){return!J.isUndefined(_[m])});const s=n.metaTokens,i=n.visitor||u,r=n.dots,o=n.indexes,l=(n.Blob||typeof Blob<"u"&&Blob)&&J.isSpecCompliantForm(e);if(!J.isFunction(i))throw new TypeError("visitor must be a function");function c(h){if(h===null)return"";if(J.isDate(h))return h.toISOString();if(!l&&J.isBlob(h))throw new jt("Blob is not supported. Use a Buffer instead.");return J.isArrayBuffer(h)||J.isTypedArray(h)?l&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function u(h,m,_){let y=h;if(h&&!_&&typeof h=="object"){if(J.endsWith(m,"{}"))m=s?m:m.slice(0,-2),h=JSON.stringify(h);else if(J.isArray(h)&&Ik(h)||(J.isFileList(h)||J.endsWith(m,"[]"))&&(y=J.toArray(h)))return m=f0(m),y.forEach(function(b,v){!(J.isUndefined(b)||b===null)&&e.append(o===!0?Xm([m],v,r):o===null?m:m+"[]",c(b))}),!1}return Ff(h)?!0:(e.append(Xm(_,m,r),c(h)),!1)}const d=[],f=Object.assign(Nk,{defaultVisitor:u,convertValue:c,isVisitable:Ff});function p(h,m){if(!J.isUndefined(h)){if(d.indexOf(h)!==-1)throw Error("Circular reference detected in "+m.join("."));d.push(h),J.forEach(h,function(y,S){(!(J.isUndefined(y)||y===null)&&i.call(e,y,J.isString(S)?S.trim():S,m,f))===!0&&p(y,m?m.concat(S):[S])}),d.pop()}}if(!J.isObject(t))throw new TypeError("data must be an object");return p(t),e}function Ym(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(s){return e[s]})}function Zp(t,e){this._pairs=[],t&&Tu(t,this,e)}const p0=Zp.prototype;p0.append=function(e,n){this._pairs.push([e,n])};p0.toString=function(e){const n=e?function(s){return e.call(this,s,Ym)}:Ym;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};function Pk(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function h0(t,e,n){if(!e)return t;const s=n&&n.encode||Pk;J.isFunction(n)&&(n={serialize:n});const i=n&&n.serialize;let r;if(i?r=i(e,n):r=J.isURLSearchParams(e)?e.toString():new Zp(e,n).toString(s),r){const o=t.indexOf("#");o!==-1&&(t=t.slice(0,o)),t+=(t.indexOf("?")===-1?"?":"&")+r}return t}class Zm{constructor(){this.handlers=[]}use(e,n,s){return this.handlers.push({fulfilled:e,rejected:n,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){J.forEach(this.handlers,function(s){s!==null&&e(s)})}}const m0={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},$k=typeof URLSearchParams<"u"?URLSearchParams:Zp,Rk=typeof FormData<"u"?FormData:null,Lk=typeof Blob<"u"?Blob:null,Dk={isBrowser:!0,classes:{URLSearchParams:$k,FormData:Rk,Blob:Lk},protocols:["http","https","file","blob","url","data"]},Jp=typeof window<"u"&&typeof document<"u",Vf=typeof navigator=="object"&&navigator||void 0,Mk=Jp&&(!Vf||["ReactNative","NativeScript","NS"].indexOf(Vf.product)<0),Fk=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Vk=Jp&&window.location.href||"http://localhost",Hk=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Jp,hasStandardBrowserEnv:Mk,hasStandardBrowserWebWorkerEnv:Fk,navigator:Vf,origin:Vk},Symbol.toStringTag,{value:"Module"})),pn={...Hk,...Dk};function Uk(t,e){return Tu(t,new pn.classes.URLSearchParams,Object.assign({visitor:function(n,s,i,r){return pn.isNode&&J.isBuffer(n)?(this.append(s,n.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},e))}function jk(t){return J.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function Bk(t){const e={},n=Object.keys(t);let s;const i=n.length;let r;for(s=0;s=n.length;return o=!o&&J.isArray(i)?i.length:o,l?(J.hasOwnProp(i,o)?i[o]=[i[o],s]:i[o]=s,!a):((!i[o]||!J.isObject(i[o]))&&(i[o]=[]),e(n,s,i[o],r)&&J.isArray(i[o])&&(i[o]=Bk(i[o])),!a)}if(J.isFormData(t)&&J.isFunction(t.entries)){const n={};return J.forEachEntry(t,(s,i)=>{e(jk(s),i,n,0)}),n}return null}function Wk(t,e,n){if(J.isString(t))try{return(e||JSON.parse)(t),J.trim(t)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(t)}const Qa={transitional:m0,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const s=n.getContentType()||"",i=s.indexOf("application/json")>-1,r=J.isObject(e);if(r&&J.isHTMLForm(e)&&(e=new FormData(e)),J.isFormData(e))return i?JSON.stringify(g0(e)):e;if(J.isArrayBuffer(e)||J.isBuffer(e)||J.isStream(e)||J.isFile(e)||J.isBlob(e)||J.isReadableStream(e))return e;if(J.isArrayBufferView(e))return e.buffer;if(J.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(r){if(s.indexOf("application/x-www-form-urlencoded")>-1)return Uk(e,this.formSerializer).toString();if((a=J.isFileList(e))||s.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return Tu(a?{"files[]":e}:e,l&&new l,this.formSerializer)}}return r||i?(n.setContentType("application/json",!1),Wk(e)):e}],transformResponse:[function(e){const n=this.transitional||Qa.transitional,s=n&&n.forcedJSONParsing,i=this.responseType==="json";if(J.isResponse(e)||J.isReadableStream(e))return e;if(e&&J.isString(e)&&(s&&!this.responseType||i)){const o=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(e)}catch(a){if(o)throw a.name==="SyntaxError"?jt.from(a,jt.ERR_BAD_RESPONSE,this,null,this.response):a}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:pn.classes.FormData,Blob:pn.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};J.forEach(["delete","get","head","post","put","patch"],t=>{Qa.headers[t]={}});const zk=J.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),qk=t=>{const e={};let n,s,i;return t&&t.split(` `).forEach(function(o){i=o.indexOf(":"),n=o.substring(0,i).trim().toLowerCase(),s=o.substring(i+1).trim(),!(!n||e[n]&&zk[n])&&(n==="set-cookie"?e[n]?e[n].push(s):e[n]=[s]:e[n]=e[n]?e[n]+", "+s:s)}),e},Jm=Symbol("internals");function Ho(t){return t&&String(t).trim().toLowerCase()}function Kl(t){return t===!1||t==null?t:J.isArray(t)?t.map(Kl):String(t)}function Gk(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(t);)e[s[1]]=s[2];return e}const Kk=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Ad(t,e,n,s,i){if(J.isFunction(s))return s.call(this,e,n);if(i&&(e=n),!!J.isString(e)){if(J.isString(s))return e.indexOf(s)!==-1;if(J.isRegExp(s))return s.test(e)}}function Xk(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,s)=>n.toUpperCase()+s)}function Yk(t,e){const n=J.toCamelCase(" "+e);["get","set","has"].forEach(s=>{Object.defineProperty(t,s+n,{value:function(i,r,o){return this[s].call(this,e,i,r,o)},configurable:!0})})}let Mn=class{constructor(e){e&&this.set(e)}set(e,n,s){const i=this;function r(a,l,c){const u=Ho(l);if(!u)throw new Error("header name must be a non-empty string");const d=J.findKey(i,u);(!d||i[d]===void 0||c===!0||c===void 0&&i[d]!==!1)&&(i[d||l]=Kl(a))}const o=(a,l)=>J.forEach(a,(c,u)=>r(c,u,l));if(J.isPlainObject(e)||e instanceof this.constructor)o(e,n);else if(J.isString(e)&&(e=e.trim())&&!Kk(e))o(qk(e),n);else if(J.isHeaders(e))for(const[a,l]of e.entries())r(l,a,s);else e!=null&&r(n,e,s);return this}get(e,n){if(e=Ho(e),e){const s=J.findKey(this,e);if(s){const i=this[s];if(!n)return i;if(n===!0)return Gk(i);if(J.isFunction(n))return n.call(this,i,s);if(J.isRegExp(n))return n.exec(i);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=Ho(e),e){const s=J.findKey(this,e);return!!(s&&this[s]!==void 0&&(!n||Ad(this,this[s],s,n)))}return!1}delete(e,n){const s=this;let i=!1;function r(o){if(o=Ho(o),o){const a=J.findKey(s,o);a&&(!n||Ad(s,s[a],a,n))&&(delete s[a],i=!0)}}return J.isArray(e)?e.forEach(r):r(e),i}clear(e){const n=Object.keys(this);let s=n.length,i=!1;for(;s--;){const r=n[s];(!e||Ad(this,this[r],r,e,!0))&&(delete this[r],i=!0)}return i}normalize(e){const n=this,s={};return J.forEach(this,(i,r)=>{const o=J.findKey(s,r);if(o){n[o]=Kl(i),delete n[r];return}const a=e?Xk(r):String(r).trim();a!==r&&delete n[r],n[a]=Kl(i),s[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const n=Object.create(null);return J.forEach(this,(s,i)=>{s!=null&&s!==!1&&(n[i]=e&&J.isArray(s)?s.join(", "):s)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,n])=>e+": "+n).join(` `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){const s=new this(e);return n.forEach(i=>s.set(i)),s}static accessor(e){const s=(this[Jm]=this[Jm]={accessors:{}}).accessors,i=this.prototype;function r(o){const a=Ho(o);s[a]||(Yk(i,o),s[a]=!0)}return J.isArray(e)?e.forEach(r):r(e),this}};Mn.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);J.reduceDescriptors(Mn.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(s){this[n]=s}}});J.freezeMethods(Mn);function Od(t,e){const n=this||Qa,s=e||n,i=Mn.from(s.headers);let r=s.data;return J.forEach(t,function(a){r=a.call(n,r,i.normalize(),e?e.status:void 0)}),i.normalize(),r}function b0(t){return!!(t&&t.__CANCEL__)}function Io(t,e,n){jt.call(this,t??"canceled",jt.ERR_CANCELED,e,n),this.name="CanceledError"}J.inherits(Io,jt,{__CANCEL__:!0});function y0(t,e,n){const s=n.config.validateStatus;!n.status||!s||s(n.status)?t(n):e(new jt("Request failed with status code "+n.status,[jt.ERR_BAD_REQUEST,jt.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function Zk(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function Jk(t,e){t=t||10;const n=new Array(t),s=new Array(t);let i=0,r=0,o;return e=e!==void 0?e:1e3,function(l){const c=Date.now(),u=s[r];o||(o=c),n[i]=l,s[i]=c;let d=r,f=0;for(;d!==i;)f+=n[d++],d=d%t;if(i=(i+1)%t,i===r&&(r=(r+1)%t),c-o{n=u,i=null,r&&(clearTimeout(r),r=null),t.apply(null,c)};return[(...c)=>{const u=Date.now(),d=u-n;d>=s?o(c,u):(i=c,r||(r=setTimeout(()=>{r=null,o(i)},s-d)))},()=>i&&o(i)]}const Ac=(t,e,n=3)=>{let s=0;const i=Jk(50,250);return Qk(r=>{const o=r.loaded,a=r.lengthComputable?r.total:void 0,l=o-s,c=i(l),u=o<=a;s=o;const d={loaded:o,total:a,progress:a?o/a:void 0,bytes:l,rate:c||void 0,estimated:c&&a&&u?(a-o)/c:void 0,event:r,lengthComputable:a!=null,[e?"download":"upload"]:!0};t(d)},n)},Qm=(t,e)=>{const n=t!=null;return[s=>e[0]({lengthComputable:n,total:t,loaded:s}),e[1]]},tg=t=>(...e)=>J.asap(()=>t(...e)),tT=pn.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,pn.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(pn.origin),pn.navigator&&/(msie|trident)/i.test(pn.navigator.userAgent)):()=>!0,eT=pn.hasStandardBrowserEnv?{write(t,e,n,s,i,r){const o=[t+"="+encodeURIComponent(e)];J.isNumber(n)&&o.push("expires="+new Date(n).toGMTString()),J.isString(s)&&o.push("path="+s),J.isString(i)&&o.push("domain="+i),r===!0&&o.push("secure"),document.cookie=o.join("; ")},read(t){const e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function nT(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function sT(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function _0(t,e){return t&&!nT(e)?sT(t,e):e}const eg=t=>t instanceof Mn?{...t}:t;function Er(t,e){e=e||{};const n={};function s(c,u,d,f){return J.isPlainObject(c)&&J.isPlainObject(u)?J.merge.call({caseless:f},c,u):J.isPlainObject(u)?J.merge({},u):J.isArray(u)?u.slice():u}function i(c,u,d,f){if(J.isUndefined(u)){if(!J.isUndefined(c))return s(void 0,c,d,f)}else return s(c,u,d,f)}function r(c,u){if(!J.isUndefined(u))return s(void 0,u)}function o(c,u){if(J.isUndefined(u)){if(!J.isUndefined(c))return s(void 0,c)}else return s(void 0,u)}function a(c,u,d){if(d in e)return s(c,u);if(d in t)return s(void 0,c)}const l={url:r,method:r,data:r,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:a,headers:(c,u,d)=>i(eg(c),eg(u),d,!0)};return J.forEach(Object.keys(Object.assign({},t,e)),function(u){const d=l[u]||i,f=d(t[u],e[u],u);J.isUndefined(f)&&d!==a||(n[u]=f)}),n}const v0=t=>{const e=Er({},t);let{data:n,withXSRFToken:s,xsrfHeaderName:i,xsrfCookieName:r,headers:o,auth:a}=e;e.headers=o=Mn.from(o),e.url=h0(_0(e.baseURL,e.url),t.params,t.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):"")));let l;if(J.isFormData(n)){if(pn.hasStandardBrowserEnv||pn.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if((l=o.getContentType())!==!1){const[c,...u]=l?l.split(";").map(d=>d.trim()).filter(Boolean):[];o.setContentType([c||"multipart/form-data",...u].join("; "))}}if(pn.hasStandardBrowserEnv&&(s&&J.isFunction(s)&&(s=s(e)),s||s!==!1&&tT(e.url))){const c=i&&r&&eT.read(r);c&&o.set(i,c)}return e},iT=typeof XMLHttpRequest<"u",rT=iT&&function(t){return new Promise(function(n,s){const i=v0(t);let r=i.data;const o=Mn.from(i.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:c}=i,u,d,f,p,h;function m(){p&&p(),h&&h(),i.cancelToken&&i.cancelToken.unsubscribe(u),i.signal&&i.signal.removeEventListener("abort",u)}let _=new XMLHttpRequest;_.open(i.method.toUpperCase(),i.url,!0),_.timeout=i.timeout;function y(){if(!_)return;const b=Mn.from("getAllResponseHeaders"in _&&_.getAllResponseHeaders()),E={data:!a||a==="text"||a==="json"?_.responseText:_.response,status:_.status,statusText:_.statusText,headers:b,config:t,request:_};y0(function(P){n(P),m()},function(P){s(P),m()},E),_=null}"onloadend"in _?_.onloadend=y:_.onreadystatechange=function(){!_||_.readyState!==4||_.status===0&&!(_.responseURL&&_.responseURL.indexOf("file:")===0)||setTimeout(y)},_.onabort=function(){_&&(s(new jt("Request aborted",jt.ECONNABORTED,t,_)),_=null)},_.onerror=function(){s(new jt("Network Error",jt.ERR_NETWORK,t,_)),_=null},_.ontimeout=function(){let v=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded";const E=i.transitional||m0;i.timeoutErrorMessage&&(v=i.timeoutErrorMessage),s(new jt(v,E.clarifyTimeoutError?jt.ETIMEDOUT:jt.ECONNABORTED,t,_)),_=null},r===void 0&&o.setContentType(null),"setRequestHeader"in _&&J.forEach(o.toJSON(),function(v,E){_.setRequestHeader(E,v)}),J.isUndefined(i.withCredentials)||(_.withCredentials=!!i.withCredentials),a&&a!=="json"&&(_.responseType=i.responseType),c&&([f,h]=Ac(c,!0),_.addEventListener("progress",f)),l&&_.upload&&([d,p]=Ac(l),_.upload.addEventListener("progress",d),_.upload.addEventListener("loadend",p)),(i.cancelToken||i.signal)&&(u=b=>{_&&(s(!b||b.type?new Io(null,t,_):b),_.abort(),_=null)},i.cancelToken&&i.cancelToken.subscribe(u),i.signal&&(i.signal.aborted?u():i.signal.addEventListener("abort",u)));const S=Zk(i.url);if(S&&pn.protocols.indexOf(S)===-1){s(new jt("Unsupported protocol "+S+":",jt.ERR_BAD_REQUEST,t));return}_.send(r||null)})},oT=(t,e)=>{const{length:n}=t=t?t.filter(Boolean):[];if(e||n){let s=new AbortController,i;const r=function(c){if(!i){i=!0,a();const u=c instanceof Error?c:this.reason;s.abort(u instanceof jt?u:new Io(u instanceof Error?u.message:u))}};let o=e&&setTimeout(()=>{o=null,r(new jt(`timeout ${e} of ms exceeded`,jt.ETIMEDOUT))},e);const a=()=>{t&&(o&&clearTimeout(o),o=null,t.forEach(c=>{c.unsubscribe?c.unsubscribe(r):c.removeEventListener("abort",r)}),t=null)};t.forEach(c=>c.addEventListener("abort",r));const{signal:l}=s;return l.unsubscribe=()=>J.asap(a),l}},aT=function*(t,e){let n=t.byteLength;if(n{const i=lT(t,e);let r=0,o,a=l=>{o||(o=!0,s&&s(l))};return new ReadableStream({async pull(l){try{const{done:c,value:u}=await i.next();if(c){a(),l.close();return}let d=u.byteLength;if(n){let f=r+=d;n(f)}l.enqueue(new Uint8Array(u))}catch(c){throw a(c),c}},cancel(l){return a(l),i.return()}},{highWaterMark:2})},xu=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",S0=xu&&typeof ReadableStream=="function",uT=xu&&(typeof TextEncoder=="function"?(t=>e=>t.encode(e))(new TextEncoder):async t=>new Uint8Array(await new Response(t).arrayBuffer())),E0=(t,...e)=>{try{return!!t(...e)}catch{return!1}},dT=S0&&E0(()=>{let t=!1;const e=new Request(pn.origin,{body:new ReadableStream,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type");return t&&!e}),sg=64*1024,Hf=S0&&E0(()=>J.isReadableStream(new Response("").body)),Oc={stream:Hf&&(t=>t.body)};xu&&(t=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!Oc[e]&&(Oc[e]=J.isFunction(t[e])?n=>n[e]():(n,s)=>{throw new jt(`Response type '${e}' is not supported`,jt.ERR_NOT_SUPPORT,s)})})})(new Response);const fT=async t=>{if(t==null)return 0;if(J.isBlob(t))return t.size;if(J.isSpecCompliantForm(t))return(await new Request(pn.origin,{method:"POST",body:t}).arrayBuffer()).byteLength;if(J.isArrayBufferView(t)||J.isArrayBuffer(t))return t.byteLength;if(J.isURLSearchParams(t)&&(t=t+""),J.isString(t))return(await uT(t)).byteLength},pT=async(t,e)=>{const n=J.toFiniteNumber(t.getContentLength());return n??fT(e)},hT=xu&&(async t=>{let{url:e,method:n,data:s,signal:i,cancelToken:r,timeout:o,onDownloadProgress:a,onUploadProgress:l,responseType:c,headers:u,withCredentials:d="same-origin",fetchOptions:f}=v0(t);c=c?(c+"").toLowerCase():"text";let p=oT([i,r&&r.toAbortSignal()],o),h;const m=p&&p.unsubscribe&&(()=>{p.unsubscribe()});let _;try{if(l&&dT&&n!=="get"&&n!=="head"&&(_=await pT(u,s))!==0){let E=new Request(e,{method:"POST",body:s,duplex:"half"}),w;if(J.isFormData(s)&&(w=E.headers.get("content-type"))&&u.setContentType(w),E.body){const[P,L]=Qm(_,Ac(tg(l)));s=ng(E.body,sg,P,L)}}J.isString(d)||(d=d?"include":"omit");const y="credentials"in Request.prototype;h=new Request(e,{...f,signal:p,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:s,duplex:"half",credentials:y?d:void 0});let S=await fetch(h);const b=Hf&&(c==="stream"||c==="response");if(Hf&&(a||b&&m)){const E={};["status","statusText","headers"].forEach(k=>{E[k]=S[k]});const w=J.toFiniteNumber(S.headers.get("content-length")),[P,L]=a&&Qm(w,Ac(tg(a),!0))||[];S=new Response(ng(S.body,sg,P,()=>{L&&L(),m&&m()}),E)}c=c||"text";let v=await Oc[J.findKey(Oc,c)||"text"](S,t);return!b&&m&&m(),await new Promise((E,w)=>{y0(E,w,{data:v,headers:Mn.from(S.headers),status:S.status,statusText:S.statusText,config:t,request:h})})}catch(y){throw m&&m(),y&&y.name==="TypeError"&&/fetch/i.test(y.message)?Object.assign(new jt("Network Error",jt.ERR_NETWORK,t,h),{cause:y.cause||y}):jt.from(y,y&&y.code,t,h)}}),Uf={http:Ok,xhr:rT,fetch:hT};J.forEach(Uf,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});const ig=t=>`- ${t}`,mT=t=>J.isFunction(t)||t===null||t===!1,w0={getAdapter:t=>{t=J.isArray(t)?t:[t];const{length:e}=t;let n,s;const i={};for(let r=0;r`adapter ${a} `+(l===!1?"is not supported by the environment":"is not available in the build"));let o=e?r.length>1?`since : `+r.map(ig).join(` -`):" "+ig(r[0]):"as no adapter specified";throw new jt("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return s},adapters:Uf};function Id(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new Io(null,t)}function rg(t){return Id(t),t.headers=Mn.from(t.headers),t.data=Od.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),w0.getAdapter(t.adapter||Qa.adapter)(t).then(function(s){return Id(t),s.data=Od.call(t,t.transformResponse,s),s.headers=Mn.from(s.headers),s},function(s){return b0(s)||(Id(t),s&&s.response&&(s.response.data=Od.call(t,t.transformResponse,s.response),s.response.headers=Mn.from(s.response.headers))),Promise.reject(s)})}const C0="1.7.9",Au={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{Au[t]=function(s){return typeof s===t||"a"+(e<1?"n ":" ")+t}});const og={};Au.transitional=function(e,n,s){function i(r,o){return"[Axios v"+C0+"] Transitional option '"+r+"'"+o+(s?". "+s:"")}return(r,o,a)=>{if(e===!1)throw new jt(i(o," has been removed"+(n?" in "+n:"")),jt.ERR_DEPRECATED);return n&&!og[o]&&(og[o]=!0,console.warn(i(o," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(r,o,a):!0}};Au.spelling=function(e){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${e}`),!0)};function gT(t,e,n){if(typeof t!="object")throw new jt("options must be an object",jt.ERR_BAD_OPTION_VALUE);const s=Object.keys(t);let i=s.length;for(;i-- >0;){const r=s[i],o=e[r];if(o){const a=t[r],l=a===void 0||o(a,r,t);if(l!==!0)throw new jt("option "+r+" must be "+l,jt.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new jt("Unknown option "+r,jt.ERR_BAD_OPTION)}}const Xl={assertOptions:gT,validators:Au},Is=Xl.validators;let br=class{constructor(e){this.defaults=e,this.interceptors={request:new Zm,response:new Zm}}async request(e,n){try{return await this._request(e,n)}catch(s){if(s instanceof Error){let i={};Error.captureStackTrace?Error.captureStackTrace(i):i=new Error;const r=i.stack?i.stack.replace(/^.+\n/,""):"";try{s.stack?r&&!String(s.stack).endsWith(r.replace(/^.+\n.+\n/,""))&&(s.stack+=` -`+r):s.stack=r}catch{}}throw s}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=Er(this.defaults,n);const{transitional:s,paramsSerializer:i,headers:r}=n;s!==void 0&&Xl.assertOptions(s,{silentJSONParsing:Is.transitional(Is.boolean),forcedJSONParsing:Is.transitional(Is.boolean),clarifyTimeoutError:Is.transitional(Is.boolean)},!1),i!=null&&(J.isFunction(i)?n.paramsSerializer={serialize:i}:Xl.assertOptions(i,{encode:Is.function,serialize:Is.function},!0)),Xl.assertOptions(n,{baseUrl:Is.spelling("baseURL"),withXsrfToken:Is.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=r&&J.merge(r.common,r[n.method]);r&&J.forEach(["delete","get","head","post","put","patch","common"],h=>{delete r[h]}),n.headers=Mn.concat(o,r);const a=[];let l=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(n)===!1||(l=l&&m.synchronous,a.unshift(m.fulfilled,m.rejected))});const c=[];this.interceptors.response.forEach(function(m){c.push(m.fulfilled,m.rejected)});let u,d=0,f;if(!l){const h=[rg.bind(this),void 0];for(h.unshift.apply(h,a),h.push.apply(h,c),f=h.length,u=Promise.resolve(n);d{if(!s._listeners)return;let r=s._listeners.length;for(;r-- >0;)s._listeners[r](i);s._listeners=null}),this.promise.then=i=>{let r;const o=new Promise(a=>{s.subscribe(a),r=a}).then(i);return o.cancel=function(){s.unsubscribe(r)},o},e(function(r,o,a){s.reason||(s.reason=new Io(r,o,a),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=s=>{e.abort(s)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new k0(function(i){e=i}),cancel:e}}};function yT(t){return function(n){return t.apply(null,n)}}function _T(t){return J.isObject(t)&&t.isAxiosError===!0}const jf={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(jf).forEach(([t,e])=>{jf[e]=t});function T0(t){const e=new br(t),n=n0(br.prototype.request,e);return J.extend(n,br.prototype,e,{allOwnKeys:!0}),J.extend(n,e,null,{allOwnKeys:!0}),n.create=function(i){return T0(Er(t,i))},n}const ut=T0(Qa);ut.Axios=br;ut.CanceledError=Io;ut.CancelToken=bT;ut.isCancel=b0;ut.VERSION=C0;ut.toFormData=Tu;ut.AxiosError=jt;ut.Cancel=ut.CanceledError;ut.all=function(e){return Promise.all(e)};ut.spread=yT;ut.isAxiosError=_T;ut.mergeConfig=Er;ut.AxiosHeaders=Mn;ut.formToJSON=t=>g0(J.isHTMLForm(t)?new FormData(t):t);ut.getAdapter=w0.getAdapter;ut.HttpStatusCode=jf;ut.default=ut;const{Axios:pq,AxiosError:hq,CanceledError:mq,isCancel:gq,CancelToken:bq,VERSION:yq,all:_q,Cancel:vq,isAxiosError:Sq,spread:Eq,toFormData:wq,AxiosHeaders:Cq,HttpStatusCode:kq,formToJSON:Tq,getAdapter:xq,mergeConfig:Aq}=ut;/*! +`):" "+ig(r[0]):"as no adapter specified";throw new jt("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return s},adapters:Uf};function Id(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new Io(null,t)}function rg(t){return Id(t),t.headers=Mn.from(t.headers),t.data=Od.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),w0.getAdapter(t.adapter||Qa.adapter)(t).then(function(s){return Id(t),s.data=Od.call(t,t.transformResponse,s),s.headers=Mn.from(s.headers),s},function(s){return b0(s)||(Id(t),s&&s.response&&(s.response.data=Od.call(t,t.transformResponse,s.response),s.response.headers=Mn.from(s.response.headers))),Promise.reject(s)})}const C0="1.7.9",Au={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{Au[t]=function(s){return typeof s===t||"a"+(e<1?"n ":" ")+t}});const og={};Au.transitional=function(e,n,s){function i(r,o){return"[Axios v"+C0+"] Transitional option '"+r+"'"+o+(s?". "+s:"")}return(r,o,a)=>{if(e===!1)throw new jt(i(o," has been removed"+(n?" in "+n:"")),jt.ERR_DEPRECATED);return n&&!og[o]&&(og[o]=!0,console.warn(i(o," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(r,o,a):!0}};Au.spelling=function(e){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${e}`),!0)};function gT(t,e,n){if(typeof t!="object")throw new jt("options must be an object",jt.ERR_BAD_OPTION_VALUE);const s=Object.keys(t);let i=s.length;for(;i-- >0;){const r=s[i],o=e[r];if(o){const a=t[r],l=a===void 0||o(a,r,t);if(l!==!0)throw new jt("option "+r+" must be "+l,jt.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new jt("Unknown option "+r,jt.ERR_BAD_OPTION)}}const Xl={assertOptions:gT,validators:Au},Os=Xl.validators;let br=class{constructor(e){this.defaults=e,this.interceptors={request:new Zm,response:new Zm}}async request(e,n){try{return await this._request(e,n)}catch(s){if(s instanceof Error){let i={};Error.captureStackTrace?Error.captureStackTrace(i):i=new Error;const r=i.stack?i.stack.replace(/^.+\n/,""):"";try{s.stack?r&&!String(s.stack).endsWith(r.replace(/^.+\n.+\n/,""))&&(s.stack+=` +`+r):s.stack=r}catch{}}throw s}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=Er(this.defaults,n);const{transitional:s,paramsSerializer:i,headers:r}=n;s!==void 0&&Xl.assertOptions(s,{silentJSONParsing:Os.transitional(Os.boolean),forcedJSONParsing:Os.transitional(Os.boolean),clarifyTimeoutError:Os.transitional(Os.boolean)},!1),i!=null&&(J.isFunction(i)?n.paramsSerializer={serialize:i}:Xl.assertOptions(i,{encode:Os.function,serialize:Os.function},!0)),Xl.assertOptions(n,{baseUrl:Os.spelling("baseURL"),withXsrfToken:Os.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=r&&J.merge(r.common,r[n.method]);r&&J.forEach(["delete","get","head","post","put","patch","common"],h=>{delete r[h]}),n.headers=Mn.concat(o,r);const a=[];let l=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(n)===!1||(l=l&&m.synchronous,a.unshift(m.fulfilled,m.rejected))});const c=[];this.interceptors.response.forEach(function(m){c.push(m.fulfilled,m.rejected)});let u,d=0,f;if(!l){const h=[rg.bind(this),void 0];for(h.unshift.apply(h,a),h.push.apply(h,c),f=h.length,u=Promise.resolve(n);d{if(!s._listeners)return;let r=s._listeners.length;for(;r-- >0;)s._listeners[r](i);s._listeners=null}),this.promise.then=i=>{let r;const o=new Promise(a=>{s.subscribe(a),r=a}).then(i);return o.cancel=function(){s.unsubscribe(r)},o},e(function(r,o,a){s.reason||(s.reason=new Io(r,o,a),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=s=>{e.abort(s)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new k0(function(i){e=i}),cancel:e}}};function yT(t){return function(n){return t.apply(null,n)}}function _T(t){return J.isObject(t)&&t.isAxiosError===!0}const jf={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(jf).forEach(([t,e])=>{jf[e]=t});function T0(t){const e=new br(t),n=n0(br.prototype.request,e);return J.extend(n,br.prototype,e,{allOwnKeys:!0}),J.extend(n,e,null,{allOwnKeys:!0}),n.create=function(i){return T0(Er(t,i))},n}const ut=T0(Qa);ut.Axios=br;ut.CanceledError=Io;ut.CancelToken=bT;ut.isCancel=b0;ut.VERSION=C0;ut.toFormData=Tu;ut.AxiosError=jt;ut.Cancel=ut.CanceledError;ut.all=function(e){return Promise.all(e)};ut.spread=yT;ut.isAxiosError=_T;ut.mergeConfig=Er;ut.AxiosHeaders=Mn;ut.formToJSON=t=>g0(J.isHTMLForm(t)?new FormData(t):t);ut.getAdapter=w0.getAdapter;ut.HttpStatusCode=jf;ut.default=ut;const{Axios:pq,AxiosError:hq,CanceledError:mq,isCancel:gq,CancelToken:bq,VERSION:yq,all:_q,Cancel:vq,isAxiosError:Sq,spread:Eq,toFormData:wq,AxiosHeaders:Cq,HttpStatusCode:kq,formToJSON:Tq,getAdapter:xq,mergeConfig:Aq}=ut;/*! * shared v11.1.1 * (c) 2025 kazuya kawaguchi * Released under the MIT License. @@ -34,7 +34,7 @@ * (c) 2025 kazuya kawaguchi * Released under the MIT License. */function AT(t,e,n){return{line:t,column:e,offset:n}}function Bf(t,e,n){return{start:t,end:e}}const ye={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14},OT=17;function Iu(t,e,n={}){const{domain:s,messages:i,args:r}=n,o=t,a=new SyntaxError(String(o));return a.code=t,e&&(a.location=e),a.domain=s,a}function IT(t){throw t}const zs=" ",NT="\r",vn=` -`,PT="\u2028",$T="\u2029";function RT(t){const e=t;let n=0,s=1,i=1,r=0;const o=P=>e[P]===NT&&e[P+1]===vn,a=P=>e[P]===vn,l=P=>e[P]===$T,c=P=>e[P]===PT,u=P=>o(P)||a(P)||l(P)||c(P),d=()=>n,f=()=>s,p=()=>i,h=()=>r,m=P=>o(P)||l(P)||c(P)?vn:e[P],_=()=>m(n),y=()=>m(n+r);function S(){return r=0,u(n)&&(s++,i=0),o(n)&&n++,n++,i++,e[n]}function b(){return o(n+r)&&r++,r++,e[n+r]}function v(){n=0,s=1,i=1,r=0}function E(P=0){r=P}function w(){const P=n+r;for(;P!==n;)S();r=0}return{index:d,line:f,column:p,peekOffset:h,charAt:m,currentChar:_,currentPeek:y,next:S,peek:b,reset:v,resetPeek:E,skipToPeek:w}}const yi=void 0,LT=".",cg="'",DT="tokenizer";function MT(t,e={}){const n=e.location!==!1,s=RT(t),i=()=>s.index(),r=()=>AT(s.line(),s.column(),s.index()),o=r(),a=i(),l={currentType:13,offset:a,startLoc:o,endLoc:o,lastType:13,lastOffset:a,lastStartLoc:o,lastEndLoc:o,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=e;function d(T,N,H,...X){const nt=c();if(N.column+=H,N.offset+=H,u){const lt=n?Bf(nt.startLoc,N):null,F=Iu(T,lt,{domain:DT,args:X});u(F)}}function f(T,N,H){T.endLoc=r(),T.currentType=N;const X={type:N};return n&&(X.loc=Bf(T.startLoc,T.endLoc)),H!=null&&(X.value=H),X}const p=T=>f(T,13);function h(T,N){return T.currentChar()===N?(T.next(),N):(d(ye.EXPECTED_TOKEN,r(),0,N),"")}function m(T){let N="";for(;T.currentPeek()===zs||T.currentPeek()===vn;)N+=T.currentPeek(),T.peek();return N}function _(T){const N=m(T);return T.skipToPeek(),N}function y(T){if(T===yi)return!1;const N=T.charCodeAt(0);return N>=97&&N<=122||N>=65&&N<=90||N===95}function S(T){if(T===yi)return!1;const N=T.charCodeAt(0);return N>=48&&N<=57}function b(T,N){const{currentType:H}=N;if(H!==2)return!1;m(T);const X=y(T.currentPeek());return T.resetPeek(),X}function v(T,N){const{currentType:H}=N;if(H!==2)return!1;m(T);const X=T.currentPeek()==="-"?T.peek():T.currentPeek(),nt=S(X);return T.resetPeek(),nt}function E(T,N){const{currentType:H}=N;if(H!==2)return!1;m(T);const X=T.currentPeek()===cg;return T.resetPeek(),X}function w(T,N){const{currentType:H}=N;if(H!==7)return!1;m(T);const X=T.currentPeek()===".";return T.resetPeek(),X}function P(T,N){const{currentType:H}=N;if(H!==8)return!1;m(T);const X=y(T.currentPeek());return T.resetPeek(),X}function L(T,N){const{currentType:H}=N;if(!(H===7||H===11))return!1;m(T);const X=T.currentPeek()===":";return T.resetPeek(),X}function k(T,N){const{currentType:H}=N;if(H!==9)return!1;const X=()=>{const lt=T.currentPeek();return lt==="{"?y(T.peek()):lt==="@"||lt==="|"||lt===":"||lt==="."||lt===zs||!lt?!1:lt===vn?(T.peek(),X()):B(T,!1)},nt=X();return T.resetPeek(),nt}function R(T){m(T);const N=T.currentPeek()==="|";return T.resetPeek(),N}function B(T,N=!0){const H=(nt=!1,lt="")=>{const F=T.currentPeek();return F==="{"||F==="@"||!F?nt:F==="|"?!(lt===zs||lt===vn):F===zs?(T.peek(),H(!0,zs)):F===vn?(T.peek(),H(!0,vn)):!0},X=H();return N&&T.resetPeek(),X}function V(T,N){const H=T.currentChar();return H===yi?yi:N(H)?(T.next(),H):null}function j(T){const N=T.charCodeAt(0);return N>=97&&N<=122||N>=65&&N<=90||N>=48&&N<=57||N===95||N===36}function Z(T){return V(T,j)}function ot(T){const N=T.charCodeAt(0);return N>=97&&N<=122||N>=65&&N<=90||N>=48&&N<=57||N===95||N===36||N===45}function q(T){return V(T,ot)}function et(T){const N=T.charCodeAt(0);return N>=48&&N<=57}function at(T){return V(T,et)}function kt(T){const N=T.charCodeAt(0);return N>=48&&N<=57||N>=65&&N<=70||N>=97&&N<=102}function Kt(T){return V(T,kt)}function Vt(T){let N="",H="";for(;N=at(T);)H+=N;return H}function Wt(T){let N="";for(;;){const H=T.currentChar();if(H==="{"||H==="}"||H==="@"||H==="|"||!H)break;if(H===zs||H===vn)if(B(T))N+=H,T.next();else{if(R(T))break;N+=H,T.next()}else N+=H,T.next()}return N}function pe(T){_(T);let N="",H="";for(;N=q(T);)H+=N;return T.currentChar()===yi&&d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),H}function be(T){_(T);let N="";return T.currentChar()==="-"?(T.next(),N+=`-${Vt(T)}`):N+=Vt(T),T.currentChar()===yi&&d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),N}function _e(T){return T!==cg&&T!==vn}function zt(T){_(T),h(T,"'");let N="",H="";for(;N=V(T,_e);)N==="\\"?H+=Y(T):H+=N;const X=T.currentChar();return X===vn||X===yi?(d(ye.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),X===vn&&(T.next(),h(T,"'")),H):(h(T,"'"),H)}function Y(T){const N=T.currentChar();switch(N){case"\\":case"'":return T.next(),`\\${N}`;case"u":return dt(T,N,4);case"U":return dt(T,N,6);default:return d(ye.UNKNOWN_ESCAPE_SEQUENCE,r(),0,N),""}}function dt(T,N,H){h(T,N);let X="";for(let nt=0;nt{const X=T.currentChar();return X==="{"||X==="@"||X==="|"||X==="("||X===")"||!X||X===zs?H:(H+=X,T.next(),N(H))};return N("")}function A(T){_(T);const N=h(T,"|");return _(T),N}function $(T,N){let H=null;switch(T.currentChar()){case"{":return N.braceNest>=1&&d(ye.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),T.next(),H=f(N,2,"{"),_(T),N.braceNest++,H;case"}":return N.braceNest>0&&N.currentType===2&&d(ye.EMPTY_PLACEHOLDER,r(),0),T.next(),H=f(N,3,"}"),N.braceNest--,N.braceNest>0&&_(T),N.inLinked&&N.braceNest===0&&(N.inLinked=!1),H;case"@":return N.braceNest>0&&d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),H=z(T,N)||p(N),N.braceNest=0,H;default:{let nt=!0,lt=!0,F=!0;if(R(T))return N.braceNest>0&&d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),H=f(N,1,A(T)),N.braceNest=0,N.inLinked=!1,H;if(N.braceNest>0&&(N.currentType===4||N.currentType===5||N.currentType===6))return d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),N.braceNest=0,st(T,N);if(nt=b(T,N))return H=f(N,4,pe(T)),_(T),H;if(lt=v(T,N))return H=f(N,5,be(T)),_(T),H;if(F=E(T,N))return H=f(N,6,zt(T)),_(T),H;if(!nt&&!lt&&!F)return H=f(N,12,yt(T)),d(ye.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,H.value),_(T),H;break}}return H}function z(T,N){const{currentType:H}=N;let X=null;const nt=T.currentChar();switch((H===7||H===8||H===11||H===9)&&(nt===vn||nt===zs)&&d(ye.INVALID_LINKED_FORMAT,r(),0),nt){case"@":return T.next(),X=f(N,7,"@"),N.inLinked=!0,X;case".":return _(T),T.next(),f(N,8,".");case":":return _(T),T.next(),f(N,9,":");default:return R(T)?(X=f(N,1,A(T)),N.braceNest=0,N.inLinked=!1,X):w(T,N)||L(T,N)?(_(T),z(T,N)):P(T,N)?(_(T),f(N,11,Ht(T))):k(T,N)?(_(T),nt==="{"?$(T,N)||X:f(N,10,Xt(T))):(H===7&&d(ye.INVALID_LINKED_FORMAT,r(),0),N.braceNest=0,N.inLinked=!1,st(T,N))}}function st(T,N){let H={type:13};if(N.braceNest>0)return $(T,N)||p(N);if(N.inLinked)return z(T,N)||p(N);switch(T.currentChar()){case"{":return $(T,N)||p(N);case"}":return d(ye.UNBALANCED_CLOSING_BRACE,r(),0),T.next(),f(N,3,"}");case"@":return z(T,N)||p(N);default:{if(R(T))return H=f(N,1,A(T)),N.braceNest=0,N.inLinked=!1,H;if(B(T))return f(N,0,Wt(T));break}}return H}function Q(){const{currentType:T,offset:N,startLoc:H,endLoc:X}=l;return l.lastType=T,l.lastOffset=N,l.lastStartLoc=H,l.lastEndLoc=X,l.offset=i(),l.startLoc=r(),s.currentChar()===yi?f(l,13):st(s,l)}return{nextToken:Q,currentOffset:i,currentPosition:r,context:c}}const FT="parser",VT=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function HT(t,e,n){switch(t){case"\\\\":return"\\";case"\\'":return"'";default:{const s=parseInt(e||n,16);return s<=55295||s>=57344?String.fromCodePoint(s):"�"}}}function UT(t={}){const e=t.location!==!1,{onError:n}=t;function s(y,S,b,v,...E){const w=y.currentPosition();if(w.offset+=v,w.column+=v,n){const P=e?Bf(b,w):null,L=Iu(S,P,{domain:FT,args:E});n(L)}}function i(y,S,b){const v={type:y};return e&&(v.start=S,v.end=S,v.loc={start:b,end:b}),v}function r(y,S,b,v){e&&(y.end=S,y.loc&&(y.loc.end=b))}function o(y,S){const b=y.context(),v=i(3,b.offset,b.startLoc);return v.value=S,r(v,y.currentOffset(),y.currentPosition()),v}function a(y,S){const b=y.context(),{lastOffset:v,lastStartLoc:E}=b,w=i(5,v,E);return w.index=parseInt(S,10),y.nextToken(),r(w,y.currentOffset(),y.currentPosition()),w}function l(y,S){const b=y.context(),{lastOffset:v,lastStartLoc:E}=b,w=i(4,v,E);return w.key=S,y.nextToken(),r(w,y.currentOffset(),y.currentPosition()),w}function c(y,S){const b=y.context(),{lastOffset:v,lastStartLoc:E}=b,w=i(9,v,E);return w.value=S.replace(VT,HT),y.nextToken(),r(w,y.currentOffset(),y.currentPosition()),w}function u(y){const S=y.nextToken(),b=y.context(),{lastOffset:v,lastStartLoc:E}=b,w=i(8,v,E);return S.type!==11?(s(y,ye.UNEXPECTED_EMPTY_LINKED_MODIFIER,b.lastStartLoc,0),w.value="",r(w,v,E),{nextConsumeToken:S,node:w}):(S.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Ns(S)),w.value=S.value||"",r(w,y.currentOffset(),y.currentPosition()),{node:w})}function d(y,S){const b=y.context(),v=i(7,b.offset,b.startLoc);return v.value=S,r(v,y.currentOffset(),y.currentPosition()),v}function f(y){const S=y.context(),b=i(6,S.offset,S.startLoc);let v=y.nextToken();if(v.type===8){const E=u(y);b.modifier=E.node,v=E.nextConsumeToken||y.nextToken()}switch(v.type!==9&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Ns(v)),v=y.nextToken(),v.type===2&&(v=y.nextToken()),v.type){case 10:v.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Ns(v)),b.key=d(y,v.value||"");break;case 4:v.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Ns(v)),b.key=l(y,v.value||"");break;case 5:v.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Ns(v)),b.key=a(y,v.value||"");break;case 6:v.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Ns(v)),b.key=c(y,v.value||"");break;default:{s(y,ye.UNEXPECTED_EMPTY_LINKED_KEY,S.lastStartLoc,0);const E=y.context(),w=i(7,E.offset,E.startLoc);return w.value="",r(w,E.offset,E.startLoc),b.key=w,r(b,E.offset,E.startLoc),{nextConsumeToken:v,node:b}}}return r(b,y.currentOffset(),y.currentPosition()),{node:b}}function p(y){const S=y.context(),b=S.currentType===1?y.currentOffset():S.offset,v=S.currentType===1?S.endLoc:S.startLoc,E=i(2,b,v);E.items=[];let w=null;do{const k=w||y.nextToken();switch(w=null,k.type){case 0:k.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Ns(k)),E.items.push(o(y,k.value||""));break;case 5:k.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Ns(k)),E.items.push(a(y,k.value||""));break;case 4:k.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Ns(k)),E.items.push(l(y,k.value||""));break;case 6:k.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Ns(k)),E.items.push(c(y,k.value||""));break;case 7:{const R=f(y);E.items.push(R.node),w=R.nextConsumeToken||null;break}}}while(S.currentType!==13&&S.currentType!==1);const P=S.currentType===1?S.lastOffset:y.currentOffset(),L=S.currentType===1?S.lastEndLoc:y.currentPosition();return r(E,P,L),E}function h(y,S,b,v){const E=y.context();let w=v.items.length===0;const P=i(1,S,b);P.cases=[],P.cases.push(v);do{const L=p(y);w||(w=L.items.length===0),P.cases.push(L)}while(E.currentType!==13);return w&&s(y,ye.MUST_HAVE_MESSAGES_IN_PLURAL,b,0),r(P,y.currentOffset(),y.currentPosition()),P}function m(y){const S=y.context(),{offset:b,startLoc:v}=S,E=p(y);return S.currentType===13?E:h(y,b,v,E)}function _(y){const S=MT(y,tn({},t)),b=S.context(),v=i(0,b.offset,b.startLoc);return e&&v.loc&&(v.loc.source=y),v.body=m(S),t.onCacheKey&&(v.cacheKey=t.onCacheKey(y)),b.currentType!==13&&s(S,ye.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,y[b.offset]||""),r(v,S.currentOffset(),S.currentPosition()),v}return{parse:_}}function Ns(t){if(t.type===13)return"EOF";const e=(t.value||"").replace(/\r?\n/gu,"\\n");return e.length>10?e.slice(0,9)+"…":e}function jT(t,e={}){const n={ast:t,helpers:new Set};return{context:()=>n,helper:r=>(n.helpers.add(r),r)}}function ug(t,e){for(let n=0;ndg(n)),t}function dg(t){if(t.items.length===1){const e=t.items[0];(e.type===3||e.type===9)&&(t.static=e.value,delete e.value)}else{const e=[];for(let n=0;no;function l(m,_){o.code+=m}function c(m,_=!0){const y=_?s:"";l(i?y+" ".repeat(m):y)}function u(m=!0){const _=++o.indentLevel;m&&c(_)}function d(m=!0){const _=--o.indentLevel;m&&c(_)}function f(){c(o.indentLevel)}return{context:a,push:l,indent:u,deindent:d,newline:f,helper:m=>`_${m}`,needIndent:()=>o.needIndent}}function qT(t,e){const{helper:n}=t;t.push(`${n("linked")}(`),ho(t,e.key),e.modifier?(t.push(", "),ho(t,e.modifier),t.push(", _type")):t.push(", undefined, _type"),t.push(")")}function GT(t,e){const{helper:n,needIndent:s}=t;t.push(`${n("normalize")}([`),t.indent(s());const i=e.items.length;for(let r=0;r1){t.push(`${n("plural")}([`),t.indent(s());const i=e.cases.length;for(let r=0;r{const n=St(e.mode)?e.mode:"normal",s=St(e.filename)?e.filename:"message.intl";e.sourceMap;const i=e.breakLineCode!=null?e.breakLineCode:n==="arrow"?";":` +`,PT="\u2028",$T="\u2029";function RT(t){const e=t;let n=0,s=1,i=1,r=0;const o=P=>e[P]===NT&&e[P+1]===vn,a=P=>e[P]===vn,l=P=>e[P]===$T,c=P=>e[P]===PT,u=P=>o(P)||a(P)||l(P)||c(P),d=()=>n,f=()=>s,p=()=>i,h=()=>r,m=P=>o(P)||l(P)||c(P)?vn:e[P],_=()=>m(n),y=()=>m(n+r);function S(){return r=0,u(n)&&(s++,i=0),o(n)&&n++,n++,i++,e[n]}function b(){return o(n+r)&&r++,r++,e[n+r]}function v(){n=0,s=1,i=1,r=0}function E(P=0){r=P}function w(){const P=n+r;for(;P!==n;)S();r=0}return{index:d,line:f,column:p,peekOffset:h,charAt:m,currentChar:_,currentPeek:y,next:S,peek:b,reset:v,resetPeek:E,skipToPeek:w}}const yi=void 0,LT=".",cg="'",DT="tokenizer";function MT(t,e={}){const n=e.location!==!1,s=RT(t),i=()=>s.index(),r=()=>AT(s.line(),s.column(),s.index()),o=r(),a=i(),l={currentType:13,offset:a,startLoc:o,endLoc:o,lastType:13,lastOffset:a,lastStartLoc:o,lastEndLoc:o,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=e;function d(T,N,H,...X){const nt=c();if(N.column+=H,N.offset+=H,u){const lt=n?Bf(nt.startLoc,N):null,F=Iu(T,lt,{domain:DT,args:X});u(F)}}function f(T,N,H){T.endLoc=r(),T.currentType=N;const X={type:N};return n&&(X.loc=Bf(T.startLoc,T.endLoc)),H!=null&&(X.value=H),X}const p=T=>f(T,13);function h(T,N){return T.currentChar()===N?(T.next(),N):(d(ye.EXPECTED_TOKEN,r(),0,N),"")}function m(T){let N="";for(;T.currentPeek()===zs||T.currentPeek()===vn;)N+=T.currentPeek(),T.peek();return N}function _(T){const N=m(T);return T.skipToPeek(),N}function y(T){if(T===yi)return!1;const N=T.charCodeAt(0);return N>=97&&N<=122||N>=65&&N<=90||N===95}function S(T){if(T===yi)return!1;const N=T.charCodeAt(0);return N>=48&&N<=57}function b(T,N){const{currentType:H}=N;if(H!==2)return!1;m(T);const X=y(T.currentPeek());return T.resetPeek(),X}function v(T,N){const{currentType:H}=N;if(H!==2)return!1;m(T);const X=T.currentPeek()==="-"?T.peek():T.currentPeek(),nt=S(X);return T.resetPeek(),nt}function E(T,N){const{currentType:H}=N;if(H!==2)return!1;m(T);const X=T.currentPeek()===cg;return T.resetPeek(),X}function w(T,N){const{currentType:H}=N;if(H!==7)return!1;m(T);const X=T.currentPeek()===".";return T.resetPeek(),X}function P(T,N){const{currentType:H}=N;if(H!==8)return!1;m(T);const X=y(T.currentPeek());return T.resetPeek(),X}function L(T,N){const{currentType:H}=N;if(!(H===7||H===11))return!1;m(T);const X=T.currentPeek()===":";return T.resetPeek(),X}function k(T,N){const{currentType:H}=N;if(H!==9)return!1;const X=()=>{const lt=T.currentPeek();return lt==="{"?y(T.peek()):lt==="@"||lt==="|"||lt===":"||lt==="."||lt===zs||!lt?!1:lt===vn?(T.peek(),X()):B(T,!1)},nt=X();return T.resetPeek(),nt}function R(T){m(T);const N=T.currentPeek()==="|";return T.resetPeek(),N}function B(T,N=!0){const H=(nt=!1,lt="")=>{const F=T.currentPeek();return F==="{"||F==="@"||!F?nt:F==="|"?!(lt===zs||lt===vn):F===zs?(T.peek(),H(!0,zs)):F===vn?(T.peek(),H(!0,vn)):!0},X=H();return N&&T.resetPeek(),X}function V(T,N){const H=T.currentChar();return H===yi?yi:N(H)?(T.next(),H):null}function j(T){const N=T.charCodeAt(0);return N>=97&&N<=122||N>=65&&N<=90||N>=48&&N<=57||N===95||N===36}function Z(T){return V(T,j)}function ot(T){const N=T.charCodeAt(0);return N>=97&&N<=122||N>=65&&N<=90||N>=48&&N<=57||N===95||N===36||N===45}function q(T){return V(T,ot)}function et(T){const N=T.charCodeAt(0);return N>=48&&N<=57}function at(T){return V(T,et)}function kt(T){const N=T.charCodeAt(0);return N>=48&&N<=57||N>=65&&N<=70||N>=97&&N<=102}function Kt(T){return V(T,kt)}function Vt(T){let N="",H="";for(;N=at(T);)H+=N;return H}function Wt(T){let N="";for(;;){const H=T.currentChar();if(H==="{"||H==="}"||H==="@"||H==="|"||!H)break;if(H===zs||H===vn)if(B(T))N+=H,T.next();else{if(R(T))break;N+=H,T.next()}else N+=H,T.next()}return N}function pe(T){_(T);let N="",H="";for(;N=q(T);)H+=N;return T.currentChar()===yi&&d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),H}function be(T){_(T);let N="";return T.currentChar()==="-"?(T.next(),N+=`-${Vt(T)}`):N+=Vt(T),T.currentChar()===yi&&d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),N}function _e(T){return T!==cg&&T!==vn}function zt(T){_(T),h(T,"'");let N="",H="";for(;N=V(T,_e);)N==="\\"?H+=Y(T):H+=N;const X=T.currentChar();return X===vn||X===yi?(d(ye.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),X===vn&&(T.next(),h(T,"'")),H):(h(T,"'"),H)}function Y(T){const N=T.currentChar();switch(N){case"\\":case"'":return T.next(),`\\${N}`;case"u":return dt(T,N,4);case"U":return dt(T,N,6);default:return d(ye.UNKNOWN_ESCAPE_SEQUENCE,r(),0,N),""}}function dt(T,N,H){h(T,N);let X="";for(let nt=0;nt{const X=T.currentChar();return X==="{"||X==="@"||X==="|"||X==="("||X===")"||!X||X===zs?H:(H+=X,T.next(),N(H))};return N("")}function A(T){_(T);const N=h(T,"|");return _(T),N}function $(T,N){let H=null;switch(T.currentChar()){case"{":return N.braceNest>=1&&d(ye.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),T.next(),H=f(N,2,"{"),_(T),N.braceNest++,H;case"}":return N.braceNest>0&&N.currentType===2&&d(ye.EMPTY_PLACEHOLDER,r(),0),T.next(),H=f(N,3,"}"),N.braceNest--,N.braceNest>0&&_(T),N.inLinked&&N.braceNest===0&&(N.inLinked=!1),H;case"@":return N.braceNest>0&&d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),H=z(T,N)||p(N),N.braceNest=0,H;default:{let nt=!0,lt=!0,F=!0;if(R(T))return N.braceNest>0&&d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),H=f(N,1,A(T)),N.braceNest=0,N.inLinked=!1,H;if(N.braceNest>0&&(N.currentType===4||N.currentType===5||N.currentType===6))return d(ye.UNTERMINATED_CLOSING_BRACE,r(),0),N.braceNest=0,st(T,N);if(nt=b(T,N))return H=f(N,4,pe(T)),_(T),H;if(lt=v(T,N))return H=f(N,5,be(T)),_(T),H;if(F=E(T,N))return H=f(N,6,zt(T)),_(T),H;if(!nt&&!lt&&!F)return H=f(N,12,yt(T)),d(ye.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,H.value),_(T),H;break}}return H}function z(T,N){const{currentType:H}=N;let X=null;const nt=T.currentChar();switch((H===7||H===8||H===11||H===9)&&(nt===vn||nt===zs)&&d(ye.INVALID_LINKED_FORMAT,r(),0),nt){case"@":return T.next(),X=f(N,7,"@"),N.inLinked=!0,X;case".":return _(T),T.next(),f(N,8,".");case":":return _(T),T.next(),f(N,9,":");default:return R(T)?(X=f(N,1,A(T)),N.braceNest=0,N.inLinked=!1,X):w(T,N)||L(T,N)?(_(T),z(T,N)):P(T,N)?(_(T),f(N,11,Ht(T))):k(T,N)?(_(T),nt==="{"?$(T,N)||X:f(N,10,Xt(T))):(H===7&&d(ye.INVALID_LINKED_FORMAT,r(),0),N.braceNest=0,N.inLinked=!1,st(T,N))}}function st(T,N){let H={type:13};if(N.braceNest>0)return $(T,N)||p(N);if(N.inLinked)return z(T,N)||p(N);switch(T.currentChar()){case"{":return $(T,N)||p(N);case"}":return d(ye.UNBALANCED_CLOSING_BRACE,r(),0),T.next(),f(N,3,"}");case"@":return z(T,N)||p(N);default:{if(R(T))return H=f(N,1,A(T)),N.braceNest=0,N.inLinked=!1,H;if(B(T))return f(N,0,Wt(T));break}}return H}function Q(){const{currentType:T,offset:N,startLoc:H,endLoc:X}=l;return l.lastType=T,l.lastOffset=N,l.lastStartLoc=H,l.lastEndLoc=X,l.offset=i(),l.startLoc=r(),s.currentChar()===yi?f(l,13):st(s,l)}return{nextToken:Q,currentOffset:i,currentPosition:r,context:c}}const FT="parser",VT=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function HT(t,e,n){switch(t){case"\\\\":return"\\";case"\\'":return"'";default:{const s=parseInt(e||n,16);return s<=55295||s>=57344?String.fromCodePoint(s):"�"}}}function UT(t={}){const e=t.location!==!1,{onError:n}=t;function s(y,S,b,v,...E){const w=y.currentPosition();if(w.offset+=v,w.column+=v,n){const P=e?Bf(b,w):null,L=Iu(S,P,{domain:FT,args:E});n(L)}}function i(y,S,b){const v={type:y};return e&&(v.start=S,v.end=S,v.loc={start:b,end:b}),v}function r(y,S,b,v){e&&(y.end=S,y.loc&&(y.loc.end=b))}function o(y,S){const b=y.context(),v=i(3,b.offset,b.startLoc);return v.value=S,r(v,y.currentOffset(),y.currentPosition()),v}function a(y,S){const b=y.context(),{lastOffset:v,lastStartLoc:E}=b,w=i(5,v,E);return w.index=parseInt(S,10),y.nextToken(),r(w,y.currentOffset(),y.currentPosition()),w}function l(y,S){const b=y.context(),{lastOffset:v,lastStartLoc:E}=b,w=i(4,v,E);return w.key=S,y.nextToken(),r(w,y.currentOffset(),y.currentPosition()),w}function c(y,S){const b=y.context(),{lastOffset:v,lastStartLoc:E}=b,w=i(9,v,E);return w.value=S.replace(VT,HT),y.nextToken(),r(w,y.currentOffset(),y.currentPosition()),w}function u(y){const S=y.nextToken(),b=y.context(),{lastOffset:v,lastStartLoc:E}=b,w=i(8,v,E);return S.type!==11?(s(y,ye.UNEXPECTED_EMPTY_LINKED_MODIFIER,b.lastStartLoc,0),w.value="",r(w,v,E),{nextConsumeToken:S,node:w}):(S.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Is(S)),w.value=S.value||"",r(w,y.currentOffset(),y.currentPosition()),{node:w})}function d(y,S){const b=y.context(),v=i(7,b.offset,b.startLoc);return v.value=S,r(v,y.currentOffset(),y.currentPosition()),v}function f(y){const S=y.context(),b=i(6,S.offset,S.startLoc);let v=y.nextToken();if(v.type===8){const E=u(y);b.modifier=E.node,v=E.nextConsumeToken||y.nextToken()}switch(v.type!==9&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Is(v)),v=y.nextToken(),v.type===2&&(v=y.nextToken()),v.type){case 10:v.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Is(v)),b.key=d(y,v.value||"");break;case 4:v.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Is(v)),b.key=l(y,v.value||"");break;case 5:v.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Is(v)),b.key=a(y,v.value||"");break;case 6:v.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Is(v)),b.key=c(y,v.value||"");break;default:{s(y,ye.UNEXPECTED_EMPTY_LINKED_KEY,S.lastStartLoc,0);const E=y.context(),w=i(7,E.offset,E.startLoc);return w.value="",r(w,E.offset,E.startLoc),b.key=w,r(b,E.offset,E.startLoc),{nextConsumeToken:v,node:b}}}return r(b,y.currentOffset(),y.currentPosition()),{node:b}}function p(y){const S=y.context(),b=S.currentType===1?y.currentOffset():S.offset,v=S.currentType===1?S.endLoc:S.startLoc,E=i(2,b,v);E.items=[];let w=null;do{const k=w||y.nextToken();switch(w=null,k.type){case 0:k.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Is(k)),E.items.push(o(y,k.value||""));break;case 5:k.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Is(k)),E.items.push(a(y,k.value||""));break;case 4:k.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Is(k)),E.items.push(l(y,k.value||""));break;case 6:k.value==null&&s(y,ye.UNEXPECTED_LEXICAL_ANALYSIS,S.lastStartLoc,0,Is(k)),E.items.push(c(y,k.value||""));break;case 7:{const R=f(y);E.items.push(R.node),w=R.nextConsumeToken||null;break}}}while(S.currentType!==13&&S.currentType!==1);const P=S.currentType===1?S.lastOffset:y.currentOffset(),L=S.currentType===1?S.lastEndLoc:y.currentPosition();return r(E,P,L),E}function h(y,S,b,v){const E=y.context();let w=v.items.length===0;const P=i(1,S,b);P.cases=[],P.cases.push(v);do{const L=p(y);w||(w=L.items.length===0),P.cases.push(L)}while(E.currentType!==13);return w&&s(y,ye.MUST_HAVE_MESSAGES_IN_PLURAL,b,0),r(P,y.currentOffset(),y.currentPosition()),P}function m(y){const S=y.context(),{offset:b,startLoc:v}=S,E=p(y);return S.currentType===13?E:h(y,b,v,E)}function _(y){const S=MT(y,tn({},t)),b=S.context(),v=i(0,b.offset,b.startLoc);return e&&v.loc&&(v.loc.source=y),v.body=m(S),t.onCacheKey&&(v.cacheKey=t.onCacheKey(y)),b.currentType!==13&&s(S,ye.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,y[b.offset]||""),r(v,S.currentOffset(),S.currentPosition()),v}return{parse:_}}function Is(t){if(t.type===13)return"EOF";const e=(t.value||"").replace(/\r?\n/gu,"\\n");return e.length>10?e.slice(0,9)+"…":e}function jT(t,e={}){const n={ast:t,helpers:new Set};return{context:()=>n,helper:r=>(n.helpers.add(r),r)}}function ug(t,e){for(let n=0;ndg(n)),t}function dg(t){if(t.items.length===1){const e=t.items[0];(e.type===3||e.type===9)&&(t.static=e.value,delete e.value)}else{const e=[];for(let n=0;no;function l(m,_){o.code+=m}function c(m,_=!0){const y=_?s:"";l(i?y+" ".repeat(m):y)}function u(m=!0){const _=++o.indentLevel;m&&c(_)}function d(m=!0){const _=--o.indentLevel;m&&c(_)}function f(){c(o.indentLevel)}return{context:a,push:l,indent:u,deindent:d,newline:f,helper:m=>`_${m}`,needIndent:()=>o.needIndent}}function qT(t,e){const{helper:n}=t;t.push(`${n("linked")}(`),ho(t,e.key),e.modifier?(t.push(", "),ho(t,e.modifier),t.push(", _type")):t.push(", undefined, _type"),t.push(")")}function GT(t,e){const{helper:n,needIndent:s}=t;t.push(`${n("normalize")}([`),t.indent(s());const i=e.items.length;for(let r=0;r1){t.push(`${n("plural")}([`),t.indent(s());const i=e.cases.length;for(let r=0;r{const n=St(e.mode)?e.mode:"normal",s=St(e.filename)?e.filename:"message.intl";e.sourceMap;const i=e.breakLineCode!=null?e.breakLineCode:n==="arrow"?";":` `,r=e.needIndent?e.needIndent:n!=="arrow",o=t.helpers||[],a=zT(t,{filename:s,breakLineCode:i,needIndent:r});a.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),a.indent(r),o.length>0&&(a.push(`const { ${eh(o.map(u=>`${u}: _${u}`),", ")} } = ctx`),a.newline()),a.push("return "),ho(a,t),a.deindent(r),a.push("}"),delete t.helpers;const{code:l,map:c}=a.context();return{ast:t,code:l,map:c?c.toJSON():void 0}};function ZT(t,e={}){const n=tn({},e),s=!!n.jit,i=!!n.minify,r=n.optimize==null?!0:n.optimize,a=UT(n).parse(t);return s?(r&&WT(a),i&&Gr(a),{ast:a,code:""}):(BT(a,n),YT(a,n))}/*! * core-base v11.1.1 * (c) 2025 kazuya kawaguchi @@ -43,14 +43,14 @@ * vue-i18n v11.1.1 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */const nA="11.1.1";function sA(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Qp().__INTLIFY_PROD_DEVTOOLS__=!1)}const ls={UNEXPECTED_RETURN_TYPE:Sx,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32};function Es(t,...e){return Iu(t,null,void 0)}const Kf=Xi("__translateVNode"),Xf=Xi("__datetimeParts"),Yf=Xi("__numberParts"),iA=Xi("__setPluralRules"),rA=Xi("__injectWithOption"),Zf=Xi("__dispose");function $a(t){if(!ue(t))return t;for(const e in t)if(_s(t,e))if(!e.includes("."))ue(t[e])&&$a(t[e]);else{const n=e.split("."),s=n.length-1;let i=t,r=!1;for(let o=0;o{if("locale"in a&&"resource"in a){const{locale:l,resource:c}=a;l?(o[l]=o[l]||ve(),Yl(c,o[l])):Yl(c,o)}else St(a)&&Yl(JSON.parse(a),o)}),i==null&&r)for(const a in o)_s(o,a)&&$a(o[a]);return o}function V0(t){return t.type}function oA(t,e,n){let s=ue(e.messages)?e.messages:ve();"__i18nGlobal"in n&&(s=F0(t.locale.value,{messages:s,__i18n:n.__i18nGlobal}));const i=Object.keys(s);i.length&&i.forEach(r=>{t.mergeLocaleMessage(r,s[r])});{if(ue(e.datetimeFormats)){const r=Object.keys(e.datetimeFormats);r.length&&r.forEach(o=>{t.mergeDateTimeFormat(o,e.datetimeFormats[o])})}if(ue(e.numberFormats)){const r=Object.keys(e.numberFormats);r.length&&r.forEach(o=>{t.mergeNumberFormat(o,e.numberFormats[o])})}}}function xg(t){return C(si,null,t,0)}const Ag="__INTLIFY_META__",Og=()=>[],aA=()=>!1;let Ig=0;function Ng(t){return(e,n,s,i)=>t(n,s,An()||void 0,i)}const lA=()=>{const t=An();let e=null;return t&&(e=V0(t)[Ag])?{[Ag]:e}:null};function H0(t={}){const{__root:e,__injectWithOption:n}=t,s=e===void 0,i=t.flatJson,r=Ic?ss:fu;let o=Pe(t.inheritLocale)?t.inheritLocale:!0;const a=r(e&&o?e.locale.value:St(t.locale)?t.locale:Pc),l=r(e&&o?e.fallbackLocale.value:St(t.fallbackLocale)||Ye(t.fallbackLocale)||se(t.fallbackLocale)||t.fallbackLocale===!1?t.fallbackLocale:a.value),c=r(F0(a.value,t)),u=r(se(t.datetimeFormats)?t.datetimeFormats:{[a.value]:{}}),d=r(se(t.numberFormats)?t.numberFormats:{[a.value]:{}});let f=e?e.missingWarn:Pe(t.missingWarn)||Nc(t.missingWarn)?t.missingWarn:!0,p=e?e.fallbackWarn:Pe(t.fallbackWarn)||Nc(t.fallbackWarn)?t.fallbackWarn:!0,h=e?e.fallbackRoot:Pe(t.fallbackRoot)?t.fallbackRoot:!0,m=!!t.fallbackFormat,_=Ne(t.missing)?t.missing:null,y=Ne(t.missing)?Ng(t.missing):null,S=Ne(t.postTranslation)?t.postTranslation:null,b=e?e.warnHtmlMessage:Pe(t.warnHtmlMessage)?t.warnHtmlMessage:!0,v=!!t.escapeParameter;const E=e?e.modifiers:se(t.modifiers)?t.modifiers:{};let w=t.pluralRules||e&&e.pluralRules,P;P=(()=>{s&&yg(null);const F={version:nA,locale:a.value,fallbackLocale:l.value,messages:c.value,modifiers:E,pluralRules:w,missing:y===null?void 0:y,missingWarn:f,fallbackWarn:p,fallbackFormat:m,unresolving:!0,postTranslation:S===null?void 0:S,warnHtmlMessage:b,escapeParameter:v,messageResolver:t.messageResolver,messageCompiler:t.messageCompiler,__meta:{framework:"vue"}};F.datetimeFormats=u.value,F.numberFormats=d.value,F.__datetimeFormatters=se(P)?P.__datetimeFormatters:void 0,F.__numberFormatters=se(P)?P.__numberFormatters:void 0;const G=Ux(F);return s&&yg(G),G})(),Uo(P,a.value,l.value);function k(){return[a.value,l.value,c.value,u.value,d.value]}const R=Je({get:()=>a.value,set:F=>{P.locale=F,a.value=F}}),B=Je({get:()=>l.value,set:F=>{P.fallbackLocale=F,l.value=F,Uo(P,a.value,F)}}),V=Je(()=>c.value),j=Je(()=>u.value),Z=Je(()=>d.value);function ot(){return Ne(S)?S:null}function q(F){S=F,P.postTranslation=F}function et(){return _}function at(F){F!==null&&(y=Ng(F)),_=F,P.missing=y}const kt=(F,G,pt,Et,qt,U)=>{k();let W;try{__INTLIFY_PROD_DEVTOOLS__,s||(P.fallbackContext=e?Hx():void 0),W=F(P)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(P.fallbackContext=void 0)}if(pt!=="translate exists"&&qe(W)&&W===Nu||pt==="translate exists"&&!W){const[K,it]=G();return e&&h?Et(e):qt(K)}else{if(U(W))return W;throw Es(ls.UNEXPECTED_RETURN_TYPE)}};function Kt(...F){return kt(G=>Reflect.apply(Tg,null,[G,...F]),()=>Gf(...F),"translate",G=>Reflect.apply(G.t,G,[...F]),G=>G,G=>St(G))}function Vt(...F){const[G,pt,Et]=F;if(Et&&!ue(Et))throw Es(ls.INVALID_ARGUMENT);return Kt(G,pt,tn({resolvedMessage:!0},Et||{}))}function Wt(...F){return kt(G=>Reflect.apply(vg,null,[G,...F]),()=>zf(...F),"datetime format",G=>Reflect.apply(G.d,G,[...F]),()=>gg,G=>St(G))}function pe(...F){return kt(G=>Reflect.apply(Eg,null,[G,...F]),()=>qf(...F),"number format",G=>Reflect.apply(G.n,G,[...F]),()=>gg,G=>St(G))}function be(F){return F.map(G=>St(G)||qe(G)||Pe(G)?xg(String(G)):G)}const zt={normalize:be,interpolate:F=>F,type:"vnode"};function Y(...F){return kt(G=>{let pt;const Et=G;try{Et.processor=zt,pt=Reflect.apply(Tg,null,[Et,...F])}finally{Et.processor=null}return pt},()=>Gf(...F),"translate",G=>G[Kf](...F),G=>[xg(G)],G=>Ye(G))}function dt(...F){return kt(G=>Reflect.apply(Eg,null,[G,...F]),()=>qf(...F),"number format",G=>G[Yf](...F),Og,G=>St(G)||Ye(G))}function ct(...F){return kt(G=>Reflect.apply(vg,null,[G,...F]),()=>zf(...F),"datetime format",G=>G[Xf](...F),Og,G=>St(G)||Ye(G))}function yt(F){w=F,P.pluralRules=w}function Ht(F,G){return kt(()=>{if(!F)return!1;const pt=St(G)?G:a.value,Et=$(pt),qt=P.messageResolver(Et,F);return mo(qt)||ts(qt)||St(qt)},()=>[F],"translate exists",pt=>Reflect.apply(pt.te,pt,[F,G]),aA,pt=>Pe(pt))}function Xt(F){let G=null;const pt=A0(P,l.value,a.value);for(let Et=0;Et{o&&(a.value=F,P.locale=F,Uo(P,a.value,l.value))}),qn(e.fallbackLocale,F=>{o&&(l.value=F,P.fallbackLocale=F,Uo(P,a.value,l.value))}));const lt={id:Ig,locale:R,fallbackLocale:B,get inheritLocale(){return o},set inheritLocale(F){o=F,F&&e&&(a.value=e.locale.value,l.value=e.fallbackLocale.value,Uo(P,a.value,l.value))},get availableLocales(){return Object.keys(c.value).sort()},messages:V,get modifiers(){return E},get pluralRules(){return w||{}},get isGlobal(){return s},get missingWarn(){return f},set missingWarn(F){f=F,P.missingWarn=f},get fallbackWarn(){return p},set fallbackWarn(F){p=F,P.fallbackWarn=p},get fallbackRoot(){return h},set fallbackRoot(F){h=F},get fallbackFormat(){return m},set fallbackFormat(F){m=F,P.fallbackFormat=m},get warnHtmlMessage(){return b},set warnHtmlMessage(F){b=F,P.warnHtmlMessage=F},get escapeParameter(){return v},set escapeParameter(F){v=F,P.escapeParameter=F},t:Kt,getLocaleMessage:$,setLocaleMessage:z,mergeLocaleMessage:st,getPostTranslationHandler:ot,setPostTranslationHandler:q,getMissingHandler:et,setMissingHandler:at,[iA]:yt};return lt.datetimeFormats=j,lt.numberFormats=Z,lt.rt=Vt,lt.te=Ht,lt.tm=A,lt.d=Wt,lt.n=pe,lt.getDateTimeFormat=Q,lt.setDateTimeFormat=T,lt.mergeDateTimeFormat=N,lt.getNumberFormat=H,lt.setNumberFormat=X,lt.mergeNumberFormat=nt,lt[rA]=n,lt[Kf]=Y,lt[Xf]=ct,lt[Yf]=dt,lt}const oh={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:t=>t==="parent"||t==="global",default:"parent"},i18n:{type:Object}};function cA({slots:t},e){return e.length===1&&e[0]==="default"?(t.default?t.default():[]).reduce((s,i)=>[...s,...i.type===ht?i.children:[i]],[]):e.reduce((n,s)=>{const i=t[s];return i&&(n[s]=i()),n},ve())}function U0(){return ht}const uA=fi({name:"i18n-t",props:tn({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:t=>qe(t)||!isNaN(t)}},oh),setup(t,e){const{slots:n,attrs:s}=e,i=t.i18n||ah({useScope:t.scope,__useComponent:!0});return()=>{const r=Object.keys(n).filter(d=>d!=="_"),o=ve();t.locale&&(o.locale=t.locale),t.plural!==void 0&&(o.plural=St(t.plural)?+t.plural:t.plural);const a=cA(e,r),l=i[Kf](t.keypath,a,o),c=tn(ve(),s),u=St(t.tag)||ue(t.tag)?t.tag:U0();return Ms(u,c,l)}}}),Pg=uA;function dA(t){return Ye(t)&&!St(t[0])}function j0(t,e,n,s){const{slots:i,attrs:r}=e;return()=>{const o={part:!0};let a=ve();t.locale&&(o.locale=t.locale),St(t.format)?o.key=t.format:ue(t.format)&&(St(t.format.key)&&(o.key=t.format.key),a=Object.keys(t.format).reduce((f,p)=>n.includes(p)?tn(ve(),f,{[p]:t.format[p]}):f,ve()));const l=s(t.value,o,a);let c=[o.key];Ye(l)?c=l.map((f,p)=>{const h=i[f.type],m=h?h({[f.type]:f.value,index:p,parts:l}):[f.value];return dA(m)&&(m[0].key=`${f.type}-${p}`),m}):St(l)&&(c=[l]);const u=tn(ve(),r),d=St(t.tag)||ue(t.tag)?t.tag:U0();return Ms(d,u,c)}}const fA=fi({name:"i18n-n",props:tn({value:{type:Number,required:!0},format:{type:[String,Object]}},oh),setup(t,e){const n=t.i18n||ah({useScope:t.scope,__useComponent:!0});return j0(t,e,L0,(...s)=>n[Yf](...s))}}),$g=fA;function pA(t,e){const n=t;if(t.mode==="composition")return n.__getInstance(e)||t.global;{const s=n.__getInstance(e);return s!=null?s.__composer:t.global.__composer}}function hA(t){const e=o=>{const{instance:a,value:l}=o;if(!a||!a.$)throw Es(ls.UNEXPECTED_ERROR);const c=pA(t,a.$),u=Rg(l);return[Reflect.apply(c.t,c,[...Lg(u)]),c]};return{created:(o,a)=>{const[l,c]=e(a);Ic&&t.global===c&&(o.__i18nWatcher=qn(c.locale,()=>{a.instance&&a.instance.$forceUpdate()})),o.__composer=c,o.textContent=l},unmounted:o=>{Ic&&o.__i18nWatcher&&(o.__i18nWatcher(),o.__i18nWatcher=void 0,delete o.__i18nWatcher),o.__composer&&(o.__composer=void 0,delete o.__composer)},beforeUpdate:(o,{value:a})=>{if(o.__composer){const l=o.__composer,c=Rg(a);o.textContent=Reflect.apply(l.t,l,[...Lg(c)])}},getSSRProps:o=>{const[a]=e(o);return{textContent:a}}}}function Rg(t){if(St(t))return{path:t};if(se(t)){if(!("path"in t))throw Es(ls.REQUIRED_VALUE,"path");return t}else throw Es(ls.INVALID_VALUE)}function Lg(t){const{path:e,locale:n,args:s,choice:i,plural:r}=t,o={},a=s||{};return St(n)&&(o.locale=n),qe(i)&&(o.plural=i),qe(r)&&(o.plural=r),[e,a,o]}function mA(t,e,...n){const s=se(n[0])?n[0]:{};(Pe(s.globalInstall)?s.globalInstall:!0)&&([Pg.name,"I18nT"].forEach(r=>t.component(r,Pg)),[$g.name,"I18nN"].forEach(r=>t.component(r,$g)),[Mg.name,"I18nD"].forEach(r=>t.component(r,Mg))),t.directive("t",hA(e))}const gA=Xi("global-vue-i18n");function bA(t={}){const e=Pe(t.globalInjection)?t.globalInjection:!0,n=new Map,[s,i]=yA(t),r=Xi("");function o(u){return n.get(u)||null}function a(u,d){n.set(u,d)}function l(u){n.delete(u)}const c={get mode(){return"composition"},async install(u,...d){if(u.__VUE_I18N_SYMBOL__=r,u.provide(u.__VUE_I18N_SYMBOL__,c),se(d[0])){const h=d[0];c.__composerExtend=h.__composerExtend,c.__vueI18nExtend=h.__vueI18nExtend}let f=null;e&&(f=TA(u,c.global)),mA(u,c,...d);const p=u.unmount;u.unmount=()=>{f&&f(),c.dispose(),p()}},get global(){return i},dispose(){s.stop()},__instances:n,__getInstance:o,__setInstance:a,__deleteInstance:l};return c}function ah(t={}){const e=An();if(e==null)throw Es(ls.MUST_BE_CALL_SETUP_TOP);if(!e.isCE&&e.appContext.app!=null&&!e.appContext.app.__VUE_I18N_SYMBOL__)throw Es(ls.NOT_INSTALLED);const n=_A(e),s=SA(n),i=V0(e),r=vA(t,i);if(r==="global")return oA(s,t,i),s;if(r==="parent"){let l=EA(n,e,t.__useComponent);return l==null&&(l=s),l}const o=n;let a=o.__getInstance(e);if(a==null){const l=tn({},t);"__i18n"in i&&(l.__i18n=i.__i18n),s&&(l.__root=s),a=H0(l),o.__composerExtend&&(a[Zf]=o.__composerExtend(a)),CA(o,e,a),o.__setInstance(e,a)}return a}function yA(t,e){const n=ru(),s=n.run(()=>H0(t));if(s==null)throw Es(ls.UNEXPECTED_ERROR);return[n,s]}function _A(t){const e=is(t.isCE?gA:t.appContext.app.__VUE_I18N_SYMBOL__);if(!e)throw Es(t.isCE?ls.NOT_INSTALLED_WITH_PROVIDE:ls.UNEXPECTED_ERROR);return e}function vA(t,e){return Ou(t)?"__i18n"in e?"local":"global":t.useScope?t.useScope:"local"}function SA(t){return t.mode==="composition"?t.global:t.global.__composer}function EA(t,e,n=!1){let s=null;const i=e.root;let r=wA(e,n);for(;r!=null;){const o=t;if(t.mode==="composition"&&(s=o.__getInstance(r)),s!=null||i===r)break;r=r.parent}return s}function wA(t,e=!1){return t==null?null:e&&t.vnode.ctx||t.parent}function CA(t,e,n){Ao(()=>{},e),Ka(()=>{const s=n;t.__deleteInstance(e);const i=s[Zf];i&&(i(),delete s[Zf])},e)}const kA=["locale","fallbackLocale","availableLocales"],Dg=["t","rt","d","n","tm","te"];function TA(t,e){const n=Object.create(null);return kA.forEach(i=>{const r=Object.getOwnPropertyDescriptor(e,i);if(!r)throw Es(ls.UNEXPECTED_ERROR);const o=Ae(r.value)?{get(){return r.value.value},set(a){r.value.value=a}}:{get(){return r.get&&r.get()}};Object.defineProperty(n,i,o)}),t.config.globalProperties.$i18n=n,Dg.forEach(i=>{const r=Object.getOwnPropertyDescriptor(e,i);if(!r||!r.value)throw Es(ls.UNEXPECTED_ERROR);Object.defineProperty(t.config.globalProperties,`$${i}`,r)}),()=>{delete t.config.globalProperties.$i18n,Dg.forEach(i=>{delete t.config.globalProperties[`$${i}`]})}}const xA=fi({name:"i18n-d",props:tn({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},oh),setup(t,e){const n=t.i18n||ah({useScope:t.scope,__useComponent:!0});return j0(t,e,R0,(...s)=>n[Xf](...s))}}),Mg=xA;sA();Lx(gx);Dx(Px);Mx(A0);if(__INTLIFY_PROD_DEVTOOLS__){const t=Qp();t.__INTLIFY__=!0,bx(t.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const Rd=t=>t&&typeof t=="object"&&!Array.isArray(t),Jf=(t,...e)=>{if(!e.length)return t;const n=e.shift();if(Rd(t)&&Rd(n))for(const s in n)Rd(n[s])?(t[s]||Object.assign(t,{[s]:{}}),Jf(t[s],n[s])):Object.assign(t,{[s]:n[s]});return Jf(t,...e)},AA=Jf({},{de:{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Alben"}]}]}},artists:{t:0,b:{t:2,i:[{t:4,k:"count"},{t:3,v:" Künstler"}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Hörbuch"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Hörbuch"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Hörbücher"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Autor"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Autor"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Autoren"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" canal"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" canaux"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Komponist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Komponist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Komponisten"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Genres"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Playlist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Playlisten"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Podcasts"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Stationen"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Track"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Track"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Tracks"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"Datei"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Stream"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},help:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen eines Podcasts führt zur Anlage einer RSS-Playlist, so kann OwnTone das Podcast-Abo verwalten."}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Verarbeite…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcast hinzufügen"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"Lade…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Stream hinzufügen"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Markiere als gespielt"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Entferne podcast"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Als nächstes hinzufügen"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Als nächstes hinzufügen"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Playlistname"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Speichern"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"Speichere…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Warteschlange als Playlist speichern"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Entfernen"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Remote paaren"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Pairing-Code"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Remote-Paarungs-Anfrage"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"Markiere als neu"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Markiere als gespielt"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"Alles neu einlesen"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"Nur RSS-Feeds neu einlesen"}},info:{t:0,b:{t:2,i:[{t:3}],s:"Suche nach neuen, gelöschten und veränderten Dateien"}},local:{t:0,b:{t:2,i:[{t:3}],s:"Nur lokale Bibliothek neu einlesen"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek wird neu eingelesen…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"Metadata von unveränderten Dateien neu einlesen"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Nur Spotify neu einlesen"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek neu einlesen"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"Deutsch"}},en:{t:0,b:{t:2,i:[{t:3}],s:"Englisch (English)"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"Französisch (Français)"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"Vereinfachtes Chinesisch (簡體中文)"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"Traditionelles Chinesisch (繁體中文)"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"Diesen Podcast dauerhaft aus der Bibliothek löschen?"},{t:4,k:"separator"},{t:3,v:"(Damit wird auch die RSS-Playliste "},{t:4,k:"name"},{t:3,v:" gelöscht)"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Entfernen"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Entferne podcast"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"Track kann nicht gespielt werden"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:", Beschränkungsgrund: "},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"Hörbuch"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musik"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"Über"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP-stream-Fehler: Stream kann nicht geladen werden oder wurde wg. Netzwerkfehler gestopt"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP-stream"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Lautstärke"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musik"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Suche"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"Einstellungen"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek neu einlesen"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"Oberfläche erstellt mit "},{t:4,k:"bulma"},{t:3,v:", "},{t:4,k:"mdi"},{t:3,v:", "},{t:4,k:"vuejs"},{t:3,v:", "},{t:4,k:"axios"},{t:3,v:" und "},{t:4,k:"others"},{t:3,v:"."}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"Compiliert mit Unterstützung von "},{t:4,k:"options"},{t:3,v:"."}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek"}},more:{t:0,b:{t:2,i:[{t:3}],s:"mehr"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}},version:{t:0,b:{t:2,i:[{t:3,v:"Version "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Singles und Alben angezeigt, die nur in Playlisten enthalten sind."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Singles angezeigt"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Alben angezeigt, die nur in der Spotify-Bibliothek enthalten sind."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Spotify-Alben"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Künstler › Name"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Künstler › Erscheinungsdatum"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich hinzugefügt"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich erschienen"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung wird kein Inhalt angezeigt, der nur in der Spotify-Bibliothek enthalten ist."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Spotify-Inhalt"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Erscheinungsdatum"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Namen"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich hinzugefügt"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Singles und Alben angezeigt, die nur in Playlisten enthalten sind."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Singles angezeigt"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Alben angezeigt, die nur in der Spotify-Bibliothek enthalten sind."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Künstler auf Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Autoren"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"Autoren"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Zeige mehr"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich hinzugefügt"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich gespielt"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},history:{t:0,b:{t:2,i:[{t:3}],s:"Verlauf"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"Tracks durch Auswählen aus der Bibliothek anfügen"}},live:{t:0,b:{t:2,i:[{t:3}],s:"Live"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Deine Playliste ist leer."}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" Tracks"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Entfernen"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"Diesen Podcast dauerhaft aus der Bibliothek löschen?"},{t:4,k:"separator"},{t:3,v:"(Damit wird auch die RSS-Playliste "},{t:4,k:"name"},{t:3,v:" gelöscht)"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Entferne podcast"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Alle abgespielten markieren"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"Neue Episoden"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Stream hinzufügen"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"Alle entfernen"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"Bearbeiten"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"Vorherige verbergen"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Speichern"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Warteschlange"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"Ausdrücken"}},help:{t:0,b:{t:2,i:[{t:3,v:"Tip: Du kannst mit einer Smart-Playlist-Abfrage-Sprache nach "},{t:4,k:"help"},{t:3,v:" suchen wenn Du dem Ausdruck ein "},{t:4,k:"query"},{t:3,v:" voranstellst."}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"Keine Ergebnisse gefunden"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Suche"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige das Album"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Alben"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Künstler"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Künstler"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige das Buch"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Hörbücher"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Komponist"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Komponisten"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige die Playlist"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Playlisten"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Podcast"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Podcasts"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Track"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Tracks"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone verarbeitet PNG- und JPEG-Artwork, welches in einer eigenen Datei in der Bibliothek, in die Dateien eingebettet oder online von Radiostationen bereitgestellt werden kann."}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"Zusätzlich kann auf folgende Artwork-Anbieter zugegriffen werden:"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"Zeige Cover-Artwork in der Albumliste"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"Bereitgestellte Artwork von Radiostationen ignorieren"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Keine aktive Pairing-Anfrage"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Pairing-Code"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"Remote-Pairing-Anfrage von "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Pairing Remote"}},send:{t:0,b:{t:2,i:[{t:3}],s:"Senden"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"Wenn der Laufsprecher PIN-basiertes Pairing verlangt, aktiviere ihn hier und gib dann den hier PIN an, der am Lautsprecher angezeigt wird."}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Lautsprecher-Pairing und Geräteverifikation"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Verifikationscode"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Verifizieren"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Sprache"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musik"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"Wenn mehr Dateien ausgewählt werden, als der Bildschirm anzeigen kann, verschwindet das Burger-Menü."}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Wähle hier die Einträge des oberen Navigationsmenüs "}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Navigationsmenüs"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"Aktuell läuft-Seite"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"Beschränkte die Zahl der Alben"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich hinzugefügt-Seite"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Suche"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"Komma getrennte Liste der Genres, für die der Komponist angezeigt werden soll."},{t:5,i:0},{t:3,v:"Leer lassen, um den Komponisten immer anzuzeigen."},{t:5,i:0},{t:3,v:'Der Genre-Tag des aktuellen Tracks wird abgeglichen als Teil-String des Genre-Tags. Z.B. "classical, soundtrack" wird den Komponisten beim Genre-Tag "Contemporary Classical" anzeigen'}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"Zeige den Komponisten für die aufgelisteten Genres an"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"Wenn aktiviert, wird der Komponist angezeigt."}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"Komponisten anzeigen"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"Dateipfad anzeigen"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Melde Dich mit Deinem Last.fm-Benutzernamen und Passwort an, um Scrobbeln zu aktivieren"}},info:{t:0,b:{t:2,i:[{t:3}],s:"OwnTone wird den Benutzernamen und das Passwort von last.fm nicht speichern, nur den Sitzungs-Schlüssel. Dieser läuft nicht ab."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone wurde ohne Unterstützung für Last.fm erstellt."}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone wurde entweder ohne Unterstützung für Spotify erstellt oder libspotify ist nicht installiert."}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"Angemeldet als "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"Spotify Premium Abo erforderlich. Zugriff auf die Spotify Web-Api ermöglicht scannen der Spotify-Blibliothek. Erforderliche scopes sind: "}},user:{t:0,b:{t:2,i:[{t:3}],s:"Zugriff gestattet für "}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"Authorisiere Web-API-Zugriff"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Zugriff auf die Spotify Web-API gestatten"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"Bitte den Zugriff der Web-API durch setzen folgender Zugriffsrechte für OwnTone: "}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"Einloggen"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Ausloggen"}},password:{t:0,b:{t:2,i:[{t:3}],s:"Passwort"}},username:{t:0,b:{t:2,i:[{t:3}],s:"Benutzername"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},general:{t:0,b:{t:2,i:[{t:3}],s:"Allgemein"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Online-Services"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"Fernbedienungen und Ausgänge"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Ausgezeichnete Playlisten"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"Neuvorstellung"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Zeige mehr"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"Keine Ergebnisse gefunden"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Suche"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige das Album"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Alben"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Künstler"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Künstler"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige die Playlist"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Playlisten"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Track"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Tracks"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"Ordner"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"Einfache"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"Intelligente"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"Verlauf löschen"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"Wiedergabe anhalten"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Wiedergeben"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"Alle Tracks wiederholen"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"Tracks einmal lesen"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"Aktuellen Track wiederholen"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"Rückwärts im Track suchen"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"Vorwärts im Track suchen"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Tracks zufällig wiedergeben"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"Tracks in Reihenfolge wiedergeben"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"Zum vorherigen Track springen"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"Zum nächsten Track springen"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"Wiedergabe stoppen"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"Liedtexte anzeigen/verbergen"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"Hinzugefügt am"}},album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Album-Künstler"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"Kommentar"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"Komponist"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"Dauer"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"Genre"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"Besitzer"}},path:{t:0,b:{t:2,i:[{t:3}],s:"Pfad"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"Spielzeit"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"Popularität / Followers"}},position:{t:0,b:{t:2,i:[{t:3}],s:"Disc / Track"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"Qualität"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Erscheinungsdatum"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}},type:{t:0,b:{t:2,i:[{t:3}],s:"Art"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"Neu eingelesen"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"Laufzeit"}},year:{t:0,b:{t:2,i:[{t:3}],s:"Jahr"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Fehler bei Verbindung zum OwnTone-Server"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"Anfrage gescheitert (Status: "},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"Warteschlange zu Playlist "},{t:4,k:"name"},{t:3,v:" gesichert"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Track an die Abspielliste angehängt"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Tracks an die Abspielliste angehängt"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"Warteschlange ist leer"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"Heute"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"Letzte Woche"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Letzer Monat"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Unbestimmt"}}}}},{en:{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" albums"}]}]}},artists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" artist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" artist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" artists"}]}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" audiobook"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" audiobook"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" audiobooks"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" author"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" author"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" authors"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" channel"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" channels"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" composer"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" composer"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" composers"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" genres"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" playlist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" playlist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" playlists"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" podcasts"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" stations"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" track"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" track"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" tracks"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"File"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Stream"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},help:{t:0,b:{t:2,i:[{t:3}],s:"Adding a podcast includes creating an RSS playlist, that will allow OwnTone to manage the podcast subscription."}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Processing…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Add podcast"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"Loading…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Add stream"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Mark as played"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Remove podcast"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Add Next"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Add Next"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Playlist name"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Save"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"Saving…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Save queue to playlist"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:6,k:{t:7,v:"count.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Remove"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Pair Remote"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Pairing code"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Remote pairing request"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"Mark as new"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Mark as played"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:6,k:{t:7,v:"count.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"Update everything"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"Only update RSS feeds"}},info:{t:0,b:{t:2,i:[{t:3}],s:"Scan for new, deleted and modified files"}},local:{t:0,b:{t:2,i:[{t:3}],s:"Only update local library"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"Library update in progress…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"Rescan metadata of unmodified files"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Rescan"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Only update Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Update library"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"German (Deutsch)"}},en:{t:0,b:{t:2,i:[{t:3}],s:"English"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"French (Français)"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"Simplified Chinese (簡體中文)"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"Traditional Chinese (繁體中文)"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"Permanently remove this podcast from your library?"},{t:4,k:"separator"},{t:3,v:"(This will also remove the RSS playlist "},{t:4,k:"name"},{t:3,v:")"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Remove"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Remove podcast"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"Track is not playable"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:", restriction reason: "},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"Audiobook"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Music"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"About"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP stream error: failed to load stream or stopped loading due to network problem"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP stream"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Volume"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Files"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Music"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Search"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"Settings"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Update Library"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"Web interface built with "},{t:4,k:"bulma"},{t:3,v:", "},{t:4,k:"mdi"},{t:3,v:", "},{t:4,k:"vuejs"},{t:3,v:", "},{t:4,k:"axios"},{t:3,v:" and "},{t:4,k:"others"},{t:3,v:"."}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"Compiled with support for "},{t:4,k:"options"},{t:3,v:"."}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"Library"}},more:{t:0,b:{t:2,i:[{t:3}],s:"more"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Update"}},version:{t:0,b:{t:2,i:[{t:3,v:"Version "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides singles and albums with tracks that only appear in playlists."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Hide singles"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides albums that only appear in your Spotify library."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Hide albums from Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Artist › Name"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Artist › Release date"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Recently added"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"Recently released"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides the content only appearing in your Spotify library."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Hide the content from Spotify"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Release date"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Recently added"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides artists that only appear on singles or playlists."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Hide singles"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides artists that only appear in your Spotify library."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Hide artists from Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Authors"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"Authors"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Files"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Show more"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"Recently added"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"Recently played"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},history:{t:0,b:{t:2,i:[{t:3}],s:"History"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"Add some tracks by browsing your library"}},live:{t:0,b:{t:2,i:[{t:3}],s:"Live"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Your play queue is empty"}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" tracks"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Remove"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"Permanently remove this podcast from your library?"},{t:4,k:"separator"},{t:3,v:"(This will also remove the RSS playlist "},{t:4,k:"name"},{t:3,v:")"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Remove podcast"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Mark All Played"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"New Episodes"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Update"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Add stream"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"Clear"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"Edit"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"Hide previous"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Save"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Queue"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"expression"}},help:{t:0,b:{t:2,i:[{t:3,v:"Tip: you can search by a smart playlist query language "},{t:4,k:"help"},{t:3,v:" if you prefix it with "},{t:4,k:"query"},{t:3,v:"."}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"No results found"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Search"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the album"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" albums"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the artist"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" artists"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the audiobook"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" audiobooks"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the composer"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" composers"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the playlist"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" playlists"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the podcast"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" podcasts"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the track"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" tracks"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Library"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone supports PNG and JPEG artwork which is either placed as separate image files in the library, embedded in the media files or made available online by radio stations."}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"In addition to that, you can enable fetching artwork from the following artwork providers:"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"Show cover artwork in album list"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"Ignore artwork provided by radio stations"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"No active pairing request."}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Pairing code"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"Remote pairing request from "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Remote Pairing"}},send:{t:0,b:{t:2,i:[{t:3}],s:"Send"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"If your speaker requires pairing then activate it below and enter the PIN that it displays."}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Speaker pairing and device verification"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Verification code"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Verify"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Files"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Language"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Music"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"If you select more items than can be shown on your screen then the burger menu will disappear."}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Select the top navigation bar menu items"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Navigation Bar"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"Now playing page"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"Limit the number of albums displayed"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"Recently added page"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Search"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"Comma-separated list of genres, for which the composer must be displayed."},{t:5,i:0},{t:3,v:"Leave empty to always show the composer."},{t:5,i:0},{t:3,v:'The genre tag of the current track is matched by checking, if one of the defined genres are included. For example setting to "classical, soundtrack" will show the composer for tracks with a genre tag of "Contemporary Classical"'}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"Show composer only for listed genres"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"If enabled, the composer of the current playing track is displayed"}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"Show composer"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"Show filepath"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Login with your Last.fm username and password to enable scrobbling"}},info:{t:0,b:{t:2,i:[{t:3}],s:"OwnTone will not store your Last.fm username/password, only the session key. The session key does not expire."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone was built without support for Last.fm."}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone was either built without support for Spotify or libspotify is not installed."}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"Logged in as "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"You must have a Spotify premium account. Access to the Spotify Web API enables scanning of your Spotify library. Required scopes are: "}},user:{t:0,b:{t:2,i:[{t:3}],s:"Access granted for "}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"Authorize Web API access"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Grant access to the Spotify Web API"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"Please reauthorize Web API access to grant OwnTone the following additional access rights: "}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"Login"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Logout"}},password:{t:0,b:{t:2,i:[{t:3}],s:"Password"}},username:{t:0,b:{t:2,i:[{t:3}],s:"Username"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},general:{t:0,b:{t:2,i:[{t:3}],s:"General"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Online Services"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"Remotes and Outputs"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Featured Playlists"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"New Releases"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Show More"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"No results found"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Search"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the album"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" albums"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the artist"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" artists"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the playlist"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" playlists"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the track"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" tracks"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"Folder"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"Plain"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"Smart"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"Clear history"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"Pause"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"Repeat all tracks"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"Read tracks once"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"Repeat current track"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"Seek backward in the track"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"Seek forward in the track"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Play tracks randomly"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"Play tracks in order"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"Skip to previous track"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"Skip to next track"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"Stop"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"Toggle lyrics"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"Added On"}},album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Album Artist"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"Artist"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"Comment"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"Composer"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"Duration"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"Genre"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"Owner"}},path:{t:0,b:{t:2,i:[{t:3}],s:"Path"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"Playtime"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"Popularity / Followers"}},position:{t:0,b:{t:2,i:[{t:3}],s:"Disc / Track"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"Quality"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Release Date"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}},type:{t:0,b:{t:2,i:[{t:3}],s:"Type"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"Updated"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"Uptime"}},year:{t:0,b:{t:2,i:[{t:3}],s:"Year"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Failed to connect to OwnTone server"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"Request failed (status: "},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"Queue saved to playlist "},{t:4,k:"name"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" track appended to the queue"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" tracks appended to the queue"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"Queue is empty"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"Today"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"Last week"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Last month"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Undefined"}}}}},{fr:{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" albums"}]}]}},artists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" artiste"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" artiste"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" artistes"}]}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" livre audio"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" livre audio"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" livres audio"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" auteur"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" auteur"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" auteurs"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" canal"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" canaux"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" compositeur"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" compositeur"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" compositeurs"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" genres"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" liste de lecture"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" liste de lecture"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" listes de lecture"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" podcasts"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" stations"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" piste"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" piste"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" pistes"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"Fichier"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Flux"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},help:{t:0,b:{t:2,i:[{t:3}],s:"L’ajout d’un podcast inclut la création d’une liste de lecture RSS, qui permettra à OwnTone de gérer l’abonnement au podcast."}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-du-flux-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Traitement en cours…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter un podcast"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"Chargement…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-du-flux"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter un flux"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme lu"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Supprimer le podcast"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter ensuite"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter ensuite"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Nom de la liste de lecture"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrer"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrement en cours…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrer la file d’attente dans une liste de lecture"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Jumeler la télécommande"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Code de jumelage"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Demande de jumelage de télécommande"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme nouveau"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme lu"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"Tout actualiser"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser uniquement les flux RSS"}},info:{t:0,b:{t:2,i:[{t:3}],s:"Recherche les fichiers ajoutés, supprimés et modifiés"}},local:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser uniquement la bibliothèque locale"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"Actualisation de la bibliothèque en cours…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"Analyser les métadonnées des fichiers non modifiés"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Analyser"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser uniquement Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser la bibliothèque"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"Allemand (Deutsch)"}},en:{t:0,b:{t:2,i:[{t:3}],s:"Anglais (English)"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"Français"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"Chinois simplifié (簡體中文)"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"Chinois traditionnel (繁體中文)"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"Supprimer définitivement ce podcast de votre bibliothèque ?"},{t:4,k:"separator"},{t:3,v:"(Cela supprimera également la liste de lecture RSS "},{t:4,k:"name"},{t:3,v:")"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Supprimer le podcast"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"La piste ne peut pas être lue"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:", raison de la restriction : "},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"Livre audio"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musique"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"À propos"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"Erreur du flux HTTP : échec du chargement du flux ou arrêt du chargement en raison d’un problème réseau"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"Flux HTTP"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Volume"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musique"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"Réglages"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Actualiser la bibliothèque"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"Interface utilisateur construite avec "},{t:4,k:"bulma"},{t:3,v:", "},{t:4,k:"mdi"},{t:3,v:", "},{t:4,k:"vuejs"},{t:3,v:", "},{t:4,k:"axios"},{t:3,v:" et "},{t:4,k:"others"},{t:3,v:"."}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"Compilé avec les options "},{t:4,k:"options"},{t:3,v:"."}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothèque"}},more:{t:0,b:{t:2,i:[{t:3}],s:"plus"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser"}},version:{t:0,b:{t:2,i:[{t:3,v:"Version "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filtrer"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les singles et les albums dont les pistes n’apparaissent que dans les listes de lecture."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les singles"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les albums qui n’apparaissent que dans votre bibliothèque Spotify."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les albums de Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Artiste › Nom"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Artiste › Date de sortie"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Ajouts récents"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"Sorties récentes"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filtrer"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque le contenu qui n’apparaît que dans votre bibliothèque Spotify."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Masquer le contenu de Spotify"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Date de sortie"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filtrer"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Ajouts récents"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les artistes qui n’apparaissent que dans des singles ou des listes de lecture."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les singles"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les artistes qui n’apparaissent que dans votre bibliothèque Spotify."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les artistes de Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Auteurs"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"Auteurs"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Afficher plus"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"Ajouts récents"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"Lectures récentes"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},history:{t:0,b:{t:2,i:[{t:3}],s:"Historique"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"Ajoutez des pistes en parcourant votre bibliothèque"}},live:{t:0,b:{t:2,i:[{t:3}],s:"En direct"}},title:{t:0,b:{t:2,i:[{t:3}],s:"La file d’attente est vide"}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" pistes"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"Supprimer ce podcast de manière permanente de la bibliothèque ?"},{t:4,k:"separator"},{t:3,v:"(Cela supprimera également la liste de lecture RSS "},{t:4,k:"name"},{t:3,v:")"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Supprimer le podcast"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme lus"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"Nouveaux épisodes"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter un flux"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"Effacer"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"Éditer"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"Masquer l’historique"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrer"}},title:{t:0,b:{t:2,i:[{t:3}],s:"File d’attente"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"expression"}},help:{t:0,b:{t:2,i:[{t:3,v:"Astuce : vous pouvez effectuer une recherche avec une "},{t:4,k:"help"},{t:3,v:" du langage de requête de liste de lecture intelligente en préfixant votre requête avec "},{t:4,k:"query"}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"Aucun résultat trouvé"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher l’album"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" albums"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher l’artiste"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" artistes"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher le livre audio"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" livres audio"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher le compositeur"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" compositeurs"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher la liste de lecture"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" listes de lecture"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher le podcast"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" podcasts"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher la piste"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"n"},{t:3,v:" pistes"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Pistes"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothèque"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"Illustrations"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone prend en charge les illustrations au format PNG et JPEG qui sont soit placées dans la bibliothèque en tant que fichiers image séparés, soit intégrées dans les fichiers média, soit mises à disposition en ligne par les stations de radio."}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"En outre, vous pouvez activer la récupération des illustrations à partir des fournisseurs d’illustrations suivants :"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"Afficher les illustrations dans la liste d’albums"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"Ignorer les illustrations fournies par les stations de radio"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Aucune demande de jumelage active."}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Code de jumelage"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"Demande de jumelage de télécommande "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Jumelage de télécommande"}},send:{t:0,b:{t:2,i:[{t:3}],s:"Envoyer"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"Si votre enceinte nécessite un jumelage, activez-la ci-dessous et entrez le code PIN qu’elle affiche."}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Jumelage d’enceinte et vérification d’appareil"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Code de vérification"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Vérifier"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Langue"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musique"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"Si vous sélectionnez plus d’éléments que ce qui peut être affiché sur votre écran, le menu disparaîtra."}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Sélectionnez les éléments de la barre de navigation supérieure"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Barre de navigation"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"Page « En cours de lecture »"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"Limiter le nombre d’albums affichés"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"Page « Ajouts récents »"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"Liste de genres séparés par des virgules pour lesquels le compositeur doit être affiché."},{t:5,i:0},{t:3,v:"Laissez vide pour toujours afficher le compositeur."},{t:5,i:0},{t:3,v:'L’étiquette de genre de la piste actuelle est comparée en vérifiant si l’un des genres définis est inclus. Par exemple, en choisissant "classique, bande sonore", le compositeur pour les pistes dont l’étiquette de genre est "classique contemporain" sera affiché.'}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le compositeur uniquement pour les genres listés"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, le compositeur de la piste en cours de lecture est affiché"}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le compositeur"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le chemin du fichier"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Connectez-vous avec votre nom d’utilisateur et votre mot de passe Last.fm pour activer le scrobbling."}},info:{t:0,b:{t:2,i:[{t:3}],s:"Le nom d’utilisateur et le mot de passe Last.fm ne sont pas enregistrés, uniquement la clé de session. La clé de session n’expire pas."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"L’option Last.fm n’est pas présente."}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"L’option Spotify n’est pas présente."}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"Connecté en tant que "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"Vous devez posséder un compte Spotify Premium. L’accès à l’API de Spotify permet l’analyse de votre bibliothèque Spotify. Les champs d’application requis sont les suivants :"}},user:{t:0,b:{t:2,i:[{t:3}],s:"Accès autorisé pour "}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"Autoriser l’accès à l’API"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Accordez l’accès à l’API de Spotify"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"Veuillez autoriser à nouveau l’accès à l’API pour accorder à OwnTone les droits d’accès supplémentaires suivants :"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"Se connecter"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Se déconnecter"}},password:{t:0,b:{t:2,i:[{t:3}],s:"Mot de passe"}},username:{t:0,b:{t:2,i:[{t:3}],s:"Nom d’utilisateur"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Illustrations"}},general:{t:0,b:{t:2,i:[{t:3}],s:"Général"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Services en ligne"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"Télécommandes et sorties"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture en vedette"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"Nouvelle sorties"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Afficher plus"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"Aucun résultat trouvé"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher l’album"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" albums"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher l’artiste"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" artistes"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher la liste de lecture"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" listes de lecture"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher la piste"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" pistes"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Pistes"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"Dossier"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"Simple"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"Intelligente"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"Effacer l’historique"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"Mettre la lecture en pause"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"Répéter toutes les pistes"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"Lire les pistes une fois"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"Répéter la piste en cours"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"Reculer dans la piste"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"Avancer dans la piste"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lire les pistes aléatoirement"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"Lire les pistes dans l’ordre"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"Reculer à la piste précédente"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"Avancer à la piste suivante"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"Arrêter la lecture"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"Voir/Cacher les paroles"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"Ajouté le"}},album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Artiste de l’album"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"Artiste"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"Commentaire"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"Compositeur"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"Durée"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"Genre"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"Propriétaire"}},path:{t:0,b:{t:2,i:[{t:3}],s:"Emplacement"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"Temps de lecture"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"Popularité / Abonnements"}},position:{t:0,b:{t:2,i:[{t:3}],s:"Disque / Piste"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"Qualité"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Date de sortie"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Pistes"}},type:{t:0,b:{t:2,i:[{t:3}],s:"Type"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"Mise à jour"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"Temps de fonctionnement"}},year:{t:0,b:{t:2,i:[{t:3}],s:"Année"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Échec de connexion au serveur"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"La requête a échoué (status: "},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"La file d’attente enregistrée dans la liste de lecture "},{t:4,k:"name"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" piste ajoutée à la file d’attente"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" pistes ajoutées à la file d’attente"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"La file d’attente est vide"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"Aujourd’hui"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"La semaine dernière"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Le mois dernier"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Indéfini"}}}}},{"zh-CN":{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 张专辑"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 张专辑"}]}]}},artists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位艺人"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位艺人"}]}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个有声读物"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个有声读物"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作者"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作者"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" canal"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" canaux"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作曲家"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作曲家"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个流派"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个流派"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个播放列表"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个播放列表"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个播客"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个播客"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个电台"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个电台"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 只曲目"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 只曲目"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},url:{t:0,b:{t:2,i:[{t:3}],s:"链接"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"流"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},help:{t:0,b:{t:2,i:[{t:3}],s:"添加一个可生成播放列表的播客RSS链接,这将允许OwnTone管理订阅"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"处理中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"添加播客"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"加载中…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},title:{t:0,b:{t:2,i:[{t:3}],s:"添加流"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"标记为已播"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除播客"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"播放列表名称"}},save:{t:0,b:{t:2,i:[{t:3}],s:"保存"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"保存中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"保存播放清单到列表"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"遥控配对"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配对码"}},title:{t:0,b:{t:2,i:[{t:3}],s:"请求遥控配对"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"标记为最新"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"标记为已播放"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"更新所有内容"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"仅更新RSS订阅内容"}},info:{t:0,b:{t:2,i:[{t:3}],s:"扫描新的、删除的和修改的文件"}},local:{t:0,b:{t:2,i:[{t:3}],s:"仅更新本地资料库"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"正在更新本地资料库…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"重新扫描未修改文件的元数据"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"重新扫描"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"仅更新Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"更新资料库"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"德语 (Deutsch)"}},en:{t:0,b:{t:2,i:[{t:3}],s:"英语 (English)"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"法语 (Français)"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"简体中文"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"繁體中文"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"从资料库中永久移除该播客吗?"},{t:4,k:"separator"},{t:3,v:"(这也将移除RSS播放列表 "},{t:4,k:"name"},{t:3,v:")"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除播客"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"曲目无法播放"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:",被限制原因:"},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音乐"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"播客"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"关于"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP流错误:流载入失败或者由于网络原因无法载入"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP流"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"音量"}},files:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音乐"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"播客"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"广播电台"}},search:{t:0,b:{t:2,i:[{t:3}],s:"搜索"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"设置"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"更新资料库"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"界面贡献者包括 "},{t:4,k:"bulma"},{t:3,v:","},{t:4,k:"mdi"},{t:3,v:","},{t:4,k:"vuejs"},{t:3,v:","},{t:4,k:"axios"},{t:3,v:" 和 "},{t:4,k:"others"}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"编译支持来自于 "},{t:4,k:"options"}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"资料库"}},more:{t:0,b:{t:2,i:[{t:3}],s:"更多"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}},version:{t:0,b:{t:2,i:[{t:3,v:"版本 "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"筛选"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏仅在播放列表出现的单曲和专辑"}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隐藏单曲"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏仅在Spotify资料库出现的专辑"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隐藏来自Spotify的专辑"}},title:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"艺人 › 名称"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"艺人 › 发行日期"}},title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近添加"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"最近发行"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"筛选"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏只出现在Spotify库中的内容"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隐藏来自Spotify的内容"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"评级"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"发行日期"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"筛选"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近添加"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏仅在播放列表出现的单曲和专辑"}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隐藏单曲"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏仅在Spotify资料库出现的专辑"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隐藏来自Spotify的艺人"}},title:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"作者"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"作者"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"评级"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},title:{t:0,b:{t:2,i:[{t:3}],s:"文件"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"评级"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"流派"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"显示更多"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"最近添加"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"最近播放"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},history:{t:0,b:{t:2,i:[{t:3}],s:"历史"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"浏览资料库添加曲目"}},live:{t:0,b:{t:2,i:[{t:3}],s:"直播"}},title:{t:0,b:{t:2,i:[{t:3}],s:"播放清单是空的"}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" 曲目"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"从资料库中永久移除该播客?"},{t:4,k:"separator"},{t:3,v:"(这也将移除该播客RSS列表 "},{t:4,k:"name"},{t:3,v:")"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除播客"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"全部标记为已播放"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"最新单集"}},title:{t:0,b:{t:2,i:[{t:3}],s:"播客"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"添加流"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"清除"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"编辑"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"隐藏历史"}},save:{t:0,b:{t:2,i:[{t:3}],s:"保存"}},title:{t:0,b:{t:2,i:[{t:3}],s:"清单"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"广播电台"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"表达式"}},help:{t:0,b:{t:2,i:[{t:3,v:"提示:如果您使用 "},{t:4,k:"query"},{t:3,v:" 前缀,则可以通过智能播放列表查询语言 "},{t:4,k:"help"},{t:3,v:" 进行搜索"}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"未找到结果"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"搜索"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"播客"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示专辑"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个专辑"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示艺人"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 位艺人"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示有声书"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 本有声书"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示作曲家"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 位作曲家"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示播放列表"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个播放列表"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示播客"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个播客"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示曲目"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 只曲目"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"资料库"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone支持PNG和 JPEG封面,这些封面可以作为单独的图像文件放置在库中或嵌入到媒体文件中,也可以通过广播电台在线提供"}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"除此之外,您还可以从以下素材提供者获取封面:"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"在专辑列表中显示封面艺术作品"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"忽略广播电台提供的作品"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"没有活跃的配对请求"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配对代码"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"远程配对请求来自于 "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"遥控配对"}},send:{t:0,b:{t:2,i:[{t:3}],s:"发送"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您的扬声器需要配对,请在下面输入它显示的 PIN以激活"}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"扬声器配对和设备验证"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"验证码"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"验证"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},files:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},language:{t:0,b:{t:2,i:[{t:3}],s:"语言"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音乐"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您选择的项目多于屏幕上可以显示的项目,则侧边栏菜单将会消失"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"选择顶部导航栏菜单项"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"导航条"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"“正在播放”页面"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"播客"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"广播电台"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"限制显示的相册数量"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"“最近添加”页面"}},search:{t:0,b:{t:2,i:[{t:3}],s:"搜索"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"以逗号分隔的流派列表,必须显示作曲家所属的流派"},{t:5,i:0},{t:3,v:"留空以始终显示作曲家"},{t:5,i:0},{t:3,v:"通过检查是否包含定义的流派之一来匹配当前曲目的流派标签。例如,设置为“古典、原声带”将显示流派标签为“当代古典”的曲目的作曲家"}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"仅显示列出的流派的作曲家"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"如果启用,则会显示当前播放曲目的作曲家"}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"显示作曲家"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"显示文件路径"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"使用您的 Last.fm 用户名和密码登录以启用记录功能"}},info:{t:0,b:{t:2,i:[{t:3}],s:"OwnTone不会存储您的 Last.fm 用户名/密码,仅存储会话密钥。会话密钥不会过期"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone的构建没有来自Last.fm的官方支持"}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone的构建没有来自 Spotify 官方的支持,也未安装 libspotify"}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"登录为 "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"您必须拥有 Spotify付费帐户。访问 Spotify Web API 可以扫描您的 Spotify库。所需范围是:"}},user:{t:0,b:{t:2,i:[{t:3}],s:"授予访问权限"}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"授权 Web API 访问"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"授予对 Spotify Web API 的访问权限"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"请重新授权 Web API 访问权限,以授予 OwnTone 以下附加访问权限:"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"登入"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"退出"}},password:{t:0,b:{t:2,i:[{t:3}],s:"密码"}},username:{t:0,b:{t:2,i:[{t:3}],s:"用户名"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},general:{t:0,b:{t:2,i:[{t:3}],s:"概览"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"在线服务"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"遥控和输出"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"特色列表"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"最新发行"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"显示更多"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"未找到结果"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"搜索"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示专辑"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个专辑"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示艺人"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 位艺人"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示播放列表"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个播放列表"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示曲目"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 只曲目"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"文件夹"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"简单"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"智能"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"清除历史"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"暂停"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"重复播放所有曲目"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"所有曲目仅播放一遍"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"重复当前曲目"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"在当前曲目后退"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"在当前曲目前进"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放曲目"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"按顺序播放曲目"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"播放上一首"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"播放下一首"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"停止"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"显示/隐藏歌词"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"添加时间"}},album:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"张专辑"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"专辑艺人"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"专辑艺人"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"评论"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"时长"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"所有者"}},path:{t:0,b:{t:2,i:[{t:3}],s:"路径"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"总播放时长"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"流行度 / 粉丝数"}},position:{t:0,b:{t:2,i:[{t:3}],s:"盘符 / 曲目"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"质量"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"评级"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"发行日期"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"只曲目"}},type:{t:0,b:{t:2,i:[{t:3}],s:"类型"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"更新于"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"运行时长"}},year:{t:0,b:{t:2,i:[{t:3}],s:"年份"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"无法连接到 OwnTone 服务器"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"请求失败 (状态:"},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"清单以添加到播放列表 "},{t:4,k:"name"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3,v:"已附加到队列的 "},{t:4,k:"count"},{t:3,v:" 只曲目"}]},{t:2,i:[{t:3,v:"已附加到队列的 "},{t:4,k:"count"},{t:3,v:" 只曲目"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"清单是空的"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"今日"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"上周"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"上月"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"未定义"}}}}},{"zh-TW":{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 張專輯"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 張專輯"}]}]}},artists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位藝人"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位藝人"}]}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個有聲書"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個有聲書"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作者"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作者"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 信道"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 信道"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作曲家"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作曲家"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個音樂類型"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個音樂類型"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個播放列表"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個播放列表"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個Podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個Podcast"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個電台"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個電台"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 首曲目"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 首曲目"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},url:{t:0,b:{t:2,i:[{t:3}],s:"鏈接"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"串流"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},help:{t:0,b:{t:2,i:[{t:3}],s:"新增一個可生成播放列表的Podcast RSS鏈接,這將允許OwnTone管理訂閱"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"處理中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"新增Podcast"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"載入中…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},title:{t:0,b:{t:2,i:[{t:3}],s:"新增串流"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"標記為已播"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除Podcast"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"播放列表名稱"}},save:{t:0,b:{t:2,i:[{t:3}],s:"儲存"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"儲存中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"儲存播放清單到列表"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"遙控配對"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配對碼"}},title:{t:0,b:{t:2,i:[{t:3}],s:"請求遙控配對"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"標記為最新"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"標記為已播放"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"更新所有內容"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"僅更新RSS訂閱內容"}},info:{t:0,b:{t:2,i:[{t:3}],s:"掃描新的、刪除的和修改的文件"}},local:{t:0,b:{t:2,i:[{t:3}],s:"僅更新本地資料庫"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"正在更新本地資料庫…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"重新掃描未修改文件的中繼資料"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"重新掃描"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"僅更新Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"更新資料庫"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"德語 (Deutsch)"}},en:{t:0,b:{t:2,i:[{t:3}],s:"英語 (English)"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"法語 (Français)"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"簡體中文"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"繁體中文"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"從資料庫中永久移除該Podcast嗎?"},{t:4,k:"separator"},{t:3,v:"(這也將移除RSS播放列表 "},{t:4,k:"name"},{t:3,v:")"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除Podcast"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"曲目無法播放"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:",被限制原因:"},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音樂"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"關於"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP串流錯誤:串流載入失敗或者由於網絡原因無法載入"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP串流"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"音量"}},files:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音樂"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"電台"}},search:{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"設定"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"更新資料庫"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"界面貢獻者包括 "},{t:4,k:"bulma"},{t:3,v:","},{t:4,k:"mdi"},{t:3,v:","},{t:4,k:"vuejs"},{t:3,v:","},{t:4,k:"axios"},{t:3,v:" 和 "},{t:4,k:"others"}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"編譯支持來自於 "},{t:4,k:"options"}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"資料庫"}},more:{t:0,b:{t:2,i:[{t:3}],s:"更多"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}},version:{t:0,b:{t:2,i:[{t:3,v:"版本 "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"篩選"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏僅在播放列表出現的單曲和專輯"}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隱藏單曲"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏僅在Spotify資料庫出現的專輯"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隱藏來自Spotify的專輯"}},title:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"藝人 › 名稱"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"藝人 › 發行日期"}},title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近新增"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"最近發行"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"篩選"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏只出現在Spotify庫中的內容"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隱藏來自Spotify的內容"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"評級"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"發行日期"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"篩選"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近新增"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏僅在播放列表出現的單曲和專輯"}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隱藏單曲"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏僅在Spotify資料庫出現的專輯"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隱藏來自Spotify的藝人"}},title:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"作者"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"作者"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"評級"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},title:{t:0,b:{t:2,i:[{t:3}],s:"文件"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"評級"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"顯示更多"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"最近新增"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"最近播放"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},history:{t:0,b:{t:2,i:[{t:3}],s:"歷史"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"瀏覽資料庫新增曲目"}},live:{t:0,b:{t:2,i:[{t:3}],s:"直播"}},title:{t:0,b:{t:2,i:[{t:3}],s:"播放清單是空的"}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" 曲目"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"從資料庫中永久移除該Podcast?"},{t:4,k:"separator"},{t:3,v:"(這也將移除該PodcastRSS列表 "},{t:4,k:"name"},{t:3,v:")"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除Podcast"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"全部標記為已播放"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"最新單集"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"新增串流"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"清除"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"編輯"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"隱藏歷史"}},save:{t:0,b:{t:2,i:[{t:3}],s:"儲存"}},title:{t:0,b:{t:2,i:[{t:3}],s:"清單"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"電台"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"表達式"}},help:{t:0,b:{t:2,i:[{t:3,v:"提示:如果您使用 "},{t:4,k:"query"},{t:3,v:" 前綴,則可以通過智能播放列表查詢語言 "},{t:4,k:"help"},{t:3,v:" 進行搜尋"}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"未找到結果"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示專輯"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個專輯"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示藝人"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 位藝人"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示有聲書"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 本有聲書"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示作曲家"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 位作曲家"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示播放列表"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個播放列表"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示Podcast"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個Podcast"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示曲目"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 首曲目"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"資料庫"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone支持PNG和 JPEG封面,這些封面可以作為單獨的圖像文件放置在庫中或嵌入到媒體文件中,也可以通過電台在線提供"}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"除此之外,您還可以從以下素材提供者獲取封面:"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"在專輯列表中顯示封面藝術作品"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"忽略電台提供的作品"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"沒有活躍的配對請求"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配對代碼"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"遠程配對請求來自於 "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"遙控配對"}},send:{t:0,b:{t:2,i:[{t:3}],s:"發送"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您的揚聲器需要配對,請在下面輸入它顯示的 PIN以啓用"}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"揚聲器配對和設備驗證"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"驗證碼"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"驗證"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},files:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},language:{t:0,b:{t:2,i:[{t:3}],s:"語言"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音樂"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您選擇的項目多於屏幕上可以顯示的項目,則側邊欄菜單將會消失"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"選擇頂部導航欄菜單項"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"導航條"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"“正在播放”頁面"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"電台"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"限制顯示的相簿數量"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"“最近新增”頁面"}},search:{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"以逗號分隔的音樂類型清單,將顯示作曲家的音樂類型"},{t:5,i:0},{t:3,v:"留空以始終顯示作曲家"},{t:5,i:0},{t:3,v:"通過檢查是否包含定義的音樂類型之一來匹配當前曲目的音樂類型標籤。例如,設定為“古典、原聲帶”將顯示音樂類型標籤為“當代古典”的曲目的作曲家"}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"僅顯示列出的音樂類型的作曲家"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"如果啟用,則會顯示目前播放曲目的作曲家"}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"顯示作曲家"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"顯示檔案路徑"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"使用您的 Last.fm 用戶名和密碼登入以啓用記錄功能"}},info:{t:0,b:{t:2,i:[{t:3}],s:"OwnTone不會存儲您的 Last.fm 用戶名/密碼,僅存儲會話密鑰。會話密鑰不會過期"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone並無Last.fm的官方支持"}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone並無 Spotify 官方的支持,也未安裝 libspotify"}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"登入為 "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"您必須擁有 Spotify付費帳戶。訪問 Spotify Web API 可以掃描您的 Spotify庫。所需範圍是:"}},user:{t:0,b:{t:2,i:[{t:3}],s:"授予訪問權限"}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"授權 Web API 訪問"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"授予對 Spotify Web API 的訪問權限"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"請重新授權 Web API 訪問權限,以授予 OwnTone 以下附加訪問權限:"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"登入"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"退出"}},password:{t:0,b:{t:2,i:[{t:3}],s:"密碼"}},username:{t:0,b:{t:2,i:[{t:3}],s:"用戶名"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},general:{t:0,b:{t:2,i:[{t:3}],s:"概覽"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"在線服務"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"遙控和輸出"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"特色列表"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"最新發行"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"顯示更多"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"未找到結果"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示專輯"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個專輯"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示藝人"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 位藝人"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示播放列表"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個播放列表"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示曲目"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 首曲目"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"檔案夾"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"簡單"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"智能"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"清除歷史"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"暫停"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"重復播放所有曲目"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"所有曲目僅播放一遍"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"重復當前曲目"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"在當前曲目後退"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"在當前曲目前進"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放曲目"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"按順序播放曲目"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"播放上一首"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"播放下一首"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"停止"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"顯示/隱藏歌詞"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"新增時間"}},album:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"張專輯"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"專輯藝人"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"專輯藝人"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"評論"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"時長"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"所有者"}},path:{t:0,b:{t:2,i:[{t:3}],s:"路徑"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"總播放時長"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"流行度 / 粉絲數"}},position:{t:0,b:{t:2,i:[{t:3}],s:"盤符 / 曲目"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"品質"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"評級"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"發行日期"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}},type:{t:0,b:{t:2,i:[{t:3}],s:"類型"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"更新於"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"運行時長"}},year:{t:0,b:{t:2,i:[{t:3}],s:"年份"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"無法連接到 OwnTone 伺服器"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"請求失敗 (狀態:"},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"清單以新增到播放列表 "},{t:4,k:"name"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3,v:"已附加到隊列的 "},{t:4,k:"count"},{t:3,v:" 首曲目"}]},{t:2,i:[{t:3,v:"已附加到隊列的 "},{t:4,k:"count"},{t:3,v:" 首曲目"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"清單是空的"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"今日"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"上周"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"上月"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"未定義"}}}}}),Pu=bA({fallbackLocale:"en",fallbackWarn:!1,locale:navigator.language,messages:AA,missingWarn:!1}),Ds=ds("NotificationsStore",{state:()=>({list:[],next_id:1}),actions:{add(t){const e={id:this.next_id++,text:t.text,timeout:t.timeout,topic:t.topic,type:t.type};if(e.topic){const n=this.list.findIndex(s=>s.topic===e.topic);if(n>=0){this.list.splice(n,1,e);return}}this.list.push(e),t.timeout>0&&setTimeout(()=>{this.remove(e)},t.timeout)},remove(t){const e=this.list.indexOf(t);e!==-1&&this.list.splice(e,1)}}}),Yn=ds("PlayerStore",{state:()=>({consume:!1,item_id:0,item_length_ms:0,item_progress_ms:0,repeat:"off",shuffle:!1,state:"stop",volume:0})}),ws=ds("QueueStore",{state:()=>({count:0,items:[],version:0}),getters:{current(t){const e=Yn();return t.items.find(n=>n.id===e.item_id)??{}}}}),{t:Kr}=Pu.global;ut.interceptors.response.use(t=>t,t=>(t.request.status&&t.request.responseURL&&Ds().add({text:Kr("server.request-failed",{cause:t.request.statusText,status:t.request.status,url:t.request.responseURL}),type:"danger"}),Promise.reject(t)));const tt={config(){return ut.get("./api/config")},lastfm(){return ut.get("./api/lastfm")},lastfm_login(t){return ut.post("./api/lastfm-login",t)},lastfm_logout(){return ut.get("./api/lastfm-logout")},library_add(t){return ut.post("./api/library/add",null,{params:{url:t}})},library_album(t){return ut.get(`./api/library/albums/${t}`)},library_album_track_update(t,e){return ut.put(`./api/library/albums/${t}/tracks`,null,{params:e})},library_album_tracks(t,e={limit:-1,offset:0}){return ut.get(`./api/library/albums/${t}/tracks`,{params:e})},library_albums(t){return ut.get("./api/library/albums",{params:{media_kind:t}})},library_artist(t){return ut.get(`./api/library/artists/${t}`)},library_artist_albums(t){return ut.get(`./api/library/artists/${t}/albums`)},library_artist_tracks(t){const e={expression:`songartistid is "${t}"`,type:"tracks"};return ut.get("./api/search",{params:e})},library_artists(t){return ut.get("./api/library/artists",{params:{media_kind:t}})},library_composer(t){return ut.get(`./api/library/composers/${encodeURIComponent(t)}`)},library_composer_albums(t){const e={expression:`composer is "${t}" and media_kind is music`,type:"albums"};return ut.get("./api/search",{params:e})},library_composer_tracks(t){const e={expression:`composer is "${t}" and media_kind is music`,type:"tracks"};return ut.get("./api/search",{params:e})},library_composers(t){return ut.get("./api/library/composers",{params:{media_kind:t}})},library_count(t){return ut.get(`./api/library/count?expression=${t}`)},library_files(t){return ut.get("./api/library/files",{params:{directory:t}})},library_genre(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"genres"};return ut.get("./api/search",{params:n})},library_genre_albums(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"albums"};return ut.get("./api/search",{params:n})},library_genre_tracks(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"tracks"};return ut.get("./api/search",{params:n})},library_genres(t){const e={expression:`media_kind is ${t}`,type:"genres"};return ut.get("./api/search",{params:e})},library_playlist(t){return ut.get(`./api/library/playlists/${t}`)},library_playlist_delete(t){return ut.delete(`./api/library/playlists/${t}`,null)},library_playlist_folder(t=0){return ut.get(`./api/library/playlists/${t}/playlists`)},library_playlist_tracks(t){return ut.get(`./api/library/playlists/${t}/tracks`)},library_podcast_episodes(t){const e={expression:`media_kind is podcast and songalbumid is "${t}" ORDER BY date_released DESC`,type:"tracks"};return ut.get("./api/search",{params:e})},library_podcasts_new_episodes(){const t={expression:"media_kind is podcast and play_count = 0 ORDER BY time_added DESC",type:"tracks"};return ut.get("./api/search",{params:t})},library_radio_streams(){const t={expression:"data_kind is url and song_length = 0",media_kind:"music",type:"tracks"};return ut.get("./api/search",{params:t})},library_rescan(t){return ut.put("./api/rescan",null,{params:{scan_kind:t}})},library_stats(){return ut.get("./api/library")},library_track(t){return ut.get(`./api/library/tracks/${t}`)},library_track_playlists(t){return ut.get(`./api/library/tracks/${t}/playlists`)},library_track_update(t,e={}){return ut.put(`./api/library/tracks/${t}`,null,{params:e})},library_update(t){return ut.put("./api/update",null,{params:{scan_kind:t}})},output_toggle(t){return ut.put(`./api/outputs/${t}/toggle`)},output_update(t,e){return ut.put(`./api/outputs/${t}`,e)},outputs(){return ut.get("./api/outputs")},pairing(){return ut.get("./api/pairing")},pairing_kickoff(t){return ut.post("./api/pairing",t)},player_consume(t){return ut.put(`./api/player/consume?state=${t}`)},player_next(){return ut.put("./api/player/next")},player_output_volume(t,e){return ut.put(`./api/player/volume?volume=${e}&output_id=${t}`)},player_pause(){return ut.put("./api/player/pause")},player_play(t={}){return ut.put("./api/player/play",null,{params:t})},player_play_expression(t,e,n){const s={clear:"true",expression:t,playback:"start",playback_from_position:n,shuffle:e};return ut.post("./api/queue/items/add",null,{params:s})},player_play_uri(t,e,n){const s={clear:"true",playback:"start",playback_from_position:n,shuffle:e,uris:t};return ut.post("./api/queue/items/add",null,{params:s})},player_previous(){return ut.put("./api/player/previous")},player_repeat(t){return ut.put(`./api/player/repeat?state=${t}`)},player_seek(t){return ut.put(`./api/player/seek?seek_ms=${t}`)},player_seek_to_pos(t){return ut.put(`./api/player/seek?position_ms=${t}`)},player_shuffle(t){return ut.put(`./api/player/shuffle?state=${t}`)},player_status(){return ut.get("./api/player")},player_stop(){return ut.put("./api/player/stop")},player_volume(t){return ut.put(`./api/player/volume?volume=${t}`)},queue(){return ut.get("./api/queue")},async queue_add(t){const e=await ut.post(`./api/queue/items/add?uris=${t}`);return Ds().add({text:Kr("server.appended-tracks",{count:e.data.count}),timeout:2e3,type:"info"}),await Promise.resolve(e)},async queue_add_next(t){let e=0;const{current:n}=ws();n!=null&&n.id&&(e=n.position+1);const s=await ut.post(`./api/queue/items/add?uris=${t}&position=${e}`);return Ds().add({text:Kr("server.appended-tracks",{count:s.data.count}),timeout:2e3,type:"info"}),await Promise.resolve(s)},queue_clear(){return ut.put("./api/queue/clear")},async queue_expression_add(t){const e=await ut.post("./api/queue/items/add",null,{params:{expression:t}});return Ds().add({text:Kr("server.appended-tracks",{count:e.data.count}),timeout:2e3,type:"info"}),await Promise.resolve(e)},async queue_expression_add_next(t){const e={};e.expression=t,e.position=0;const{current:n}=ws();n!=null&&n.id&&(e.position=n.position+1);const s=await ut.post("./api/queue/items/add",null,{params:e});return Ds().add({text:Kr("server.appended-tracks",{count:s.data.count}),timeout:2e3,type:"info"}),await Promise.resolve(s)},queue_move(t,e){return ut.put(`./api/queue/items/${t}?new_position=${e}`)},queue_remove(t){return ut.delete(`./api/queue/items/${t}`)},async queue_save_playlist(t){const e=await ut.post("./api/queue/save",null,{params:{name:t}});return Ds().add({text:Kr("server.queue-saved",{name:t}),timeout:2e3,type:"info"}),await Promise.resolve(e)},search(t){return ut.get("./api/search",{params:t})},settings(){return ut.get("./api/settings")},settings_update(t,e){return ut.put(`./api/settings/${t}/${e.name}`,e)},spotify(){return ut.get("./api/spotify")},spotify_logout(){return ut.get("./api/spotify-logout")}},OA={name:"ModalDialogRemotePairing",components:{ModalDialog:hi},props:{show:Boolean},emits:["close"],setup(){return{remoteStore:Xp()}},data(){return{pairing_req:{pin:""}}},computed:{actions(){return[{label:this.$t("dialog.remote-pairing.cancel"),handler:this.cancel,icon:"cancel"},{label:this.$t("dialog.remote-pairing.pair"),handler:this.pair,icon:"cellphone"}]},pairing(){return this.remoteStore.pairing}},watch:{show(){this.show&&(this.loading=!1,setTimeout(()=>{this.$refs.pin_field.focus()},10))}},methods:{cancel(){this.$emit("close")},pair(){tt.pairing_kickoff(this.pairing_req).then(()=>{this.pairing_req.pin=""})}}},IA=["textContent"],NA={class:"field"},PA={class:"control"},$A=["placeholder"];function RA(t,e,n,s,i,r){const o=x("modal-dialog");return O(),vt(o,{actions:r.actions,show:n.show,title:t.$t("dialog.remote-pairing.title"),onClose:e[2]||(e[2]=a=>t.$emit("close"))},{content:D(()=>[g("form",{onSubmit:e[1]||(e[1]=Oe((...a)=>r.pair&&r.pair(...a),["prevent"]))},[g("label",{class:"label",textContent:I(r.pairing.remote)},null,8,IA),g("div",NA,[g("div",PA,[xn(g("input",{ref:"pin_field","onUpdate:modelValue":e[0]||(e[0]=a=>i.pairing_req.pin=a),class:"input",inputmode:"numeric",pattern:"[\\d]{4}",placeholder:t.$t("dialog.remote-pairing.pairing-code")},null,8,$A),[[Xn,i.pairing_req.pin]])])])],32)]),_:1},8,["actions","show","title"])}const LA=rt(OA,[["render",RA]]),DA={name:"ControlSwitch",props:{modelValue:Boolean},emits:["update:modelValue"]},MA={class:"field mb-0 is-flex is-align-items-center"},FA={class:"toggle is-flex is-align-items-center"},VA={class:"control is-flex is-align-items-center"},HA=["checked"],UA={key:0,class:"help mb-4"};function jA(t,e,n,s,i,r){return O(),M(ht,null,[g("div",MA,[g("label",FA,[g("div",VA,[g("input",{checked:n.modelValue,type:"checkbox",class:"toggle-checkbox is-hidden",onChange:e[0]||(e[0]=o=>t.$emit("update:modelValue",!n.modelValue))},null,40,HA),e[1]||(e[1]=g("div",{class:"toggle-switch"},null,-1))]),ge(t.$slots,"label",{},void 0,!0)])]),t.$slots.help?(O(),M("div",UA,[ge(t.$slots,"help",{},void 0,!0)])):_t("",!0)],64)}const Nr=rt(DA,[["render",jA],["__scopeId","data-v-2fe564ab"]]),$u=ds("LibraryStore",{state:()=>({albums:0,artists:0,db_playtime:0,songs:0,rss:{},started_at:"01",updated_at:"01",update_dialog_scan_kind:"",updating:!1})}),He=ds("ServicesStore",{state:()=>({lastfm:{},spotify:{}})}),BA={name:"ModalDialogUpdate",components:{ControlSwitch:Nr,ModalDialog:hi},props:{show:Boolean},emits:["close"],setup(){return{libraryStore:$u(),servicesStore:He()}},data(){return{rescan_metadata:!1}},computed:{actions(){const t=[{label:this.$t("dialog.update.cancel"),handler:this.cancel,icon:"cancel"}];return this.libraryStore.updating||t.push({label:this.$t("dialog.update.rescan"),handler:this.analyse,icon:"check"}),t},rss(){return this.libraryStore.rss},spotify_enabled(){return this.servicesStore.spotify.webapi_token_valid}},methods:{cancel(){this.$emit("close"),this.libraryStore.update_dialog_scan_kind=""},analyse(){this.rescan_metadata?tt.library_rescan(this.libraryStore.update_dialog_scan_kind):tt.library_update(this.libraryStore.update_dialog_scan_kind)}}},WA={key:0},zA={key:0,class:"field"},qA=["textContent"],GA={class:"control"},KA={class:"select is-small"},XA=["textContent"],YA=["textContent"],ZA=["textContent"],JA=["textContent"],QA=["textContent"],tO={key:1},eO=["textContent"];function nO(t,e,n,s,i,r){const o=x("control-switch"),a=x("modal-dialog");return O(),vt(a,{actions:r.actions,show:n.show,title:t.$t("dialog.update.title"),onClose:e[2]||(e[2]=l=>t.$emit("close"))},{content:D(()=>[s.libraryStore.updating?(O(),M("div",tO,[g("p",{class:"mb-3",textContent:I(t.$t("dialog.update.progress"))},null,8,eO)])):(O(),M("div",WA,[r.spotify_enabled||r.rss.tracks>0?(O(),M("div",zA,[g("label",{class:"label",textContent:I(t.$t("dialog.update.info"))},null,8,qA),g("div",GA,[g("div",KA,[xn(g("select",{"onUpdate:modelValue":e[0]||(e[0]=l=>s.libraryStore.update_dialog_scan_kind=l)},[g("option",{value:"",textContent:I(t.$t("dialog.update.all"))},null,8,XA),g("option",{value:"files",textContent:I(t.$t("dialog.update.local"))},null,8,YA),r.spotify_enabled?(O(),M("option",{key:0,value:"spotify",textContent:I(t.$t("dialog.update.spotify"))},null,8,ZA)):_t("",!0),r.rss.tracks>0?(O(),M("option",{key:1,value:"rss",textContent:I(t.$t("dialog.update.feeds"))},null,8,JA)):_t("",!0)],512),[[Kp,s.libraryStore.update_dialog_scan_kind]])])])])):_t("",!0),C(o,{modelValue:i.rescan_metadata,"onUpdate:modelValue":e[1]||(e[1]=l=>i.rescan_metadata=l)},{label:D(()=>[g("span",{textContent:I(t.$t("dialog.update.rescan-metadata"))},null,8,QA)]),_:1},8,["modelValue"])]))]),_:1},8,["actions","show","title"])}const sO=rt(BA,[["render",nO]]),Vn=ds("UIStore",{state:()=>({albums_sort:1,artist_albums_sort:1,artist_tracks_sort:1,artists_sort:1,composer_tracks_sort:1,genre_tracks_sort:1,hide_singles:!1,hide_spotify:!1,show_burger_menu:!1,show_only_next_items:!1,show_player_menu:!1,show_update_dialog:!1})}),iO={name:"ControlLink",props:{to:{required:!0,type:Object}},setup(){return{uiStore:Vn()}},methods:{open(){this.uiStore.show_burger_menu=!1,this.uiStore.show_player_menu=!1,this.$router.push(this.to)}}},rO=["href"];function oO(t,e,n,s,i,r){return O(),M("a",{href:t.$router.resolve(n.to).href,onClick:e[0]||(e[0]=Oe((...o)=>r.open&&r.open(...o),["stop","prevent"]))},[ge(t.$slots,"default")],8,rO)}const B0=rt(iO,[["render",oO]]),aO={name:"ControlSlider",props:{disabled:Boolean,max:{required:!0,type:Number},value:{required:!0,type:Number}},emits:["update:value"],computed:{ratio(){return this.value/this.max}}},lO=["value","disabled","max"];function cO(t,e,n,s,i,r){return O(),M("input",{value:n.value,disabled:n.disabled,class:Bt(["slider",{"is-inactive":n.disabled}]),max:n.max,type:"range",style:di({"--ratio":r.ratio}),onInput:e[0]||(e[0]=o=>t.$emit("update:value",o.target.valueAsNumber))},null,46,lO)}const Ru=rt(aO,[["render",cO],["__scopeId","data-v-d0c7e339"]]),uO={name:"ControlVolume",components:{ControlSlider:Ru},setup(){return{player:Yn()}},data(){return{old_volume:0}},computed:{icon(){return this.player.volume>0?"volume-high":"volume-off"}},watch:{"player.volume"(){this.player.volume>0&&(this.old_volume=this.player.volume)}},methods:{changeVolume(t){tt.player_volume(this.player.volume)},toggle(){this.player.volume=this.player.volume>0?0:this.old_volume,this.changeVolume()}}},dO={class:"media is-align-items-center mb-0"},fO={class:"media-left"},pO={class:"media-content"},hO=["textContent"];function mO(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-slider");return O(),M("div",dO,[g("div",fO,[g("a",{class:"button is-small",onClick:e[0]||(e[0]=(...l)=>r.toggle&&r.toggle(...l))},[C(o,{class:"icon",name:r.icon},null,8,["name"])])]),g("div",pO,[g("div",{class:"is-size-7 is-uppercase",textContent:I(t.$t("navigation.volume"))},null,8,hO),C(a,{value:s.player.volume,"onUpdate:value":e[1]||(e[1]=l=>s.player.volume=l),max:100,onChange:r.changeVolume},null,8,["value","onChange"])])])}const gO=rt(uO,[["render",mO]]),bO={name:"ControlOutputVolume",components:{ControlSlider:Ru},props:{output:{required:!0,type:Object}},data(){return{volume:this.output.selected?this.output.volume:0}},computed:{icon(){return this.output.type.startsWith("AirPlay")?"cast-variant":this.output.type==="Chromecast"?"cast":this.output.type==="fifo"?"pipe":"server"}},watch:{output(){this.volume=this.output.volume}},methods:{changeVolume(){tt.player_output_volume(this.output.id,this.volume)},toggle(){const t={selected:!this.output.selected};tt.output_update(this.output.id,t)}}},yO={class:"media is-align-items-center mb-0"},_O={class:"media-left"},vO={class:"media-content"},SO=["textContent"];function EO(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-slider");return O(),M("div",yO,[g("div",_O,[g("a",{class:Bt(["button is-small",{"has-text-grey-light":!n.output.selected}]),onClick:e[0]||(e[0]=(...l)=>r.toggle&&r.toggle(...l))},[C(o,{class:"icon",name:r.icon,title:n.output.type},null,8,["name","title"])],2)]),g("div",vO,[g("div",{class:Bt(["is-size-7 is-uppercase",{"has-text-grey-light":!n.output.selected}]),textContent:I(n.output.name)},null,10,SO),C(a,{value:i.volume,"onUpdate:value":e[1]||(e[1]=l=>i.volume=l),disabled:!n.output.selected,max:100,onChange:r.changeVolume},null,8,["value","disabled","onChange"])])])}const wO=rt(bO,[["render",EO]]),CO={name:"ControlPlayerBack",props:{offset:{required:!0,type:Number}},setup(){return{playerStore:Yn(),queueStore:ws()}},computed:{disabled(){var t;return((t=this.queueStore)==null?void 0:t.count)<=0||this.is_stopped||this.current.data_kind==="pipe"},is_stopped(){return this.player.state==="stop"},current(){return this.queueStore.current},player(){return this.playerStore},visible(){return["podcast","audiobook"].includes(this.current.media_kind)}},methods:{seek(){this.disabled||tt.player_seek(this.offset*-1)}}},kO=["disabled"];function TO(t,e,n,s,i,r){const o=x("mdicon");return r.visible?(O(),M("a",{key:0,disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.seek&&r.seek(...a))},[C(o,{class:"icon",name:"rewind-10",title:t.$t("player.button.seek-backward")},null,8,["title"])],8,kO)):_t("",!0)}const xO=rt(CO,[["render",TO]]),AO={name:"ControlPlayerConsume",setup(){return{playerStore:Yn()}},computed:{is_consume(){return this.playerStore.consume}},methods:{toggle(){tt.player_consume(!this.is_consume)}}};function OO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{class:Bt({"is-dark":r.is_consume}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:"fire",size:"16",title:t.$t("player.button.consume")},null,8,["title"])],2)}const IO=rt(AO,[["render",OO]]),NO={name:"ControlPlayerForward",props:{offset:{required:!0,type:Number}},setup(){return{playerStore:Yn(),queueStore:ws()}},computed:{disabled(){var t;return((t=this.queueStore)==null?void 0:t.count)<=0||this.is_stopped||this.current.data_kind==="pipe"},is_stopped(){return this.player.state==="stop"},current(){return this.queueStore.current},player(){return this.playerStore},visible(){return["podcast","audiobook"].includes(this.current.media_kind)}},methods:{seek(){this.disabled||tt.player_seek(this.offset)}}},PO=["disabled"];function $O(t,e,n,s,i,r){const o=x("mdicon");return r.visible?(O(),M("a",{key:0,disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.seek&&r.seek(...a))},[C(o,{class:"icon",name:"fast-forward-30",title:t.$t("player.button.seek-forward")},null,8,["title"])],8,PO)):_t("",!0)}const RO=rt(NO,[["render",$O]]),Lu=ds("LyricsStore",{state:()=>({content:[],pane:!1})}),LO={name:"ControlPlayerLyrics",setup(){return{lyricsStore:Lu()}},computed:{icon(){return this.is_active?"script-text-play":"script-text-outline"},is_active(){return this.lyricsStore.pane}},methods:{toggle(){this.lyricsStore.pane=!this.lyricsStore.pane}}};function DO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{class:Bt({"is-dark":r.is_active}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:r.icon,size:16,title:t.$t("player.button.toggle-lyrics")},null,8,["name","title"])],2)}const MO=rt(LO,[["render",DO]]),FO={name:"ControlPlayerNext",computed:{disabled(){var t;return((t=ws())==null?void 0:t.count)<=0}},methods:{play_next(){this.disabled||tt.player_next()}}},VO=["disabled"];function HO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.play_next&&r.play_next(...a))},[C(o,{class:"icon",name:"skip-forward",title:t.$t("player.button.skip-forward")},null,8,["title"])],8,VO)}const UO=rt(FO,[["render",HO]]),jO={name:"ControlPlayerPlay",props:{show_disabled_message:Boolean},setup(){return{notificationsStore:Ds(),playerStore:Yn(),queueStore:ws()}},computed:{disabled(){var t;return((t=this.queueStore)==null?void 0:t.count)<=0},icon(){if(this.is_playing){if(this.is_pause_allowed)return"pause"}else return"play";return"stop"},is_pause_allowed(){const{current:t}=this.queueStore;return t&&t.data_kind!=="pipe"},is_playing(){return this.playerStore.state==="play"}},methods:{toggle(){if(this.disabled){this.show_disabled_message&&this.notificationsStore.add({text:this.$t("server.empty-queue"),timeout:2e3,topic:"connection",type:"info"});return}this.is_playing&&this.is_pause_allowed?tt.player_pause():this.is_playing&&!this.is_pause_allowed?tt.player_stop():tt.player_play()}}},BO=["disabled"];function WO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:r.icon,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],8,BO)}const zO=rt(jO,[["render",WO]]),qO={name:"ControlPlayerPrevious",setup(){return{queueStore:ws()}},computed:{disabled(){return this.queueStore.count<=0}},methods:{play_previous(){this.disabled||tt.player_previous()}}},GO=["disabled"];function KO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.play_previous&&r.play_previous(...a))},[C(o,{class:"icon",name:"skip-backward",title:t.$t("player.button.skip-backward")},null,8,["title"])],8,GO)}const XO=rt(qO,[["render",KO]]),YO={name:"ControlPlayerRepeat",setup(){return{playerStore:Yn()}},computed:{icon(){return this.is_repeat_all?"repeat":this.is_repeat_single?"repeat-once":"repeat-off"},is_repeat_all(){return this.playerStore.repeat==="all"},is_repeat_off(){return!this.is_repeat_all&&!this.is_repeat_single},is_repeat_single(){return this.playerStore.repeat==="single"}},methods:{toggle(){this.is_repeat_all?tt.player_repeat("single"):this.is_repeat_single?tt.player_repeat("off"):tt.player_repeat("all")}}};function ZO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{class:Bt({"is-dark":!r.is_repeat_off}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:r.icon,size:16,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],2)}const JO=rt(YO,[["render",ZO]]),QO={name:"ControlPlayerShuffle",setup(){return{playerStore:Yn()}},computed:{icon(){return this.is_shuffle?"shuffle":"shuffle-disabled"},is_shuffle(){return this.playerStore.shuffle}},methods:{toggle(){tt.player_shuffle(!this.is_shuffle)}}};function tI(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{class:Bt({"is-dark":r.is_shuffle}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:r.icon,size:16,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],2)}const eI=rt(QO,[["render",tI]]),jo={audio:new Audio,context:null,play(t){this.stop(),this.context.resume().then(()=>{this.audio.src=`${String(t||"")}?x=${Date.now()}`,this.audio.crossOrigin="anonymous",this.audio.load()})},setVolume(t){this.audio&&(this.audio.volume=Math.min(1,Math.max(0,parseFloat(t)||0)))},setup(){return this.context=new(window.AudioContext||window.webkitAudioContext),this.context.createMediaElementSource(this.audio).connect(this.context.destination),this.audio.addEventListener("canplaythrough",()=>{this.audio.play()}),this.audio.addEventListener("canplay",()=>{this.audio.play()}),this.audio},stop(){try{this.audio.pause()}catch{}try{this.audio.stop()}catch{}try{this.audio.close()}catch{}}},nI={name:"ControlStreamVolume",components:{ControlSlider:Ru},emits:["change","mute"],data(){return{loading:!1,playing:!1,volume:10}},mounted(){this.setupAudio()},unmounted(){this.closeAudio()},methods:{changeVolume(){jo.setVolume(this.volume/100)},closeAudio(){jo.stop(),this.playing=!1},playChannel(){this.playing||(this.loading=!0,jo.play("/stream.mp3"),jo.setVolume(this.volume/100))},setupAudio(){const t=jo.setup();t.addEventListener("waiting",()=>{this.playing=!1,this.loading=!0}),t.addEventListener("playing",()=>{this.playing=!0,this.loading=!1}),t.addEventListener("ended",()=>{this.playing=!1,this.loading=!1}),t.addEventListener("error",()=>{this.closeAudio(),this.notificationsStore.add({text:this.$t("navigation.stream-error"),type:"danger"}),this.playing=!1,this.loading=!1})},togglePlay(){this.loading||(this.playing&&this.closeAudio(),this.playChannel())}}},sI={class:"media is-align-items-center mb-0"},iI={class:"media-left"},rI={class:"media-content is-align-items-center"},oI=["textContent"],aI={href:"stream.mp3",class:"ml-2",target:"_blank"};function lI(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-slider");return O(),M("div",sI,[g("div",iI,[g("a",{class:Bt(["button is-small",{"has-text-grey-light":!i.playing&&!i.loading,"is-loading":i.loading}]),onClick:e[0]||(e[0]=(...l)=>r.togglePlay&&r.togglePlay(...l))},[C(o,{class:"icon",name:"broadcast"})],2)]),g("div",rI,[g("div",{class:Bt(["is-flex",{"has-text-grey-light":!i.playing}])},[g("div",{class:"is-size-7 is-uppercase",textContent:I(t.$t("navigation.stream"))},null,8,oI),g("a",aI,[C(o,{class:"icon is-small",name:"open-in-new"})])],2),C(a,{value:i.volume,"onUpdate:value":e[1]||(e[1]=l=>i.volume=l),disabled:!i.playing,max:100,onChange:r.changeVolume},null,8,["value","disabled","onChange"])])])}const cI=rt(nI,[["render",lI]]),lh=ds("OutputsStore",{state:()=>({outputs:[]})}),uI={name:"NavbarBottom",components:{ControlLink:B0,ControlOutputVolume:wO,ControlMainVolume:gO,ControlPlayerBack:xO,ControlPlayerConsume:IO,ControlPlayerForward:RO,ControlPlayerLyrics:MO,ControlPlayerNext:UO,ControlPlayerPlay:zO,ControlPlayerPrevious:XO,ControlPlayerRepeat:JO,ControlPlayerShuffle:eI,ControlStreamVolume:cI},setup(){return{notificationsStore:Ds(),outputsStore:lh(),queueStore:ws(),uiStore:Vn()}},computed:{is_now_playing_page(){return this.$route.name==="now-playing"},current(){return this.queueStore.current}},methods:{toggle(){this.uiStore.show_player_menu=!this.uiStore.show_player_menu,this.uiStore.show_burger_menu=!1}}},dI={class:"navbar-brand is-flex-grow-1"},fI={class:"is-text-clipped"},pI=["textContent"],hI=["textContent"],mI=["textContent"],gI={class:"dropdown-menu is-mobile"},bI={class:"dropdown-content"},yI={class:"dropdown-item pt-0"},_I={class:"dropdown-item is-flex is-justify-content-center"},vI={class:"buttons has-addons"};function SI(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-link"),l=x("control-player-previous"),c=x("control-player-back"),u=x("control-player-play"),d=x("control-player-forward"),f=x("control-player-next"),p=x("control-main-volume"),h=x("control-output-volume"),m=x("control-stream-volume"),_=x("control-player-repeat"),y=x("control-player-shuffle"),S=x("control-player-consume"),b=x("control-player-lyrics");return O(),M("nav",{class:Bt(["navbar is-fixed-bottom",{"is-dark":!r.is_now_playing_page}])},[g("div",dI,[C(a,{class:"navbar-item",to:{name:"queue"}},{default:D(()=>[C(o,{class:"icon",name:"playlist-play"})]),_:1}),r.is_now_playing_page?(O(),M(ht,{key:0},[C(l,{class:"navbar-item ml-auto"}),C(c,{class:"navbar-item",offset:1e4}),C(u,{class:"navbar-item",show_disabled_message:""}),C(d,{class:"navbar-item",offset:3e4}),C(f,{class:"navbar-item mr-auto"})],64)):(O(),M(ht,{key:1},[C(a,{to:{name:"now-playing"},exact:"",class:"navbar-item is-justify-content-flex-start is-expanded is-clipped is-size-7"},{default:D(()=>[g("div",fI,[g("strong",{textContent:I(r.current.title)},null,8,pI),e[1]||(e[1]=g("br",null,null,-1)),g("span",{textContent:I(r.current.artist)},null,8,hI),r.current.album?(O(),M("span",{key:0,textContent:I(t.$t("navigation.now-playing",{album:r.current.album}))},null,8,mI)):_t("",!0)])]),_:1}),C(u,{class:"navbar-item",show_disabled_message:""})],64)),g("a",{class:"navbar-item",onClick:e[0]||(e[0]=(...v)=>r.toggle&&r.toggle(...v))},[C(o,{class:"icon",name:s.uiStore.show_player_menu?"chevron-down":"chevron-up"},null,8,["name"])]),g("div",{class:Bt(["dropdown is-up is-right",{"is-active":s.uiStore.show_player_menu}])},[g("div",gI,[g("div",bI,[g("div",yI,[C(p),(O(!0),M(ht,null,fe(s.outputsStore.outputs,v=>(O(),vt(h,{key:v.id,output:v},null,8,["output"]))),128)),C(m)]),e[2]||(e[2]=g("hr",{class:"dropdown-divider"},null,-1)),g("div",_I,[g("div",vI,[C(_,{class:"button"}),C(y,{class:"button"}),C(S,{class:"button"}),C(b,{class:"button"})])])])])],2)])],2)}const EI=rt(uI,[["render",SI],["__scopeId","data-v-9766529b"]]),ch=ds("SearchStore",{state:()=>({recent_searches:[],search_query:"",search_source:"search-library"}),actions:{add(t){const e=this.recent_searches.indexOf(t);e!==-1&&this.recent_searches.splice(e,1),this.recent_searches.unshift(t),this.recent_searches.length>5&&this.recent_searches.pop()},remove(t){const e=this.recent_searches.indexOf(t);e!==-1&&this.recent_searches.splice(e,1)}}}),mi=ds("SettingsStore",{state:()=>({categories:[]}),getters:{recently_added_limit:t=>{var e;return((e=t.setting("webinterface","recently_added_limit"))==null?void 0:e.value)??100},show_composer_for_genre:t=>{var e;return((e=t.setting("webinterface","show_composer_for_genre"))==null?void 0:e.value)??null},show_composer_now_playing:t=>{var e;return((e=t.setting("webinterface","show_composer_now_playing"))==null?void 0:e.value)??!1},show_cover_artwork_in_album_lists:t=>{var e;return((e=t.setting("artwork","show_cover_artwork_in_album_lists"))==null?void 0:e.value)??!1},show_filepath_now_playing:t=>{var e;return((e=t.setting("webinterface","show_filepath_now_playing"))==null?void 0:e.value)??!1},show_menu_item_audiobooks:t=>{var e;return((e=t.setting("webinterface","show_menu_item_audiobooks"))==null?void 0:e.value)??!1},show_menu_item_files:t=>{var e;return((e=t.setting("webinterface","show_menu_item_files"))==null?void 0:e.value)??!1},show_menu_item_music:t=>{var e;return((e=t.setting("webinterface","show_menu_item_music"))==null?void 0:e.value)??!1},show_menu_item_playlists:t=>{var e;return((e=t.setting("webinterface","show_menu_item_playlists"))==null?void 0:e.value)??!1},show_menu_item_podcasts:t=>{var e;return((e=t.setting("webinterface","show_menu_item_podcasts"))==null?void 0:e.value)??!1},show_menu_item_radio:t=>{var e;return((e=t.setting("webinterface","show_menu_item_radio"))==null?void 0:e.value)??!1},show_menu_item_search:t=>{var e;return((e=t.setting("webinterface","show_menu_item_search"))==null?void 0:e.value)??!1}},actions:{update(t){const e=this.categories.find(s=>s.name===t.category);if(!e)return;const n=e.options.find(s=>s.name===t.name);n&&(n.value=t.value)},setting(t,e){var n;return((n=this.categories.find(s=>s.name===t))==null?void 0:n.options.find(s=>s.name===e))??{}}}}),wI={name:"NavbarTop",components:{ControlLink:B0},setup(){return{searchStore:ch(),servicesStore:He(),settingsStore:mi(),uiStore:Vn()}},computed:{menus(){return[{name:"playlists",label:"navigation.playlists",icon:"music-box-multiple",show:this.settingsStore.show_menu_item_playlists},{name:"music",label:"navigation.music",icon:"music",show:this.settingsStore.show_menu_item_music},{name:"music-artists",label:"navigation.artists",show:!0,sub:!0},{name:"music-albums",label:"navigation.albums",show:!0,sub:!0},{name:"music-genres",label:"navigation.genres",show:!0,sub:!0},{name:"music-spotify",label:"navigation.spotify",show:this.servicesStore.spotify.webapi_token_valid,sub:!0},{name:"podcasts",label:"navigation.podcasts",icon:"microphone",show:this.settingsStore.show_menu_item_podcasts},{name:"audiobooks",label:"navigation.audiobooks",icon:"book-open-variant",show:this.settingsStore.show_menu_item_audiobooks},{name:"radio",label:"navigation.radio",icon:"radio",show:this.settingsStore.show_menu_item_radio},{name:"files",label:"navigation.files",icon:"folder-open",show:this.settingsStore.show_menu_item_files},{name:this.searchStore.search_source,label:"navigation.search",icon:"magnify",show:this.settingsStore.show_menu_item_search},{separator:!0,show:!0},{name:"settings-webinterface",label:"navigation.settings",show:!0},{label:"navigation.update-library",action:this.open_update_dialog,show:!0},{name:"about",label:"navigation.about",show:!0}]},zindex(){return this.uiStore.show_player_menu?"z-index: 21":""}},methods:{open_update_dialog(){this.uiStore.show_update_dialog=!0,this.uiStore.show_burger_menu=!1}}},CI={class:"navbar-brand is-flex-grow-1"},kI={class:"dropdown-menu is-mobile"},TI={class:"dropdown-content"},xI={key:0,class:"my-3"},AI=["onClick","textContent"],OI={key:0,class:"icon-text"},II=["textContent"];function NI(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-link");return O(),M("nav",{class:"navbar is-fixed-top is-light",style:di(r.zindex)},[g("div",CI,[(O(!0),M(ht,null,fe(r.menus.filter(l=>l.show&&l.icon),l=>(O(),vt(a,{key:l.name,to:{name:l.name},class:"navbar-item"},{default:D(()=>[C(o,{class:"icon",name:l.icon,size:"16"},null,8,["name"])]),_:2},1032,["to"]))),128)),g("a",{class:"navbar-item ml-auto",onClick:e[0]||(e[0]=l=>s.uiStore.show_burger_menu=!s.uiStore.show_burger_menu)},[C(o,{class:"icon",name:s.uiStore.show_burger_menu?"close":"menu"},null,8,["name"])]),g("div",{class:Bt(["dropdown is-right",{"is-active":s.uiStore.show_burger_menu}])},[g("div",kI,[g("div",TI,[(O(!0),M(ht,null,fe(r.menus.filter(l=>l.show),l=>(O(),M(ht,{key:l.name},[l.separator?(O(),M("hr",xI)):l.action?(O(),M("a",{key:1,class:"dropdown-item",onClick:Oe(l.action,["stop","prevent"]),textContent:I(t.$t(l.label))},null,8,AI)):(O(),vt(a,{key:2,to:{name:l.name},class:"dropdown-item"},{default:D(()=>[l.icon?(O(),M("span",OI,[C(o,{class:"icon",name:l.icon,size:"16"},null,8,["name"])])):_t("",!0),g("span",{class:Bt({"pl-5":l.sub,"has-text-weight-semibold":l.icon}),textContent:I(t.$t(l.label))},null,10,II)]),_:2},1032,["to"]))],64))),128))])])],2)])],4)}const PI=rt(wI,[["render",NI]]),$I={name:"NotificationList",setup(){return{notificationsStore:Ds()}},computed:{notifications(){return this.notificationsStore.list}},methods:{remove(t){this.notificationsStore.remove(t)}}},RI={key:0,class:"notifications"},LI={class:"columns is-centered"},DI={class:"column is-half"},MI=["onClick"],FI=["textContent"];function VI(t,e,n,s,i,r){return r.notifications.length>0?(O(),M("section",RI,[g("div",LI,[g("div",DI,[(O(!0),M(ht,null,fe(r.notifications,o=>(O(),M("div",{key:o.id,class:Bt(["notification",o.type?`is-${o.type}`:""])},[g("button",{class:"delete",onClick:a=>r.remove(o)},null,8,MI),g("div",{class:"text",textContent:I(o.text)},null,8,FI)],2))),128))])])])):_t("",!0)}const HI=rt($I,[["render",VI],["__scopeId","data-v-8e5ff698"]]);function Du(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Mu(t){if(t.__esModule)return t;var e=t.default;if(typeof e=="function"){var n=function s(){return this instanceof s?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};n.prototype=e.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(t).forEach(function(s){var i=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(n,s,i.get?i:{enumerable:!0,get:function(){return t[s]}})}),n}var Zl={exports:{}},UI=Zl.exports,Fg;function jI(){return Fg||(Fg=1,function(t){(function(e,n){t.exports?t.exports=n():e.ReconnectingWebSocket=n()})(UI,function(){if(!("WebSocket"in window))return;function e(n,s,i){var r={debug:!1,automaticOpen:!0,reconnectInterval:1e3,maxReconnectInterval:3e4,reconnectDecay:1.5,timeoutInterval:2e3,maxReconnectAttempts:null};i||(i={});for(var o in r)typeof i[o]<"u"?this[o]=i[o]:this[o]=r[o];this.url=n,this.reconnectAttempts=0,this.readyState=WebSocket.CONNECTING,this.protocol=null;var a=this,l,c=!1,u=!1,d=document.createElement("div");d.addEventListener("open",function(p){a.onopen(p)}),d.addEventListener("close",function(p){a.onclose(p)}),d.addEventListener("connecting",function(p){a.onconnecting(p)}),d.addEventListener("message",function(p){a.onmessage(p)}),d.addEventListener("error",function(p){a.onerror(p)}),this.addEventListener=d.addEventListener.bind(d),this.removeEventListener=d.removeEventListener.bind(d),this.dispatchEvent=d.dispatchEvent.bind(d);function f(p,h){var m=document.createEvent("CustomEvent");return m.initCustomEvent(p,!1,!1,h),m}this.open=function(p){if(l=new WebSocket(a.url,s||[]),p){if(this.maxReconnectAttempts&&this.reconnectAttempts>this.maxReconnectAttempts)return}else d.dispatchEvent(f("connecting")),this.reconnectAttempts=0;(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","attempt-connect",a.url);var h=l,m=setTimeout(function(){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","connection-timeout",a.url),u=!0,h.close(),u=!1},a.timeoutInterval);l.onopen=function(_){clearTimeout(m),(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onopen",a.url),a.protocol=l.protocol,a.readyState=WebSocket.OPEN,a.reconnectAttempts=0;var y=f("open");y.isReconnect=p,p=!1,d.dispatchEvent(y)},l.onclose=function(_){if(clearTimeout(S),l=null,c)a.readyState=WebSocket.CLOSED,d.dispatchEvent(f("close"));else{a.readyState=WebSocket.CONNECTING;var y=f("connecting");y.code=_.code,y.reason=_.reason,y.wasClean=_.wasClean,d.dispatchEvent(y),!p&&!u&&((a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onclose",a.url),d.dispatchEvent(f("close")));var S=a.reconnectInterval*Math.pow(a.reconnectDecay,a.reconnectAttempts);setTimeout(function(){a.reconnectAttempts++,a.open(!0)},S>a.maxReconnectInterval?a.maxReconnectInterval:S)}},l.onmessage=function(_){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onmessage",a.url,_.data);var y=f("message");y.data=_.data,d.dispatchEvent(y)},l.onerror=function(_){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onerror",a.url,_),d.dispatchEvent(f("error"))}},this.automaticOpen==!0&&this.open(!1),this.send=function(p){if(l)return(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","send",a.url,p),l.send(p);throw"INVALID_STATE_ERR : Pausing to reconnect websocket"},this.close=function(p,h){typeof p>"u"&&(p=1e3),c=!0,l&&l.close(p,h)},this.refresh=function(){l&&l.close()}}return e.prototype.onopen=function(n){},e.prototype.onclose=function(n){},e.prototype.onconnecting=function(n){},e.prototype.onmessage=function(n){},e.prototype.onerror=function(n){},e.debugAll=!1,e.CONNECTING=WebSocket.CONNECTING,e.OPEN=WebSocket.OPEN,e.CLOSING=WebSocket.CLOSING,e.CLOSED=WebSocket.CLOSED,e})}(Zl)),Zl.exports}var BI=jI();const WI=Du(BI),wr=ds("ConfigurationStore",{state:()=>({buildoptions:[],library_name:"",version:"",websocket_port:0,allow_modifying_stored_playlists:!1,default_playlist_directory:""})}),zI={name:"App",components:{ModalDialogRemotePairing:LA,ModalDialogUpdate:sO,NavbarBottom:EI,NavbarTop:PI,NotificationList:HI},setup(){return{configurationStore:wr(),libraryStore:$u(),lyricsStore:Lu(),notificationsStore:Ds(),outputsStore:lh(),playerStore:Yn(),queueStore:ws(),remotesStore:Xp(),servicesStore:He(),settingsStore:mi(),uiStore:Vn()}},data(){return{pairing_active:!1,reconnect_attempts:0,token_timer_id:0}},computed:{show_burger_menu:{get(){return this.uiStore.show_burger_menu},set(t){this.uiStore.show_burger_menu=t}},show_player_menu:{get(){return this.uiStore.show_player_menu},set(t){this.uiStore.show_player_menu=t}},show_update_dialog:{get(){return this.uiStore.show_update_dialog},set(t){this.uiStore.show_update_dialog=t}}},watch:{show_burger_menu(){this.update_is_clipped()},show_player_menu(){this.update_is_clipped()}},created(){this.connect(),this.$Progress.start(),this.$router.beforeEach((t,e,n)=>{t.meta.show_progress&&!(t.path===e.path&&t.hash)&&(t.meta.progress&&this.$Progress.parseMeta(t.meta.progress),this.$Progress.start()),n()}),this.$router.afterEach((t,e)=>{t.meta.show_progress&&this.$Progress.finish()})},methods:{connect(){tt.config().then(({data:t})=>{this.configurationStore.$state=t,this.uiStore.hide_singles=t.hide_singles,document.title=t.library_name,this.open_websocket(),this.$Progress.finish()}).catch(()=>{this.notificationsStore.add({text:this.$t("server.connection-failed"),topic:"connection",type:"danger"})})},open_websocket(){const t=this.create_websocket(),e=this;t.onopen=()=>{e.reconnect_attempts=0,t.send(JSON.stringify({notify:["update","database","player","options","outputs","volume","queue","spotify","lastfm","pairing"]})),e.update_outputs(),e.update_player_status(),e.update_library_stats(),e.update_settings(),e.update_queue(),e.update_spotify(),e.update_lastfm(),e.update_pairing()};let n=!1;const s=()=>{n||(e.update_outputs(),e.update_player_status(),e.update_library_stats(),e.update_settings(),e.update_queue(),e.update_spotify(),e.update_lastfm(),e.update_pairing(),n=!0,setTimeout(()=>{n=!1},500))};window.addEventListener("focus",s),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&s()}),t.onmessage=i=>{const r=JSON.parse(i.data);(r.notify.includes("update")||r.notify.includes("database"))&&e.update_library_stats(),(r.notify.includes("player")||r.notify.includes("options")||r.notify.includes("volume"))&&e.update_player_status(),(r.notify.includes("outputs")||r.notify.includes("volume"))&&e.update_outputs(),r.notify.includes("queue")&&e.update_queue(),r.notify.includes("spotify")&&e.update_spotify(),r.notify.includes("lastfm")&&e.update_lastfm(),r.notify.includes("pairing")&&e.update_pairing()}},create_websocket(){const t=window.location.protocol.replace("http","ws"),e=window.location.hostname,n=this.configurationStore.websocket_port||`${window.location.port}/ws`,s=`${t}${e}:${n}`;return new WI(s,"notify",{maxReconnectInterval:2e3,reconnectInterval:1e3})},update_is_clipped(){this.show_burger_menu||this.show_player_menu?document.querySelector("html").classList.add("is-clipped"):document.querySelector("html").classList.remove("is-clipped")},update_lastfm(){tt.lastfm().then(({data:t})=>{this.servicesStore.lastfm=t})},update_library_stats(){tt.library_stats().then(({data:t})=>{this.libraryStore.$state=t}),tt.library_count("scan_kind is rss").then(({data:t})=>{this.libraryStore.rss=t})},update_lyrics(){const t=this.queueStore.current;t!=null&&t.track_id?tt.library_track(t.track_id).then(({data:e})=>{this.lyricsStore.lyrics=e.lyrics}):this.lyricsStore.$reset()},update_outputs(){tt.outputs().then(({data:t})=>{this.outputsStore.outputs=t.outputs})},update_pairing(){tt.pairing().then(({data:t})=>{this.remotesStore.$state=t,this.pairing_active=t.active})},update_player_status(){tt.player_status().then(({data:t})=>{this.playerStore.$state=t,this.update_lyrics()})},update_queue(){tt.queue().then(({data:t})=>{this.queueStore.$state=t,this.update_lyrics()})},update_settings(){tt.settings().then(({data:t})=>{this.settingsStore.$state=t})},update_spotify(){tt.spotify().then(({data:t})=>{this.servicesStore.spotify=t,this.token_timer_id>0&&(window.clearTimeout(this.token_timer_id),this.token_timer_id=0),t.webapi_token_expires_in>0&&t.webapi_token&&(this.token_timer_id=window.setTimeout(this.update_spotify,1e3*t.webapi_token_expires_in))})}},template:""};function qI(t,e,n,s,i,r){const o=x("vue-progress-bar"),a=x("navbar-top"),l=x("router-view"),c=x("modal-dialog-remote-pairing"),u=x("modal-dialog-update"),d=x("notification-list"),f=x("navbar-bottom");return O(),M(ht,null,[C(o,{class:"has-background-primary"}),C(a),C(l,null,{default:D(({Component:p})=>[(O(),vt(yu(p)))]),_:1}),C(c,{show:i.pairing_active,onClose:e[0]||(e[0]=p=>i.pairing_active=!1)},null,8,["show"]),C(u,{show:r.show_update_dialog,onClose:e[1]||(e[1]=p=>r.show_update_dialog=!1)},null,8,["show"]),xn(C(d,null,null,512),[[Cc,!r.show_burger_menu]]),C(f),xn(g("div",{class:"overlay-fullscreen",onClick:e[2]||(e[2]=p=>r.show_burger_menu=r.show_player_menu=!1)},null,512),[[Cc,r.show_burger_menu||r.show_player_menu]])],64)}const GI=rt(zI,[["render",qI]]),W0=function(){return document.ontouchstart!==null?"click":"touchstart"},$c="__vue_click_away__",z0=function(t,e,n){q0(t);let s=n.context,i=e.value,r=!1;setTimeout(function(){r=!0},0),t[$c]=function(o){if((!t||!t.contains(o.target))&&i&&r&&typeof i=="function")return i.call(s,o)},document.addEventListener(W0(),t[$c],!1)},q0=function(t){document.removeEventListener(W0(),t[$c],!1),delete t[$c]},KI=function(t,e,n){e.value!==e.oldValue&&z0(t,e,n)},XI={install:function(t){t.directive("click-away",YI)}},YI={mounted:z0,updated:KI,unmounted:q0};var $s=(t=>(t.LOADING="loading",t.LOADED="loaded",t.ERROR="error",t))($s||{});const ZI=typeof window<"u"&&window!==null,JI=nN(),QI=Object.prototype.propertyIsEnumerable,Vg=Object.getOwnPropertySymbols;function ua(t){return typeof t=="function"||toString.call(t)==="[object Object]"}function tN(t){return typeof t=="object"?t===null:typeof t!="function"}function eN(t){return t!=="__proto__"&&t!=="constructor"&&t!=="prototype"}function nN(){return ZI&&"IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype?("isIntersecting"in window.IntersectionObserverEntry.prototype||Object.defineProperty(window.IntersectionObserverEntry.prototype,"isIntersecting",{get(){return this.intersectionRatio>0}}),!0):!1}function sN(t,...e){if(!ua(t))throw new TypeError("expected the first argument to be an object");if(e.length===0||typeof Symbol!="function"||typeof Vg!="function")return t;for(const n of e){const s=Vg(n);for(const i of s)QI.call(n,i)&&(t[i]=n[i])}return t}function G0(t,...e){let n=0;for(tN(t)&&(t=e[n++]),t||(t={});n{this._logger("Not support IntersectionObserver!")})),this._initIntersectionObserver(e,s,r,o,a)}update(e,n){var a;if(!e)return;(a=this._realObserver(e))==null||a.unobserve(e);const{src:s,error:i,lifecycle:r,delay:o}=this._valueFormatter(typeof n=="string"?n:n.value);this._initIntersectionObserver(e,s,i,r,o)}unmount(e){var n;e&&((n=this._realObserver(e))==null||n.unobserve(e),this._images.delete(e))}loadImages(e,n,s,i){this._setImageSrc(e,n,s,i)}_setImageSrc(e,n,s,i){e.tagName.toLowerCase()==="img"?(n&&e.getAttribute("src")!==n&&e.setAttribute("src",n),this._listenImageStatus(e,()=>{this._lifecycle($s.LOADED,i,e)},()=>{var r;e.onload=null,this._lifecycle($s.ERROR,i,e),(r=this._realObserver(e))==null||r.disconnect(),s&&e.getAttribute("src")!==s&&e.setAttribute("src",s),this._log(()=>{this._logger(`Image failed to load!And failed src was: ${n} `)})})):e.style.backgroundImage=`url('${n}')`}_initIntersectionObserver(e,n,s,i,r){var a;const o=this.options.observerOptions;this._images.set(e,new IntersectionObserver(l=>{Array.prototype.forEach.call(l,c=>{r&&r>0?this._delayedIntersectionCallback(e,c,r,n,s,i):this._intersectionCallback(e,c,n,s,i)})},o)),(a=this._realObserver(e))==null||a.observe(e)}_intersectionCallback(e,n,s,i,r){var o;n.isIntersecting&&((o=this._realObserver(e))==null||o.unobserve(n.target),this._setImageSrc(e,s,i,r))}_delayedIntersectionCallback(e,n,s,i,r,o){if(n.isIntersecting){if(n.target.hasAttribute(Mr))return;const a=setTimeout(()=>{this._intersectionCallback(e,n,i,r,o),n.target.removeAttribute(Mr)},s);n.target.setAttribute(Mr,String(a))}else n.target.hasAttribute(Mr)&&(clearTimeout(Number(n.target.getAttribute(Mr))),n.target.removeAttribute(Mr))}_listenImageStatus(e,n,s){e.onload=n,e.onerror=s}_valueFormatter(e){let n=e,s=this.options.loading,i=this.options.error,r=this.options.lifecycle,o=this.options.delay;return ua(e)&&(n=e.src,s=e.loading||this.options.loading,i=e.error||this.options.error,r=e.lifecycle||this.options.lifecycle,o=e.delay||this.options.delay),{src:n,loading:s,error:i,lifecycle:r,delay:o}}_log(e){this.options.log&&e()}_lifecycle(e,n,s){switch(e){case $s.LOADING:s==null||s.setAttribute("lazy",$s.LOADING),n!=null&&n.loading&&n.loading(s);break;case $s.LOADED:s==null||s.setAttribute("lazy",$s.LOADED),n!=null&&n.loaded&&n.loaded(s);break;case $s.ERROR:s==null||s.setAttribute("lazy",$s.ERROR),n!=null&&n.error&&n.error(s);break}}_realObserver(e){return this._images.get(e)}_logger(e,...n){let s=console.error;switch(this.options.logLevel){case"error":s=console.error;break;case"warn":s=console.warn;break;case"info":s=console.info;break;case"debug":s=console.debug;break}s(e,n)}}const aN={install(t,e){const n=new oN(e);t.config.globalProperties.$Lazyload=n,t.provide("Lazyload",n),t.directive("lazy",{mounted:n.mount.bind(n),updated:n.update.bind(n),unmounted:n.unmount.bind(n)})}};var Ld={exports:{}},Dd={exports:{}},Md={};/** + */const nA="11.1.1";function sA(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Qp().__INTLIFY_PROD_DEVTOOLS__=!1)}const ls={UNEXPECTED_RETURN_TYPE:Sx,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32};function Es(t,...e){return Iu(t,null,void 0)}const Kf=Xi("__translateVNode"),Xf=Xi("__datetimeParts"),Yf=Xi("__numberParts"),iA=Xi("__setPluralRules"),rA=Xi("__injectWithOption"),Zf=Xi("__dispose");function $a(t){if(!ue(t))return t;for(const e in t)if(_s(t,e))if(!e.includes("."))ue(t[e])&&$a(t[e]);else{const n=e.split("."),s=n.length-1;let i=t,r=!1;for(let o=0;o{if("locale"in a&&"resource"in a){const{locale:l,resource:c}=a;l?(o[l]=o[l]||ve(),Yl(c,o[l])):Yl(c,o)}else St(a)&&Yl(JSON.parse(a),o)}),i==null&&r)for(const a in o)_s(o,a)&&$a(o[a]);return o}function V0(t){return t.type}function oA(t,e,n){let s=ue(e.messages)?e.messages:ve();"__i18nGlobal"in n&&(s=F0(t.locale.value,{messages:s,__i18n:n.__i18nGlobal}));const i=Object.keys(s);i.length&&i.forEach(r=>{t.mergeLocaleMessage(r,s[r])});{if(ue(e.datetimeFormats)){const r=Object.keys(e.datetimeFormats);r.length&&r.forEach(o=>{t.mergeDateTimeFormat(o,e.datetimeFormats[o])})}if(ue(e.numberFormats)){const r=Object.keys(e.numberFormats);r.length&&r.forEach(o=>{t.mergeNumberFormat(o,e.numberFormats[o])})}}}function xg(t){return C(si,null,t,0)}const Ag="__INTLIFY_META__",Og=()=>[],aA=()=>!1;let Ig=0;function Ng(t){return(e,n,s,i)=>t(n,s,An()||void 0,i)}const lA=()=>{const t=An();let e=null;return t&&(e=V0(t)[Ag])?{[Ag]:e}:null};function H0(t={}){const{__root:e,__injectWithOption:n}=t,s=e===void 0,i=t.flatJson,r=Ic?ss:fu;let o=Pe(t.inheritLocale)?t.inheritLocale:!0;const a=r(e&&o?e.locale.value:St(t.locale)?t.locale:Pc),l=r(e&&o?e.fallbackLocale.value:St(t.fallbackLocale)||Ye(t.fallbackLocale)||se(t.fallbackLocale)||t.fallbackLocale===!1?t.fallbackLocale:a.value),c=r(F0(a.value,t)),u=r(se(t.datetimeFormats)?t.datetimeFormats:{[a.value]:{}}),d=r(se(t.numberFormats)?t.numberFormats:{[a.value]:{}});let f=e?e.missingWarn:Pe(t.missingWarn)||Nc(t.missingWarn)?t.missingWarn:!0,p=e?e.fallbackWarn:Pe(t.fallbackWarn)||Nc(t.fallbackWarn)?t.fallbackWarn:!0,h=e?e.fallbackRoot:Pe(t.fallbackRoot)?t.fallbackRoot:!0,m=!!t.fallbackFormat,_=Ne(t.missing)?t.missing:null,y=Ne(t.missing)?Ng(t.missing):null,S=Ne(t.postTranslation)?t.postTranslation:null,b=e?e.warnHtmlMessage:Pe(t.warnHtmlMessage)?t.warnHtmlMessage:!0,v=!!t.escapeParameter;const E=e?e.modifiers:se(t.modifiers)?t.modifiers:{};let w=t.pluralRules||e&&e.pluralRules,P;P=(()=>{s&&yg(null);const F={version:nA,locale:a.value,fallbackLocale:l.value,messages:c.value,modifiers:E,pluralRules:w,missing:y===null?void 0:y,missingWarn:f,fallbackWarn:p,fallbackFormat:m,unresolving:!0,postTranslation:S===null?void 0:S,warnHtmlMessage:b,escapeParameter:v,messageResolver:t.messageResolver,messageCompiler:t.messageCompiler,__meta:{framework:"vue"}};F.datetimeFormats=u.value,F.numberFormats=d.value,F.__datetimeFormatters=se(P)?P.__datetimeFormatters:void 0,F.__numberFormatters=se(P)?P.__numberFormatters:void 0;const G=Ux(F);return s&&yg(G),G})(),Uo(P,a.value,l.value);function k(){return[a.value,l.value,c.value,u.value,d.value]}const R=Je({get:()=>a.value,set:F=>{P.locale=F,a.value=F}}),B=Je({get:()=>l.value,set:F=>{P.fallbackLocale=F,l.value=F,Uo(P,a.value,F)}}),V=Je(()=>c.value),j=Je(()=>u.value),Z=Je(()=>d.value);function ot(){return Ne(S)?S:null}function q(F){S=F,P.postTranslation=F}function et(){return _}function at(F){F!==null&&(y=Ng(F)),_=F,P.missing=y}const kt=(F,G,pt,Et,qt,U)=>{k();let W;try{__INTLIFY_PROD_DEVTOOLS__,s||(P.fallbackContext=e?Hx():void 0),W=F(P)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(P.fallbackContext=void 0)}if(pt!=="translate exists"&&qe(W)&&W===Nu||pt==="translate exists"&&!W){const[K,it]=G();return e&&h?Et(e):qt(K)}else{if(U(W))return W;throw Es(ls.UNEXPECTED_RETURN_TYPE)}};function Kt(...F){return kt(G=>Reflect.apply(Tg,null,[G,...F]),()=>Gf(...F),"translate",G=>Reflect.apply(G.t,G,[...F]),G=>G,G=>St(G))}function Vt(...F){const[G,pt,Et]=F;if(Et&&!ue(Et))throw Es(ls.INVALID_ARGUMENT);return Kt(G,pt,tn({resolvedMessage:!0},Et||{}))}function Wt(...F){return kt(G=>Reflect.apply(vg,null,[G,...F]),()=>zf(...F),"datetime format",G=>Reflect.apply(G.d,G,[...F]),()=>gg,G=>St(G))}function pe(...F){return kt(G=>Reflect.apply(Eg,null,[G,...F]),()=>qf(...F),"number format",G=>Reflect.apply(G.n,G,[...F]),()=>gg,G=>St(G))}function be(F){return F.map(G=>St(G)||qe(G)||Pe(G)?xg(String(G)):G)}const zt={normalize:be,interpolate:F=>F,type:"vnode"};function Y(...F){return kt(G=>{let pt;const Et=G;try{Et.processor=zt,pt=Reflect.apply(Tg,null,[Et,...F])}finally{Et.processor=null}return pt},()=>Gf(...F),"translate",G=>G[Kf](...F),G=>[xg(G)],G=>Ye(G))}function dt(...F){return kt(G=>Reflect.apply(Eg,null,[G,...F]),()=>qf(...F),"number format",G=>G[Yf](...F),Og,G=>St(G)||Ye(G))}function ct(...F){return kt(G=>Reflect.apply(vg,null,[G,...F]),()=>zf(...F),"datetime format",G=>G[Xf](...F),Og,G=>St(G)||Ye(G))}function yt(F){w=F,P.pluralRules=w}function Ht(F,G){return kt(()=>{if(!F)return!1;const pt=St(G)?G:a.value,Et=$(pt),qt=P.messageResolver(Et,F);return mo(qt)||ts(qt)||St(qt)},()=>[F],"translate exists",pt=>Reflect.apply(pt.te,pt,[F,G]),aA,pt=>Pe(pt))}function Xt(F){let G=null;const pt=A0(P,l.value,a.value);for(let Et=0;Et{o&&(a.value=F,P.locale=F,Uo(P,a.value,l.value))}),qn(e.fallbackLocale,F=>{o&&(l.value=F,P.fallbackLocale=F,Uo(P,a.value,l.value))}));const lt={id:Ig,locale:R,fallbackLocale:B,get inheritLocale(){return o},set inheritLocale(F){o=F,F&&e&&(a.value=e.locale.value,l.value=e.fallbackLocale.value,Uo(P,a.value,l.value))},get availableLocales(){return Object.keys(c.value).sort()},messages:V,get modifiers(){return E},get pluralRules(){return w||{}},get isGlobal(){return s},get missingWarn(){return f},set missingWarn(F){f=F,P.missingWarn=f},get fallbackWarn(){return p},set fallbackWarn(F){p=F,P.fallbackWarn=p},get fallbackRoot(){return h},set fallbackRoot(F){h=F},get fallbackFormat(){return m},set fallbackFormat(F){m=F,P.fallbackFormat=m},get warnHtmlMessage(){return b},set warnHtmlMessage(F){b=F,P.warnHtmlMessage=F},get escapeParameter(){return v},set escapeParameter(F){v=F,P.escapeParameter=F},t:Kt,getLocaleMessage:$,setLocaleMessage:z,mergeLocaleMessage:st,getPostTranslationHandler:ot,setPostTranslationHandler:q,getMissingHandler:et,setMissingHandler:at,[iA]:yt};return lt.datetimeFormats=j,lt.numberFormats=Z,lt.rt=Vt,lt.te=Ht,lt.tm=A,lt.d=Wt,lt.n=pe,lt.getDateTimeFormat=Q,lt.setDateTimeFormat=T,lt.mergeDateTimeFormat=N,lt.getNumberFormat=H,lt.setNumberFormat=X,lt.mergeNumberFormat=nt,lt[rA]=n,lt[Kf]=Y,lt[Xf]=ct,lt[Yf]=dt,lt}const oh={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:t=>t==="parent"||t==="global",default:"parent"},i18n:{type:Object}};function cA({slots:t},e){return e.length===1&&e[0]==="default"?(t.default?t.default():[]).reduce((s,i)=>[...s,...i.type===ht?i.children:[i]],[]):e.reduce((n,s)=>{const i=t[s];return i&&(n[s]=i()),n},ve())}function U0(){return ht}const uA=fi({name:"i18n-t",props:tn({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:t=>qe(t)||!isNaN(t)}},oh),setup(t,e){const{slots:n,attrs:s}=e,i=t.i18n||ah({useScope:t.scope,__useComponent:!0});return()=>{const r=Object.keys(n).filter(d=>d!=="_"),o=ve();t.locale&&(o.locale=t.locale),t.plural!==void 0&&(o.plural=St(t.plural)?+t.plural:t.plural);const a=cA(e,r),l=i[Kf](t.keypath,a,o),c=tn(ve(),s),u=St(t.tag)||ue(t.tag)?t.tag:U0();return Ds(u,c,l)}}}),Pg=uA;function dA(t){return Ye(t)&&!St(t[0])}function j0(t,e,n,s){const{slots:i,attrs:r}=e;return()=>{const o={part:!0};let a=ve();t.locale&&(o.locale=t.locale),St(t.format)?o.key=t.format:ue(t.format)&&(St(t.format.key)&&(o.key=t.format.key),a=Object.keys(t.format).reduce((f,p)=>n.includes(p)?tn(ve(),f,{[p]:t.format[p]}):f,ve()));const l=s(t.value,o,a);let c=[o.key];Ye(l)?c=l.map((f,p)=>{const h=i[f.type],m=h?h({[f.type]:f.value,index:p,parts:l}):[f.value];return dA(m)&&(m[0].key=`${f.type}-${p}`),m}):St(l)&&(c=[l]);const u=tn(ve(),r),d=St(t.tag)||ue(t.tag)?t.tag:U0();return Ds(d,u,c)}}const fA=fi({name:"i18n-n",props:tn({value:{type:Number,required:!0},format:{type:[String,Object]}},oh),setup(t,e){const n=t.i18n||ah({useScope:t.scope,__useComponent:!0});return j0(t,e,L0,(...s)=>n[Yf](...s))}}),$g=fA;function pA(t,e){const n=t;if(t.mode==="composition")return n.__getInstance(e)||t.global;{const s=n.__getInstance(e);return s!=null?s.__composer:t.global.__composer}}function hA(t){const e=o=>{const{instance:a,value:l}=o;if(!a||!a.$)throw Es(ls.UNEXPECTED_ERROR);const c=pA(t,a.$),u=Rg(l);return[Reflect.apply(c.t,c,[...Lg(u)]),c]};return{created:(o,a)=>{const[l,c]=e(a);Ic&&t.global===c&&(o.__i18nWatcher=qn(c.locale,()=>{a.instance&&a.instance.$forceUpdate()})),o.__composer=c,o.textContent=l},unmounted:o=>{Ic&&o.__i18nWatcher&&(o.__i18nWatcher(),o.__i18nWatcher=void 0,delete o.__i18nWatcher),o.__composer&&(o.__composer=void 0,delete o.__composer)},beforeUpdate:(o,{value:a})=>{if(o.__composer){const l=o.__composer,c=Rg(a);o.textContent=Reflect.apply(l.t,l,[...Lg(c)])}},getSSRProps:o=>{const[a]=e(o);return{textContent:a}}}}function Rg(t){if(St(t))return{path:t};if(se(t)){if(!("path"in t))throw Es(ls.REQUIRED_VALUE,"path");return t}else throw Es(ls.INVALID_VALUE)}function Lg(t){const{path:e,locale:n,args:s,choice:i,plural:r}=t,o={},a=s||{};return St(n)&&(o.locale=n),qe(i)&&(o.plural=i),qe(r)&&(o.plural=r),[e,a,o]}function mA(t,e,...n){const s=se(n[0])?n[0]:{};(Pe(s.globalInstall)?s.globalInstall:!0)&&([Pg.name,"I18nT"].forEach(r=>t.component(r,Pg)),[$g.name,"I18nN"].forEach(r=>t.component(r,$g)),[Mg.name,"I18nD"].forEach(r=>t.component(r,Mg))),t.directive("t",hA(e))}const gA=Xi("global-vue-i18n");function bA(t={}){const e=Pe(t.globalInjection)?t.globalInjection:!0,n=new Map,[s,i]=yA(t),r=Xi("");function o(u){return n.get(u)||null}function a(u,d){n.set(u,d)}function l(u){n.delete(u)}const c={get mode(){return"composition"},async install(u,...d){if(u.__VUE_I18N_SYMBOL__=r,u.provide(u.__VUE_I18N_SYMBOL__,c),se(d[0])){const h=d[0];c.__composerExtend=h.__composerExtend,c.__vueI18nExtend=h.__vueI18nExtend}let f=null;e&&(f=TA(u,c.global)),mA(u,c,...d);const p=u.unmount;u.unmount=()=>{f&&f(),c.dispose(),p()}},get global(){return i},dispose(){s.stop()},__instances:n,__getInstance:o,__setInstance:a,__deleteInstance:l};return c}function ah(t={}){const e=An();if(e==null)throw Es(ls.MUST_BE_CALL_SETUP_TOP);if(!e.isCE&&e.appContext.app!=null&&!e.appContext.app.__VUE_I18N_SYMBOL__)throw Es(ls.NOT_INSTALLED);const n=_A(e),s=SA(n),i=V0(e),r=vA(t,i);if(r==="global")return oA(s,t,i),s;if(r==="parent"){let l=EA(n,e,t.__useComponent);return l==null&&(l=s),l}const o=n;let a=o.__getInstance(e);if(a==null){const l=tn({},t);"__i18n"in i&&(l.__i18n=i.__i18n),s&&(l.__root=s),a=H0(l),o.__composerExtend&&(a[Zf]=o.__composerExtend(a)),CA(o,e,a),o.__setInstance(e,a)}return a}function yA(t,e){const n=ru(),s=n.run(()=>H0(t));if(s==null)throw Es(ls.UNEXPECTED_ERROR);return[n,s]}function _A(t){const e=is(t.isCE?gA:t.appContext.app.__VUE_I18N_SYMBOL__);if(!e)throw Es(t.isCE?ls.NOT_INSTALLED_WITH_PROVIDE:ls.UNEXPECTED_ERROR);return e}function vA(t,e){return Ou(t)?"__i18n"in e?"local":"global":t.useScope?t.useScope:"local"}function SA(t){return t.mode==="composition"?t.global:t.global.__composer}function EA(t,e,n=!1){let s=null;const i=e.root;let r=wA(e,n);for(;r!=null;){const o=t;if(t.mode==="composition"&&(s=o.__getInstance(r)),s!=null||i===r)break;r=r.parent}return s}function wA(t,e=!1){return t==null?null:e&&t.vnode.ctx||t.parent}function CA(t,e,n){Ao(()=>{},e),Ka(()=>{const s=n;t.__deleteInstance(e);const i=s[Zf];i&&(i(),delete s[Zf])},e)}const kA=["locale","fallbackLocale","availableLocales"],Dg=["t","rt","d","n","tm","te"];function TA(t,e){const n=Object.create(null);return kA.forEach(i=>{const r=Object.getOwnPropertyDescriptor(e,i);if(!r)throw Es(ls.UNEXPECTED_ERROR);const o=Ae(r.value)?{get(){return r.value.value},set(a){r.value.value=a}}:{get(){return r.get&&r.get()}};Object.defineProperty(n,i,o)}),t.config.globalProperties.$i18n=n,Dg.forEach(i=>{const r=Object.getOwnPropertyDescriptor(e,i);if(!r||!r.value)throw Es(ls.UNEXPECTED_ERROR);Object.defineProperty(t.config.globalProperties,`$${i}`,r)}),()=>{delete t.config.globalProperties.$i18n,Dg.forEach(i=>{delete t.config.globalProperties[`$${i}`]})}}const xA=fi({name:"i18n-d",props:tn({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},oh),setup(t,e){const n=t.i18n||ah({useScope:t.scope,__useComponent:!0});return j0(t,e,R0,(...s)=>n[Xf](...s))}}),Mg=xA;sA();Lx(gx);Dx(Px);Mx(A0);if(__INTLIFY_PROD_DEVTOOLS__){const t=Qp();t.__INTLIFY__=!0,bx(t.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const Rd=t=>t&&typeof t=="object"&&!Array.isArray(t),Jf=(t,...e)=>{if(!e.length)return t;const n=e.shift();if(Rd(t)&&Rd(n))for(const s in n)Rd(n[s])?(t[s]||Object.assign(t,{[s]:{}}),Jf(t[s],n[s])):Object.assign(t,{[s]:n[s]});return Jf(t,...e)},AA=Jf({},{de:{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Alben"}]}]}},artists:{t:0,b:{t:2,i:[{t:4,k:"count"},{t:3,v:" Künstler"}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Hörbuch"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Hörbuch"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Hörbücher"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Autor"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Autor"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Autoren"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" canal"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" canaux"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Komponist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Komponist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Komponisten"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Genres"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Playlist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Playlisten"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Podcasts"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Stationen"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Track"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Track"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Tracks"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"Datei"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Stream"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},help:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen eines Podcasts führt zur Anlage einer RSS-Playlist, so kann OwnTone das Podcast-Abo verwalten."}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Verarbeite…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcast hinzufügen"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"Lade…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Stream hinzufügen"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Markiere als gespielt"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Entferne podcast"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Als nächstes hinzufügen"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Als nächstes hinzufügen"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Playlistname"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Speichern"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"Speichere…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Warteschlange als Playlist speichern"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Entfernen"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Remote paaren"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Pairing-Code"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Remote-Paarungs-Anfrage"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"Markiere als neu"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Markiere als gespielt"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"Alles neu einlesen"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"Nur RSS-Feeds neu einlesen"}},info:{t:0,b:{t:2,i:[{t:3}],s:"Suche nach neuen, gelöschten und veränderten Dateien"}},local:{t:0,b:{t:2,i:[{t:3}],s:"Nur lokale Bibliothek neu einlesen"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek wird neu eingelesen…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"Metadata von unveränderten Dateien neu einlesen"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Nur Spotify neu einlesen"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek neu einlesen"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"Deutsch"}},en:{t:0,b:{t:2,i:[{t:3}],s:"Englisch (English)"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"Französisch (Français)"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"Vereinfachtes Chinesisch (簡體中文)"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"Traditionelles Chinesisch (繁體中文)"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"Diesen Podcast dauerhaft aus der Bibliothek löschen?"},{t:4,k:"separator"},{t:3,v:"(Damit wird auch die RSS-Playliste "},{t:4,k:"name"},{t:3,v:" gelöscht)"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Entfernen"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Entferne podcast"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"Track kann nicht gespielt werden"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:", Beschränkungsgrund: "},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"Hörbuch"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musik"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"Über"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP-stream-Fehler: Stream kann nicht geladen werden oder wurde wg. Netzwerkfehler gestopt"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP-stream"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Lautstärke"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musik"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Suche"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"Einstellungen"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek neu einlesen"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"Oberfläche erstellt mit "},{t:4,k:"bulma"},{t:3,v:", "},{t:4,k:"mdi"},{t:3,v:", "},{t:4,k:"vuejs"},{t:3,v:", "},{t:4,k:"axios"},{t:3,v:" und "},{t:4,k:"others"},{t:3,v:"."}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"Compiliert mit Unterstützung von "},{t:4,k:"options"},{t:3,v:"."}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek"}},more:{t:0,b:{t:2,i:[{t:3}],s:"mehr"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}},version:{t:0,b:{t:2,i:[{t:3,v:"Version "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Singles und Alben angezeigt, die nur in Playlisten enthalten sind."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Singles angezeigt"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Alben angezeigt, die nur in der Spotify-Bibliothek enthalten sind."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Spotify-Alben"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Künstler › Name"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Künstler › Erscheinungsdatum"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich hinzugefügt"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich erschienen"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung wird kein Inhalt angezeigt, der nur in der Spotify-Bibliothek enthalten ist."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Spotify-Inhalt"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Erscheinungsdatum"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Namen"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich hinzugefügt"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Singles und Alben angezeigt, die nur in Playlisten enthalten sind."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Singles angezeigt"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Nach Aktivierung werden keine Alben angezeigt, die nur in der Spotify-Bibliothek enthalten sind."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Künstler auf Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Autoren"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"Autoren"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Zeige mehr"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich hinzugefügt"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich gespielt"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},history:{t:0,b:{t:2,i:[{t:3}],s:"Verlauf"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"Tracks durch Auswählen aus der Bibliothek anfügen"}},live:{t:0,b:{t:2,i:[{t:3}],s:"Live"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Deine Playliste ist leer."}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" Tracks"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Entfernen"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"Diesen Podcast dauerhaft aus der Bibliothek löschen?"},{t:4,k:"separator"},{t:3,v:"(Damit wird auch die RSS-Playliste "},{t:4,k:"name"},{t:3,v:" gelöscht)"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Entferne podcast"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Alle abgespielten markieren"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"Neue Episoden"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Stream hinzufügen"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"Alle entfernen"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"Bearbeiten"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"Vorherige verbergen"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Speichern"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Warteschlange"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"Ausdrücken"}},help:{t:0,b:{t:2,i:[{t:3,v:"Tip: Du kannst mit einer Smart-Playlist-Abfrage-Sprache nach "},{t:4,k:"help"},{t:3,v:" suchen wenn Du dem Ausdruck ein "},{t:4,k:"query"},{t:3,v:" voranstellst."}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"Keine Ergebnisse gefunden"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Suche"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige das Album"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Alben"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Künstler"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Künstler"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige das Buch"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Hörbücher"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Komponist"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Komponisten"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige die Playlist"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Playlisten"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Podcast"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Podcasts"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Track"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Tracks"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone verarbeitet PNG- und JPEG-Artwork, welches in einer eigenen Datei in der Bibliothek, in die Dateien eingebettet oder online von Radiostationen bereitgestellt werden kann."}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"Zusätzlich kann auf folgende Artwork-Anbieter zugegriffen werden:"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"Zeige Cover-Artwork in der Albumliste"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"Bereitgestellte Artwork von Radiostationen ignorieren"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Keine aktive Pairing-Anfrage"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Pairing-Code"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"Remote-Pairing-Anfrage von "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Pairing Remote"}},send:{t:0,b:{t:2,i:[{t:3}],s:"Senden"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"Wenn der Laufsprecher PIN-basiertes Pairing verlangt, aktiviere ihn hier und gib dann den hier PIN an, der am Lautsprecher angezeigt wird."}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Lautsprecher-Pairing und Geräteverifikation"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Verifikationscode"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Verifizieren"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Sprache"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musik"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"Wenn mehr Dateien ausgewählt werden, als der Bildschirm anzeigen kann, verschwindet das Burger-Menü."}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Wähle hier die Einträge des oberen Navigationsmenüs "}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Navigationsmenüs"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"Aktuell läuft-Seite"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"Beschränkte die Zahl der Alben"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"Kürzlich hinzugefügt-Seite"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Suche"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"Komma getrennte Liste der Genres, für die der Komponist angezeigt werden soll."},{t:5,i:0},{t:3,v:"Leer lassen, um den Komponisten immer anzuzeigen."},{t:5,i:0},{t:3,v:'Der Genre-Tag des aktuellen Tracks wird abgeglichen als Teil-String des Genre-Tags. Z.B. "classical, soundtrack" wird den Komponisten beim Genre-Tag "Contemporary Classical" anzeigen'}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"Zeige den Komponisten für die aufgelisteten Genres an"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"Wenn aktiviert, wird der Komponist angezeigt."}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"Komponisten anzeigen"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"Dateipfad anzeigen"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Melde Dich mit Deinem Last.fm-Benutzernamen und Passwort an, um Scrobbeln zu aktivieren"}},info:{t:0,b:{t:2,i:[{t:3}],s:"OwnTone wird den Benutzernamen und das Passwort von last.fm nicht speichern, nur den Sitzungs-Schlüssel. Dieser läuft nicht ab."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone wurde ohne Unterstützung für Last.fm erstellt."}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone wurde entweder ohne Unterstützung für Spotify erstellt oder libspotify ist nicht installiert."}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"Angemeldet als "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"Spotify Premium Abo erforderlich. Zugriff auf die Spotify Web-Api ermöglicht scannen der Spotify-Blibliothek. Erforderliche scopes sind: "}},user:{t:0,b:{t:2,i:[{t:3}],s:"Zugriff gestattet für "}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"Authorisiere Web-API-Zugriff"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Zugriff auf die Spotify Web-API gestatten"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"Bitte den Zugriff der Web-API durch setzen folgender Zugriffsrechte für OwnTone: "}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"Einloggen"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Ausloggen"}},password:{t:0,b:{t:2,i:[{t:3}],s:"Passwort"}},username:{t:0,b:{t:2,i:[{t:3}],s:"Benutzername"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},general:{t:0,b:{t:2,i:[{t:3}],s:"Allgemein"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Online-Services"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"Fernbedienungen und Ausgänge"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Ausgezeichnete Playlisten"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"Neuvorstellung"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Zeige mehr"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"Keine Ergebnisse gefunden"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Suche"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige das Album"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Alben"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Künstler"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Künstler"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige die Playlist"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Playlisten"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Zeige den Track"},{t:2,i:[{t:3,v:"Zeige alle "},{t:4,k:"count"},{t:3,v:" Tracks"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"Ordner"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"Einfache"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"Intelligente"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"Verlauf löschen"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"Wiedergabe anhalten"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Wiedergeben"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"Alle Tracks wiederholen"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"Tracks einmal lesen"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"Aktuellen Track wiederholen"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"Rückwärts im Track suchen"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"Vorwärts im Track suchen"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Tracks zufällig wiedergeben"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"Tracks in Reihenfolge wiedergeben"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"Zum vorherigen Track springen"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"Zum nächsten Track springen"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"Wiedergabe stoppen"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"Liedtexte anzeigen/verbergen"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"Hinzugefügt am"}},album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Album-Künstler"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"Kommentar"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"Komponist"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"Dauer"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"Genre"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"Besitzer"}},path:{t:0,b:{t:2,i:[{t:3}],s:"Pfad"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"Spielzeit"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"Popularität / Followers"}},position:{t:0,b:{t:2,i:[{t:3}],s:"Disc / Track"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"Qualität"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Erscheinungsdatum"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}},type:{t:0,b:{t:2,i:[{t:3}],s:"Art"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"Neu eingelesen"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"Laufzeit"}},year:{t:0,b:{t:2,i:[{t:3}],s:"Jahr"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Fehler bei Verbindung zum OwnTone-Server"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"Anfrage gescheitert (Status: "},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"Warteschlange zu Playlist "},{t:4,k:"name"},{t:3,v:" gesichert"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" Track an die Abspielliste angehängt"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" Tracks an die Abspielliste angehängt"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"Warteschlange ist leer"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"Heute"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"Letzte Woche"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Letzer Monat"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Unbestimmt"}}}}},{en:{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" albums"}]}]}},artists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" artist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" artist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" artists"}]}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" audiobook"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" audiobook"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" audiobooks"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" author"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" author"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" authors"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" channel"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" channels"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" composer"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" composer"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" composers"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" genres"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" playlist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" playlist"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" playlists"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" podcasts"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" stations"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" track"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" track"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" tracks"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"File"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Stream"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},help:{t:0,b:{t:2,i:[{t:3}],s:"Adding a podcast includes creating an RSS playlist, that will allow OwnTone to manage the podcast subscription."}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Processing…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Add podcast"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"Loading…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Add stream"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Mark as played"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Remove podcast"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Add Next"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Add Next"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Playlist name"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Save"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"Saving…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Save queue to playlist"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:6,k:{t:7,v:"count.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Remove"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Pair Remote"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Pairing code"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Remote pairing request"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"Mark as new"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Mark as played"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:6,k:{t:7,v:"count.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"Update everything"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"Only update RSS feeds"}},info:{t:0,b:{t:2,i:[{t:3}],s:"Scan for new, deleted and modified files"}},local:{t:0,b:{t:2,i:[{t:3}],s:"Only update local library"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"Library update in progress…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"Rescan metadata of unmodified files"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Rescan"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Only update Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Update library"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"German (Deutsch)"}},en:{t:0,b:{t:2,i:[{t:3}],s:"English"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"French (Français)"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"Simplified Chinese (簡體中文)"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"Traditional Chinese (繁體中文)"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"Permanently remove this podcast from your library?"},{t:4,k:"separator"},{t:3,v:"(This will also remove the RSS playlist "},{t:4,k:"name"},{t:3,v:")"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Remove"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Remove podcast"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"Track is not playable"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:", restriction reason: "},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"Audiobook"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Music"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"About"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP stream error: failed to load stream or stopped loading due to network problem"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP stream"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Volume"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Files"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Music"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Search"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"Settings"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Update Library"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"Web interface built with "},{t:4,k:"bulma"},{t:3,v:", "},{t:4,k:"mdi"},{t:3,v:", "},{t:4,k:"vuejs"},{t:3,v:", "},{t:4,k:"axios"},{t:3,v:" and "},{t:4,k:"others"},{t:3,v:"."}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"Compiled with support for "},{t:4,k:"options"},{t:3,v:"."}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"Library"}},more:{t:0,b:{t:2,i:[{t:3}],s:"more"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Update"}},version:{t:0,b:{t:2,i:[{t:3,v:"Version "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides singles and albums with tracks that only appear in playlists."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Hide singles"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides albums that only appear in your Spotify library."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Hide albums from Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Artist › Name"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Artist › Release date"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Recently added"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"Recently released"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides the content only appearing in your Spotify library."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Hide the content from Spotify"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Release date"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Recently added"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides artists that only appear on singles or playlists."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Hide singles"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides artists that only appear in your Spotify library."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Hide artists from Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Authors"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"Authors"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Files"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Show more"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"Recently added"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"Recently played"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},history:{t:0,b:{t:2,i:[{t:3}],s:"History"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"Add some tracks by browsing your library"}},live:{t:0,b:{t:2,i:[{t:3}],s:"Live"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Your play queue is empty"}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" tracks"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Remove"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"Permanently remove this podcast from your library?"},{t:4,k:"separator"},{t:3,v:"(This will also remove the RSS playlist "},{t:4,k:"name"},{t:3,v:")"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Remove podcast"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Mark All Played"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"New Episodes"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Update"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Add stream"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"Clear"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"Edit"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"Hide previous"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Save"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Queue"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"expression"}},help:{t:0,b:{t:2,i:[{t:3,v:"Tip: you can search by a smart playlist query language "},{t:4,k:"help"},{t:3,v:" if you prefix it with "},{t:4,k:"query"},{t:3,v:"."}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"No results found"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Search"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the album"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" albums"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the artist"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" artists"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the audiobook"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" audiobooks"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the composer"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" composers"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the playlist"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" playlists"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the podcast"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" podcasts"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the track"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" tracks"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Library"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone supports PNG and JPEG artwork which is either placed as separate image files in the library, embedded in the media files or made available online by radio stations."}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"In addition to that, you can enable fetching artwork from the following artwork providers:"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"Show cover artwork in album list"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"Ignore artwork provided by radio stations"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"No active pairing request."}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Pairing code"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"Remote pairing request from "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Remote Pairing"}},send:{t:0,b:{t:2,i:[{t:3}],s:"Send"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"If your speaker requires pairing then activate it below and enter the PIN that it displays."}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Speaker pairing and device verification"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Verification code"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Verify"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Files"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Language"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Music"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"If you select more items than can be shown on your screen then the burger menu will disappear."}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Select the top navigation bar menu items"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Navigation Bar"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"Now playing page"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"Limit the number of albums displayed"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"Recently added page"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Search"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"Comma-separated list of genres, for which the composer must be displayed."},{t:5,i:0},{t:3,v:"Leave empty to always show the composer."},{t:5,i:0},{t:3,v:'The genre tag of the current track is matched by checking, if one of the defined genres are included. For example setting to "classical, soundtrack" will show the composer for tracks with a genre tag of "Contemporary Classical"'}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"Show composer only for listed genres"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"If enabled, the composer of the current playing track is displayed"}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"Show composer"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"Show filepath"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Login with your Last.fm username and password to enable scrobbling"}},info:{t:0,b:{t:2,i:[{t:3}],s:"OwnTone will not store your Last.fm username/password, only the session key. The session key does not expire."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone was built without support for Last.fm."}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone was either built without support for Spotify or libspotify is not installed."}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"Logged in as "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"You must have a Spotify premium account. Access to the Spotify Web API enables scanning of your Spotify library. Required scopes are: "}},user:{t:0,b:{t:2,i:[{t:3}],s:"Access granted for "}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"Authorize Web API access"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Grant access to the Spotify Web API"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"Please reauthorize Web API access to grant OwnTone the following additional access rights: "}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"Login"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Logout"}},password:{t:0,b:{t:2,i:[{t:3}],s:"Password"}},username:{t:0,b:{t:2,i:[{t:3}],s:"Username"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},general:{t:0,b:{t:2,i:[{t:3}],s:"General"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Online Services"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"Remotes and Outputs"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Featured Playlists"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"New Releases"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Show More"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"No results found"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Search"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the album"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" albums"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the artist"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" artists"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the playlist"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" playlists"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Show the track"},{t:2,i:[{t:3,v:"Show all "},{t:4,k:"count"},{t:3,v:" tracks"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"Folder"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"Plain"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"Smart"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"Clear history"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"Pause"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"Repeat all tracks"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"Read tracks once"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"Repeat current track"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"Seek backward in the track"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"Seek forward in the track"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Play tracks randomly"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"Play tracks in order"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"Skip to previous track"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"Skip to next track"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"Stop"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"Toggle lyrics"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"Added On"}},album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Album Artist"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"Artist"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"Comment"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"Composer"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"Duration"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"Genre"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"Owner"}},path:{t:0,b:{t:2,i:[{t:3}],s:"Path"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"Playtime"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"Popularity / Followers"}},position:{t:0,b:{t:2,i:[{t:3}],s:"Disc / Track"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"Quality"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Release Date"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}},type:{t:0,b:{t:2,i:[{t:3}],s:"Type"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"Updated"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"Uptime"}},year:{t:0,b:{t:2,i:[{t:3}],s:"Year"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Failed to connect to OwnTone server"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"Request failed (status: "},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"Queue saved to playlist "},{t:4,k:"name"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" track appended to the queue"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" tracks appended to the queue"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"Queue is empty"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"Today"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"Last week"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Last month"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Undefined"}}}}},{fr:{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" album"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" albums"}]}]}},artists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" artiste"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" artiste"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" artistes"}]}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" livre audio"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" livre audio"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" livres audio"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" auteur"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" auteur"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" auteurs"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" canal"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" canaux"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" compositeur"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" compositeur"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" compositeurs"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" genre"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" genres"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" liste de lecture"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" liste de lecture"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" listes de lecture"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" podcasts"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" station"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" stations"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" piste"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" piste"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" pistes"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"Fichier"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Flux"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},help:{t:0,b:{t:2,i:[{t:3}],s:"L’ajout d’un podcast inclut la création d’une liste de lecture RSS, qui permettra à OwnTone de gérer l’abonnement au podcast."}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-du-flux-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Traitement en cours…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter un podcast"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"Chargement…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-du-flux"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter un flux"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme lu"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Supprimer le podcast"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter ensuite"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter ensuite"}},add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Nom de la liste de lecture"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrer"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrement en cours…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrer la file d’attente dans une liste de lecture"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Jumeler la télécommande"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Code de jumelage"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Demande de jumelage de télécommande"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme nouveau"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme lu"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"Tout actualiser"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser uniquement les flux RSS"}},info:{t:0,b:{t:2,i:[{t:3}],s:"Recherche les fichiers ajoutés, supprimés et modifiés"}},local:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser uniquement la bibliothèque locale"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"Actualisation de la bibliothèque en cours…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"Analyser les métadonnées des fichiers non modifiés"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Analyser"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser uniquement Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser la bibliothèque"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"Allemand (Deutsch)"}},en:{t:0,b:{t:2,i:[{t:3}],s:"Anglais (English)"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"Français"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"Chinois simplifié (簡體中文)"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"Chinois traditionnel (繁體中文)"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"Supprimer définitivement ce podcast de votre bibliothèque ?"},{t:4,k:"separator"},{t:3,v:"(Cela supprimera également la liste de lecture RSS "},{t:4,k:"name"},{t:3,v:")"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Supprimer le podcast"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"La piste ne peut pas être lue"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:", raison de la restriction : "},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"Livre audio"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musique"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"À propos"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"Erreur du flux HTTP : échec du chargement du flux ou arrêt du chargement en raison d’un problème réseau"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"Flux HTTP"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Volume"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musique"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"Réglages"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Actualiser la bibliothèque"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"Interface utilisateur construite avec "},{t:4,k:"bulma"},{t:3,v:", "},{t:4,k:"mdi"},{t:3,v:", "},{t:4,k:"vuejs"},{t:3,v:", "},{t:4,k:"axios"},{t:3,v:" et "},{t:4,k:"others"},{t:3,v:"."}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"Compilé avec les options "},{t:4,k:"options"},{t:3,v:"."}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothèque"}},more:{t:0,b:{t:2,i:[{t:3}],s:"plus"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser"}},version:{t:0,b:{t:2,i:[{t:3,v:"Version "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filtrer"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les singles et les albums dont les pistes n’apparaissent que dans les listes de lecture."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les singles"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les albums qui n’apparaissent que dans votre bibliothèque Spotify."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les albums de Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Artiste › Nom"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Artiste › Date de sortie"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Ajouts récents"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"Sorties récentes"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filtrer"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque le contenu qui n’apparaît que dans votre bibliothèque Spotify."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Masquer le contenu de Spotify"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Date de sortie"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"Filtrer"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"Ajouts récents"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les artistes qui n’apparaissent que dans des singles ou des listes de lecture."}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les singles"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les artistes qui n’apparaissent que dans votre bibliothèque Spotify."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les artistes de Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Auteurs"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"Auteurs"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Afficher plus"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"Ajouts récents"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"Lectures récentes"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},history:{t:0,b:{t:2,i:[{t:3}],s:"Historique"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"Ajoutez des pistes en parcourant votre bibliothèque"}},live:{t:0,b:{t:2,i:[{t:3}],s:"En direct"}},title:{t:0,b:{t:2,i:[{t:3}],s:"La file d’attente est vide"}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" pistes"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"Supprimer ce podcast de manière permanente de la bibliothèque ?"},{t:4,k:"separator"},{t:3,v:"(Cela supprimera également la liste de lecture RSS "},{t:4,k:"name"},{t:3,v:")"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"Supprimer le podcast"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme lus"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"Nouveaux épisodes"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter un flux"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"Effacer"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"Éditer"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"Masquer l’historique"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrer"}},title:{t:0,b:{t:2,i:[{t:3}],s:"File d’attente"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"expression"}},help:{t:0,b:{t:2,i:[{t:3,v:"Astuce : vous pouvez effectuer une recherche avec une "},{t:4,k:"help"},{t:3,v:" du langage de requête de liste de lecture intelligente en préfixant votre requête avec "},{t:4,k:"query"}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"Aucun résultat trouvé"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher l’album"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" albums"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher l’artiste"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" artistes"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher le livre audio"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" livres audio"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher le compositeur"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" compositeurs"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher la liste de lecture"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" listes de lecture"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher le podcast"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" podcasts"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher la piste"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"n"},{t:3,v:" pistes"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Pistes"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothèque"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"Illustrations"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone prend en charge les illustrations au format PNG et JPEG qui sont soit placées dans la bibliothèque en tant que fichiers image séparés, soit intégrées dans les fichiers média, soit mises à disposition en ligne par les stations de radio."}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"En outre, vous pouvez activer la récupération des illustrations à partir des fournisseurs d’illustrations suivants :"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"Afficher les illustrations dans la liste d’albums"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"Ignorer les illustrations fournies par les stations de radio"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Aucune demande de jumelage active."}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"Code de jumelage"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"Demande de jumelage de télécommande "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Jumelage de télécommande"}},send:{t:0,b:{t:2,i:[{t:3}],s:"Envoyer"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"Si votre enceinte nécessite un jumelage, activez-la ci-dessous et entrez le code PIN qu’elle affiche."}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Jumelage d’enceinte et vérification d’appareil"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Code de vérification"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Vérifier"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},files:{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Langue"}},music:{t:0,b:{t:2,i:[{t:3}],s:"Musique"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"Si vous sélectionnez plus d’éléments que ce qui peut être affiché sur votre écran, le menu disparaîtra."}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Sélectionnez les éléments de la barre de navigation supérieure"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Barre de navigation"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"Page « En cours de lecture »"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"Limiter le nombre d’albums affichés"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"Page « Ajouts récents »"}},search:{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"Liste de genres séparés par des virgules pour lesquels le compositeur doit être affiché."},{t:5,i:0},{t:3,v:"Laissez vide pour toujours afficher le compositeur."},{t:5,i:0},{t:3,v:'L’étiquette de genre de la piste actuelle est comparée en vérifiant si l’un des genres définis est inclus. Par exemple, en choisissant "classique, bande sonore", le compositeur pour les pistes dont l’étiquette de genre est "classique contemporain" sera affiché.'}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le compositeur uniquement pour les genres listés"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, le compositeur de la piste en cours de lecture est affiché"}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le compositeur"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le chemin du fichier"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Connectez-vous avec votre nom d’utilisateur et votre mot de passe Last.fm pour activer le scrobbling."}},info:{t:0,b:{t:2,i:[{t:3}],s:"Le nom d’utilisateur et le mot de passe Last.fm ne sont pas enregistrés, uniquement la clé de session. La clé de session n’expire pas."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"L’option Last.fm n’est pas présente."}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"L’option Spotify n’est pas présente."}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"Connecté en tant que "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"Vous devez posséder un compte Spotify Premium. L’accès à l’API de Spotify permet l’analyse de votre bibliothèque Spotify. Les champs d’application requis sont les suivants :"}},user:{t:0,b:{t:2,i:[{t:3}],s:"Accès autorisé pour "}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"Autoriser l’accès à l’API"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Accordez l’accès à l’API de Spotify"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"Veuillez autoriser à nouveau l’accès à l’API pour accorder à OwnTone les droits d’accès supplémentaires suivants :"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"Se connecter"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Se déconnecter"}},password:{t:0,b:{t:2,i:[{t:3}],s:"Mot de passe"}},username:{t:0,b:{t:2,i:[{t:3}],s:"Nom d’utilisateur"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Illustrations"}},general:{t:0,b:{t:2,i:[{t:3}],s:"Général"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Services en ligne"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"Télécommandes et sorties"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture en vedette"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"Nouvelle sorties"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Afficher plus"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"Aucun résultat trouvé"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher l’album"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" albums"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher l’artiste"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" artistes"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher la liste de lecture"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" listes de lecture"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Afficher la piste"},{t:2,i:[{t:3,v:"Afficher les "},{t:4,k:"count"},{t:3,v:" pistes"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Pistes"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"Dossier"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"Simple"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"Intelligente"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"Effacer l’historique"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"Mettre la lecture en pause"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"Répéter toutes les pistes"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"Lire les pistes une fois"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"Répéter la piste en cours"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"Reculer dans la piste"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"Avancer dans la piste"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lire les pistes aléatoirement"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"Lire les pistes dans l’ordre"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"Reculer à la piste précédente"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"Avancer à la piste suivante"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"Arrêter la lecture"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"Voir/Cacher les paroles"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"Ajouté le"}},album:{t:0,b:{t:2,i:[{t:3}],s:"Album"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Artiste de l’album"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"Artiste"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"Commentaire"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"Compositeur"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"Durée"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"Genre"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"Propriétaire"}},path:{t:0,b:{t:2,i:[{t:3}],s:"Emplacement"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"Temps de lecture"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"Popularité / Abonnements"}},position:{t:0,b:{t:2,i:[{t:3}],s:"Disque / Piste"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"Qualité"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Date de sortie"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Pistes"}},type:{t:0,b:{t:2,i:[{t:3}],s:"Type"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"Mise à jour"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"Temps de fonctionnement"}},year:{t:0,b:{t:2,i:[{t:3}],s:"Année"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Échec de connexion au serveur"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"La requête a échoué (status: "},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"La file d’attente enregistrée dans la liste de lecture "},{t:4,k:"name"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" piste ajoutée à la file d’attente"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" pistes ajoutées à la file d’attente"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"La file d’attente est vide"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"Aujourd’hui"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"La semaine dernière"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Le mois dernier"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Indéfini"}}}}},{"zh-CN":{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 张专辑"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 张专辑"}]}]}},artists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位艺人"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位艺人"}]}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个有声读物"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个有声读物"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作者"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作者"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" canal"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" canaux"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作曲家"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作曲家"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个流派"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个流派"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个播放列表"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个播放列表"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个播客"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个播客"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 个电台"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 个电台"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 只曲目"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 只曲目"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},url:{t:0,b:{t:2,i:[{t:3}],s:"链接"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"流"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},help:{t:0,b:{t:2,i:[{t:3}],s:"添加一个可生成播放列表的播客RSS链接,这将允许OwnTone管理订阅"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"处理中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"添加播客"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"加载中…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},title:{t:0,b:{t:2,i:[{t:3}],s:"添加流"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"标记为已播"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除播客"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"播放列表名称"}},save:{t:0,b:{t:2,i:[{t:3}],s:"保存"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"保存中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"保存播放清单到列表"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"遥控配对"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配对码"}},title:{t:0,b:{t:2,i:[{t:3}],s:"请求遥控配对"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"标记为最新"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"标记为已播放"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"更新所有内容"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"仅更新RSS订阅内容"}},info:{t:0,b:{t:2,i:[{t:3}],s:"扫描新的、删除的和修改的文件"}},local:{t:0,b:{t:2,i:[{t:3}],s:"仅更新本地资料库"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"正在更新本地资料库…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"重新扫描未修改文件的元数据"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"重新扫描"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"仅更新Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"更新资料库"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"德语 (Deutsch)"}},en:{t:0,b:{t:2,i:[{t:3}],s:"英语 (English)"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"法语 (Français)"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"简体中文"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"繁體中文"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"从资料库中永久移除该播客吗?"},{t:4,k:"separator"},{t:3,v:"(这也将移除RSS播放列表 "},{t:4,k:"name"},{t:3,v:")"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除播客"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"曲目无法播放"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:",被限制原因:"},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音乐"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"播客"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"关于"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP流错误:流载入失败或者由于网络原因无法载入"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP流"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"音量"}},files:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音乐"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"播客"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"广播电台"}},search:{t:0,b:{t:2,i:[{t:3}],s:"搜索"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"设置"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"更新资料库"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"界面贡献者包括 "},{t:4,k:"bulma"},{t:3,v:","},{t:4,k:"mdi"},{t:3,v:","},{t:4,k:"vuejs"},{t:3,v:","},{t:4,k:"axios"},{t:3,v:" 和 "},{t:4,k:"others"}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"编译支持来自于 "},{t:4,k:"options"}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"资料库"}},more:{t:0,b:{t:2,i:[{t:3}],s:"更多"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}},version:{t:0,b:{t:2,i:[{t:3,v:"版本 "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"筛选"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏仅在播放列表出现的单曲和专辑"}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隐藏单曲"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏仅在Spotify资料库出现的专辑"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隐藏来自Spotify的专辑"}},title:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"艺人 › 名称"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"艺人 › 发行日期"}},title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近添加"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"最近发行"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"筛选"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏只出现在Spotify库中的内容"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隐藏来自Spotify的内容"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"评级"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"发行日期"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"筛选"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近添加"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏仅在播放列表出现的单曲和专辑"}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隐藏单曲"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果激活,将隐藏仅在Spotify资料库出现的专辑"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隐藏来自Spotify的艺人"}},title:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"作者"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"作者"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"评级"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},title:{t:0,b:{t:2,i:[{t:3}],s:"文件"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分类"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"评级"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"流派"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"显示更多"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"最近添加"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"最近播放"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},history:{t:0,b:{t:2,i:[{t:3}],s:"历史"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"浏览资料库添加曲目"}},live:{t:0,b:{t:2,i:[{t:3}],s:"直播"}},title:{t:0,b:{t:2,i:[{t:3}],s:"播放清单是空的"}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" 曲目"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"从资料库中永久移除该播客?"},{t:4,k:"separator"},{t:3,v:"(这也将移除该播客RSS列表 "},{t:4,k:"name"},{t:3,v:")"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除播客"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"全部标记为已播放"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"最新单集"}},title:{t:0,b:{t:2,i:[{t:3}],s:"播客"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"添加流"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"清除"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"编辑"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"隐藏历史"}},save:{t:0,b:{t:2,i:[{t:3}],s:"保存"}},title:{t:0,b:{t:2,i:[{t:3}],s:"清单"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"广播电台"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"表达式"}},help:{t:0,b:{t:2,i:[{t:3,v:"提示:如果您使用 "},{t:4,k:"query"},{t:3,v:" 前缀,则可以通过智能播放列表查询语言 "},{t:4,k:"help"},{t:3,v:" 进行搜索"}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"未找到结果"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"搜索"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"播客"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示专辑"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个专辑"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示艺人"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 位艺人"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示有声书"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 本有声书"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示作曲家"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 位作曲家"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示播放列表"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个播放列表"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示播客"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个播客"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示曲目"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 只曲目"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"资料库"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone支持PNG和 JPEG封面,这些封面可以作为单独的图像文件放置在库中或嵌入到媒体文件中,也可以通过广播电台在线提供"}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"除此之外,您还可以从以下素材提供者获取封面:"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"在专辑列表中显示封面艺术作品"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"忽略广播电台提供的作品"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"没有活跃的配对请求"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配对代码"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"远程配对请求来自于 "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"遥控配对"}},send:{t:0,b:{t:2,i:[{t:3}],s:"发送"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您的扬声器需要配对,请在下面输入它显示的 PIN以激活"}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"扬声器配对和设备验证"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"验证码"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"验证"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},files:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},language:{t:0,b:{t:2,i:[{t:3}],s:"语言"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音乐"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您选择的项目多于屏幕上可以显示的项目,则侧边栏菜单将会消失"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"选择顶部导航栏菜单项"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"导航条"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"“正在播放”页面"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"播客"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"广播电台"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"限制显示的相册数量"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"“最近添加”页面"}},search:{t:0,b:{t:2,i:[{t:3}],s:"搜索"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"以逗号分隔的流派列表,必须显示作曲家所属的流派"},{t:5,i:0},{t:3,v:"留空以始终显示作曲家"},{t:5,i:0},{t:3,v:"通过检查是否包含定义的流派之一来匹配当前曲目的流派标签。例如,设置为“古典、原声带”将显示流派标签为“当代古典”的曲目的作曲家"}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"仅显示列出的流派的作曲家"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"如果启用,则会显示当前播放曲目的作曲家"}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"显示作曲家"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"显示文件路径"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"使用您的 Last.fm 用户名和密码登录以启用记录功能"}},info:{t:0,b:{t:2,i:[{t:3}],s:"OwnTone不会存储您的 Last.fm 用户名/密码,仅存储会话密钥。会话密钥不会过期"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone的构建没有来自Last.fm的官方支持"}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone的构建没有来自 Spotify 官方的支持,也未安装 libspotify"}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"登录为 "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"您必须拥有 Spotify付费帐户。访问 Spotify Web API 可以扫描您的 Spotify库。所需范围是:"}},user:{t:0,b:{t:2,i:[{t:3}],s:"授予访问权限"}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"授权 Web API 访问"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"授予对 Spotify Web API 的访问权限"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"请重新授权 Web API 访问权限,以授予 OwnTone 以下附加访问权限:"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"登入"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"退出"}},password:{t:0,b:{t:2,i:[{t:3}],s:"密码"}},username:{t:0,b:{t:2,i:[{t:3}],s:"用户名"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},general:{t:0,b:{t:2,i:[{t:3}],s:"概览"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"在线服务"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"遥控和输出"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"特色列表"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"最新发行"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"显示更多"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"未找到结果"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"搜索"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示专辑"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个专辑"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示艺人"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 位艺人"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示播放列表"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 个播放列表"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"显示曲目"},{t:2,i:[{t:3,v:"显示所有 "},{t:4,k:"count"},{t:3,v:" 只曲目"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"文件夹"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"简单"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"智能"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"清除历史"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"暂停"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"重复播放所有曲目"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"所有曲目仅播放一遍"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"重复当前曲目"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"在当前曲目后退"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"在当前曲目前进"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放曲目"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"按顺序播放曲目"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"播放上一首"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"播放下一首"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"停止"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"显示/隐藏歌词"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"添加时间"}},album:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"张专辑"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"专辑艺人"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"专辑艺人"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"评论"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"时长"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名称"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"所有者"}},path:{t:0,b:{t:2,i:[{t:3}],s:"路径"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"总播放时长"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"流行度 / 粉丝数"}},position:{t:0,b:{t:2,i:[{t:3}],s:"盘符 / 曲目"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"质量"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"评级"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"发行日期"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"只曲目"}},type:{t:0,b:{t:2,i:[{t:3}],s:"类型"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"更新于"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"运行时长"}},year:{t:0,b:{t:2,i:[{t:3}],s:"年份"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"无法连接到 OwnTone 服务器"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"请求失败 (状态:"},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"清单以添加到播放列表 "},{t:4,k:"name"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3,v:"已附加到队列的 "},{t:4,k:"count"},{t:3,v:" 只曲目"}]},{t:2,i:[{t:3,v:"已附加到队列的 "},{t:4,k:"count"},{t:3,v:" 只曲目"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"清单是空的"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"今日"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"上周"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"上月"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"未定义"}}}}},{"zh-TW":{count:{albums:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 張專輯"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 張專輯"}]}]}},artists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位藝人"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位藝人"}]}]}},audiobooks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個有聲書"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個有聲書"}]}]}},authors:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作者"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作者"}]}]}},channels:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 信道"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 信道"}]}]}},composers:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作曲家"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 位作曲家"}]}]}},genres:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個音樂類型"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個音樂類型"}]}]}},playlists:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個播放列表"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個播放列表"}]}]}},podcasts:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個Podcast"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個Podcast"}]}]}},stations:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 個電台"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 個電台"}]}]}},tracks:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"count"},{t:3,v:" 首曲目"}]},{t:2,i:[{t:4,k:"count"},{t:3,v:" 首曲目"}]}]}}},data:{kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},url:{t:0,b:{t:2,i:[{t:3}],s:"鏈接"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"串流"}}}},dialog:{add:{rss:{add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},help:{t:0,b:{t:2,i:[{t:3}],s:"新增一個可生成播放列表的Podcast RSS鏈接,這將允許OwnTone管理訂閱"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-rss"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"處理中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"新增Podcast"}}},stream:{add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},loading:{t:0,b:{t:2,i:[{t:3}],s:"載入中…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},title:{t:0,b:{t:2,i:[{t:3}],s:"新增串流"}}}},album:{"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"標記為已播"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除Podcast"}}},playable:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},playlist:{"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},save:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"播放列表名稱"}},save:{t:0,b:{t:2,i:[{t:3}],s:"儲存"}},saving:{t:0,b:{t:2,i:[{t:3}],s:"儲存中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"儲存播放清單到列表"}}}},"queue-item":{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}}},"remote-pairing":{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"遙控配對"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配對碼"}},title:{t:0,b:{t:2,i:[{t:3}],s:"請求遙控配對"}}},track:{"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"標記為最新"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"標記為已播放"}},"quality-value":{t:0,b:{t:2,i:[{t:4,k:"format"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"samplerate"},{t:3,v:" Hz "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"channels"},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}},"rating-value":{t:0,b:{t:2,i:[{t:4,k:"rating"},{t:3,v:" / 10"}]}}},update:{all:{t:0,b:{t:2,i:[{t:3}],s:"更新所有內容"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},feeds:{t:0,b:{t:2,i:[{t:3}],s:"僅更新RSS訂閱內容"}},info:{t:0,b:{t:2,i:[{t:3}],s:"掃描新的、刪除的和修改的文件"}},local:{t:0,b:{t:2,i:[{t:3}],s:"僅更新本地資料庫"}},progress:{t:0,b:{t:2,i:[{t:3}],s:"正在更新本地資料庫…"}},"rescan-metadata":{t:0,b:{t:2,i:[{t:3}],s:"重新掃描未修改文件的中繼資料"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"重新掃描"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"僅更新Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"更新資料庫"}}}},language:{de:{t:0,b:{t:2,i:[{t:3}],s:"德語 (Deutsch)"}},en:{t:0,b:{t:2,i:[{t:3}],s:"英語 (English)"}},fr:{t:0,b:{t:2,i:[{t:3}],s:"法語 (Français)"}},"zh-CN":{t:0,b:{t:2,i:[{t:3}],s:"簡體中文"}},"zh-TW":{t:0,b:{t:2,i:[{t:3}],s:"繁體中文"}}},list:{albums:{info:{t:0,b:{t:2,i:[{t:3,v:"從資料庫中永久移除該Podcast嗎?"},{t:4,k:"separator"},{t:3,v:"(這也將移除RSS播放列表 "},{t:4,k:"name"},{t:3,v:")"}]}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除Podcast"}}},spotify:{"not-playable-track":{t:0,b:{t:2,i:[{t:3}],s:"曲目無法播放"}},"restriction-reason":{t:0,b:{t:2,i:[{t:3,v:",被限制原因:"},{t:4,k:"reason"}]}}}},media:{kind:{album:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},audiobook:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音樂"}},podcast:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}}},navigation:{about:{t:0,b:{t:2,i:[{t:3}],s:"關於"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},"now-playing":{t:0,b:{t:2,i:[{t:3,v:" - "},{t:4,k:"album"}]}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP串流錯誤:串流載入失敗或者由於網絡原因無法載入"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP串流"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"音量"}},files:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音樂"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"電台"}},search:{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}},settings:{t:0,b:{t:2,i:[{t:3}],s:"設定"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"更新資料庫"}}},page:{about:{"built-with":{t:0,b:{t:2,i:[{t:3,v:"界面貢獻者包括 "},{t:4,k:"bulma"},{t:3,v:","},{t:4,k:"mdi"},{t:3,v:","},{t:4,k:"vuejs"},{t:3,v:","},{t:4,k:"axios"},{t:3,v:" 和 "},{t:4,k:"others"}]}},"compiled-with":{t:0,b:{t:2,i:[{t:3,v:"編譯支持來自於 "},{t:4,k:"options"}]}},library:{t:0,b:{t:2,i:[{t:3}],s:"資料庫"}},more:{t:0,b:{t:2,i:[{t:3}],s:"更多"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}},version:{t:0,b:{t:2,i:[{t:3,v:"版本 "},{t:4,k:"version"}]}}},album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},albums:{filter:{t:0,b:{t:2,i:[{t:3}],s:"篩選"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏僅在播放列表出現的單曲和專輯"}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隱藏單曲"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏僅在Spotify資料庫出現的專輯"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隱藏來自Spotify的專輯"}},title:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},sort:{"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"藝人 › 名稱"}},"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"藝人 › 發行日期"}},title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近新增"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"最近發行"}}}},artist:{filter:{t:0,b:{t:2,i:[{t:3}],s:"篩選"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏只出現在Spotify庫中的內容"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隱藏來自Spotify的內容"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"評級"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"發行日期"}}}},artists:{filter:{t:0,b:{t:2,i:[{t:3}],s:"篩選"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近新增"}}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏僅在播放列表出現的單曲和專輯"}},"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隱藏單曲"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果啓用,將隱藏僅在Spotify資料庫出現的專輯"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隱藏來自Spotify的藝人"}},title:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}}},audiobooks:{album:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}}},artist:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"作者"}}},tabs:{authors:{t:0,b:{t:2,i:[{t:3}],s:"作者"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}}}},composer:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"評級"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}}},files:{play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},title:{t:0,b:{t:2,i:[{t:3}],s:"文件"}}},genre:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}},sort:{title:{t:0,b:{t:2,i:[{t:3}],s:"分類"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"評級"}}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}}},music:{"show-more":{t:0,b:{t:2,i:[{t:3}],s:"顯示更多"}},"recently-added":{title:{t:0,b:{t:2,i:[{t:3}],s:"最近新增"}}},"recently-played":{title:{t:0,b:{t:2,i:[{t:3}],s:"最近播放"}}},tabs:{albums:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},history:{t:0,b:{t:2,i:[{t:3}],s:"歷史"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},"now-playing":{info:{t:0,b:{t:2,i:[{t:3}],s:"瀏覽資料庫新增曲目"}},live:{t:0,b:{t:2,i:[{t:3}],s:"直播"}},title:{t:0,b:{t:2,i:[{t:3}],s:"播放清單是空的"}}},playlist:{length:{t:0,b:{t:2,i:[{t:4,k:"length"},{t:3,v:" 曲目"}]}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},playlists:{title:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}}},podcast:{cancel:{t:0,b:{t:2,i:[{t:3}],s:"取消"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"移除"}},"remove-info":{t:0,b:{t:2,i:[{t:3,v:"從資料庫中永久移除該Podcast?"},{t:4,k:"separator"},{t:3,v:"(這也將移除該PodcastRSS列表 "},{t:4,k:"name"},{t:3,v:")"}]}},"remove-podcast":{t:0,b:{t:2,i:[{t:3}],s:"移除Podcast"}}},podcasts:{add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"全部標記為已播放"}},"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"最新單集"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}}},queue:{"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"新增串流"}},clear:{t:0,b:{t:2,i:[{t:3}],s:"清除"}},edit:{t:0,b:{t:2,i:[{t:3}],s:"編輯"}},"hide-previous":{t:0,b:{t:2,i:[{t:3}],s:"隱藏歷史"}},save:{t:0,b:{t:2,i:[{t:3}],s:"儲存"}},title:{t:0,b:{t:2,i:[{t:3}],s:"清單"}}},radio:{title:{t:0,b:{t:2,i:[{t:3}],s:"電台"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},expression:{t:0,b:{t:2,i:[{t:3}],s:"表達式"}},help:{t:0,b:{t:2,i:[{t:3,v:"提示:如果您使用 "},{t:4,k:"query"},{t:3,v:" 前綴,則可以通過智能播放列表查詢語言 "},{t:4,k:"help"},{t:3,v:" 進行搜尋"}]}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"未找到結果"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示專輯"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個專輯"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示藝人"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 位藝人"}]}]}},"show-audiobooks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示有聲書"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 本有聲書"}]}]}},"show-composers":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示作曲家"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 位作曲家"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示播放列表"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個播放列表"}]}]}},"show-podcasts":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示Podcast"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個Podcast"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示曲目"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 首曲目"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"資料庫"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}}},settings:{artwork:{title:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},coverartarchive:{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},discogs:{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"explanation-1":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone支持PNG和 JPEG封面,這些封面可以作為單獨的圖像文件放置在庫中或嵌入到媒體文件中,也可以通過電台在線提供"}},"explanation-2":{t:0,b:{t:2,i:[{t:3}],s:"除此之外,您還可以從以下素材提供者獲取封面:"}},"show-coverart":{t:0,b:{t:2,i:[{t:3}],s:"在專輯列表中顯示封面藝術作品"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},streaming:{t:0,b:{t:2,i:[{t:3}],s:"忽略電台提供的作品"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"沒有活躍的配對請求"}},"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配對代碼"}},"pairing-request":{t:0,b:{t:2,i:[{t:3}],s:"遠程配對請求來自於 "}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"遙控配對"}},send:{t:0,b:{t:2,i:[{t:3}],s:"發送"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您的揚聲器需要配對,請在下面輸入它顯示的 PIN以啓用"}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"揚聲器配對和設備驗證"}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"驗證碼"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"驗證"}}},general:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},files:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},language:{t:0,b:{t:2,i:[{t:3}],s:"語言"}},music:{t:0,b:{t:2,i:[{t:3}],s:"音樂"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您選擇的項目多於屏幕上可以顯示的項目,則側邊欄菜單將會消失"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"選擇頂部導航欄菜單項"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"導航條"}},"now-playing-page":{t:0,b:{t:2,i:[{t:3}],s:"“正在播放”頁面"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},podcasts:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},radio:{t:0,b:{t:2,i:[{t:3}],s:"電台"}},"recently-added-page-info":{t:0,b:{t:2,i:[{t:3}],s:"限制顯示的相簿數量"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"“最近新增”頁面"}},search:{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}},"show-composer-genres-help":{t:0,b:{t:2,i:[{t:3,v:"以逗號分隔的音樂類型清單,將顯示作曲家的音樂類型"},{t:5,i:0},{t:3,v:"留空以始終顯示作曲家"},{t:5,i:0},{t:3,v:"通過檢查是否包含定義的音樂類型之一來匹配當前曲目的音樂類型標籤。例如,設定為“古典、原聲帶”將顯示音樂類型標籤為“當代古典”的曲目的作曲家"}]}},"show-composer-genres":{t:0,b:{t:2,i:[{t:3}],s:"僅顯示列出的音樂類型的作曲家"}},"show-composer-info":{t:0,b:{t:2,i:[{t:3}],s:"如果啟用,則會顯示目前播放曲目的作曲家"}},"show-composer":{t:0,b:{t:2,i:[{t:3}],s:"顯示作曲家"}},"show-path":{t:0,b:{t:2,i:[{t:3}],s:"顯示檔案路徑"}}},services:{lastfm:{"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"使用您的 Last.fm 用戶名和密碼登入以啓用記錄功能"}},info:{t:0,b:{t:2,i:[{t:3}],s:"OwnTone不會存儲您的 Last.fm 用戶名/密碼,僅存儲會話密鑰。會話密鑰不會過期"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone並無Last.fm的官方支持"}}},spotify:{"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone並無 Spotify 官方的支持,也未安裝 libspotify"}},"logged-as":{t:0,b:{t:2,i:[{t:3}],s:"登入為 "}},requirements:{t:0,b:{t:2,i:[{t:3}],s:"您必須擁有 Spotify付費帳戶。訪問 Spotify Web API 可以掃描您的 Spotify庫。所需範圍是:"}},user:{t:0,b:{t:2,i:[{t:3}],s:"授予訪問權限"}},authorize:{t:0,b:{t:2,i:[{t:3}],s:"授權 Web API 訪問"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"授予對 Spotify Web API 的訪問權限"}},reauthorize:{t:0,b:{t:2,i:[{t:3}],s:"請重新授權 Web API 訪問權限,以授予 OwnTone 以下附加訪問權限:"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},login:{t:0,b:{t:2,i:[{t:3}],s:"登入"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"退出"}},password:{t:0,b:{t:2,i:[{t:3}],s:"密碼"}},username:{t:0,b:{t:2,i:[{t:3}],s:"用戶名"}}},tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},general:{t:0,b:{t:2,i:[{t:3}],s:"概覽"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"在線服務"}},"remotes-and-outputs":{t:0,b:{t:2,i:[{t:3}],s:"遙控和輸出"}}}},spotify:{album:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},artist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"特色列表"}},"new-releases":{t:0,b:{t:2,i:[{t:3}],s:"最新發行"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"顯示更多"}}},playlist:{shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}}},search:{albums:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},"no-results":{t:0,b:{t:2,i:[{t:3}],s:"未找到結果"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},"show-albums":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示專輯"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個專輯"}]}]}},"show-artists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示藝人"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 位藝人"}]}]}},"show-playlists":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示播放列表"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 個播放列表"}]}]}},"show-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"顯示曲目"},{t:2,i:[{t:3,v:"顯示所有 "},{t:4,k:"count"},{t:3,v:" 首曲目"}]}]}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}}}}},playlist:{type:{folder:{t:0,b:{t:2,i:[{t:3}],s:"檔案夾"}},plain:{t:0,b:{t:2,i:[{t:3}],s:"簡單"}},smart:{t:0,b:{t:2,i:[{t:3}],s:"智能"}}}},player:{button:{consume:{t:0,b:{t:2,i:[{t:3}],s:"清除歷史"}},pause:{t:0,b:{t:2,i:[{t:3}],s:"暫停"}},play:{t:0,b:{t:2,i:[{t:3}],s:"播放"}},repeat:{t:0,b:{t:2,i:[{t:3}],s:"重復播放所有曲目"}},"repeat-off":{t:0,b:{t:2,i:[{t:3}],s:"所有曲目僅播放一遍"}},"repeat-once":{t:0,b:{t:2,i:[{t:3}],s:"重復當前曲目"}},"seek-backward":{t:0,b:{t:2,i:[{t:3}],s:"在當前曲目後退"}},"seek-forward":{t:0,b:{t:2,i:[{t:3}],s:"在當前曲目前進"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放曲目"}},"shuffle-disabled":{t:0,b:{t:2,i:[{t:3}],s:"按順序播放曲目"}},"skip-backward":{t:0,b:{t:2,i:[{t:3}],s:"播放上一首"}},"skip-forward":{t:0,b:{t:2,i:[{t:3}],s:"播放下一首"}},stop:{t:0,b:{t:2,i:[{t:3}],s:"停止"}},"toggle-lyrics":{t:0,b:{t:2,i:[{t:3}],s:"顯示/隱藏歌詞"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"新增時間"}},album:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"張專輯"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"專輯藝人"}},artist:{t:0,b:{t:2,i:[{t:3}],s:"專輯藝人"}},artists:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}},comment:{t:0,b:{t:2,i:[{t:3}],s:"評論"}},composer:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}},duration:{t:0,b:{t:2,i:[{t:3}],s:"時長"}},genre:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},name:{t:0,b:{t:2,i:[{t:3}],s:"名稱"}},owner:{t:0,b:{t:2,i:[{t:3}],s:"所有者"}},path:{t:0,b:{t:2,i:[{t:3}],s:"路徑"}},playtime:{t:0,b:{t:2,i:[{t:3}],s:"總播放時長"}},popularity:{t:0,b:{t:2,i:[{t:3}],s:"流行度 / 粉絲數"}},position:{t:0,b:{t:2,i:[{t:3}],s:"盤符 / 曲目"}},quality:{t:0,b:{t:2,i:[{t:3}],s:"品質"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"評級"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"發行日期"}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}},type:{t:0,b:{t:2,i:[{t:3}],s:"類型"}},updated:{t:0,b:{t:2,i:[{t:3}],s:"更新於"}},uptime:{t:0,b:{t:2,i:[{t:3}],s:"運行時長"}},year:{t:0,b:{t:2,i:[{t:3}],s:"年份"}}},server:{"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"無法連接到 OwnTone 伺服器"}},"request-failed":{t:0,b:{t:2,i:[{t:3,v:"請求失敗 (狀態:"},{t:4,k:"status"},{t:3,v:" "},{t:4,k:"cause"},{t:3,v:" "},{t:4,k:"url"},{t:3,v:")"}]}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"清單以新增到播放列表 "},{t:4,k:"name"}]}},"appended-tracks":{t:0,b:{t:1,c:[{t:2,i:[{t:3,v:"已附加到隊列的 "},{t:4,k:"count"},{t:3,v:" 首曲目"}]},{t:2,i:[{t:3,v:"已附加到隊列的 "},{t:4,k:"count"},{t:3,v:" 首曲目"}]}]}},"empty-queue":{t:0,b:{t:2,i:[{t:3}],s:"清單是空的"}}},"grouped-list":{today:{t:0,b:{t:2,i:[{t:3}],s:"今日"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"上周"}},"last-month":{t:0,b:{t:2,i:[{t:3}],s:"上月"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"未定義"}}}}}),Pu=bA({fallbackLocale:"en",fallbackWarn:!1,locale:navigator.language,messages:AA,missingWarn:!1}),Ls=ds("NotificationsStore",{state:()=>({list:[],next_id:1}),actions:{add(t){const e={id:this.next_id++,text:t.text,timeout:t.timeout,topic:t.topic,type:t.type};if(e.topic){const n=this.list.findIndex(s=>s.topic===e.topic);if(n>=0){this.list.splice(n,1,e);return}}this.list.push(e),t.timeout>0&&setTimeout(()=>{this.remove(e)},t.timeout)},remove(t){const e=this.list.indexOf(t);e!==-1&&this.list.splice(e,1)}}}),Yn=ds("PlayerStore",{state:()=>({consume:!1,item_id:0,item_length_ms:0,item_progress_ms:0,repeat:"off",shuffle:!1,state:"stop",volume:0})}),ws=ds("QueueStore",{state:()=>({count:0,items:[],version:0}),getters:{current(t){const e=Yn();return t.items.find(n=>n.id===e.item_id)??{}}}}),{t:Kr}=Pu.global;ut.interceptors.response.use(t=>t,t=>(t.request.status&&t.request.responseURL&&Ls().add({text:Kr("server.request-failed",{cause:t.request.statusText,status:t.request.status,url:t.request.responseURL}),type:"danger"}),Promise.reject(t)));const tt={config(){return ut.get("./api/config")},lastfm(){return ut.get("./api/lastfm")},lastfm_login(t){return ut.post("./api/lastfm-login",t)},lastfm_logout(){return ut.get("./api/lastfm-logout")},library_add(t){return ut.post("./api/library/add",null,{params:{url:t}})},library_album(t){return ut.get(`./api/library/albums/${t}`)},library_album_track_update(t,e){return ut.put(`./api/library/albums/${t}/tracks`,null,{params:e})},library_album_tracks(t,e={limit:-1,offset:0}){return ut.get(`./api/library/albums/${t}/tracks`,{params:e})},library_albums(t){return ut.get("./api/library/albums",{params:{media_kind:t}})},library_artist(t){return ut.get(`./api/library/artists/${t}`)},library_artist_albums(t){return ut.get(`./api/library/artists/${t}/albums`)},library_artist_tracks(t){const e={expression:`songartistid is "${t}"`,type:"tracks"};return ut.get("./api/search",{params:e})},library_artists(t){return ut.get("./api/library/artists",{params:{media_kind:t}})},library_composer(t){return ut.get(`./api/library/composers/${encodeURIComponent(t)}`)},library_composer_albums(t){const e={expression:`composer is "${t}" and media_kind is music`,type:"albums"};return ut.get("./api/search",{params:e})},library_composer_tracks(t){const e={expression:`composer is "${t}" and media_kind is music`,type:"tracks"};return ut.get("./api/search",{params:e})},library_composers(t){return ut.get("./api/library/composers",{params:{media_kind:t}})},library_count(t){return ut.get(`./api/library/count?expression=${t}`)},library_files(t){return ut.get("./api/library/files",{params:{directory:t}})},library_genre(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"genres"};return ut.get("./api/search",{params:n})},library_genre_albums(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"albums"};return ut.get("./api/search",{params:n})},library_genre_tracks(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"tracks"};return ut.get("./api/search",{params:n})},library_genres(t){const e={expression:`media_kind is ${t}`,type:"genres"};return ut.get("./api/search",{params:e})},library_playlist(t){return ut.get(`./api/library/playlists/${t}`)},library_playlist_delete(t){return ut.delete(`./api/library/playlists/${t}`,null)},library_playlist_folder(t=0){return ut.get(`./api/library/playlists/${t}/playlists`)},library_playlist_tracks(t){return ut.get(`./api/library/playlists/${t}/tracks`)},library_podcast_episodes(t){const e={expression:`media_kind is podcast and songalbumid is "${t}" ORDER BY date_released DESC`,type:"tracks"};return ut.get("./api/search",{params:e})},library_podcasts_new_episodes(){const t={expression:"media_kind is podcast and play_count = 0 ORDER BY time_added DESC",type:"tracks"};return ut.get("./api/search",{params:t})},library_radio_streams(){const t={expression:"data_kind is url and song_length = 0",media_kind:"music",type:"tracks"};return ut.get("./api/search",{params:t})},library_rescan(t){return ut.put("./api/rescan",null,{params:{scan_kind:t}})},library_stats(){return ut.get("./api/library")},library_track(t){return ut.get(`./api/library/tracks/${t}`)},library_track_playlists(t){return ut.get(`./api/library/tracks/${t}/playlists`)},library_track_update(t,e={}){return ut.put(`./api/library/tracks/${t}`,null,{params:e})},library_update(t){return ut.put("./api/update",null,{params:{scan_kind:t}})},output_toggle(t){return ut.put(`./api/outputs/${t}/toggle`)},output_update(t,e){return ut.put(`./api/outputs/${t}`,e)},outputs(){return ut.get("./api/outputs")},pairing(){return ut.get("./api/pairing")},pairing_kickoff(t){return ut.post("./api/pairing",t)},player_consume(t){return ut.put(`./api/player/consume?state=${t}`)},player_next(){return ut.put("./api/player/next")},player_output_volume(t,e){return ut.put(`./api/player/volume?volume=${e}&output_id=${t}`)},player_pause(){return ut.put("./api/player/pause")},player_play(t={}){return ut.put("./api/player/play",null,{params:t})},player_play_expression(t,e,n){const s={clear:"true",expression:t,playback:"start",playback_from_position:n,shuffle:e};return ut.post("./api/queue/items/add",null,{params:s})},player_play_uri(t,e,n){const s={clear:"true",playback:"start",playback_from_position:n,shuffle:e,uris:t};return ut.post("./api/queue/items/add",null,{params:s})},player_previous(){return ut.put("./api/player/previous")},player_repeat(t){return ut.put(`./api/player/repeat?state=${t}`)},player_seek(t){return ut.put(`./api/player/seek?seek_ms=${t}`)},player_seek_to_pos(t){return ut.put(`./api/player/seek?position_ms=${t}`)},player_shuffle(t){return ut.put(`./api/player/shuffle?state=${t}`)},player_status(){return ut.get("./api/player")},player_stop(){return ut.put("./api/player/stop")},player_volume(t){return ut.put(`./api/player/volume?volume=${t}`)},queue(){return ut.get("./api/queue")},async queue_add(t){const e=await ut.post(`./api/queue/items/add?uris=${t}`);return Ls().add({text:Kr("server.appended-tracks",{count:e.data.count}),timeout:2e3,type:"info"}),await Promise.resolve(e)},async queue_add_next(t){let e=0;const{current:n}=ws();n!=null&&n.id&&(e=n.position+1);const s=await ut.post(`./api/queue/items/add?uris=${t}&position=${e}`);return Ls().add({text:Kr("server.appended-tracks",{count:s.data.count}),timeout:2e3,type:"info"}),await Promise.resolve(s)},queue_clear(){return ut.put("./api/queue/clear")},async queue_expression_add(t){const e=await ut.post("./api/queue/items/add",null,{params:{expression:t}});return Ls().add({text:Kr("server.appended-tracks",{count:e.data.count}),timeout:2e3,type:"info"}),await Promise.resolve(e)},async queue_expression_add_next(t){const e={};e.expression=t,e.position=0;const{current:n}=ws();n!=null&&n.id&&(e.position=n.position+1);const s=await ut.post("./api/queue/items/add",null,{params:e});return Ls().add({text:Kr("server.appended-tracks",{count:s.data.count}),timeout:2e3,type:"info"}),await Promise.resolve(s)},queue_move(t,e){return ut.put(`./api/queue/items/${t}?new_position=${e}`)},queue_remove(t){return ut.delete(`./api/queue/items/${t}`)},async queue_save_playlist(t){const e=await ut.post("./api/queue/save",null,{params:{name:t}});return Ls().add({text:Kr("server.queue-saved",{name:t}),timeout:2e3,type:"info"}),await Promise.resolve(e)},search(t){return ut.get("./api/search",{params:t})},settings(){return ut.get("./api/settings")},settings_update(t,e){return ut.put(`./api/settings/${t}/${e.name}`,e)},spotify(){return ut.get("./api/spotify")},spotify_logout(){return ut.get("./api/spotify-logout")}},OA={name:"ModalDialogRemotePairing",components:{ModalDialog:hi},props:{show:Boolean},emits:["close"],setup(){return{remoteStore:Xp()}},data(){return{pairing_req:{pin:""}}},computed:{actions(){return[{label:this.$t("dialog.remote-pairing.cancel"),handler:this.cancel,icon:"cancel"},{label:this.$t("dialog.remote-pairing.pair"),handler:this.pair,icon:"cellphone"}]},pairing(){return this.remoteStore.pairing}},watch:{show(){this.show&&(this.loading=!1,setTimeout(()=>{this.$refs.pin_field.focus()},10))}},methods:{cancel(){this.$emit("close")},pair(){tt.pairing_kickoff(this.pairing_req).then(()=>{this.pairing_req.pin=""})}}},IA=["textContent"],NA={class:"field"},PA={class:"control"},$A=["placeholder"];function RA(t,e,n,s,i,r){const o=x("modal-dialog");return O(),vt(o,{actions:r.actions,show:n.show,title:t.$t("dialog.remote-pairing.title"),onClose:e[2]||(e[2]=a=>t.$emit("close"))},{content:D(()=>[g("form",{onSubmit:e[1]||(e[1]=Oe((...a)=>r.pair&&r.pair(...a),["prevent"]))},[g("label",{class:"label",textContent:I(r.pairing.remote)},null,8,IA),g("div",NA,[g("div",PA,[xn(g("input",{ref:"pin_field","onUpdate:modelValue":e[0]||(e[0]=a=>i.pairing_req.pin=a),class:"input",inputmode:"numeric",pattern:"[\\d]{4}",placeholder:t.$t("dialog.remote-pairing.pairing-code")},null,8,$A),[[Xn,i.pairing_req.pin]])])])],32)]),_:1},8,["actions","show","title"])}const LA=rt(OA,[["render",RA]]),DA={name:"ControlSwitch",props:{modelValue:Boolean},emits:["update:modelValue"]},MA={class:"field mb-0 is-flex is-align-items-center"},FA={class:"toggle is-flex is-align-items-center"},VA={class:"control is-flex is-align-items-center"},HA=["checked"],UA={key:0,class:"help mb-4"};function jA(t,e,n,s,i,r){return O(),M(ht,null,[g("div",MA,[g("label",FA,[g("div",VA,[g("input",{checked:n.modelValue,type:"checkbox",class:"toggle-checkbox is-hidden",onChange:e[0]||(e[0]=o=>t.$emit("update:modelValue",!n.modelValue))},null,40,HA),e[1]||(e[1]=g("div",{class:"toggle-switch"},null,-1))]),ge(t.$slots,"label",{},void 0,!0)])]),t.$slots.help?(O(),M("div",UA,[ge(t.$slots,"help",{},void 0,!0)])):_t("",!0)],64)}const Nr=rt(DA,[["render",jA],["__scopeId","data-v-2fe564ab"]]),$u=ds("LibraryStore",{state:()=>({albums:0,artists:0,db_playtime:0,songs:0,rss:{},started_at:"01",updated_at:"01",update_dialog_scan_kind:"",updating:!1})}),Ue=ds("ServicesStore",{state:()=>({lastfm:{},spotify:{}})}),BA={name:"ModalDialogUpdate",components:{ControlSwitch:Nr,ModalDialog:hi},props:{show:Boolean},emits:["close"],setup(){return{libraryStore:$u(),servicesStore:Ue()}},data(){return{rescan_metadata:!1}},computed:{actions(){const t=[{label:this.$t("dialog.update.cancel"),handler:this.cancel,icon:"cancel"}];return this.libraryStore.updating||t.push({label:this.$t("dialog.update.rescan"),handler:this.analyse,icon:"check"}),t},rss(){return this.libraryStore.rss},spotify_enabled(){return this.servicesStore.spotify.webapi_token_valid}},methods:{cancel(){this.$emit("close"),this.libraryStore.update_dialog_scan_kind=""},analyse(){this.rescan_metadata?tt.library_rescan(this.libraryStore.update_dialog_scan_kind):tt.library_update(this.libraryStore.update_dialog_scan_kind)}}},WA={key:0},zA={key:0,class:"field"},qA=["textContent"],GA={class:"control"},KA={class:"select is-small"},XA=["textContent"],YA=["textContent"],ZA=["textContent"],JA=["textContent"],QA=["textContent"],tO={key:1},eO=["textContent"];function nO(t,e,n,s,i,r){const o=x("control-switch"),a=x("modal-dialog");return O(),vt(a,{actions:r.actions,show:n.show,title:t.$t("dialog.update.title"),onClose:e[2]||(e[2]=l=>t.$emit("close"))},{content:D(()=>[s.libraryStore.updating?(O(),M("div",tO,[g("p",{class:"mb-3",textContent:I(t.$t("dialog.update.progress"))},null,8,eO)])):(O(),M("div",WA,[r.spotify_enabled||r.rss.tracks>0?(O(),M("div",zA,[g("label",{class:"label",textContent:I(t.$t("dialog.update.info"))},null,8,qA),g("div",GA,[g("div",KA,[xn(g("select",{"onUpdate:modelValue":e[0]||(e[0]=l=>s.libraryStore.update_dialog_scan_kind=l)},[g("option",{value:"",textContent:I(t.$t("dialog.update.all"))},null,8,XA),g("option",{value:"files",textContent:I(t.$t("dialog.update.local"))},null,8,YA),r.spotify_enabled?(O(),M("option",{key:0,value:"spotify",textContent:I(t.$t("dialog.update.spotify"))},null,8,ZA)):_t("",!0),r.rss.tracks>0?(O(),M("option",{key:1,value:"rss",textContent:I(t.$t("dialog.update.feeds"))},null,8,JA)):_t("",!0)],512),[[Kp,s.libraryStore.update_dialog_scan_kind]])])])])):_t("",!0),C(o,{modelValue:i.rescan_metadata,"onUpdate:modelValue":e[1]||(e[1]=l=>i.rescan_metadata=l)},{label:D(()=>[g("span",{textContent:I(t.$t("dialog.update.rescan-metadata"))},null,8,QA)]),_:1},8,["modelValue"])]))]),_:1},8,["actions","show","title"])}const sO=rt(BA,[["render",nO]]),Vn=ds("UIStore",{state:()=>({albums_sort:1,artist_albums_sort:1,artist_tracks_sort:1,artists_sort:1,composer_tracks_sort:1,genre_tracks_sort:1,hide_singles:!1,hide_spotify:!1,show_burger_menu:!1,show_only_next_items:!1,show_player_menu:!1,show_update_dialog:!1})}),iO={name:"ControlLink",props:{to:{required:!0,type:Object}},setup(){return{uiStore:Vn()}},methods:{open(){this.uiStore.show_burger_menu=!1,this.uiStore.show_player_menu=!1,this.$router.push(this.to)}}},rO=["href"];function oO(t,e,n,s,i,r){return O(),M("a",{href:t.$router.resolve(n.to).href,onClick:e[0]||(e[0]=Oe((...o)=>r.open&&r.open(...o),["stop","prevent"]))},[ge(t.$slots,"default")],8,rO)}const B0=rt(iO,[["render",oO]]),aO={name:"ControlSlider",props:{disabled:Boolean,max:{required:!0,type:Number},value:{required:!0,type:Number}},emits:["update:value"],computed:{ratio(){return this.value/this.max}}},lO=["value","disabled","max"];function cO(t,e,n,s,i,r){return O(),M("input",{value:n.value,disabled:n.disabled,class:Bt(["slider",{"is-inactive":n.disabled}]),max:n.max,type:"range",style:di({"--ratio":r.ratio}),onInput:e[0]||(e[0]=o=>t.$emit("update:value",o.target.valueAsNumber))},null,46,lO)}const Ru=rt(aO,[["render",cO],["__scopeId","data-v-d0c7e339"]]),uO={name:"ControlVolume",components:{ControlSlider:Ru},setup(){return{player:Yn()}},data(){return{old_volume:0}},computed:{icon(){return this.player.volume>0?"volume-high":"volume-off"}},watch:{"player.volume"(){this.player.volume>0&&(this.old_volume=this.player.volume)}},methods:{changeVolume(t){tt.player_volume(this.player.volume)},toggle(){this.player.volume=this.player.volume>0?0:this.old_volume,this.changeVolume()}}},dO={class:"media is-align-items-center mb-0"},fO={class:"media-left"},pO={class:"media-content"},hO=["textContent"];function mO(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-slider");return O(),M("div",dO,[g("div",fO,[g("a",{class:"button is-small",onClick:e[0]||(e[0]=(...l)=>r.toggle&&r.toggle(...l))},[C(o,{class:"icon",name:r.icon},null,8,["name"])])]),g("div",pO,[g("div",{class:"is-size-7 is-uppercase",textContent:I(t.$t("navigation.volume"))},null,8,hO),C(a,{value:s.player.volume,"onUpdate:value":e[1]||(e[1]=l=>s.player.volume=l),max:100,onChange:r.changeVolume},null,8,["value","onChange"])])])}const gO=rt(uO,[["render",mO]]),bO={name:"ControlOutputVolume",components:{ControlSlider:Ru},props:{output:{required:!0,type:Object}},data(){return{volume:this.output.selected?this.output.volume:0}},computed:{icon(){return this.output.type.startsWith("AirPlay")?"cast-variant":this.output.type==="Chromecast"?"cast":this.output.type==="fifo"?"pipe":"server"}},watch:{output(){this.volume=this.output.volume}},methods:{changeVolume(){tt.player_output_volume(this.output.id,this.volume)},toggle(){const t={selected:!this.output.selected};tt.output_update(this.output.id,t)}}},yO={class:"media is-align-items-center mb-0"},_O={class:"media-left"},vO={class:"media-content"},SO=["textContent"];function EO(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-slider");return O(),M("div",yO,[g("div",_O,[g("a",{class:Bt(["button is-small",{"has-text-grey-light":!n.output.selected}]),onClick:e[0]||(e[0]=(...l)=>r.toggle&&r.toggle(...l))},[C(o,{class:"icon",name:r.icon,title:n.output.type},null,8,["name","title"])],2)]),g("div",vO,[g("div",{class:Bt(["is-size-7 is-uppercase",{"has-text-grey-light":!n.output.selected}]),textContent:I(n.output.name)},null,10,SO),C(a,{value:i.volume,"onUpdate:value":e[1]||(e[1]=l=>i.volume=l),disabled:!n.output.selected,max:100,onChange:r.changeVolume},null,8,["value","disabled","onChange"])])])}const wO=rt(bO,[["render",EO]]),CO={name:"ControlPlayerBack",props:{offset:{required:!0,type:Number}},setup(){return{playerStore:Yn(),queueStore:ws()}},computed:{disabled(){var t;return((t=this.queueStore)==null?void 0:t.count)<=0||this.is_stopped||this.current.data_kind==="pipe"},is_stopped(){return this.player.state==="stop"},current(){return this.queueStore.current},player(){return this.playerStore},visible(){return["podcast","audiobook"].includes(this.current.media_kind)}},methods:{seek(){this.disabled||tt.player_seek(this.offset*-1)}}},kO=["disabled"];function TO(t,e,n,s,i,r){const o=x("mdicon");return r.visible?(O(),M("a",{key:0,disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.seek&&r.seek(...a))},[C(o,{class:"icon",name:"rewind-10",title:t.$t("player.button.seek-backward")},null,8,["title"])],8,kO)):_t("",!0)}const xO=rt(CO,[["render",TO]]),AO={name:"ControlPlayerConsume",setup(){return{playerStore:Yn()}},computed:{is_consume(){return this.playerStore.consume}},methods:{toggle(){tt.player_consume(!this.is_consume)}}};function OO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{class:Bt({"is-dark":r.is_consume}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:"fire",size:"16",title:t.$t("player.button.consume")},null,8,["title"])],2)}const IO=rt(AO,[["render",OO]]),NO={name:"ControlPlayerForward",props:{offset:{required:!0,type:Number}},setup(){return{playerStore:Yn(),queueStore:ws()}},computed:{disabled(){var t;return((t=this.queueStore)==null?void 0:t.count)<=0||this.is_stopped||this.current.data_kind==="pipe"},is_stopped(){return this.player.state==="stop"},current(){return this.queueStore.current},player(){return this.playerStore},visible(){return["podcast","audiobook"].includes(this.current.media_kind)}},methods:{seek(){this.disabled||tt.player_seek(this.offset)}}},PO=["disabled"];function $O(t,e,n,s,i,r){const o=x("mdicon");return r.visible?(O(),M("a",{key:0,disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.seek&&r.seek(...a))},[C(o,{class:"icon",name:"fast-forward-30",title:t.$t("player.button.seek-forward")},null,8,["title"])],8,PO)):_t("",!0)}const RO=rt(NO,[["render",$O]]),Lu=ds("LyricsStore",{state:()=>({content:[],pane:!1})}),LO={name:"ControlPlayerLyrics",setup(){return{lyricsStore:Lu()}},computed:{icon(){return this.is_active?"script-text-play":"script-text-outline"},is_active(){return this.lyricsStore.pane}},methods:{toggle(){this.lyricsStore.pane=!this.lyricsStore.pane}}};function DO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{class:Bt({"is-dark":r.is_active}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:r.icon,size:16,title:t.$t("player.button.toggle-lyrics")},null,8,["name","title"])],2)}const MO=rt(LO,[["render",DO]]),FO={name:"ControlPlayerNext",computed:{disabled(){var t;return((t=ws())==null?void 0:t.count)<=0}},methods:{play_next(){this.disabled||tt.player_next()}}},VO=["disabled"];function HO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.play_next&&r.play_next(...a))},[C(o,{class:"icon",name:"skip-forward",title:t.$t("player.button.skip-forward")},null,8,["title"])],8,VO)}const UO=rt(FO,[["render",HO]]),jO={name:"ControlPlayerPlay",props:{show_disabled_message:Boolean},setup(){return{notificationsStore:Ls(),playerStore:Yn(),queueStore:ws()}},computed:{disabled(){var t;return((t=this.queueStore)==null?void 0:t.count)<=0},icon(){if(this.is_playing){if(this.is_pause_allowed)return"pause"}else return"play";return"stop"},is_pause_allowed(){const{current:t}=this.queueStore;return t&&t.data_kind!=="pipe"},is_playing(){return this.playerStore.state==="play"}},methods:{toggle(){if(this.disabled){this.show_disabled_message&&this.notificationsStore.add({text:this.$t("server.empty-queue"),timeout:2e3,topic:"connection",type:"info"});return}this.is_playing&&this.is_pause_allowed?tt.player_pause():this.is_playing&&!this.is_pause_allowed?tt.player_stop():tt.player_play()}}},BO=["disabled"];function WO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:r.icon,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],8,BO)}const zO=rt(jO,[["render",WO]]),qO={name:"ControlPlayerPrevious",setup(){return{queueStore:ws()}},computed:{disabled(){return this.queueStore.count<=0}},methods:{play_previous(){this.disabled||tt.player_previous()}}},GO=["disabled"];function KO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.play_previous&&r.play_previous(...a))},[C(o,{class:"icon",name:"skip-backward",title:t.$t("player.button.skip-backward")},null,8,["title"])],8,GO)}const XO=rt(qO,[["render",KO]]),YO={name:"ControlPlayerRepeat",setup(){return{playerStore:Yn()}},computed:{icon(){return this.is_repeat_all?"repeat":this.is_repeat_single?"repeat-once":"repeat-off"},is_repeat_all(){return this.playerStore.repeat==="all"},is_repeat_off(){return!this.is_repeat_all&&!this.is_repeat_single},is_repeat_single(){return this.playerStore.repeat==="single"}},methods:{toggle(){this.is_repeat_all?tt.player_repeat("single"):this.is_repeat_single?tt.player_repeat("off"):tt.player_repeat("all")}}};function ZO(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{class:Bt({"is-dark":!r.is_repeat_off}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:r.icon,size:16,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],2)}const JO=rt(YO,[["render",ZO]]),QO={name:"ControlPlayerShuffle",setup(){return{playerStore:Yn()}},computed:{icon(){return this.is_shuffle?"shuffle":"shuffle-disabled"},is_shuffle(){return this.playerStore.shuffle}},methods:{toggle(){tt.player_shuffle(!this.is_shuffle)}}};function tI(t,e,n,s,i,r){const o=x("mdicon");return O(),M("a",{class:Bt({"is-dark":r.is_shuffle}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[C(o,{class:"icon",name:r.icon,size:16,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],2)}const eI=rt(QO,[["render",tI]]),jo={audio:new Audio,context:null,play(t){this.stop(),this.context.resume().then(()=>{this.audio.src=`${String(t||"")}?x=${Date.now()}`,this.audio.crossOrigin="anonymous",this.audio.load()})},setVolume(t){this.audio&&(this.audio.volume=Math.min(1,Math.max(0,parseFloat(t)||0)))},setup(){return this.context=new(window.AudioContext||window.webkitAudioContext),this.context.createMediaElementSource(this.audio).connect(this.context.destination),this.audio.addEventListener("canplaythrough",()=>{this.audio.play()}),this.audio.addEventListener("canplay",()=>{this.audio.play()}),this.audio},stop(){try{this.audio.pause()}catch{}try{this.audio.stop()}catch{}try{this.audio.close()}catch{}}},nI={name:"ControlStreamVolume",components:{ControlSlider:Ru},emits:["change","mute"],data(){return{loading:!1,playing:!1,volume:10}},mounted(){this.setupAudio()},unmounted(){this.closeAudio()},methods:{changeVolume(){jo.setVolume(this.volume/100)},closeAudio(){jo.stop(),this.playing=!1},playChannel(){this.playing||(this.loading=!0,jo.play("/stream.mp3"),jo.setVolume(this.volume/100))},setupAudio(){const t=jo.setup();t.addEventListener("waiting",()=>{this.playing=!1,this.loading=!0}),t.addEventListener("playing",()=>{this.playing=!0,this.loading=!1}),t.addEventListener("ended",()=>{this.playing=!1,this.loading=!1}),t.addEventListener("error",()=>{this.closeAudio(),this.notificationsStore.add({text:this.$t("navigation.stream-error"),type:"danger"}),this.playing=!1,this.loading=!1})},togglePlay(){this.loading||(this.playing&&this.closeAudio(),this.playChannel())}}},sI={class:"media is-align-items-center mb-0"},iI={class:"media-left"},rI={class:"media-content is-align-items-center"},oI=["textContent"],aI={href:"stream.mp3",class:"ml-2",target:"_blank"};function lI(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-slider");return O(),M("div",sI,[g("div",iI,[g("a",{class:Bt(["button is-small",{"has-text-grey-light":!i.playing&&!i.loading,"is-loading":i.loading}]),onClick:e[0]||(e[0]=(...l)=>r.togglePlay&&r.togglePlay(...l))},[C(o,{class:"icon",name:"broadcast"})],2)]),g("div",rI,[g("div",{class:Bt(["is-flex",{"has-text-grey-light":!i.playing}])},[g("div",{class:"is-size-7 is-uppercase",textContent:I(t.$t("navigation.stream"))},null,8,oI),g("a",aI,[C(o,{class:"icon is-small",name:"open-in-new"})])],2),C(a,{value:i.volume,"onUpdate:value":e[1]||(e[1]=l=>i.volume=l),disabled:!i.playing,max:100,onChange:r.changeVolume},null,8,["value","disabled","onChange"])])])}const cI=rt(nI,[["render",lI]]),lh=ds("OutputsStore",{state:()=>({outputs:[]})}),uI={name:"NavbarBottom",components:{ControlLink:B0,ControlOutputVolume:wO,ControlMainVolume:gO,ControlPlayerBack:xO,ControlPlayerConsume:IO,ControlPlayerForward:RO,ControlPlayerLyrics:MO,ControlPlayerNext:UO,ControlPlayerPlay:zO,ControlPlayerPrevious:XO,ControlPlayerRepeat:JO,ControlPlayerShuffle:eI,ControlStreamVolume:cI},setup(){return{notificationsStore:Ls(),outputsStore:lh(),queueStore:ws(),uiStore:Vn()}},computed:{is_now_playing_page(){return this.$route.name==="now-playing"},current(){return this.queueStore.current}},methods:{toggle(){this.uiStore.show_player_menu=!this.uiStore.show_player_menu,this.uiStore.show_burger_menu=!1}}},dI={class:"navbar-brand is-flex-grow-1"},fI={class:"is-text-clipped"},pI=["textContent"],hI=["textContent"],mI=["textContent"],gI={class:"dropdown-menu is-mobile"},bI={class:"dropdown-content"},yI={class:"dropdown-item pt-0"},_I={class:"dropdown-item is-flex is-justify-content-center"},vI={class:"buttons has-addons"};function SI(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-link"),l=x("control-player-previous"),c=x("control-player-back"),u=x("control-player-play"),d=x("control-player-forward"),f=x("control-player-next"),p=x("control-main-volume"),h=x("control-output-volume"),m=x("control-stream-volume"),_=x("control-player-repeat"),y=x("control-player-shuffle"),S=x("control-player-consume"),b=x("control-player-lyrics");return O(),M("nav",{class:Bt(["navbar is-fixed-bottom",{"is-dark":!r.is_now_playing_page}])},[g("div",dI,[C(a,{class:"navbar-item",to:{name:"queue"}},{default:D(()=>[C(o,{class:"icon",name:"playlist-play"})]),_:1}),r.is_now_playing_page?(O(),M(ht,{key:0},[C(l,{class:"navbar-item ml-auto"}),C(c,{class:"navbar-item",offset:1e4}),C(u,{class:"navbar-item",show_disabled_message:""}),C(d,{class:"navbar-item",offset:3e4}),C(f,{class:"navbar-item mr-auto"})],64)):(O(),M(ht,{key:1},[C(a,{to:{name:"now-playing"},exact:"",class:"navbar-item is-justify-content-flex-start is-expanded is-clipped is-size-7"},{default:D(()=>[g("div",fI,[g("strong",{textContent:I(r.current.title)},null,8,pI),e[1]||(e[1]=g("br",null,null,-1)),g("span",{textContent:I(r.current.artist)},null,8,hI),r.current.album?(O(),M("span",{key:0,textContent:I(t.$t("navigation.now-playing",{album:r.current.album}))},null,8,mI)):_t("",!0)])]),_:1}),C(u,{class:"navbar-item",show_disabled_message:""})],64)),g("a",{class:"navbar-item",onClick:e[0]||(e[0]=(...v)=>r.toggle&&r.toggle(...v))},[C(o,{class:"icon",name:s.uiStore.show_player_menu?"chevron-down":"chevron-up"},null,8,["name"])]),g("div",{class:Bt(["dropdown is-up is-right",{"is-active":s.uiStore.show_player_menu}])},[g("div",gI,[g("div",bI,[g("div",yI,[C(p),(O(!0),M(ht,null,fe(s.outputsStore.outputs,v=>(O(),vt(h,{key:v.id,output:v},null,8,["output"]))),128)),C(m)]),e[2]||(e[2]=g("hr",{class:"dropdown-divider"},null,-1)),g("div",_I,[g("div",vI,[C(_,{class:"button"}),C(y,{class:"button"}),C(S,{class:"button"}),C(b,{class:"button"})])])])])],2)])],2)}const EI=rt(uI,[["render",SI],["__scopeId","data-v-9766529b"]]),ch=ds("SearchStore",{state:()=>({recent_searches:[],search_query:"",search_source:"search-library"}),actions:{add(t){const e=this.recent_searches.indexOf(t);e!==-1&&this.recent_searches.splice(e,1),this.recent_searches.unshift(t),this.recent_searches.length>5&&this.recent_searches.pop()},remove(t){const e=this.recent_searches.indexOf(t);e!==-1&&this.recent_searches.splice(e,1)}}}),mi=ds("SettingsStore",{state:()=>({categories:[]}),getters:{recently_added_limit:t=>{var e;return((e=t.setting("webinterface","recently_added_limit"))==null?void 0:e.value)??100},show_composer_for_genre:t=>{var e;return((e=t.setting("webinterface","show_composer_for_genre"))==null?void 0:e.value)??null},show_composer_now_playing:t=>{var e;return((e=t.setting("webinterface","show_composer_now_playing"))==null?void 0:e.value)??!1},show_cover_artwork_in_album_lists:t=>{var e;return((e=t.setting("artwork","show_cover_artwork_in_album_lists"))==null?void 0:e.value)??!1},show_filepath_now_playing:t=>{var e;return((e=t.setting("webinterface","show_filepath_now_playing"))==null?void 0:e.value)??!1},show_menu_item_audiobooks:t=>{var e;return((e=t.setting("webinterface","show_menu_item_audiobooks"))==null?void 0:e.value)??!1},show_menu_item_files:t=>{var e;return((e=t.setting("webinterface","show_menu_item_files"))==null?void 0:e.value)??!1},show_menu_item_music:t=>{var e;return((e=t.setting("webinterface","show_menu_item_music"))==null?void 0:e.value)??!1},show_menu_item_playlists:t=>{var e;return((e=t.setting("webinterface","show_menu_item_playlists"))==null?void 0:e.value)??!1},show_menu_item_podcasts:t=>{var e;return((e=t.setting("webinterface","show_menu_item_podcasts"))==null?void 0:e.value)??!1},show_menu_item_radio:t=>{var e;return((e=t.setting("webinterface","show_menu_item_radio"))==null?void 0:e.value)??!1},show_menu_item_search:t=>{var e;return((e=t.setting("webinterface","show_menu_item_search"))==null?void 0:e.value)??!1}},actions:{update(t){const e=this.categories.find(s=>s.name===t.category);if(!e)return;const n=e.options.find(s=>s.name===t.name);n&&(n.value=t.value)},setting(t,e){var n;return((n=this.categories.find(s=>s.name===t))==null?void 0:n.options.find(s=>s.name===e))??{}}}}),wI={name:"NavbarTop",components:{ControlLink:B0},setup(){return{searchStore:ch(),servicesStore:Ue(),settingsStore:mi(),uiStore:Vn()}},computed:{menus(){return[{name:"playlists",label:"navigation.playlists",icon:"music-box-multiple",show:this.settingsStore.show_menu_item_playlists},{name:"music",label:"navigation.music",icon:"music",show:this.settingsStore.show_menu_item_music},{name:"music-artists",label:"navigation.artists",show:!0,sub:!0},{name:"music-albums",label:"navigation.albums",show:!0,sub:!0},{name:"music-genres",label:"navigation.genres",show:!0,sub:!0},{name:"music-spotify",label:"navigation.spotify",show:this.servicesStore.spotify.webapi_token_valid,sub:!0},{name:"podcasts",label:"navigation.podcasts",icon:"microphone",show:this.settingsStore.show_menu_item_podcasts},{name:"audiobooks",label:"navigation.audiobooks",icon:"book-open-variant",show:this.settingsStore.show_menu_item_audiobooks},{name:"radio",label:"navigation.radio",icon:"radio",show:this.settingsStore.show_menu_item_radio},{name:"files",label:"navigation.files",icon:"folder-open",show:this.settingsStore.show_menu_item_files},{name:this.searchStore.search_source,label:"navigation.search",icon:"magnify",show:this.settingsStore.show_menu_item_search},{separator:!0,show:!0},{name:"settings-webinterface",label:"navigation.settings",show:!0},{label:"navigation.update-library",action:this.open_update_dialog,show:!0},{name:"about",label:"navigation.about",show:!0}]},zindex(){return this.uiStore.show_player_menu?"z-index: 21":""}},methods:{open_update_dialog(){this.uiStore.show_update_dialog=!0,this.uiStore.show_burger_menu=!1}}},CI={class:"navbar-brand is-flex-grow-1"},kI={class:"dropdown-menu is-mobile"},TI={class:"dropdown-content"},xI={key:0,class:"my-3"},AI=["onClick","textContent"],OI={key:0,class:"icon-text"},II=["textContent"];function NI(t,e,n,s,i,r){const o=x("mdicon"),a=x("control-link");return O(),M("nav",{class:"navbar is-fixed-top is-light",style:di(r.zindex)},[g("div",CI,[(O(!0),M(ht,null,fe(r.menus.filter(l=>l.show&&l.icon),l=>(O(),vt(a,{key:l.name,to:{name:l.name},class:"navbar-item"},{default:D(()=>[C(o,{class:"icon",name:l.icon,size:"16"},null,8,["name"])]),_:2},1032,["to"]))),128)),g("a",{class:"navbar-item ml-auto",onClick:e[0]||(e[0]=l=>s.uiStore.show_burger_menu=!s.uiStore.show_burger_menu)},[C(o,{class:"icon",name:s.uiStore.show_burger_menu?"close":"menu"},null,8,["name"])]),g("div",{class:Bt(["dropdown is-right",{"is-active":s.uiStore.show_burger_menu}])},[g("div",kI,[g("div",TI,[(O(!0),M(ht,null,fe(r.menus.filter(l=>l.show),l=>(O(),M(ht,{key:l.name},[l.separator?(O(),M("hr",xI)):l.action?(O(),M("a",{key:1,class:"dropdown-item",onClick:Oe(l.action,["stop","prevent"]),textContent:I(t.$t(l.label))},null,8,AI)):(O(),vt(a,{key:2,to:{name:l.name},class:"dropdown-item"},{default:D(()=>[l.icon?(O(),M("span",OI,[C(o,{class:"icon",name:l.icon,size:"16"},null,8,["name"])])):_t("",!0),g("span",{class:Bt({"pl-5":l.sub,"has-text-weight-semibold":l.icon}),textContent:I(t.$t(l.label))},null,10,II)]),_:2},1032,["to"]))],64))),128))])])],2)])],4)}const PI=rt(wI,[["render",NI]]),$I={name:"NotificationList",setup(){return{notificationsStore:Ls()}},computed:{notifications(){return this.notificationsStore.list}},methods:{remove(t){this.notificationsStore.remove(t)}}},RI={key:0,class:"notifications"},LI={class:"columns is-centered"},DI={class:"column is-half"},MI=["onClick"],FI=["textContent"];function VI(t,e,n,s,i,r){return r.notifications.length>0?(O(),M("section",RI,[g("div",LI,[g("div",DI,[(O(!0),M(ht,null,fe(r.notifications,o=>(O(),M("div",{key:o.id,class:Bt(["notification",o.type?`is-${o.type}`:""])},[g("button",{class:"delete",onClick:a=>r.remove(o)},null,8,MI),g("div",{class:"text",textContent:I(o.text)},null,8,FI)],2))),128))])])])):_t("",!0)}const HI=rt($I,[["render",VI],["__scopeId","data-v-8e5ff698"]]);function Du(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Mu(t){if(t.__esModule)return t;var e=t.default;if(typeof e=="function"){var n=function s(){return this instanceof s?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};n.prototype=e.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(t).forEach(function(s){var i=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(n,s,i.get?i:{enumerable:!0,get:function(){return t[s]}})}),n}var Zl={exports:{}},UI=Zl.exports,Fg;function jI(){return Fg||(Fg=1,function(t){(function(e,n){t.exports?t.exports=n():e.ReconnectingWebSocket=n()})(UI,function(){if(!("WebSocket"in window))return;function e(n,s,i){var r={debug:!1,automaticOpen:!0,reconnectInterval:1e3,maxReconnectInterval:3e4,reconnectDecay:1.5,timeoutInterval:2e3,maxReconnectAttempts:null};i||(i={});for(var o in r)typeof i[o]<"u"?this[o]=i[o]:this[o]=r[o];this.url=n,this.reconnectAttempts=0,this.readyState=WebSocket.CONNECTING,this.protocol=null;var a=this,l,c=!1,u=!1,d=document.createElement("div");d.addEventListener("open",function(p){a.onopen(p)}),d.addEventListener("close",function(p){a.onclose(p)}),d.addEventListener("connecting",function(p){a.onconnecting(p)}),d.addEventListener("message",function(p){a.onmessage(p)}),d.addEventListener("error",function(p){a.onerror(p)}),this.addEventListener=d.addEventListener.bind(d),this.removeEventListener=d.removeEventListener.bind(d),this.dispatchEvent=d.dispatchEvent.bind(d);function f(p,h){var m=document.createEvent("CustomEvent");return m.initCustomEvent(p,!1,!1,h),m}this.open=function(p){if(l=new WebSocket(a.url,s||[]),p){if(this.maxReconnectAttempts&&this.reconnectAttempts>this.maxReconnectAttempts)return}else d.dispatchEvent(f("connecting")),this.reconnectAttempts=0;(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","attempt-connect",a.url);var h=l,m=setTimeout(function(){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","connection-timeout",a.url),u=!0,h.close(),u=!1},a.timeoutInterval);l.onopen=function(_){clearTimeout(m),(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onopen",a.url),a.protocol=l.protocol,a.readyState=WebSocket.OPEN,a.reconnectAttempts=0;var y=f("open");y.isReconnect=p,p=!1,d.dispatchEvent(y)},l.onclose=function(_){if(clearTimeout(S),l=null,c)a.readyState=WebSocket.CLOSED,d.dispatchEvent(f("close"));else{a.readyState=WebSocket.CONNECTING;var y=f("connecting");y.code=_.code,y.reason=_.reason,y.wasClean=_.wasClean,d.dispatchEvent(y),!p&&!u&&((a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onclose",a.url),d.dispatchEvent(f("close")));var S=a.reconnectInterval*Math.pow(a.reconnectDecay,a.reconnectAttempts);setTimeout(function(){a.reconnectAttempts++,a.open(!0)},S>a.maxReconnectInterval?a.maxReconnectInterval:S)}},l.onmessage=function(_){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onmessage",a.url,_.data);var y=f("message");y.data=_.data,d.dispatchEvent(y)},l.onerror=function(_){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onerror",a.url,_),d.dispatchEvent(f("error"))}},this.automaticOpen==!0&&this.open(!1),this.send=function(p){if(l)return(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","send",a.url,p),l.send(p);throw"INVALID_STATE_ERR : Pausing to reconnect websocket"},this.close=function(p,h){typeof p>"u"&&(p=1e3),c=!0,l&&l.close(p,h)},this.refresh=function(){l&&l.close()}}return e.prototype.onopen=function(n){},e.prototype.onclose=function(n){},e.prototype.onconnecting=function(n){},e.prototype.onmessage=function(n){},e.prototype.onerror=function(n){},e.debugAll=!1,e.CONNECTING=WebSocket.CONNECTING,e.OPEN=WebSocket.OPEN,e.CLOSING=WebSocket.CLOSING,e.CLOSED=WebSocket.CLOSED,e})}(Zl)),Zl.exports}var BI=jI();const WI=Du(BI),wr=ds("ConfigurationStore",{state:()=>({buildoptions:[],library_name:"",version:"",websocket_port:0,allow_modifying_stored_playlists:!1,default_playlist_directory:""})}),zI={name:"App",components:{ModalDialogRemotePairing:LA,ModalDialogUpdate:sO,NavbarBottom:EI,NavbarTop:PI,NotificationList:HI},setup(){return{configurationStore:wr(),libraryStore:$u(),lyricsStore:Lu(),notificationsStore:Ls(),outputsStore:lh(),playerStore:Yn(),queueStore:ws(),remotesStore:Xp(),servicesStore:Ue(),settingsStore:mi(),uiStore:Vn()}},data(){return{pairing_active:!1,reconnect_attempts:0,token_timer_id:0}},computed:{show_burger_menu:{get(){return this.uiStore.show_burger_menu},set(t){this.uiStore.show_burger_menu=t}},show_player_menu:{get(){return this.uiStore.show_player_menu},set(t){this.uiStore.show_player_menu=t}},show_update_dialog:{get(){return this.uiStore.show_update_dialog},set(t){this.uiStore.show_update_dialog=t}}},watch:{show_burger_menu(){this.update_is_clipped()},show_player_menu(){this.update_is_clipped()}},created(){this.connect(),this.$Progress.start(),this.$router.beforeEach((t,e,n)=>{t.meta.show_progress&&!(t.path===e.path&&t.hash)&&(t.meta.progress&&this.$Progress.parseMeta(t.meta.progress),this.$Progress.start()),n()}),this.$router.afterEach((t,e)=>{t.meta.show_progress&&this.$Progress.finish()})},methods:{connect(){tt.config().then(({data:t})=>{this.configurationStore.$state=t,this.uiStore.hide_singles=t.hide_singles,document.title=t.library_name,this.open_websocket(),this.$Progress.finish()}).catch(()=>{this.notificationsStore.add({text:this.$t("server.connection-failed"),topic:"connection",type:"danger"})})},open_websocket(){const t=this.create_websocket(),e=this;t.onopen=()=>{e.reconnect_attempts=0,t.send(JSON.stringify({notify:["update","database","player","options","outputs","volume","queue","spotify","lastfm","pairing"]})),e.update_outputs(),e.update_player_status(),e.update_library_stats(),e.update_settings(),e.update_queue(),e.update_spotify(),e.update_lastfm(),e.update_pairing()};let n=!1;const s=()=>{n||(e.update_outputs(),e.update_player_status(),e.update_library_stats(),e.update_settings(),e.update_queue(),e.update_spotify(),e.update_lastfm(),e.update_pairing(),n=!0,setTimeout(()=>{n=!1},500))};window.addEventListener("focus",s),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&s()}),t.onmessage=i=>{const r=JSON.parse(i.data);(r.notify.includes("update")||r.notify.includes("database"))&&e.update_library_stats(),(r.notify.includes("player")||r.notify.includes("options")||r.notify.includes("volume"))&&e.update_player_status(),(r.notify.includes("outputs")||r.notify.includes("volume"))&&e.update_outputs(),r.notify.includes("queue")&&e.update_queue(),r.notify.includes("spotify")&&e.update_spotify(),r.notify.includes("lastfm")&&e.update_lastfm(),r.notify.includes("pairing")&&e.update_pairing()}},create_websocket(){const t=window.location.protocol.replace("http","ws"),e=window.location.hostname,n=this.configurationStore.websocket_port||`${window.location.port}/ws`,s=`${t}${e}:${n}`;return new WI(s,"notify",{maxReconnectInterval:2e3,reconnectInterval:1e3})},update_is_clipped(){this.show_burger_menu||this.show_player_menu?document.querySelector("html").classList.add("is-clipped"):document.querySelector("html").classList.remove("is-clipped")},update_lastfm(){tt.lastfm().then(({data:t})=>{this.servicesStore.lastfm=t})},update_library_stats(){tt.library_stats().then(({data:t})=>{this.libraryStore.$state=t}),tt.library_count("scan_kind is rss").then(({data:t})=>{this.libraryStore.rss=t})},update_lyrics(){const t=this.queueStore.current;t!=null&&t.track_id?tt.library_track(t.track_id).then(({data:e})=>{this.lyricsStore.lyrics=e.lyrics}):this.lyricsStore.$reset()},update_outputs(){tt.outputs().then(({data:t})=>{this.outputsStore.outputs=t.outputs})},update_pairing(){tt.pairing().then(({data:t})=>{this.remotesStore.$state=t,this.pairing_active=t.active})},update_player_status(){tt.player_status().then(({data:t})=>{this.playerStore.$state=t,this.update_lyrics()})},update_queue(){tt.queue().then(({data:t})=>{this.queueStore.$state=t,this.update_lyrics()})},update_settings(){tt.settings().then(({data:t})=>{this.settingsStore.$state=t})},update_spotify(){tt.spotify().then(({data:t})=>{this.servicesStore.spotify=t,this.token_timer_id>0&&(window.clearTimeout(this.token_timer_id),this.token_timer_id=0),t.webapi_token_expires_in>0&&t.webapi_token&&(this.token_timer_id=window.setTimeout(this.update_spotify,1e3*t.webapi_token_expires_in))})}},template:""};function qI(t,e,n,s,i,r){const o=x("vue-progress-bar"),a=x("navbar-top"),l=x("router-view"),c=x("modal-dialog-remote-pairing"),u=x("modal-dialog-update"),d=x("notification-list"),f=x("navbar-bottom");return O(),M(ht,null,[C(o,{class:"has-background-primary"}),C(a),C(l,null,{default:D(({Component:p})=>[(O(),vt(yu(p)))]),_:1}),C(c,{show:i.pairing_active,onClose:e[0]||(e[0]=p=>i.pairing_active=!1)},null,8,["show"]),C(u,{show:r.show_update_dialog,onClose:e[1]||(e[1]=p=>r.show_update_dialog=!1)},null,8,["show"]),xn(C(d,null,null,512),[[Cc,!r.show_burger_menu]]),C(f),xn(g("div",{class:"overlay-fullscreen",onClick:e[2]||(e[2]=p=>r.show_burger_menu=r.show_player_menu=!1)},null,512),[[Cc,r.show_burger_menu||r.show_player_menu]])],64)}const GI=rt(zI,[["render",qI]]),W0=function(){return document.ontouchstart!==null?"click":"touchstart"},$c="__vue_click_away__",z0=function(t,e,n){q0(t);let s=n.context,i=e.value,r=!1;setTimeout(function(){r=!0},0),t[$c]=function(o){if((!t||!t.contains(o.target))&&i&&r&&typeof i=="function")return i.call(s,o)},document.addEventListener(W0(),t[$c],!1)},q0=function(t){document.removeEventListener(W0(),t[$c],!1),delete t[$c]},KI=function(t,e,n){e.value!==e.oldValue&&z0(t,e,n)},XI={install:function(t){t.directive("click-away",YI)}},YI={mounted:z0,updated:KI,unmounted:q0};var Ps=(t=>(t.LOADING="loading",t.LOADED="loaded",t.ERROR="error",t))(Ps||{});const ZI=typeof window<"u"&&window!==null,JI=nN(),QI=Object.prototype.propertyIsEnumerable,Vg=Object.getOwnPropertySymbols;function ua(t){return typeof t=="function"||toString.call(t)==="[object Object]"}function tN(t){return typeof t=="object"?t===null:typeof t!="function"}function eN(t){return t!=="__proto__"&&t!=="constructor"&&t!=="prototype"}function nN(){return ZI&&"IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype?("isIntersecting"in window.IntersectionObserverEntry.prototype||Object.defineProperty(window.IntersectionObserverEntry.prototype,"isIntersecting",{get(){return this.intersectionRatio>0}}),!0):!1}function sN(t,...e){if(!ua(t))throw new TypeError("expected the first argument to be an object");if(e.length===0||typeof Symbol!="function"||typeof Vg!="function")return t;for(const n of e){const s=Vg(n);for(const i of s)QI.call(n,i)&&(t[i]=n[i])}return t}function G0(t,...e){let n=0;for(tN(t)&&(t=e[n++]),t||(t={});n{this._logger("Not support IntersectionObserver!")})),this._initIntersectionObserver(e,s,r,o,a)}update(e,n){var a;if(!e)return;(a=this._realObserver(e))==null||a.unobserve(e);const{src:s,error:i,lifecycle:r,delay:o}=this._valueFormatter(typeof n=="string"?n:n.value);this._initIntersectionObserver(e,s,i,r,o)}unmount(e){var n;e&&((n=this._realObserver(e))==null||n.unobserve(e),this._images.delete(e))}loadImages(e,n,s,i){this._setImageSrc(e,n,s,i)}_setImageSrc(e,n,s,i){e.tagName.toLowerCase()==="img"?(n&&e.getAttribute("src")!==n&&e.setAttribute("src",n),this._listenImageStatus(e,()=>{this._lifecycle(Ps.LOADED,i,e)},()=>{var r;e.onload=null,this._lifecycle(Ps.ERROR,i,e),(r=this._realObserver(e))==null||r.disconnect(),s&&e.getAttribute("src")!==s&&e.setAttribute("src",s),this._log(()=>{this._logger(`Image failed to load!And failed src was: ${n} `)})})):e.style.backgroundImage=`url('${n}')`}_initIntersectionObserver(e,n,s,i,r){var a;const o=this.options.observerOptions;this._images.set(e,new IntersectionObserver(l=>{Array.prototype.forEach.call(l,c=>{r&&r>0?this._delayedIntersectionCallback(e,c,r,n,s,i):this._intersectionCallback(e,c,n,s,i)})},o)),(a=this._realObserver(e))==null||a.observe(e)}_intersectionCallback(e,n,s,i,r){var o;n.isIntersecting&&((o=this._realObserver(e))==null||o.unobserve(n.target),this._setImageSrc(e,s,i,r))}_delayedIntersectionCallback(e,n,s,i,r,o){if(n.isIntersecting){if(n.target.hasAttribute(Mr))return;const a=setTimeout(()=>{this._intersectionCallback(e,n,i,r,o),n.target.removeAttribute(Mr)},s);n.target.setAttribute(Mr,String(a))}else n.target.hasAttribute(Mr)&&(clearTimeout(Number(n.target.getAttribute(Mr))),n.target.removeAttribute(Mr))}_listenImageStatus(e,n,s){e.onload=n,e.onerror=s}_valueFormatter(e){let n=e,s=this.options.loading,i=this.options.error,r=this.options.lifecycle,o=this.options.delay;return ua(e)&&(n=e.src,s=e.loading||this.options.loading,i=e.error||this.options.error,r=e.lifecycle||this.options.lifecycle,o=e.delay||this.options.delay),{src:n,loading:s,error:i,lifecycle:r,delay:o}}_log(e){this.options.log&&e()}_lifecycle(e,n,s){switch(e){case Ps.LOADING:s==null||s.setAttribute("lazy",Ps.LOADING),n!=null&&n.loading&&n.loading(s);break;case Ps.LOADED:s==null||s.setAttribute("lazy",Ps.LOADED),n!=null&&n.loaded&&n.loaded(s);break;case Ps.ERROR:s==null||s.setAttribute("lazy",Ps.ERROR),n!=null&&n.error&&n.error(s);break}}_realObserver(e){return this._images.get(e)}_logger(e,...n){let s=console.error;switch(this.options.logLevel){case"error":s=console.error;break;case"warn":s=console.warn;break;case"info":s=console.info;break;case"debug":s=console.debug;break}s(e,n)}}const aN={install(t,e){const n=new oN(e);t.config.globalProperties.$Lazyload=n,t.provide("Lazyload",n),t.directive("lazy",{mounted:n.mount.bind(n),updated:n.update.bind(n),unmounted:n.unmount.bind(n)})}};var Ld={exports:{}},Dd={exports:{}},Md={};/** * @vue/compiler-core v3.5.13 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT **/const go=Symbol(""),oo=Symbol(""),Fu=Symbol(""),Ra=Symbol(""),uh=Symbol(""),Bi=Symbol(""),dh=Symbol(""),fh=Symbol(""),Vu=Symbol(""),Hu=Symbol(""),No=Symbol(""),Uu=Symbol(""),ph=Symbol(""),ju=Symbol(""),Bu=Symbol(""),Wu=Symbol(""),zu=Symbol(""),qu=Symbol(""),Gu=Symbol(""),hh=Symbol(""),mh=Symbol(""),tl=Symbol(""),La=Symbol(""),Ku=Symbol(""),Xu=Symbol(""),bo=Symbol(""),Po=Symbol(""),Yu=Symbol(""),Rc=Symbol(""),K0=Symbol(""),Lc=Symbol(""),Da=Symbol(""),X0=Symbol(""),Y0=Symbol(""),Zu=Symbol(""),Z0=Symbol(""),J0=Symbol(""),Ju=Symbol(""),gh=Symbol(""),Cr={[go]:"Fragment",[oo]:"Teleport",[Fu]:"Suspense",[Ra]:"KeepAlive",[uh]:"BaseTransition",[Bi]:"openBlock",[dh]:"createBlock",[fh]:"createElementBlock",[Vu]:"createVNode",[Hu]:"createElementVNode",[No]:"createCommentVNode",[Uu]:"createTextVNode",[ph]:"createStaticVNode",[ju]:"resolveComponent",[Bu]:"resolveDynamicComponent",[Wu]:"resolveDirective",[zu]:"resolveFilter",[qu]:"withDirectives",[Gu]:"renderList",[hh]:"renderSlot",[mh]:"createSlots",[tl]:"toDisplayString",[La]:"mergeProps",[Ku]:"normalizeClass",[Xu]:"normalizeStyle",[bo]:"normalizeProps",[Po]:"guardReactiveProps",[Yu]:"toHandlers",[Rc]:"camelize",[K0]:"capitalize",[Lc]:"toHandlerKey",[Da]:"setBlockTracking",[X0]:"pushScopeId",[Y0]:"popScopeId",[Zu]:"withCtx",[Z0]:"unref",[J0]:"isRef",[Ju]:"withMemo",[gh]:"isMemoSame"};function Q0(t){Object.getOwnPropertySymbols(t).forEach(e=>{Cr[e]=t[e]})}const lN={HTML:0,0:"HTML",SVG:1,1:"SVG",MATH_ML:2,2:"MATH_ML"},cN={ROOT:0,0:"ROOT",ELEMENT:1,1:"ELEMENT",TEXT:2,2:"TEXT",COMMENT:3,3:"COMMENT",SIMPLE_EXPRESSION:4,4:"SIMPLE_EXPRESSION",INTERPOLATION:5,5:"INTERPOLATION",ATTRIBUTE:6,6:"ATTRIBUTE",DIRECTIVE:7,7:"DIRECTIVE",COMPOUND_EXPRESSION:8,8:"COMPOUND_EXPRESSION",IF:9,9:"IF",IF_BRANCH:10,10:"IF_BRANCH",FOR:11,11:"FOR",TEXT_CALL:12,12:"TEXT_CALL",VNODE_CALL:13,13:"VNODE_CALL",JS_CALL_EXPRESSION:14,14:"JS_CALL_EXPRESSION",JS_OBJECT_EXPRESSION:15,15:"JS_OBJECT_EXPRESSION",JS_PROPERTY:16,16:"JS_PROPERTY",JS_ARRAY_EXPRESSION:17,17:"JS_ARRAY_EXPRESSION",JS_FUNCTION_EXPRESSION:18,18:"JS_FUNCTION_EXPRESSION",JS_CONDITIONAL_EXPRESSION:19,19:"JS_CONDITIONAL_EXPRESSION",JS_CACHE_EXPRESSION:20,20:"JS_CACHE_EXPRESSION",JS_BLOCK_STATEMENT:21,21:"JS_BLOCK_STATEMENT",JS_TEMPLATE_LITERAL:22,22:"JS_TEMPLATE_LITERAL",JS_IF_STATEMENT:23,23:"JS_IF_STATEMENT",JS_ASSIGNMENT_EXPRESSION:24,24:"JS_ASSIGNMENT_EXPRESSION",JS_SEQUENCE_EXPRESSION:25,25:"JS_SEQUENCE_EXPRESSION",JS_RETURN_STATEMENT:26,26:"JS_RETURN_STATEMENT"},uN={ELEMENT:0,0:"ELEMENT",COMPONENT:1,1:"COMPONENT",SLOT:2,2:"SLOT",TEMPLATE:3,3:"TEMPLATE"},dN={NOT_CONSTANT:0,0:"NOT_CONSTANT",CAN_SKIP_PATCH:1,1:"CAN_SKIP_PATCH",CAN_CACHE:2,2:"CAN_CACHE",CAN_STRINGIFY:3,3:"CAN_STRINGIFY"},Ze={start:{line:1,column:1,offset:0},end:{line:1,column:1,offset:0},source:""};function t1(t,e=""){return{type:0,source:e,children:t,helpers:new Set,components:[],directives:[],hoists:[],imports:[],cached:[],temps:0,codegenNode:void 0,loc:Ze}}function yo(t,e,n,s,i,r,o,a=!1,l=!1,c=!1,u=Ze){return t&&(a?(t.helper(Bi),t.helper(xr(t.inSSR,c))):t.helper(Tr(t.inSSR,c)),o&&t.helper(qu)),{type:13,tag:e,props:n,children:s,patchFlag:i,dynamicProps:r,directives:o,isBlock:a,disableTracking:l,isComponent:c,loc:u}}function Vi(t,e=Ze){return{type:17,loc:e,elements:t}}function Bn(t,e=Ze){return{type:15,loc:e,properties:t}}function Ve(t,e){return{type:16,loc:Ze,key:$t(t)?Ft(t,!0):t,value:e}}function Ft(t,e=!1,n=Ze,s=0){return{type:4,loc:n,content:t,isStatic:e,constType:e?3:s}}function fN(t,e){return{type:5,loc:e,content:$t(t)?Ft(t,!1,e):t}}function os(t,e=Ze){return{type:8,loc:e,children:t}}function We(t,e=[],n=Ze){return{type:14,loc:n,callee:t,arguments:e}}function kr(t,e=void 0,n=!1,s=!1,i=Ze){return{type:18,params:t,returns:e,newline:n,isSlot:s,loc:i}}function Dc(t,e,n,s=!0){return{type:19,test:t,consequent:e,alternate:n,newline:s,loc:Ze}}function e1(t,e,n=!1,s=!1){return{type:20,index:t,value:e,needPauseTracking:n,inVOnce:s,needArraySpread:!1,loc:Ze}}function n1(t){return{type:21,body:t,loc:Ze}}function pN(t){return{type:22,elements:t,loc:Ze}}function hN(t,e,n){return{type:23,test:t,consequent:e,alternate:n,loc:Ze}}function mN(t,e){return{type:24,left:t,right:e,loc:Ze}}function gN(t){return{type:25,expressions:t,loc:Ze}}function bN(t){return{type:26,returns:t,loc:Ze}}function Tr(t,e){return t||e?Vu:Hu}function xr(t,e){return t||e?dh:fh}function Qu(t,{helper:e,removeHelper:n,inSSR:s}){t.isBlock||(t.isBlock=!0,n(Tr(s,t.isComponent)),e(Bi),e(xr(s,t.isComponent)))}const Ug=new Uint8Array([123,123]),jg=new Uint8Array([125,125]);function Bg(t){return t>=97&&t<=122||t>=65&&t<=90}function jn(t){return t===32||t===10||t===9||t===12||t===13}function _i(t){return t===47||t===62||jn(t)}function Mc(t){const e=new Uint8Array(t.length);for(let n=0;n=0;i--){const r=this.newlines[i];if(e>r){n=i+2,s=e-r;break}}return{column:s,line:n,offset:e}}peek(){return this.buffer.charCodeAt(this.index+1)}stateText(e){e===60?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=5,this.sectionStart=this.index):!this.inVPre&&e===this.delimiterOpen[0]&&(this.state=2,this.delimiterIndex=0,this.stateInterpolationOpen(e))}stateInterpolationOpen(e){if(e===this.delimiterOpen[this.delimiterIndex])if(this.delimiterIndex===this.delimiterOpen.length-1){const n=this.index+1-this.delimiterOpen.length;n>this.sectionStart&&this.cbs.ontext(this.sectionStart,n),this.state=3,this.sectionStart=n}else this.delimiterIndex++;else this.inRCDATA?(this.state=32,this.stateInRCDATA(e)):(this.state=1,this.stateText(e))}stateInterpolation(e){e===this.delimiterClose[0]&&(this.state=4,this.delimiterIndex=0,this.stateInterpolationClose(e))}stateInterpolationClose(e){e===this.delimiterClose[this.delimiterIndex]?this.delimiterIndex===this.delimiterClose.length-1?(this.cbs.oninterpolation(this.sectionStart,this.index+1),this.inRCDATA?this.state=32:this.state=1,this.sectionStart=this.index+1):this.delimiterIndex++:(this.state=3,this.stateInterpolation(e))}stateSpecialStartSequence(e){const n=this.sequenceIndex===this.currentSequence.length;if(!(n?_i(e):(e|32)===this.currentSequence[this.sequenceIndex]))this.inRCDATA=!1;else if(!n){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=6,this.stateInTagName(e)}stateInRCDATA(e){if(this.sequenceIndex===this.currentSequence.length){if(e===62||jn(e)){const n=this.index-this.currentSequence.length;if(this.sectionStart=e||(this.state===28?this.currentSequence===rn.CdataEnd?this.cbs.oncdata(this.sectionStart,e):this.cbs.oncomment(this.sectionStart,e):this.state===6||this.state===11||this.state===18||this.state===17||this.state===12||this.state===13||this.state===14||this.state===15||this.state===16||this.state===20||this.state===19||this.state===21||this.state===9||this.cbs.ontext(this.sectionStart,e))}emitCodePoint(e,n){}}const _N={COMPILER_IS_ON_ELEMENT:"COMPILER_IS_ON_ELEMENT",COMPILER_V_BIND_SYNC:"COMPILER_V_BIND_SYNC",COMPILER_V_BIND_OBJECT_ORDER:"COMPILER_V_BIND_OBJECT_ORDER",COMPILER_V_ON_NATIVE:"COMPILER_V_ON_NATIVE",COMPILER_V_IF_V_FOR_PRECEDENCE:"COMPILER_V_IF_V_FOR_PRECEDENCE",COMPILER_NATIVE_TEMPLATE:"COMPILER_NATIVE_TEMPLATE",COMPILER_INLINE_TEMPLATE:"COMPILER_INLINE_TEMPLATE",COMPILER_FILTERS:"COMPILER_FILTERS"},vN={COMPILER_IS_ON_ELEMENT:{message:'Platform-native elements with "is" prop will no longer be treated as components in Vue 3 unless the "is" value is explicitly prefixed with "vue:".',link:"https://v3-migration.vuejs.org/breaking-changes/custom-elements-interop.html"},COMPILER_V_BIND_SYNC:{message:t=>`.sync modifier for v-bind has been removed. Use v-model with argument instead. \`v-bind:${t}.sync\` should be changed to \`v-model:${t}\`.`,link:"https://v3-migration.vuejs.org/breaking-changes/v-model.html"},COMPILER_V_BIND_OBJECT_ORDER:{message:'v-bind="obj" usage is now order sensitive and behaves like JavaScript object spread: it will now overwrite an existing non-mergeable attribute that appears before v-bind in the case of conflict. To retain 2.x behavior, move v-bind to make it the first attribute. You can also suppress this warning if the usage is intended.',link:"https://v3-migration.vuejs.org/breaking-changes/v-bind.html"},COMPILER_V_ON_NATIVE:{message:".native modifier for v-on has been removed as is no longer necessary.",link:"https://v3-migration.vuejs.org/breaking-changes/v-on-native-modifier-removed.html"},COMPILER_V_IF_V_FOR_PRECEDENCE:{message:"v-if / v-for precedence when used on the same element has changed in Vue 3: v-if now takes higher precedence and will no longer have access to v-for scope variables. It is best to avoid the ambiguity with