diff --git a/htdocs/assets/index.js b/htdocs/assets/index.js index 9c161d74..2ab21c59 100644 --- a/htdocs/assets/index.js +++ b/htdocs/assets/index.js @@ -2,72 +2,72 @@ * @vue/shared v3.5.18 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function nn(t){const e=Object.create(null);for(const n of t.split(","))e[n]=1;return n=>n in e}const Yt={},br=[],Qe=()=>{},io=()=>!1,tr=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&(t.charCodeAt(2)>122||t.charCodeAt(2)<97),lu=t=>t.startsWith("onUpdate:"),Zt=Object.assign,cu=(t,e)=>{const n=t.indexOf(e);n>-1&&t.splice(n,1)},KS=Object.prototype.hasOwnProperty,ue=(t,e)=>KS.call(t,e),gt=Array.isArray,vr=t=>Lr(t)==="[object Map]",er=t=>Lr(t)==="[object Set]",Sf=t=>Lr(t)==="[object Date]",Bb=t=>Lr(t)==="[object RegExp]",xt=t=>typeof t=="function",Dt=t=>typeof t=="string",Nn=t=>typeof t=="symbol",me=t=>t!==null&&typeof t=="object",uu=t=>(me(t)||xt(t))&&xt(t.then)&&xt(t.catch),Ih=Object.prototype.toString,Lr=t=>Ih.call(t),Wb=t=>Lr(t).slice(8,-1),Ja=t=>Lr(t)==="[object Object]",du=t=>Dt(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,fi=nn(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Gb=nn("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),fu=t=>{const e=Object.create(null);return n=>e[n]||(e[n]=t(n))},zS=/-(\w)/g,Te=fu(t=>t.replace(zS,(e,n)=>n?n.toUpperCase():"")),qS=/\B([A-Z])/g,bn=fu(t=>t.replace(qS,"-$1").toLowerCase()),nr=fu(t=>t.charAt(0).toUpperCase()+t.slice(1)),_r=fu(t=>t?`on${nr(t)}`:""),gn=(t,e)=>!Object.is(t,e),Sr=(t,...e)=>{for(let n=0;n{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,writable:s,value:n})},xa=t=>{const e=parseFloat(t);return isNaN(e)?t:e},Ia=t=>{const e=Dt(t)?Number(t):NaN;return isNaN(e)?t:e};let Em;const Qa=()=>Em||(Em=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),XS=/^[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*$/;function YS(t){return XS.test(t)?`__props.${t}`:`__props[${JSON.stringify(t)}]`}function ZS(t,e){return t+JSON.stringify(e,(n,s)=>typeof s=="function"?s.toString():s)}const JS={TEXT:1,1:"TEXT",CLASS:2,2:"CLASS",STYLE:4,4:"STYLE",PROPS:8,8:"PROPS",FULL_PROPS:16,16:"FULL_PROPS",NEED_HYDRATION:32,32:"NEED_HYDRATION",STABLE_FRAGMENT:64,64:"STABLE_FRAGMENT",KEYED_FRAGMENT:128,128:"KEYED_FRAGMENT",UNKEYED_FRAGMENT:256,256:"UNKEYED_FRAGMENT",NEED_PATCH:512,512:"NEED_PATCH",DYNAMIC_SLOTS:1024,1024:"DYNAMIC_SLOTS",DEV_ROOT_FRAGMENT:2048,2048:"DEV_ROOT_FRAGMENT",CACHED:-1,"-1":"CACHED",BAIL:-2,"-2":"BAIL"},QS={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"CACHED",[-2]:"BAIL"},tE={ELEMENT:1,1:"ELEMENT",FUNCTIONAL_COMPONENT:2,2:"FUNCTIONAL_COMPONENT",STATEFUL_COMPONENT:4,4:"STATEFUL_COMPONENT",TEXT_CHILDREN:8,8:"TEXT_CHILDREN",ARRAY_CHILDREN:16,16:"ARRAY_CHILDREN",SLOTS_CHILDREN:32,32:"SLOTS_CHILDREN",TELEPORT:64,64:"TELEPORT",SUSPENSE:128,128:"SUSPENSE",COMPONENT_SHOULD_KEEP_ALIVE:256,256:"COMPONENT_SHOULD_KEEP_ALIVE",COMPONENT_KEPT_ALIVE:512,512:"COMPONENT_KEPT_ALIVE",COMPONENT:6,6:"COMPONENT"},eE={STABLE:1,1:"STABLE",DYNAMIC:2,2:"DYNAMIC",FORWARDED:3,3:"FORWARDED"},nE={1:"STABLE",2:"DYNAMIC",3:"FORWARDED"},sE="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol",Nh=nn(sE),iE=Nh,wm=2;function Kb(t,e=0,n=t.length){if(e=Math.max(0,Math.min(e,t.length)),n=Math.max(0,Math.min(n,t.length)),e>n)return"";let s=t.split(/(\r?\n)/);const i=s.filter((a,l)=>l%2===1);s=s.filter((a,l)=>l%2===0);let r=0;const o=[];for(let a=0;a=e){for(let l=a-wm;l<=a+wm||n>r;l++){if(l<0||l>=s.length)continue;const c=l+1;o.push(`${c}${" ".repeat(Math.max(3-String(c).length,0))}| ${s[l]}`);const u=s[l].length,d=i[l]&&i[l].length||0;if(l===a){const f=e-(r-(u+d)),h=Math.max(1,n>r?u-f:n-e);o.push(" | "+" ".repeat(f)+"^".repeat(h))}else if(l>a){if(n>r){const f=Math.max(Math.min(n-r,u),1);o.push(" | "+"^".repeat(f))}r+=u+d}}break}return o.join(` -`)}function Do(t){if(gt(t)){const e={};for(let n=0;n{if(n){const s=n.split(oE);s.length>1&&(e[s[0].trim()]=s[1].trim())}}),e}function lE(t){if(!t)return"";if(Dt(t))return t;let e="";for(const n in t){const s=t[n];if(Dt(s)||typeof s=="number"){const i=n.startsWith("--")?n:bn(n);e+=`${i}:${s};`}}return e}function Gt(t){let e="";if(Dt(t))e=t;else if(gt(t))for(let n=0;n/="'\u0009\u000a\u000c\u0020]/,Ed={};function mE(t){if(Ed.hasOwnProperty(t))return Ed[t];const e=pE.test(t);return e&&console.error(`unsafe attribute name: ${t}`),Ed[t]=!e}const gE={acceptCharset:"accept-charset",className:"class",htmlFor:"for",httpEquiv:"http-equiv"},yE=nn("accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap"),bE=nn("xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan"),vE=nn("accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns");function _E(t){if(t==null)return!1;const e=typeof t;return e==="string"||e==="number"||e==="boolean"}const SE=/["'&<>]/;function EE(t){const e=""+t,n=SE.exec(e);if(!n)return e;let s="",i,r,o=0;for(r=n.index;r||--!>|?@[\\\]^`{|}~]/g;function TE(t,e){return t.replace(Qb,n=>e?n==='"'?'\\\\\\"':`\\\\${n}`:`\\${n}`)}function CE(t,e){if(t.length!==e.length)return!1;let n=!0;for(let s=0;n&&syi(n,e))}const tv=t=>!!(t&&t.__v_isRef===!0),et=t=>Dt(t)?t:t==null?"":gt(t)||me(t)&&(t.toString===Ih||!xt(t.toString))?tv(t)?et(t.value):JSON.stringify(t,ev,2):String(t),ev=(t,e)=>tv(e)?ev(t,e.value):vr(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((n,[s,i],r)=>(n[wd(s,r)+" =>"]=i,n),{})}:er(e)?{[`Set(${e.size})`]:[...e.values()].map(n=>wd(n))}:Nn(e)?wd(e):me(e)&&!gt(e)&&!Ja(e)?String(e):e,wd=(t,e="")=>{var n;return Nn(t)?`Symbol(${(n=t.description)!=null?n:e})`:t};function nv(t){return t==null?"initial":typeof t=="string"?t===""?" ":t:String(t)}const AE=Object.freeze(Object.defineProperty({__proto__:null,EMPTY_ARR:br,EMPTY_OBJ:Yt,NO:io,NOOP:Qe,PatchFlagNames:QS,PatchFlags:JS,ShapeFlags:tE,SlotFlags:eE,camelize:Te,capitalize:nr,cssVarNameEscapeSymbolsRE:Qb,def:wc,escapeHtml:EE,escapeHtmlComment:kE,extend:Zt,genCacheKey:ZS,genPropsAccessExp:YS,generateCodeFrame:Kb,getEscapedCssVarName:TE,getGlobalThis:Qa,hasChanged:gn,hasOwn:ue,hyphenate:bn,includeBooleanAttr:Dh,invokeArrayFns:Sr,isArray:gt,isBooleanAttr:hE,isBuiltInDirective:Gb,isDate:Sf,isFunction:xt,isGloballyAllowed:Nh,isGloballyWhitelisted:iE,isHTMLTag:zb,isIntegerKey:du,isKnownHtmlAttr:yE,isKnownMathMLAttr:vE,isKnownSvgAttr:bE,isMap:vr,isMathMLTag:Xb,isModelListener:lu,isObject:me,isOn:tr,isPlainObject:Ja,isPromise:uu,isRegExp:Bb,isRenderableAttrValue:_E,isReservedProp:fi,isSSRSafeAttrName:mE,isSVGTag:qb,isSet:er,isSpecialBooleanAttr:Jb,isString:Dt,isSymbol:Nn,isVoidTag:Yb,looseEqual:yi,looseIndexOf:tl,looseToNumber:xa,makeMap:nn,normalizeClass:Gt,normalizeCssVarValue:nv,normalizeProps:ro,normalizeStyle:Do,objectToString:Ih,parseStringStyle:Ph,propsToAttrMap:gE,remove:cu,slotFlagsText:nE,stringifyStyle:lE,toDisplayString:et,toHandlerKey:_r,toNumber:Ia,toRawType:Wb,toTypeString:Lr},Symbol.toStringTag,{value:"Module"}));/** +**//*! #__NO_SIDE_EFFECTS__ */function nn(t){const e=Object.create(null);for(const n of t.split(","))e[n]=1;return n=>n in e}const Yt={},_r=[],Qe=()=>{},oo=()=>!1,nr=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&(t.charCodeAt(2)>122||t.charCodeAt(2)<97),pu=t=>t.startsWith("onUpdate:"),Zt=Object.assign,mu=(t,e)=>{const n=t.indexOf(e);n>-1&&t.splice(n,1)},JS=Object.prototype.hasOwnProperty,ue=(t,e)=>JS.call(t,e),gt=Array.isArray,Sr=t=>$r(t)==="[object Map]",sr=t=>$r(t)==="[object Set]",Cf=t=>$r(t)==="[object Date]",zb=t=>$r(t)==="[object RegExp]",xt=t=>typeof t=="function",Rt=t=>typeof t=="string",Pn=t=>typeof t=="symbol",me=t=>t!==null&&typeof t=="object",gu=t=>(me(t)||xt(t))&&xt(t.then)&&xt(t.catch),Dh=Object.prototype.toString,$r=t=>Dh.call(t),Xb=t=>$r(t).slice(8,-1),il=t=>$r(t)==="[object Object]",yu=t=>Rt(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,pi=nn(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Yb=nn("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"),bu=t=>{const e=Object.create(null);return n=>e[n]||(e[n]=t(n))},QS=/-(\w)/g,Ce=bu(t=>t.replace(QS,(e,n)=>n?n.toUpperCase():"")),tE=/\B([A-Z])/g,bn=bu(t=>t.replace(tE,"-$1").toLowerCase()),ir=bu(t=>t.charAt(0).toUpperCase()+t.slice(1)),Er=bu(t=>t?`on${ir(t)}`:""),gn=(t,e)=>!Object.is(t,e),wr=(t,...e)=>{for(let n=0;n{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,writable:s,value:n})},La=t=>{const e=parseFloat(t);return isNaN(e)?t:e},Ma=t=>{const e=Rt(t)?Number(t):NaN;return isNaN(e)?t:e};let Om;const rl=()=>Om||(Om=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),eE=/^[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*$/;function nE(t){return eE.test(t)?`__props.${t}`:`__props[${JSON.stringify(t)}]`}function sE(t,e){return t+JSON.stringify(e,(n,s)=>typeof s=="function"?s.toString():s)}const iE={TEXT:1,1:"TEXT",CLASS:2,2:"CLASS",STYLE:4,4:"STYLE",PROPS:8,8:"PROPS",FULL_PROPS:16,16:"FULL_PROPS",NEED_HYDRATION:32,32:"NEED_HYDRATION",STABLE_FRAGMENT:64,64:"STABLE_FRAGMENT",KEYED_FRAGMENT:128,128:"KEYED_FRAGMENT",UNKEYED_FRAGMENT:256,256:"UNKEYED_FRAGMENT",NEED_PATCH:512,512:"NEED_PATCH",DYNAMIC_SLOTS:1024,1024:"DYNAMIC_SLOTS",DEV_ROOT_FRAGMENT:2048,2048:"DEV_ROOT_FRAGMENT",CACHED:-1,"-1":"CACHED",BAIL:-2,"-2":"BAIL"},rE={1:"TEXT",2:"CLASS",4:"STYLE",8:"PROPS",16:"FULL_PROPS",32:"NEED_HYDRATION",64:"STABLE_FRAGMENT",128:"KEYED_FRAGMENT",256:"UNKEYED_FRAGMENT",512:"NEED_PATCH",1024:"DYNAMIC_SLOTS",2048:"DEV_ROOT_FRAGMENT",[-1]:"CACHED",[-2]:"BAIL"},oE={ELEMENT:1,1:"ELEMENT",FUNCTIONAL_COMPONENT:2,2:"FUNCTIONAL_COMPONENT",STATEFUL_COMPONENT:4,4:"STATEFUL_COMPONENT",TEXT_CHILDREN:8,8:"TEXT_CHILDREN",ARRAY_CHILDREN:16,16:"ARRAY_CHILDREN",SLOTS_CHILDREN:32,32:"SLOTS_CHILDREN",TELEPORT:64,64:"TELEPORT",SUSPENSE:128,128:"SUSPENSE",COMPONENT_SHOULD_KEEP_ALIVE:256,256:"COMPONENT_SHOULD_KEEP_ALIVE",COMPONENT_KEPT_ALIVE:512,512:"COMPONENT_KEPT_ALIVE",COMPONENT:6,6:"COMPONENT"},aE={STABLE:1,1:"STABLE",DYNAMIC:2,2:"DYNAMIC",FORWARDED:3,3:"FORWARDED"},lE={1:"STABLE",2:"DYNAMIC",3:"FORWARDED"},cE="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol",Lh=nn(cE),uE=Lh,xm=2;function Zb(t,e=0,n=t.length){if(e=Math.max(0,Math.min(e,t.length)),n=Math.max(0,Math.min(n,t.length)),e>n)return"";let s=t.split(/(\r?\n)/);const i=s.filter((a,l)=>l%2===1);s=s.filter((a,l)=>l%2===0);let r=0;const o=[];for(let a=0;a=e){for(let l=a-xm;l<=a+xm||n>r;l++){if(l<0||l>=s.length)continue;const c=l+1;o.push(`${c}${" ".repeat(Math.max(3-String(c).length,0))}| ${s[l]}`);const u=s[l].length,d=i[l]&&i[l].length||0;if(l===a){const f=e-(r-(u+d)),h=Math.max(1,n>r?u-f:n-e);o.push(" | "+" ".repeat(f)+"^".repeat(h))}else if(l>a){if(n>r){const f=Math.max(Math.min(n-r,u),1);o.push(" | "+"^".repeat(f))}r+=u+d}}break}return o.join(` +`)}function Mo(t){if(gt(t)){const e={};for(let n=0;n{if(n){const s=n.split(fE);s.length>1&&(e[s[0].trim()]=s[1].trim())}}),e}function pE(t){if(!t)return"";if(Rt(t))return t;let e="";for(const n in t){const s=t[n];if(Rt(s)||typeof s=="number"){const i=n.startsWith("--")?n:bn(n);e+=`${i}:${s};`}}return e}function Gt(t){let e="";if(Rt(t))e=t;else if(gt(t))for(let n=0;n/="'\u0009\u000a\u000c\u0020]/,Ad={};function SE(t){if(Ad.hasOwnProperty(t))return Ad[t];const e=_E.test(t);return e&&console.error(`unsafe attribute name: ${t}`),Ad[t]=!e}const EE={acceptCharset:"accept-charset",className:"class",htmlFor:"for",httpEquiv:"http-equiv"},wE=nn("accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap"),kE=nn("xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan"),CE=nn("accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns");function TE(t){if(t==null)return!1;const e=typeof t;return e==="string"||e==="number"||e==="boolean"}const AE=/["'&<>]/;function OE(t){const e=""+t,n=AE.exec(e);if(!n)return e;let s="",i,r,o=0;for(r=n.index;r||--!>|?@[\\\]^`{|}~]/g;function NE(t,e){return t.replace(i1,n=>e?n==='"'?'\\\\\\"':`\\\\${n}`:`\\${n}`)}function PE(t,e){if(t.length!==e.length)return!1;let n=!0;for(let s=0;n&&svi(n,e))}const r1=t=>!!(t&&t.__v_isRef===!0),et=t=>Rt(t)?t:t==null?"":gt(t)||me(t)&&(t.toString===Dh||!xt(t.toString))?r1(t)?et(t.value):JSON.stringify(t,o1,2):String(t),o1=(t,e)=>r1(e)?o1(t,e.value):Sr(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((n,[s,i],r)=>(n[Od(s,r)+" =>"]=i,n),{})}:sr(e)?{[`Set(${e.size})`]:[...e.values()].map(n=>Od(n))}:Pn(e)?Od(e):me(e)&&!gt(e)&&!il(e)?String(e):e,Od=(t,e="")=>{var n;return Pn(t)?`Symbol(${(n=t.description)!=null?n:e})`:t};function a1(t){return t==null?"initial":typeof t=="string"?t===""?" ":t:String(t)}const RE=Object.freeze(Object.defineProperty({__proto__:null,EMPTY_ARR:_r,EMPTY_OBJ:Yt,NO:oo,NOOP:Qe,PatchFlagNames:rE,PatchFlags:iE,ShapeFlags:oE,SlotFlags:aE,camelize:Ce,capitalize:ir,cssVarNameEscapeSymbolsRE:i1,def:xc,escapeHtml:OE,escapeHtmlComment:IE,extend:Zt,genCacheKey:sE,genPropsAccessExp:nE,generateCodeFrame:Zb,getEscapedCssVarName:NE,getGlobalThis:rl,hasChanged:gn,hasOwn:ue,hyphenate:bn,includeBooleanAttr:$h,invokeArrayFns:wr,isArray:gt,isBooleanAttr:vE,isBuiltInDirective:Yb,isDate:Cf,isFunction:xt,isGloballyAllowed:Lh,isGloballyWhitelisted:uE,isHTMLTag:Jb,isIntegerKey:yu,isKnownHtmlAttr:wE,isKnownMathMLAttr:CE,isKnownSvgAttr:kE,isMap:Sr,isMathMLTag:t1,isModelListener:pu,isObject:me,isOn:nr,isPlainObject:il,isPromise:gu,isRegExp:zb,isRenderableAttrValue:TE,isReservedProp:pi,isSSRSafeAttrName:SE,isSVGTag:Qb,isSet:sr,isSpecialBooleanAttr:s1,isString:Rt,isSymbol:Pn,isVoidTag:e1,looseEqual:vi,looseIndexOf:ol,looseToNumber:La,makeMap:nn,normalizeClass:Gt,normalizeCssVarValue:a1,normalizeProps:ao,normalizeStyle:Mo,objectToString:Dh,parseStringStyle:Mh,propsToAttrMap:EE,remove:mu,slotFlagsText:lE,stringifyStyle:pE,toDisplayString:et,toHandlerKey:Er,toNumber:Ma,toRawType:Xb,toTypeString:$r},Symbol.toStringTag,{value:"Module"}));/** * @vue/reactivity v3.5.18 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let hn;class Mh{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=hn,!e&&hn&&(this.index=(hn.scopes||(hn.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&&--this._on===0&&(hn=this.prevScope,this.prevScope=void 0)}stop(e){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n0)return;if(ha){let e=ha;for(ha=void 0;e;){const n=e.next;e.next=void 0,e.flags&=-9,e=n}}let t;for(;fa;){let e=fa;for(fa=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 ov(t){for(let e=t.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function av(t){let e,n=t.depsTail,s=n;for(;s;){const i=s.prevDep;s.version===-1?(s===n&&(n=i),Fh(s),OE(s)):e=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=i}t.deps=e,t.depsTail=n}function Ef(t){for(let e=t.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&(lv(e.dep.computed)||e.dep.version!==e.version))return!0;return!!t._dirty}function lv(t){if(t.flags&4&&!(t.flags&16)||(t.flags&=-17,t.globalVersion===Pa)||(t.globalVersion=Pa,!t.isSSR&&t.flags&128&&(!t.deps&&!t._dirty||!Ef(t))))return;t.flags|=2;const e=t.dep,n=ke,s=Os;ke=t,Os=!0;try{ov(t);const i=t.fn(t._value);(e.version===0||gn(i,t._value))&&(t.flags|=128,t._value=i,e.version++)}catch(i){throw e.version++,i}finally{ke=n,Os=s,av(t),t.flags&=-3}}function Fh(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)Fh(r,!0)}!e&&!--n.sc&&n.map&&n.map.delete(n.key)}function OE(t){const{prevDep:e,nextDep:n}=t;e&&(e.nextDep=n,t.prevDep=void 0),n&&(n.prevDep=e,t.nextDep=void 0)}function xE(t,e){t.effect instanceof Na&&(t=t.effect.fn);const n=new Na(t);e&&Zt(n,e);try{n.run()}catch(i){throw n.stop(),i}const s=n.run.bind(n);return s.effect=n,s}function IE(t){t.effect.stop()}let Os=!0;const cv=[];function bi(){cv.push(Os),Os=!1}function vi(){const t=cv.pop();Os=t===void 0?!0:t}function km(t){const{cleanup:e}=t;if(t.cleanup=void 0,e){const n=ke;ke=void 0;try{e()}finally{ke=n}}}let Pa=0;class NE{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 pu{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,this.__v_skip=!0}track(e){if(!ke||!Os||ke===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ke)n=this.activeLink=new NE(ke,this),ke.deps?(n.prevDep=ke.depsTail,ke.depsTail.nextDep=n,ke.depsTail=n):ke.deps=ke.depsTail=n,uv(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=ke.depsTail,n.nextDep=void 0,ke.depsTail.nextDep=n,ke.depsTail=n,ke.deps===n&&(ke.deps=s)}return n}trigger(e){this.version++,Pa++,this.notify(e)}notify(e){Rh();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{$h()}}}function uv(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)uv(s)}const n=t.dep.subs;n!==t&&(t.prevSub=n,n&&(n.nextSub=t)),t.dep.subs=t}}const kc=new WeakMap,Er=Symbol(""),wf=Symbol(""),Da=Symbol("");function yn(t,e,n){if(Os&&ke){let s=kc.get(t);s||kc.set(t,s=new Map);let i=s.get(n);i||(s.set(n,i=new pu),i.map=s,i.key=n),i.track()}}function oi(t,e,n,s,i,r){const o=kc.get(t);if(!o){Pa++;return}const a=l=>{l&&l.trigger()};if(Rh(),e==="clear")o.forEach(a);else{const l=gt(t),c=l&&du(n);if(l&&n==="length"){const u=Number(s);o.forEach((d,f)=>{(f==="length"||f===Da||!Nn(f)&&f>=u)&&a(d)})}else switch((n!==void 0||o.has(void 0))&&a(o.get(n)),c&&a(o.get(Da)),e){case"add":l?c&&a(o.get("length")):(a(o.get(Er)),vr(t)&&a(o.get(wf)));break;case"delete":l||(a(o.get(Er)),vr(t)&&a(o.get(wf)));break;case"set":vr(t)&&a(o.get(Er));break}}$h()}function PE(t,e){const n=kc.get(t);return n&&n.get(e)}function jr(t){const e=ne(t);return e===t?e:(yn(e,"iterate",Da),qn(t)?e:e.map(on))}function mu(t){return yn(t=ne(t),"iterate",Da),t}const DE={__proto__:null,[Symbol.iterator](){return Td(this,Symbol.iterator,on)},concat(...t){return jr(this).concat(...t.map(e=>gt(e)?jr(e):e))},entries(){return Td(this,"entries",t=>(t[1]=on(t[1]),t))},every(t,e){return Qs(this,"every",t,e,void 0,arguments)},filter(t,e){return Qs(this,"filter",t,e,n=>n.map(on),arguments)},find(t,e){return Qs(this,"find",t,e,on,arguments)},findIndex(t,e){return Qs(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return Qs(this,"findLast",t,e,on,arguments)},findLastIndex(t,e){return Qs(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return Qs(this,"forEach",t,e,void 0,arguments)},includes(...t){return Cd(this,"includes",t)},indexOf(...t){return Cd(this,"indexOf",t)},join(t){return jr(this).join(t)},lastIndexOf(...t){return Cd(this,"lastIndexOf",t)},map(t,e){return Qs(this,"map",t,e,void 0,arguments)},pop(){return zo(this,"pop")},push(...t){return zo(this,"push",t)},reduce(t,...e){return Tm(this,"reduce",t,e)},reduceRight(t,...e){return Tm(this,"reduceRight",t,e)},shift(){return zo(this,"shift")},some(t,e){return Qs(this,"some",t,e,void 0,arguments)},splice(...t){return zo(this,"splice",t)},toReversed(){return jr(this).toReversed()},toSorted(t){return jr(this).toSorted(t)},toSpliced(...t){return jr(this).toSpliced(...t)},unshift(...t){return zo(this,"unshift",t)},values(){return Td(this,"values",on)}};function Td(t,e,n){const s=mu(t),i=s[e]();return s!==t&&!qn(t)&&(i._next=i.next,i.next=()=>{const r=i._next();return r.value&&(r.value=n(r.value)),r}),i}const ME=Array.prototype;function Qs(t,e,n,s,i,r){const o=mu(t),a=o!==t&&!qn(t),l=o[e];if(l!==ME[e]){const d=l.apply(t,r);return a?on(d):d}let c=n;o!==t&&(a?c=function(d,f){return n.call(this,on(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 Tm(t,e,n,s){const i=mu(t);let r=n;return i!==t&&(qn(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,on(a),l,t)}),i[e](r,...s)}function Cd(t,e,n){const s=ne(t);yn(s,"iterate",Da);const i=s[e](...n);return(i===-1||i===!1)&&bu(n[0])?(n[0]=ne(n[0]),s[e](...n)):i}function zo(t,e,n=[]){bi(),Rh();const s=ne(t)[e].apply(t,n);return $h(),vi(),s}const LE=nn("__proto__,__v_isRef,__isVue"),dv=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(Nn));function RE(t){Nn(t)||(t=String(t));const e=ne(this);return yn(e,"has",t),e.hasOwnProperty(t)}class fv{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?bv:yv:r?gv:mv).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(s)?e:void 0;const o=gt(e);if(!i){let l;if(o&&(l=DE[n]))return l;if(n==="hasOwnProperty")return RE}const a=Reflect.get(e,n,Ie(e)?e:s);return(Nn(n)?dv.has(n):LE(n))||(i||yn(e,"get",n),r)?a:Ie(a)?o&&du(n)?a:a.value:me(a)?i?Hh(a):Mo(a):a}}class hv extends fv{constructor(e=!1){super(!1,e)}set(e,n,s,i){let r=e[n];if(!this._isShallow){const l=_i(r);if(!qn(s)&&!_i(s)&&(r=ne(r),s=ne(s)),!gt(e)&&Ie(r)&&!Ie(s))return l?!1:(r.value=s,!0)}const o=gt(e)&&du(n)?Number(n)t,El=t=>Reflect.getPrototypeOf(t);function UE(t,e,n){return function(...s){const i=this.__v_raw,r=ne(i),o=vr(r),a=t==="entries"||t===Symbol.iterator&&o,l=t==="keys"&&o,c=i[t](...s),u=n?kf:e?Tc:on;return!e&&yn(r,"iterate",l?wf:Er),{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 wl(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function jE(t,e){const n={get(i){const r=this.__v_raw,o=ne(r),a=ne(i);t||(gn(i,a)&&yn(o,"get",i),yn(o,"get",a));const{has:l}=El(o),c=e?kf:t?Tc:on;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&&yn(ne(i),"iterate",Er),Reflect.get(i,"size",i)},has(i){const r=this.__v_raw,o=ne(r),a=ne(i);return t||(gn(i,a)&&yn(o,"has",i),yn(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=ne(a),c=e?kf:t?Tc:on;return!t&&yn(l,"iterate",Er),a.forEach((u,d)=>i.call(r,c(u),c(d),o))}};return Zt(n,t?{add:wl("add"),set:wl("set"),delete:wl("delete"),clear:wl("clear")}:{add(i){!e&&!qn(i)&&!_i(i)&&(i=ne(i));const r=ne(this);return El(r).has.call(r,i)||(r.add(i),oi(r,"add",i,i)),this},set(i,r){!e&&!qn(r)&&!_i(r)&&(r=ne(r));const o=ne(this),{has:a,get:l}=El(o);let c=a.call(o,i);c||(i=ne(i),c=a.call(o,i));const u=l.call(o,i);return o.set(i,r),c?gn(r,u)&&oi(o,"set",i,r):oi(o,"add",i,r),this},delete(i){const r=ne(this),{has:o,get:a}=El(r);let l=o.call(r,i);l||(i=ne(i),l=o.call(r,i)),a&&a.call(r,i);const c=r.delete(i);return l&&oi(r,"delete",i,void 0),c},clear(){const i=ne(this),r=i.size!==0,o=i.clear();return r&&oi(i,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(i=>{n[i]=UE(i,t,e)}),n}function gu(t,e){const n=jE(t,e);return(s,i,r)=>i==="__v_isReactive"?!t:i==="__v_isReadonly"?t:i==="__v_raw"?s:Reflect.get(ue(n,i)&&i in s?n:s,i,r)}const BE={get:gu(!1,!1)},WE={get:gu(!1,!0)},GE={get:gu(!0,!1)},KE={get:gu(!0,!0)},mv=new WeakMap,gv=new WeakMap,yv=new WeakMap,bv=new WeakMap;function zE(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function qE(t){return t.__v_skip||!Object.isExtensible(t)?0:zE(Wb(t))}function Mo(t){return _i(t)?t:yu(t,!1,$E,BE,mv)}function Vh(t){return yu(t,!1,VE,WE,gv)}function Hh(t){return yu(t,!0,FE,GE,yv)}function XE(t){return yu(t,!0,HE,KE,bv)}function yu(t,e,n,s,i){if(!me(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const r=qE(t);if(r===0)return t;const o=i.get(t);if(o)return o;const a=new Proxy(t,r===2?s:n);return i.set(t,a),a}function Ws(t){return _i(t)?Ws(t.__v_raw):!!(t&&t.__v_isReactive)}function _i(t){return!!(t&&t.__v_isReadonly)}function qn(t){return!!(t&&t.__v_isShallow)}function bu(t){return t?!!t.__v_raw:!1}function ne(t){const e=t&&t.__v_raw;return e?ne(e):t}function vu(t){return!ue(t,"__v_skip")&&Object.isExtensible(t)&&wc(t,"__v_skip",!0),t}const on=t=>me(t)?Mo(t):t,Tc=t=>me(t)?Hh(t):t;function Ie(t){return t?t.__v_isRef===!0:!1}function os(t){return vv(t,!1)}function _u(t){return vv(t,!0)}function vv(t,e){return Ie(t)?t:new YE(t,e)}class YE{constructor(e,n){this.dep=new pu,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?e:ne(e),this._value=n?e:on(e),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(e){const n=this._rawValue,s=this.__v_isShallow||qn(e)||_i(e);e=s?e:ne(e),gn(e,n)&&(this._rawValue=e,this._value=s?e:on(e),this.dep.trigger())}}function ZE(t){t.dep&&t.dep.trigger()}function Fn(t){return Ie(t)?t.value:t}function JE(t){return xt(t)?t():Fn(t)}const QE={get:(t,e,n)=>e==="__v_raw"?t:Fn(Reflect.get(t,e,n)),set:(t,e,n,s)=>{const i=t[e];return Ie(i)&&!Ie(n)?(i.value=n,!0):Reflect.set(t,e,n,s)}};function Uh(t){return Ws(t)?t:new Proxy(t,QE)}class t3{constructor(e){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new pu,{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 _v(t){return new t3(t)}function Sv(t){const e=gt(t)?new Array(t.length):{};for(const n in t)e[n]=Ev(t,n);return e}class e3{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 PE(ne(this._object),this._key)}}class n3{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 s3(t,e,n){return Ie(t)?t:xt(t)?new n3(t):me(t)&&arguments.length>1?Ev(t,e,n):os(t)}function Ev(t,e,n){const s=t[e];return Ie(s)?s:new e3(t,e,n)}class i3{constructor(e,n,s){this.fn=e,this.setter=n,this._value=void 0,this.dep=new pu(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Pa-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&ke!==this)return rv(this,!0),!0}get value(){const e=this.dep.track();return lv(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function r3(t,e,n=!1){let s,i;return xt(t)?s=t:(s=t.get,i=t.set),new i3(s,i,n)}const o3={GET:"get",HAS:"has",ITERATE:"iterate"},a3={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},kl={},Cc=new WeakMap;let $i;function l3(){return $i}function wv(t,e=!1,n=$i){if(n){let s=Cc.get(n);s||Cc.set(n,s=[]),s.push(t)}}function c3(t,e,n=Yt){const{immediate:s,deep:i,once:r,scheduler:o,augmentJob:a,call:l}=n,c=v=>i?v:qn(v)||i===!1||i===0?ai(v,1):ai(v);let u,d,f,h,p=!1,m=!1;if(Ie(t)?(d=()=>t.value,p=qn(t)):Ws(t)?(d=()=>c(t),p=!0):gt(t)?(m=!0,p=t.some(v=>Ws(v)||qn(v)),d=()=>t.map(v=>{if(Ie(v))return v.value;if(Ws(v))return c(v);if(xt(v))return l?l(v,2):v()})):xt(t)?e?d=l?()=>l(t,2):t:d=()=>{if(f){bi();try{f()}finally{vi()}}const v=$i;$i=u;try{return l?l(t,3,[h]):t(h)}finally{$i=v}}:d=Qe,e&&i){const v=d,S=i===!0?1/0:i;d=()=>ai(v(),S)}const b=Lh(),y=()=>{u.stop(),b&&b.active&&cu(b.effects,u)};if(r&&e){const v=e;e=(...S)=>{v(...S),y()}}let _=m?new Array(t.length).fill(kl):kl;const g=v=>{if(!(!(u.flags&1)||!u.dirty&&!v))if(e){const S=u.run();if(i||p||(m?S.some((k,I)=>gn(k,_[I])):gn(S,_))){f&&f();const k=$i;$i=u;try{const I=[S,_===kl?void 0:m&&_[0]===kl?[]:_,h];_=S,l?l(e,3,I):e(...I)}finally{$i=k}}}else u.run()};return a&&a(g),u=new Na(d),u.scheduler=o?()=>o(g,!1):g,h=v=>wv(v,!1,u),f=u.onStop=()=>{const v=Cc.get(u);if(v){if(l)l(v,4);else for(const S of v)S();Cc.delete(u)}},e?s?g(!0):_=u.run():o?o(g.bind(null,!0),!0):u.run(),y.pause=u.pause.bind(u),y.resume=u.resume.bind(u),y.stop=y,y}function ai(t,e=1/0,n){if(e<=0||!me(t)||t.__v_skip||(n=n||new Set,n.has(t)))return t;if(n.add(t),e--,Ie(t))ai(t.value,e,n);else if(gt(t))for(let s=0;s{ai(s,e,n)});else if(Ja(t)){for(const s in t)ai(t[s],e,n);for(const s of Object.getOwnPropertySymbols(t))Object.prototype.propertyIsEnumerable.call(t,s)&&ai(t[s],e,n)}return t}/** +**/let hn;class Fh{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=hn,!e&&hn&&(this.index=(hn.scopes||(hn.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&&--this._on===0&&(hn=this.prevScope,this.prevScope=void 0)}stop(e){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n0)return;if(ya){let e=ya;for(ya=void 0;e;){const n=e.next;e.next=void 0,e.flags&=-9,e=n}}let t;for(;ga;){let e=ga;for(ga=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 d1(t){for(let e=t.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function f1(t){let e,n=t.depsTail,s=n;for(;s;){const i=s.prevDep;s.version===-1?(s===n&&(n=i),jh(s),DE(s)):e=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=i}t.deps=e,t.depsTail=n}function Tf(t){for(let e=t.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&(h1(e.dep.computed)||e.dep.version!==e.version))return!0;return!!t._dirty}function h1(t){if(t.flags&4&&!(t.flags&16)||(t.flags&=-17,t.globalVersion===Fa)||(t.globalVersion=Fa,!t.isSSR&&t.flags&128&&(!t.deps&&!t._dirty||!Tf(t))))return;t.flags|=2;const e=t.dep,n=ke,s=Is;ke=t,Is=!0;try{d1(t);const i=t.fn(t._value);(e.version===0||gn(i,t._value))&&(t.flags|=128,t._value=i,e.version++)}catch(i){throw e.version++,i}finally{ke=n,Is=s,f1(t),t.flags&=-3}}function jh(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)jh(r,!0)}!e&&!--n.sc&&n.map&&n.map.delete(n.key)}function DE(t){const{prevDep:e,nextDep:n}=t;e&&(e.nextDep=n,t.prevDep=void 0),n&&(n.prevDep=e,t.nextDep=void 0)}function LE(t,e){t.effect instanceof $a&&(t=t.effect.fn);const n=new $a(t);e&&Zt(n,e);try{n.run()}catch(i){throw n.stop(),i}const s=n.run.bind(n);return s.effect=n,s}function ME(t){t.effect.stop()}let Is=!0;const p1=[];function _i(){p1.push(Is),Is=!1}function Si(){const t=p1.pop();Is=t===void 0?!0:t}function Im(t){const{cleanup:e}=t;if(t.cleanup=void 0,e){const n=ke;ke=void 0;try{e()}finally{ke=n}}}let Fa=0;class $E{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 _u{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,this.__v_skip=!0}track(e){if(!ke||!Is||ke===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ke)n=this.activeLink=new $E(ke,this),ke.deps?(n.prevDep=ke.depsTail,ke.depsTail.nextDep=n,ke.depsTail=n):ke.deps=ke.depsTail=n,m1(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=ke.depsTail,n.nextDep=void 0,ke.depsTail.nextDep=n,ke.depsTail=n,ke.deps===n&&(ke.deps=s)}return n}trigger(e){this.version++,Fa++,this.notify(e)}notify(e){Uh();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Hh()}}}function m1(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)m1(s)}const n=t.dep.subs;n!==t&&(t.prevSub=n,n&&(n.nextSub=t)),t.dep.subs=t}}const Ic=new WeakMap,kr=Symbol(""),Af=Symbol(""),Va=Symbol("");function yn(t,e,n){if(Is&&ke){let s=Ic.get(t);s||Ic.set(t,s=new Map);let i=s.get(n);i||(s.set(n,i=new _u),i.map=s,i.key=n),i.track()}}function li(t,e,n,s,i,r){const o=Ic.get(t);if(!o){Fa++;return}const a=l=>{l&&l.trigger()};if(Uh(),e==="clear")o.forEach(a);else{const l=gt(t),c=l&&yu(n);if(l&&n==="length"){const u=Number(s);o.forEach((d,f)=>{(f==="length"||f===Va||!Pn(f)&&f>=u)&&a(d)})}else switch((n!==void 0||o.has(void 0))&&a(o.get(n)),c&&a(o.get(Va)),e){case"add":l?c&&a(o.get("length")):(a(o.get(kr)),Sr(t)&&a(o.get(Af)));break;case"delete":l||(a(o.get(kr)),Sr(t)&&a(o.get(Af)));break;case"set":Sr(t)&&a(o.get(kr));break}}Hh()}function FE(t,e){const n=Ic.get(t);return n&&n.get(e)}function Wr(t){const e=ne(t);return e===t?e:(yn(e,"iterate",Va),Yn(t)?e:e.map(on))}function Su(t){return yn(t=ne(t),"iterate",Va),t}const VE={__proto__:null,[Symbol.iterator](){return Id(this,Symbol.iterator,on)},concat(...t){return Wr(this).concat(...t.map(e=>gt(e)?Wr(e):e))},entries(){return Id(this,"entries",t=>(t[1]=on(t[1]),t))},every(t,e){return ei(this,"every",t,e,void 0,arguments)},filter(t,e){return ei(this,"filter",t,e,n=>n.map(on),arguments)},find(t,e){return ei(this,"find",t,e,on,arguments)},findIndex(t,e){return ei(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return ei(this,"findLast",t,e,on,arguments)},findLastIndex(t,e){return ei(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return ei(this,"forEach",t,e,void 0,arguments)},includes(...t){return Nd(this,"includes",t)},indexOf(...t){return Nd(this,"indexOf",t)},join(t){return Wr(this).join(t)},lastIndexOf(...t){return Nd(this,"lastIndexOf",t)},map(t,e){return ei(this,"map",t,e,void 0,arguments)},pop(){return Yo(this,"pop")},push(...t){return Yo(this,"push",t)},reduce(t,...e){return Nm(this,"reduce",t,e)},reduceRight(t,...e){return Nm(this,"reduceRight",t,e)},shift(){return Yo(this,"shift")},some(t,e){return ei(this,"some",t,e,void 0,arguments)},splice(...t){return Yo(this,"splice",t)},toReversed(){return Wr(this).toReversed()},toSorted(t){return Wr(this).toSorted(t)},toSpliced(...t){return Wr(this).toSpliced(...t)},unshift(...t){return Yo(this,"unshift",t)},values(){return Id(this,"values",on)}};function Id(t,e,n){const s=Su(t),i=s[e]();return s!==t&&!Yn(t)&&(i._next=i.next,i.next=()=>{const r=i._next();return r.value&&(r.value=n(r.value)),r}),i}const UE=Array.prototype;function ei(t,e,n,s,i,r){const o=Su(t),a=o!==t&&!Yn(t),l=o[e];if(l!==UE[e]){const d=l.apply(t,r);return a?on(d):d}let c=n;o!==t&&(a?c=function(d,f){return n.call(this,on(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 Nm(t,e,n,s){const i=Su(t);let r=n;return i!==t&&(Yn(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,on(a),l,t)}),i[e](r,...s)}function Nd(t,e,n){const s=ne(t);yn(s,"iterate",Va);const i=s[e](...n);return(i===-1||i===!1)&&ku(n[0])?(n[0]=ne(n[0]),s[e](...n)):i}function Yo(t,e,n=[]){_i(),Uh();const s=ne(t)[e].apply(t,n);return Hh(),Si(),s}const HE=nn("__proto__,__v_isRef,__isVue"),g1=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(Pn));function jE(t){Pn(t)||(t=String(t));const e=ne(this);return yn(e,"has",t),e.hasOwnProperty(t)}class y1{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?w1:E1:r?S1:_1).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(s)?e:void 0;const o=gt(e);if(!i){let l;if(o&&(l=VE[n]))return l;if(n==="hasOwnProperty")return jE}const a=Reflect.get(e,n,Ie(e)?e:s);return(Pn(n)?g1.has(n):HE(n))||(i||yn(e,"get",n),r)?a:Ie(a)?o&&yu(n)?a:a.value:me(a)?i?Wh(a):$o(a):a}}class b1 extends y1{constructor(e=!1){super(!1,e)}set(e,n,s,i){let r=e[n];if(!this._isShallow){const l=Ei(r);if(!Yn(s)&&!Ei(s)&&(r=ne(r),s=ne(s)),!gt(e)&&Ie(r)&&!Ie(s))return l?!1:(r.value=s,!0)}const o=gt(e)&&yu(n)?Number(n)t,Ol=t=>Reflect.getPrototypeOf(t);function qE(t,e,n){return function(...s){const i=this.__v_raw,r=ne(i),o=Sr(r),a=t==="entries"||t===Symbol.iterator&&o,l=t==="keys"&&o,c=i[t](...s),u=n?Of:e?Nc:on;return!e&&yn(r,"iterate",l?Af:kr),{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 xl(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function zE(t,e){const n={get(i){const r=this.__v_raw,o=ne(r),a=ne(i);t||(gn(i,a)&&yn(o,"get",i),yn(o,"get",a));const{has:l}=Ol(o),c=e?Of:t?Nc:on;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&&yn(ne(i),"iterate",kr),Reflect.get(i,"size",i)},has(i){const r=this.__v_raw,o=ne(r),a=ne(i);return t||(gn(i,a)&&yn(o,"has",i),yn(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=ne(a),c=e?Of:t?Nc:on;return!t&&yn(l,"iterate",kr),a.forEach((u,d)=>i.call(r,c(u),c(d),o))}};return Zt(n,t?{add:xl("add"),set:xl("set"),delete:xl("delete"),clear:xl("clear")}:{add(i){!e&&!Yn(i)&&!Ei(i)&&(i=ne(i));const r=ne(this);return Ol(r).has.call(r,i)||(r.add(i),li(r,"add",i,i)),this},set(i,r){!e&&!Yn(r)&&!Ei(r)&&(r=ne(r));const o=ne(this),{has:a,get:l}=Ol(o);let c=a.call(o,i);c||(i=ne(i),c=a.call(o,i));const u=l.call(o,i);return o.set(i,r),c?gn(r,u)&&li(o,"set",i,r):li(o,"add",i,r),this},delete(i){const r=ne(this),{has:o,get:a}=Ol(r);let l=o.call(r,i);l||(i=ne(i),l=o.call(r,i)),a&&a.call(r,i);const c=r.delete(i);return l&&li(r,"delete",i,void 0),c},clear(){const i=ne(this),r=i.size!==0,o=i.clear();return r&&li(i,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(i=>{n[i]=qE(i,t,e)}),n}function Eu(t,e){const n=zE(t,e);return(s,i,r)=>i==="__v_isReactive"?!t:i==="__v_isReadonly"?t:i==="__v_raw"?s:Reflect.get(ue(n,i)&&i in s?n:s,i,r)}const XE={get:Eu(!1,!1)},YE={get:Eu(!1,!0)},ZE={get:Eu(!0,!1)},JE={get:Eu(!0,!0)},_1=new WeakMap,S1=new WeakMap,E1=new WeakMap,w1=new WeakMap;function QE(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function tw(t){return t.__v_skip||!Object.isExtensible(t)?0:QE(Xb(t))}function $o(t){return Ei(t)?t:wu(t,!1,BE,XE,_1)}function Bh(t){return wu(t,!1,GE,YE,S1)}function Wh(t){return wu(t,!0,WE,ZE,E1)}function ew(t){return wu(t,!0,KE,JE,w1)}function wu(t,e,n,s,i){if(!me(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const r=tw(t);if(r===0)return t;const o=i.get(t);if(o)return o;const a=new Proxy(t,r===2?s:n);return i.set(t,a),a}function Ks(t){return Ei(t)?Ks(t.__v_raw):!!(t&&t.__v_isReactive)}function Ei(t){return!!(t&&t.__v_isReadonly)}function Yn(t){return!!(t&&t.__v_isShallow)}function ku(t){return t?!!t.__v_raw:!1}function ne(t){const e=t&&t.__v_raw;return e?ne(e):t}function Cu(t){return!ue(t,"__v_skip")&&Object.isExtensible(t)&&xc(t,"__v_skip",!0),t}const on=t=>me(t)?$o(t):t,Nc=t=>me(t)?Wh(t):t;function Ie(t){return t?t.__v_isRef===!0:!1}function cs(t){return k1(t,!1)}function Tu(t){return k1(t,!0)}function k1(t,e){return Ie(t)?t:new nw(t,e)}class nw{constructor(e,n){this.dep=new _u,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?e:ne(e),this._value=n?e:on(e),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(e){const n=this._rawValue,s=this.__v_isShallow||Yn(e)||Ei(e);e=s?e:ne(e),gn(e,n)&&(this._rawValue=e,this._value=s?e:on(e),this.dep.trigger())}}function sw(t){t.dep&&t.dep.trigger()}function Vn(t){return Ie(t)?t.value:t}function iw(t){return xt(t)?t():Vn(t)}const rw={get:(t,e,n)=>e==="__v_raw"?t:Vn(Reflect.get(t,e,n)),set:(t,e,n,s)=>{const i=t[e];return Ie(i)&&!Ie(n)?(i.value=n,!0):Reflect.set(t,e,n,s)}};function Gh(t){return Ks(t)?t:new Proxy(t,rw)}class ow{constructor(e){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new _u,{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 C1(t){return new ow(t)}function T1(t){const e=gt(t)?new Array(t.length):{};for(const n in t)e[n]=A1(t,n);return e}class aw{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 FE(ne(this._object),this._key)}}class lw{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 cw(t,e,n){return Ie(t)?t:xt(t)?new lw(t):me(t)&&arguments.length>1?A1(t,e,n):cs(t)}function A1(t,e,n){const s=t[e];return Ie(s)?s:new aw(t,e,n)}class uw{constructor(e,n,s){this.fn=e,this.setter=n,this._value=void 0,this.dep=new _u(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Fa-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&ke!==this)return u1(this,!0),!0}get value(){const e=this.dep.track();return h1(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function dw(t,e,n=!1){let s,i;return xt(t)?s=t:(s=t.get,i=t.set),new uw(s,i,n)}const fw={GET:"get",HAS:"has",ITERATE:"iterate"},hw={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},Il={},Pc=new WeakMap;let Fi;function pw(){return Fi}function O1(t,e=!1,n=Fi){if(n){let s=Pc.get(n);s||Pc.set(n,s=[]),s.push(t)}}function mw(t,e,n=Yt){const{immediate:s,deep:i,once:r,scheduler:o,augmentJob:a,call:l}=n,c=b=>i?b:Yn(b)||i===!1||i===0?ci(b,1):ci(b);let u,d,f,h,p=!1,m=!1;if(Ie(t)?(d=()=>t.value,p=Yn(t)):Ks(t)?(d=()=>c(t),p=!0):gt(t)?(m=!0,p=t.some(b=>Ks(b)||Yn(b)),d=()=>t.map(b=>{if(Ie(b))return b.value;if(Ks(b))return c(b);if(xt(b))return l?l(b,2):b()})):xt(t)?e?d=l?()=>l(t,2):t:d=()=>{if(f){_i();try{f()}finally{Si()}}const b=Fi;Fi=u;try{return l?l(t,3,[h]):t(h)}finally{Fi=b}}:d=Qe,e&&i){const b=d,S=i===!0?1/0:i;d=()=>ci(b(),S)}const _=Vh(),y=()=>{u.stop(),_&&_.active&&mu(_.effects,u)};if(r&&e){const b=e;e=(...S)=>{b(...S),y()}}let v=m?new Array(t.length).fill(Il):Il;const g=b=>{if(!(!(u.flags&1)||!u.dirty&&!b))if(e){const S=u.run();if(i||p||(m?S.some((k,I)=>gn(k,v[I])):gn(S,v))){f&&f();const k=Fi;Fi=u;try{const I=[S,v===Il?void 0:m&&v[0]===Il?[]:v,h];v=S,l?l(e,3,I):e(...I)}finally{Fi=k}}}else u.run()};return a&&a(g),u=new $a(d),u.scheduler=o?()=>o(g,!1):g,h=b=>O1(b,!1,u),f=u.onStop=()=>{const b=Pc.get(u);if(b){if(l)l(b,4);else for(const S of b)S();Pc.delete(u)}},e?s?g(!0):v=u.run():o?o(g.bind(null,!0),!0):u.run(),y.pause=u.pause.bind(u),y.resume=u.resume.bind(u),y.stop=y,y}function ci(t,e=1/0,n){if(e<=0||!me(t)||t.__v_skip||(n=n||new Set,n.has(t)))return t;if(n.add(t),e--,Ie(t))ci(t.value,e,n);else if(gt(t))for(let s=0;s{ci(s,e,n)});else if(il(t)){for(const s in t)ci(t[s],e,n);for(const s of Object.getOwnPropertySymbols(t))Object.prototype.propertyIsEnumerable.call(t,s)&&ci(t[s],e,n)}return t}/** * @vue/runtime-core v3.5.18 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const kv=[];function u3(t){kv.push(t)}function d3(){kv.pop()}function f3(t,e){}const h3={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"},p3={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 Lo(t,e,n,s){try{return s?t(...s):t()}catch(i){Rr(i,e,n)}}function fs(t,e,n,s){if(xt(t)){const i=Lo(t,e,n,s);return i&&uu(i)&&i.catch(r=>{Rr(r,e,n)}),i}if(gt(t)){const i=[];for(let r=0;r>>1,i=An[s],r=La(i);r=La(n)?An.push(t):An.splice(g3(e),0,t),t.flags|=1,Cv()}}function Cv(){Ac||(Ac=Tv.then(Av))}function Ma(t){gt(t)?uo.push(...t):Fi&&t.id===-1?Fi.splice(Qr+1,0,t):t.flags&1||(uo.push(t),t.flags|=1),Cv()}function Cm(t,e,n=Hs+1){for(;nLa(n)-La(s));if(uo.length=0,Fi){Fi.push(...e);return}for(Fi=e,Qr=0;Qrt.id==null?t.flags&2?-1:1/0:t.id;function Av(t){try{for(Hs=0;Hsto.emit(i,...r)),Tl=[]):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=>{Ov(r,e)}),setTimeout(()=>{to||(e.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Tl=[])},3e3)):Tl=[]}let ln=null,Su=null;function Ra(t){const e=ln;return ln=t,Su=t&&t.type.__scopeId||null,e}function y3(t){Su=t}function b3(){Su=null}const v3=t=>R;function R(t,e=ln,n){if(!e||t._n)return t;const s=(...i)=>{s._d&&Pf(-1);const r=Ra(e);let o;try{o=t(...i)}finally{Ra(r),s._d&&Pf(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function hs(t,e){if(ln===null)return t;const n=rl(ln),s=t.dirs||(t.dirs=[]);for(let i=0;it.__isTeleport,pa=t=>t&&(t.disabled||t.disabled===""),Am=t=>t&&(t.defer||t.defer===""),Om=t=>typeof SVGElement<"u"&&t instanceof SVGElement,xm=t=>typeof MathMLElement=="function"&&t instanceof MathMLElement,Tf=(t,e)=>{const n=t&&t.to;return Dt(n)?e?e(n):null:n},Nv={name:"Teleport",__isTeleport:!0,process(t,e,n,s,i,r,o,a,l,c){const{mc:u,pc:d,pbc:f,o:{insert:h,querySelector:p,createText:m,createComment:b}}=c,y=pa(e.props);let{shapeFlag:_,children:g,dynamicChildren:v}=e;if(t==null){const S=e.el=m(""),k=e.anchor=m("");h(S,n,s),h(k,n,s);const I=(T,D)=>{_&16&&(i&&i.isCE&&(i.ce._teleportTarget=T),u(g,T,D,i,r,o,a,l))},M=()=>{const T=e.target=Tf(e.props,p),D=Pv(T,e,m,h);T&&(o!=="svg"&&Om(T)?o="svg":o!=="mathml"&&xm(T)&&(o="mathml"),y||(I(T,D),Ql(e,!1)))};y&&(I(n,k),Ql(e,!0)),Am(e.props)?(e.el.__isMounted=!1,Xe(()=>{M(),delete e.el.__isMounted},r)):M()}else{if(Am(e.props)&&t.el.__isMounted===!1){Xe(()=>{Nv.process(t,e,n,s,i,r,o,a,l,c)},r);return}e.el=t.el,e.targetStart=t.targetStart;const S=e.anchor=t.anchor,k=e.target=t.target,I=e.targetAnchor=t.targetAnchor,M=pa(t.props),T=M?n:k,D=M?S:I;if(o==="svg"||Om(k)?o="svg":(o==="mathml"||xm(k))&&(o="mathml"),v?(f(t.dynamicChildren,v,T,i,r,o,a),ep(t,e,!0)):l||d(t,e,T,D,i,r,o,a,!1),y)M?e.props&&t.props&&e.props.to!==t.props.to&&(e.props.to=t.props.to):Cl(e,n,S,c,1);else if((e.props&&e.props.to)!==(t.props&&t.props.to)){const B=e.target=Tf(e.props,p);B&&Cl(e,B,null,c,0)}else M&&Cl(e,k,I,c,1);Ql(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 h=r||!pa(f);for(let p=0;p{t.isMounted=!0}),Tu(()=>{t.isUnmounting=!0}),t}const Qn=[Function,Array],Wh={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Qn,onEnter:Qn,onAfterEnter:Qn,onEnterCancelled:Qn,onBeforeLeave:Qn,onLeave:Qn,onAfterLeave:Qn,onLeaveCancelled:Qn,onBeforeAppear:Qn,onAppear:Qn,onAfterAppear:Qn,onAppearCancelled:Qn},Dv=t=>{const e=t.subTree;return e.component?Dv(e.component):e},E3={name:"BaseTransition",props:Wh,setup(t,{slots:e}){const n=cn(),s=Bh();return()=>{const i=e.default&&Eu(e.default(),!0);if(!i||!i.length)return;const r=Mv(i),o=ne(t),{mode:a}=o;if(s.isLeaving)return Ad(r);const l=Im(r);if(!l)return Ad(r);let c=yo(l,o,s,n,d=>c=d);l.type!==Be&&Si(l,c);let u=n.subTree&&Im(n.subTree);if(u&&u.type!==Be&&!Ts(l,u)&&Dv(n).type!==Be){let d=yo(u,o,s,n);if(Si(u,d),a==="out-in"&&l.type!==Be)return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete d.afterLeave,u=void 0},Ad(r);a==="in-out"&&l.type!==Be?d.delayLeave=(f,h,p)=>{const m=Rv(s,u);m[String(u.key)]=u,f[Vi]=()=>{h(),f[Vi]=void 0,delete c.delayedLeave,u=void 0},c.delayedLeave=()=>{p(),delete c.delayedLeave,u=void 0}}:u=void 0}else u&&(u=void 0);return r}}};function Mv(t){let e=t[0];if(t.length>1){for(const n of t)if(n.type!==Be){e=n;break}}return e}const Lv=E3;function Rv(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 yo(t,e,n,s,i){const{appear:r,mode:o,persisted:a=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:h,onAfterLeave:p,onLeaveCancelled:m,onBeforeAppear:b,onAppear:y,onAfterAppear:_,onAppearCancelled:g}=e,v=String(t.key),S=Rv(n,t),k=(T,D)=>{T&&fs(T,s,9,D)},I=(T,D)=>{const B=D[1];k(T,D),gt(T)?T.every($=>$.length<=1)&&B():T.length<=1&&B()},M={mode:o,persisted:a,beforeEnter(T){let D=l;if(!n.isMounted)if(r)D=b||l;else return;T[Vi]&&T[Vi](!0);const B=S[v];B&&Ts(t,B)&&B.el[Vi]&&B.el[Vi](),k(D,[T])},enter(T){let D=c,B=u,$=d;if(!n.isMounted)if(r)D=y||c,B=_||u,$=g||d;else return;let U=!1;const X=T[Al]=ot=>{U||(U=!0,ot?k($,[T]):k(B,[T]),M.delayedLeave&&M.delayedLeave(),T[Al]=void 0)};D?I(D,[T,X]):X()},leave(T,D){const B=String(t.key);if(T[Al]&&T[Al](!0),n.isUnmounting)return D();k(f,[T]);let $=!1;const U=T[Vi]=X=>{$||($=!0,D(),X?k(m,[T]):k(p,[T]),T[Vi]=void 0,S[B]===t&&delete S[B])};S[B]=t,h?I(h,[T,U]):U()},clone(T){const D=yo(T,e,n,s,i);return i&&i(D),D}};return M}function Ad(t){if(el(t))return t=zs(t),t.children=null,t}function Im(t){if(!el(t))return Iv(t.type)&&t.children?Mv(t.children):t;if(t.component)return t.component.subTree;const{shapeFlag:e,children:n}=t;if(n){if(e&16)return n[0];if(e&32&&xt(n.default))return n.default()}}function Si(t,e){t.shapeFlag&6&&t.component?(t.transition=e,Si(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 Eu(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 fo(t,e,n,s,i=!1){if(gt(t)){t.forEach((p,m)=>fo(p,e&&(gt(e)?e[m]:e),n,s,i));return}if(Xi(s)&&!i){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&fo(t,e,n,s.component.subTree);return}const r=s.shapeFlag&4?rl(s.component):s.el,o=i?null:r,{i:a,r:l}=t,c=e&&e.r,u=a.refs===Yt?a.refs={}:a.refs,d=a.setupState,f=ne(d),h=d===Yt?()=>!1:p=>ue(f,p);if(c!=null&&c!==l&&(Dt(c)?(u[c]=null,h(c)&&(d[c]=null)):Ie(c)&&(c.value=null)),xt(l))Lo(l,a,12,[o,u]);else{const p=Dt(l),m=Ie(l);if(p||m){const b=()=>{if(t.f){const y=p?h(l)?d[l]:u[l]:l.value;i?gt(y)&&cu(y,r):gt(y)?y.includes(r)||y.push(r):p?(u[l]=[r],h(l)&&(d[l]=u[l])):(l.value=[r],t.k&&(u[t.k]=l.value))}else p?(u[l]=o,h(l)&&(d[l]=o)):m&&(l.value=o,t.k&&(u[t.k]=o))};o?(b.id=-1,Xe(b,n)):b()}}}let Nm=!1;const Br=()=>{Nm||(console.error("Hydration completed but contains mismatches."),Nm=!0)},T3=t=>t.namespaceURI.includes("svg")&&t.tagName!=="foreignObject",C3=t=>t.namespaceURI.includes("MathML"),Ol=t=>{if(t.nodeType===1){if(T3(t))return"svg";if(C3(t))return"mathml"}},oo=t=>t.nodeType===8;function A3(t){const{mt:e,p:n,o:{patchProp:s,createText:i,nextSibling:r,parentNode:o,remove:a,insert:l,createComment:c}}=t,u=(g,v)=>{if(!v.hasChildNodes()){n(null,g,v),Oc(),v._vnode=g;return}d(v.firstChild,g,null,null,null),Oc(),v._vnode=g},d=(g,v,S,k,I,M=!1)=>{M=M||!!v.dynamicChildren;const T=oo(g)&&g.data==="[",D=()=>m(g,v,S,k,I,T),{type:B,ref:$,shapeFlag:U,patchFlag:X}=v;let ot=g.nodeType;v.el=g,X===-2&&(M=!1,v.dynamicChildren=null);let K=null;switch(B){case hi:ot!==3?v.children===""?(l(v.el=i(""),o(g),g),K=g):K=D():(g.data!==v.children&&(Br(),g.data=v.children),K=r(g));break;case Be:_(g)?(K=r(g),y(v.el=g.content.firstChild,g,S)):ot!==8||T?K=D():K=r(g);break;case kr:if(T&&(g=r(g),ot=g.nodeType),ot===1||ot===3){K=g;const Q=!v.children.length;for(let at=0;at{M=M||!!v.dynamicChildren;const{type:T,props:D,patchFlag:B,shapeFlag:$,dirs:U,transition:X}=v,ot=T==="input"||T==="option";if(ot||B!==-1){U&&Us(v,null,S,"created");let K=!1;if(_(g)){K=a1(null,X)&&S&&S.vnode.props&&S.vnode.props.appear;const at=g.content.firstChild;if(K){const kt=at.getAttribute("class");kt&&(at.$cls=kt),X.beforeEnter(at)}y(at,g,S),v.el=g=at}if($&16&&!(D&&(D.innerHTML||D.textContent))){let at=h(g.firstChild,v,g,S,k,I,M);for(;at;){xl(g,1)||Br();const kt=at;at=at.nextSibling,a(kt)}}else if($&8){let at=v.children;at[0]===` -`&&(g.tagName==="PRE"||g.tagName==="TEXTAREA")&&(at=at.slice(1)),g.textContent!==at&&(xl(g,0)||Br(),g.textContent=v.children)}if(D){if(ot||!M||B&48){const at=g.tagName.includes("-");for(const kt in D)(ot&&(kt.endsWith("value")||kt==="indeterminate")||tr(kt)&&!fi(kt)||kt[0]==="."||at)&&s(g,kt,null,D[kt],void 0,S)}else if(D.onClick)s(g,"onClick",null,D.onClick,void 0,S);else if(B&4&&Ws(D.style))for(const at in D.style)D.style[at]}let Q;(Q=D&&D.onVnodeBeforeMount)&&Rn(Q,S,v),U&&Us(v,null,S,"beforeMount"),((Q=D&&D.onVnodeMounted)||U||K)&&y1(()=>{Q&&Rn(Q,S,v),K&&X.enter(g),U&&Us(v,null,S,"mounted")},k)}return g.nextSibling},h=(g,v,S,k,I,M,T)=>{T=T||!!v.dynamicChildren;const D=v.children,B=D.length;for(let $=0;${const{slotScopeIds:T}=v;T&&(I=I?I.concat(T):T);const D=o(g),B=h(r(g),v,D,S,k,I,M);return B&&oo(B)&&B.data==="]"?r(v.anchor=B):(Br(),l(v.anchor=c("]"),D,B),B)},m=(g,v,S,k,I,M)=>{if(xl(g.parentElement,1)||Br(),v.el=null,M){const B=b(g);for(;;){const $=r(g);if($&&$!==B)a($);else break}}const T=r(g),D=o(g);return a(g),n(null,v,D,T,S,k,Ol(D),I),S&&(S.vnode.el=v.el,Au(S,v.el)),T},b=(g,v="[",S="]")=>{let k=0;for(;g;)if(g=r(g),g&&oo(g)&&(g.data===v&&k++,g.data===S)){if(k===0)return r(g);k--}return g},y=(g,v,S)=>{const k=v.parentNode;k&&k.replaceChild(g,v);let I=S;for(;I;)I.vnode.el===v&&(I.vnode.el=I.subTree.el=g),I=I.parent},_=g=>g.nodeType===1&&g.tagName==="TEMPLATE";return[u,d]}const Pm="data-allow-mismatch",O3={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function xl(t,e){if(e===0||e===1)for(;t&&!t.hasAttribute(Pm);)t=t.parentElement;const n=t&&t.getAttribute(Pm);if(n==null)return!1;if(n==="")return!0;{const s=n.split(",");return e===0&&s.includes("children")?!0:s.includes(O3[e])}}const x3=Qa().requestIdleCallback||(t=>setTimeout(t,1)),I3=Qa().cancelIdleCallback||(t=>clearTimeout(t)),N3=(t=1e4)=>e=>{const n=x3(e,{timeout:t});return()=>I3(n)};function P3(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(P3(i))return e(),s.disconnect(),!1;s.observe(i)}}),()=>s.disconnect()},M3=t=>e=>{if(t){const n=matchMedia(t);if(n.matches)e();else return n.addEventListener("change",e,{once:!0}),()=>n.removeEventListener("change",e)}},L3=(t=[])=>(e,n)=>{Dt(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 R3(t,e){if(oo(t)&&t.data==="["){let n=1,s=t.nextSibling;for(;s;){if(s.nodeType===1){if(e(s)===!1)break}else if(oo(s))if(s.data==="]"){if(--n===0)break}else s.data==="["&&n++;s=s.nextSibling}}else e(t)}const Xi=t=>!!t.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function $3(t){xt(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,h()),h=()=>{let p;return c||(p=c=e().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((b,y)=>{l(m,()=>b(f()),()=>y(m),d+1)});throw m}).then(m=>p!==c&&c?c:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),u=m,m)))};return Ti({name:"AsyncComponentWrapper",__asyncLoader:h,__asyncHydrate(p,m,b){let y=!1;(m.bu||(m.bu=[])).push(()=>y=!0);const _=()=>{y||b()},g=r?()=>{const v=r(_,S=>R3(p,S));v&&(m.bum||(m.bum=[])).push(v)}:_;u?g():h().then(()=>!m.isUnmounted&&g())},get __asyncResolved(){return u},setup(){const p=an;if(Gh(p),u)return()=>Od(u,p);const m=g=>{c=null,Rr(g,p,13,!s)};if(a&&p.suspense||bo)return h().then(g=>()=>Od(g,p)).catch(g=>(m(g),()=>s?E(s,{error:g}):null));const b=os(!1),y=os(),_=os(!!i);return i&&setTimeout(()=>{_.value=!1},i),o!=null&&setTimeout(()=>{if(!b.value&&!y.value){const g=new Error(`Async component timed out after ${o}ms.`);m(g),y.value=g}},o),h().then(()=>{b.value=!0,p.parent&&el(p.parent.vnode)&&p.parent.update()}).catch(g=>{m(g),y.value=g}),()=>{if(b.value&&u)return Od(u,p);if(y.value&&s)return E(s,{error:y.value});if(n&&!_.value)return E(n)}}})}function Od(t,e){const{ref:n,props:s,children:i,ce:r}=e.vnode,o=E(t,s,i);return o.ref=n,o.ce=r,delete e.vnode.ce,o}const el=t=>t.type.__isKeepAlive,F3={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(t,{slots:e}){const n=cn(),s=n.ctx;if(!s.renderer)return()=>{const _=e.default&&e.default();return _&&_.length===1?_[0]:_};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=(_,g,v,S,k)=>{const I=_.component;c(_,g,v,0,a),l(I.vnode,_,g,v,I,a,S,_.slotScopeIds,k),Xe(()=>{I.isDeactivated=!1,I.a&&Sr(I.a);const M=_.props&&_.props.onVnodeMounted;M&&Rn(M,I.parent,_)},a)},s.deactivate=_=>{const g=_.component;Ic(g.m),Ic(g.a),c(_,f,null,1,a),Xe(()=>{g.da&&Sr(g.da);const v=_.props&&_.props.onVnodeUnmounted;v&&Rn(v,g.parent,_),g.isDeactivated=!0},a)};function h(_){xd(_),u(_,n,a,!0)}function p(_){i.forEach((g,v)=>{const S=$f(g.type);S&&!_(S)&&m(v)})}function m(_){const g=i.get(_);g&&(!o||!Ts(g,o))?h(g):o&&xd(o),i.delete(_),r.delete(_)}Xn(()=>[t.include,t.exclude],([_,g])=>{_&&p(v=>sa(_,v)),g&&p(v=>!sa(g,v))},{flush:"post",deep:!0});let b=null;const y=()=>{b!=null&&(Nc(n.subTree.type)?Xe(()=>{i.set(b,Il(n.subTree))},n.subTree.suspense):i.set(b,Il(n.subTree)))};return Ro(y),ku(y),Tu(()=>{i.forEach(_=>{const{subTree:g,suspense:v}=n,S=Il(g);if(_.type===S.type&&_.key===S.key){xd(S);const k=S.component.da;k&&Xe(k,v);return}h(_)})}),()=>{if(b=null,!e.default)return o=null;const _=e.default(),g=_[0];if(_.length>1)return o=null,_;if(!Ei(g)||!(g.shapeFlag&4)&&!(g.shapeFlag&128))return o=null,g;let v=Il(g);if(v.type===Be)return o=null,v;const S=v.type,k=$f(Xi(v)?v.type.__asyncResolved||{}:S),{include:I,exclude:M,max:T}=t;if(I&&(!k||!sa(I,k))||M&&k&&sa(M,k))return v.shapeFlag&=-257,o=v,g;const D=v.key==null?S:v.key,B=i.get(D);return v.el&&(v=zs(v),g.shapeFlag&128&&(g.ssContent=v)),b=D,B?(v.el=B.el,v.component=B.component,v.transition&&Si(v,v.transition),v.shapeFlag|=512,r.delete(D),r.add(D)):(r.add(D),T&&r.size>parseInt(T,10)&&m(r.values().next().value)),v.shapeFlag|=256,o=v,Nc(g.type)?g:v}}},V3=F3;function sa(t,e){return gt(t)?t.some(n=>sa(n,e)):Dt(t)?t.split(",").includes(e):Bb(t)?(t.lastIndex=0,t.test(e)):!1}function $v(t,e){Vv(t,"a",e)}function Fv(t,e){Vv(t,"da",e)}function Vv(t,e,n=an){const s=t.__wdc||(t.__wdc=()=>{let i=n;for(;i;){if(i.isDeactivated)return;i=i.parent}return t()});if(wu(e,s,n),n){let i=n.parent;for(;i&&i.parent;)el(i.parent.vnode)&&H3(s,e,n,i),i=i.parent}}function H3(t,e,n,s){const i=wu(e,t,s,!0);nl(()=>{cu(s[e],i)},n)}function xd(t){t.shapeFlag&=-257,t.shapeFlag&=-513}function Il(t){return t.shapeFlag&128?t.ssContent:t}function wu(t,e,n=an,s=!1){if(n){const i=n[t]||(n[t]=[]),r=e.__weh||(e.__weh=(...o)=>{bi();const a=xr(n),l=fs(e,n,t,o);return a(),vi(),l});return s?i.unshift(r):i.push(r),r}}const Ci=t=>(e,n=an)=>{(!bo||t==="sp")&&wu(t,(...s)=>e(...s),n)},Hv=Ci("bm"),Ro=Ci("m"),Kh=Ci("bu"),ku=Ci("u"),Tu=Ci("bum"),nl=Ci("um"),Uv=Ci("sp"),jv=Ci("rtg"),Bv=Ci("rtc");function Wv(t,e=an){wu("ec",t,e)}const zh="components",U3="directives";function w(t,e){return Yh(zh,t,!0,e)||t}const Gv=Symbol.for("v-ndc");function qh(t){return Dt(t)?Yh(zh,t,!1)||t:t||Gv}function Xh(t){return Yh(U3,t)}function Yh(t,e,n=!0,s=!1){const i=ln||an;if(i){const r=i.type;if(t===zh){const a=$f(r,!1);if(a&&(a===e||a===Te(e)||a===nr(Te(e))))return r}const o=Dm(i[t]||r[t],e)||Dm(i.appContext[t],e);return!o&&s?r:o}}function Dm(t,e){return t&&(t[e]||t[Te(e)]||t[nr(Te(e))])}function de(t,e,n,s){let i;const r=n&&n[s],o=gt(t);if(o||Dt(t)){const a=o&&Ws(t);let l=!1,c=!1;a&&(l=!qn(t),c=_i(t),t=mu(t)),i=new Array(t.length);for(let u=0,d=t.length;ue(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 le(t,e,n={},s,i){if(ln.ce||ln.parent&&Xi(ln.parent)&&ln.parent.ce)return e!=="default"&&(n.name=e),O(),yt(it,null,[E("slot",n,s&&s())],64);let r=t[e];r&&r._c&&(r._d=!1),O();const o=r&&Zh(r(n)),a=n.key||o&&o.key,l=yt(it,{key:(a&&!Nn(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 Zh(t){return t.some(e=>Ei(e)?!(e.type===Be||e.type===it&&!Zh(e.children)):!0)?t:null}function j3(t,e){const n={};for(const s in t)n[e&&/[A-Z]/.test(s)?`on:${s}`:_r(s)]=t[s];return n}const Cf=t=>t?w1(t)?rl(t):Cf(t.parent):null,ma=Zt(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=>Cf(t.parent),$root:t=>Cf(t.root),$host:t=>t.ce,$emit:t=>t.emit,$options:t=>Jh(t),$forceUpdate:t=>t.f||(t.f=()=>{jh(t.update)}),$nextTick:t=>t.n||(t.n=$r.bind(t.proxy)),$watch:t=>bw.bind(t)}),Id=(t,e)=>t!==Yt&&!t.__isScriptSetup&&ue(t,e),Af={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 h=o[e];if(h!==void 0)switch(h){case 1:return s[e];case 2:return i[e];case 4:return n[e];case 3:return r[e]}else{if(Id(s,e))return o[e]=1,s[e];if(i!==Yt&&ue(i,e))return o[e]=2,i[e];if((c=t.propsOptions[0])&&ue(c,e))return o[e]=3,r[e];if(n!==Yt&&ue(n,e))return o[e]=4,n[e];Of&&(o[e]=0)}}const u=ma[e];let d,f;if(u)return e==="$attrs"&&yn(t.attrs,"get",""),u(t);if((d=a.__cssModules)&&(d=d[e]))return d;if(n!==Yt&&ue(n,e))return o[e]=4,n[e];if(f=l.config.globalProperties,ue(f,e))return f[e]},set({_:t},e,n){const{data:s,setupState:i,ctx:r}=t;return Id(i,e)?(i[e]=n,!0):s!==Yt&&ue(s,e)?(s[e]=n,!0):ue(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!==Yt&&ue(t,o)||Id(e,o)||(a=r[0])&&ue(a,o)||ue(s,o)||ue(ma,o)||ue(i.config.globalProperties,o)},defineProperty(t,e,n){return n.get!=null?t._.accessCache[e]=0:ue(n,"value")&&this.set(t,e,n.value,null),Reflect.defineProperty(t,e,n)}},B3=Zt({},Af,{get(t,e){if(e!==Symbol.unscopables)return Af.get(t,e,t)},has(t,e){return e[0]!=="_"&&!Nh(e)}});function W3(){return null}function G3(){return null}function K3(t){}function z3(t){}function q3(){return null}function X3(){}function Y3(t,e){return null}function Z3(){return Kv().slots}function J3(){return Kv().attrs}function Kv(t){const e=cn();return e.setupContext||(e.setupContext=C1(e))}function $a(t){return gt(t)?t.reduce((e,n)=>(e[n]=null,e),{}):t}function Q3(t,e){const n=$a(t);for(const s in e){if(s.startsWith("__skip"))continue;let i=n[s];i?gt(i)||xt(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 tw(t,e){return!t||!e?t||e:gt(t)&>(e)?t.concat(e):Zt({},$a(t),$a(e))}function ew(t,e){const n={};for(const s in t)e.includes(s)||Object.defineProperty(n,s,{enumerable:!0,get:()=>t[s]});return n}function nw(t){const e=cn();let n=t();return Mf(),uu(n)&&(n=n.catch(s=>{throw xr(e),s})),[n,()=>xr(e)]}let Of=!0;function sw(t){const e=Jh(t),n=t.proxy,s=t.ctx;Of=!1,e.beforeCreate&&Mm(e.beforeCreate,t,"bc");const{data:i,computed:r,methods:o,watch:a,provide:l,inject:c,created:u,beforeMount:d,mounted:f,beforeUpdate:h,updated:p,activated:m,deactivated:b,beforeDestroy:y,beforeUnmount:_,destroyed:g,unmounted:v,render:S,renderTracked:k,renderTriggered:I,errorCaptured:M,serverPrefetch:T,expose:D,inheritAttrs:B,components:$,directives:U,filters:X}=e;if(c&&iw(c,s,null),o)for(const Q in o){const at=o[Q];xt(at)&&(s[Q]=at.bind(n))}if(i){const Q=i.call(n,n);me(Q)&&(t.data=Mo(Q))}if(Of=!0,r)for(const Q in r){const at=r[Q],kt=xt(at)?at.bind(n,n):xt(at.get)?at.get.bind(n,n):Qe,qt=!xt(at)&&xt(at.set)?at.set.bind(n):Qe,Vt=Je({get:kt,set:qt});Object.defineProperty(s,Q,{enumerable:!0,configurable:!0,get:()=>Vt.value,set:Bt=>Vt.value=Bt})}if(a)for(const Q in a)zv(a[Q],s,n,Q);if(l){const Q=xt(l)?l.call(n):l;Reflect.ownKeys(Q).forEach(at=>{ga(at,Q[at])})}u&&Mm(u,t,"c");function K(Q,at){gt(at)?at.forEach(kt=>Q(kt.bind(n))):at&&Q(at.bind(n))}if(K(Hv,d),K(Ro,f),K(Kh,h),K(ku,p),K($v,m),K(Fv,b),K(Wv,M),K(Bv,k),K(jv,I),K(Tu,_),K(nl,v),K(Uv,T),gt(D))if(D.length){const Q=t.exposed||(t.exposed={});D.forEach(at=>{Object.defineProperty(Q,at,{get:()=>n[at],set:kt=>n[at]=kt,enumerable:!0})})}else t.exposed||(t.exposed={});S&&t.render===Qe&&(t.render=S),B!=null&&(t.inheritAttrs=B),$&&(t.components=$),U&&(t.directives=U),T&&Gh(t)}function iw(t,e,n=Qe){gt(t)&&(t=xf(t));for(const s in t){const i=t[s];let r;me(i)?"default"in i?r=as(i.from||s,i.default,!0):r=as(i.from||s):r=as(i),Ie(r)?Object.defineProperty(e,s,{enumerable:!0,configurable:!0,get:()=>r.value,set:o=>r.value=o}):e[s]=r}}function Mm(t,e,n){fs(gt(t)?t.map(s=>s.bind(e.proxy)):t.bind(e.proxy),e,n)}function zv(t,e,n,s){let i=s.includes(".")?h1(n,s):()=>n[s];if(Dt(t)){const r=e[t];xt(r)&&Xn(i,r)}else if(xt(t))Xn(i,t.bind(n));else if(me(t))if(gt(t))t.forEach(r=>zv(r,e,n,s));else{const r=xt(t.handler)?t.handler.bind(n):e[t.handler];xt(r)&&Xn(i,r,t)}}function Jh(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=>xc(l,c,o,!0)),xc(l,e,o)),me(e)&&r.set(e,l),l}function xc(t,e,n,s=!1){const{mixins:i,extends:r}=e;r&&xc(t,r,n,!0),i&&i.forEach(o=>xc(t,o,n,!0));for(const o in e)if(!(s&&o==="expose")){const a=rw[o]||n&&n[o];t[o]=a?a(t[o],e[o]):e[o]}return t}const rw={data:Lm,props:Rm,emits:Rm,methods:ia,computed:ia,beforeCreate:kn,created:kn,beforeMount:kn,mounted:kn,beforeUpdate:kn,updated:kn,beforeDestroy:kn,beforeUnmount:kn,destroyed:kn,unmounted:kn,activated:kn,deactivated:kn,errorCaptured:kn,serverPrefetch:kn,components:ia,directives:ia,watch:aw,provide:Lm,inject:ow};function Lm(t,e){return e?t?function(){return Zt(xt(t)?t.call(this,this):t,xt(e)?e.call(this,this):e)}:e:t}function ow(t,e){return ia(xf(t),xf(e))}function xf(t){if(gt(t)){const e={};for(let n=0;n1)return n&&xt(e)?e.call(s&&s.proxy):e}}function Xv(){return!!(cn()||wr)}const Yv={},Zv=()=>Object.create(Yv),Jv=t=>Object.getPrototypeOf(t)===Yv;function uw(t,e,n,s=!1){const i={},r=Zv();t.propsDefaults=Object.create(null),Qv(t,e,i,r);for(const o in t.propsOptions[0])o in i||(i[o]=void 0);n?t.props=s?i:Vh(i):t.type.props?t.props=i:t.props=r,t.attrs=r}function dw(t,e,n,s){const{props:i,attrs:r,vnode:{patchFlag:o}}=t,a=ne(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,h]=t1(d,e,!0);Zt(o,f),h&&a.push(...h)};!n&&e.mixins.length&&e.mixins.forEach(u),t.extends&&u(t.extends),t.mixins&&t.mixins.forEach(u)}if(!r&&!l)return me(t)&&s.set(t,br),br;if(gt(r))for(let u=0;ut==="_"||t==="__"||t==="_ctx"||t==="$stable",tp=t=>gt(t)?t.map($n):[$n(t)],hw=(t,e,n)=>{if(e._n)return e;const s=R((...i)=>tp(e(...i)),n);return s._c=!1,s},e1=(t,e,n)=>{const s=t._ctx;for(const i in t){if(Qh(i))continue;const r=t[i];if(xt(r))e[i]=hw(i,r,s);else if(r!=null){const o=tp(r);e[i]=()=>o}}},n1=(t,e)=>{const n=tp(e);t.slots.default=()=>n},s1=(t,e,n)=>{for(const s in e)(n||!Qh(s))&&(t[s]=e[s])},pw=(t,e,n)=>{const s=t.slots=Zv();if(t.vnode.shapeFlag&32){const i=e.__;i&&wc(s,"__",i,!0);const r=e._;r?(s1(s,e,n),n&&wc(s,"_",r,!0)):e1(e,s)}else e&&n1(t,e)},mw=(t,e,n)=>{const{vnode:s,slots:i}=t;let r=!0,o=Yt;if(s.shapeFlag&32){const a=e._;a?n&&a===1?r=!1:s1(i,e,n):(r=!e.$stable,e1(e,i)),o=e}else e&&(n1(t,e),o={default:1});if(r)for(const a in i)!Qh(a)&&o[a]==null&&delete i[a]},Xe=y1;function i1(t){return o1(t)}function r1(t){return o1(t,A3)}function o1(t,e){const n=Qa();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:h=Qe,insertStaticContent:p}=t,m=(A,N,W,st=null,J=null,C=null,x=void 0,V=null,q=!!N.dynamicChildren)=>{if(A===N)return;A&&!Ts(A,N)&&(st=Y(A),Bt(A,J,C,!0),A=null),N.patchFlag===-2&&(q=!1,N.dynamicChildren=null);const{type:tt,ref:lt,shapeFlag:L}=N;switch(tt){case hi:b(A,N,W,st);break;case Be:y(A,N,W,st);break;case kr:A==null&&_(N,W,st,x);break;case it:$(A,N,W,st,J,C,x,V,q);break;default:L&1?S(A,N,W,st,J,C,x,V,q):L&6?U(A,N,W,st,J,C,x,V,q):(L&64||L&128)&&tt.process(A,N,W,st,J,C,x,V,q,bt)}lt!=null&&J?fo(lt,A&&A.ref,C,N||A,!N):lt==null&&A&&A.ref!=null&&fo(A.ref,null,C,A,!0)},b=(A,N,W,st)=>{if(A==null)s(N.el=a(N.children),W,st);else{const J=N.el=A.el;N.children!==A.children&&c(J,N.children)}},y=(A,N,W,st)=>{A==null?s(N.el=l(N.children||""),W,st):N.el=A.el},_=(A,N,W,st)=>{[A.el,A.anchor]=p(A.children,N,W,st,A.el,A.anchor)},g=({el:A,anchor:N},W,st)=>{let J;for(;A&&A!==N;)J=f(A),s(A,W,st),A=J;s(N,W,st)},v=({el:A,anchor:N})=>{let W;for(;A&&A!==N;)W=f(A),i(A),A=W;i(N)},S=(A,N,W,st,J,C,x,V,q)=>{N.type==="svg"?x="svg":N.type==="math"&&(x="mathml"),A==null?k(N,W,st,J,C,x,V,q):T(A,N,J,C,x,V,q)},k=(A,N,W,st,J,C,x,V)=>{let q,tt;const{props:lt,shapeFlag:L,transition:G,dirs:ht}=A;if(q=A.el=o(A.type,C,lt&<.is,lt),L&8?u(q,A.children):L&16&&M(A.children,q,null,st,J,Nd(A,C),x,V),ht&&Us(A,null,st,"created"),I(q,A,A.scopeId,x,st),lt){for(const Kt in lt)Kt!=="value"&&!fi(Kt)&&r(q,Kt,null,lt[Kt],C,st);"value"in lt&&r(q,"value",null,lt.value,C),(tt=lt.onVnodeBeforeMount)&&Rn(tt,st,A)}ht&&Us(A,null,st,"beforeMount");const St=a1(J,G);St&&G.beforeEnter(q),s(q,N,W),((tt=lt&<.onVnodeMounted)||St||ht)&&Xe(()=>{tt&&Rn(tt,st,A),St&&G.enter(q),ht&&Us(A,null,st,"mounted")},J)},I=(A,N,W,st,J)=>{if(W&&h(A,W),st)for(let C=0;C{for(let tt=q;tt{const V=N.el=A.el;let{patchFlag:q,dynamicChildren:tt,dirs:lt}=N;q|=A.patchFlag&16;const L=A.props||Yt,G=N.props||Yt;let ht;if(W&&ar(W,!1),(ht=G.onVnodeBeforeUpdate)&&Rn(ht,W,N,A),lt&&Us(N,A,W,"beforeUpdate"),W&&ar(W,!0),(L.innerHTML&&G.innerHTML==null||L.textContent&&G.textContent==null)&&u(V,""),tt?D(A.dynamicChildren,tt,V,W,st,Nd(N,J),C):x||at(A,N,V,null,W,st,Nd(N,J),C,!1),q>0){if(q&16)B(V,L,G,W,J);else if(q&2&&L.class!==G.class&&r(V,"class",null,G.class,J),q&4&&r(V,"style",L.style,G.style,J),q&8){const St=N.dynamicProps;for(let Kt=0;Kt{ht&&Rn(ht,W,N,A),lt&&Us(N,A,W,"updated")},st)},D=(A,N,W,st,J,C,x)=>{for(let V=0;V{if(N!==W){if(N!==Yt)for(const C in N)!fi(C)&&!(C in W)&&r(A,C,N[C],null,J,st);for(const C in W){if(fi(C))continue;const x=W[C],V=N[C];x!==V&&C!=="value"&&r(A,C,V,x,J,st)}"value"in W&&r(A,"value",N.value,W.value,J)}},$=(A,N,W,st,J,C,x,V,q)=>{const tt=N.el=A?A.el:a(""),lt=N.anchor=A?A.anchor:a("");let{patchFlag:L,dynamicChildren:G,slotScopeIds:ht}=N;ht&&(V=V?V.concat(ht):ht),A==null?(s(tt,W,st),s(lt,W,st),M(N.children||[],W,lt,J,C,x,V,q)):L>0&&L&64&&G&&A.dynamicChildren?(D(A.dynamicChildren,G,W,J,C,x,V),(N.key!=null||J&&N===J.subTree)&&ep(A,N,!0)):at(A,N,W,lt,J,C,x,V,q)},U=(A,N,W,st,J,C,x,V,q)=>{N.slotScopeIds=V,A==null?N.shapeFlag&512?J.ctx.activate(N,W,st,x,q):X(N,W,st,J,C,x,q):ot(A,N,q)},X=(A,N,W,st,J,C,x)=>{const V=A.component=E1(A,st,J);if(el(A)&&(V.ctx.renderer=bt),k1(V,!1,x),V.asyncDep){if(J&&J.registerDep(V,K,x),!A.el){const q=V.subTree=E(Be);y(null,q,N,W),A.placeholder=q.el}}else K(V,A,N,W,J,C,x)},ot=(A,N,W)=>{const st=N.component=A.component;if(kw(A,N,W))if(st.asyncDep&&!st.asyncResolved){Q(st,N,W);return}else st.next=N,st.update();else N.el=A.el,st.vnode=N},K=(A,N,W,st,J,C,x)=>{const V=()=>{if(A.isMounted){let{next:L,bu:G,u:ht,parent:St,vnode:Kt}=A;{const pt=l1(A);if(pt){L&&(L.el=Kt.el,Q(A,L,x)),pt.asyncDep.then(()=>{A.isUnmounted||V()});return}}let H=L,j;ar(A,!1),L?(L.el=Kt.el,Q(A,L,x)):L=Kt,G&&Sr(G),(j=L.props&&L.props.onVnodeBeforeUpdate)&&Rn(j,St,L,Kt),ar(A,!0);const z=tc(A),rt=A.subTree;A.subTree=z,m(rt,z,d(rt.el),Y(rt),A,J,C),L.el=z.el,H===null&&Au(A,z.el),ht&&Xe(ht,J),(j=L.props&&L.props.onVnodeUpdated)&&Xe(()=>Rn(j,St,L,Kt),J)}else{let L;const{el:G,props:ht}=N,{bm:St,m:Kt,parent:H,root:j,type:z}=A,rt=Xi(N);if(ar(A,!1),St&&Sr(St),!rt&&(L=ht&&ht.onVnodeBeforeMount)&&Rn(L,H,N),ar(A,!0),G&&Xt){const pt=()=>{A.subTree=tc(A),Xt(G,A.subTree,A,J,null)};rt&&z.__asyncHydrate?z.__asyncHydrate(G,A,pt):pt()}else{j.ce&&j.ce._def.shadowRoot!==!1&&j.ce._injectChildStyle(z);const pt=A.subTree=tc(A);m(null,pt,W,st,A,J,C),N.el=pt.el}if(Kt&&Xe(Kt,J),!rt&&(L=ht&&ht.onVnodeMounted)){const pt=N;Xe(()=>Rn(L,H,pt),J)}(N.shapeFlag&256||H&&Xi(H.vnode)&&H.vnode.shapeFlag&256)&&A.a&&Xe(A.a,J),A.isMounted=!0,N=W=st=null}};A.scope.on();const q=A.effect=new Na(V);A.scope.off();const tt=A.update=q.run.bind(q),lt=A.job=q.runIfDirty.bind(q);lt.i=A,lt.id=A.uid,q.scheduler=()=>jh(lt),ar(A,!0),tt()},Q=(A,N,W)=>{N.component=A;const st=A.vnode.props;A.vnode=N,A.next=null,dw(A,N.props,st,W),mw(A,N.children,W),bi(),Cm(A),vi()},at=(A,N,W,st,J,C,x,V,q=!1)=>{const tt=A&&A.children,lt=A?A.shapeFlag:0,L=N.children,{patchFlag:G,shapeFlag:ht}=N;if(G>0){if(G&128){qt(tt,L,W,st,J,C,x,V,q);return}else if(G&256){kt(tt,L,W,st,J,C,x,V,q);return}}ht&8?(lt&16&&Wt(tt,J,C),L!==tt&&u(W,L)):lt&16?ht&16?qt(tt,L,W,st,J,C,x,V,q):Wt(tt,J,C,!0):(lt&8&&u(W,""),ht&16&&M(L,W,st,J,C,x,V,q))},kt=(A,N,W,st,J,C,x,V,q)=>{A=A||br,N=N||br;const tt=A.length,lt=N.length,L=Math.min(tt,lt);let G;for(G=0;Glt?Wt(A,J,C,!0,!1,L):M(N,W,st,J,C,x,V,q,L)},qt=(A,N,W,st,J,C,x,V,q)=>{let tt=0;const lt=N.length;let L=A.length-1,G=lt-1;for(;tt<=L&&tt<=G;){const ht=A[tt],St=N[tt]=q?Hi(N[tt]):$n(N[tt]);if(Ts(ht,St))m(ht,St,W,null,J,C,x,V,q);else break;tt++}for(;tt<=L&&tt<=G;){const ht=A[L],St=N[G]=q?Hi(N[G]):$n(N[G]);if(Ts(ht,St))m(ht,St,W,null,J,C,x,V,q);else break;L--,G--}if(tt>L){if(tt<=G){const ht=G+1,St=htG)for(;tt<=L;)Bt(A[tt],J,C,!0),tt++;else{const ht=tt,St=tt,Kt=new Map;for(tt=St;tt<=G;tt++){const Lt=N[tt]=q?Hi(N[tt]):$n(N[tt]);Lt.key!=null&&Kt.set(Lt.key,tt)}let H,j=0;const z=G-St+1;let rt=!1,pt=0;const At=new Array(z);for(tt=0;tt=z){Bt(Lt,J,C,!0);continue}let ce;if(Lt.key!=null)ce=Kt.get(Lt.key);else for(H=St;H<=G;H++)if(At[H-St]===0&&Ts(Lt,N[H])){ce=H;break}ce===void 0?Bt(Lt,J,C,!0):(At[ce-St]=tt+1,ce>=pt?pt=ce:rt=!0,m(Lt,N[ce],W,null,J,C,x,V,q),j++)}const $t=rt?gw(At):br;for(H=$t.length-1,tt=z-1;tt>=0;tt--){const Lt=St+tt,ce=N[Lt],Nt=N[Lt+1],Et=Lt+1{const{el:C,type:x,transition:V,children:q,shapeFlag:tt}=A;if(tt&6){Vt(A.component.subTree,N,W,st);return}if(tt&128){A.suspense.move(N,W,st);return}if(tt&64){x.move(A,N,W,bt);return}if(x===it){s(C,N,W);for(let L=0;LV.enter(C),J);else{const{leave:L,delayLeave:G,afterLeave:ht}=V,St=()=>{A.ctx.isUnmounted?i(C):s(C,N,W)},Kt=()=>{L(C,()=>{St(),ht&&ht()})};G?G(C,St,Kt):Kt()}else s(C,N,W)},Bt=(A,N,W,st=!1,J=!1)=>{const{type:C,props:x,ref:V,children:q,dynamicChildren:tt,shapeFlag:lt,patchFlag:L,dirs:G,cacheIndex:ht}=A;if(L===-2&&(J=!1),V!=null&&(bi(),fo(V,null,W,A,!0),vi()),ht!=null&&(N.renderCache[ht]=void 0),lt&256){N.ctx.deactivate(A);return}const St=lt&1&&G,Kt=!Xi(A);let H;if(Kt&&(H=x&&x.onVnodeBeforeUnmount)&&Rn(H,N,A),lt&6)Se(A.component,W,st);else{if(lt&128){A.suspense.unmount(W,st);return}St&&Us(A,null,N,"beforeUnmount"),lt&64?A.type.remove(A,N,W,bt,st):tt&&!tt.hasOnce&&(C!==it||L>0&&L&64)?Wt(tt,N,W,!1,!0):(C===it&&L&384||!J&<&16)&&Wt(q,N,W),st&&ge(A)}(Kt&&(H=x&&x.onVnodeUnmounted)||St)&&Xe(()=>{H&&Rn(H,N,A),St&&Us(A,null,N,"unmounted")},W)},ge=A=>{const{type:N,el:W,anchor:st,transition:J}=A;if(N===it){ve(W,st);return}if(N===kr){v(A);return}const C=()=>{i(W),J&&!J.persisted&&J.afterLeave&&J.afterLeave()};if(A.shapeFlag&1&&J&&!J.persisted){const{leave:x,delayLeave:V}=J,q=()=>x(W,C);V?V(A.el,C,q):q()}else C()},ve=(A,N)=>{let W;for(;A!==N;)W=f(A),i(A),A=W;i(N)},Se=(A,N,W)=>{const{bum:st,scope:J,job:C,subTree:x,um:V,m:q,a:tt,parent:lt,slots:{__:L}}=A;Ic(q),Ic(tt),st&&Sr(st),lt&>(L)&&L.forEach(G=>{lt.renderCache[G]=void 0}),J.stop(),C&&(C.flags|=8,Bt(x,A,N,W)),V&&Xe(V,N),Xe(()=>{A.isUnmounted=!0},N),N&&N.pendingBranch&&!N.isUnmounted&&A.asyncDep&&!A.asyncResolved&&A.suspenseId===N.pendingId&&(N.deps--,N.deps===0&&N.resolve())},Wt=(A,N,W,st=!1,J=!1,C=0)=>{for(let x=C;x{if(A.shapeFlag&6)return Y(A.component.subTree);if(A.shapeFlag&128)return A.suspense.next();const N=f(A.anchor||A.el),W=N&&N[xv];return W?f(W):N};let dt=!1;const ct=(A,N,W)=>{A==null?N._vnode&&Bt(N._vnode,null,null,!0):m(N._vnode||null,A,N,null,null,null,W),N._vnode=A,dt||(dt=!0,Cm(),Oc(),dt=!1)},bt={p:m,um:Bt,m:Vt,r:ge,mt:X,mc:M,pc:at,pbc:D,n:Y,o:t};let Ht,Xt;return e&&([Ht,Xt]=e(bt)),{render:ct,hydrate:Ht,createApp:cw(ct,Ht)}}function Nd({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 ar({effect:t,job:e},n){n?(t.flags|=32,e.flags|=4):(t.flags&=-33,e.flags&=-5)}function a1(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function ep(t,e,n=!1){const s=t.children,i=e.children;if(gt(s)&>(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 l1(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:l1(e)}function Ic(t){if(t)for(let e=0;eas(c1);function d1(t,e){return il(t,null,e)}function yw(t,e){return il(t,null,{flush:"post"})}function f1(t,e){return il(t,null,{flush:"sync"})}function Xn(t,e,n){return il(t,e,n)}function il(t,e,n=Yt){const{immediate:s,deep:i,flush:r,once:o}=n,a=Zt({},n),l=e&&s||!e&&r!=="post";let c;if(bo){if(r==="sync"){const h=u1();c=h.__watcherHandles||(h.__watcherHandles=[])}else if(!l){const h=()=>{};return h.stop=Qe,h.resume=Qe,h.pause=Qe,h}}const u=an;a.call=(h,p,m)=>fs(h,u,p,m);let d=!1;r==="post"?a.scheduler=h=>{Xe(h,u&&u.suspense)}:r!=="sync"&&(d=!0,a.scheduler=(h,p)=>{p?h():jh(h)}),a.augmentJob=h=>{e&&(h.flags|=4),d&&(h.flags|=2,u&&(h.id=u.uid,h.i=u))};const f=c3(t,e,a);return bo&&(c?c.push(f):l&&f()),f}function bw(t,e,n){const s=this.proxy,i=Dt(t)?t.includes(".")?h1(s,t):()=>s[t]:t.bind(s,s);let r;xt(e)?r=e:(r=e.handler,n=e);const o=xr(this),a=il(i,r.bind(s),n);return o(),a}function h1(t,e){const n=e.split(".");return()=>{let s=t;for(let i=0;i{let u,d=Yt,f;return f1(()=>{const h=t[i];gn(u,h)&&(u=h,c())}),{get(){return l(),n.get?n.get(u):u},set(h){const p=n.set?n.set(h):h;if(!gn(p,u)&&!(d!==Yt&&gn(h,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=h,c()),s.emit(`update:${e}`,p),gn(h,p)&&gn(h,d)&&!gn(p,f)&&c(),d=h,f=p}}});return a[Symbol.iterator]=()=>{let l=0;return{next(){return l<2?{value:l++?o||Yt:a,done:!1}:{done:!0}}}},a}const p1=(t,e)=>e==="modelValue"||e==="model-value"?t.modelModifiers:t[`${e}Modifiers`]||t[`${Te(e)}Modifiers`]||t[`${bn(e)}Modifiers`];function _w(t,e,...n){if(t.isUnmounted)return;const s=t.vnode.props||Yt;let i=n;const r=e.startsWith("update:"),o=r&&p1(s,e.slice(7));o&&(o.trim&&(i=n.map(u=>Dt(u)?u.trim():u)),o.number&&(i=n.map(xa)));let a,l=s[a=_r(e)]||s[a=_r(Te(e))];!l&&r&&(l=s[a=_r(bn(e))]),l&&fs(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,fs(c,t,6,i)}}function m1(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(!xt(t)){const l=c=>{const u=m1(c,e,!0);u&&(a=!0,Zt(o,u))};!n&&e.mixins.length&&e.mixins.forEach(l),t.extends&&l(t.extends),t.mixins&&t.mixins.forEach(l)}return!r&&!a?(me(t)&&s.set(t,null),null):(gt(r)?r.forEach(l=>o[l]=null):Zt(o,r),me(t)&&s.set(t,o),o)}function Cu(t,e){return!t||!tr(e)?!1:(e=e.slice(2).replace(/Once$/,""),ue(t,e[0].toLowerCase()+e.slice(1))||ue(t,bn(e))||ue(t,e))}function tc(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:h,ctx:p,inheritAttrs:m}=t,b=Ra(t);let y,_;try{if(n.shapeFlag&4){const v=i||s,S=v;y=$n(c.call(S,v,u,d,h,f,p)),_=a}else{const v=e;y=$n(v.length>1?v(d,{attrs:a,slots:o,emit:l}):v(d,null)),_=e.props?a:Ew(a)}}catch(v){ya.length=0,Rr(v,t,1),y=E(Be)}let g=y;if(_&&m!==!1){const v=Object.keys(_),{shapeFlag:S}=g;v.length&&S&7&&(r&&v.some(lu)&&(_=ww(_,r)),g=zs(g,_,!1,!0))}return n.dirs&&(g=zs(g,null,!1,!0),g.dirs=g.dirs?g.dirs.concat(n.dirs):n.dirs),n.transition&&Si(g,n.transition),y=g,Ra(b),y}function Sw(t,e=!0){let n;for(let s=0;s{let e;for(const n in t)(n==="class"||n==="style"||tr(n))&&((e||(e={}))[n]=t[n]);return e},ww=(t,e)=>{const n={};for(const s in t)(!lu(s)||!(s.slice(9)in e))&&(n[s]=t[s]);return n};function kw(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?Fm(s,o,c):!!o;if(l&8){const u=e.dynamicProps;for(let d=0;dt.__isSuspense;let Nf=0;const Tw={name:"Suspense",__isSuspense:!0,process(t,e,n,s,i,r,o,a,l,c){if(t==null)Aw(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}Ow(t,e,n,s,i,o,a,l,c)}},hydrate:xw,normalize:Iw},Cw=Tw;function Fa(t,e){const n=t.props&&t.props[e];xt(n)&&n()}function Aw(t,e,n,s,i,r,o,a,l){const{p:c,o:{createElement:u}}=l,d=u("div"),f=t.suspense=g1(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?(Fa(t,"onPending"),Fa(t,"onFallback"),c(null,t.ssFallback,e,n,s,null,r,o),ho(f,t.ssFallback)):f.resolve(!1,!0)}function Ow(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,h=e.ssFallback,{activeBranch:p,pendingBranch:m,isInFallback:b,isHydrating:y}=d;if(m)d.pendingBranch=f,Ts(f,m)?(l(m,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0?d.resolve():b&&(y||(l(p,h,n,s,i,null,r,o,a),ho(d,h)))):(d.pendingId=Nf++,y?(d.isHydrating=!1,d.activeBranch=m):c(m,i,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u("div"),b?(l(null,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0?d.resolve():(l(p,h,n,s,i,null,r,o,a),ho(d,h))):p&&Ts(f,p)?(l(p,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(p&&Ts(f,p))l(p,f,n,s,i,d,r,o,a),ho(d,f);else if(Fa(e,"onPending"),d.pendingBranch=f,f.shapeFlag&512?d.pendingId=f.component.suspenseId:d.pendingId=Nf++,l(null,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0)d.resolve();else{const{timeout:_,pendingId:g}=d;_>0?setTimeout(()=>{d.pendingId===g&&d.fallback(h)},_):_===0&&d.fallback(h)}}function g1(t,e,n,s,i,r,o,a,l,c,u=!1){const{p:d,m:f,um:h,n:p,o:{parentNode:m,remove:b}}=c;let y;const _=Nw(t);_&&e&&e.pendingBranch&&(y=e.pendingId,e.deps++);const g=t.props?Ia(t.props.timeout):void 0,v=r,S={vnode:t,parent:e,parentComponent:n,namespace:o,container:s,hiddenContainer:i,deps:0,pendingId:Nf++,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(k=!1,I=!1){const{vnode:M,activeBranch:T,pendingBranch:D,pendingId:B,effects:$,parentComponent:U,container:X}=S;let ot=!1;S.isHydrating?S.isHydrating=!1:k||(ot=T&&D.transition&&D.transition.mode==="out-in",ot&&(T.transition.afterLeave=()=>{B===S.pendingId&&(f(D,X,r===v?p(T):r,0),Ma($))}),T&&(m(T.el)===X&&(r=p(T)),h(T,U,S,!0)),ot||f(D,X,r,0)),ho(S,D),S.pendingBranch=null,S.isInFallback=!1;let K=S.parent,Q=!1;for(;K;){if(K.pendingBranch){K.effects.push(...$),Q=!0;break}K=K.parent}!Q&&!ot&&Ma($),S.effects=[],_&&e&&e.pendingBranch&&y===e.pendingId&&(e.deps--,e.deps===0&&!I&&e.resolve()),Fa(M,"onResolve")},fallback(k){if(!S.pendingBranch)return;const{vnode:I,activeBranch:M,parentComponent:T,container:D,namespace:B}=S;Fa(I,"onFallback");const $=p(M),U=()=>{S.isInFallback&&(d(null,k,D,$,T,null,B,a,l),ho(S,k))},X=k.transition&&k.transition.mode==="out-in";X&&(M.transition.afterLeave=U),S.isInFallback=!0,h(M,T,null,!0),X||U()},move(k,I,M){S.activeBranch&&f(S.activeBranch,k,I,M),S.container=k},next(){return S.activeBranch&&p(S.activeBranch)},registerDep(k,I,M){const T=!!S.pendingBranch;T&&S.deps++;const D=k.vnode.el;k.asyncDep.catch(B=>{Rr(B,k,0)}).then(B=>{if(k.isUnmounted||S.isUnmounted||S.pendingId!==k.suspenseId)return;k.asyncResolved=!0;const{vnode:$}=k;Lf(k,B,!1),D&&($.el=D);const U=!D&&k.subTree.el;I(k,$,m(D||k.subTree.el),D?null:p(k.subTree),S,o,M),U&&b(U),Au(k,$.el),T&&--S.deps===0&&S.resolve()})},unmount(k,I){S.isUnmounted=!0,S.activeBranch&&h(S.activeBranch,n,k,I),S.pendingBranch&&h(S.pendingBranch,n,k,I)}};return S}function xw(t,e,n,s,i,r,o,a,l){const c=e.suspense=g1(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 Iw(t){const{shapeFlag:e,children:n}=t,s=e&32;t.ssContent=Vm(s?n.default:n),t.ssFallback=s?Vm(n.fallback):E(Be)}function Vm(t){let e;if(xt(t)){const n=Or&&t._c;n&&(t._d=!1,O()),t=t(),n&&(t._d=!0,e=En,b1())}return gt(t)&&(t=Sw(t)),t=$n(t),e&&!t.dynamicChildren&&(t.dynamicChildren=e.filter(n=>n!==t)),t}function y1(t,e){e&&e.pendingBranch?gt(t)?e.effects.push(...t):e.effects.push(t):Ma(t)}function ho(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,Au(s,i))}function Nw(t){const e=t.props&&t.props.suspensible;return e!=null&&e!==!1}const it=Symbol.for("v-fgt"),hi=Symbol.for("v-txt"),Be=Symbol.for("v-cmt"),kr=Symbol.for("v-stc"),ya=[];let En=null;function O(t=!1){ya.push(En=t?null:[])}function b1(){ya.pop(),En=ya[ya.length-1]||null}let Or=1;function Pf(t,e=!1){Or+=t,t<0&&En&&e&&(En.hasOnce=!0)}function v1(t){return t.dynamicChildren=Or>0?En||br:null,b1(),Or>0&&En&&En.push(t),t}function F(t,e,n,s,i,r){return v1(P(t,e,n,s,i,r,!0))}function yt(t,e,n,s,i){return v1(E(t,e,n,s,i,!0))}function Ei(t){return t?t.__v_isVNode===!0:!1}function Ts(t,e){return t.type===e.type&&t.key===e.key}function Pw(t){}const _1=({key:t})=>t??null,ec=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?Dt(t)||Ie(t)||xt(t)?{i:ln,r:t,k:e,f:!!n}:t:null);function P(t,e=null,n=null,s=0,i=null,r=t===it?0:1,o=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&_1(e),ref:e&&ec(e),scopeId:Su,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:ln};return a?(np(l,n),r&128&&t.normalize(l)):n&&(l.shapeFlag|=Dt(n)?8:16),Or>0&&!o&&En&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&En.push(l),l}const E=Dw;function Dw(t,e=null,n=null,s=0,i=null,r=!1){if((!t||t===Gv)&&(t=Be),Ei(t)){const a=zs(t,e,!0);return n&&np(a,n),Or>0&&!r&&En&&(a.shapeFlag&6?En[En.indexOf(t)]=a:En.push(a)),a.patchFlag=-2,a}if(Uw(t)&&(t=t.__vccOpts),e){e=S1(e);let{class:a,style:l}=e;a&&!Dt(a)&&(e.class=Gt(a)),me(l)&&(bu(l)&&!gt(l)&&(l=Zt({},l)),e.style=Do(l))}const o=Dt(t)?1:Nc(t)?128:Iv(t)?64:me(t)?4:xt(t)?2:0;return P(t,e,n,s,i,o,r,!0)}function S1(t){return t?bu(t)||Jv(t)?Zt({},t):t:null}function zs(t,e,n=!1,s=!1){const{props:i,ref:r,patchFlag:o,children:a,transition:l}=t,c=e?ao(i||{},e):i,u={__v_isVNode:!0,__v_skip:!0,type:t.type,props:c,key:c&&_1(c),ref:e&&e.ref?n&&r?gt(r)?r.concat(ec(e)):[r,ec(e)]:ec(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!==it?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&&zs(t.ssContent),ssFallback:t.ssFallback&&zs(t.ssFallback),placeholder:t.placeholder,el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return l&&s&&Si(u,l.clone(u)),u}function qs(t=" ",e=0){return E(hi,null,t,e)}function Mw(t,e){const n=E(kr,null,t);return n.staticCount=e,n}function _t(t="",e=!1){return e?(O(),yt(Be,null,t)):E(Be,null,t)}function $n(t){return t==null||typeof t=="boolean"?E(Be):gt(t)?E(it,null,t.slice()):Ei(t)?Hi(t):E(hi,null,String(t))}function Hi(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:zs(t)}function np(t,e){let n=0;const{shapeFlag:s}=t;if(e==null)e=null;else if(gt(e))n=16;else if(typeof e=="object")if(s&65){const i=e.default;i&&(i._c&&(i._d=!1),np(t,i()),i._c&&(i._d=!0));return}else{n=32;const i=e._;!i&&!Jv(e)?e._ctx=ln:i===3&&ln&&(ln.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else xt(e)?(e={default:e,_ctx:ln},n=32):(e=String(e),s&64?(n=16,e=[qs(e)]):n=8);t.children=e,t.shapeFlag|=n}function ao(...t){const e={};for(let n=0;nan||ln;let Pc,Df;{const t=Qa(),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)}};Pc=e("__VUE_INSTANCE_SETTERS__",n=>an=n),Df=e("__VUE_SSR_SETTERS__",n=>bo=n)}const xr=t=>{const e=an;return Pc(t),t.scope.on(),()=>{t.scope.off(),Pc(e)}},Mf=()=>{an&&an.scope.off(),Pc(null)};function w1(t){return t.vnode.shapeFlag&4}let bo=!1;function k1(t,e=!1,n=!1){e&&Df(e);const{props:s,children:i}=t.vnode,r=w1(t);uw(t,s,r,e),pw(t,i,n||e);const o=r?$w(t,e):void 0;return e&&Df(!1),o}function $w(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,Af);const{setup:s}=n;if(s){bi();const i=t.setupContext=s.length>1?C1(t):null,r=xr(t),o=Lo(s,t,0,[t.props,i]),a=uu(o);if(vi(),r(),(a||t.sp)&&!Xi(t)&&Gh(t),a){if(o.then(Mf,Mf),e)return o.then(l=>{Lf(t,l,e)}).catch(l=>{Rr(l,t,0)});t.asyncDep=o}else Lf(t,o,e)}else T1(t,e)}function Lf(t,e,n){xt(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:me(e)&&(t.setupState=Uh(e)),T1(t,n)}let Dc,Rf;function Fw(t){Dc=t,Rf=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,B3))}}const Vw=()=>!Dc;function T1(t,e,n){const s=t.type;if(!t.render){if(!e&&Dc&&!s.render){const i=s.template||Jh(t).template;if(i){const{isCustomElement:r,compilerOptions:o}=t.appContext.config,{delimiters:a,compilerOptions:l}=s,c=Zt(Zt({isCustomElement:r,delimiters:a},o),l);s.render=Dc(i,c)}}t.render=s.render||Qe,Rf&&Rf(t)}{const i=xr(t);bi();try{sw(t)}finally{vi(),i()}}}const Hw={get(t,e){return yn(t,"get",""),t[e]}};function C1(t){const e=n=>{t.exposed=n||{}};return{attrs:new Proxy(t.attrs,Hw),slots:t.slots,emit:t.emit,expose:e}}function rl(t){return t.exposed?t.exposeProxy||(t.exposeProxy=new Proxy(Uh(vu(t.exposed)),{get(e,n){if(n in e)return e[n];if(n in ma)return ma[n](t)},has(e,n){return n in e||n in ma}})):t.proxy}function $f(t,e=!0){return xt(t)?t.displayName||t.name:t.name||e&&t.__name}function Uw(t){return xt(t)&&"__vccOpts"in t}const Je=(t,e)=>r3(t,e,bo);function js(t,e,n){const s=arguments.length;return s===2?me(e)&&!gt(e)?Ei(e)?E(t,null,[e]):E(t,e):E(t,null,e):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Ei(n)&&(n=[n]),E(t,e,n))}function jw(){}function Bw(t,e,n,s){const i=n[s];if(i&&A1(i,t))return i;const r=e();return r.memo=t.slice(),r.cacheIndex=s,n[s]=r}function A1(t,e){const n=t.memo;if(n.length!=e.length)return!1;for(let s=0;s0&&En&&En.push(t),!0}const O1="3.5.18",Ww=Qe,Gw=p3,Kw=to,zw=Ov,qw={createComponentInstance:E1,setupComponent:k1,renderComponentRoot:tc,setCurrentRenderingInstance:Ra,isVNode:Ei,normalizeVNode:$n,getComponentPublicInstance:rl,ensureValidVNode:Zh,pushWarningContext:u3,popWarningContext:d3},Xw=qw,Yw=null,Zw=null,Jw=null;/** +**/const x1=[];function gw(t){x1.push(t)}function yw(){x1.pop()}function bw(t,e){}const vw={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"},_w={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 Fo(t,e,n,s){try{return s?t(...s):t()}catch(i){Fr(i,e,n)}}function ps(t,e,n,s){if(xt(t)){const i=Fo(t,e,n,s);return i&&gu(i)&&i.catch(r=>{Fr(r,e,n)}),i}if(gt(t)){const i=[];for(let r=0;r>>1,i=An[s],r=Ha(i);r=Ha(n)?An.push(t):An.splice(Ew(e),0,t),t.flags|=1,N1()}}function N1(){Rc||(Rc=I1.then(P1))}function Ua(t){gt(t)?ho.push(...t):Vi&&t.id===-1?Vi.splice(eo+1,0,t):t.flags&1||(ho.push(t),t.flags|=1),N1()}function Pm(t,e,n=js+1){for(;nHa(n)-Ha(s));if(ho.length=0,Vi){Vi.push(...e);return}for(Vi=e,eo=0;eot.id==null?t.flags&2?-1:1/0:t.id;function P1(t){try{for(js=0;jsno.emit(i,...r)),Nl=[]):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=>{R1(r,e)}),setTimeout(()=>{no||(e.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Nl=[])},3e3)):Nl=[]}let ln=null,Au=null;function ja(t){const e=ln;return ln=t,Au=t&&t.type.__scopeId||null,e}function ww(t){Au=t}function kw(){Au=null}const Cw=t=>M;function M(t,e=ln,n){if(!e||t._n)return t;const s=(...i)=>{s._d&&Mf(-1);const r=ja(e);let o;try{o=t(...i)}finally{ja(r),s._d&&Mf(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function ms(t,e){if(ln===null)return t;const n=dl(ln),s=t.dirs||(t.dirs=[]);for(let i=0;it.__isTeleport,ba=t=>t&&(t.disabled||t.disabled===""),Rm=t=>t&&(t.defer||t.defer===""),Dm=t=>typeof SVGElement<"u"&&t instanceof SVGElement,Lm=t=>typeof MathMLElement=="function"&&t instanceof MathMLElement,xf=(t,e)=>{const n=t&&t.to;return Rt(n)?e?e(n):null:n},M1={name:"Teleport",__isTeleport:!0,process(t,e,n,s,i,r,o,a,l,c){const{mc:u,pc:d,pbc:f,o:{insert:h,querySelector:p,createText:m,createComment:_}}=c,y=ba(e.props);let{shapeFlag:v,children:g,dynamicChildren:b}=e;if(t==null){const S=e.el=m(""),k=e.anchor=m("");h(S,n,s),h(k,n,s);const I=(C,R)=>{v&16&&(i&&i.isCE&&(i.ce._teleportTarget=C),u(g,C,R,i,r,o,a,l))},D=()=>{const C=e.target=xf(e.props,p),R=$1(C,e,m,h);C&&(o!=="svg"&&Dm(C)?o="svg":o!=="mathml"&&Lm(C)&&(o="mathml"),y||(I(C,R),rc(e,!1)))};y&&(I(n,k),rc(e,!0)),Rm(e.props)?(e.el.__isMounted=!1,Ye(()=>{D(),delete e.el.__isMounted},r)):D()}else{if(Rm(e.props)&&t.el.__isMounted===!1){Ye(()=>{M1.process(t,e,n,s,i,r,o,a,l,c)},r);return}e.el=t.el,e.targetStart=t.targetStart;const S=e.anchor=t.anchor,k=e.target=t.target,I=e.targetAnchor=t.targetAnchor,D=ba(t.props),C=D?n:k,R=D?S:I;if(o==="svg"||Dm(k)?o="svg":(o==="mathml"||Lm(k))&&(o="mathml"),b?(f(t.dynamicChildren,b,C,i,r,o,a),rp(t,e,!0)):l||d(t,e,C,R,i,r,o,a,!1),y)D?e.props&&t.props&&e.props.to!==t.props.to&&(e.props.to=t.props.to):Pl(e,n,S,c,1);else if((e.props&&e.props.to)!==(t.props&&t.props.to)){const B=e.target=xf(e.props,p);B&&Pl(e,B,null,c,0)}else D&&Pl(e,k,I,c,1);rc(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 h=r||!ba(f);for(let p=0;p{t.isMounted=!0}),Nu(()=>{t.isUnmounting=!0}),t}const ns=[Function,Array],zh={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:ns,onEnter:ns,onAfterEnter:ns,onEnterCancelled:ns,onBeforeLeave:ns,onLeave:ns,onAfterLeave:ns,onLeaveCancelled:ns,onBeforeAppear:ns,onAppear:ns,onAfterAppear:ns,onAppearCancelled:ns},F1=t=>{const e=t.subTree;return e.component?F1(e.component):e},Ow={name:"BaseTransition",props:zh,setup(t,{slots:e}){const n=cn(),s=qh();return()=>{const i=e.default&&Ou(e.default(),!0);if(!i||!i.length)return;const r=V1(i),o=ne(t),{mode:a}=o;if(s.isLeaving)return Pd(r);const l=Mm(r);if(!l)return Pd(r);let c=_o(l,o,s,n,d=>c=d);l.type!==Be&&wi(l,c);let u=n.subTree&&Mm(n.subTree);if(u&&u.type!==Be&&!As(l,u)&&F1(n).type!==Be){let d=_o(u,o,s,n);if(wi(u,d),a==="out-in"&&l.type!==Be)return s.isLeaving=!0,d.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete d.afterLeave,u=void 0},Pd(r);a==="in-out"&&l.type!==Be?d.delayLeave=(f,h,p)=>{const m=H1(s,u);m[String(u.key)]=u,f[Ui]=()=>{h(),f[Ui]=void 0,delete c.delayedLeave,u=void 0},c.delayedLeave=()=>{p(),delete c.delayedLeave,u=void 0}}:u=void 0}else u&&(u=void 0);return r}}};function V1(t){let e=t[0];if(t.length>1){for(const n of t)if(n.type!==Be){e=n;break}}return e}const U1=Ow;function H1(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 _o(t,e,n,s,i){const{appear:r,mode:o,persisted:a=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:h,onAfterLeave:p,onLeaveCancelled:m,onBeforeAppear:_,onAppear:y,onAfterAppear:v,onAppearCancelled:g}=e,b=String(t.key),S=H1(n,t),k=(C,R)=>{C&&ps(C,s,9,R)},I=(C,R)=>{const B=R[1];k(C,R),gt(C)?C.every($=>$.length<=1)&&B():C.length<=1&&B()},D={mode:o,persisted:a,beforeEnter(C){let R=l;if(!n.isMounted)if(r)R=_||l;else return;C[Ui]&&C[Ui](!0);const B=S[b];B&&As(t,B)&&B.el[Ui]&&B.el[Ui](),k(R,[C])},enter(C){let R=c,B=u,$=d;if(!n.isMounted)if(r)R=y||c,B=v||u,$=g||d;else return;let H=!1;const X=C[Rl]=ot=>{H||(H=!0,ot?k($,[C]):k(B,[C]),D.delayedLeave&&D.delayedLeave(),C[Rl]=void 0)};R?I(R,[C,X]):X()},leave(C,R){const B=String(t.key);if(C[Rl]&&C[Rl](!0),n.isUnmounting)return R();k(f,[C]);let $=!1;const H=C[Ui]=X=>{$||($=!0,R(),X?k(m,[C]):k(p,[C]),C[Ui]=void 0,S[B]===t&&delete S[B])};S[B]=t,h?I(h,[C,H]):H()},clone(C){const R=_o(C,e,n,s,i);return i&&i(R),R}};return D}function Pd(t){if(al(t))return t=Xs(t),t.children=null,t}function Mm(t){if(!al(t))return L1(t.type)&&t.children?V1(t.children):t;if(t.component)return t.component.subTree;const{shapeFlag:e,children:n}=t;if(n){if(e&16)return n[0];if(e&32&&xt(n.default))return n.default()}}function wi(t,e){t.shapeFlag&6&&t.component?(t.transition=e,wi(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 Ou(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 po(t,e,n,s,i=!1){if(gt(t)){t.forEach((p,m)=>po(p,e&&(gt(e)?e[m]:e),n,s,i));return}if(Zi(s)&&!i){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&po(t,e,n,s.component.subTree);return}const r=s.shapeFlag&4?dl(s.component):s.el,o=i?null:r,{i:a,r:l}=t,c=e&&e.r,u=a.refs===Yt?a.refs={}:a.refs,d=a.setupState,f=ne(d),h=d===Yt?()=>!1:p=>ue(f,p);if(c!=null&&c!==l&&(Rt(c)?(u[c]=null,h(c)&&(d[c]=null)):Ie(c)&&(c.value=null)),xt(l))Fo(l,a,12,[o,u]);else{const p=Rt(l),m=Ie(l);if(p||m){const _=()=>{if(t.f){const y=p?h(l)?d[l]:u[l]:l.value;i?gt(y)&&mu(y,r):gt(y)?y.includes(r)||y.push(r):p?(u[l]=[r],h(l)&&(d[l]=u[l])):(l.value=[r],t.k&&(u[t.k]=l.value))}else p?(u[l]=o,h(l)&&(d[l]=o)):m&&(l.value=o,t.k&&(u[t.k]=o))};o?(_.id=-1,Ye(_,n)):_()}}}let $m=!1;const Gr=()=>{$m||(console.error("Hydration completed but contains mismatches."),$m=!0)},Nw=t=>t.namespaceURI.includes("svg")&&t.tagName!=="foreignObject",Pw=t=>t.namespaceURI.includes("MathML"),Dl=t=>{if(t.nodeType===1){if(Nw(t))return"svg";if(Pw(t))return"mathml"}},lo=t=>t.nodeType===8;function Rw(t){const{mt:e,p:n,o:{patchProp:s,createText:i,nextSibling:r,parentNode:o,remove:a,insert:l,createComment:c}}=t,u=(g,b)=>{if(!b.hasChildNodes()){n(null,g,b),Dc(),b._vnode=g;return}d(b.firstChild,g,null,null,null),Dc(),b._vnode=g},d=(g,b,S,k,I,D=!1)=>{D=D||!!b.dynamicChildren;const C=lo(g)&&g.data==="[",R=()=>m(g,b,S,k,I,C),{type:B,ref:$,shapeFlag:H,patchFlag:X}=b;let ot=g.nodeType;b.el=g,X===-2&&(D=!1,b.dynamicChildren=null);let K=null;switch(B){case mi:ot!==3?b.children===""?(l(b.el=i(""),o(g),g),K=g):K=R():(g.data!==b.children&&(Gr(),g.data=b.children),K=r(g));break;case Be:v(g)?(K=r(g),y(b.el=g.content.firstChild,g,S)):ot!==8||C?K=R():K=r(g);break;case Tr:if(C&&(g=r(g),ot=g.nodeType),ot===1||ot===3){K=g;const Q=!b.children.length;for(let at=0;at{D=D||!!b.dynamicChildren;const{type:C,props:R,patchFlag:B,shapeFlag:$,dirs:H,transition:X}=b,ot=C==="input"||C==="option";if(ot||B!==-1){H&&Bs(b,null,S,"created");let K=!1;if(v(g)){K=fv(null,X)&&S&&S.vnode.props&&S.vnode.props.appear;const at=g.content.firstChild;if(K){const kt=at.getAttribute("class");kt&&(at.$cls=kt),X.beforeEnter(at)}y(at,g,S),b.el=g=at}if($&16&&!(R&&(R.innerHTML||R.textContent))){let at=h(g.firstChild,b,g,S,k,I,D);for(;at;){Ll(g,1)||Gr();const kt=at;at=at.nextSibling,a(kt)}}else if($&8){let at=b.children;at[0]===` +`&&(g.tagName==="PRE"||g.tagName==="TEXTAREA")&&(at=at.slice(1)),g.textContent!==at&&(Ll(g,0)||Gr(),g.textContent=b.children)}if(R){if(ot||!D||B&48){const at=g.tagName.includes("-");for(const kt in R)(ot&&(kt.endsWith("value")||kt==="indeterminate")||nr(kt)&&!pi(kt)||kt[0]==="."||at)&&s(g,kt,null,R[kt],void 0,S)}else if(R.onClick)s(g,"onClick",null,R.onClick,void 0,S);else if(B&4&&Ks(R.style))for(const at in R.style)R.style[at]}let Q;(Q=R&&R.onVnodeBeforeMount)&&$n(Q,S,b),H&&Bs(b,null,S,"beforeMount"),((Q=R&&R.onVnodeMounted)||H||K)&&Ev(()=>{Q&&$n(Q,S,b),K&&X.enter(g),H&&Bs(b,null,S,"mounted")},k)}return g.nextSibling},h=(g,b,S,k,I,D,C)=>{C=C||!!b.dynamicChildren;const R=b.children,B=R.length;for(let $=0;${const{slotScopeIds:C}=b;C&&(I=I?I.concat(C):C);const R=o(g),B=h(r(g),b,R,S,k,I,D);return B&&lo(B)&&B.data==="]"?r(b.anchor=B):(Gr(),l(b.anchor=c("]"),R,B),B)},m=(g,b,S,k,I,D)=>{if(Ll(g.parentElement,1)||Gr(),b.el=null,D){const B=_(g);for(;;){const $=r(g);if($&&$!==B)a($);else break}}const C=r(g),R=o(g);return a(g),n(null,b,R,C,S,k,Dl(R),I),S&&(S.vnode.el=b.el,Ru(S,b.el)),C},_=(g,b="[",S="]")=>{let k=0;for(;g;)if(g=r(g),g&&lo(g)&&(g.data===b&&k++,g.data===S)){if(k===0)return r(g);k--}return g},y=(g,b,S)=>{const k=b.parentNode;k&&k.replaceChild(g,b);let I=S;for(;I;)I.vnode.el===b&&(I.vnode.el=I.subTree.el=g),I=I.parent},v=g=>g.nodeType===1&&g.tagName==="TEMPLATE";return[u,d]}const Fm="data-allow-mismatch",Dw={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function Ll(t,e){if(e===0||e===1)for(;t&&!t.hasAttribute(Fm);)t=t.parentElement;const n=t&&t.getAttribute(Fm);if(n==null)return!1;if(n==="")return!0;{const s=n.split(",");return e===0&&s.includes("children")?!0:s.includes(Dw[e])}}const Lw=rl().requestIdleCallback||(t=>setTimeout(t,1)),Mw=rl().cancelIdleCallback||(t=>clearTimeout(t)),$w=(t=1e4)=>e=>{const n=Lw(e,{timeout:t});return()=>Mw(n)};function Fw(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(Fw(i))return e(),s.disconnect(),!1;s.observe(i)}}),()=>s.disconnect()},Uw=t=>e=>{if(t){const n=matchMedia(t);if(n.matches)e();else return n.addEventListener("change",e,{once:!0}),()=>n.removeEventListener("change",e)}},Hw=(t=[])=>(e,n)=>{Rt(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 jw(t,e){if(lo(t)&&t.data==="["){let n=1,s=t.nextSibling;for(;s;){if(s.nodeType===1){if(e(s)===!1)break}else if(lo(s))if(s.data==="]"){if(--n===0)break}else s.data==="["&&n++;s=s.nextSibling}}else e(t)}const Zi=t=>!!t.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function Bw(t){xt(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,h()),h=()=>{let p;return c||(p=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=>p!==c&&c?c:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),u=m,m)))};return Ti({name:"AsyncComponentWrapper",__asyncLoader:h,__asyncHydrate(p,m,_){let y=!1;(m.bu||(m.bu=[])).push(()=>y=!0);const v=()=>{y||_()},g=r?()=>{const b=r(v,S=>jw(p,S));b&&(m.bum||(m.bum=[])).push(b)}:v;u?g():h().then(()=>!m.isUnmounted&&g())},get __asyncResolved(){return u},setup(){const p=an;if(Xh(p),u)return()=>Rd(u,p);const m=g=>{c=null,Fr(g,p,13,!s)};if(a&&p.suspense||So)return h().then(g=>()=>Rd(g,p)).catch(g=>(m(g),()=>s?E(s,{error:g}):null));const _=cs(!1),y=cs(),v=cs(!!i);return i&&setTimeout(()=>{v.value=!1},i),o!=null&&setTimeout(()=>{if(!_.value&&!y.value){const g=new Error(`Async component timed out after ${o}ms.`);m(g),y.value=g}},o),h().then(()=>{_.value=!0,p.parent&&al(p.parent.vnode)&&p.parent.update()}).catch(g=>{m(g),y.value=g}),()=>{if(_.value&&u)return Rd(u,p);if(y.value&&s)return E(s,{error:y.value});if(n&&!v.value)return E(n)}}})}function Rd(t,e){const{ref:n,props:s,children:i,ce:r}=e.vnode,o=E(t,s,i);return o.ref=n,o.ce=r,delete e.vnode.ce,o}const al=t=>t.type.__isKeepAlive,Ww={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(t,{slots:e}){const n=cn(),s=n.ctx;if(!s.renderer)return()=>{const v=e.default&&e.default();return v&&v.length===1?v[0]:v};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=(v,g,b,S,k)=>{const I=v.component;c(v,g,b,0,a),l(I.vnode,v,g,b,I,a,S,v.slotScopeIds,k),Ye(()=>{I.isDeactivated=!1,I.a&&wr(I.a);const D=v.props&&v.props.onVnodeMounted;D&&$n(D,I.parent,v)},a)},s.deactivate=v=>{const g=v.component;Mc(g.m),Mc(g.a),c(v,f,null,1,a),Ye(()=>{g.da&&wr(g.da);const b=v.props&&v.props.onVnodeUnmounted;b&&$n(b,g.parent,v),g.isDeactivated=!0},a)};function h(v){Dd(v),u(v,n,a,!0)}function p(v){i.forEach((g,b)=>{const S=Hf(g.type);S&&!v(S)&&m(b)})}function m(v){const g=i.get(v);g&&(!o||!As(g,o))?h(g):o&&Dd(o),i.delete(v),r.delete(v)}Zn(()=>[t.include,t.exclude],([v,g])=>{v&&p(b=>oa(v,b)),g&&p(b=>!oa(g,b))},{flush:"post",deep:!0});let _=null;const y=()=>{_!=null&&($c(n.subTree.type)?Ye(()=>{i.set(_,Ml(n.subTree))},n.subTree.suspense):i.set(_,Ml(n.subTree)))};return Vo(y),Iu(y),Nu(()=>{i.forEach(v=>{const{subTree:g,suspense:b}=n,S=Ml(g);if(v.type===S.type&&v.key===S.key){Dd(S);const k=S.component.da;k&&Ye(k,b);return}h(v)})}),()=>{if(_=null,!e.default)return o=null;const v=e.default(),g=v[0];if(v.length>1)return o=null,v;if(!ki(g)||!(g.shapeFlag&4)&&!(g.shapeFlag&128))return o=null,g;let b=Ml(g);if(b.type===Be)return o=null,b;const S=b.type,k=Hf(Zi(b)?b.type.__asyncResolved||{}:S),{include:I,exclude:D,max:C}=t;if(I&&(!k||!oa(I,k))||D&&k&&oa(D,k))return b.shapeFlag&=-257,o=b,g;const R=b.key==null?S:b.key,B=i.get(R);return b.el&&(b=Xs(b),g.shapeFlag&128&&(g.ssContent=b)),_=R,B?(b.el=B.el,b.component=B.component,b.transition&&wi(b,b.transition),b.shapeFlag|=512,r.delete(R),r.add(R)):(r.add(R),C&&r.size>parseInt(C,10)&&m(r.values().next().value)),b.shapeFlag|=256,o=b,$c(g.type)?g:b}}},Gw=Ww;function oa(t,e){return gt(t)?t.some(n=>oa(n,e)):Rt(t)?t.split(",").includes(e):zb(t)?(t.lastIndex=0,t.test(e)):!1}function j1(t,e){W1(t,"a",e)}function B1(t,e){W1(t,"da",e)}function W1(t,e,n=an){const s=t.__wdc||(t.__wdc=()=>{let i=n;for(;i;){if(i.isDeactivated)return;i=i.parent}return t()});if(xu(e,s,n),n){let i=n.parent;for(;i&&i.parent;)al(i.parent.vnode)&&Kw(s,e,n,i),i=i.parent}}function Kw(t,e,n,s){const i=xu(e,t,s,!0);ll(()=>{mu(s[e],i)},n)}function Dd(t){t.shapeFlag&=-257,t.shapeFlag&=-513}function Ml(t){return t.shapeFlag&128?t.ssContent:t}function xu(t,e,n=an,s=!1){if(n){const i=n[t]||(n[t]=[]),r=e.__weh||(e.__weh=(...o)=>{_i();const a=Nr(n),l=ps(e,n,t,o);return a(),Si(),l});return s?i.unshift(r):i.push(r),r}}const Ai=t=>(e,n=an)=>{(!So||t==="sp")&&xu(t,(...s)=>e(...s),n)},G1=Ai("bm"),Vo=Ai("m"),Yh=Ai("bu"),Iu=Ai("u"),Nu=Ai("bum"),ll=Ai("um"),K1=Ai("sp"),q1=Ai("rtg"),z1=Ai("rtc");function X1(t,e=an){xu("ec",t,e)}const Zh="components",qw="directives";function w(t,e){return tp(Zh,t,!0,e)||t}const Y1=Symbol.for("v-ndc");function Jh(t){return Rt(t)?tp(Zh,t,!1)||t:t||Y1}function Qh(t){return tp(qw,t)}function tp(t,e,n=!0,s=!1){const i=ln||an;if(i){const r=i.type;if(t===Zh){const a=Hf(r,!1);if(a&&(a===e||a===Ce(e)||a===ir(Ce(e))))return r}const o=Vm(i[t]||r[t],e)||Vm(i.appContext[t],e);return!o&&s?r:o}}function Vm(t,e){return t&&(t[e]||t[Ce(e)]||t[ir(Ce(e))])}function de(t,e,n,s){let i;const r=n&&n[s],o=gt(t);if(o||Rt(t)){const a=o&&Ks(t);let l=!1,c=!1;a&&(l=!Yn(t),c=Ei(t),t=Su(t)),i=new Array(t.length);for(let u=0,d=t.length;ue(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 le(t,e,n={},s,i){if(ln.ce||ln.parent&&Zi(ln.parent)&&ln.parent.ce)return e!=="default"&&(n.name=e),O(),yt(it,null,[E("slot",n,s&&s())],64);let r=t[e];r&&r._c&&(r._d=!1),O();const o=r&&ep(r(n)),a=n.key||o&&o.key,l=yt(it,{key:(a&&!Pn(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 ep(t){return t.some(e=>ki(e)?!(e.type===Be||e.type===it&&!ep(e.children)):!0)?t:null}function zw(t,e){const n={};for(const s in t)n[e&&/[A-Z]/.test(s)?`on:${s}`:Er(s)]=t[s];return n}const If=t=>t?Ov(t)?dl(t):If(t.parent):null,va=Zt(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=>If(t.parent),$root:t=>If(t.root),$host:t=>t.ce,$emit:t=>t.emit,$options:t=>np(t),$forceUpdate:t=>t.f||(t.f=()=>{Kh(t.update)}),$nextTick:t=>t.n||(t.n=Vr.bind(t.proxy)),$watch:t=>k3.bind(t)}),Ld=(t,e)=>t!==Yt&&!t.__isScriptSetup&&ue(t,e),Nf={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 h=o[e];if(h!==void 0)switch(h){case 1:return s[e];case 2:return i[e];case 4:return n[e];case 3:return r[e]}else{if(Ld(s,e))return o[e]=1,s[e];if(i!==Yt&&ue(i,e))return o[e]=2,i[e];if((c=t.propsOptions[0])&&ue(c,e))return o[e]=3,r[e];if(n!==Yt&&ue(n,e))return o[e]=4,n[e];Pf&&(o[e]=0)}}const u=va[e];let d,f;if(u)return e==="$attrs"&&yn(t.attrs,"get",""),u(t);if((d=a.__cssModules)&&(d=d[e]))return d;if(n!==Yt&&ue(n,e))return o[e]=4,n[e];if(f=l.config.globalProperties,ue(f,e))return f[e]},set({_:t},e,n){const{data:s,setupState:i,ctx:r}=t;return Ld(i,e)?(i[e]=n,!0):s!==Yt&&ue(s,e)?(s[e]=n,!0):ue(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!==Yt&&ue(t,o)||Ld(e,o)||(a=r[0])&&ue(a,o)||ue(s,o)||ue(va,o)||ue(i.config.globalProperties,o)},defineProperty(t,e,n){return n.get!=null?t._.accessCache[e]=0:ue(n,"value")&&this.set(t,e,n.value,null),Reflect.defineProperty(t,e,n)}},Xw=Zt({},Nf,{get(t,e){if(e!==Symbol.unscopables)return Nf.get(t,e,t)},has(t,e){return e[0]!=="_"&&!Lh(e)}});function Yw(){return null}function Zw(){return null}function Jw(t){}function Qw(t){}function t3(){return null}function e3(){}function n3(t,e){return null}function s3(){return Z1().slots}function i3(){return Z1().attrs}function Z1(t){const e=cn();return e.setupContext||(e.setupContext=Nv(e))}function Ba(t){return gt(t)?t.reduce((e,n)=>(e[n]=null,e),{}):t}function r3(t,e){const n=Ba(t);for(const s in e){if(s.startsWith("__skip"))continue;let i=n[s];i?gt(i)||xt(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 o3(t,e){return!t||!e?t||e:gt(t)&>(e)?t.concat(e):Zt({},Ba(t),Ba(e))}function a3(t,e){const n={};for(const s in t)e.includes(s)||Object.defineProperty(n,s,{enumerable:!0,get:()=>t[s]});return n}function l3(t){const e=cn();let n=t();return Ff(),gu(n)&&(n=n.catch(s=>{throw Nr(e),s})),[n,()=>Nr(e)]}let Pf=!0;function c3(t){const e=np(t),n=t.proxy,s=t.ctx;Pf=!1,e.beforeCreate&&Um(e.beforeCreate,t,"bc");const{data:i,computed:r,methods:o,watch:a,provide:l,inject:c,created:u,beforeMount:d,mounted:f,beforeUpdate:h,updated:p,activated:m,deactivated:_,beforeDestroy:y,beforeUnmount:v,destroyed:g,unmounted:b,render:S,renderTracked:k,renderTriggered:I,errorCaptured:D,serverPrefetch:C,expose:R,inheritAttrs:B,components:$,directives:H,filters:X}=e;if(c&&u3(c,s,null),o)for(const Q in o){const at=o[Q];xt(at)&&(s[Q]=at.bind(n))}if(i){const Q=i.call(n,n);me(Q)&&(t.data=$o(Q))}if(Pf=!0,r)for(const Q in r){const at=r[Q],kt=xt(at)?at.bind(n,n):xt(at.get)?at.get.bind(n,n):Qe,zt=!xt(at)&&xt(at.set)?at.set.bind(n):Qe,Vt=Je({get:kt,set:zt});Object.defineProperty(s,Q,{enumerable:!0,configurable:!0,get:()=>Vt.value,set:Bt=>Vt.value=Bt})}if(a)for(const Q in a)J1(a[Q],s,n,Q);if(l){const Q=xt(l)?l.call(n):l;Reflect.ownKeys(Q).forEach(at=>{_a(at,Q[at])})}u&&Um(u,t,"c");function K(Q,at){gt(at)?at.forEach(kt=>Q(kt.bind(n))):at&&Q(at.bind(n))}if(K(G1,d),K(Vo,f),K(Yh,h),K(Iu,p),K(j1,m),K(B1,_),K(X1,D),K(z1,k),K(q1,I),K(Nu,v),K(ll,b),K(K1,C),gt(R))if(R.length){const Q=t.exposed||(t.exposed={});R.forEach(at=>{Object.defineProperty(Q,at,{get:()=>n[at],set:kt=>n[at]=kt,enumerable:!0})})}else t.exposed||(t.exposed={});S&&t.render===Qe&&(t.render=S),B!=null&&(t.inheritAttrs=B),$&&(t.components=$),H&&(t.directives=H),C&&Xh(t)}function u3(t,e,n=Qe){gt(t)&&(t=Rf(t));for(const s in t){const i=t[s];let r;me(i)?"default"in i?r=us(i.from||s,i.default,!0):r=us(i.from||s):r=us(i),Ie(r)?Object.defineProperty(e,s,{enumerable:!0,configurable:!0,get:()=>r.value,set:o=>r.value=o}):e[s]=r}}function Um(t,e,n){ps(gt(t)?t.map(s=>s.bind(e.proxy)):t.bind(e.proxy),e,n)}function J1(t,e,n,s){let i=s.includes(".")?bv(n,s):()=>n[s];if(Rt(t)){const r=e[t];xt(r)&&Zn(i,r)}else if(xt(t))Zn(i,t.bind(n));else if(me(t))if(gt(t))t.forEach(r=>J1(r,e,n,s));else{const r=xt(t.handler)?t.handler.bind(n):e[t.handler];xt(r)&&Zn(i,r,t)}}function np(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=>Lc(l,c,o,!0)),Lc(l,e,o)),me(e)&&r.set(e,l),l}function Lc(t,e,n,s=!1){const{mixins:i,extends:r}=e;r&&Lc(t,r,n,!0),i&&i.forEach(o=>Lc(t,o,n,!0));for(const o in e)if(!(s&&o==="expose")){const a=d3[o]||n&&n[o];t[o]=a?a(t[o],e[o]):e[o]}return t}const d3={data:Hm,props:jm,emits:jm,methods:aa,computed:aa,beforeCreate:kn,created:kn,beforeMount:kn,mounted:kn,beforeUpdate:kn,updated:kn,beforeDestroy:kn,beforeUnmount:kn,destroyed:kn,unmounted:kn,activated:kn,deactivated:kn,errorCaptured:kn,serverPrefetch:kn,components:aa,directives:aa,watch:h3,provide:Hm,inject:f3};function Hm(t,e){return e?t?function(){return Zt(xt(t)?t.call(this,this):t,xt(e)?e.call(this,this):e)}:e:t}function f3(t,e){return aa(Rf(t),Rf(e))}function Rf(t){if(gt(t)){const e={};for(let n=0;n1)return n&&xt(e)?e.call(s&&s.proxy):e}}function tv(){return!!(cn()||Cr)}const ev={},nv=()=>Object.create(ev),sv=t=>Object.getPrototypeOf(t)===ev;function g3(t,e,n,s=!1){const i={},r=nv();t.propsDefaults=Object.create(null),iv(t,e,i,r);for(const o in t.propsOptions[0])o in i||(i[o]=void 0);n?t.props=s?i:Bh(i):t.type.props?t.props=i:t.props=r,t.attrs=r}function y3(t,e,n,s){const{props:i,attrs:r,vnode:{patchFlag:o}}=t,a=ne(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,h]=rv(d,e,!0);Zt(o,f),h&&a.push(...h)};!n&&e.mixins.length&&e.mixins.forEach(u),t.extends&&u(t.extends),t.mixins&&t.mixins.forEach(u)}if(!r&&!l)return me(t)&&s.set(t,_r),_r;if(gt(r))for(let u=0;ut==="_"||t==="__"||t==="_ctx"||t==="$stable",ip=t=>gt(t)?t.map(Fn):[Fn(t)],v3=(t,e,n)=>{if(e._n)return e;const s=M((...i)=>ip(e(...i)),n);return s._c=!1,s},ov=(t,e,n)=>{const s=t._ctx;for(const i in t){if(sp(i))continue;const r=t[i];if(xt(r))e[i]=v3(i,r,s);else if(r!=null){const o=ip(r);e[i]=()=>o}}},av=(t,e)=>{const n=ip(e);t.slots.default=()=>n},lv=(t,e,n)=>{for(const s in e)(n||!sp(s))&&(t[s]=e[s])},_3=(t,e,n)=>{const s=t.slots=nv();if(t.vnode.shapeFlag&32){const i=e.__;i&&xc(s,"__",i,!0);const r=e._;r?(lv(s,e,n),n&&xc(s,"_",r,!0)):ov(e,s)}else e&&av(t,e)},S3=(t,e,n)=>{const{vnode:s,slots:i}=t;let r=!0,o=Yt;if(s.shapeFlag&32){const a=e._;a?n&&a===1?r=!1:lv(i,e,n):(r=!e.$stable,ov(e,i)),o=e}else e&&(av(t,e),o={default:1});if(r)for(const a in i)!sp(a)&&o[a]==null&&delete i[a]},Ye=Ev;function cv(t){return dv(t)}function uv(t){return dv(t,Rw)}function dv(t,e){const n=rl();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:h=Qe,insertStaticContent:p}=t,m=(A,N,W,st=null,J=null,T=null,x=void 0,V=null,z=!!N.dynamicChildren)=>{if(A===N)return;A&&!As(A,N)&&(st=Y(A),Bt(A,J,T,!0),A=null),N.patchFlag===-2&&(z=!1,N.dynamicChildren=null);const{type:tt,ref:lt,shapeFlag:L}=N;switch(tt){case mi:_(A,N,W,st);break;case Be:y(A,N,W,st);break;case Tr:A==null&&v(N,W,st,x);break;case it:$(A,N,W,st,J,T,x,V,z);break;default:L&1?S(A,N,W,st,J,T,x,V,z):L&6?H(A,N,W,st,J,T,x,V,z):(L&64||L&128)&&tt.process(A,N,W,st,J,T,x,V,z,bt)}lt!=null&&J?po(lt,A&&A.ref,T,N||A,!N):lt==null&&A&&A.ref!=null&&po(A.ref,null,T,A,!0)},_=(A,N,W,st)=>{if(A==null)s(N.el=a(N.children),W,st);else{const J=N.el=A.el;N.children!==A.children&&c(J,N.children)}},y=(A,N,W,st)=>{A==null?s(N.el=l(N.children||""),W,st):N.el=A.el},v=(A,N,W,st)=>{[A.el,A.anchor]=p(A.children,N,W,st,A.el,A.anchor)},g=({el:A,anchor:N},W,st)=>{let J;for(;A&&A!==N;)J=f(A),s(A,W,st),A=J;s(N,W,st)},b=({el:A,anchor:N})=>{let W;for(;A&&A!==N;)W=f(A),i(A),A=W;i(N)},S=(A,N,W,st,J,T,x,V,z)=>{N.type==="svg"?x="svg":N.type==="math"&&(x="mathml"),A==null?k(N,W,st,J,T,x,V,z):C(A,N,J,T,x,V,z)},k=(A,N,W,st,J,T,x,V)=>{let z,tt;const{props:lt,shapeFlag:L,transition:G,dirs:ht}=A;if(z=A.el=o(A.type,T,lt&<.is,lt),L&8?u(z,A.children):L&16&&D(A.children,z,null,st,J,Md(A,T),x,V),ht&&Bs(A,null,st,"created"),I(z,A,A.scopeId,x,st),lt){for(const Kt in lt)Kt!=="value"&&!pi(Kt)&&r(z,Kt,null,lt[Kt],T,st);"value"in lt&&r(z,"value",null,lt.value,T),(tt=lt.onVnodeBeforeMount)&&$n(tt,st,A)}ht&&Bs(A,null,st,"beforeMount");const St=fv(J,G);St&&G.beforeEnter(z),s(z,N,W),((tt=lt&<.onVnodeMounted)||St||ht)&&Ye(()=>{tt&&$n(tt,st,A),St&&G.enter(z),ht&&Bs(A,null,st,"mounted")},J)},I=(A,N,W,st,J)=>{if(W&&h(A,W),st)for(let T=0;T{for(let tt=z;tt{const V=N.el=A.el;let{patchFlag:z,dynamicChildren:tt,dirs:lt}=N;z|=A.patchFlag&16;const L=A.props||Yt,G=N.props||Yt;let ht;if(W&&cr(W,!1),(ht=G.onVnodeBeforeUpdate)&&$n(ht,W,N,A),lt&&Bs(N,A,W,"beforeUpdate"),W&&cr(W,!0),(L.innerHTML&&G.innerHTML==null||L.textContent&&G.textContent==null)&&u(V,""),tt?R(A.dynamicChildren,tt,V,W,st,Md(N,J),T):x||at(A,N,V,null,W,st,Md(N,J),T,!1),z>0){if(z&16)B(V,L,G,W,J);else if(z&2&&L.class!==G.class&&r(V,"class",null,G.class,J),z&4&&r(V,"style",L.style,G.style,J),z&8){const St=N.dynamicProps;for(let Kt=0;Kt{ht&&$n(ht,W,N,A),lt&&Bs(N,A,W,"updated")},st)},R=(A,N,W,st,J,T,x)=>{for(let V=0;V{if(N!==W){if(N!==Yt)for(const T in N)!pi(T)&&!(T in W)&&r(A,T,N[T],null,J,st);for(const T in W){if(pi(T))continue;const x=W[T],V=N[T];x!==V&&T!=="value"&&r(A,T,V,x,J,st)}"value"in W&&r(A,"value",N.value,W.value,J)}},$=(A,N,W,st,J,T,x,V,z)=>{const tt=N.el=A?A.el:a(""),lt=N.anchor=A?A.anchor:a("");let{patchFlag:L,dynamicChildren:G,slotScopeIds:ht}=N;ht&&(V=V?V.concat(ht):ht),A==null?(s(tt,W,st),s(lt,W,st),D(N.children||[],W,lt,J,T,x,V,z)):L>0&&L&64&&G&&A.dynamicChildren?(R(A.dynamicChildren,G,W,J,T,x,V),(N.key!=null||J&&N===J.subTree)&&rp(A,N,!0)):at(A,N,W,lt,J,T,x,V,z)},H=(A,N,W,st,J,T,x,V,z)=>{N.slotScopeIds=V,A==null?N.shapeFlag&512?J.ctx.activate(N,W,st,x,z):X(N,W,st,J,T,x,z):ot(A,N,z)},X=(A,N,W,st,J,T,x)=>{const V=A.component=Av(A,st,J);if(al(A)&&(V.ctx.renderer=bt),xv(V,!1,x),V.asyncDep){if(J&&J.registerDep(V,K,x),!A.el){const z=V.subTree=E(Be);y(null,z,N,W),A.placeholder=z.el}}else K(V,A,N,W,J,T,x)},ot=(A,N,W)=>{const st=N.component=A.component;if(I3(A,N,W))if(st.asyncDep&&!st.asyncResolved){Q(st,N,W);return}else st.next=N,st.update();else N.el=A.el,st.vnode=N},K=(A,N,W,st,J,T,x)=>{const V=()=>{if(A.isMounted){let{next:L,bu:G,u:ht,parent:St,vnode:Kt}=A;{const pt=hv(A);if(pt){L&&(L.el=Kt.el,Q(A,L,x)),pt.asyncDep.then(()=>{A.isUnmounted||V()});return}}let U=L,j;cr(A,!1),L?(L.el=Kt.el,Q(A,L,x)):L=Kt,G&&wr(G),(j=L.props&&L.props.onVnodeBeforeUpdate)&&$n(j,St,L,Kt),cr(A,!0);const q=oc(A),rt=A.subTree;A.subTree=q,m(rt,q,d(rt.el),Y(rt),A,J,T),L.el=q.el,U===null&&Ru(A,q.el),ht&&Ye(ht,J),(j=L.props&&L.props.onVnodeUpdated)&&Ye(()=>$n(j,St,L,Kt),J)}else{let L;const{el:G,props:ht}=N,{bm:St,m:Kt,parent:U,root:j,type:q}=A,rt=Zi(N);if(cr(A,!1),St&&wr(St),!rt&&(L=ht&&ht.onVnodeBeforeMount)&&$n(L,U,N),cr(A,!0),G&&Xt){const pt=()=>{A.subTree=oc(A),Xt(G,A.subTree,A,J,null)};rt&&q.__asyncHydrate?q.__asyncHydrate(G,A,pt):pt()}else{j.ce&&j.ce._def.shadowRoot!==!1&&j.ce._injectChildStyle(q);const pt=A.subTree=oc(A);m(null,pt,W,st,A,J,T),N.el=pt.el}if(Kt&&Ye(Kt,J),!rt&&(L=ht&&ht.onVnodeMounted)){const pt=N;Ye(()=>$n(L,U,pt),J)}(N.shapeFlag&256||U&&Zi(U.vnode)&&U.vnode.shapeFlag&256)&&A.a&&Ye(A.a,J),A.isMounted=!0,N=W=st=null}};A.scope.on();const z=A.effect=new $a(V);A.scope.off();const tt=A.update=z.run.bind(z),lt=A.job=z.runIfDirty.bind(z);lt.i=A,lt.id=A.uid,z.scheduler=()=>Kh(lt),cr(A,!0),tt()},Q=(A,N,W)=>{N.component=A;const st=A.vnode.props;A.vnode=N,A.next=null,y3(A,N.props,st,W),S3(A,N.children,W),_i(),Pm(A),Si()},at=(A,N,W,st,J,T,x,V,z=!1)=>{const tt=A&&A.children,lt=A?A.shapeFlag:0,L=N.children,{patchFlag:G,shapeFlag:ht}=N;if(G>0){if(G&128){zt(tt,L,W,st,J,T,x,V,z);return}else if(G&256){kt(tt,L,W,st,J,T,x,V,z);return}}ht&8?(lt&16&&Wt(tt,J,T),L!==tt&&u(W,L)):lt&16?ht&16?zt(tt,L,W,st,J,T,x,V,z):Wt(tt,J,T,!0):(lt&8&&u(W,""),ht&16&&D(L,W,st,J,T,x,V,z))},kt=(A,N,W,st,J,T,x,V,z)=>{A=A||_r,N=N||_r;const tt=A.length,lt=N.length,L=Math.min(tt,lt);let G;for(G=0;Glt?Wt(A,J,T,!0,!1,L):D(N,W,st,J,T,x,V,z,L)},zt=(A,N,W,st,J,T,x,V,z)=>{let tt=0;const lt=N.length;let L=A.length-1,G=lt-1;for(;tt<=L&&tt<=G;){const ht=A[tt],St=N[tt]=z?Hi(N[tt]):Fn(N[tt]);if(As(ht,St))m(ht,St,W,null,J,T,x,V,z);else break;tt++}for(;tt<=L&&tt<=G;){const ht=A[L],St=N[G]=z?Hi(N[G]):Fn(N[G]);if(As(ht,St))m(ht,St,W,null,J,T,x,V,z);else break;L--,G--}if(tt>L){if(tt<=G){const ht=G+1,St=htG)for(;tt<=L;)Bt(A[tt],J,T,!0),tt++;else{const ht=tt,St=tt,Kt=new Map;for(tt=St;tt<=G;tt++){const Lt=N[tt]=z?Hi(N[tt]):Fn(N[tt]);Lt.key!=null&&Kt.set(Lt.key,tt)}let U,j=0;const q=G-St+1;let rt=!1,pt=0;const At=new Array(q);for(tt=0;tt=q){Bt(Lt,J,T,!0);continue}let ce;if(Lt.key!=null)ce=Kt.get(Lt.key);else for(U=St;U<=G;U++)if(At[U-St]===0&&As(Lt,N[U])){ce=U;break}ce===void 0?Bt(Lt,J,T,!0):(At[ce-St]=tt+1,ce>=pt?pt=ce:rt=!0,m(Lt,N[ce],W,null,J,T,x,V,z),j++)}const $t=rt?E3(At):_r;for(U=$t.length-1,tt=q-1;tt>=0;tt--){const Lt=St+tt,ce=N[Lt],Nt=N[Lt+1],Et=Lt+1{const{el:T,type:x,transition:V,children:z,shapeFlag:tt}=A;if(tt&6){Vt(A.component.subTree,N,W,st);return}if(tt&128){A.suspense.move(N,W,st);return}if(tt&64){x.move(A,N,W,bt);return}if(x===it){s(T,N,W);for(let L=0;LV.enter(T),J);else{const{leave:L,delayLeave:G,afterLeave:ht}=V,St=()=>{A.ctx.isUnmounted?i(T):s(T,N,W)},Kt=()=>{L(T,()=>{St(),ht&&ht()})};G?G(T,St,Kt):Kt()}else s(T,N,W)},Bt=(A,N,W,st=!1,J=!1)=>{const{type:T,props:x,ref:V,children:z,dynamicChildren:tt,shapeFlag:lt,patchFlag:L,dirs:G,cacheIndex:ht}=A;if(L===-2&&(J=!1),V!=null&&(_i(),po(V,null,W,A,!0),Si()),ht!=null&&(N.renderCache[ht]=void 0),lt&256){N.ctx.deactivate(A);return}const St=lt&1&&G,Kt=!Zi(A);let U;if(Kt&&(U=x&&x.onVnodeBeforeUnmount)&&$n(U,N,A),lt&6)Se(A.component,W,st);else{if(lt&128){A.suspense.unmount(W,st);return}St&&Bs(A,null,N,"beforeUnmount"),lt&64?A.type.remove(A,N,W,bt,st):tt&&!tt.hasOnce&&(T!==it||L>0&&L&64)?Wt(tt,N,W,!1,!0):(T===it&&L&384||!J&<&16)&&Wt(z,N,W),st&&ge(A)}(Kt&&(U=x&&x.onVnodeUnmounted)||St)&&Ye(()=>{U&&$n(U,N,A),St&&Bs(A,null,N,"unmounted")},W)},ge=A=>{const{type:N,el:W,anchor:st,transition:J}=A;if(N===it){ve(W,st);return}if(N===Tr){b(A);return}const T=()=>{i(W),J&&!J.persisted&&J.afterLeave&&J.afterLeave()};if(A.shapeFlag&1&&J&&!J.persisted){const{leave:x,delayLeave:V}=J,z=()=>x(W,T);V?V(A.el,T,z):z()}else T()},ve=(A,N)=>{let W;for(;A!==N;)W=f(A),i(A),A=W;i(N)},Se=(A,N,W)=>{const{bum:st,scope:J,job:T,subTree:x,um:V,m:z,a:tt,parent:lt,slots:{__:L}}=A;Mc(z),Mc(tt),st&&wr(st),lt&>(L)&&L.forEach(G=>{lt.renderCache[G]=void 0}),J.stop(),T&&(T.flags|=8,Bt(x,A,N,W)),V&&Ye(V,N),Ye(()=>{A.isUnmounted=!0},N),N&&N.pendingBranch&&!N.isUnmounted&&A.asyncDep&&!A.asyncResolved&&A.suspenseId===N.pendingId&&(N.deps--,N.deps===0&&N.resolve())},Wt=(A,N,W,st=!1,J=!1,T=0)=>{for(let x=T;x{if(A.shapeFlag&6)return Y(A.component.subTree);if(A.shapeFlag&128)return A.suspense.next();const N=f(A.anchor||A.el),W=N&&N[D1];return W?f(W):N};let dt=!1;const ct=(A,N,W)=>{A==null?N._vnode&&Bt(N._vnode,null,null,!0):m(N._vnode||null,A,N,null,null,null,W),N._vnode=A,dt||(dt=!0,Pm(),Dc(),dt=!1)},bt={p:m,um:Bt,m:Vt,r:ge,mt:X,mc:D,pc:at,pbc:R,n:Y,o:t};let Ut,Xt;return e&&([Ut,Xt]=e(bt)),{render:ct,hydrate:Ut,createApp:m3(ct,Ut)}}function Md({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 cr({effect:t,job:e},n){n?(t.flags|=32,e.flags|=4):(t.flags&=-33,e.flags&=-5)}function fv(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function rp(t,e,n=!1){const s=t.children,i=e.children;if(gt(s)&>(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 hv(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:hv(e)}function Mc(t){if(t)for(let e=0;eus(pv);function gv(t,e){return ul(t,null,e)}function w3(t,e){return ul(t,null,{flush:"post"})}function yv(t,e){return ul(t,null,{flush:"sync"})}function Zn(t,e,n){return ul(t,e,n)}function ul(t,e,n=Yt){const{immediate:s,deep:i,flush:r,once:o}=n,a=Zt({},n),l=e&&s||!e&&r!=="post";let c;if(So){if(r==="sync"){const h=mv();c=h.__watcherHandles||(h.__watcherHandles=[])}else if(!l){const h=()=>{};return h.stop=Qe,h.resume=Qe,h.pause=Qe,h}}const u=an;a.call=(h,p,m)=>ps(h,u,p,m);let d=!1;r==="post"?a.scheduler=h=>{Ye(h,u&&u.suspense)}:r!=="sync"&&(d=!0,a.scheduler=(h,p)=>{p?h():Kh(h)}),a.augmentJob=h=>{e&&(h.flags|=4),d&&(h.flags|=2,u&&(h.id=u.uid,h.i=u))};const f=mw(t,e,a);return So&&(c?c.push(f):l&&f()),f}function k3(t,e,n){const s=this.proxy,i=Rt(t)?t.includes(".")?bv(s,t):()=>s[t]:t.bind(s,s);let r;xt(e)?r=e:(r=e.handler,n=e);const o=Nr(this),a=ul(i,r.bind(s),n);return o(),a}function bv(t,e){const n=e.split(".");return()=>{let s=t;for(let i=0;i{let u,d=Yt,f;return yv(()=>{const h=t[i];gn(u,h)&&(u=h,c())}),{get(){return l(),n.get?n.get(u):u},set(h){const p=n.set?n.set(h):h;if(!gn(p,u)&&!(d!==Yt&&gn(h,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=h,c()),s.emit(`update:${e}`,p),gn(h,p)&&gn(h,d)&&!gn(p,f)&&c(),d=h,f=p}}});return a[Symbol.iterator]=()=>{let l=0;return{next(){return l<2?{value:l++?o||Yt:a,done:!1}:{done:!0}}}},a}const vv=(t,e)=>e==="modelValue"||e==="model-value"?t.modelModifiers:t[`${e}Modifiers`]||t[`${Ce(e)}Modifiers`]||t[`${bn(e)}Modifiers`];function T3(t,e,...n){if(t.isUnmounted)return;const s=t.vnode.props||Yt;let i=n;const r=e.startsWith("update:"),o=r&&vv(s,e.slice(7));o&&(o.trim&&(i=n.map(u=>Rt(u)?u.trim():u)),o.number&&(i=n.map(La)));let a,l=s[a=Er(e)]||s[a=Er(Ce(e))];!l&&r&&(l=s[a=Er(bn(e))]),l&&ps(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,ps(c,t,6,i)}}function _v(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(!xt(t)){const l=c=>{const u=_v(c,e,!0);u&&(a=!0,Zt(o,u))};!n&&e.mixins.length&&e.mixins.forEach(l),t.extends&&l(t.extends),t.mixins&&t.mixins.forEach(l)}return!r&&!a?(me(t)&&s.set(t,null),null):(gt(r)?r.forEach(l=>o[l]=null):Zt(o,r),me(t)&&s.set(t,o),o)}function Pu(t,e){return!t||!nr(e)?!1:(e=e.slice(2).replace(/Once$/,""),ue(t,e[0].toLowerCase()+e.slice(1))||ue(t,bn(e))||ue(t,e))}function oc(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:h,ctx:p,inheritAttrs:m}=t,_=ja(t);let y,v;try{if(n.shapeFlag&4){const b=i||s,S=b;y=Fn(c.call(S,b,u,d,h,f,p)),v=a}else{const b=e;y=Fn(b.length>1?b(d,{attrs:a,slots:o,emit:l}):b(d,null)),v=e.props?a:O3(a)}}catch(b){Sa.length=0,Fr(b,t,1),y=E(Be)}let g=y;if(v&&m!==!1){const b=Object.keys(v),{shapeFlag:S}=g;b.length&&S&7&&(r&&b.some(pu)&&(v=x3(v,r)),g=Xs(g,v,!1,!0))}return n.dirs&&(g=Xs(g,null,!1,!0),g.dirs=g.dirs?g.dirs.concat(n.dirs):n.dirs),n.transition&&wi(g,n.transition),y=g,ja(_),y}function A3(t,e=!0){let n;for(let s=0;s{let e;for(const n in t)(n==="class"||n==="style"||nr(n))&&((e||(e={}))[n]=t[n]);return e},x3=(t,e)=>{const n={};for(const s in t)(!pu(s)||!(s.slice(9)in e))&&(n[s]=t[s]);return n};function I3(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?Wm(s,o,c):!!o;if(l&8){const u=e.dynamicProps;for(let d=0;dt.__isSuspense;let Lf=0;const N3={name:"Suspense",__isSuspense:!0,process(t,e,n,s,i,r,o,a,l,c){if(t==null)R3(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}D3(t,e,n,s,i,o,a,l,c)}},hydrate:L3,normalize:M3},P3=N3;function Wa(t,e){const n=t.props&&t.props[e];xt(n)&&n()}function R3(t,e,n,s,i,r,o,a,l){const{p:c,o:{createElement:u}}=l,d=u("div"),f=t.suspense=Sv(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?(Wa(t,"onPending"),Wa(t,"onFallback"),c(null,t.ssFallback,e,n,s,null,r,o),mo(f,t.ssFallback)):f.resolve(!1,!0)}function D3(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,h=e.ssFallback,{activeBranch:p,pendingBranch:m,isInFallback:_,isHydrating:y}=d;if(m)d.pendingBranch=f,As(f,m)?(l(m,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0?d.resolve():_&&(y||(l(p,h,n,s,i,null,r,o,a),mo(d,h)))):(d.pendingId=Lf++,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(p,h,n,s,i,null,r,o,a),mo(d,h))):p&&As(f,p)?(l(p,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(p&&As(f,p))l(p,f,n,s,i,d,r,o,a),mo(d,f);else if(Wa(e,"onPending"),d.pendingBranch=f,f.shapeFlag&512?d.pendingId=f.component.suspenseId:d.pendingId=Lf++,l(null,f,d.hiddenContainer,null,i,d,r,o,a),d.deps<=0)d.resolve();else{const{timeout:v,pendingId:g}=d;v>0?setTimeout(()=>{d.pendingId===g&&d.fallback(h)},v):v===0&&d.fallback(h)}}function Sv(t,e,n,s,i,r,o,a,l,c,u=!1){const{p:d,m:f,um:h,n:p,o:{parentNode:m,remove:_}}=c;let y;const v=$3(t);v&&e&&e.pendingBranch&&(y=e.pendingId,e.deps++);const g=t.props?Ma(t.props.timeout):void 0,b=r,S={vnode:t,parent:e,parentComponent:n,namespace:o,container:s,hiddenContainer:i,deps:0,pendingId:Lf++,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(k=!1,I=!1){const{vnode:D,activeBranch:C,pendingBranch:R,pendingId:B,effects:$,parentComponent:H,container:X}=S;let ot=!1;S.isHydrating?S.isHydrating=!1:k||(ot=C&&R.transition&&R.transition.mode==="out-in",ot&&(C.transition.afterLeave=()=>{B===S.pendingId&&(f(R,X,r===b?p(C):r,0),Ua($))}),C&&(m(C.el)===X&&(r=p(C)),h(C,H,S,!0)),ot||f(R,X,r,0)),mo(S,R),S.pendingBranch=null,S.isInFallback=!1;let K=S.parent,Q=!1;for(;K;){if(K.pendingBranch){K.effects.push(...$),Q=!0;break}K=K.parent}!Q&&!ot&&Ua($),S.effects=[],v&&e&&e.pendingBranch&&y===e.pendingId&&(e.deps--,e.deps===0&&!I&&e.resolve()),Wa(D,"onResolve")},fallback(k){if(!S.pendingBranch)return;const{vnode:I,activeBranch:D,parentComponent:C,container:R,namespace:B}=S;Wa(I,"onFallback");const $=p(D),H=()=>{S.isInFallback&&(d(null,k,R,$,C,null,B,a,l),mo(S,k))},X=k.transition&&k.transition.mode==="out-in";X&&(D.transition.afterLeave=H),S.isInFallback=!0,h(D,C,null,!0),X||H()},move(k,I,D){S.activeBranch&&f(S.activeBranch,k,I,D),S.container=k},next(){return S.activeBranch&&p(S.activeBranch)},registerDep(k,I,D){const C=!!S.pendingBranch;C&&S.deps++;const R=k.vnode.el;k.asyncDep.catch(B=>{Fr(B,k,0)}).then(B=>{if(k.isUnmounted||S.isUnmounted||S.pendingId!==k.suspenseId)return;k.asyncResolved=!0;const{vnode:$}=k;Vf(k,B,!1),R&&($.el=R);const H=!R&&k.subTree.el;I(k,$,m(R||k.subTree.el),R?null:p(k.subTree),S,o,D),H&&_(H),Ru(k,$.el),C&&--S.deps===0&&S.resolve()})},unmount(k,I){S.isUnmounted=!0,S.activeBranch&&h(S.activeBranch,n,k,I),S.pendingBranch&&h(S.pendingBranch,n,k,I)}};return S}function L3(t,e,n,s,i,r,o,a,l){const c=e.suspense=Sv(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 M3(t){const{shapeFlag:e,children:n}=t,s=e&32;t.ssContent=Gm(s?n.default:n),t.ssFallback=s?Gm(n.fallback):E(Be)}function Gm(t){let e;if(xt(t)){const n=Ir&&t._c;n&&(t._d=!1,O()),t=t(),n&&(t._d=!0,e=En,wv())}return gt(t)&&(t=A3(t)),t=Fn(t),e&&!t.dynamicChildren&&(t.dynamicChildren=e.filter(n=>n!==t)),t}function Ev(t,e){e&&e.pendingBranch?gt(t)?e.effects.push(...t):e.effects.push(t):Ua(t)}function mo(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,Ru(s,i))}function $3(t){const e=t.props&&t.props.suspensible;return e!=null&&e!==!1}const it=Symbol.for("v-fgt"),mi=Symbol.for("v-txt"),Be=Symbol.for("v-cmt"),Tr=Symbol.for("v-stc"),Sa=[];let En=null;function O(t=!1){Sa.push(En=t?null:[])}function wv(){Sa.pop(),En=Sa[Sa.length-1]||null}let Ir=1;function Mf(t,e=!1){Ir+=t,t<0&&En&&e&&(En.hasOnce=!0)}function kv(t){return t.dynamicChildren=Ir>0?En||_r:null,wv(),Ir>0&&En&&En.push(t),t}function F(t,e,n,s,i,r){return kv(P(t,e,n,s,i,r,!0))}function yt(t,e,n,s,i){return kv(E(t,e,n,s,i,!0))}function ki(t){return t?t.__v_isVNode===!0:!1}function As(t,e){return t.type===e.type&&t.key===e.key}function F3(t){}const Cv=({key:t})=>t??null,ac=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?Rt(t)||Ie(t)||xt(t)?{i:ln,r:t,k:e,f:!!n}:t:null);function P(t,e=null,n=null,s=0,i=null,r=t===it?0:1,o=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&Cv(e),ref:e&&ac(e),scopeId:Au,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:ln};return a?(op(l,n),r&128&&t.normalize(l)):n&&(l.shapeFlag|=Rt(n)?8:16),Ir>0&&!o&&En&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&En.push(l),l}const E=V3;function V3(t,e=null,n=null,s=0,i=null,r=!1){if((!t||t===Y1)&&(t=Be),ki(t)){const a=Xs(t,e,!0);return n&&op(a,n),Ir>0&&!r&&En&&(a.shapeFlag&6?En[En.indexOf(t)]=a:En.push(a)),a.patchFlag=-2,a}if(q3(t)&&(t=t.__vccOpts),e){e=Tv(e);let{class:a,style:l}=e;a&&!Rt(a)&&(e.class=Gt(a)),me(l)&&(ku(l)&&!gt(l)&&(l=Zt({},l)),e.style=Mo(l))}const o=Rt(t)?1:$c(t)?128:L1(t)?64:me(t)?4:xt(t)?2:0;return P(t,e,n,s,i,o,r,!0)}function Tv(t){return t?ku(t)||sv(t)?Zt({},t):t:null}function Xs(t,e,n=!1,s=!1){const{props:i,ref:r,patchFlag:o,children:a,transition:l}=t,c=e?co(i||{},e):i,u={__v_isVNode:!0,__v_skip:!0,type:t.type,props:c,key:c&&Cv(c),ref:e&&e.ref?n&&r?gt(r)?r.concat(ac(e)):[r,ac(e)]:ac(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!==it?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&&Xs(t.ssContent),ssFallback:t.ssFallback&&Xs(t.ssFallback),placeholder:t.placeholder,el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return l&&s&&wi(u,l.clone(u)),u}function Ys(t=" ",e=0){return E(mi,null,t,e)}function U3(t,e){const n=E(Tr,null,t);return n.staticCount=e,n}function _t(t="",e=!1){return e?(O(),yt(Be,null,t)):E(Be,null,t)}function Fn(t){return t==null||typeof t=="boolean"?E(Be):gt(t)?E(it,null,t.slice()):ki(t)?Hi(t):E(mi,null,String(t))}function Hi(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:Xs(t)}function op(t,e){let n=0;const{shapeFlag:s}=t;if(e==null)e=null;else if(gt(e))n=16;else if(typeof e=="object")if(s&65){const i=e.default;i&&(i._c&&(i._d=!1),op(t,i()),i._c&&(i._d=!0));return}else{n=32;const i=e._;!i&&!sv(e)?e._ctx=ln:i===3&&ln&&(ln.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else xt(e)?(e={default:e,_ctx:ln},n=32):(e=String(e),s&64?(n=16,e=[Ys(e)]):n=8);t.children=e,t.shapeFlag|=n}function co(...t){const e={};for(let n=0;nan||ln;let Fc,$f;{const t=rl(),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)}};Fc=e("__VUE_INSTANCE_SETTERS__",n=>an=n),$f=e("__VUE_SSR_SETTERS__",n=>So=n)}const Nr=t=>{const e=an;return Fc(t),t.scope.on(),()=>{t.scope.off(),Fc(e)}},Ff=()=>{an&&an.scope.off(),Fc(null)};function Ov(t){return t.vnode.shapeFlag&4}let So=!1;function xv(t,e=!1,n=!1){e&&$f(e);const{props:s,children:i}=t.vnode,r=Ov(t);g3(t,s,r,e),_3(t,i,n||e);const o=r?B3(t,e):void 0;return e&&$f(!1),o}function B3(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,Nf);const{setup:s}=n;if(s){_i();const i=t.setupContext=s.length>1?Nv(t):null,r=Nr(t),o=Fo(s,t,0,[t.props,i]),a=gu(o);if(Si(),r(),(a||t.sp)&&!Zi(t)&&Xh(t),a){if(o.then(Ff,Ff),e)return o.then(l=>{Vf(t,l,e)}).catch(l=>{Fr(l,t,0)});t.asyncDep=o}else Vf(t,o,e)}else Iv(t,e)}function Vf(t,e,n){xt(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:me(e)&&(t.setupState=Gh(e)),Iv(t,n)}let Vc,Uf;function W3(t){Vc=t,Uf=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,Xw))}}const G3=()=>!Vc;function Iv(t,e,n){const s=t.type;if(!t.render){if(!e&&Vc&&!s.render){const i=s.template||np(t).template;if(i){const{isCustomElement:r,compilerOptions:o}=t.appContext.config,{delimiters:a,compilerOptions:l}=s,c=Zt(Zt({isCustomElement:r,delimiters:a},o),l);s.render=Vc(i,c)}}t.render=s.render||Qe,Uf&&Uf(t)}{const i=Nr(t);_i();try{c3(t)}finally{Si(),i()}}}const K3={get(t,e){return yn(t,"get",""),t[e]}};function Nv(t){const e=n=>{t.exposed=n||{}};return{attrs:new Proxy(t.attrs,K3),slots:t.slots,emit:t.emit,expose:e}}function dl(t){return t.exposed?t.exposeProxy||(t.exposeProxy=new Proxy(Gh(Cu(t.exposed)),{get(e,n){if(n in e)return e[n];if(n in va)return va[n](t)},has(e,n){return n in e||n in va}})):t.proxy}function Hf(t,e=!0){return xt(t)?t.displayName||t.name:t.name||e&&t.__name}function q3(t){return xt(t)&&"__vccOpts"in t}const Je=(t,e)=>dw(t,e,So);function Ws(t,e,n){const s=arguments.length;return s===2?me(e)&&!gt(e)?ki(e)?E(t,null,[e]):E(t,e):E(t,null,e):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&ki(n)&&(n=[n]),E(t,e,n))}function z3(){}function X3(t,e,n,s){const i=n[s];if(i&&Pv(i,t))return i;const r=e();return r.memo=t.slice(),r.cacheIndex=s,n[s]=r}function Pv(t,e){const n=t.memo;if(n.length!=e.length)return!1;for(let s=0;s0&&En&&En.push(t),!0}const Rv="3.5.18",Y3=Qe,Z3=_w,J3=no,Q3=R1,tk={createComponentInstance:Av,setupComponent:xv,renderComponentRoot:oc,setCurrentRenderingInstance:ja,isVNode:ki,normalizeVNode:Fn,getComponentPublicInstance:dl,ensureValidVNode:ep,pushWarningContext:gw,popWarningContext:yw},ek=tk,nk=null,sk=null,ik=null;/** * @vue/runtime-dom v3.5.18 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Ff;const Hm=typeof window<"u"&&window.trustedTypes;if(Hm)try{Ff=Hm.createPolicy("vue",{createHTML:t=>t})}catch{}const x1=Ff?t=>Ff.createHTML(t):t=>t,Qw="http://www.w3.org/2000/svg",tk="http://www.w3.org/1998/Math/MathML",ri=typeof document<"u"?document:null,Um=ri&&ri.createElement("template"),ek={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"?ri.createElementNS(Qw,t):e==="mathml"?ri.createElementNS(tk,t):n?ri.createElement(t,{is:n}):ri.createElement(t);return t==="select"&&s&&s.multiple!=null&&i.setAttribute("multiple",s.multiple),i},createText:t=>ri.createTextNode(t),createComment:t=>ri.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>ri.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{Um.innerHTML=x1(s==="svg"?`${t}`:s==="mathml"?`${t}`:t);const a=Um.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]}},Oi="transition",qo="animation",vo=Symbol("_vtc"),I1={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},N1=Zt({},Wh,I1),nk=t=>(t.displayName="Transition",t.props=N1,t),P1=nk((t,{slots:e})=>js(Lv,D1(t),e)),lr=(t,e=[])=>{gt(t)?t.forEach(n=>n(...e)):t&&t(...e)},jm=t=>t?gt(t)?t.some(e=>e.length>1):t.length>1:!1;function D1(t){const e={};for(const $ in t)$ in I1||(e[$]=t[$]);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:h=`${n}-leave-to`}=t,p=sk(i),m=p&&p[0],b=p&&p[1],{onBeforeEnter:y,onEnter:_,onEnterCancelled:g,onLeave:v,onLeaveCancelled:S,onBeforeAppear:k=y,onAppear:I=_,onAppearCancelled:M=g}=e,T=($,U,X,ot)=>{$._enterCancelled=ot,Li($,U?u:a),Li($,U?c:o),X&&X()},D=($,U)=>{$._isLeaving=!1,Li($,d),Li($,h),Li($,f),U&&U()},B=$=>(U,X)=>{const ot=$?I:_,K=()=>T(U,$,X);lr(ot,[U,K]),Bm(()=>{Li(U,$?l:r),Fs(U,$?u:a),jm(ot)||Wm(U,s,m,K)})};return Zt(e,{onBeforeEnter($){lr(y,[$]),Fs($,r),Fs($,o)},onBeforeAppear($){lr(k,[$]),Fs($,l),Fs($,c)},onEnter:B(!1),onAppear:B(!0),onLeave($,U){$._isLeaving=!0;const X=()=>D($,U);Fs($,d),$._enterCancelled?(Fs($,f),Vf()):(Vf(),Fs($,f)),Bm(()=>{$._isLeaving&&(Li($,d),Fs($,h),jm(v)||Wm($,s,b,X))}),lr(v,[$,X])},onEnterCancelled($){T($,!1,void 0,!0),lr(g,[$])},onAppearCancelled($){T($,!0,void 0,!0),lr(M,[$])},onLeaveCancelled($){D($),lr(S,[$])}})}function sk(t){if(t==null)return null;if(me(t))return[Pd(t.enter),Pd(t.leave)];{const e=Pd(t);return[e,e]}}function Pd(t){return Ia(t)}function Fs(t,e){e.split(/\s+/).forEach(n=>n&&t.classList.add(n)),(t[vo]||(t[vo]=new Set)).add(e)}function Li(t,e){e.split(/\s+/).forEach(s=>s&&t.classList.remove(s));const n=t[vo];n&&(n.delete(e),n.size||(t[vo]=void 0))}function Bm(t){requestAnimationFrame(()=>{requestAnimationFrame(t)})}let ik=0;function Wm(t,e,n,s){const i=t._endId=++ik,r=()=>{i===t._endId&&s()};if(n!=null)return setTimeout(r,n);const{type:o,timeout:a,propCount:l}=M1(t,e);if(!o)return s();const c=o+"end";let u=0;const d=()=>{t.removeEventListener(c,f),r()},f=h=>{h.target===t&&++u>=l&&d()};setTimeout(()=>{u(n[p]||"").split(", "),i=s(`${Oi}Delay`),r=s(`${Oi}Duration`),o=Gm(i,r),a=s(`${qo}Delay`),l=s(`${qo}Duration`),c=Gm(a,l);let u=null,d=0,f=0;e===Oi?o>0&&(u=Oi,d=o,f=r.length):e===qo?c>0&&(u=qo,d=c,f=l.length):(d=Math.max(o,c),u=d>0?o>c?Oi:qo:null,f=u?u===Oi?r.length:l.length:0);const h=u===Oi&&/\b(transform|all)(,|$)/.test(s(`${Oi}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:h}}function Gm(t,e){for(;t.lengthKm(n)+Km(t[s])))}function Km(t){return t==="auto"?0:Number(t.slice(0,-1).replace(",","."))*1e3}function Vf(){return document.body.offsetHeight}function rk(t,e,n){const s=t[vo];s&&(e=(e?[e,...s]:[...s]).join(" ")),e==null?t.removeAttribute("class"):n?t.setAttribute("class",e):t.className=e}const Mc=Symbol("_vod"),L1=Symbol("_vsh"),Lc={beforeMount(t,{value:e},{transition:n}){t[Mc]=t.style.display==="none"?"":t.style.display,n&&e?n.beforeEnter(t):Xo(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),Xo(t,!0),s.enter(t)):s.leave(t,()=>{Xo(t,!1)}):Xo(t,e))},beforeUnmount(t,{value:e}){Xo(t,e)}};function Xo(t,e){t.style.display=e?t[Mc]:"none",t[L1]=!e}function ok(){Lc.getSSRProps=({value:t})=>{if(!t)return{style:{display:"none"}}}}const R1=Symbol("");function sp(t){const e=cn();if(!e)return;const n=e.ut=(i=t(e.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${e.uid}"]`)).forEach(r=>Rc(r,i))},s=()=>{const i=t(e.proxy);e.ce?Rc(e.ce,i):Hf(e.subTree,i),n(i)};Kh(()=>{Ma(s)}),Ro(()=>{Xn(s,Qe,{flush:"post"});const i=new MutationObserver(s);i.observe(e.subTree.el.parentNode,{childList:!0}),nl(()=>i.disconnect())})}function Hf(t,e){if(t.shapeFlag&128){const n=t.suspense;t=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Hf(n.activeBranch,e)})}for(;t.component;)t=t.component.subTree;if(t.shapeFlag&1&&t.el)Rc(t.el,e);else if(t.type===it)t.children.forEach(n=>Hf(n,e));else if(t.type===kr){let{el:n,anchor:s}=t;for(;n&&(Rc(n,e),n!==s);)n=n.nextSibling}}function Rc(t,e){if(t.nodeType===1){const n=t.style;let s="";for(const i in e){const r=nv(e[i]);n.setProperty(`--${i}`,r),s+=`--${i}: ${r};`}n[R1]=s}}const ak=/(^|;)\s*display\s*:/;function lk(t,e,n){const s=t.style,i=Dt(n);let r=!1;if(n&&!i){if(e)if(Dt(e))for(const o of e.split(";")){const a=o.slice(0,o.indexOf(":")).trim();n[a]==null&&nc(s,a,"")}else for(const o in e)n[o]==null&&nc(s,o,"");for(const o in n)o==="display"&&(r=!0),nc(s,o,n[o])}else if(i){if(e!==n){const o=s[R1];o&&(n+=";"+o),s.cssText=n,r=ak.test(n)}}else e&&t.removeAttribute("style");Mc in t&&(t[Mc]=r?s.display:"",t[L1]&&(s.display="none"))}const zm=/\s*!important$/;function nc(t,e,n){if(gt(n))n.forEach(s=>nc(t,e,s));else if(n==null&&(n=""),e.startsWith("--"))t.setProperty(e,n);else{const s=ck(t,e);zm.test(n)?t.setProperty(bn(s),n.replace(zm,""),"important"):t[s]=n}}const qm=["Webkit","Moz","ms"],Dd={};function ck(t,e){const n=Dd[e];if(n)return n;let s=Te(e);if(s!=="filter"&&s in t)return Dd[e]=s;s=nr(s);for(let i=0;iMd||(hk.then(()=>Md=0),Md=Date.now());function mk(t,e){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;fs(gk(s,n.value),e,5,[s])};return n.value=t,n.attached=pk(),n}function gk(t,e){if(gt(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 tg=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>96&&t.charCodeAt(2)<123,yk=(t,e,n,s,i,r)=>{const o=i==="svg";e==="class"?rk(t,s,o):e==="style"?lk(t,n,s):tr(e)?lu(e)||dk(t,e,n,s,r):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):bk(t,e,s,o))?(Zm(t,e,s),!t.tagName.includes("-")&&(e==="value"||e==="checked"||e==="selected")&&Ym(t,e,s,o,r,e!=="value")):t._isVueCE&&(/[A-Z]/.test(e)||!Dt(s))?Zm(t,Te(e),s,r,e):(e==="true-value"?t._trueValue=s:e==="false-value"&&(t._falseValue=s),Ym(t,e,s,o))};function bk(t,e,n,s){if(s)return!!(e==="innerHTML"||e==="textContent"||e in t&&tg(e)&&xt(n));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="autocorrect"||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 tg(e)&&Dt(n)?!1:e in t}const eg={};/*! #__NO_SIDE_EFFECTS__ */function $1(t,e,n){const s=Ti(t,e);Ja(s)&&Zt(s,e);class i extends Ou{constructor(o){super(s,o,n)}}return i.def=s,i}/*! #__NO_SIDE_EFFECTS__ */const vk=(t,e)=>$1(t,e,X1),_k=typeof HTMLElement<"u"?HTMLElement:class{};class Ou extends _k{constructor(e,n={},s=Fc){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!==Fc?this._root=this.shadowRoot:e.shadowRoot!==!1?(this.attachShadow({mode:"open"}),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let e=this;for(;e=e&&(e.parentNode||e.host);)if(e instanceof Ou){this._parent=e;break}this._instance||(this._resolved?this._mount(this._def):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._inheritParentContext(e))}_inheritParentContext(e=this._parent){e&&this._app&&Object.setPrototypeOf(this._app._context.provides,e._instance.provides)}disconnectedCallback(){this._connected=!1,$r(()=>{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&&!gt(r))for(const l in r){const c=r[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=Ia(this._props[l])),(a||(a=Object.create(null)))[Te(l)]=!0)}this._numberProps=a,this._resolveProps(s),this.shadowRoot&&this._applyStyles(o),this._mount(s)},n=this._def.__asyncLoader;n?this._pendingResolve=n().then(s=>{s.configureApp=this._def.configureApp,e(this._def=s,!0)}):e(this._def)}_mount(e){this._app=this._createApp(e),this._inheritParentContext(),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)ue(this,s)||Object.defineProperty(this,s,{get:()=>Fn(n[s])})}_resolveProps(e){const{props:n}=e,s=gt(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(Te))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):eg;const i=Te(e);n&&this._numberProps&&this._numberProps[i]&&(s=Ia(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===eg?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(bn(e),""):typeof n=="string"||typeof n=="number"?this.setAttribute(bn(e),n+""):n||this.removeAttribute(bn(e)),r&&r.observe(this,{attributes:!0})}}_update(){const e=this._createVNode();this._app&&(e.appContext=this._app._context),q1(e,this._root)}_createVNode(){const e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));const n=E(this._def,Zt(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,Ja(o[0])?Zt({detail:o},o[0]):{detail:o}))};s.emit=(r,...o)=>{i(r,o),bn(r)!==r&&i(bn(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),kk=wk({name:"TransitionGroup",props:Zt({},N1,{tag:String,moveClass:String}),setup(t,{slots:e}){const n=cn(),s=Bh();let i,r;return ku(()=>{if(!i.length)return;const o=t.moveClass||`${t.name||"v"}-move`;if(!xk(i[0].el,n.vnode.el,o)){i=[];return}i.forEach(Ck),i.forEach(Ak);const a=i.filter(Ok);Vf(),a.forEach(l=>{const c=l.el,u=c.style;Fs(c,o),u.transform=u.webkitTransform=u.transitionDuration="";const d=c[$c]=f=>{f&&f.target!==c||(!f||/transform$/.test(f.propertyName))&&(c.removeEventListener("transitionend",d),c[$c]=null,Li(c,o))};c.addEventListener("transitionend",d)}),i=[]}),()=>{const o=ne(t),a=D1(o);let l=o.tag||it;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}=M1(s);return r.removeChild(s),o}const Ji=t=>{const e=t.props["onUpdate:modelValue"]||!1;return gt(e)?n=>Sr(e,n):e};function Ik(t){t.target.composing=!0}function sg(t){const e=t.target;e.composing&&(e.composing=!1,e.dispatchEvent(new Event("input")))}const ls=Symbol("_assign"),Xs={created(t,{modifiers:{lazy:e,trim:n,number:s}},i){t[ls]=Ji(i);const r=s||i.props&&i.props.type==="number";li(t,e?"change":"input",o=>{if(o.target.composing)return;let a=t.value;n&&(a=a.trim()),r&&(a=xa(a)),t[ls](a)}),n&&li(t,"change",()=>{t.value=t.value.trim()}),e||(li(t,"compositionstart",Ik),li(t,"compositionend",sg),li(t,"change",sg))},mounted(t,{value:e}){t.value=e??""},beforeUpdate(t,{value:e,oldValue:n,modifiers:{lazy:s,trim:i,number:r}},o){if(t[ls]=Ji(o),t.composing)return;const a=(r||t.type==="number")&&!/^0\d/.test(t.value)?xa(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))}},ip={deep:!0,created(t,e,n){t[ls]=Ji(n),li(t,"change",()=>{const s=t._modelValue,i=_o(t),r=t.checked,o=t[ls];if(gt(s)){const a=tl(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(er(s)){const a=new Set(s);r?a.add(i):a.delete(i),o(a)}else o(U1(t,r))})},mounted:ig,beforeUpdate(t,e,n){t[ls]=Ji(n),ig(t,e,n)}};function ig(t,{value:e,oldValue:n},s){t._modelValue=e;let i;if(gt(e))i=tl(e,s.props.value)>-1;else if(er(e))i=e.has(s.props.value);else{if(e===n)return;i=yi(e,U1(t,!0))}t.checked!==i&&(t.checked=i)}const rp={created(t,{value:e},n){t.checked=yi(e,n.props.value),t[ls]=Ji(n),li(t,"change",()=>{t[ls](_o(t))})},beforeUpdate(t,{value:e,oldValue:n},s){t[ls]=Ji(s),e!==n&&(t.checked=yi(e,s.props.value))}},op={deep:!0,created(t,{value:e,modifiers:{number:n}},s){const i=er(e);li(t,"change",()=>{const r=Array.prototype.filter.call(t.options,o=>o.selected).map(o=>n?xa(_o(o)):_o(o));t[ls](t.multiple?i?new Set(r):r:r[0]),t._assigning=!0,$r(()=>{t._assigning=!1})}),t[ls]=Ji(s)},mounted(t,{value:e}){rg(t,e)},beforeUpdate(t,e,n){t[ls]=Ji(n)},updated(t,{value:e}){t._assigning||rg(t,e)}};function rg(t,e){const n=t.multiple,s=gt(e);if(!(n&&!s&&!er(e))){for(let i=0,r=t.options.length;iString(c)===String(a)):o.selected=tl(e,a)>-1}else o.selected=e.has(a);else if(yi(_o(o),e)){t.selectedIndex!==i&&(t.selectedIndex=i);return}}!n&&t.selectedIndex!==-1&&(t.selectedIndex=-1)}}function _o(t){return"_value"in t?t._value:t.value}function U1(t,e){const n=e?"_trueValue":"_falseValue";return n in t?t[n]:e}const j1={created(t,e,n){Nl(t,e,n,null,"created")},mounted(t,e,n){Nl(t,e,n,null,"mounted")},beforeUpdate(t,e,n,s){Nl(t,e,n,s,"beforeUpdate")},updated(t,e,n,s){Nl(t,e,n,s,"updated")}};function B1(t,e){switch(t){case"SELECT":return op;case"TEXTAREA":return Xs;default:switch(e){case"checkbox":return ip;case"radio":return rp;default:return Xs}}}function Nl(t,e,n,s,i){const o=B1(t.tagName,n.props&&n.props.type)[i];o&&o(t,e,n,s)}function Nk(){Xs.getSSRProps=({value:t})=>({value:t}),rp.getSSRProps=({value:t},e)=>{if(e.props&&yi(e.props.value,t))return{checked:!0}},ip.getSSRProps=({value:t},e)=>{if(gt(t)){if(e.props&&tl(t,e.props.value)>-1)return{checked:!0}}else if(er(t)){if(e.props&&t.has(e.props.value))return{checked:!0}}else if(t)return{checked:!0}},j1.getSSRProps=(t,e)=>{if(typeof e.type!="string")return;const n=B1(e.type.toUpperCase(),e.props&&e.props.type);if(n.getSSRProps)return n.getSSRProps(t,e)}}const Pk=["ctrl","shift","alt","meta"],Dk={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)=>Pk.some(n=>t[`${n}Key`]&&!e.includes(n))},jn=(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=bn(i.key);if(e.some(o=>o===r||Mk[o]===r))return t(i)})},G1=Zt({patchProp:yk},ek);let ba,og=!1;function K1(){return ba||(ba=i1(G1))}function z1(){return ba=og?ba:r1(G1),og=!0,ba}const q1=(...t)=>{K1().render(...t)},Lk=(...t)=>{z1().hydrate(...t)},Fc=(...t)=>{const e=K1().createApp(...t),{mount:n}=e;return e.mount=s=>{const i=Z1(s);if(!i)return;const r=e._component;!xt(r)&&!r.render&&!r.template&&(r.template=i.innerHTML),i.nodeType===1&&(i.textContent="");const o=n(i,!1,Y1(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),o},e},X1=(...t)=>{const e=z1().createApp(...t),{mount:n}=e;return e.mount=s=>{const i=Z1(s);if(i)return n(i,!0,Y1(i))},e};function Y1(t){if(t instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&t instanceof MathMLElement)return"mathml"}function Z1(t){return Dt(t)?document.querySelector(t):t}let ag=!1;const Rk=()=>{ag||(ag=!0,Nk(),ok())},$k=Object.freeze(Object.defineProperty({__proto__:null,BaseTransition:Lv,BaseTransitionPropsValidators:Wh,Comment:Be,DeprecationTypes:Jw,EffectScope:Mh,ErrorCodes:h3,ErrorTypeStrings:Gw,Fragment:it,KeepAlive:V3,ReactiveEffect:Na,Static:kr,Suspense:Cw,Teleport:S3,Text:hi,TrackOpTypes:o3,Transition:P1,TransitionGroup:Tk,TriggerOpTypes:a3,VueElement:Ou,assertNumber:f3,callWithAsyncErrorHandling:fs,callWithErrorHandling:Lo,camelize:Te,capitalize:nr,cloneVNode:zs,compatUtils:Zw,computed:Je,createApp:Fc,createBlock:yt,createCommentVNode:_t,createElementBlock:F,createElementVNode:P,createHydrationRenderer:r1,createPropsRestProxy:ew,createRenderer:i1,createSSRApp:X1,createSlots:sl,createStaticVNode:Mw,createTextVNode:qs,createVNode:E,customRef:_v,defineAsyncComponent:$3,defineComponent:Ti,defineCustomElement:$1,defineEmits:G3,defineExpose:K3,defineModel:X3,defineOptions:z3,defineProps:W3,defineSSRCustomElement:vk,defineSlots:q3,devtools:Kw,effect:xE,effectScope:hu,getCurrentInstance:cn,getCurrentScope:Lh,getCurrentWatcher:l3,getTransitionRawChildren:Eu,guardReactiveProps:S1,h:js,handleError:Rr,hasInjectionContext:Xv,hydrate:Lk,hydrateOnIdle:N3,hydrateOnInteraction:L3,hydrateOnMediaQuery:M3,hydrateOnVisible:D3,initCustomFormatter:jw,initDirectivesForSSR:Rk,inject:as,isMemoSame:A1,isProxy:bu,isReactive:Ws,isReadonly:_i,isRef:Ie,isRuntimeOnly:Vw,isShallow:qn,isVNode:Ei,markRaw:vu,mergeDefaults:Q3,mergeModels:tw,mergeProps:ao,nextTick:$r,normalizeClass:Gt,normalizeProps:ro,normalizeStyle:Do,onActivated:$v,onBeforeMount:Hv,onBeforeUnmount:Tu,onBeforeUpdate:Kh,onDeactivated:Fv,onErrorCaptured:Wv,onMounted:Ro,onRenderTracked:Bv,onRenderTriggered:jv,onScopeDispose:sv,onServerPrefetch:Uv,onUnmounted:nl,onUpdated:ku,onWatcherCleanup:wv,openBlock:O,popScopeId:b3,provide:ga,proxyRefs:Uh,pushScopeId:y3,queuePostFlushCb:Ma,reactive:Mo,readonly:Hh,ref:os,registerRuntimeCompiler:Fw,render:q1,renderList:de,renderSlot:le,resolveComponent:w,resolveDirective:Xh,resolveDynamicComponent:qh,resolveFilter:Yw,resolveTransitionHooks:yo,setBlockTracking:Pf,setDevtoolsHook:zw,setTransitionHooks:Si,shallowReactive:Vh,shallowReadonly:XE,shallowRef:_u,ssrContextKey:c1,ssrUtils:Xw,stop:IE,toDisplayString:et,toHandlerKey:_r,toHandlers:j3,toRaw:ne,toRef:s3,toRefs:Sv,toValue:JE,transformVNodeArgs:Pw,triggerRef:ZE,unref:Fn,useAttrs:J3,useCssModule:Ek,useCssVars:sp,useHost:F1,useId:w3,useModel:vw,useSSRContext:u1,useShadowRoot:Sk,useSlots:Z3,useTemplateRef:k3,useTransitionState:Bh,vModelCheckbox:ip,vModelDynamic:j1,vModelRadio:rp,vModelSelect:op,vModelText:Xs,vShow:Lc,version:O1,warn:Ww,watch:Xn,watchEffect:d1,watchPostEffect:yw,watchSyncEffect:f1,withAsyncContext:nw,withCtx:R,withDefaults:Y3,withDirectives:hs,withKeys:W1,withMemo:Bw,withModifiers:jn,withScopeId:v3},Symbol.toStringTag,{value:"Module"}));/*! +**/let jf;const Km=typeof window<"u"&&window.trustedTypes;if(Km)try{jf=Km.createPolicy("vue",{createHTML:t=>t})}catch{}const Dv=jf?t=>jf.createHTML(t):t=>t,rk="http://www.w3.org/2000/svg",ok="http://www.w3.org/1998/Math/MathML",ai=typeof document<"u"?document:null,qm=ai&&ai.createElement("template"),ak={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"?ai.createElementNS(rk,t):e==="mathml"?ai.createElementNS(ok,t):n?ai.createElement(t,{is:n}):ai.createElement(t);return t==="select"&&s&&s.multiple!=null&&i.setAttribute("multiple",s.multiple),i},createText:t=>ai.createTextNode(t),createComment:t=>ai.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>ai.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{qm.innerHTML=Dv(s==="svg"?`${t}`:s==="mathml"?`${t}`:t);const a=qm.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]}},xi="transition",Zo="animation",Eo=Symbol("_vtc"),Lv={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},Mv=Zt({},zh,Lv),lk=t=>(t.displayName="Transition",t.props=Mv,t),$v=lk((t,{slots:e})=>Ws(U1,Fv(t),e)),ur=(t,e=[])=>{gt(t)?t.forEach(n=>n(...e)):t&&t(...e)},zm=t=>t?gt(t)?t.some(e=>e.length>1):t.length>1:!1;function Fv(t){const e={};for(const $ in t)$ in Lv||(e[$]=t[$]);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:h=`${n}-leave-to`}=t,p=ck(i),m=p&&p[0],_=p&&p[1],{onBeforeEnter:y,onEnter:v,onEnterCancelled:g,onLeave:b,onLeaveCancelled:S,onBeforeAppear:k=y,onAppear:I=v,onAppearCancelled:D=g}=e,C=($,H,X,ot)=>{$._enterCancelled=ot,Mi($,H?u:a),Mi($,H?c:o),X&&X()},R=($,H)=>{$._isLeaving=!1,Mi($,d),Mi($,h),Mi($,f),H&&H()},B=$=>(H,X)=>{const ot=$?I:v,K=()=>C(H,$,X);ur(ot,[H,K]),Xm(()=>{Mi(H,$?l:r),Us(H,$?u:a),zm(ot)||Ym(H,s,m,K)})};return Zt(e,{onBeforeEnter($){ur(y,[$]),Us($,r),Us($,o)},onBeforeAppear($){ur(k,[$]),Us($,l),Us($,c)},onEnter:B(!1),onAppear:B(!0),onLeave($,H){$._isLeaving=!0;const X=()=>R($,H);Us($,d),$._enterCancelled?(Us($,f),Bf()):(Bf(),Us($,f)),Xm(()=>{$._isLeaving&&(Mi($,d),Us($,h),zm(b)||Ym($,s,_,X))}),ur(b,[$,X])},onEnterCancelled($){C($,!1,void 0,!0),ur(g,[$])},onAppearCancelled($){C($,!0,void 0,!0),ur(D,[$])},onLeaveCancelled($){R($),ur(S,[$])}})}function ck(t){if(t==null)return null;if(me(t))return[$d(t.enter),$d(t.leave)];{const e=$d(t);return[e,e]}}function $d(t){return Ma(t)}function Us(t,e){e.split(/\s+/).forEach(n=>n&&t.classList.add(n)),(t[Eo]||(t[Eo]=new Set)).add(e)}function Mi(t,e){e.split(/\s+/).forEach(s=>s&&t.classList.remove(s));const n=t[Eo];n&&(n.delete(e),n.size||(t[Eo]=void 0))}function Xm(t){requestAnimationFrame(()=>{requestAnimationFrame(t)})}let uk=0;function Ym(t,e,n,s){const i=t._endId=++uk,r=()=>{i===t._endId&&s()};if(n!=null)return setTimeout(r,n);const{type:o,timeout:a,propCount:l}=Vv(t,e);if(!o)return s();const c=o+"end";let u=0;const d=()=>{t.removeEventListener(c,f),r()},f=h=>{h.target===t&&++u>=l&&d()};setTimeout(()=>{u(n[p]||"").split(", "),i=s(`${xi}Delay`),r=s(`${xi}Duration`),o=Zm(i,r),a=s(`${Zo}Delay`),l=s(`${Zo}Duration`),c=Zm(a,l);let u=null,d=0,f=0;e===xi?o>0&&(u=xi,d=o,f=r.length):e===Zo?c>0&&(u=Zo,d=c,f=l.length):(d=Math.max(o,c),u=d>0?o>c?xi:Zo:null,f=u?u===xi?r.length:l.length:0);const h=u===xi&&/\b(transform|all)(,|$)/.test(s(`${xi}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:h}}function Zm(t,e){for(;t.lengthJm(n)+Jm(t[s])))}function Jm(t){return t==="auto"?0:Number(t.slice(0,-1).replace(",","."))*1e3}function Bf(){return document.body.offsetHeight}function dk(t,e,n){const s=t[Eo];s&&(e=(e?[e,...s]:[...s]).join(" ")),e==null?t.removeAttribute("class"):n?t.setAttribute("class",e):t.className=e}const Uc=Symbol("_vod"),Uv=Symbol("_vsh"),Hc={beforeMount(t,{value:e},{transition:n}){t[Uc]=t.style.display==="none"?"":t.style.display,n&&e?n.beforeEnter(t):Jo(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),Jo(t,!0),s.enter(t)):s.leave(t,()=>{Jo(t,!1)}):Jo(t,e))},beforeUnmount(t,{value:e}){Jo(t,e)}};function Jo(t,e){t.style.display=e?t[Uc]:"none",t[Uv]=!e}function fk(){Hc.getSSRProps=({value:t})=>{if(!t)return{style:{display:"none"}}}}const Hv=Symbol("");function ap(t){const e=cn();if(!e)return;const n=e.ut=(i=t(e.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${e.uid}"]`)).forEach(r=>jc(r,i))},s=()=>{const i=t(e.proxy);e.ce?jc(e.ce,i):Wf(e.subTree,i),n(i)};Yh(()=>{Ua(s)}),Vo(()=>{Zn(s,Qe,{flush:"post"});const i=new MutationObserver(s);i.observe(e.subTree.el.parentNode,{childList:!0}),ll(()=>i.disconnect())})}function Wf(t,e){if(t.shapeFlag&128){const n=t.suspense;t=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{Wf(n.activeBranch,e)})}for(;t.component;)t=t.component.subTree;if(t.shapeFlag&1&&t.el)jc(t.el,e);else if(t.type===it)t.children.forEach(n=>Wf(n,e));else if(t.type===Tr){let{el:n,anchor:s}=t;for(;n&&(jc(n,e),n!==s);)n=n.nextSibling}}function jc(t,e){if(t.nodeType===1){const n=t.style;let s="";for(const i in e){const r=a1(e[i]);n.setProperty(`--${i}`,r),s+=`--${i}: ${r};`}n[Hv]=s}}const hk=/(^|;)\s*display\s*:/;function pk(t,e,n){const s=t.style,i=Rt(n);let r=!1;if(n&&!i){if(e)if(Rt(e))for(const o of e.split(";")){const a=o.slice(0,o.indexOf(":")).trim();n[a]==null&&lc(s,a,"")}else for(const o in e)n[o]==null&&lc(s,o,"");for(const o in n)o==="display"&&(r=!0),lc(s,o,n[o])}else if(i){if(e!==n){const o=s[Hv];o&&(n+=";"+o),s.cssText=n,r=hk.test(n)}}else e&&t.removeAttribute("style");Uc in t&&(t[Uc]=r?s.display:"",t[Uv]&&(s.display="none"))}const Qm=/\s*!important$/;function lc(t,e,n){if(gt(n))n.forEach(s=>lc(t,e,s));else if(n==null&&(n=""),e.startsWith("--"))t.setProperty(e,n);else{const s=mk(t,e);Qm.test(n)?t.setProperty(bn(s),n.replace(Qm,""),"important"):t[s]=n}}const tg=["Webkit","Moz","ms"],Fd={};function mk(t,e){const n=Fd[e];if(n)return n;let s=Ce(e);if(s!=="filter"&&s in t)return Fd[e]=s;s=ir(s);for(let i=0;iVd||(vk.then(()=>Vd=0),Vd=Date.now());function Sk(t,e){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;ps(Ek(s,n.value),e,5,[s])};return n.value=t,n.attached=_k(),n}function Ek(t,e){if(gt(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 og=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>96&&t.charCodeAt(2)<123,wk=(t,e,n,s,i,r)=>{const o=i==="svg";e==="class"?dk(t,s,o):e==="style"?pk(t,n,s):nr(e)?pu(e)||yk(t,e,n,s,r):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):kk(t,e,s,o))?(sg(t,e,s),!t.tagName.includes("-")&&(e==="value"||e==="checked"||e==="selected")&&ng(t,e,s,o,r,e!=="value")):t._isVueCE&&(/[A-Z]/.test(e)||!Rt(s))?sg(t,Ce(e),s,r,e):(e==="true-value"?t._trueValue=s:e==="false-value"&&(t._falseValue=s),ng(t,e,s,o))};function kk(t,e,n,s){if(s)return!!(e==="innerHTML"||e==="textContent"||e in t&&og(e)&&xt(n));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="autocorrect"||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 og(e)&&Rt(n)?!1:e in t}const ag={};/*! #__NO_SIDE_EFFECTS__ */function jv(t,e,n){const s=Ti(t,e);il(s)&&Zt(s,e);class i extends Du{constructor(o){super(s,o,n)}}return i.def=s,i}/*! #__NO_SIDE_EFFECTS__ */const Ck=(t,e)=>jv(t,e,t0),Tk=typeof HTMLElement<"u"?HTMLElement:class{};class Du extends Tk{constructor(e,n={},s=Wc){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!==Wc?this._root=this.shadowRoot:e.shadowRoot!==!1?(this.attachShadow({mode:"open"}),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let e=this;for(;e=e&&(e.parentNode||e.host);)if(e instanceof Du){this._parent=e;break}this._instance||(this._resolved?this._mount(this._def):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._inheritParentContext(e))}_inheritParentContext(e=this._parent){e&&this._app&&Object.setPrototypeOf(this._app._context.provides,e._instance.provides)}disconnectedCallback(){this._connected=!1,Vr(()=>{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&&!gt(r))for(const l in r){const c=r[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=Ma(this._props[l])),(a||(a=Object.create(null)))[Ce(l)]=!0)}this._numberProps=a,this._resolveProps(s),this.shadowRoot&&this._applyStyles(o),this._mount(s)},n=this._def.__asyncLoader;n?this._pendingResolve=n().then(s=>{s.configureApp=this._def.configureApp,e(this._def=s,!0)}):e(this._def)}_mount(e){this._app=this._createApp(e),this._inheritParentContext(),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)ue(this,s)||Object.defineProperty(this,s,{get:()=>Vn(n[s])})}_resolveProps(e){const{props:n}=e,s=gt(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(Ce))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):ag;const i=Ce(e);n&&this._numberProps&&this._numberProps[i]&&(s=Ma(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===ag?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(bn(e),""):typeof n=="string"||typeof n=="number"?this.setAttribute(bn(e),n+""):n||this.removeAttribute(bn(e)),r&&r.observe(this,{attributes:!0})}}_update(){const e=this._createVNode();this._app&&(e.appContext=this._app._context),Qv(e,this._root)}_createVNode(){const e={};this.shadowRoot||(e.onVnodeMounted=e.onVnodeUpdated=this._renderSlots.bind(this));const n=E(this._def,Zt(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,il(o[0])?Zt({detail:o},o[0]):{detail:o}))};s.emit=(r,...o)=>{i(r,o),bn(r)!==r&&i(bn(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),Ik=xk({name:"TransitionGroup",props:Zt({},Mv,{tag:String,moveClass:String}),setup(t,{slots:e}){const n=cn(),s=qh();let i,r;return Iu(()=>{if(!i.length)return;const o=t.moveClass||`${t.name||"v"}-move`;if(!Lk(i[0].el,n.vnode.el,o)){i=[];return}i.forEach(Pk),i.forEach(Rk);const a=i.filter(Dk);Bf(),a.forEach(l=>{const c=l.el,u=c.style;Us(c,o),u.transform=u.webkitTransform=u.transitionDuration="";const d=c[Bc]=f=>{f&&f.target!==c||(!f||/transform$/.test(f.propertyName))&&(c.removeEventListener("transitionend",d),c[Bc]=null,Mi(c,o))};c.addEventListener("transitionend",d)}),i=[]}),()=>{const o=ne(t),a=Fv(o);let l=o.tag||it;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}=Vv(s);return r.removeChild(s),o}const tr=t=>{const e=t.props["onUpdate:modelValue"]||!1;return gt(e)?n=>wr(e,n):e};function Mk(t){t.target.composing=!0}function cg(t){const e=t.target;e.composing&&(e.composing=!1,e.dispatchEvent(new Event("input")))}const ds=Symbol("_assign"),Zs={created(t,{modifiers:{lazy:e,trim:n,number:s}},i){t[ds]=tr(i);const r=s||i.props&&i.props.type==="number";ui(t,e?"change":"input",o=>{if(o.target.composing)return;let a=t.value;n&&(a=a.trim()),r&&(a=La(a)),t[ds](a)}),n&&ui(t,"change",()=>{t.value=t.value.trim()}),e||(ui(t,"compositionstart",Mk),ui(t,"compositionend",cg),ui(t,"change",cg))},mounted(t,{value:e}){t.value=e??""},beforeUpdate(t,{value:e,oldValue:n,modifiers:{lazy:s,trim:i,number:r}},o){if(t[ds]=tr(o),t.composing)return;const a=(r||t.type==="number")&&!/^0\d/.test(t.value)?La(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))}},lp={deep:!0,created(t,e,n){t[ds]=tr(n),ui(t,"change",()=>{const s=t._modelValue,i=wo(t),r=t.checked,o=t[ds];if(gt(s)){const a=ol(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(sr(s)){const a=new Set(s);r?a.add(i):a.delete(i),o(a)}else o(Kv(t,r))})},mounted:ug,beforeUpdate(t,e,n){t[ds]=tr(n),ug(t,e,n)}};function ug(t,{value:e,oldValue:n},s){t._modelValue=e;let i;if(gt(e))i=ol(e,s.props.value)>-1;else if(sr(e))i=e.has(s.props.value);else{if(e===n)return;i=vi(e,Kv(t,!0))}t.checked!==i&&(t.checked=i)}const cp={created(t,{value:e},n){t.checked=vi(e,n.props.value),t[ds]=tr(n),ui(t,"change",()=>{t[ds](wo(t))})},beforeUpdate(t,{value:e,oldValue:n},s){t[ds]=tr(s),e!==n&&(t.checked=vi(e,s.props.value))}},up={deep:!0,created(t,{value:e,modifiers:{number:n}},s){const i=sr(e);ui(t,"change",()=>{const r=Array.prototype.filter.call(t.options,o=>o.selected).map(o=>n?La(wo(o)):wo(o));t[ds](t.multiple?i?new Set(r):r:r[0]),t._assigning=!0,Vr(()=>{t._assigning=!1})}),t[ds]=tr(s)},mounted(t,{value:e}){dg(t,e)},beforeUpdate(t,e,n){t[ds]=tr(n)},updated(t,{value:e}){t._assigning||dg(t,e)}};function dg(t,e){const n=t.multiple,s=gt(e);if(!(n&&!s&&!sr(e))){for(let i=0,r=t.options.length;iString(c)===String(a)):o.selected=ol(e,a)>-1}else o.selected=e.has(a);else if(vi(wo(o),e)){t.selectedIndex!==i&&(t.selectedIndex=i);return}}!n&&t.selectedIndex!==-1&&(t.selectedIndex=-1)}}function wo(t){return"_value"in t?t._value:t.value}function Kv(t,e){const n=e?"_trueValue":"_falseValue";return n in t?t[n]:e}const qv={created(t,e,n){$l(t,e,n,null,"created")},mounted(t,e,n){$l(t,e,n,null,"mounted")},beforeUpdate(t,e,n,s){$l(t,e,n,s,"beforeUpdate")},updated(t,e,n,s){$l(t,e,n,s,"updated")}};function zv(t,e){switch(t){case"SELECT":return up;case"TEXTAREA":return Zs;default:switch(e){case"checkbox":return lp;case"radio":return cp;default:return Zs}}}function $l(t,e,n,s,i){const o=zv(t.tagName,n.props&&n.props.type)[i];o&&o(t,e,n,s)}function $k(){Zs.getSSRProps=({value:t})=>({value:t}),cp.getSSRProps=({value:t},e)=>{if(e.props&&vi(e.props.value,t))return{checked:!0}},lp.getSSRProps=({value:t},e)=>{if(gt(t)){if(e.props&&ol(t,e.props.value)>-1)return{checked:!0}}else if(sr(t)){if(e.props&&t.has(e.props.value))return{checked:!0}}else if(t)return{checked:!0}},qv.getSSRProps=(t,e)=>{if(typeof e.type!="string")return;const n=zv(e.type.toUpperCase(),e.props&&e.props.type);if(n.getSSRProps)return n.getSSRProps(t,e)}}const Fk=["ctrl","shift","alt","meta"],Vk={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)=>Fk.some(n=>t[`${n}Key`]&&!e.includes(n))},Bn=(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=bn(i.key);if(e.some(o=>o===r||Uk[o]===r))return t(i)})},Yv=Zt({patchProp:wk},ak);let Ea,fg=!1;function Zv(){return Ea||(Ea=cv(Yv))}function Jv(){return Ea=fg?Ea:uv(Yv),fg=!0,Ea}const Qv=(...t)=>{Zv().render(...t)},Hk=(...t)=>{Jv().hydrate(...t)},Wc=(...t)=>{const e=Zv().createApp(...t),{mount:n}=e;return e.mount=s=>{const i=n0(s);if(!i)return;const r=e._component;!xt(r)&&!r.render&&!r.template&&(r.template=i.innerHTML),i.nodeType===1&&(i.textContent="");const o=n(i,!1,e0(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),o},e},t0=(...t)=>{const e=Jv().createApp(...t),{mount:n}=e;return e.mount=s=>{const i=n0(s);if(i)return n(i,!0,e0(i))},e};function e0(t){if(t instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&t instanceof MathMLElement)return"mathml"}function n0(t){return Rt(t)?document.querySelector(t):t}let hg=!1;const jk=()=>{hg||(hg=!0,$k(),fk())},Bk=Object.freeze(Object.defineProperty({__proto__:null,BaseTransition:U1,BaseTransitionPropsValidators:zh,Comment:Be,DeprecationTypes:ik,EffectScope:Fh,ErrorCodes:vw,ErrorTypeStrings:Z3,Fragment:it,KeepAlive:Gw,ReactiveEffect:$a,Static:Tr,Suspense:P3,Teleport:Aw,Text:mi,TrackOpTypes:fw,Transition:$v,TransitionGroup:Nk,TriggerOpTypes:hw,VueElement:Du,assertNumber:bw,callWithAsyncErrorHandling:ps,callWithErrorHandling:Fo,camelize:Ce,capitalize:ir,cloneVNode:Xs,compatUtils:sk,computed:Je,createApp:Wc,createBlock:yt,createCommentVNode:_t,createElementBlock:F,createElementVNode:P,createHydrationRenderer:uv,createPropsRestProxy:a3,createRenderer:cv,createSSRApp:t0,createSlots:cl,createStaticVNode:U3,createTextVNode:Ys,createVNode:E,customRef:C1,defineAsyncComponent:Bw,defineComponent:Ti,defineCustomElement:jv,defineEmits:Zw,defineExpose:Jw,defineModel:e3,defineOptions:Qw,defineProps:Yw,defineSSRCustomElement:Ck,defineSlots:t3,devtools:J3,effect:LE,effectScope:vu,getCurrentInstance:cn,getCurrentScope:Vh,getCurrentWatcher:pw,getTransitionRawChildren:Ou,guardReactiveProps:Tv,h:Ws,handleError:Fr,hasInjectionContext:tv,hydrate:Hk,hydrateOnIdle:$w,hydrateOnInteraction:Hw,hydrateOnMediaQuery:Uw,hydrateOnVisible:Vw,initCustomFormatter:z3,initDirectivesForSSR:jk,inject:us,isMemoSame:Pv,isProxy:ku,isReactive:Ks,isReadonly:Ei,isRef:Ie,isRuntimeOnly:G3,isShallow:Yn,isVNode:ki,markRaw:Cu,mergeDefaults:r3,mergeModels:o3,mergeProps:co,nextTick:Vr,normalizeClass:Gt,normalizeProps:ao,normalizeStyle:Mo,onActivated:j1,onBeforeMount:G1,onBeforeUnmount:Nu,onBeforeUpdate:Yh,onDeactivated:B1,onErrorCaptured:X1,onMounted:Vo,onRenderTracked:z1,onRenderTriggered:q1,onScopeDispose:l1,onServerPrefetch:K1,onUnmounted:ll,onUpdated:Iu,onWatcherCleanup:O1,openBlock:O,popScopeId:kw,provide:_a,proxyRefs:Gh,pushScopeId:ww,queuePostFlushCb:Ua,reactive:$o,readonly:Wh,ref:cs,registerRuntimeCompiler:W3,render:Qv,renderList:de,renderSlot:le,resolveComponent:w,resolveDirective:Qh,resolveDynamicComponent:Jh,resolveFilter:nk,resolveTransitionHooks:_o,setBlockTracking:Mf,setDevtoolsHook:Q3,setTransitionHooks:wi,shallowReactive:Bh,shallowReadonly:ew,shallowRef:Tu,ssrContextKey:pv,ssrUtils:ek,stop:ME,toDisplayString:et,toHandlerKey:Er,toHandlers:zw,toRaw:ne,toRef:cw,toRefs:T1,toValue:iw,transformVNodeArgs:F3,triggerRef:sw,unref:Vn,useAttrs:i3,useCssModule:Ok,useCssVars:ap,useHost:Bv,useId:xw,useModel:C3,useSSRContext:mv,useShadowRoot:Ak,useSlots:s3,useTemplateRef:Iw,useTransitionState:qh,vModelCheckbox:lp,vModelDynamic:qv,vModelRadio:cp,vModelSelect:up,vModelText:Zs,vShow:Hc,version:Rv,warn:Y3,watch:Zn,watchEffect:gv,watchPostEffect:w3,watchSyncEffect:yv,withAsyncContext:l3,withCtx:M,withDefaults:n3,withDirectives:ms,withKeys:Xv,withMemo:X3,withModifiers:Bn,withScopeId:Cw},Symbol.toStringTag,{value:"Module"}));/*! * pinia v3.0.3 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let J1;const xu=t=>J1=t,Q1=Symbol();function Uf(t){return t&&typeof t=="object"&&Object.prototype.toString.call(t)==="[object Object]"&&typeof t.toJSON!="function"}var va;(function(t){t.direct="direct",t.patchObject="patch object",t.patchFunction="patch function"})(va||(va={}));function Fk(){const t=hu(!0),e=t.run(()=>os({}));let n=[],s=[];const i=vu({install(r){xu(i),i._a=r,r.provide(Q1,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 lg(t,e,n,s=t0){t.push(e);const i=()=>{const r=t.indexOf(e);r>-1&&(t.splice(r,1),s())};return!n&&Lh()&&sv(i),i}function Wr(t,...e){t.slice().forEach(n=>{n(...e)})}const Vk=t=>t(),cg=Symbol(),Ld=Symbol();function jf(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];Uf(i)&&Uf(s)&&t.hasOwnProperty(n)&&!Ie(s)&&!Ws(s)?t[n]=jf(i,s):t[n]=s}return t}const Hk=Symbol();function Uk(t){return!Uf(t)||!Object.prototype.hasOwnProperty.call(t,Hk)}const{assign:Ri}=Object;function jk(t){return!!(Ie(t)&&t.effect)}function Bk(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=Sv(n.state.value[t]);return Ri(u,r,Object.keys(o||{}).reduce((d,f)=>(d[f]=vu(Je(()=>{xu(n);const h=n._s.get(t);return o[f].call(h,h)})),d),{}))}return l=e0(t,c,e,n,s,!0),l}function e0(t,e,n={},s,i,r){let o;const a=Ri({actions:{}},n),l={deep:!0};let c,u,d=[],f=[],h;const p=s.state.value[t];!r&&!p&&(s.state.value[t]={}),os({});let m;function b(M){let T;c=u=!1,typeof M=="function"?(M(s.state.value[t]),T={type:va.patchFunction,storeId:t,events:h}):(jf(s.state.value[t],M),T={type:va.patchObject,payload:M,storeId:t,events:h});const D=m=Symbol();$r().then(()=>{m===D&&(c=!0)}),u=!0,Wr(d,T,s.state.value[t])}const y=r?function(){const{state:T}=n,D=T?T():{};this.$patch(B=>{Ri(B,D)})}:t0;function _(){o.stop(),d=[],f=[],s._s.delete(t)}const g=(M,T="")=>{if(cg in M)return M[Ld]=T,M;const D=function(){xu(s);const B=Array.from(arguments),$=[],U=[];function X(Q){$.push(Q)}function ot(Q){U.push(Q)}Wr(f,{args:B,name:D[Ld],store:S,after:X,onError:ot});let K;try{K=M.apply(this&&this.$id===t?this:S,B)}catch(Q){throw Wr(U,Q),Q}return K instanceof Promise?K.then(Q=>(Wr($,Q),Q)).catch(Q=>(Wr(U,Q),Promise.reject(Q))):(Wr($,K),K)};return D[cg]=!0,D[Ld]=T,D},v={_p:s,$id:t,$onAction:lg.bind(null,f),$patch:b,$reset:y,$subscribe(M,T={}){const D=lg(d,M,T.detached,()=>B()),B=o.run(()=>Xn(()=>s.state.value[t],$=>{(T.flush==="sync"?u:c)&&M({storeId:t,type:va.direct,events:h},$)},Ri({},l,T)));return D},$dispose:_},S=Mo(v);s._s.set(t,S);const I=(s._a&&s._a.runWithContext||Vk)(()=>s._e.run(()=>(o=hu()).run(()=>e({action:g}))));for(const M in I){const T=I[M];if(Ie(T)&&!jk(T)||Ws(T))r||(p&&Uk(T)&&(Ie(T)?T.value=p[M]:jf(T,p[M])),s.state.value[t][M]=T);else if(typeof T=="function"){const D=g(T,M);I[M]=D,a.actions[M]=T}}return Ri(S,I),Ri(ne(S),I),Object.defineProperty(S,"$state",{get:()=>s.state.value[t],set:M=>{b(T=>{Ri(T,M)})}}),s._p.forEach(M=>{Ri(S,o.run(()=>M({store:S,app:s._a,pinia:s,options:a})))}),p&&r&&n.hydrate&&n.hydrate(S.$state,p),c=!0,u=!0,S}/*! #__NO_SIDE_EFFECTS__ */function Ps(t,e,n){let s;const i=typeof e=="function";s=i?n:e;function r(o,a){const l=Xv();return o=o||(l?as(Q1,null):null),o&&xu(o),o=J1,o._s.has(t)||(i?e0(t,e,s,o):Bk(t,s,o)),o._s.get(t)}return r.$id=t,r}const So=Ps("NotificationsStore",{actions:{add(t){const e={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)}},getters:{isEmpty:t=>t.list.length===0},state:()=>({list:[]})}),nt=(t,e)=>{const n=t.__vccOpts||t;for(const[s,i]of e)n[s]=i;return n},Wk={name:"ListNotifications",setup(){return{notificationsStore:So()}}},Gk={key:0,class:"notifications"},Kk={class:"columns is-centered"},zk={class:"column is-half"},qk=["onClick"],Xk=["textContent"];function Yk(t,e,n,s,i,r){return s.notificationsStore.isEmpty?_t("",!0):(O(),F("section",Gk,[P("div",Kk,[P("div",zk,[(O(!0),F(it,null,de(s.notificationsStore.list,(o,a)=>(O(),F("div",{key:a,class:Gt(["notification",o.type?`is-${o.type}`:""])},[P("button",{class:"delete",onClick:l=>s.notificationsStore.remove(o)},null,8,qk),P("div",{class:"text",textContent:et(o.text)},null,8,Xk)],2))),128))])])]))}const Zk=nt(Wk,[["render",Yk],["__scopeId","data-v-1e835d55"]]),Jk={name:"ControlPinField",props:{placeholder:{required:!0,type:String}},emits:["input"],data(){return{value:""}},mounted(){setTimeout(()=>{this.$refs.input.focus()},10)},methods:{validate(t){const{validity:e}=t.target,n=e.patternMismatch||e.valueMissing;this.$emit("input",this.value,n)}}},Qk={class:"field is-grouped"},tT={class:"control"},eT=["placeholder"];function nT(t,e,n,s,i,r){return O(),F("div",Qk,[P("div",tT,[hs(P("input",{ref:"input","onUpdate:modelValue":e[0]||(e[0]=o=>i.value=o),class:"input",inputmode:"numeric",pattern:"[\\d]{4}",placeholder:n.placeholder,onInput:e[1]||(e[1]=(...o)=>r.validate&&r.validate(...o))},null,40,eT),[[Xs,i.value]])]),le(t.$slots,"default")])}const n0=nt(Jk,[["render",nT]]),sT={name:"ModalDialog",props:{actions:{required:!0,type:Array},show:Boolean,title:{default:"",type:String}},emits:["close"],watch:{show(t){const{classList:e}=document.querySelector("html");t?e.add("is-clipped"):e.remove("is-clipped")}}},iT={key:0,class:"modal is-active"},rT={class:"modal-content"},oT={class:"card is-shadowless"},aT={class:"card-header"},lT=["textContent"],cT={class:"card-header-icon"},uT={class:"card-content"},dT={key:0,class:"card-footer"},fT=["disabled","onClick"],hT=["textContent"];function pT(t,e,n,s,i,r){const o=w("mdicon");return O(),yt(P1,{name:"fade"},{default:R(()=>[n.show?(O(),F("div",iT,[P("div",{class:"modal-background",onClick:e[0]||(e[0]=a=>t.$emit("close"))}),P("div",rT,[P("div",oT,[P("div",aT,[n.title?(O(),F("div",{key:0,class:"card-header-title",textContent:et(n.title)},null,8,lT)):_t("",!0),P("div",cT,[P("button",{class:"delete",onClick:e[1]||(e[1]=a=>t.$emit("close"))})])]),P("div",uT,[le(t.$slots,"content",{},void 0,!0)]),n.actions.length?(O(),F("footer",dT,[(O(!0),F(it,null,de(n.actions,a=>(O(),F("button",{key:a.key,class:Gt(["card-footer-item is-small",{"is-disabled":a.disabled}]),disabled:a.disabled,onClick:a.handler},[E(o,{class:"icon",name:a.icon,size:"16"},null,8,["name"]),P("span",{class:"is-size-7",textContent:et(t.$t(a.key))},null,8,hT)],10,fT))),128))])):_t("",!0)])])])):_t("",!0)]),_:3})}const sr=nt(sT,[["render",pT],["__scopeId","data-v-82b4fa81"]]);function s0(t,e){return function(){return t.apply(e,arguments)}}const{toString:mT}=Object.prototype,{getPrototypeOf:ap}=Object,{iterator:Iu,toStringTag:i0}=Symbol,Nu=(t=>e=>{const n=mT.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Ds=t=>(t=t.toLowerCase(),e=>Nu(e)===t),Pu=t=>e=>typeof e===t,{isArray:$o}=Array,Va=Pu("undefined");function ol(t){return t!==null&&!Va(t)&&t.constructor!==null&&!Va(t.constructor)&&Hn(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const r0=Ds("ArrayBuffer");function gT(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&r0(t.buffer),e}const yT=Pu("string"),Hn=Pu("function"),o0=Pu("number"),al=t=>t!==null&&typeof t=="object",bT=t=>t===!0||t===!1,sc=t=>{if(Nu(t)!=="object")return!1;const e=ap(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(i0 in t)&&!(Iu in t)},vT=t=>{if(!al(t)||ol(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},_T=Ds("Date"),ST=Ds("File"),ET=Ds("Blob"),wT=Ds("FileList"),kT=t=>al(t)&&Hn(t.pipe),TT=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||Hn(t.append)&&((e=Nu(t))==="formdata"||e==="object"&&Hn(t.toString)&&t.toString()==="[object FormData]"))},CT=Ds("URLSearchParams"),[AT,OT,xT,IT]=["ReadableStream","Request","Response","Headers"].map(Ds),NT=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ll(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let s,i;if(typeof t!="object"&&(t=[t]),$o(t))for(s=0,i=t.length;s0;)if(i=n[s],e===i.toLowerCase())return i;return null}const mr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,l0=t=>!Va(t)&&t!==mr;function Bf(){const{caseless:t}=l0(this)&&this||{},e={},n=(s,i)=>{const r=t&&a0(e,i)||i;sc(e[r])&&sc(s)?e[r]=Bf(e[r],s):sc(s)?e[r]=Bf({},s):$o(s)?e[r]=s.slice():e[r]=s};for(let s=0,i=arguments.length;s(ll(e,(i,r)=>{n&&Hn(i)?t[r]=s0(i,n):t[r]=i},{allOwnKeys:s}),t),DT=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),MT=(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)},LT=(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&&ap(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},RT=(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},$T=t=>{if(!t)return null;if($o(t))return t;let e=t.length;if(!o0(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},FT=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&ap(Uint8Array)),VT=(t,e)=>{const s=(t&&t[Iu]).call(t);let i;for(;(i=s.next())&&!i.done;){const r=i.value;e.call(t,r[0],r[1])}},HT=(t,e)=>{let n;const s=[];for(;(n=t.exec(e))!==null;)s.push(n);return s},UT=Ds("HTMLFormElement"),jT=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,i){return s.toUpperCase()+i}),ug=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),BT=Ds("RegExp"),c0=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),s={};ll(n,(i,r)=>{let o;(o=e(i,r,t))!==!1&&(s[r]=o||i)}),Object.defineProperties(t,s)},WT=t=>{c0(t,(e,n)=>{if(Hn(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=t[n];if(Hn(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+"'")})}})},GT=(t,e)=>{const n={},s=i=>{i.forEach(r=>{n[r]=!0})};return $o(t)?s(t):s(String(t).split(e)),n},KT=()=>{},zT=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function qT(t){return!!(t&&Hn(t.append)&&t[i0]==="FormData"&&t[Iu])}const XT=t=>{const e=new Array(10),n=(s,i)=>{if(al(s)){if(e.indexOf(s)>=0)return;if(ol(s))return s;if(!("toJSON"in s)){e[i]=s;const r=$o(s)?[]:{};return ll(s,(o,a)=>{const l=n(o,i+1);!Va(l)&&(r[a]=l)}),e[i]=void 0,r}}return s};return n(t,0)},YT=Ds("AsyncFunction"),ZT=t=>t&&(al(t)||Hn(t))&&Hn(t.then)&&Hn(t.catch),u0=((t,e)=>t?setImmediate:e?((n,s)=>(mr.addEventListener("message",({source:i,data:r})=>{i===mr&&r===n&&s.length&&s.shift()()},!1),i=>{s.push(i),mr.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Hn(mr.postMessage)),JT=typeof queueMicrotask<"u"?queueMicrotask.bind(mr):typeof process<"u"&&process.nextTick||u0,QT=t=>t!=null&&Hn(t[Iu]),Z={isArray:$o,isArrayBuffer:r0,isBuffer:ol,isFormData:TT,isArrayBufferView:gT,isString:yT,isNumber:o0,isBoolean:bT,isObject:al,isPlainObject:sc,isEmptyObject:vT,isReadableStream:AT,isRequest:OT,isResponse:xT,isHeaders:IT,isUndefined:Va,isDate:_T,isFile:ST,isBlob:ET,isRegExp:BT,isFunction:Hn,isStream:kT,isURLSearchParams:CT,isTypedArray:FT,isFileList:wT,forEach:ll,merge:Bf,extend:PT,trim:NT,stripBOM:DT,inherits:MT,toFlatObject:LT,kindOf:Nu,kindOfTest:Ds,endsWith:RT,toArray:$T,forEachEntry:VT,matchAll:HT,isHTMLForm:UT,hasOwnProperty:ug,hasOwnProp:ug,reduceDescriptors:c0,freezeMethods:WT,toObjectSet:GT,toCamelCase:jT,noop:KT,toFiniteNumber:zT,findKey:a0,global:mr,isContextDefined:l0,isSpecCompliantForm:qT,toJSONObject:XT,isAsyncFn:YT,isThenable:ZT,setImmediate:u0,asap:JT,isIterable:QT};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)}Z.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:Z.toJSONObject(this.config),code:this.code,status:this.status}}});const d0=jt.prototype,f0={};["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=>{f0[t]={value:t}});Object.defineProperties(jt,f0);Object.defineProperty(d0,"isAxiosError",{value:!0});jt.from=(t,e,n,s,i,r)=>{const o=Object.create(d0);return Z.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 tC=null;function Wf(t){return Z.isPlainObject(t)||Z.isArray(t)}function h0(t){return Z.endsWith(t,"[]")?t.slice(0,-2):t}function dg(t,e,n){return t?t.concat(e).map(function(i,r){return i=h0(i),!n&&r?"["+i+"]":i}).join(n?".":""):e}function eC(t){return Z.isArray(t)&&!t.some(Wf)}const nC=Z.toFlatObject(Z,{},null,function(e){return/^is[A-Z]/.test(e)});function Du(t,e,n){if(!Z.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,n=Z.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,b){return!Z.isUndefined(b[m])});const s=n.metaTokens,i=n.visitor||u,r=n.dots,o=n.indexes,l=(n.Blob||typeof Blob<"u"&&Blob)&&Z.isSpecCompliantForm(e);if(!Z.isFunction(i))throw new TypeError("visitor must be a function");function c(p){if(p===null)return"";if(Z.isDate(p))return p.toISOString();if(Z.isBoolean(p))return p.toString();if(!l&&Z.isBlob(p))throw new jt("Blob is not supported. Use a Buffer instead.");return Z.isArrayBuffer(p)||Z.isTypedArray(p)?l&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function u(p,m,b){let y=p;if(p&&!b&&typeof p=="object"){if(Z.endsWith(m,"{}"))m=s?m:m.slice(0,-2),p=JSON.stringify(p);else if(Z.isArray(p)&&eC(p)||(Z.isFileList(p)||Z.endsWith(m,"[]"))&&(y=Z.toArray(p)))return m=h0(m),y.forEach(function(g,v){!(Z.isUndefined(g)||g===null)&&e.append(o===!0?dg([m],v,r):o===null?m:m+"[]",c(g))}),!1}return Wf(p)?!0:(e.append(dg(b,m,r),c(p)),!1)}const d=[],f=Object.assign(nC,{defaultVisitor:u,convertValue:c,isVisitable:Wf});function h(p,m){if(!Z.isUndefined(p)){if(d.indexOf(p)!==-1)throw Error("Circular reference detected in "+m.join("."));d.push(p),Z.forEach(p,function(y,_){(!(Z.isUndefined(y)||y===null)&&i.call(e,y,Z.isString(_)?_.trim():_,m,f))===!0&&h(y,m?m.concat(_):[_])}),d.pop()}}if(!Z.isObject(t))throw new TypeError("data must be an object");return h(t),e}function fg(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(s){return e[s]})}function lp(t,e){this._pairs=[],t&&Du(t,this,e)}const p0=lp.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,fg)}:fg;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};function sC(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function m0(t,e,n){if(!e)return t;const s=n&&n.encode||sC;Z.isFunction(n)&&(n={serialize:n});const i=n&&n.serialize;let r;if(i?r=i(e,n):r=Z.isURLSearchParams(e)?e.toString():new lp(e,n).toString(s),r){const o=t.indexOf("#");o!==-1&&(t=t.slice(0,o)),t+=(t.indexOf("?")===-1?"?":"&")+r}return t}class hg{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){Z.forEach(this.handlers,function(s){s!==null&&e(s)})}}const g0={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},iC=typeof URLSearchParams<"u"?URLSearchParams:lp,rC=typeof FormData<"u"?FormData:null,oC=typeof Blob<"u"?Blob:null,aC={isBrowser:!0,classes:{URLSearchParams:iC,FormData:rC,Blob:oC},protocols:["http","https","file","blob","url","data"]},cp=typeof window<"u"&&typeof document<"u",Gf=typeof navigator=="object"&&navigator||void 0,lC=cp&&(!Gf||["ReactNative","NativeScript","NS"].indexOf(Gf.product)<0),cC=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",uC=cp&&window.location.href||"http://localhost",dC=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:cp,hasStandardBrowserEnv:lC,hasStandardBrowserWebWorkerEnv:cC,navigator:Gf,origin:uC},Symbol.toStringTag,{value:"Module"})),vn={...dC,...aC};function fC(t,e){return Du(t,new vn.classes.URLSearchParams,{visitor:function(n,s,i,r){return vn.isNode&&Z.isBuffer(n)?(this.append(s,n.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)},...e})}function hC(t){return Z.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function pC(t){const e={},n=Object.keys(t);let s;const i=n.length;let r;for(s=0;s=n.length;return o=!o&&Z.isArray(i)?i.length:o,l?(Z.hasOwnProp(i,o)?i[o]=[i[o],s]:i[o]=s,!a):((!i[o]||!Z.isObject(i[o]))&&(i[o]=[]),e(n,s,i[o],r)&&Z.isArray(i[o])&&(i[o]=pC(i[o])),!a)}if(Z.isFormData(t)&&Z.isFunction(t.entries)){const n={};return Z.forEachEntry(t,(s,i)=>{e(hC(s),i,n,0)}),n}return null}function mC(t,e,n){if(Z.isString(t))try{return(e||JSON.parse)(t),Z.trim(t)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(t)}const cl={transitional:g0,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const s=n.getContentType()||"",i=s.indexOf("application/json")>-1,r=Z.isObject(e);if(r&&Z.isHTMLForm(e)&&(e=new FormData(e)),Z.isFormData(e))return i?JSON.stringify(y0(e)):e;if(Z.isArrayBuffer(e)||Z.isBuffer(e)||Z.isStream(e)||Z.isFile(e)||Z.isBlob(e)||Z.isReadableStream(e))return e;if(Z.isArrayBufferView(e))return e.buffer;if(Z.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 fC(e,this.formSerializer).toString();if((a=Z.isFileList(e))||s.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return Du(a?{"files[]":e}:e,l&&new l,this.formSerializer)}}return r||i?(n.setContentType("application/json",!1),mC(e)):e}],transformResponse:[function(e){const n=this.transitional||cl.transitional,s=n&&n.forcedJSONParsing,i=this.responseType==="json";if(Z.isResponse(e)||Z.isReadableStream(e))return e;if(e&&Z.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:vn.classes.FormData,Blob:vn.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Z.forEach(["delete","get","head","post","put","patch"],t=>{cl.headers[t]={}});const gC=Z.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"]),yC=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]&&gC[n])&&(n==="set-cookie"?e[n]?e[n].push(s):e[n]=[s]:e[n]=e[n]?e[n]+", "+s:s)}),e},pg=Symbol("internals");function Yo(t){return t&&String(t).trim().toLowerCase()}function ic(t){return t===!1||t==null?t:Z.isArray(t)?t.map(ic):String(t)}function bC(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 vC=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Rd(t,e,n,s,i){if(Z.isFunction(s))return s.call(this,e,n);if(i&&(e=n),!!Z.isString(e)){if(Z.isString(s))return e.indexOf(s)!==-1;if(Z.isRegExp(s))return s.test(e)}}function _C(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,s)=>n.toUpperCase()+s)}function SC(t,e){const n=Z.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 Un=class{constructor(e){e&&this.set(e)}set(e,n,s){const i=this;function r(a,l,c){const u=Yo(l);if(!u)throw new Error("header name must be a non-empty string");const d=Z.findKey(i,u);(!d||i[d]===void 0||c===!0||c===void 0&&i[d]!==!1)&&(i[d||l]=ic(a))}const o=(a,l)=>Z.forEach(a,(c,u)=>r(c,u,l));if(Z.isPlainObject(e)||e instanceof this.constructor)o(e,n);else if(Z.isString(e)&&(e=e.trim())&&!vC(e))o(yC(e),n);else if(Z.isObject(e)&&Z.isIterable(e)){let a={},l,c;for(const u of e){if(!Z.isArray(u))throw TypeError("Object iterator must return a key-value pair");a[c=u[0]]=(l=a[c])?Z.isArray(l)?[...l,u[1]]:[l,u[1]]:u[1]}o(a,n)}else e!=null&&r(n,e,s);return this}get(e,n){if(e=Yo(e),e){const s=Z.findKey(this,e);if(s){const i=this[s];if(!n)return i;if(n===!0)return bC(i);if(Z.isFunction(n))return n.call(this,i,s);if(Z.isRegExp(n))return n.exec(i);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=Yo(e),e){const s=Z.findKey(this,e);return!!(s&&this[s]!==void 0&&(!n||Rd(this,this[s],s,n)))}return!1}delete(e,n){const s=this;let i=!1;function r(o){if(o=Yo(o),o){const a=Z.findKey(s,o);a&&(!n||Rd(s,s[a],a,n))&&(delete s[a],i=!0)}}return Z.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||Rd(this,this[r],r,e,!0))&&(delete this[r],i=!0)}return i}normalize(e){const n=this,s={};return Z.forEach(this,(i,r)=>{const o=Z.findKey(s,r);if(o){n[o]=ic(i),delete n[r];return}const a=e?_C(r):String(r).trim();a!==r&&delete n[r],n[a]=ic(i),s[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const n=Object.create(null);return Z.forEach(this,(s,i)=>{s!=null&&s!==!1&&(n[i]=e&&Z.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(` -`)}getSetCookie(){return this.get("set-cookie")||[]}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[pg]=this[pg]={accessors:{}}).accessors,i=this.prototype;function r(o){const a=Yo(o);s[a]||(SC(i,o),s[a]=!0)}return Z.isArray(e)?e.forEach(r):r(e),this}};Un.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Z.reduceDescriptors(Un.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(s){this[n]=s}}});Z.freezeMethods(Un);function $d(t,e){const n=this||cl,s=e||n,i=Un.from(s.headers);let r=s.data;return Z.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 Fo(t,e,n){jt.call(this,t??"canceled",jt.ERR_CANCELED,e,n),this.name="CanceledError"}Z.inherits(Fo,jt,{__CANCEL__:!0});function v0(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 EC(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function wC(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(...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 Vc=(t,e,n=3)=>{let s=0;const i=wC(50,250);return kC(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)},mg=(t,e)=>{const n=t!=null;return[s=>e[0]({lengthComputable:n,total:t,loaded:s}),e[1]]},gg=t=>(...e)=>Z.asap(()=>t(...e)),TC=vn.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,vn.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(vn.origin),vn.navigator&&/(msie|trident)/i.test(vn.navigator.userAgent)):()=>!0,CC=vn.hasStandardBrowserEnv?{write(t,e,n,s,i,r){const o=[t+"="+encodeURIComponent(e)];Z.isNumber(n)&&o.push("expires="+new Date(n).toGMTString()),Z.isString(s)&&o.push("path="+s),Z.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 AC(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function OC(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function _0(t,e,n){let s=!AC(e);return t&&(s||n==!1)?OC(t,e):e}const yg=t=>t instanceof Un?{...t}:t;function Ir(t,e){e=e||{};const n={};function s(c,u,d,f){return Z.isPlainObject(c)&&Z.isPlainObject(u)?Z.merge.call({caseless:f},c,u):Z.isPlainObject(u)?Z.merge({},u):Z.isArray(u)?u.slice():u}function i(c,u,d,f){if(Z.isUndefined(u)){if(!Z.isUndefined(c))return s(void 0,c,d,f)}else return s(c,u,d,f)}function r(c,u){if(!Z.isUndefined(u))return s(void 0,u)}function o(c,u){if(Z.isUndefined(u)){if(!Z.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(yg(c),yg(u),d,!0)};return Z.forEach(Object.keys({...t,...e}),function(u){const d=l[u]||i,f=d(t[u],e[u],u);Z.isUndefined(f)&&d!==a||(n[u]=f)}),n}const S0=t=>{const e=Ir({},t);let{data:n,withXSRFToken:s,xsrfHeaderName:i,xsrfCookieName:r,headers:o,auth:a}=e;e.headers=o=Un.from(o),e.url=m0(_0(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):"")));let l;if(Z.isFormData(n)){if(vn.hasStandardBrowserEnv||vn.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(vn.hasStandardBrowserEnv&&(s&&Z.isFunction(s)&&(s=s(e)),s||s!==!1&&TC(e.url))){const c=i&&r&&CC.read(r);c&&o.set(i,c)}return e},xC=typeof XMLHttpRequest<"u",IC=xC&&function(t){return new Promise(function(n,s){const i=S0(t);let r=i.data;const o=Un.from(i.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:c}=i,u,d,f,h,p;function m(){h&&h(),p&&p(),i.cancelToken&&i.cancelToken.unsubscribe(u),i.signal&&i.signal.removeEventListener("abort",u)}let b=new XMLHttpRequest;b.open(i.method.toUpperCase(),i.url,!0),b.timeout=i.timeout;function y(){if(!b)return;const g=Un.from("getAllResponseHeaders"in b&&b.getAllResponseHeaders()),S={data:!a||a==="text"||a==="json"?b.responseText:b.response,status:b.status,statusText:b.statusText,headers:g,config:t,request:b};v0(function(I){n(I),m()},function(I){s(I),m()},S),b=null}"onloadend"in b?b.onloadend=y:b.onreadystatechange=function(){!b||b.readyState!==4||b.status===0&&!(b.responseURL&&b.responseURL.indexOf("file:")===0)||setTimeout(y)},b.onabort=function(){b&&(s(new jt("Request aborted",jt.ECONNABORTED,t,b)),b=null)},b.onerror=function(){s(new jt("Network Error",jt.ERR_NETWORK,t,b)),b=null},b.ontimeout=function(){let v=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded";const S=i.transitional||g0;i.timeoutErrorMessage&&(v=i.timeoutErrorMessage),s(new jt(v,S.clarifyTimeoutError?jt.ETIMEDOUT:jt.ECONNABORTED,t,b)),b=null},r===void 0&&o.setContentType(null),"setRequestHeader"in b&&Z.forEach(o.toJSON(),function(v,S){b.setRequestHeader(S,v)}),Z.isUndefined(i.withCredentials)||(b.withCredentials=!!i.withCredentials),a&&a!=="json"&&(b.responseType=i.responseType),c&&([f,p]=Vc(c,!0),b.addEventListener("progress",f)),l&&b.upload&&([d,h]=Vc(l),b.upload.addEventListener("progress",d),b.upload.addEventListener("loadend",h)),(i.cancelToken||i.signal)&&(u=g=>{b&&(s(!g||g.type?new Fo(null,t,b):g),b.abort(),b=null)},i.cancelToken&&i.cancelToken.subscribe(u),i.signal&&(i.signal.aborted?u():i.signal.addEventListener("abort",u)));const _=EC(i.url);if(_&&vn.protocols.indexOf(_)===-1){s(new jt("Unsupported protocol "+_+":",jt.ERR_BAD_REQUEST,t));return}b.send(r||null)})},NC=(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 Fo(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=()=>Z.asap(a),l}},PC=function*(t,e){let n=t.byteLength;if(n{const i=DC(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})},Mu=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",E0=Mu&&typeof ReadableStream=="function",LC=Mu&&(typeof TextEncoder=="function"?(t=>e=>t.encode(e))(new TextEncoder):async t=>new Uint8Array(await new Response(t).arrayBuffer())),w0=(t,...e)=>{try{return!!t(...e)}catch{return!1}},RC=E0&&w0(()=>{let t=!1;const e=new Request(vn.origin,{body:new ReadableStream,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type");return t&&!e}),vg=64*1024,Kf=E0&&w0(()=>Z.isReadableStream(new Response("").body)),Hc={stream:Kf&&(t=>t.body)};Mu&&(t=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!Hc[e]&&(Hc[e]=Z.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 $C=async t=>{if(t==null)return 0;if(Z.isBlob(t))return t.size;if(Z.isSpecCompliantForm(t))return(await new Request(vn.origin,{method:"POST",body:t}).arrayBuffer()).byteLength;if(Z.isArrayBufferView(t)||Z.isArrayBuffer(t))return t.byteLength;if(Z.isURLSearchParams(t)&&(t=t+""),Z.isString(t))return(await LC(t)).byteLength},FC=async(t,e)=>{const n=Z.toFiniteNumber(t.getContentLength());return n??$C(e)},VC=Mu&&(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}=S0(t);c=c?(c+"").toLowerCase():"text";let h=NC([i,r&&r.toAbortSignal()],o),p;const m=h&&h.unsubscribe&&(()=>{h.unsubscribe()});let b;try{if(l&&RC&&n!=="get"&&n!=="head"&&(b=await FC(u,s))!==0){let S=new Request(e,{method:"POST",body:s,duplex:"half"}),k;if(Z.isFormData(s)&&(k=S.headers.get("content-type"))&&u.setContentType(k),S.body){const[I,M]=mg(b,Vc(gg(l)));s=bg(S.body,vg,I,M)}}Z.isString(d)||(d=d?"include":"omit");const y="credentials"in Request.prototype;p=new Request(e,{...f,signal:h,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:s,duplex:"half",credentials:y?d:void 0});let _=await fetch(p,f);const g=Kf&&(c==="stream"||c==="response");if(Kf&&(a||g&&m)){const S={};["status","statusText","headers"].forEach(T=>{S[T]=_[T]});const k=Z.toFiniteNumber(_.headers.get("content-length")),[I,M]=a&&mg(k,Vc(gg(a),!0))||[];_=new Response(bg(_.body,vg,I,()=>{M&&M(),m&&m()}),S)}c=c||"text";let v=await Hc[Z.findKey(Hc,c)||"text"](_,t);return!g&&m&&m(),await new Promise((S,k)=>{v0(S,k,{data:v,headers:Un.from(_.headers),status:_.status,statusText:_.statusText,config:t,request:p})})}catch(y){throw m&&m(),y&&y.name==="TypeError"&&/Load failed|fetch/i.test(y.message)?Object.assign(new jt("Network Error",jt.ERR_NETWORK,t,p),{cause:y.cause||y}):jt.from(y,y&&y.code,t,p)}}),zf={http:tC,xhr:IC,fetch:VC};Z.forEach(zf,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});const _g=t=>`- ${t}`,HC=t=>Z.isFunction(t)||t===null||t===!1,k0={getAdapter:t=>{t=Z.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(_g).join(` -`):" "+_g(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:zf};function Fd(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new Fo(null,t)}function Sg(t){return Fd(t),t.headers=Un.from(t.headers),t.data=$d.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),k0.getAdapter(t.adapter||cl.adapter)(t).then(function(s){return Fd(t),s.data=$d.call(t,t.transformResponse,s),s.headers=Un.from(s.headers),s},function(s){return b0(s)||(Fd(t),s&&s.response&&(s.response.data=$d.call(t,t.transformResponse,s.response),s.response.headers=Un.from(s.response.headers))),Promise.reject(s)})}const T0="1.11.0",Lu={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{Lu[t]=function(s){return typeof s===t||"a"+(e<1?"n ":" ")+t}});const Eg={};Lu.transitional=function(e,n,s){function i(r,o){return"[Axios v"+T0+"] 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&&!Eg[o]&&(Eg[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}};Lu.spelling=function(e){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${e}`),!0)};function UC(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 rc={assertOptions:UC,validators:Lu},Rs=rc.validators;let Tr=class{constructor(e){this.defaults=e||{},this.interceptors={request:new hg,response:new hg}}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=Ir(this.defaults,n);const{transitional:s,paramsSerializer:i,headers:r}=n;s!==void 0&&rc.assertOptions(s,{silentJSONParsing:Rs.transitional(Rs.boolean),forcedJSONParsing:Rs.transitional(Rs.boolean),clarifyTimeoutError:Rs.transitional(Rs.boolean)},!1),i!=null&&(Z.isFunction(i)?n.paramsSerializer={serialize:i}:rc.assertOptions(i,{encode:Rs.function,serialize:Rs.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),rc.assertOptions(n,{baseUrl:Rs.spelling("baseURL"),withXsrfToken:Rs.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=r&&Z.merge(r.common,r[n.method]);r&&Z.forEach(["delete","get","head","post","put","patch","common"],p=>{delete r[p]}),n.headers=Un.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 p=[Sg.bind(this),void 0];for(p.unshift(...a),p.push(...c),f=p.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 Fo(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 C0(function(i){e=i}),cancel:e}}};function BC(t){return function(n){return t.apply(null,n)}}function WC(t){return Z.isObject(t)&&t.isAxiosError===!0}const qf={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(qf).forEach(([t,e])=>{qf[e]=t});function A0(t){const e=new Tr(t),n=s0(Tr.prototype.request,e);return Z.extend(n,Tr.prototype,e,{allOwnKeys:!0}),Z.extend(n,e,null,{allOwnKeys:!0}),n.create=function(i){return A0(Ir(t,i))},n}const ut=A0(cl);ut.Axios=Tr;ut.CanceledError=Fo;ut.CancelToken=jC;ut.isCancel=b0;ut.VERSION=T0;ut.toFormData=Du;ut.AxiosError=jt;ut.Cancel=ut.CanceledError;ut.all=function(e){return Promise.all(e)};ut.spread=BC;ut.isAxiosError=WC;ut.mergeConfig=Ir;ut.AxiosHeaders=Un;ut.formToJSON=t=>y0(Z.isHTMLForm(t)?new FormData(t):t);ut.getAdapter=k0.getAdapter;ut.HttpStatusCode=qf;ut.default=ut;const{Axios:fU,AxiosError:hU,CanceledError:pU,isCancel:mU,CancelToken:gU,VERSION:yU,all:bU,Cancel:vU,isAxiosError:_U,spread:SU,toFormData:EU,AxiosHeaders:wU,HttpStatusCode:kU,formToJSON:TU,getAdapter:CU,mergeConfig:AU}=ut;/*! + */let s0;const Lu=t=>s0=t,i0=Symbol();function Gf(t){return t&&typeof t=="object"&&Object.prototype.toString.call(t)==="[object Object]"&&typeof t.toJSON!="function"}var wa;(function(t){t.direct="direct",t.patchObject="patch object",t.patchFunction="patch function"})(wa||(wa={}));function Wk(){const t=vu(!0),e=t.run(()=>cs({}));let n=[],s=[];const i=Cu({install(r){Lu(i),i._a=r,r.provide(i0,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 r0=()=>{};function pg(t,e,n,s=r0){t.push(e);const i=()=>{const r=t.indexOf(e);r>-1&&(t.splice(r,1),s())};return!n&&Vh()&&l1(i),i}function Kr(t,...e){t.slice().forEach(n=>{n(...e)})}const Gk=t=>t(),mg=Symbol(),Ud=Symbol();function Kf(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];Gf(i)&&Gf(s)&&t.hasOwnProperty(n)&&!Ie(s)&&!Ks(s)?t[n]=Kf(i,s):t[n]=s}return t}const Kk=Symbol();function qk(t){return!Gf(t)||!Object.prototype.hasOwnProperty.call(t,Kk)}const{assign:$i}=Object;function zk(t){return!!(Ie(t)&&t.effect)}function Xk(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=T1(n.state.value[t]);return $i(u,r,Object.keys(o||{}).reduce((d,f)=>(d[f]=Cu(Je(()=>{Lu(n);const h=n._s.get(t);return o[f].call(h,h)})),d),{}))}return l=o0(t,c,e,n,s,!0),l}function o0(t,e,n={},s,i,r){let o;const a=$i({actions:{}},n),l={deep:!0};let c,u,d=[],f=[],h;const p=s.state.value[t];!r&&!p&&(s.state.value[t]={}),cs({});let m;function _(D){let C;c=u=!1,typeof D=="function"?(D(s.state.value[t]),C={type:wa.patchFunction,storeId:t,events:h}):(Kf(s.state.value[t],D),C={type:wa.patchObject,payload:D,storeId:t,events:h});const R=m=Symbol();Vr().then(()=>{m===R&&(c=!0)}),u=!0,Kr(d,C,s.state.value[t])}const y=r?function(){const{state:C}=n,R=C?C():{};this.$patch(B=>{$i(B,R)})}:r0;function v(){o.stop(),d=[],f=[],s._s.delete(t)}const g=(D,C="")=>{if(mg in D)return D[Ud]=C,D;const R=function(){Lu(s);const B=Array.from(arguments),$=[],H=[];function X(Q){$.push(Q)}function ot(Q){H.push(Q)}Kr(f,{args:B,name:R[Ud],store:S,after:X,onError:ot});let K;try{K=D.apply(this&&this.$id===t?this:S,B)}catch(Q){throw Kr(H,Q),Q}return K instanceof Promise?K.then(Q=>(Kr($,Q),Q)).catch(Q=>(Kr(H,Q),Promise.reject(Q))):(Kr($,K),K)};return R[mg]=!0,R[Ud]=C,R},b={_p:s,$id:t,$onAction:pg.bind(null,f),$patch:_,$reset:y,$subscribe(D,C={}){const R=pg(d,D,C.detached,()=>B()),B=o.run(()=>Zn(()=>s.state.value[t],$=>{(C.flush==="sync"?u:c)&&D({storeId:t,type:wa.direct,events:h},$)},$i({},l,C)));return R},$dispose:v},S=$o(b);s._s.set(t,S);const I=(s._a&&s._a.runWithContext||Gk)(()=>s._e.run(()=>(o=vu()).run(()=>e({action:g}))));for(const D in I){const C=I[D];if(Ie(C)&&!zk(C)||Ks(C))r||(p&&qk(C)&&(Ie(C)?C.value=p[D]:Kf(C,p[D])),s.state.value[t][D]=C);else if(typeof C=="function"){const R=g(C,D);I[D]=R,a.actions[D]=C}}return $i(S,I),$i(ne(S),I),Object.defineProperty(S,"$state",{get:()=>s.state.value[t],set:D=>{_(C=>{$i(C,D)})}}),s._p.forEach(D=>{$i(S,o.run(()=>D({store:S,app:s._a,pinia:s,options:a})))}),p&&r&&n.hydrate&&n.hydrate(S.$state,p),c=!0,u=!0,S}/*! #__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=tv();return o=o||(l?us(i0,null):null),o&&Lu(o),o=s0,o._s.has(t)||(i?o0(t,e,s,o):Xk(t,s,o)),o._s.get(t)}return r.$id=t,r}const ko=Ds("NotificationsStore",{actions:{add(t){const e={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)}},getters:{isEmpty:t=>t.list.length===0},state:()=>({list:[]})}),nt=(t,e)=>{const n=t.__vccOpts||t;for(const[s,i]of e)n[s]=i;return n},Yk={name:"ListNotifications",setup(){return{notificationsStore:ko()}}},Zk={key:0,class:"notifications"},Jk={class:"columns is-centered"},Qk={class:"column is-half"},tC=["onClick"],eC=["textContent"];function nC(t,e,n,s,i,r){return s.notificationsStore.isEmpty?_t("",!0):(O(),F("section",Zk,[P("div",Jk,[P("div",Qk,[(O(!0),F(it,null,de(s.notificationsStore.list,(o,a)=>(O(),F("div",{key:a,class:Gt(["notification",o.type?`is-${o.type}`:""])},[P("button",{class:"delete",onClick:l=>s.notificationsStore.remove(o)},null,8,tC),P("div",{class:"text",textContent:et(o.text)},null,8,eC)],2))),128))])])]))}const sC=nt(Yk,[["render",nC],["__scopeId","data-v-1e835d55"]]),iC={name:"ControlPinField",props:{placeholder:{required:!0,type:String}},emits:["input"],data(){return{value:""}},mounted(){setTimeout(()=>{this.$refs.input.focus()},10)},methods:{validate(t){const{validity:e}=t.target,n=e.patternMismatch||e.valueMissing;this.$emit("input",this.value,n)}}},rC={class:"field is-grouped"},oC={class:"control"},aC=["placeholder"];function lC(t,e,n,s,i,r){return O(),F("div",rC,[P("div",oC,[ms(P("input",{ref:"input","onUpdate:modelValue":e[0]||(e[0]=o=>i.value=o),class:"input",inputmode:"numeric",pattern:"[\\d]{4}",placeholder:n.placeholder,onInput:e[1]||(e[1]=(...o)=>r.validate&&r.validate(...o))},null,40,aC),[[Zs,i.value]])]),le(t.$slots,"default")])}const a0=nt(iC,[["render",lC]]),cC={name:"ModalDialog",props:{actions:{required:!0,type:Array},show:Boolean,title:{default:"",type:String}},emits:["close"],watch:{show(t){const{classList:e}=document.querySelector("html");t?e.add("is-clipped"):e.remove("is-clipped")}}},uC={key:0,class:"modal is-active"},dC={class:"modal-content"},fC={class:"card is-shadowless"},hC={class:"card-header"},pC=["textContent"],mC={class:"card-header-icon"},gC={class:"card-content"},yC={key:0,class:"card-footer"},bC=["disabled","onClick"],vC=["textContent"];function _C(t,e,n,s,i,r){const o=w("mdicon");return O(),yt($v,{name:"fade"},{default:M(()=>[n.show?(O(),F("div",uC,[P("div",{class:"modal-background",onClick:e[0]||(e[0]=a=>t.$emit("close"))}),P("div",dC,[P("div",fC,[P("div",hC,[n.title?(O(),F("div",{key:0,class:"card-header-title",textContent:et(n.title)},null,8,pC)):_t("",!0),P("div",mC,[P("button",{class:"delete",onClick:e[1]||(e[1]=a=>t.$emit("close"))})])]),P("div",gC,[le(t.$slots,"content",{},void 0,!0)]),n.actions.length?(O(),F("footer",yC,[(O(!0),F(it,null,de(n.actions,a=>(O(),F("button",{key:a.key,class:Gt(["card-footer-item is-small",{"is-disabled":a.disabled}]),disabled:a.disabled,onClick:a.handler},[E(o,{class:"icon",name:a.icon,size:"16"},null,8,["name"]),P("span",{class:"is-size-7",textContent:et(t.$t(a.key))},null,8,vC)],10,bC))),128))])):_t("",!0)])])])):_t("",!0)]),_:3})}const rr=nt(cC,[["render",_C],["__scopeId","data-v-82b4fa81"]]);function l0(t,e){return function(){return t.apply(e,arguments)}}const{toString:SC}=Object.prototype,{getPrototypeOf:dp}=Object,{iterator:Mu,toStringTag:c0}=Symbol,$u=(t=>e=>{const n=SC.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Ls=t=>(t=t.toLowerCase(),e=>$u(e)===t),Fu=t=>e=>typeof e===t,{isArray:Uo}=Array,Ga=Fu("undefined");function fl(t){return t!==null&&!Ga(t)&&t.constructor!==null&&!Ga(t.constructor)&&Hn(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const u0=Ls("ArrayBuffer");function EC(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&u0(t.buffer),e}const wC=Fu("string"),Hn=Fu("function"),d0=Fu("number"),hl=t=>t!==null&&typeof t=="object",kC=t=>t===!0||t===!1,cc=t=>{if($u(t)!=="object")return!1;const e=dp(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(c0 in t)&&!(Mu in t)},CC=t=>{if(!hl(t)||fl(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},TC=Ls("Date"),AC=Ls("File"),OC=Ls("Blob"),xC=Ls("FileList"),IC=t=>hl(t)&&Hn(t.pipe),NC=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||Hn(t.append)&&((e=$u(t))==="formdata"||e==="object"&&Hn(t.toString)&&t.toString()==="[object FormData]"))},PC=Ls("URLSearchParams"),[RC,DC,LC,MC]=["ReadableStream","Request","Response","Headers"].map(Ls),$C=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function pl(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let s,i;if(typeof t!="object"&&(t=[t]),Uo(t))for(s=0,i=t.length;s0;)if(i=n[s],e===i.toLowerCase())return i;return null}const yr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,h0=t=>!Ga(t)&&t!==yr;function qf(){const{caseless:t}=h0(this)&&this||{},e={},n=(s,i)=>{const r=t&&f0(e,i)||i;cc(e[r])&&cc(s)?e[r]=qf(e[r],s):cc(s)?e[r]=qf({},s):Uo(s)?e[r]=s.slice():e[r]=s};for(let s=0,i=arguments.length;s(pl(e,(i,r)=>{n&&Hn(i)?t[r]=l0(i,n):t[r]=i},{allOwnKeys:s}),t),VC=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),UC=(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)},HC=(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&&dp(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},jC=(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},BC=t=>{if(!t)return null;if(Uo(t))return t;let e=t.length;if(!d0(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},WC=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&dp(Uint8Array)),GC=(t,e)=>{const s=(t&&t[Mu]).call(t);let i;for(;(i=s.next())&&!i.done;){const r=i.value;e.call(t,r[0],r[1])}},KC=(t,e)=>{let n;const s=[];for(;(n=t.exec(e))!==null;)s.push(n);return s},qC=Ls("HTMLFormElement"),zC=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,i){return s.toUpperCase()+i}),gg=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),XC=Ls("RegExp"),p0=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),s={};pl(n,(i,r)=>{let o;(o=e(i,r,t))!==!1&&(s[r]=o||i)}),Object.defineProperties(t,s)},YC=t=>{p0(t,(e,n)=>{if(Hn(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=t[n];if(Hn(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+"'")})}})},ZC=(t,e)=>{const n={},s=i=>{i.forEach(r=>{n[r]=!0})};return Uo(t)?s(t):s(String(t).split(e)),n},JC=()=>{},QC=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function tT(t){return!!(t&&Hn(t.append)&&t[c0]==="FormData"&&t[Mu])}const eT=t=>{const e=new Array(10),n=(s,i)=>{if(hl(s)){if(e.indexOf(s)>=0)return;if(fl(s))return s;if(!("toJSON"in s)){e[i]=s;const r=Uo(s)?[]:{};return pl(s,(o,a)=>{const l=n(o,i+1);!Ga(l)&&(r[a]=l)}),e[i]=void 0,r}}return s};return n(t,0)},nT=Ls("AsyncFunction"),sT=t=>t&&(hl(t)||Hn(t))&&Hn(t.then)&&Hn(t.catch),m0=((t,e)=>t?setImmediate:e?((n,s)=>(yr.addEventListener("message",({source:i,data:r})=>{i===yr&&r===n&&s.length&&s.shift()()},!1),i=>{s.push(i),yr.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Hn(yr.postMessage)),iT=typeof queueMicrotask<"u"?queueMicrotask.bind(yr):typeof process<"u"&&process.nextTick||m0,rT=t=>t!=null&&Hn(t[Mu]),Z={isArray:Uo,isArrayBuffer:u0,isBuffer:fl,isFormData:NC,isArrayBufferView:EC,isString:wC,isNumber:d0,isBoolean:kC,isObject:hl,isPlainObject:cc,isEmptyObject:CC,isReadableStream:RC,isRequest:DC,isResponse:LC,isHeaders:MC,isUndefined:Ga,isDate:TC,isFile:AC,isBlob:OC,isRegExp:XC,isFunction:Hn,isStream:IC,isURLSearchParams:PC,isTypedArray:WC,isFileList:xC,forEach:pl,merge:qf,extend:FC,trim:$C,stripBOM:VC,inherits:UC,toFlatObject:HC,kindOf:$u,kindOfTest:Ls,endsWith:jC,toArray:BC,forEachEntry:GC,matchAll:KC,isHTMLForm:qC,hasOwnProperty:gg,hasOwnProp:gg,reduceDescriptors:p0,freezeMethods:YC,toObjectSet:ZC,toCamelCase:zC,noop:JC,toFiniteNumber:QC,findKey:f0,global:yr,isContextDefined:h0,isSpecCompliantForm:tT,toJSONObject:eT,isAsyncFn:nT,isThenable:sT,setImmediate:m0,asap:iT,isIterable:rT};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)}Z.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:Z.toJSONObject(this.config),code:this.code,status:this.status}}});const g0=jt.prototype,y0={};["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=>{y0[t]={value:t}});Object.defineProperties(jt,y0);Object.defineProperty(g0,"isAxiosError",{value:!0});jt.from=(t,e,n,s,i,r)=>{const o=Object.create(g0);return Z.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 oT=null;function zf(t){return Z.isPlainObject(t)||Z.isArray(t)}function b0(t){return Z.endsWith(t,"[]")?t.slice(0,-2):t}function yg(t,e,n){return t?t.concat(e).map(function(i,r){return i=b0(i),!n&&r?"["+i+"]":i}).join(n?".":""):e}function aT(t){return Z.isArray(t)&&!t.some(zf)}const lT=Z.toFlatObject(Z,{},null,function(e){return/^is[A-Z]/.test(e)});function Vu(t,e,n){if(!Z.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,n=Z.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,_){return!Z.isUndefined(_[m])});const s=n.metaTokens,i=n.visitor||u,r=n.dots,o=n.indexes,l=(n.Blob||typeof Blob<"u"&&Blob)&&Z.isSpecCompliantForm(e);if(!Z.isFunction(i))throw new TypeError("visitor must be a function");function c(p){if(p===null)return"";if(Z.isDate(p))return p.toISOString();if(Z.isBoolean(p))return p.toString();if(!l&&Z.isBlob(p))throw new jt("Blob is not supported. Use a Buffer instead.");return Z.isArrayBuffer(p)||Z.isTypedArray(p)?l&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function u(p,m,_){let y=p;if(p&&!_&&typeof p=="object"){if(Z.endsWith(m,"{}"))m=s?m:m.slice(0,-2),p=JSON.stringify(p);else if(Z.isArray(p)&&aT(p)||(Z.isFileList(p)||Z.endsWith(m,"[]"))&&(y=Z.toArray(p)))return m=b0(m),y.forEach(function(g,b){!(Z.isUndefined(g)||g===null)&&e.append(o===!0?yg([m],b,r):o===null?m:m+"[]",c(g))}),!1}return zf(p)?!0:(e.append(yg(_,m,r),c(p)),!1)}const d=[],f=Object.assign(lT,{defaultVisitor:u,convertValue:c,isVisitable:zf});function h(p,m){if(!Z.isUndefined(p)){if(d.indexOf(p)!==-1)throw Error("Circular reference detected in "+m.join("."));d.push(p),Z.forEach(p,function(y,v){(!(Z.isUndefined(y)||y===null)&&i.call(e,y,Z.isString(v)?v.trim():v,m,f))===!0&&h(y,m?m.concat(v):[v])}),d.pop()}}if(!Z.isObject(t))throw new TypeError("data must be an object");return h(t),e}function bg(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(s){return e[s]})}function fp(t,e){this._pairs=[],t&&Vu(t,this,e)}const v0=fp.prototype;v0.append=function(e,n){this._pairs.push([e,n])};v0.toString=function(e){const n=e?function(s){return e.call(this,s,bg)}:bg;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};function cT(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function _0(t,e,n){if(!e)return t;const s=n&&n.encode||cT;Z.isFunction(n)&&(n={serialize:n});const i=n&&n.serialize;let r;if(i?r=i(e,n):r=Z.isURLSearchParams(e)?e.toString():new fp(e,n).toString(s),r){const o=t.indexOf("#");o!==-1&&(t=t.slice(0,o)),t+=(t.indexOf("?")===-1?"?":"&")+r}return t}class vg{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){Z.forEach(this.handlers,function(s){s!==null&&e(s)})}}const S0={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},uT=typeof URLSearchParams<"u"?URLSearchParams:fp,dT=typeof FormData<"u"?FormData:null,fT=typeof Blob<"u"?Blob:null,hT={isBrowser:!0,classes:{URLSearchParams:uT,FormData:dT,Blob:fT},protocols:["http","https","file","blob","url","data"]},hp=typeof window<"u"&&typeof document<"u",Xf=typeof navigator=="object"&&navigator||void 0,pT=hp&&(!Xf||["ReactNative","NativeScript","NS"].indexOf(Xf.product)<0),mT=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",gT=hp&&window.location.href||"http://localhost",yT=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:hp,hasStandardBrowserEnv:pT,hasStandardBrowserWebWorkerEnv:mT,navigator:Xf,origin:gT},Symbol.toStringTag,{value:"Module"})),vn={...yT,...hT};function bT(t,e){return Vu(t,new vn.classes.URLSearchParams,{visitor:function(n,s,i,r){return vn.isNode&&Z.isBuffer(n)?(this.append(s,n.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)},...e})}function vT(t){return Z.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function _T(t){const e={},n=Object.keys(t);let s;const i=n.length;let r;for(s=0;s=n.length;return o=!o&&Z.isArray(i)?i.length:o,l?(Z.hasOwnProp(i,o)?i[o]=[i[o],s]:i[o]=s,!a):((!i[o]||!Z.isObject(i[o]))&&(i[o]=[]),e(n,s,i[o],r)&&Z.isArray(i[o])&&(i[o]=_T(i[o])),!a)}if(Z.isFormData(t)&&Z.isFunction(t.entries)){const n={};return Z.forEachEntry(t,(s,i)=>{e(vT(s),i,n,0)}),n}return null}function ST(t,e,n){if(Z.isString(t))try{return(e||JSON.parse)(t),Z.trim(t)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(t)}const ml={transitional:S0,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const s=n.getContentType()||"",i=s.indexOf("application/json")>-1,r=Z.isObject(e);if(r&&Z.isHTMLForm(e)&&(e=new FormData(e)),Z.isFormData(e))return i?JSON.stringify(E0(e)):e;if(Z.isArrayBuffer(e)||Z.isBuffer(e)||Z.isStream(e)||Z.isFile(e)||Z.isBlob(e)||Z.isReadableStream(e))return e;if(Z.isArrayBufferView(e))return e.buffer;if(Z.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 bT(e,this.formSerializer).toString();if((a=Z.isFileList(e))||s.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return Vu(a?{"files[]":e}:e,l&&new l,this.formSerializer)}}return r||i?(n.setContentType("application/json",!1),ST(e)):e}],transformResponse:[function(e){const n=this.transitional||ml.transitional,s=n&&n.forcedJSONParsing,i=this.responseType==="json";if(Z.isResponse(e)||Z.isReadableStream(e))return e;if(e&&Z.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:vn.classes.FormData,Blob:vn.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Z.forEach(["delete","get","head","post","put","patch"],t=>{ml.headers[t]={}});const ET=Z.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"]),wT=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]&&ET[n])&&(n==="set-cookie"?e[n]?e[n].push(s):e[n]=[s]:e[n]=e[n]?e[n]+", "+s:s)}),e},_g=Symbol("internals");function Qo(t){return t&&String(t).trim().toLowerCase()}function uc(t){return t===!1||t==null?t:Z.isArray(t)?t.map(uc):String(t)}function kT(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 CT=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Hd(t,e,n,s,i){if(Z.isFunction(s))return s.call(this,e,n);if(i&&(e=n),!!Z.isString(e)){if(Z.isString(s))return e.indexOf(s)!==-1;if(Z.isRegExp(s))return s.test(e)}}function TT(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,s)=>n.toUpperCase()+s)}function AT(t,e){const n=Z.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 jn=class{constructor(e){e&&this.set(e)}set(e,n,s){const i=this;function r(a,l,c){const u=Qo(l);if(!u)throw new Error("header name must be a non-empty string");const d=Z.findKey(i,u);(!d||i[d]===void 0||c===!0||c===void 0&&i[d]!==!1)&&(i[d||l]=uc(a))}const o=(a,l)=>Z.forEach(a,(c,u)=>r(c,u,l));if(Z.isPlainObject(e)||e instanceof this.constructor)o(e,n);else if(Z.isString(e)&&(e=e.trim())&&!CT(e))o(wT(e),n);else if(Z.isObject(e)&&Z.isIterable(e)){let a={},l,c;for(const u of e){if(!Z.isArray(u))throw TypeError("Object iterator must return a key-value pair");a[c=u[0]]=(l=a[c])?Z.isArray(l)?[...l,u[1]]:[l,u[1]]:u[1]}o(a,n)}else e!=null&&r(n,e,s);return this}get(e,n){if(e=Qo(e),e){const s=Z.findKey(this,e);if(s){const i=this[s];if(!n)return i;if(n===!0)return kT(i);if(Z.isFunction(n))return n.call(this,i,s);if(Z.isRegExp(n))return n.exec(i);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=Qo(e),e){const s=Z.findKey(this,e);return!!(s&&this[s]!==void 0&&(!n||Hd(this,this[s],s,n)))}return!1}delete(e,n){const s=this;let i=!1;function r(o){if(o=Qo(o),o){const a=Z.findKey(s,o);a&&(!n||Hd(s,s[a],a,n))&&(delete s[a],i=!0)}}return Z.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||Hd(this,this[r],r,e,!0))&&(delete this[r],i=!0)}return i}normalize(e){const n=this,s={};return Z.forEach(this,(i,r)=>{const o=Z.findKey(s,r);if(o){n[o]=uc(i),delete n[r];return}const a=e?TT(r):String(r).trim();a!==r&&delete n[r],n[a]=uc(i),s[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const n=Object.create(null);return Z.forEach(this,(s,i)=>{s!=null&&s!==!1&&(n[i]=e&&Z.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(` +`)}getSetCookie(){return this.get("set-cookie")||[]}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[_g]=this[_g]={accessors:{}}).accessors,i=this.prototype;function r(o){const a=Qo(o);s[a]||(AT(i,o),s[a]=!0)}return Z.isArray(e)?e.forEach(r):r(e),this}};jn.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Z.reduceDescriptors(jn.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(s){this[n]=s}}});Z.freezeMethods(jn);function jd(t,e){const n=this||ml,s=e||n,i=jn.from(s.headers);let r=s.data;return Z.forEach(t,function(a){r=a.call(n,r,i.normalize(),e?e.status:void 0)}),i.normalize(),r}function w0(t){return!!(t&&t.__CANCEL__)}function Ho(t,e,n){jt.call(this,t??"canceled",jt.ERR_CANCELED,e,n),this.name="CanceledError"}Z.inherits(Ho,jt,{__CANCEL__:!0});function k0(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 OT(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function xT(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(...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 Gc=(t,e,n=3)=>{let s=0;const i=xT(50,250);return IT(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)},Sg=(t,e)=>{const n=t!=null;return[s=>e[0]({lengthComputable:n,total:t,loaded:s}),e[1]]},Eg=t=>(...e)=>Z.asap(()=>t(...e)),NT=vn.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,vn.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(vn.origin),vn.navigator&&/(msie|trident)/i.test(vn.navigator.userAgent)):()=>!0,PT=vn.hasStandardBrowserEnv?{write(t,e,n,s,i,r){const o=[t+"="+encodeURIComponent(e)];Z.isNumber(n)&&o.push("expires="+new Date(n).toGMTString()),Z.isString(s)&&o.push("path="+s),Z.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 RT(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function DT(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function C0(t,e,n){let s=!RT(e);return t&&(s||n==!1)?DT(t,e):e}const wg=t=>t instanceof jn?{...t}:t;function Pr(t,e){e=e||{};const n={};function s(c,u,d,f){return Z.isPlainObject(c)&&Z.isPlainObject(u)?Z.merge.call({caseless:f},c,u):Z.isPlainObject(u)?Z.merge({},u):Z.isArray(u)?u.slice():u}function i(c,u,d,f){if(Z.isUndefined(u)){if(!Z.isUndefined(c))return s(void 0,c,d,f)}else return s(c,u,d,f)}function r(c,u){if(!Z.isUndefined(u))return s(void 0,u)}function o(c,u){if(Z.isUndefined(u)){if(!Z.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(wg(c),wg(u),d,!0)};return Z.forEach(Object.keys({...t,...e}),function(u){const d=l[u]||i,f=d(t[u],e[u],u);Z.isUndefined(f)&&d!==a||(n[u]=f)}),n}const T0=t=>{const e=Pr({},t);let{data:n,withXSRFToken:s,xsrfHeaderName:i,xsrfCookieName:r,headers:o,auth:a}=e;e.headers=o=jn.from(o),e.url=_0(C0(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):"")));let l;if(Z.isFormData(n)){if(vn.hasStandardBrowserEnv||vn.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(vn.hasStandardBrowserEnv&&(s&&Z.isFunction(s)&&(s=s(e)),s||s!==!1&&NT(e.url))){const c=i&&r&&PT.read(r);c&&o.set(i,c)}return e},LT=typeof XMLHttpRequest<"u",MT=LT&&function(t){return new Promise(function(n,s){const i=T0(t);let r=i.data;const o=jn.from(i.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:c}=i,u,d,f,h,p;function m(){h&&h(),p&&p(),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 g=jn.from("getAllResponseHeaders"in _&&_.getAllResponseHeaders()),S={data:!a||a==="text"||a==="json"?_.responseText:_.response,status:_.status,statusText:_.statusText,headers:g,config:t,request:_};k0(function(I){n(I),m()},function(I){s(I),m()},S),_=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 b=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded";const S=i.transitional||S0;i.timeoutErrorMessage&&(b=i.timeoutErrorMessage),s(new jt(b,S.clarifyTimeoutError?jt.ETIMEDOUT:jt.ECONNABORTED,t,_)),_=null},r===void 0&&o.setContentType(null),"setRequestHeader"in _&&Z.forEach(o.toJSON(),function(b,S){_.setRequestHeader(S,b)}),Z.isUndefined(i.withCredentials)||(_.withCredentials=!!i.withCredentials),a&&a!=="json"&&(_.responseType=i.responseType),c&&([f,p]=Gc(c,!0),_.addEventListener("progress",f)),l&&_.upload&&([d,h]=Gc(l),_.upload.addEventListener("progress",d),_.upload.addEventListener("loadend",h)),(i.cancelToken||i.signal)&&(u=g=>{_&&(s(!g||g.type?new Ho(null,t,_):g),_.abort(),_=null)},i.cancelToken&&i.cancelToken.subscribe(u),i.signal&&(i.signal.aborted?u():i.signal.addEventListener("abort",u)));const v=OT(i.url);if(v&&vn.protocols.indexOf(v)===-1){s(new jt("Unsupported protocol "+v+":",jt.ERR_BAD_REQUEST,t));return}_.send(r||null)})},$T=(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 Ho(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=()=>Z.asap(a),l}},FT=function*(t,e){let n=t.byteLength;if(n{const i=VT(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})},Uu=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",A0=Uu&&typeof ReadableStream=="function",HT=Uu&&(typeof TextEncoder=="function"?(t=>e=>t.encode(e))(new TextEncoder):async t=>new Uint8Array(await new Response(t).arrayBuffer())),O0=(t,...e)=>{try{return!!t(...e)}catch{return!1}},jT=A0&&O0(()=>{let t=!1;const e=new Request(vn.origin,{body:new ReadableStream,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type");return t&&!e}),Cg=64*1024,Yf=A0&&O0(()=>Z.isReadableStream(new Response("").body)),Kc={stream:Yf&&(t=>t.body)};Uu&&(t=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!Kc[e]&&(Kc[e]=Z.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 BT=async t=>{if(t==null)return 0;if(Z.isBlob(t))return t.size;if(Z.isSpecCompliantForm(t))return(await new Request(vn.origin,{method:"POST",body:t}).arrayBuffer()).byteLength;if(Z.isArrayBufferView(t)||Z.isArrayBuffer(t))return t.byteLength;if(Z.isURLSearchParams(t)&&(t=t+""),Z.isString(t))return(await HT(t)).byteLength},WT=async(t,e)=>{const n=Z.toFiniteNumber(t.getContentLength());return n??BT(e)},GT=Uu&&(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}=T0(t);c=c?(c+"").toLowerCase():"text";let h=$T([i,r&&r.toAbortSignal()],o),p;const m=h&&h.unsubscribe&&(()=>{h.unsubscribe()});let _;try{if(l&&jT&&n!=="get"&&n!=="head"&&(_=await WT(u,s))!==0){let S=new Request(e,{method:"POST",body:s,duplex:"half"}),k;if(Z.isFormData(s)&&(k=S.headers.get("content-type"))&&u.setContentType(k),S.body){const[I,D]=Sg(_,Gc(Eg(l)));s=kg(S.body,Cg,I,D)}}Z.isString(d)||(d=d?"include":"omit");const y="credentials"in Request.prototype;p=new Request(e,{...f,signal:h,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:s,duplex:"half",credentials:y?d:void 0});let v=await fetch(p,f);const g=Yf&&(c==="stream"||c==="response");if(Yf&&(a||g&&m)){const S={};["status","statusText","headers"].forEach(C=>{S[C]=v[C]});const k=Z.toFiniteNumber(v.headers.get("content-length")),[I,D]=a&&Sg(k,Gc(Eg(a),!0))||[];v=new Response(kg(v.body,Cg,I,()=>{D&&D(),m&&m()}),S)}c=c||"text";let b=await Kc[Z.findKey(Kc,c)||"text"](v,t);return!g&&m&&m(),await new Promise((S,k)=>{k0(S,k,{data:b,headers:jn.from(v.headers),status:v.status,statusText:v.statusText,config:t,request:p})})}catch(y){throw m&&m(),y&&y.name==="TypeError"&&/Load failed|fetch/i.test(y.message)?Object.assign(new jt("Network Error",jt.ERR_NETWORK,t,p),{cause:y.cause||y}):jt.from(y,y&&y.code,t,p)}}),Zf={http:oT,xhr:MT,fetch:GT};Z.forEach(Zf,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});const Tg=t=>`- ${t}`,KT=t=>Z.isFunction(t)||t===null||t===!1,x0={getAdapter:t=>{t=Z.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(Tg).join(` +`):" "+Tg(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:Zf};function Bd(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new Ho(null,t)}function Ag(t){return Bd(t),t.headers=jn.from(t.headers),t.data=jd.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),x0.getAdapter(t.adapter||ml.adapter)(t).then(function(s){return Bd(t),s.data=jd.call(t,t.transformResponse,s),s.headers=jn.from(s.headers),s},function(s){return w0(s)||(Bd(t),s&&s.response&&(s.response.data=jd.call(t,t.transformResponse,s.response),s.response.headers=jn.from(s.response.headers))),Promise.reject(s)})}const I0="1.11.0",Hu={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{Hu[t]=function(s){return typeof s===t||"a"+(e<1?"n ":" ")+t}});const Og={};Hu.transitional=function(e,n,s){function i(r,o){return"[Axios v"+I0+"] 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}};Hu.spelling=function(e){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${e}`),!0)};function qT(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 dc={assertOptions:qT,validators:Hu},Fs=dc.validators;let Ar=class{constructor(e){this.defaults=e||{},this.interceptors={request:new vg,response:new vg}}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=Pr(this.defaults,n);const{transitional:s,paramsSerializer:i,headers:r}=n;s!==void 0&&dc.assertOptions(s,{silentJSONParsing:Fs.transitional(Fs.boolean),forcedJSONParsing:Fs.transitional(Fs.boolean),clarifyTimeoutError:Fs.transitional(Fs.boolean)},!1),i!=null&&(Z.isFunction(i)?n.paramsSerializer={serialize:i}:dc.assertOptions(i,{encode:Fs.function,serialize:Fs.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),dc.assertOptions(n,{baseUrl:Fs.spelling("baseURL"),withXsrfToken:Fs.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=r&&Z.merge(r.common,r[n.method]);r&&Z.forEach(["delete","get","head","post","put","patch","common"],p=>{delete r[p]}),n.headers=jn.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 p=[Ag.bind(this),void 0];for(p.unshift(...a),p.push(...c),f=p.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 Ho(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 N0(function(i){e=i}),cancel:e}}};function XT(t){return function(n){return t.apply(null,n)}}function YT(t){return Z.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 P0(t){const e=new Ar(t),n=l0(Ar.prototype.request,e);return Z.extend(n,Ar.prototype,e,{allOwnKeys:!0}),Z.extend(n,e,null,{allOwnKeys:!0}),n.create=function(i){return P0(Pr(t,i))},n}const ut=P0(ml);ut.Axios=Ar;ut.CanceledError=Ho;ut.CancelToken=zT;ut.isCancel=w0;ut.VERSION=I0;ut.toFormData=Vu;ut.AxiosError=jt;ut.Cancel=ut.CanceledError;ut.all=function(e){return Promise.all(e)};ut.spread=XT;ut.isAxiosError=YT;ut.mergeConfig=Pr;ut.AxiosHeaders=jn;ut.formToJSON=t=>E0(Z.isHTMLForm(t)?new FormData(t):t);ut.getAdapter=x0.getAdapter;ut.HttpStatusCode=Jf;ut.default=ut;const{Axios:qH,AxiosError:zH,CanceledError:XH,isCancel:YH,CancelToken:ZH,VERSION:JH,all:QH,Cancel:tj,isAxiosError:ej,spread:nj,toFormData:sj,AxiosHeaders:ij,HttpStatusCode:rj,formToJSON:oj,getAdapter:aj,mergeConfig:lj}=ut;/*! * shared v11.1.11 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function GC(t,e){typeof console<"u"&&(console.warn("[intlify] "+t),e&&console.warn(e.stack))}const Uc=typeof window<"u",ir=(t,e=!1)=>e?Symbol.for(t):Symbol(t),KC=(t,e,n)=>zC({l:t,k:e,s:n}),zC=t=>JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),qe=t=>typeof t=="number"&&isFinite(t),qC=t=>dp(t)==="[object Date]",jc=t=>dp(t)==="[object RegExp]",Ru=t=>se(t)&&Object.keys(t).length===0,tn=Object.assign,XC=Object.create,Ee=(t=null)=>XC(t);let wg;const up=()=>wg||(wg=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:Ee());function kg(t){return t.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Tg(t){return t.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function YC(t){return t=t.replace(/(\w+)\s*=\s*"([^"]*)"/g,(s,i,r)=>`${i}="${Tg(r)}"`),t=t.replace(/(\w+)\s*=\s*'([^']*)'/g,(s,i,r)=>`${i}='${Tg(r)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(t)&&(t=t.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(s=>{t=t.replace(s,"$1javascript:")}),t}const ZC=Object.prototype.hasOwnProperty;function Cs(t,e){return ZC.call(t,e)}const je=Array.isArray,Pe=t=>typeof t=="function",vt=t=>typeof t=="string",De=t=>typeof t=="boolean",pe=t=>t!==null&&typeof t=="object",JC=t=>pe(t)&&Pe(t.then)&&Pe(t.catch),O0=Object.prototype.toString,dp=t=>O0.call(t),se=t=>dp(t)==="[object Object]",QC=t=>t==null?"":je(t)||se(t)&&t.toString===O0?JSON.stringify(t,null,2):String(t);function fp(t,e=""){return t.reduce((n,s,i)=>i===0?n+s:n+e+s,"")}const Pl=t=>!pe(t)||je(t);function oc(t,e){if(Pl(t)||Pl(e))throw new Error("Invalid value");const n=[{src:t,des:e}];for(;n.length;){const{src:s,des:i}=n.pop();Object.keys(s).forEach(r=>{r!=="__proto__"&&(pe(s[r])&&!pe(i[r])&&(i[r]=Array.isArray(s[r])?[]:Ee()),Pl(i[r])||Pl(s[r])?i[r]=s[r]:n.push({src:s[r],des:i[r]}))})}}/*! + */function ZT(t,e){typeof console<"u"&&(console.warn("[intlify] "+t),e&&console.warn(e.stack))}const qc=typeof window<"u",or=(t,e=!1)=>e?Symbol.for(t):Symbol(t),JT=(t,e,n)=>QT({l:t,k:e,s:n}),QT=t=>JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Xe=t=>typeof t=="number"&&isFinite(t),tA=t=>mp(t)==="[object Date]",zc=t=>mp(t)==="[object RegExp]",ju=t=>se(t)&&Object.keys(t).length===0,tn=Object.assign,eA=Object.create,Ee=(t=null)=>eA(t);let xg;const pp=()=>xg||(xg=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:Ee());function Ig(t){return t.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Ng(t){return t.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function nA(t){return t=t.replace(/(\w+)\s*=\s*"([^"]*)"/g,(s,i,r)=>`${i}="${Ng(r)}"`),t=t.replace(/(\w+)\s*=\s*'([^']*)'/g,(s,i,r)=>`${i}='${Ng(r)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(t)&&(t=t.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(s=>{t=t.replace(s,"$1javascript:")}),t}const sA=Object.prototype.hasOwnProperty;function Os(t,e){return sA.call(t,e)}const je=Array.isArray,Pe=t=>typeof t=="function",vt=t=>typeof t=="string",Re=t=>typeof t=="boolean",pe=t=>t!==null&&typeof t=="object",iA=t=>pe(t)&&Pe(t.then)&&Pe(t.catch),R0=Object.prototype.toString,mp=t=>R0.call(t),se=t=>mp(t)==="[object Object]",rA=t=>t==null?"":je(t)||se(t)&&t.toString===R0?JSON.stringify(t,null,2):String(t);function gp(t,e=""){return t.reduce((n,s,i)=>i===0?n+s:n+e+s,"")}const Fl=t=>!pe(t)||je(t);function fc(t,e){if(Fl(t)||Fl(e))throw new Error("Invalid value");const n=[{src:t,des:e}];for(;n.length;){const{src:s,des:i}=n.pop();Object.keys(s).forEach(r=>{r!=="__proto__"&&(pe(s[r])&&!pe(i[r])&&(i[r]=Array.isArray(s[r])?[]:Ee()),Fl(i[r])||Fl(s[r])?i[r]=s[r]:n.push({src:s[r],des:i[r]}))})}}/*! * message-compiler v11.1.11 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function tA(t,e,n){return{line:t,column:e,offset:n}}function Xf(t,e,n){return{start:t,end:e}}const _e={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},eA=17;function $u(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 nA(t){throw t}const ti=" ",sA="\r",Cn=` -`,iA="\u2028",rA="\u2029";function oA(t){const e=t;let n=0,s=1,i=1,r=0;const o=I=>e[I]===sA&&e[I+1]===Cn,a=I=>e[I]===Cn,l=I=>e[I]===rA,c=I=>e[I]===iA,u=I=>o(I)||a(I)||l(I)||c(I),d=()=>n,f=()=>s,h=()=>i,p=()=>r,m=I=>o(I)||l(I)||c(I)?Cn:e[I],b=()=>m(n),y=()=>m(n+r);function _(){return r=0,u(n)&&(s++,i=0),o(n)&&n++,n++,i++,e[n]}function g(){return o(n+r)&&r++,r++,e[n+r]}function v(){n=0,s=1,i=1,r=0}function S(I=0){r=I}function k(){const I=n+r;for(;I!==n;)_();r=0}return{index:d,line:f,column:h,peekOffset:p,charAt:m,currentChar:b,currentPeek:y,next:_,peek:g,reset:v,resetPeek:S,skipToPeek:k}}const xi=void 0,aA=".",Cg="'",lA="tokenizer";function cA(t,e={}){const n=e.location!==!1,s=oA(t),i=()=>s.index(),r=()=>tA(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(C,x,V,...q){const tt=c();if(x.column+=V,x.offset+=V,u){const lt=n?Xf(tt.startLoc,x):null,L=$u(C,lt,{domain:lA,args:q});u(L)}}function f(C,x,V){C.endLoc=r(),C.currentType=x;const q={type:x};return n&&(q.loc=Xf(C.startLoc,C.endLoc)),V!=null&&(q.value=V),q}const h=C=>f(C,13);function p(C,x){return C.currentChar()===x?(C.next(),x):(d(_e.EXPECTED_TOKEN,r(),0,x),"")}function m(C){let x="";for(;C.currentPeek()===ti||C.currentPeek()===Cn;)x+=C.currentPeek(),C.peek();return x}function b(C){const x=m(C);return C.skipToPeek(),x}function y(C){if(C===xi)return!1;const x=C.charCodeAt(0);return x>=97&&x<=122||x>=65&&x<=90||x===95}function _(C){if(C===xi)return!1;const x=C.charCodeAt(0);return x>=48&&x<=57}function g(C,x){const{currentType:V}=x;if(V!==2)return!1;m(C);const q=y(C.currentPeek());return C.resetPeek(),q}function v(C,x){const{currentType:V}=x;if(V!==2)return!1;m(C);const q=C.currentPeek()==="-"?C.peek():C.currentPeek(),tt=_(q);return C.resetPeek(),tt}function S(C,x){const{currentType:V}=x;if(V!==2)return!1;m(C);const q=C.currentPeek()===Cg;return C.resetPeek(),q}function k(C,x){const{currentType:V}=x;if(V!==7)return!1;m(C);const q=C.currentPeek()===".";return C.resetPeek(),q}function I(C,x){const{currentType:V}=x;if(V!==8)return!1;m(C);const q=y(C.currentPeek());return C.resetPeek(),q}function M(C,x){const{currentType:V}=x;if(!(V===7||V===11))return!1;m(C);const q=C.currentPeek()===":";return C.resetPeek(),q}function T(C,x){const{currentType:V}=x;if(V!==9)return!1;const q=()=>{const lt=C.currentPeek();return lt==="{"?y(C.peek()):lt==="@"||lt==="|"||lt===":"||lt==="."||lt===ti||!lt?!1:lt===Cn?(C.peek(),q()):B(C,!1)},tt=q();return C.resetPeek(),tt}function D(C){m(C);const x=C.currentPeek()==="|";return C.resetPeek(),x}function B(C,x=!0){const V=(tt=!1,lt="")=>{const L=C.currentPeek();return L==="{"||L==="@"||!L?tt:L==="|"?!(lt===ti||lt===Cn):L===ti?(C.peek(),V(!0,ti)):L===Cn?(C.peek(),V(!0,Cn)):!0},q=V();return x&&C.resetPeek(),q}function $(C,x){const V=C.currentChar();return V===xi?xi:x(V)?(C.next(),V):null}function U(C){const x=C.charCodeAt(0);return x>=97&&x<=122||x>=65&&x<=90||x>=48&&x<=57||x===95||x===36}function X(C){return $(C,U)}function ot(C){const x=C.charCodeAt(0);return x>=97&&x<=122||x>=65&&x<=90||x>=48&&x<=57||x===95||x===36||x===45}function K(C){return $(C,ot)}function Q(C){const x=C.charCodeAt(0);return x>=48&&x<=57}function at(C){return $(C,Q)}function kt(C){const x=C.charCodeAt(0);return x>=48&&x<=57||x>=65&&x<=70||x>=97&&x<=102}function qt(C){return $(C,kt)}function Vt(C){let x="",V="";for(;x=at(C);)V+=x;return V}function Bt(C){let x="";for(;;){const V=C.currentChar();if(V==="{"||V==="}"||V==="@"||V==="|"||!V)break;if(V===ti||V===Cn)if(B(C))x+=V,C.next();else{if(D(C))break;x+=V,C.next()}else x+=V,C.next()}return x}function ge(C){b(C);let x="",V="";for(;x=K(C);)V+=x;return C.currentChar()===xi&&d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),V}function ve(C){b(C);let x="";return C.currentChar()==="-"?(C.next(),x+=`-${Vt(C)}`):x+=Vt(C),C.currentChar()===xi&&d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),x}function Se(C){return C!==Cg&&C!==Cn}function Wt(C){b(C),p(C,"'");let x="",V="";for(;x=$(C,Se);)x==="\\"?V+=Y(C):V+=x;const q=C.currentChar();return q===Cn||q===xi?(d(_e.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),q===Cn&&(C.next(),p(C,"'")),V):(p(C,"'"),V)}function Y(C){const x=C.currentChar();switch(x){case"\\":case"'":return C.next(),`\\${x}`;case"u":return dt(C,x,4);case"U":return dt(C,x,6);default:return d(_e.UNKNOWN_ESCAPE_SEQUENCE,r(),0,x),""}}function dt(C,x,V){p(C,x);let q="";for(let tt=0;tt{const q=C.currentChar();return q==="{"||q==="@"||q==="|"||q==="("||q===")"||!q||q===ti?V:(V+=q,C.next(),x(V))};return x("")}function A(C){b(C);const x=p(C,"|");return b(C),x}function N(C,x){let V=null;switch(C.currentChar()){case"{":return x.braceNest>=1&&d(_e.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),C.next(),V=f(x,2,"{"),b(C),x.braceNest++,V;case"}":return x.braceNest>0&&x.currentType===2&&d(_e.EMPTY_PLACEHOLDER,r(),0),C.next(),V=f(x,3,"}"),x.braceNest--,x.braceNest>0&&b(C),x.inLinked&&x.braceNest===0&&(x.inLinked=!1),V;case"@":return x.braceNest>0&&d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),V=W(C,x)||h(x),x.braceNest=0,V;default:{let tt=!0,lt=!0,L=!0;if(D(C))return x.braceNest>0&&d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),V=f(x,1,A(C)),x.braceNest=0,x.inLinked=!1,V;if(x.braceNest>0&&(x.currentType===4||x.currentType===5||x.currentType===6))return d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),x.braceNest=0,st(C,x);if(tt=g(C,x))return V=f(x,4,ge(C)),b(C),V;if(lt=v(C,x))return V=f(x,5,ve(C)),b(C),V;if(L=S(C,x))return V=f(x,6,Wt(C)),b(C),V;if(!tt&&!lt&&!L)return V=f(x,12,bt(C)),d(_e.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,V.value),b(C),V;break}}return V}function W(C,x){const{currentType:V}=x;let q=null;const tt=C.currentChar();switch((V===7||V===8||V===11||V===9)&&(tt===Cn||tt===ti)&&d(_e.INVALID_LINKED_FORMAT,r(),0),tt){case"@":return C.next(),q=f(x,7,"@"),x.inLinked=!0,q;case".":return b(C),C.next(),f(x,8,".");case":":return b(C),C.next(),f(x,9,":");default:return D(C)?(q=f(x,1,A(C)),x.braceNest=0,x.inLinked=!1,q):k(C,x)||M(C,x)?(b(C),W(C,x)):I(C,x)?(b(C),f(x,11,Ht(C))):T(C,x)?(b(C),tt==="{"?N(C,x)||q:f(x,10,Xt(C))):(V===7&&d(_e.INVALID_LINKED_FORMAT,r(),0),x.braceNest=0,x.inLinked=!1,st(C,x))}}function st(C,x){let V={type:13};if(x.braceNest>0)return N(C,x)||h(x);if(x.inLinked)return W(C,x)||h(x);switch(C.currentChar()){case"{":return N(C,x)||h(x);case"}":return d(_e.UNBALANCED_CLOSING_BRACE,r(),0),C.next(),f(x,3,"}");case"@":return W(C,x)||h(x);default:{if(D(C))return V=f(x,1,A(C)),x.braceNest=0,x.inLinked=!1,V;if(B(C))return f(x,0,Bt(C));break}}return V}function J(){const{currentType:C,offset:x,startLoc:V,endLoc:q}=l;return l.lastType=C,l.lastOffset=x,l.lastStartLoc=V,l.lastEndLoc=q,l.offset=i(),l.startLoc=r(),s.currentChar()===xi?f(l,13):st(s,l)}return{nextToken:J,currentOffset:i,currentPosition:r,context:c}}const uA="parser",dA=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function fA(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 hA(t={}){const e=t.location!==!1,{onError:n}=t;function s(y,_,g,v,...S){const k=y.currentPosition();if(k.offset+=v,k.column+=v,n){const I=e?Xf(g,k):null,M=$u(_,I,{domain:uA,args:S});n(M)}}function i(y,_,g){const v={type:y};return e&&(v.start=_,v.end=_,v.loc={start:g,end:g}),v}function r(y,_,g,v){e&&(y.end=_,y.loc&&(y.loc.end=g))}function o(y,_){const g=y.context(),v=i(3,g.offset,g.startLoc);return v.value=_,r(v,y.currentOffset(),y.currentPosition()),v}function a(y,_){const g=y.context(),{lastOffset:v,lastStartLoc:S}=g,k=i(5,v,S);return k.index=parseInt(_,10),y.nextToken(),r(k,y.currentOffset(),y.currentPosition()),k}function l(y,_){const g=y.context(),{lastOffset:v,lastStartLoc:S}=g,k=i(4,v,S);return k.key=_,y.nextToken(),r(k,y.currentOffset(),y.currentPosition()),k}function c(y,_){const g=y.context(),{lastOffset:v,lastStartLoc:S}=g,k=i(9,v,S);return k.value=_.replace(dA,fA),y.nextToken(),r(k,y.currentOffset(),y.currentPosition()),k}function u(y){const _=y.nextToken(),g=y.context(),{lastOffset:v,lastStartLoc:S}=g,k=i(8,v,S);return _.type!==11?(s(y,_e.UNEXPECTED_EMPTY_LINKED_MODIFIER,g.lastStartLoc,0),k.value="",r(k,v,S),{nextConsumeToken:_,node:k}):(_.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,g.lastStartLoc,0,$s(_)),k.value=_.value||"",r(k,y.currentOffset(),y.currentPosition()),{node:k})}function d(y,_){const g=y.context(),v=i(7,g.offset,g.startLoc);return v.value=_,r(v,y.currentOffset(),y.currentPosition()),v}function f(y){const _=y.context(),g=i(6,_.offset,_.startLoc);let v=y.nextToken();if(v.type===8){const S=u(y);g.modifier=S.node,v=S.nextConsumeToken||y.nextToken()}switch(v.type!==9&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,$s(v)),v=y.nextToken(),v.type===2&&(v=y.nextToken()),v.type){case 10:v.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,$s(v)),g.key=d(y,v.value||"");break;case 4:v.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,$s(v)),g.key=l(y,v.value||"");break;case 5:v.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,$s(v)),g.key=a(y,v.value||"");break;case 6:v.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,$s(v)),g.key=c(y,v.value||"");break;default:{s(y,_e.UNEXPECTED_EMPTY_LINKED_KEY,_.lastStartLoc,0);const S=y.context(),k=i(7,S.offset,S.startLoc);return k.value="",r(k,S.offset,S.startLoc),g.key=k,r(g,S.offset,S.startLoc),{nextConsumeToken:v,node:g}}}return r(g,y.currentOffset(),y.currentPosition()),{node:g}}function h(y){const _=y.context(),g=_.currentType===1?y.currentOffset():_.offset,v=_.currentType===1?_.endLoc:_.startLoc,S=i(2,g,v);S.items=[];let k=null;do{const T=k||y.nextToken();switch(k=null,T.type){case 0:T.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,$s(T)),S.items.push(o(y,T.value||""));break;case 5:T.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,$s(T)),S.items.push(a(y,T.value||""));break;case 4:T.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,$s(T)),S.items.push(l(y,T.value||""));break;case 6:T.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,$s(T)),S.items.push(c(y,T.value||""));break;case 7:{const D=f(y);S.items.push(D.node),k=D.nextConsumeToken||null;break}}}while(_.currentType!==13&&_.currentType!==1);const I=_.currentType===1?_.lastOffset:y.currentOffset(),M=_.currentType===1?_.lastEndLoc:y.currentPosition();return r(S,I,M),S}function p(y,_,g,v){const S=y.context();let k=v.items.length===0;const I=i(1,_,g);I.cases=[],I.cases.push(v);do{const M=h(y);k||(k=M.items.length===0),I.cases.push(M)}while(S.currentType!==13);return k&&s(y,_e.MUST_HAVE_MESSAGES_IN_PLURAL,g,0),r(I,y.currentOffset(),y.currentPosition()),I}function m(y){const _=y.context(),{offset:g,startLoc:v}=_,S=h(y);return _.currentType===13?S:p(y,g,v,S)}function b(y){const _=cA(y,tn({},t)),g=_.context(),v=i(0,g.offset,g.startLoc);return e&&v.loc&&(v.loc.source=y),v.body=m(_),t.onCacheKey&&(v.cacheKey=t.onCacheKey(y)),g.currentType!==13&&s(_,_e.UNEXPECTED_LEXICAL_ANALYSIS,g.lastStartLoc,0,y[g.offset]||""),r(v,_.currentOffset(),_.currentPosition()),v}return{parse:b}}function $s(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 pA(t,e={}){const n={ast:t,helpers:new Set};return{context:()=>n,helper:r=>(n.helpers.add(r),r)}}function Ag(t,e){for(let n=0;nOg(n)),t}function Og(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,b){o.code+=m}function c(m,b=!0){const y=b?s:"";l(i?y+" ".repeat(m):y)}function u(m=!0){const b=++o.indentLevel;m&&c(b)}function d(m=!0){const b=--o.indentLevel;m&&c(b)}function f(){c(o.indentLevel)}return{context:a,push:l,indent:u,deindent:d,newline:f,helper:m=>`_${m}`,needIndent:()=>o.needIndent}}function bA(t,e){const{helper:n}=t;t.push(`${n("linked")}(`),Eo(t,e.key),e.modifier?(t.push(", "),Eo(t,e.modifier),t.push(", _type")):t.push(", undefined, _type"),t.push(")")}function vA(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=vt(e.mode)?e.mode:"normal",s=vt(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=yA(t,{filename:s,breakLineCode:i,needIndent:r});a.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),a.indent(r),o.length>0&&(a.push(`const { ${fp(o.map(u=>`${u}: _${u}`),", ")} } = ctx`),a.newline()),a.push("return "),Eo(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 wA(t,e={}){const n=tn({},e),s=!!n.jit,i=!!n.minify,r=n.optimize==null?!0:n.optimize,a=hA(n).parse(t);return s?(r&&gA(a),i&&eo(a),{ast:a,code:""}):(mA(a,n),EA(a,n))}/*! + */function oA(t,e,n){return{line:t,column:e,offset:n}}function Qf(t,e,n){return{start:t,end:e}}const _e={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},aA=17;function Bu(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 lA(t){throw t}const ni=" ",cA="\r",Tn=` +`,uA="\u2028",dA="\u2029";function fA(t){const e=t;let n=0,s=1,i=1,r=0;const o=I=>e[I]===cA&&e[I+1]===Tn,a=I=>e[I]===Tn,l=I=>e[I]===dA,c=I=>e[I]===uA,u=I=>o(I)||a(I)||l(I)||c(I),d=()=>n,f=()=>s,h=()=>i,p=()=>r,m=I=>o(I)||l(I)||c(I)?Tn:e[I],_=()=>m(n),y=()=>m(n+r);function v(){return r=0,u(n)&&(s++,i=0),o(n)&&n++,n++,i++,e[n]}function g(){return o(n+r)&&r++,r++,e[n+r]}function b(){n=0,s=1,i=1,r=0}function S(I=0){r=I}function k(){const I=n+r;for(;I!==n;)v();r=0}return{index:d,line:f,column:h,peekOffset:p,charAt:m,currentChar:_,currentPeek:y,next:v,peek:g,reset:b,resetPeek:S,skipToPeek:k}}const Ii=void 0,hA=".",Pg="'",pA="tokenizer";function mA(t,e={}){const n=e.location!==!1,s=fA(t),i=()=>s.index(),r=()=>oA(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,x,V,...z){const tt=c();if(x.column+=V,x.offset+=V,u){const lt=n?Qf(tt.startLoc,x):null,L=Bu(T,lt,{domain:pA,args:z});u(L)}}function f(T,x,V){T.endLoc=r(),T.currentType=x;const z={type:x};return n&&(z.loc=Qf(T.startLoc,T.endLoc)),V!=null&&(z.value=V),z}const h=T=>f(T,13);function p(T,x){return T.currentChar()===x?(T.next(),x):(d(_e.EXPECTED_TOKEN,r(),0,x),"")}function m(T){let x="";for(;T.currentPeek()===ni||T.currentPeek()===Tn;)x+=T.currentPeek(),T.peek();return x}function _(T){const x=m(T);return T.skipToPeek(),x}function y(T){if(T===Ii)return!1;const x=T.charCodeAt(0);return x>=97&&x<=122||x>=65&&x<=90||x===95}function v(T){if(T===Ii)return!1;const x=T.charCodeAt(0);return x>=48&&x<=57}function g(T,x){const{currentType:V}=x;if(V!==2)return!1;m(T);const z=y(T.currentPeek());return T.resetPeek(),z}function b(T,x){const{currentType:V}=x;if(V!==2)return!1;m(T);const z=T.currentPeek()==="-"?T.peek():T.currentPeek(),tt=v(z);return T.resetPeek(),tt}function S(T,x){const{currentType:V}=x;if(V!==2)return!1;m(T);const z=T.currentPeek()===Pg;return T.resetPeek(),z}function k(T,x){const{currentType:V}=x;if(V!==7)return!1;m(T);const z=T.currentPeek()===".";return T.resetPeek(),z}function I(T,x){const{currentType:V}=x;if(V!==8)return!1;m(T);const z=y(T.currentPeek());return T.resetPeek(),z}function D(T,x){const{currentType:V}=x;if(!(V===7||V===11))return!1;m(T);const z=T.currentPeek()===":";return T.resetPeek(),z}function C(T,x){const{currentType:V}=x;if(V!==9)return!1;const z=()=>{const lt=T.currentPeek();return lt==="{"?y(T.peek()):lt==="@"||lt==="|"||lt===":"||lt==="."||lt===ni||!lt?!1:lt===Tn?(T.peek(),z()):B(T,!1)},tt=z();return T.resetPeek(),tt}function R(T){m(T);const x=T.currentPeek()==="|";return T.resetPeek(),x}function B(T,x=!0){const V=(tt=!1,lt="")=>{const L=T.currentPeek();return L==="{"||L==="@"||!L?tt:L==="|"?!(lt===ni||lt===Tn):L===ni?(T.peek(),V(!0,ni)):L===Tn?(T.peek(),V(!0,Tn)):!0},z=V();return x&&T.resetPeek(),z}function $(T,x){const V=T.currentChar();return V===Ii?Ii:x(V)?(T.next(),V):null}function H(T){const x=T.charCodeAt(0);return x>=97&&x<=122||x>=65&&x<=90||x>=48&&x<=57||x===95||x===36}function X(T){return $(T,H)}function ot(T){const x=T.charCodeAt(0);return x>=97&&x<=122||x>=65&&x<=90||x>=48&&x<=57||x===95||x===36||x===45}function K(T){return $(T,ot)}function Q(T){const x=T.charCodeAt(0);return x>=48&&x<=57}function at(T){return $(T,Q)}function kt(T){const x=T.charCodeAt(0);return x>=48&&x<=57||x>=65&&x<=70||x>=97&&x<=102}function zt(T){return $(T,kt)}function Vt(T){let x="",V="";for(;x=at(T);)V+=x;return V}function Bt(T){let x="";for(;;){const V=T.currentChar();if(V==="{"||V==="}"||V==="@"||V==="|"||!V)break;if(V===ni||V===Tn)if(B(T))x+=V,T.next();else{if(R(T))break;x+=V,T.next()}else x+=V,T.next()}return x}function ge(T){_(T);let x="",V="";for(;x=K(T);)V+=x;return T.currentChar()===Ii&&d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),V}function ve(T){_(T);let x="";return T.currentChar()==="-"?(T.next(),x+=`-${Vt(T)}`):x+=Vt(T),T.currentChar()===Ii&&d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),x}function Se(T){return T!==Pg&&T!==Tn}function Wt(T){_(T),p(T,"'");let x="",V="";for(;x=$(T,Se);)x==="\\"?V+=Y(T):V+=x;const z=T.currentChar();return z===Tn||z===Ii?(d(_e.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),z===Tn&&(T.next(),p(T,"'")),V):(p(T,"'"),V)}function Y(T){const x=T.currentChar();switch(x){case"\\":case"'":return T.next(),`\\${x}`;case"u":return dt(T,x,4);case"U":return dt(T,x,6);default:return d(_e.UNKNOWN_ESCAPE_SEQUENCE,r(),0,x),""}}function dt(T,x,V){p(T,x);let z="";for(let tt=0;tt{const z=T.currentChar();return z==="{"||z==="@"||z==="|"||z==="("||z===")"||!z||z===ni?V:(V+=z,T.next(),x(V))};return x("")}function A(T){_(T);const x=p(T,"|");return _(T),x}function N(T,x){let V=null;switch(T.currentChar()){case"{":return x.braceNest>=1&&d(_e.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),T.next(),V=f(x,2,"{"),_(T),x.braceNest++,V;case"}":return x.braceNest>0&&x.currentType===2&&d(_e.EMPTY_PLACEHOLDER,r(),0),T.next(),V=f(x,3,"}"),x.braceNest--,x.braceNest>0&&_(T),x.inLinked&&x.braceNest===0&&(x.inLinked=!1),V;case"@":return x.braceNest>0&&d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),V=W(T,x)||h(x),x.braceNest=0,V;default:{let tt=!0,lt=!0,L=!0;if(R(T))return x.braceNest>0&&d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),V=f(x,1,A(T)),x.braceNest=0,x.inLinked=!1,V;if(x.braceNest>0&&(x.currentType===4||x.currentType===5||x.currentType===6))return d(_e.UNTERMINATED_CLOSING_BRACE,r(),0),x.braceNest=0,st(T,x);if(tt=g(T,x))return V=f(x,4,ge(T)),_(T),V;if(lt=b(T,x))return V=f(x,5,ve(T)),_(T),V;if(L=S(T,x))return V=f(x,6,Wt(T)),_(T),V;if(!tt&&!lt&&!L)return V=f(x,12,bt(T)),d(_e.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,V.value),_(T),V;break}}return V}function W(T,x){const{currentType:V}=x;let z=null;const tt=T.currentChar();switch((V===7||V===8||V===11||V===9)&&(tt===Tn||tt===ni)&&d(_e.INVALID_LINKED_FORMAT,r(),0),tt){case"@":return T.next(),z=f(x,7,"@"),x.inLinked=!0,z;case".":return _(T),T.next(),f(x,8,".");case":":return _(T),T.next(),f(x,9,":");default:return R(T)?(z=f(x,1,A(T)),x.braceNest=0,x.inLinked=!1,z):k(T,x)||D(T,x)?(_(T),W(T,x)):I(T,x)?(_(T),f(x,11,Ut(T))):C(T,x)?(_(T),tt==="{"?N(T,x)||z:f(x,10,Xt(T))):(V===7&&d(_e.INVALID_LINKED_FORMAT,r(),0),x.braceNest=0,x.inLinked=!1,st(T,x))}}function st(T,x){let V={type:13};if(x.braceNest>0)return N(T,x)||h(x);if(x.inLinked)return W(T,x)||h(x);switch(T.currentChar()){case"{":return N(T,x)||h(x);case"}":return d(_e.UNBALANCED_CLOSING_BRACE,r(),0),T.next(),f(x,3,"}");case"@":return W(T,x)||h(x);default:{if(R(T))return V=f(x,1,A(T)),x.braceNest=0,x.inLinked=!1,V;if(B(T))return f(x,0,Bt(T));break}}return V}function J(){const{currentType:T,offset:x,startLoc:V,endLoc:z}=l;return l.lastType=T,l.lastOffset=x,l.lastStartLoc=V,l.lastEndLoc=z,l.offset=i(),l.startLoc=r(),s.currentChar()===Ii?f(l,13):st(s,l)}return{nextToken:J,currentOffset:i,currentPosition:r,context:c}}const gA="parser",yA=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function bA(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 vA(t={}){const e=t.location!==!1,{onError:n}=t;function s(y,v,g,b,...S){const k=y.currentPosition();if(k.offset+=b,k.column+=b,n){const I=e?Qf(g,k):null,D=Bu(v,I,{domain:gA,args:S});n(D)}}function i(y,v,g){const b={type:y};return e&&(b.start=v,b.end=v,b.loc={start:g,end:g}),b}function r(y,v,g,b){e&&(y.end=v,y.loc&&(y.loc.end=g))}function o(y,v){const g=y.context(),b=i(3,g.offset,g.startLoc);return b.value=v,r(b,y.currentOffset(),y.currentPosition()),b}function a(y,v){const g=y.context(),{lastOffset:b,lastStartLoc:S}=g,k=i(5,b,S);return k.index=parseInt(v,10),y.nextToken(),r(k,y.currentOffset(),y.currentPosition()),k}function l(y,v){const g=y.context(),{lastOffset:b,lastStartLoc:S}=g,k=i(4,b,S);return k.key=v,y.nextToken(),r(k,y.currentOffset(),y.currentPosition()),k}function c(y,v){const g=y.context(),{lastOffset:b,lastStartLoc:S}=g,k=i(9,b,S);return k.value=v.replace(yA,bA),y.nextToken(),r(k,y.currentOffset(),y.currentPosition()),k}function u(y){const v=y.nextToken(),g=y.context(),{lastOffset:b,lastStartLoc:S}=g,k=i(8,b,S);return v.type!==11?(s(y,_e.UNEXPECTED_EMPTY_LINKED_MODIFIER,g.lastStartLoc,0),k.value="",r(k,b,S),{nextConsumeToken:v,node:k}):(v.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,g.lastStartLoc,0,Vs(v)),k.value=v.value||"",r(k,y.currentOffset(),y.currentPosition()),{node:k})}function d(y,v){const g=y.context(),b=i(7,g.offset,g.startLoc);return b.value=v,r(b,y.currentOffset(),y.currentPosition()),b}function f(y){const v=y.context(),g=i(6,v.offset,v.startLoc);let b=y.nextToken();if(b.type===8){const S=u(y);g.modifier=S.node,b=S.nextConsumeToken||y.nextToken()}switch(b.type!==9&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Vs(b)),b=y.nextToken(),b.type===2&&(b=y.nextToken()),b.type){case 10:b.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Vs(b)),g.key=d(y,b.value||"");break;case 4:b.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Vs(b)),g.key=l(y,b.value||"");break;case 5:b.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Vs(b)),g.key=a(y,b.value||"");break;case 6:b.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Vs(b)),g.key=c(y,b.value||"");break;default:{s(y,_e.UNEXPECTED_EMPTY_LINKED_KEY,v.lastStartLoc,0);const S=y.context(),k=i(7,S.offset,S.startLoc);return k.value="",r(k,S.offset,S.startLoc),g.key=k,r(g,S.offset,S.startLoc),{nextConsumeToken:b,node:g}}}return r(g,y.currentOffset(),y.currentPosition()),{node:g}}function h(y){const v=y.context(),g=v.currentType===1?y.currentOffset():v.offset,b=v.currentType===1?v.endLoc:v.startLoc,S=i(2,g,b);S.items=[];let k=null;do{const C=k||y.nextToken();switch(k=null,C.type){case 0:C.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Vs(C)),S.items.push(o(y,C.value||""));break;case 5:C.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Vs(C)),S.items.push(a(y,C.value||""));break;case 4:C.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Vs(C)),S.items.push(l(y,C.value||""));break;case 6:C.value==null&&s(y,_e.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Vs(C)),S.items.push(c(y,C.value||""));break;case 7:{const R=f(y);S.items.push(R.node),k=R.nextConsumeToken||null;break}}}while(v.currentType!==13&&v.currentType!==1);const I=v.currentType===1?v.lastOffset:y.currentOffset(),D=v.currentType===1?v.lastEndLoc:y.currentPosition();return r(S,I,D),S}function p(y,v,g,b){const S=y.context();let k=b.items.length===0;const I=i(1,v,g);I.cases=[],I.cases.push(b);do{const D=h(y);k||(k=D.items.length===0),I.cases.push(D)}while(S.currentType!==13);return k&&s(y,_e.MUST_HAVE_MESSAGES_IN_PLURAL,g,0),r(I,y.currentOffset(),y.currentPosition()),I}function m(y){const v=y.context(),{offset:g,startLoc:b}=v,S=h(y);return v.currentType===13?S:p(y,g,b,S)}function _(y){const v=mA(y,tn({},t)),g=v.context(),b=i(0,g.offset,g.startLoc);return e&&b.loc&&(b.loc.source=y),b.body=m(v),t.onCacheKey&&(b.cacheKey=t.onCacheKey(y)),g.currentType!==13&&s(v,_e.UNEXPECTED_LEXICAL_ANALYSIS,g.lastStartLoc,0,y[g.offset]||""),r(b,v.currentOffset(),v.currentPosition()),b}return{parse:_}}function Vs(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 _A(t,e={}){const n={ast:t,helpers:new Set};return{context:()=>n,helper:r=>(n.helpers.add(r),r)}}function Rg(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 kA(t,e){const{helper:n}=t;t.push(`${n("linked")}(`),Co(t,e.key),e.modifier?(t.push(", "),Co(t,e.modifier),t.push(", _type")):t.push(", undefined, _type"),t.push(")")}function CA(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=vt(e.mode)?e.mode:"normal",s=vt(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=wA(t,{filename:s,breakLineCode:i,needIndent:r});a.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),a.indent(r),o.length>0&&(a.push(`const { ${gp(o.map(u=>`${u}: _${u}`),", ")} } = ctx`),a.newline()),a.push("return "),Co(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 xA(t,e={}){const n=tn({},e),s=!!n.jit,i=!!n.minify,r=n.optimize==null?!0:n.optimize,a=vA(n).parse(t);return s?(r&&EA(a),i&&so(a),{ast:a,code:""}):(SA(a,n),OA(a,n))}/*! * core-base v11.1.11 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function kA(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(up().__INTLIFY_PROD_DEVTOOLS__=!1)}function Gs(t){return pe(t)&&pp(t)===0&&(Cs(t,"b")||Cs(t,"body"))}const x0=["b","body"];function TA(t){return rr(t,x0)}const I0=["c","cases"];function CA(t){return rr(t,I0,[])}const N0=["s","static"];function AA(t){return rr(t,N0)}const P0=["i","items"];function OA(t){return rr(t,P0,[])}const D0=["t","type"];function pp(t){return rr(t,D0)}const M0=["v","value"];function Dl(t,e){const n=rr(t,M0);if(n!=null)return n;throw Ha(e)}const L0=["m","modifier"];function xA(t){return rr(t,L0)}const R0=["k","key"];function IA(t){const e=rr(t,R0);if(e)return e;throw Ha(6)}function rr(t,e,n){for(let s=0;sNA(n,t)}function NA(t,e){const n=TA(e);if(n==null)throw Ha(0);if(pp(n)===1){const r=CA(n);return t.plural(r.reduce((o,a)=>[...o,xg(t,a)],[]))}else return xg(t,n)}function xg(t,e){const n=AA(e);if(n!=null)return t.type==="text"?n:t.normalize([n]);{const s=OA(e).reduce((i,r)=>[...i,Yf(t,r)],[]);return t.normalize(s)}}function Yf(t,e){const n=pp(e);switch(n){case 3:return Dl(e,n);case 9:return Dl(e,n);case 4:{const s=e;if(Cs(s,"k")&&s.k)return t.interpolate(t.named(s.k));if(Cs(s,"key")&&s.key)return t.interpolate(t.named(s.key));throw Ha(n)}case 5:{const s=e;if(Cs(s,"i")&&qe(s.i))return t.interpolate(t.list(s.i));if(Cs(s,"index")&&qe(s.index))return t.interpolate(t.list(s.index));throw Ha(n)}case 6:{const s=e,i=xA(s),r=IA(s);return t.linked(Yf(t,r),i?Yf(t,i):void 0,t.type)}case 7:return Dl(e,n);case 8:return Dl(e,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const PA=t=>t;let Ml=Ee();function DA(t,e={}){let n=!1;const s=e.onError||nA;return e.onError=i=>{n=!0,s(i)},{...wA(t,e),detectError:n}}function MA(t,e){if(vt(t)){De(e.warnHtmlMessage)&&e.warnHtmlMessage;const s=(e.onCacheKey||PA)(t),i=Ml[s];if(i)return i;const{ast:r,detectError:o}=DA(t,{...e,location:!1,jit:!0}),a=Vd(r);return o?a:Ml[s]=a}else{const n=t.cacheKey;if(n){const s=Ml[n];return s||(Ml[n]=Vd(t))}else return Vd(t)}}let Ua=null;function LA(t){Ua=t}function RA(t,e,n){Ua&&Ua.emit("i18n:init",{timestamp:Date.now(),i18n:t,version:e,meta:n})}const $A=FA("function:translate");function FA(t){return e=>Ua&&Ua.emit(t,e)}const ui={INVALID_ARGUMENT:eA,INVALID_DATE_ARGUMENT:18,INVALID_ISO_DATE_ARGUMENT:19,NOT_SUPPORT_LOCALE_PROMISE_VALUE:21,NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:22,NOT_SUPPORT_LOCALE_TYPE:23},VA=24;function di(t){return $u(t,null,void 0)}function mp(t,e){return e.locale!=null?Ig(e.locale):Ig(t.locale)}let Hd;function Ig(t){if(vt(t))return t;if(Pe(t)){if(t.resolvedOnce&&Hd!=null)return Hd;if(t.constructor.name==="Function"){const e=t();if(JC(e))throw di(ui.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Hd=e}else throw di(ui.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw di(ui.NOT_SUPPORT_LOCALE_TYPE)}function HA(t,e,n){return[...new Set([n,...je(e)?e:pe(e)?Object.keys(e):vt(e)?[e]:[n]])]}function F0(t,e,n){const s=vt(n)?n:Bc,i=t;i.__localeChainCache||(i.__localeChainCache=new Map);let r=i.__localeChainCache.get(s);if(!r){r=[];let o=[n];for(;je(o);)o=Ng(r,o,e);const a=je(e)||!se(e)?e:e.default?e.default:null;o=vt(a)?[a]:a,je(o)&&Ng(r,o,!1),i.__localeChainCache.set(s,r)}return r}function Ng(t,e,n){let s=!0;for(let i=0;i{o===void 0?o=a:o+=a},f[1]=()=>{o!==void 0&&(e.push(o),o=void 0)},f[2]=()=>{f[0](),i++},f[3]=()=>{if(i>0)i--,s=4,f[0]();else{if(i=0,o===void 0||(o=zA(o),o===!1))return!1;f[1]()}};function h(){const p=t[n+1];if(s===5&&p==="'"||s===6&&p==='"')return n++,a="\\"+p,f[0](),!0}for(;s!==null;)if(n++,r=t[n],!(r==="\\"&&h())){if(l=KA(r),d=or[s],c=d[l]||d.l||8,c===8||(s=c[0],c[1]!==void 0&&(u=f[c[1]],u&&(a=r,u()===!1))))return;if(s===7)return e}}const Pg=new Map;function XA(t,e){return pe(t)?t[e]:null}function YA(t,e){if(!pe(t))return null;let n=Pg.get(e);if(n||(n=qA(e),n&&Pg.set(e,n)),!n)return null;const s=n.length;let i=t,r=0;for(;r`${t.charAt(0).toLocaleUpperCase()}${t.substr(1)}`;function JA(){return{upper:(t,e)=>e==="text"&&vt(t)?t.toUpperCase():e==="vnode"&&pe(t)&&"__v_isVNode"in t?t.children.toUpperCase():t,lower:(t,e)=>e==="text"&&vt(t)?t.toLowerCase():e==="vnode"&&pe(t)&&"__v_isVNode"in t?t.children.toLowerCase():t,capitalize:(t,e)=>e==="text"&&vt(t)?Mg(t):e==="vnode"&&pe(t)&&"__v_isVNode"in t?Mg(t.children):t}}let V0;function QA(t){V0=t}let H0;function tO(t){H0=t}let U0;function eO(t){U0=t}let j0=null;const nO=t=>{j0=t},sO=()=>j0;let B0=null;const Lg=t=>{B0=t},iO=()=>B0;let Rg=0;function rO(t={}){const e=Pe(t.onWarn)?t.onWarn:GC,n=vt(t.version)?t.version:ZA,s=vt(t.locale)||Pe(t.locale)?t.locale:Bc,i=Pe(s)?Bc:s,r=je(t.fallbackLocale)||se(t.fallbackLocale)||vt(t.fallbackLocale)||t.fallbackLocale===!1?t.fallbackLocale:i,o=se(t.messages)?t.messages:Ud(i),a=se(t.datetimeFormats)?t.datetimeFormats:Ud(i),l=se(t.numberFormats)?t.numberFormats:Ud(i),c=tn(Ee(),t.modifiers,JA()),u=t.pluralRules||Ee(),d=Pe(t.missing)?t.missing:null,f=De(t.missingWarn)||jc(t.missingWarn)?t.missingWarn:!0,h=De(t.fallbackWarn)||jc(t.fallbackWarn)?t.fallbackWarn:!0,p=!!t.fallbackFormat,m=!!t.unresolving,b=Pe(t.postTranslation)?t.postTranslation:null,y=se(t.processor)?t.processor:null,_=De(t.warnHtmlMessage)?t.warnHtmlMessage:!0,g=!!t.escapeParameter,v=Pe(t.messageCompiler)?t.messageCompiler:V0,S=Pe(t.messageResolver)?t.messageResolver:H0||XA,k=Pe(t.localeFallbacker)?t.localeFallbacker:U0||HA,I=pe(t.fallbackContext)?t.fallbackContext:void 0,M=t,T=pe(M.__datetimeFormatters)?M.__datetimeFormatters:new Map,D=pe(M.__numberFormatters)?M.__numberFormatters:new Map,B=pe(M.__meta)?M.__meta:{};Rg++;const $={version:n,cid:Rg,locale:s,fallbackLocale:r,messages:o,modifiers:c,pluralRules:u,missing:d,missingWarn:f,fallbackWarn:h,fallbackFormat:p,unresolving:m,postTranslation:b,processor:y,warnHtmlMessage:_,escapeParameter:g,messageCompiler:v,messageResolver:S,localeFallbacker:k,fallbackContext:I,onWarn:e,__meta:B};return $.datetimeFormats=a,$.numberFormats=l,$.__datetimeFormatters=T,$.__numberFormatters=D,__INTLIFY_PROD_DEVTOOLS__&&RA($,n,B),$}const Ud=t=>({[t]:Ee()});function gp(t,e,n,s,i){const{missing:r,onWarn:o}=t;if(r!==null){const a=r(t,n,e,i);return vt(a)?a:e}else return e}function Zo(t,e,n){const s=t;s.__localeChainCache=new Map,t.localeFallbacker(t,n,e)}function oO(t,e){return t===e?!1:t.split("-")[0]===e.split("-")[0]}function aO(t,e){const n=e.indexOf(t);if(n===-1)return!1;for(let s=n+1;s{W0.includes(l)?o[l]=n[l]:r[l]=n[l]}),vt(s)?r.locale=s:se(s)&&(o=s),se(i)&&(o=i),[r.key||"",a,r,o]}function Fg(t,e,n){const s=t;for(const i in n){const r=`${e}__${i}`;s.__datetimeFormatters.has(r)&&s.__datetimeFormatters.delete(r)}}function Vg(t,...e){const{numberFormats:n,unresolving:s,fallbackLocale:i,onWarn:r,localeFallbacker:o}=t,{__numberFormatters:a}=t,[l,c,u,d]=Jf(...e),f=De(u.missingWarn)?u.missingWarn:t.missingWarn;De(u.fallbackWarn)?u.fallbackWarn:t.fallbackWarn;const h=!!u.part,p=mp(t,u),m=o(t,i,p);if(!vt(l)||l==="")return new Intl.NumberFormat(p,d).format(c);let b={},y,_=null;const g="number format";for(let k=0;k{G0.includes(l)?o[l]=n[l]:r[l]=n[l]}),vt(s)?r.locale=s:se(s)&&(o=s),se(i)&&(o=i),[r.key||"",a,r,o]}function Hg(t,e,n){const s=t;for(const i in n){const r=`${e}__${i}`;s.__numberFormatters.has(r)&&s.__numberFormatters.delete(r)}}const lO=t=>t,cO=t=>"",uO="text",dO=t=>t.length===0?"":fp(t),fO=QC;function Ug(t,e){return t=Math.abs(t),e===2?t?t>1?1:0:1:t?Math.min(t,2):0}function hO(t){const e=qe(t.pluralIndex)?t.pluralIndex:-1;return t.named&&(qe(t.named.count)||qe(t.named.n))?qe(t.named.count)?t.named.count:qe(t.named.n)?t.named.n:e:e}function pO(t,e){e.count||(e.count=t),e.n||(e.n=t)}function mO(t={}){const e=t.locale,n=hO(t),s=pe(t.pluralRules)&&vt(e)&&Pe(t.pluralRules[e])?t.pluralRules[e]:Ug,i=pe(t.pluralRules)&&vt(e)&&Pe(t.pluralRules[e])?Ug:void 0,r=y=>y[s(n,y.length,i)],o=t.list||[],a=y=>o[y],l=t.named||Ee();qe(t.pluralIndex)&&pO(n,l);const c=y=>l[y];function u(y,_){const g=Pe(t.messages)?t.messages(y,!!_):pe(t.messages)?t.messages[y]:!1;return g||(t.parent?t.parent.message(y):cO)}const d=y=>t.modifiers?t.modifiers[y]:lO,f=se(t.processor)&&Pe(t.processor.normalize)?t.processor.normalize:dO,h=se(t.processor)&&Pe(t.processor.interpolate)?t.processor.interpolate:fO,p=se(t.processor)&&vt(t.processor.type)?t.processor.type:uO,b={list:a,named:c,plural:r,linked:(y,..._)=>{const[g,v]=_;let S="text",k="";_.length===1?pe(g)?(k=g.modifier||k,S=g.type||S):vt(g)&&(k=g||k):_.length===2&&(vt(g)&&(k=g||k),vt(v)&&(S=v||S));const I=u(y,!0)(b),M=S==="vnode"&&je(I)&&k?I[0]:I;return k?d(k)(M,S):M},message:u,type:p,interpolate:h,normalize:f,values:tn(Ee(),o,l)};return b}const jg=()=>"",ss=t=>Pe(t);function Bg(t,...e){const{fallbackFormat:n,postTranslation:s,unresolving:i,messageCompiler:r,fallbackLocale:o,messages:a}=t,[l,c]=Qf(...e),u=De(c.missingWarn)?c.missingWarn:t.missingWarn,d=De(c.fallbackWarn)?c.fallbackWarn:t.fallbackWarn,f=De(c.escapeParameter)?c.escapeParameter:t.escapeParameter,h=!!c.resolvedMessage,p=vt(c.default)||De(c.default)?De(c.default)?r?l:()=>l:c.default:n?r?l:()=>l:null,m=n||p!=null&&(vt(p)||Pe(p)),b=mp(t,c);f&&gO(c);let[y,_,g]=h?[l,b,a[b]||Ee()]:K0(t,l,b,o,d,u),v=y,S=l;if(!h&&!(vt(v)||Gs(v)||ss(v))&&m&&(v=p,S=v),!h&&(!(vt(v)||Gs(v)||ss(v))||!vt(_)))return i?Fu:l;let k=!1;const I=()=>{k=!0},M=ss(v)?v:z0(t,l,_,v,S,I);if(k)return v;const T=vO(t,_,g,c),D=mO(T),B=yO(t,M,D);let $=s?s(B,l):B;if(f&&vt($)&&($=YC($)),__INTLIFY_PROD_DEVTOOLS__){const U={timestamp:Date.now(),key:vt(l)?l:ss(v)?v.key:"",locale:_||(ss(v)?v.locale:""),format:vt(v)?v:ss(v)?v.source:"",message:$};U.meta=tn({},t.__meta,sO()||{}),$A(U)}return $}function gO(t){je(t.list)?t.list=t.list.map(e=>vt(e)?kg(e):e):pe(t.named)&&Object.keys(t.named).forEach(e=>{vt(t.named[e])&&(t.named[e]=kg(t.named[e]))})}function K0(t,e,n,s,i,r){const{messages:o,onWarn:a,messageResolver:l,localeFallbacker:c}=t,u=c(t,s,n);let d=Ee(),f,h=null;const p="translate";for(let m=0;ms;return c.locale=n,c.key=e,c}const l=o(s,bO(t,n,i,s,a,r));return l.locale=n,l.key=e,l.source=s,l}function yO(t,e,n){return e(n)}function Qf(...t){const[e,n,s]=t,i=Ee();if(!vt(e)&&!qe(e)&&!ss(e)&&!Gs(e))throw di(ui.INVALID_ARGUMENT);const r=qe(e)?String(e):(ss(e),e);return qe(n)?i.plural=n:vt(n)?i.default=n:se(n)&&!Ru(n)?i.named=n:je(n)&&(i.list=n),qe(s)?i.plural=s:vt(s)?i.default=s:se(s)&&tn(i,s),[r,i]}function bO(t,e,n,s,i,r){return{locale:e,key:n,warnHtmlMessage:i,onError:o=>{throw r&&r(o),o},onCacheKey:o=>KC(e,n,o)}}function vO(t,e,n,s){const{modifiers:i,pluralRules:r,messageResolver:o,fallbackLocale:a,fallbackWarn:l,missingWarn:c,fallbackContext:u}=t,f={locale:e,modifiers:i,pluralRules:r,messages:(h,p)=>{let m=o(n,h);if(m==null&&(u||p)){const[,,b]=K0(u||t,h,e,a,l,c);m=o(b,h)}if(vt(m)||Gs(m)){let b=!1;const _=z0(t,h,e,m,h,()=>{b=!0});return b?jg:_}else return ss(m)?m:jg}};return t.processor&&(f.processor=t.processor),s.list&&(f.list=s.list),s.named&&(f.named=s.named),qe(s.plural)&&(f.pluralIndex=s.plural),f}kA();/*! + */function IA(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(pp().__INTLIFY_PROD_DEVTOOLS__=!1)}function qs(t){return pe(t)&&bp(t)===0&&(Os(t,"b")||Os(t,"body"))}const D0=["b","body"];function NA(t){return ar(t,D0)}const L0=["c","cases"];function PA(t){return ar(t,L0,[])}const M0=["s","static"];function RA(t){return ar(t,M0)}const $0=["i","items"];function DA(t){return ar(t,$0,[])}const F0=["t","type"];function bp(t){return ar(t,F0)}const V0=["v","value"];function Vl(t,e){const n=ar(t,V0);if(n!=null)return n;throw Ka(e)}const U0=["m","modifier"];function LA(t){return ar(t,U0)}const H0=["k","key"];function MA(t){const e=ar(t,H0);if(e)return e;throw Ka(6)}function ar(t,e,n){for(let s=0;s$A(n,t)}function $A(t,e){const n=NA(e);if(n==null)throw Ka(0);if(bp(n)===1){const r=PA(n);return t.plural(r.reduce((o,a)=>[...o,Lg(t,a)],[]))}else return Lg(t,n)}function Lg(t,e){const n=RA(e);if(n!=null)return t.type==="text"?n:t.normalize([n]);{const s=DA(e).reduce((i,r)=>[...i,th(t,r)],[]);return t.normalize(s)}}function th(t,e){const n=bp(e);switch(n){case 3:return Vl(e,n);case 9:return Vl(e,n);case 4:{const s=e;if(Os(s,"k")&&s.k)return t.interpolate(t.named(s.k));if(Os(s,"key")&&s.key)return t.interpolate(t.named(s.key));throw Ka(n)}case 5:{const s=e;if(Os(s,"i")&&Xe(s.i))return t.interpolate(t.list(s.i));if(Os(s,"index")&&Xe(s.index))return t.interpolate(t.list(s.index));throw Ka(n)}case 6:{const s=e,i=LA(s),r=MA(s);return t.linked(th(t,r),i?th(t,i):void 0,t.type)}case 7:return Vl(e,n);case 8:return Vl(e,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const FA=t=>t;let Ul=Ee();function VA(t,e={}){let n=!1;const s=e.onError||lA;return e.onError=i=>{n=!0,s(i)},{...xA(t,e),detectError:n}}function UA(t,e){if(vt(t)){Re(e.warnHtmlMessage)&&e.warnHtmlMessage;const s=(e.onCacheKey||FA)(t),i=Ul[s];if(i)return i;const{ast:r,detectError:o}=VA(t,{...e,location:!1,jit:!0}),a=Wd(r);return o?a:Ul[s]=a}else{const n=t.cacheKey;if(n){const s=Ul[n];return s||(Ul[n]=Wd(t))}else return Wd(t)}}let qa=null;function HA(t){qa=t}function jA(t,e,n){qa&&qa.emit("i18n:init",{timestamp:Date.now(),i18n:t,version:e,meta:n})}const BA=WA("function:translate");function WA(t){return e=>qa&&qa.emit(t,e)}const fi={INVALID_ARGUMENT:aA,INVALID_DATE_ARGUMENT:18,INVALID_ISO_DATE_ARGUMENT:19,NOT_SUPPORT_LOCALE_PROMISE_VALUE:21,NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:22,NOT_SUPPORT_LOCALE_TYPE:23},GA=24;function hi(t){return Bu(t,null,void 0)}function vp(t,e){return e.locale!=null?Mg(e.locale):Mg(t.locale)}let Gd;function Mg(t){if(vt(t))return t;if(Pe(t)){if(t.resolvedOnce&&Gd!=null)return Gd;if(t.constructor.name==="Function"){const e=t();if(iA(e))throw hi(fi.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Gd=e}else throw hi(fi.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw hi(fi.NOT_SUPPORT_LOCALE_TYPE)}function KA(t,e,n){return[...new Set([n,...je(e)?e:pe(e)?Object.keys(e):vt(e)?[e]:[n]])]}function B0(t,e,n){const s=vt(n)?n:Xc,i=t;i.__localeChainCache||(i.__localeChainCache=new Map);let r=i.__localeChainCache.get(s);if(!r){r=[];let o=[n];for(;je(o);)o=$g(r,o,e);const a=je(e)||!se(e)?e:e.default?e.default:null;o=vt(a)?[a]:a,je(o)&&$g(r,o,!1),i.__localeChainCache.set(s,r)}return r}function $g(t,e,n){let s=!0;for(let i=0;i{o===void 0?o=a:o+=a},f[1]=()=>{o!==void 0&&(e.push(o),o=void 0)},f[2]=()=>{f[0](),i++},f[3]=()=>{if(i>0)i--,s=4,f[0]();else{if(i=0,o===void 0||(o=QA(o),o===!1))return!1;f[1]()}};function h(){const p=t[n+1];if(s===5&&p==="'"||s===6&&p==='"')return n++,a="\\"+p,f[0](),!0}for(;s!==null;)if(n++,r=t[n],!(r==="\\"&&h())){if(l=JA(r),d=lr[s],c=d[l]||d.l||8,c===8||(s=c[0],c[1]!==void 0&&(u=f[c[1]],u&&(a=r,u()===!1))))return;if(s===7)return e}}const Fg=new Map;function eO(t,e){return pe(t)?t[e]:null}function nO(t,e){if(!pe(t))return null;let n=Fg.get(e);if(n||(n=tO(e),n&&Fg.set(e,n)),!n)return null;const s=n.length;let i=t,r=0;for(;r`${t.charAt(0).toLocaleUpperCase()}${t.substr(1)}`;function iO(){return{upper:(t,e)=>e==="text"&&vt(t)?t.toUpperCase():e==="vnode"&&pe(t)&&"__v_isVNode"in t?t.children.toUpperCase():t,lower:(t,e)=>e==="text"&&vt(t)?t.toLowerCase():e==="vnode"&&pe(t)&&"__v_isVNode"in t?t.children.toLowerCase():t,capitalize:(t,e)=>e==="text"&&vt(t)?Ug(t):e==="vnode"&&pe(t)&&"__v_isVNode"in t?Ug(t.children):t}}let W0;function rO(t){W0=t}let G0;function oO(t){G0=t}let K0;function aO(t){K0=t}let q0=null;const lO=t=>{q0=t},cO=()=>q0;let z0=null;const Hg=t=>{z0=t},uO=()=>z0;let jg=0;function dO(t={}){const e=Pe(t.onWarn)?t.onWarn:ZT,n=vt(t.version)?t.version:sO,s=vt(t.locale)||Pe(t.locale)?t.locale:Xc,i=Pe(s)?Xc:s,r=je(t.fallbackLocale)||se(t.fallbackLocale)||vt(t.fallbackLocale)||t.fallbackLocale===!1?t.fallbackLocale:i,o=se(t.messages)?t.messages:Kd(i),a=se(t.datetimeFormats)?t.datetimeFormats:Kd(i),l=se(t.numberFormats)?t.numberFormats:Kd(i),c=tn(Ee(),t.modifiers,iO()),u=t.pluralRules||Ee(),d=Pe(t.missing)?t.missing:null,f=Re(t.missingWarn)||zc(t.missingWarn)?t.missingWarn:!0,h=Re(t.fallbackWarn)||zc(t.fallbackWarn)?t.fallbackWarn:!0,p=!!t.fallbackFormat,m=!!t.unresolving,_=Pe(t.postTranslation)?t.postTranslation:null,y=se(t.processor)?t.processor:null,v=Re(t.warnHtmlMessage)?t.warnHtmlMessage:!0,g=!!t.escapeParameter,b=Pe(t.messageCompiler)?t.messageCompiler:W0,S=Pe(t.messageResolver)?t.messageResolver:G0||eO,k=Pe(t.localeFallbacker)?t.localeFallbacker:K0||KA,I=pe(t.fallbackContext)?t.fallbackContext:void 0,D=t,C=pe(D.__datetimeFormatters)?D.__datetimeFormatters:new Map,R=pe(D.__numberFormatters)?D.__numberFormatters:new Map,B=pe(D.__meta)?D.__meta:{};jg++;const $={version:n,cid:jg,locale:s,fallbackLocale:r,messages:o,modifiers:c,pluralRules:u,missing:d,missingWarn:f,fallbackWarn:h,fallbackFormat:p,unresolving:m,postTranslation:_,processor:y,warnHtmlMessage:v,escapeParameter:g,messageCompiler:b,messageResolver:S,localeFallbacker:k,fallbackContext:I,onWarn:e,__meta:B};return $.datetimeFormats=a,$.numberFormats=l,$.__datetimeFormatters=C,$.__numberFormatters=R,__INTLIFY_PROD_DEVTOOLS__&&jA($,n,B),$}const Kd=t=>({[t]:Ee()});function _p(t,e,n,s,i){const{missing:r,onWarn:o}=t;if(r!==null){const a=r(t,n,e,i);return vt(a)?a:e}else return e}function ta(t,e,n){const s=t;s.__localeChainCache=new Map,t.localeFallbacker(t,n,e)}function fO(t,e){return t===e?!1:t.split("-")[0]===e.split("-")[0]}function hO(t,e){const n=e.indexOf(t);if(n===-1)return!1;for(let s=n+1;s{X0.includes(l)?o[l]=n[l]:r[l]=n[l]}),vt(s)?r.locale=s:se(s)&&(o=s),se(i)&&(o=i),[r.key||"",a,r,o]}function Wg(t,e,n){const s=t;for(const i in n){const r=`${e}__${i}`;s.__datetimeFormatters.has(r)&&s.__datetimeFormatters.delete(r)}}function Gg(t,...e){const{numberFormats:n,unresolving:s,fallbackLocale:i,onWarn:r,localeFallbacker:o}=t,{__numberFormatters:a}=t,[l,c,u,d]=nh(...e),f=Re(u.missingWarn)?u.missingWarn:t.missingWarn;Re(u.fallbackWarn)?u.fallbackWarn:t.fallbackWarn;const h=!!u.part,p=vp(t,u),m=o(t,i,p);if(!vt(l)||l==="")return new Intl.NumberFormat(p,d).format(c);let _={},y,v=null;const g="number format";for(let k=0;k{Y0.includes(l)?o[l]=n[l]:r[l]=n[l]}),vt(s)?r.locale=s:se(s)&&(o=s),se(i)&&(o=i),[r.key||"",a,r,o]}function Kg(t,e,n){const s=t;for(const i in n){const r=`${e}__${i}`;s.__numberFormatters.has(r)&&s.__numberFormatters.delete(r)}}const pO=t=>t,mO=t=>"",gO="text",yO=t=>t.length===0?"":gp(t),bO=rA;function qg(t,e){return t=Math.abs(t),e===2?t?t>1?1:0:1:t?Math.min(t,2):0}function vO(t){const e=Xe(t.pluralIndex)?t.pluralIndex:-1;return t.named&&(Xe(t.named.count)||Xe(t.named.n))?Xe(t.named.count)?t.named.count:Xe(t.named.n)?t.named.n:e:e}function _O(t,e){e.count||(e.count=t),e.n||(e.n=t)}function SO(t={}){const e=t.locale,n=vO(t),s=pe(t.pluralRules)&&vt(e)&&Pe(t.pluralRules[e])?t.pluralRules[e]:qg,i=pe(t.pluralRules)&&vt(e)&&Pe(t.pluralRules[e])?qg:void 0,r=y=>y[s(n,y.length,i)],o=t.list||[],a=y=>o[y],l=t.named||Ee();Xe(t.pluralIndex)&&_O(n,l);const c=y=>l[y];function u(y,v){const g=Pe(t.messages)?t.messages(y,!!v):pe(t.messages)?t.messages[y]:!1;return g||(t.parent?t.parent.message(y):mO)}const d=y=>t.modifiers?t.modifiers[y]:pO,f=se(t.processor)&&Pe(t.processor.normalize)?t.processor.normalize:yO,h=se(t.processor)&&Pe(t.processor.interpolate)?t.processor.interpolate:bO,p=se(t.processor)&&vt(t.processor.type)?t.processor.type:gO,_={list:a,named:c,plural:r,linked:(y,...v)=>{const[g,b]=v;let S="text",k="";v.length===1?pe(g)?(k=g.modifier||k,S=g.type||S):vt(g)&&(k=g||k):v.length===2&&(vt(g)&&(k=g||k),vt(b)&&(S=b||S));const I=u(y,!0)(_),D=S==="vnode"&&je(I)&&k?I[0]:I;return k?d(k)(D,S):D},message:u,type:p,interpolate:h,normalize:f,values:tn(Ee(),o,l)};return _}const zg=()=>"",os=t=>Pe(t);function Xg(t,...e){const{fallbackFormat:n,postTranslation:s,unresolving:i,messageCompiler:r,fallbackLocale:o,messages:a}=t,[l,c]=sh(...e),u=Re(c.missingWarn)?c.missingWarn:t.missingWarn,d=Re(c.fallbackWarn)?c.fallbackWarn:t.fallbackWarn,f=Re(c.escapeParameter)?c.escapeParameter:t.escapeParameter,h=!!c.resolvedMessage,p=vt(c.default)||Re(c.default)?Re(c.default)?r?l:()=>l:c.default:n?r?l:()=>l:null,m=n||p!=null&&(vt(p)||Pe(p)),_=vp(t,c);f&&EO(c);let[y,v,g]=h?[l,_,a[_]||Ee()]:Z0(t,l,_,o,d,u),b=y,S=l;if(!h&&!(vt(b)||qs(b)||os(b))&&m&&(b=p,S=b),!h&&(!(vt(b)||qs(b)||os(b))||!vt(v)))return i?Wu:l;let k=!1;const I=()=>{k=!0},D=os(b)?b:J0(t,l,v,b,S,I);if(k)return b;const C=CO(t,v,g,c),R=SO(C),B=wO(t,D,R);let $=s?s(B,l):B;if(f&&vt($)&&($=nA($)),__INTLIFY_PROD_DEVTOOLS__){const H={timestamp:Date.now(),key:vt(l)?l:os(b)?b.key:"",locale:v||(os(b)?b.locale:""),format:vt(b)?b:os(b)?b.source:"",message:$};H.meta=tn({},t.__meta,cO()||{}),BA(H)}return $}function EO(t){je(t.list)?t.list=t.list.map(e=>vt(e)?Ig(e):e):pe(t.named)&&Object.keys(t.named).forEach(e=>{vt(t.named[e])&&(t.named[e]=Ig(t.named[e]))})}function Z0(t,e,n,s,i,r){const{messages:o,onWarn:a,messageResolver:l,localeFallbacker:c}=t,u=c(t,s,n);let d=Ee(),f,h=null;const p="translate";for(let m=0;ms);return c.locale=n,c.key=e,c}const l=o(s,kO(t,n,i,s,a,r));return l.locale=n,l.key=e,l.source=s,l}function wO(t,e,n){return e(n)}function sh(...t){const[e,n,s]=t,i=Ee();if(!vt(e)&&!Xe(e)&&!os(e)&&!qs(e))throw hi(fi.INVALID_ARGUMENT);const r=Xe(e)?String(e):(os(e),e);return Xe(n)?i.plural=n:vt(n)?i.default=n:se(n)&&!ju(n)?i.named=n:je(n)&&(i.list=n),Xe(s)?i.plural=s:vt(s)?i.default=s:se(s)&&tn(i,s),[r,i]}function kO(t,e,n,s,i,r){return{locale:e,key:n,warnHtmlMessage:i,onError:o=>{throw r&&r(o),o},onCacheKey:o=>JT(e,n,o)}}function CO(t,e,n,s){const{modifiers:i,pluralRules:r,messageResolver:o,fallbackLocale:a,fallbackWarn:l,missingWarn:c,fallbackContext:u}=t,f={locale:e,modifiers:i,pluralRules:r,messages:(h,p)=>{let m=o(n,h);if(m==null&&(u||p)){const[,,_]=Z0(u||t,h,e,a,l,c);m=o(_,h)}if(vt(m)||qs(m)){let _=!1;const v=J0(t,h,e,m,h,()=>{_=!0});return _?zg:v}else return os(m)?m:zg}};return t.processor&&(f.processor=t.processor),s.list&&(f.list=s.list),s.named&&(f.named=s.named),Xe(s.plural)&&(f.pluralIndex=s.plural),f}IA();/*! * vue-i18n v11.1.11 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */const _O="11.1.11";function SO(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(up().__INTLIFY_PROD_DEVTOOLS__=!1)}const ps={UNEXPECTED_RETURN_TYPE:VA,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 xs(t,...e){return $u(t,null,void 0)}const th=ir("__translateVNode"),eh=ir("__datetimeParts"),nh=ir("__numberParts"),EO=ir("__setPluralRules"),wO=ir("__injectWithOption"),sh=ir("__dispose");function ja(t){if(!pe(t)||Gs(t))return t;for(const e in t)if(Cs(t,e))if(!e.includes("."))pe(t[e])&&ja(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]||Ee(),oc(c,o[l])):oc(c,o)}else vt(a)&&oc(JSON.parse(a),o)}),i==null&&r)for(const a in o)Cs(o,a)&&ja(o[a]);return o}function X0(t){return t.type}function kO(t,e,n){let s=pe(e.messages)?e.messages:Ee();"__i18nGlobal"in n&&(s=q0(t.locale.value,{messages:s,__i18n:n.__i18nGlobal}));const i=Object.keys(s);i.length&&i.forEach(r=>{t.mergeLocaleMessage(r,s[r])});{if(pe(e.datetimeFormats)){const r=Object.keys(e.datetimeFormats);r.length&&r.forEach(o=>{t.mergeDateTimeFormat(o,e.datetimeFormats[o])})}if(pe(e.numberFormats)){const r=Object.keys(e.numberFormats);r.length&&r.forEach(o=>{t.mergeNumberFormat(o,e.numberFormats[o])})}}}function Wg(t){return E(hi,null,t,0)}const Gg="__INTLIFY_META__",Kg=()=>[],TO=()=>!1;let zg=0;function qg(t){return(e,n,s,i)=>t(n,s,cn()||void 0,i)}const CO=()=>{const t=cn();let e=null;return t&&(e=X0(t)[Gg])?{[Gg]:e}:null};function Y0(t={}){const{__root:e,__injectWithOption:n}=t,s=e===void 0,i=t.flatJson,r=Uc?os:_u;let o=De(t.inheritLocale)?t.inheritLocale:!0;const a=r(e&&o?e.locale.value:vt(t.locale)?t.locale:Bc),l=r(e&&o?e.fallbackLocale.value:vt(t.fallbackLocale)||je(t.fallbackLocale)||se(t.fallbackLocale)||t.fallbackLocale===!1?t.fallbackLocale:a.value),c=r(q0(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:De(t.missingWarn)||jc(t.missingWarn)?t.missingWarn:!0,h=e?e.fallbackWarn:De(t.fallbackWarn)||jc(t.fallbackWarn)?t.fallbackWarn:!0,p=e?e.fallbackRoot:De(t.fallbackRoot)?t.fallbackRoot:!0,m=!!t.fallbackFormat,b=Pe(t.missing)?t.missing:null,y=Pe(t.missing)?qg(t.missing):null,_=Pe(t.postTranslation)?t.postTranslation:null,g=e?e.warnHtmlMessage:De(t.warnHtmlMessage)?t.warnHtmlMessage:!0,v=!!t.escapeParameter;const S=e?e.modifiers:se(t.modifiers)?t.modifiers:{};let k=t.pluralRules||e&&e.pluralRules,I;I=(()=>{s&&Lg(null);const L={version:_O,locale:a.value,fallbackLocale:l.value,messages:c.value,modifiers:S,pluralRules:k,missing:y===null?void 0:y,missingWarn:f,fallbackWarn:h,fallbackFormat:m,unresolving:!0,postTranslation:_===null?void 0:_,warnHtmlMessage:g,escapeParameter:v,messageResolver:t.messageResolver,messageCompiler:t.messageCompiler,__meta:{framework:"vue"}};L.datetimeFormats=u.value,L.numberFormats=d.value,L.__datetimeFormatters=se(I)?I.__datetimeFormatters:void 0,L.__numberFormatters=se(I)?I.__numberFormatters:void 0;const G=rO(L);return s&&Lg(G),G})(),Zo(I,a.value,l.value);function T(){return[a.value,l.value,c.value,u.value,d.value]}const D=Je({get:()=>a.value,set:L=>{I.locale=L,a.value=L}}),B=Je({get:()=>l.value,set:L=>{I.fallbackLocale=L,l.value=L,Zo(I,a.value,L)}}),$=Je(()=>c.value),U=Je(()=>u.value),X=Je(()=>d.value);function ot(){return Pe(_)?_:null}function K(L){_=L,I.postTranslation=L}function Q(){return b}function at(L){L!==null&&(y=qg(L)),b=L,I.missing=y}const kt=(L,G,ht,St,Kt,H)=>{T();let j;try{__INTLIFY_PROD_DEVTOOLS__,s||(I.fallbackContext=e?iO():void 0),j=L(I)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(I.fallbackContext=void 0)}if(ht!=="translate exists"&&qe(j)&&j===Fu||ht==="translate exists"&&!j){const[z,rt]=G();return e&&p?St(e):Kt(z)}else{if(H(j))return j;throw xs(ps.UNEXPECTED_RETURN_TYPE)}};function qt(...L){return kt(G=>Reflect.apply(Bg,null,[G,...L]),()=>Qf(...L),"translate",G=>Reflect.apply(G.t,G,[...L]),G=>G,G=>vt(G))}function Vt(...L){const[G,ht,St]=L;if(St&&!pe(St))throw xs(ps.INVALID_ARGUMENT);return qt(G,ht,tn({resolvedMessage:!0},St||{}))}function Bt(...L){return kt(G=>Reflect.apply($g,null,[G,...L]),()=>Zf(...L),"datetime format",G=>Reflect.apply(G.d,G,[...L]),()=>Dg,G=>vt(G)||je(G))}function ge(...L){return kt(G=>Reflect.apply(Vg,null,[G,...L]),()=>Jf(...L),"number format",G=>Reflect.apply(G.n,G,[...L]),()=>Dg,G=>vt(G)||je(G))}function ve(L){return L.map(G=>vt(G)||qe(G)||De(G)?Wg(String(G)):G)}const Wt={normalize:ve,interpolate:L=>L,type:"vnode"};function Y(...L){return kt(G=>{let ht;const St=G;try{St.processor=Wt,ht=Reflect.apply(Bg,null,[St,...L])}finally{St.processor=null}return ht},()=>Qf(...L),"translate",G=>G[th](...L),G=>[Wg(G)],G=>je(G))}function dt(...L){return kt(G=>Reflect.apply(Vg,null,[G,...L]),()=>Jf(...L),"number format",G=>G[nh](...L),Kg,G=>vt(G)||je(G))}function ct(...L){return kt(G=>Reflect.apply($g,null,[G,...L]),()=>Zf(...L),"datetime format",G=>G[eh](...L),Kg,G=>vt(G)||je(G))}function bt(L){k=L,I.pluralRules=k}function Ht(L,G){return kt(()=>{if(!L)return!1;const ht=vt(G)?G:a.value,St=N(ht),Kt=I.messageResolver(St,L);return Gs(Kt)||ss(Kt)||vt(Kt)},()=>[L],"translate exists",ht=>Reflect.apply(ht.te,ht,[L,G]),TO,ht=>De(ht))}function Xt(L){let G=null;const ht=F0(I,l.value,a.value);for(let St=0;St{o&&(a.value=L,I.locale=L,Zo(I,a.value,l.value))}),Xn(e.fallbackLocale,L=>{o&&(l.value=L,I.fallbackLocale=L,Zo(I,a.value,l.value))}));const lt={id:zg,locale:D,fallbackLocale:B,get inheritLocale(){return o},set inheritLocale(L){o=L,L&&e&&(a.value=e.locale.value,l.value=e.fallbackLocale.value,Zo(I,a.value,l.value))},get availableLocales(){return Object.keys(c.value).sort()},messages:$,get modifiers(){return S},get pluralRules(){return k||{}},get isGlobal(){return s},get missingWarn(){return f},set missingWarn(L){f=L,I.missingWarn=f},get fallbackWarn(){return h},set fallbackWarn(L){h=L,I.fallbackWarn=h},get fallbackRoot(){return p},set fallbackRoot(L){p=L},get fallbackFormat(){return m},set fallbackFormat(L){m=L,I.fallbackFormat=m},get warnHtmlMessage(){return g},set warnHtmlMessage(L){g=L,I.warnHtmlMessage=L},get escapeParameter(){return v},set escapeParameter(L){v=L,I.escapeParameter=L},t:qt,getLocaleMessage:N,setLocaleMessage:W,mergeLocaleMessage:st,getPostTranslationHandler:ot,setPostTranslationHandler:K,getMissingHandler:Q,setMissingHandler:at,[EO]:bt};return lt.datetimeFormats=U,lt.numberFormats=X,lt.rt=Vt,lt.te=Ht,lt.tm=A,lt.d=Bt,lt.n=ge,lt.getDateTimeFormat=J,lt.setDateTimeFormat=C,lt.mergeDateTimeFormat=x,lt.getNumberFormat=V,lt.setNumberFormat=q,lt.mergeNumberFormat=tt,lt[wO]=n,lt[th]=Y,lt[eh]=ct,lt[nh]=dt,lt}const yp={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:t=>t==="parent"||t==="global",default:"parent"},i18n:{type:Object}};function AO({slots:t},e){return e.length===1&&e[0]==="default"?(t.default?t.default():[]).reduce((s,i)=>[...s,...i.type===it?i.children:[i]],[]):e.reduce((n,s)=>{const i=t[s];return i&&(n[s]=i()),n},Ee())}function Z0(){return it}const OO=Ti({name:"i18n-t",props:tn({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:t=>qe(t)||!isNaN(t)}},yp),setup(t,e){const{slots:n,attrs:s}=e,i=t.i18n||bp({useScope:t.scope,__useComponent:!0});return()=>{const r=Object.keys(n).filter(d=>d[0]!=="_"),o=Ee();t.locale&&(o.locale=t.locale),t.plural!==void 0&&(o.plural=vt(t.plural)?+t.plural:t.plural);const a=AO(e,r),l=i[th](t.keypath,a,o),c=tn(Ee(),s),u=vt(t.tag)||pe(t.tag)?t.tag:Z0();return js(u,c,l)}}}),Xg=OO;function xO(t){return je(t)&&!vt(t[0])}function J0(t,e,n,s){const{slots:i,attrs:r}=e;return()=>{const o={part:!0};let a=Ee();t.locale&&(o.locale=t.locale),vt(t.format)?o.key=t.format:pe(t.format)&&(vt(t.format.key)&&(o.key=t.format.key),a=Object.keys(t.format).reduce((f,h)=>n.includes(h)?tn(Ee(),f,{[h]:t.format[h]}):f,Ee()));const l=s(t.value,o,a);let c=[o.key];je(l)?c=l.map((f,h)=>{const p=i[f.type],m=p?p({[f.type]:f.value,index:h,parts:l}):[f.value];return xO(m)&&(m[0].key=`${f.type}-${h}`),m}):vt(l)&&(c=[l]);const u=tn(Ee(),r),d=vt(t.tag)||pe(t.tag)?t.tag:Z0();return js(d,u,c)}}const IO=Ti({name:"i18n-n",props:tn({value:{type:Number,required:!0},format:{type:[String,Object]}},yp),setup(t,e){const n=t.i18n||bp({useScope:t.scope,__useComponent:!0});return J0(t,e,G0,(...s)=>n[nh](...s))}}),Yg=IO;function NO(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 PO(t){const e=o=>{const{instance:a,value:l}=o;if(!a||!a.$)throw xs(ps.UNEXPECTED_ERROR);const c=NO(t,a.$),u=Zg(l);return[Reflect.apply(c.t,c,[...Jg(u)]),c]};return{created:(o,a)=>{const[l,c]=e(a);Uc&&t.global===c&&(o.__i18nWatcher=Xn(c.locale,()=>{a.instance&&a.instance.$forceUpdate()})),o.__composer=c,o.textContent=l},unmounted:o=>{Uc&&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=Zg(a);o.textContent=Reflect.apply(l.t,l,[...Jg(c)])}},getSSRProps:o=>{const[a]=e(o);return{textContent:a}}}}function Zg(t){if(vt(t))return{path:t};if(se(t)){if(!("path"in t))throw xs(ps.REQUIRED_VALUE,"path");return t}else throw xs(ps.INVALID_VALUE)}function Jg(t){const{path:e,locale:n,args:s,choice:i,plural:r}=t,o={},a=s||{};return vt(n)&&(o.locale=n),qe(i)&&(o.plural=i),qe(r)&&(o.plural=r),[e,a,o]}function DO(t,e,...n){const s=se(n[0])?n[0]:{};(De(s.globalInstall)?s.globalInstall:!0)&&([Xg.name,"I18nT"].forEach(r=>t.component(r,Xg)),[Yg.name,"I18nN"].forEach(r=>t.component(r,Yg)),[ty.name,"I18nD"].forEach(r=>t.component(r,ty))),t.directive("t",PO(e))}const MO=ir("global-vue-i18n");function LO(t={}){const e=De(t.globalInjection)?t.globalInjection:!0,n=new Map,[s,i]=RO(t),r=ir("");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 p=d[0];c.__composerExtend=p.__composerExtend,c.__vueI18nExtend=p.__vueI18nExtend}let f=null;e&&(f=WO(u,c.global)),DO(u,c,...d);const h=u.unmount;u.unmount=()=>{f&&f(),c.dispose(),h()}},get global(){return i},dispose(){s.stop()},__instances:n,__getInstance:o,__setInstance:a,__deleteInstance:l};return c}function bp(t={}){const e=cn();if(e==null)throw xs(ps.MUST_BE_CALL_SETUP_TOP);if(!e.isCE&&e.appContext.app!=null&&!e.appContext.app.__VUE_I18N_SYMBOL__)throw xs(ps.NOT_INSTALLED);const n=$O(e),s=VO(n),i=X0(e),r=FO(t,i);if(r==="global")return kO(s,t,i),s;if(r==="parent"){let l=HO(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=Y0(l),o.__composerExtend&&(a[sh]=o.__composerExtend(a)),jO(o,e,a),o.__setInstance(e,a)}return a}function RO(t,e){const n=hu(),s=n.run(()=>Y0(t));if(s==null)throw xs(ps.UNEXPECTED_ERROR);return[n,s]}function $O(t){const e=as(t.isCE?MO:t.appContext.app.__VUE_I18N_SYMBOL__);if(!e)throw xs(t.isCE?ps.NOT_INSTALLED_WITH_PROVIDE:ps.UNEXPECTED_ERROR);return e}function FO(t,e){return Ru(t)?"__i18n"in e?"local":"global":t.useScope?t.useScope:"local"}function VO(t){return t.mode==="composition"?t.global:t.global.__composer}function HO(t,e,n=!1){let s=null;const i=e.root;let r=UO(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 UO(t,e=!1){return t==null?null:e&&t.vnode.ctx||t.parent}function jO(t,e,n){Ro(()=>{},e),nl(()=>{const s=n;t.__deleteInstance(e);const i=s[sh];i&&(i(),delete s[sh])},e)}const BO=["locale","fallbackLocale","availableLocales"],Qg=["t","rt","d","n","tm","te"];function WO(t,e){const n=Object.create(null);return BO.forEach(i=>{const r=Object.getOwnPropertyDescriptor(e,i);if(!r)throw xs(ps.UNEXPECTED_ERROR);const o=Ie(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,Qg.forEach(i=>{const r=Object.getOwnPropertyDescriptor(e,i);if(!r||!r.value)throw xs(ps.UNEXPECTED_ERROR);Object.defineProperty(t.config.globalProperties,`$${i}`,r)}),()=>{delete t.config.globalProperties.$i18n,Qg.forEach(i=>{delete t.config.globalProperties[`$${i}`]})}}const GO=Ti({name:"i18n-d",props:tn({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},yp),setup(t,e){const n=t.i18n||bp({useScope:t.scope,__useComponent:!0});return J0(t,e,W0,(...s)=>n[eh](...s))}}),ty=GO;SO();QA(MA);tO(YA);eO(F0);if(__INTLIFY_PROD_DEVTOOLS__){const t=up();t.__INTLIFY__=!0,LA(t.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const jd=t=>t&&typeof t=="object"&&!Array.isArray(t),ih=(t,...e)=>{if(!e.length)return t;const n=e.shift();if(jd(t)&&jd(n))for(const s in n)jd(n[s])?(t[s]||Object.assign(t,{[s]:{}}),ih(t[s],n[s])):Object.assign(t,{[s]:n[s]});return ih(t,...e)},KO=ih({},{de:{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Als nächstes hinzufügen"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Stream hinzufügen"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},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"}},login:{t:0,b:{t:2,i:[{t:3}],s:"Einloggen"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Ausloggen"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Alle abgespielten markieren"}},"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"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Remote paaren"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Entfernen"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Speichern"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Zeige mehr"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Verifizieren"}}},data:{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"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"Datei"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Stream"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}}},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"}]}]}}},dialog:{add:{rss:{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:{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"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Verarbeite…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Stream hinzufügen"}}}},playlist:{save:{"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Playlistname"}},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"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcast enfernen"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"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:{"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:"data.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"}},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"}},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"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Letzer Monat"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"Letzte Woche"}},today:{t:0,b:{t:2,i:[{t:3}],s:"Heute"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Unbestimmt"}}},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)"}]}}},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"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}},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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP-stream"}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP-stream-Fehler: Stream kann nicht geladen werden oder wurde wg. Netzwerkfehler gestopt"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek neu einlesen"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Lautstärke"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Singles"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Wenn aktiv, blendet Singles und alles, was mit ihnen verbunden ist, aus."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Spotify-Inhalt"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Wenn aktiv, blendet Inhalte aus, die von Spotify stammen."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Filtern"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Künstler › Erscheinungsdatum"}},"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Künstler › Name"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Namen"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}},"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"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Erscheinungsdatum"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}}}},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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Autoren"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"Autoren"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"Tracks durch Auswählen aus der Bibliothek anfügen"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Live"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Deine Playliste ist leer."}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"Playlisten"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"Neue Episoden"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}}},queue:{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"}]}]}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"Fernbedienungen und Ausgänge"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Online-Services"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"Allgemein"}}}},spotify:{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"}}}}},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"}}}},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"}}}},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"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Album-Künstler"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},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"}},folders:{t:0,b:{t:2,i:[{t:3}],s:"Ordner"}},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"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},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:{"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"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Fehler bei Verbindung zum OwnTone-Server"}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"Warteschlange zu Playlist "},{t:4,k:"name"},{t:3,v:" gesichert"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"Automatisch"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"Dunkel"}},light:{t:0,b:{t:2,i:[{t:3}],s:"Hell"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Erscheinungsbild"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"Zeige Cover-Artwork in der Albumliste"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"Bereitgestellte Artwork von Radiostationen ignorieren"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Keine aktive Pairing-Anfrage"}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Pairing Remote"}},"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 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Lautsprecher-Pairing und Geräteverifikation"}},"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."}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Verifikationscode"}}},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."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone wurde ohne Unterstützung für Last.fm erstellt."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"Passwort"}},spotify:{authorize:{t:0,b:{t:2,i:[{t:3}],s:"Authorisiere API-Zugriff"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Zugriff auf die Spotify API gestatten."}},"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."}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"Bitte den Zugriff der API durch setzen folgender Zugriffsrechte für OwnTone: "},{t:4,k:"scopes"},{t:3,v:"."}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"Spotify Premium Abo erforderlich. Zugriff auf die Spotify API ermöglicht scannen der Spotify-Blibliothek. Erforderliche scopes sind: "},{t:4,k:"scopes"},{t:3,v:"."}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"Zugriff gestattet für "},{t:4,k:"user"},{t:3,v:"."}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"Benutzername"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Sprache"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Wähle hier die Einträge des oberen Navigationsmenüs"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"Auf den Bildschirmen mobiler Geräte wird nur das Burger-Menü angezeigt."}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Navigationsmenüs"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"Aktuell läuft-Seite"}},"recently-added-limit":{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"}},"show-composer-for-genre":{t:0,b:{t:2,i:[{t:3}],s:"Zeige den Komponisten für die aufgelisteten Genres an"}},"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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Komponisten anzeigen"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Dateipfad anzeigen"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"Musik"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"Suche"}}}}}},{en:{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Add Next"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Add stream"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},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"}},login:{t:0,b:{t:2,i:[{t:3}],s:"Login"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Logout"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Mark All Played"}},"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"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Pair Remote"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Remove"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Rescan"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Save"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Show more"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Update"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Verify"}}},data:{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"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"File"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Stream"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}}},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"}]}]}}},dialog:{add:{rss:{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:{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"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Processing…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Add stream"}}}},playlist:{save:{"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Playlist name"}},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"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Delete the podcast"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"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:{"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:"data.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"}},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"}},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"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Last month"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"Last week"}},today:{t:0,b:{t:2,i:[{t:3}],s:"Today"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Undefined"}}},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:")"}]}}},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"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}},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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP stream"}},"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"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Update Library"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Volume"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Hide singles"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides singles and anything associated with them."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Hide Spotify content"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides content from Spotify."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Artist › Release date"}},"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Artist › Name"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}},"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"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Release date"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}}}},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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Authors"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"Authors"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"Files"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"Add some tracks by browsing your library"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Live"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Your play queue is empty"}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"Playlists"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"New Episodes"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}}},queue:{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"}]}]}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Library"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"Remotes and Outputs"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Online Services"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"General"}}}},spotify:{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"}}}}},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"}}}},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"}}}},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"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Album Artist"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},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"}},folders:{t:0,b:{t:2,i:[{t:3}],s:"Folders"}},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"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},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:{"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"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Failed to connect to OwnTone server"}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"Queue saved to playlist "},{t:4,k:"name"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"Auto"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"Dark"}},light:{t:0,b:{t:2,i:[{t:3}],s:"Light"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Appearance"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"Show cover artwork in album list"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"Ignore artwork provided by radio stations"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"No active pairing request."}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Remote Pairing"}},"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 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Speaker pairing and device verification"}},"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."}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Verification code"}}},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."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone was built without support for Last.fm."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"Password"}},spotify:{authorize:{t:0,b:{t:2,i:[{t:3}],s:"Authorize API access"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Grant access to the Spotify API."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone was either built without support for Spotify or libspotify is not installed."}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"Please reauthorize API access to grant OwnTone the following additional access rights: "},{t:4,k:"scopes"},{t:3,v:"."}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"You must have a Spotify premium account. Access to the Spotify API enables scanning of your Spotify library. Required scopes are: "},{t:4,k:"scopes"},{t:3,v:"."}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"Access granted for "},{t:4,k:"user"}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"Username"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Language"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Select the top navigation bar menu items"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"On mobile device screens, only the burger menu is displayed."}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Navigation Bar"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"Player page"}},"recently-added-limit":{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"}},"show-composer-for-genre":{t:0,b:{t:2,i:[{t:3}],s:"Show composer only for listed genres"}},"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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Show composer"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Show filepath"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"Files"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"Music"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"Search"}}}}}},{fr:{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter ensuite"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter un flux"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},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"}},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"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme lus"}},"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"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Jumeler la télécommande"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Analyser"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrer"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Afficher plus"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Vérifier"}}},data:{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"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"Fichier"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Flux"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}}},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"}]}]}}},dialog:{add:{rss:{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:{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"}},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 flux"}}}},playlist:{save:{"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Nom de la liste de lecture"}},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"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer le podcast"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"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:{"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:"data.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"}},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"}},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"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Le mois dernier"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"La semaine dernière"}},today:{t:0,b:{t:2,i:[{t:3}],s:"Aujourd’hui"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Indéfini"}}},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:")"}]}}},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"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}},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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"Flux HTTP"}},"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"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Actualiser la bibliothèque"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Volume"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les singles"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les singles et tout ce qui leur est associé."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Masquer le contenu de Spotify"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque le contenu qui provient de Spotify."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Filtrer"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Artiste › Date de sortie"}},"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Artiste › Nom"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}},"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"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Date de sortie"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}}}},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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Auteurs"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"Auteurs"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"Ajoutez des pistes en parcourant votre bibliothèque"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"En direct"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"La file d’attente est vide"}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"Listes de lecture"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"Nouveaux épisodes"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}}},queue:{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:"count"},{t:3,v:" 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"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Pistes"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Illustrations"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"Télécommandes et sorties"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Services en ligne"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"Général"}}}},spotify:{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"}}}}},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"}}}},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"}}}},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"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Artiste de l’album"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},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"}},folders:{t:0,b:{t:2,i:[{t:3}],s:"Dossiers"}},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"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},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:{"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"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Échec de connexion au serveur"}},"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"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"Automatique"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"Sombre"}},light:{t:0,b:{t:2,i:[{t:3}],s:"Clair"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Mode d’apparence"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"Afficher les illustrations dans la liste d’albums"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"Ignorer les illustrations fournies par les stations de radio"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Illustrations"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Aucune demande de jumelage active."}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Jumelage de télécommande"}},"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 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Jumelage d’enceinte et vérification d’appareil"}},"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."}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Code de vérification"}}},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."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"L’option Last.fm n’est pas présente."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"Mot de passe"}},spotify:{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."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"L’option Spotify n’est pas présente."}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"Veuillez autoriser à nouveau l’accès à l’API pour accorder à OwnTone les droits d’accès supplémentaires suivants : "},{t:4,k:"scopes"},{t:3,v:"."}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"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 : "},{t:4,k:"scopes"},{t:3,v:"."}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"Accès autorisé pour "},{t:4,k:"user"},{t:3,v:"."}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"Nom d’utilisateur"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Langue"}},"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-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"Sur les écrans des appareils mobiles, seul le menu est affiché."}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Barre de navigation"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"Page « En cours de lecture »"}},"recently-added-limit":{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 »"}},"show-composer-for-genre":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le compositeur uniquement pour les genres listés"}},"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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le compositeur"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le chemin du fichier"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"Musique"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}}}}}},{"zh-CN":{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"添加流"}},cancel:{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:"隐藏历史"}},login:{t:0,b:{t:2,i:[{t:3}],s:"登入"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"退出"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"全部标记为已播放"}},"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"标记为最新"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"标记为已播放"}},pair:{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:"移除"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"重新扫描"}},save:{t:0,b:{t:2,i:[{t:3}],s:"保存"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"显示更多"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"验证"}}},data:{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:" 个流派"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"流"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"链接"}}},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:" 只曲目"}]}]}}},dialog:{add:{rss:{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:{loading:{t:0,b:{t:2,i:[{t:3}],s:"加载中…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"处理中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"添加流"}}}},playlist:{save:{"playlist-name":{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:"保存播放清单到列表"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"移除播客"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配对码"}},title:{t:0,b:{t:2,i:[{t:3}],s:"请求遥控配对"}}},track:{"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:"data.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:"更新所有内容"}},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:"重新扫描未修改文件的元数据"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"仅更新Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"更新资料库"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"上月"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"上周"}},today:{t:0,b:{t:2,i:[{t:3}],s:"今日"}},undefined:{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:")"}]}}},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:"有声读物"}},composers:{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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP流"}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP流错误:流载入失败或者由于网络原因无法载入"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"更新资料库"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"音量"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隐藏单曲"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果处于活动状态,则隐藏单曲和与其关联的任何内容"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隐藏来自Spotify的内容"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果处于活动状态,则隐藏 Spotify 中的内容"}},title:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"艺人 › 发行日期"}},"artist-name":{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:"评级"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近添加"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"最近发行"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"发行日期"}},title:{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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"张专辑"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"作者"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"作者"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"文件"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"流派"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"浏览资料库添加曲目"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"直播"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"播放清单是空的"}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"播放列表"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"最新单集"}},title:{t:0,b:{t:2,i:[{t:3}],s:"播客"}}},queue:{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:" 只曲目"}]}]}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"资料库"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"遥控和输出"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"在线服务"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"概览"}}}},spotify:{music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"特色列表"}},"new-releases":{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:"显示/隐藏歌词"}}}},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:"智能"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"添加时间"}},album:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"专辑艺人"}},albums:{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:"时长"}},folders:{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:"路径"}},playlists:{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:{"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:" 只曲目"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"无法连接到 OwnTone 服务器"}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"清单以添加到播放列表 "},{t:4,k:"name"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"自动"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"深色"}},light:{t:0,b:{t:2,i:[{t:3}],s:"浅色"}},title:{t:0,b:{t:2,i:[{t:3}],s:"外观"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"在专辑列表中显示封面艺术作品"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"忽略广播电台提供的作品"}},title:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"没有活跃的配对请求"}},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:"远程配对请求来自于 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"扬声器配对和设备验证"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您的扬声器需要配对,请在下面输入它显示的 PIN以激活"}},"verification-code":{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 用户名/密码,仅存储会话密钥。会话密钥不会过期"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone的构建没有来自Last.fm的官方支持"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"密码"}},spotify:{authorize:{t:0,b:{t:2,i:[{t:3}],s:"授权 API 访问"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"授予对 Spotify API 的访问权限"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone的构建没有来自 Spotify 官方的支持,也未安装 libspotify"}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"请重新授权 API 访问权限,以授予 OwnTone 以下附加访问权限:"},{t:4,k:"scopes"}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"您必须拥有 Spotify付费帐户。访问 Spotify API 可以扫描您的 Spotify库。所需范围是:"},{t:4,k:"scopes"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"授予访问权限 "},{t:4,k:"user"}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"用户名"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},language:{t:0,b:{t:2,i:[{t:3}],s:"语言"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"选择顶部导航栏菜单项"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"在移动设备屏幕上,只显示汉堡菜单"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"导航条"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"“正在播放”页面"}},"recently-added-limit":{t:0,b:{t:2,i:[{t:3}],s:"限制显示的相册数量"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"“最近添加”页面"}},"show-composer-for-genre":{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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"显示作曲家"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"显示文件路径"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"文件"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"音乐"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"播客"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"广播电台"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"搜索"}}}}}},{"zh-TW":{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"新增串流"}},cancel:{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:"隱藏歷史"}},login:{t:0,b:{t:2,i:[{t:3}],s:"登入"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"退出"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"全部標記為已播放"}},"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"標記為最新"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"標記為已播放"}},pair:{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:"移除"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"重新掃描"}},save:{t:0,b:{t:2,i:[{t:3}],s:"儲存"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"顯示更多"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"驗證"}}},data:{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:" 個音樂類型"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"串流"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"鏈接"}}},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:" 首曲目"}]}]}}},dialog:{add:{rss:{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:{loading:{t:0,b:{t:2,i:[{t:3}],s:"載入中…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"處理中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"新增串流"}}}},playlist:{save:{"playlist-name":{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:"儲存播放清單到列表"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"移除Podcast"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配對碼"}},title:{t:0,b:{t:2,i:[{t:3}],s:"請求遙控配對"}}},track:{"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:"data.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:"更新所有內容"}},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:"重新掃描未修改文件的中繼資料"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"僅更新Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"更新資料庫"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"上月"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"上周"}},today:{t:0,b:{t:2,i:[{t:3}],s:"今日"}},undefined:{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:")"}]}}},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:"有聲書"}},composers:{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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP串流"}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP串流錯誤:串流載入失敗或者由於網絡原因無法載入"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"更新資料庫"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"音量"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隱藏單曲"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果處於活動狀態,則隱藏單曲和與其關聯的任何內容"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隱藏來自Spotify的內容"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果處於活動狀態,則隱藏 Spotify 中的內容"}},title:{t:0,b:{t:2,i:[{t:3}],s:"篩選"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"藝人 › 發行日期"}},"artist-name":{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:"評級"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近新增"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"最近發行"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"發行日期"}},title:{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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"作者"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"作者"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"文件"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"瀏覽資料庫新增曲目"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"直播"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"播放清單是空的"}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"播放列表"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"最新單集"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}},queue:{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:" 首曲目"}]}]}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"資料庫"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"遙控和輸出"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"在線服務"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"概覽"}}}},spotify:{music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"特色列表"}},"new-releases":{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:"顯示/隱藏歌詞"}}}},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:"智能"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"新增時間"}},album:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"專輯藝人"}},albums:{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:"時長"}},folders:{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:"路徑"}},playlists:{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:{"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:" 首曲目"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"無法連接到 OwnTone 伺服器"}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"清單以新增到播放列表 "},{t:4,k:"name"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"自動"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"深色"}},light:{t:0,b:{t:2,i:[{t:3}],s:"淺色"}},title:{t:0,b:{t:2,i:[{t:3}],s:"外觀"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"在專輯列表中顯示封面藝術作品"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"忽略電台提供的作品"}},title:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"沒有活躍的配對請求"}},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:"遠程配對請求來自於 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"揚聲器配對和設備驗證"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您的揚聲器需要配對,請在下面輸入它顯示的 PIN以啓用"}},"verification-code":{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 用戶名/密碼,僅存儲會話密鑰。會話密鑰不會過期"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone並無Last.fm的官方支持"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"密碼"}},spotify:{authorize:{t:0,b:{t:2,i:[{t:3}],s:"授權 API 訪問"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"授予對 Spotify API 的訪問權限"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone並無 Spotify 官方的支持,也未安裝 libspotify"}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"請重新授權 API 訪問權限,以授予 OwnTone 以下附加訪問權限:"},{t:4,k:"scopes"}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"您必須擁有 Spotify付費帳戶。訪問 Spotify API 可以掃描您的 Spotify庫。所需範圍是:"},{t:4,k:"scopes"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"授予訪問權限 "},{t:4,k:"user"}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"用戶名"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},language:{t:0,b:{t:2,i:[{t:3}],s:"語言"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"選擇頂部導航欄菜單項"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"在行動裝置螢幕上,只會顯示漢堡菜單"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"導航條"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"“正在播放”頁面"}},"recently-added-limit":{t:0,b:{t:2,i:[{t:3}],s:"限制顯示的相簿數量"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"“最近新增”頁面"}},"show-composer-for-genre":{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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"顯示作曲家"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"顯示檔案路徑"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"文件"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"音樂"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"電台"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}}}}}}),Bs=LO({fallbackLocale:"en",fallbackWarn:!1,locale:navigator.language,messages:KO,missingWarn:!1}),{t:zO}=Bs.global;ut.interceptors.response.use(t=>t.data,t=>(t.request.status&&t.request.responseURL&&So().add({text:zO("server.request-failed",{cause:t.request.statusText,status:t.request.status,url:t.request.responseURL}),type:"danger"}),Promise.reject(t)));const ey="./api/pairing",vp={pair(t){return ut.post(ey,{pin:t})},state(){return ut.get(ey)}},_p=Ps("RemotesStore",{actions:{async initialise(){this.$state=await vp.state()}},state:()=>({active:!1,remote:""})}),qO={name:"ModalDialogRemotePairing",components:{ControlPinField:n0,ModalDialog:sr},props:{show:Boolean},emits:["close"],setup(){return{remoteStore:_p()}},data(){return{disabled:!0,pin:""}},computed:{actions(){return[{handler:this.cancel,icon:"cancel",key:"actions.cancel"},{disabled:this.disabled,handler:this.pair,icon:"vector-link",key:"actions.pair"}]}},methods:{cancel(){this.$emit("close")},onPinChange(t,e){this.pin=t,this.disabled=e},pair(){vp.pair(this.pin).then(()=>{this.pin=""})}}},XO=["textContent"];function YO(t,e,n,s,i,r){const o=w("control-pin-field"),a=w("modal-dialog");return O(),yt(a,{actions:r.actions,show:n.show,title:t.$t("dialog.remote-pairing.title"),onClose:e[1]||(e[1]=l=>t.$emit("close"))},{content:R(()=>[P("form",{onSubmit:e[0]||(e[0]=jn((...l)=>r.pair&&r.pair(...l),["prevent"]))},[P("label",{class:"label",textContent:et(s.remoteStore.remote)},null,8,XO),E(o,{placeholder:t.$t("dialog.remote-pairing.pairing-code"),onInput:r.onPinChange},null,8,["placeholder","onInput"])],32)]),_:1},8,["actions","show","title"])}const ZO=nt(qO,[["render",YO]]),JO={name:"ControlSwitch",props:{modelValue:Boolean},emits:["update:modelValue"]},QO={class:"field mb-0 is-flex is-align-items-center"},tx={class:"toggle is-flex is-align-items-center"},ex={class:"control is-flex is-align-items-center"},nx=["checked"],sx={key:0,class:"help mb-4"};function ix(t,e,n,s,i,r){return O(),F(it,null,[P("div",QO,[P("label",tx,[P("div",ex,[P("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,nx),e[1]||(e[1]=P("div",{class:"toggle-switch"},null,-1))]),le(t.$slots,"label",{},void 0,!0)])]),t.$slots.help?(O(),F("div",sx,[le(t.$slots,"help",{},void 0,!0)])):_t("",!0)],64)}const Fr=nt(JO,[["render",ix],["__scopeId","data-v-f999a158"]]),We="./api/library",bs="./api/search",Ct={add(t){return ut.post(`${We}/add`,null,{params:{url:t}})},album(t){return ut.get(`${We}/albums/${t}`)},albumTracks(t,e={limit:-1,offset:0}){return ut.get(`${We}/albums/${t}/tracks`,{params:e})},albums(t){return ut.get(`${We}/albums`,{params:{media_kind:t}})},artist(t){return ut.get(`${We}/artists/${t}`)},artistAlbums(t){return ut.get(`${We}/artists/${t}/albums`)},async artistTracks(t){const e={expression:`songartistid is "${t}"`,type:"tracks"};return(await ut.get(bs,{params:e})).tracks},artists(t){return ut.get(`${We}/artists`,{params:{media_kind:t}})},composer(t){return ut.get(`${We}/composers/${encodeURIComponent(t)}`)},async composerAlbums(t){const e={expression:`composer is "${t}" and media_kind is music`,type:"albums"};return(await ut.get(bs,{params:e})).albums},async composerTracks(t){const e={expression:`composer is "${t}" and media_kind is music`,type:"tracks"};return(await ut.get(bs,{params:e})).tracks},composers(t){return ut.get(`${We}/composers`,{params:{media_kind:t}})},files(t){return ut.get(`${We}/files`,{params:{directory:t}})},async genre(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"genres"};return(await ut.get(bs,{params:n})).genres},async genreAlbums(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"albums"};return(await ut.get(bs,{params:n})).albums},async genreTracks(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"tracks"};return(await ut.get(bs,{params:n})).tracks},async genres(t){const e={expression:`media_kind is ${t}`,type:"genres"};return(await ut.get(bs,{params:e})).genres},async newPodcastEpisodes(){const t={expression:"media_kind is podcast and play_count = 0 ORDER BY time_added DESC",type:"tracks"};return(await ut.get(bs,{params:t})).tracks},playlist(t){return ut.get(`${We}/playlists/${t}`)},playlistDelete(t){return ut.delete(`${We}/playlists/${t}`)},playlistFolder(t=0){return ut.get(`${We}/playlists/${t}/playlists`)},playlistTracks(t){return ut.get(`${We}/playlists/${t}/tracks`)},async podcastEpisodes(t){const e={expression:`media_kind is podcast and songalbumid is "${t}" ORDER BY date_released DESC`,type:"tracks"};return(await ut.get(bs,{params:e})).tracks},async radioStreams(){const t={expression:"data_kind is url and song_length = 0",media_kind:"music",type:"tracks"};return(await ut.get(bs,{params:t})).tracks},rescan(t){return ut.put("./api/rescan",null,{params:{scan_kind:t}})},rssCount(){return ut.get(`${We}/count`,{params:{expression:"scan_kind is rss"}})},search(t){return ut.get(bs,{params:t})},state(){return ut.get(We)},track(t){return ut.get(`${We}/tracks/${t}`)},trackPlaylists(t){return ut.get(`${We}/tracks/${t}/playlists`)},update(t){return ut.put("./api/update",null,{params:{scan_kind:t}})},updateAlbum(t,e){return ut.put(`${We}/albums/${t}/tracks`,null,{params:e})},updateTrack(t,e={}){return ut.put(`${We}/tracks/${t}`,null,{params:e})}},Vu=Ps("LibraryStore",{actions:{async initialise(){this.$state=await Ct.state()}},state:()=>({albums:0,artists:0,db_playtime:0,songs:0,started_at:"01",update_dialog_scan_kind:"",updated_at:"01",updating:!1})}),cs={lastfm(){return ut.get("./api/lastfm")},loginLastfm(t){return ut.post("./api/lastfm-login",t)},logoutLastfm(){return ut.get("./api/lastfm-logout")},logoutSpotify(){return ut.get("./api/spotify-logout")},spotify(){return ut.get("./api/spotify")}},Ye=Ps("ServicesStore",{actions:{async initialiseLastfm(){this.lastfm=await cs.lastfm()},initialiseSpotify(){cs.spotify().then(t=>{this.spotify=t,this.spotifyTimerId>0&&(clearTimeout(this.spotifyTimerId),this.spotifyTimerId=0),t.webapi_token_expires_in>0&&t.webapi_token&&(this.spotifyTimerId=setTimeout(()=>this.initialiseSpotify(),1e3*t.webapi_token_expires_in))})}},getters:{grantedSpotifyScopes:t=>t.spotify.webapi_granted_scope?.split(" ")??[],hasMissingSpotifyScopes:t=>t.missingSpotifyScopes.length>0,isAuthorizationRequired:t=>!t.isSpotifyActive||t.hasMissingSpotifyScopes,isLastfmActive:t=>t.lastfm.scrobbling_enabled,isLastfmEnabled:t=>t.lastfm.enabled,isSpotifyActive:t=>t.spotify.webapi_token_valid,isSpotifyEnabled:t=>t.spotify.spotify_installed,missingSpotifyScopes(t){const e=new Set(t.grantedSpotifyScopes);return t.requiredSpotifyScopes.filter(n=>!e.has(n))??[]},requiredSpotifyScopes:t=>t.spotify.webapi_required_scope?.split(" ")??[]},state:()=>({lastfm:{},spotify:{},spotifyTimerId:0})}),rx={name:"ModalDialogUpdate",components:{ControlSwitch:Fr,ModalDialog:sr},props:{show:Boolean},emits:["close"],setup(){return{libraryStore:Vu(),servicesStore:Ye()}},data(){return{rescanMetadata:!1}},computed:{actions(){const t=[{handler:this.cancel,icon:"cancel",key:"actions.cancel"}];return this.libraryStore.updating||t.push({handler:this.analyse,icon:"check",key:"actions.rescan"}),t}},methods:{analyse(){this.rescanMetadata?Ct.rescan(this.libraryStore.update_dialog_scan_kind):Ct.update(this.libraryStore.update_dialog_scan_kind)},cancel(){this.$emit("close"),this.libraryStore.update_dialog_scan_kind=""}}},ox={key:0},ax={key:0,class:"field"},lx=["textContent"],cx={class:"control"},ux={class:"select is-small"},dx=["textContent"],fx=["textContent"],hx=["textContent"],px=["textContent"],mx=["textContent"],gx={key:1},yx=["textContent"];function bx(t,e,n,s,i,r){const o=w("control-switch"),a=w("modal-dialog");return O(),yt(a,{actions:r.actions,show:n.show,title:t.$t("dialog.update.title"),onClose:e[2]||(e[2]=l=>t.$emit("close"))},{content:R(()=>[s.libraryStore.updating?(O(),F("div",gx,[P("div",{class:"mb-3",textContent:et(t.$t("dialog.update.progress"))},null,8,yx)])):(O(),F("div",ox,[s.servicesStore.isSpotifyActive?(O(),F("div",ax,[P("label",{class:"label",textContent:et(t.$t("dialog.update.info"))},null,8,lx),P("div",cx,[P("div",ux,[hs(P("select",{"onUpdate:modelValue":e[0]||(e[0]=l=>s.libraryStore.update_dialog_scan_kind=l)},[P("option",{value:"",textContent:et(t.$t("dialog.update.all"))},null,8,dx),P("option",{value:"files",textContent:et(t.$t("dialog.update.local"))},null,8,fx),s.servicesStore.isSpotifyActive?(O(),F("option",{key:0,value:"spotify",textContent:et(t.$t("dialog.update.spotify"))},null,8,hx)):_t("",!0),P("option",{value:"rss",textContent:et(t.$t("dialog.update.feeds"))},null,8,px)],512),[[op,s.libraryStore.update_dialog_scan_kind]])])])])):_t("",!0),E(o,{modelValue:i.rescanMetadata,"onUpdate:modelValue":e[1]||(e[1]=l=>i.rescanMetadata=l)},{label:R(()=>[P("span",{textContent:et(t.$t("dialog.update.rescan-metadata"))},null,8,mx)]),_:1},8,["modelValue"])]))]),_:1},8,["actions","show","title"])}const vx=nt(rx,[["render",bx]]),Zn=Ps("UIStore",{actions:{hideMenus(){this.showBurgerMenu=!1,this.showPlayerMenu=!1},toggleBurgerMenu(){this.showPlayerMenu=!1,this.showBurgerMenu=!this.showBurgerMenu},toggleHideReadItems(){this.hideReadItems=!this.hideReadItems},togglePlayerMenu(){this.showBurgerMenu=!1,this.showPlayerMenu=!this.showPlayerMenu}},state:()=>({albumsSort:1,artistAlbumsSort:1,artistTracksSort:1,artistsSort:1,composerTracksSort:1,genreTracksSort:1,hideReadItems:!1,hideSingles:!1,hideSpotify:!1,showBurgerMenu:!1,showPlayerMenu:!1,showUpdateDialog:!1})}),_x={name:"ControlLink",props:{to:{required:!0,type:Object}},setup(){return{uiStore:Zn()}},methods:{open(){this.uiStore.hideMenus(),this.$router.push(this.to)}}},Sx=["href"];function Ex(t,e,n,s,i,r){return O(),F("a",{href:t.$router.resolve(n.to).href,onClick:e[0]||(e[0]=jn((...o)=>r.open&&r.open(...o),["stop","prevent"]))},[le(t.$slots,"default")],8,Sx)}const Q0=nt(_x,[["render",Ex]]),Sp={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}}},ny=()=>{sp(t=>({"71a992eb":t.ratio}))},sy=Sp.setup;Sp.setup=sy?(t,e)=>(ny(),sy(t,e)):ny;const wx=["value","disabled","max"];function kx(t,e,n,s,i,r){return O(),F("input",{value:n.value,disabled:n.disabled,class:Gt(["slider",{"is-inactive":n.disabled}]),max:n.max,type:"range",onInput:e[0]||(e[0]=o=>t.$emit("update:value",o.target.valueAsNumber))},null,42,wx)}const Hu=nt(Sp,[["render",kx],["__scopeId","data-v-460ca666"]]),ts="./api/player",en={consume(t){return ut.put(`${ts}/consume`,null,{params:{state:t}})},next(){return ut.put(`${ts}/next`)},pause(){return ut.put(`${ts}/pause`)},play(t={}){return ut.put(`${ts}/play`,null,{params:t})},previous(){return ut.put(`${ts}/previous`)},repeat(t){return ut.put(`${ts}/repeat`,null,{params:{state:t}})},seek(t){return ut.put(`${ts}/seek`,null,{params:{seek_ms:t}})},seekToPosition(t){return ut.put(`${ts}/seek`,null,{params:{position_ms:t}})},setVolume(t,e=null){const n={volume:t,...e!==null&&{output_id:e}};return ut.put(`${ts}/volume`,null,{params:n})},shuffle(t){return ut.put(`${ts}/shuffle`,null,{params:{state:t}})},state(){return ut.get(ts)},stop(){return ut.put(`${ts}/stop`)}},{t:iy}=Bs.global,Ii="./api/queue",ae={async add(t,e=!1){if(e){const{current:s}=Ms();s?.id&&(t.position=s.position+1)}const n=await ut.post(`${Ii}/items/add`,null,{params:t});return So().add({text:iy("server.appended-tracks",{count:n.count}),timeout:2e3,type:"info"}),n},addExpression(t,e=!1){return this.add({expression:t},e)},addUri(t,e=!1){return this.add({uris:t},e)},clear(){return ut.put(`${Ii}/clear`)},move(t,e){return ut.put(`${Ii}/items/${t}`,null,{params:{new_position:e}})},playExpression(t,e,n){const s={clear:"true",expression:t,playback:"start",playback_from_position:n,shuffle:e};return ut.post(`${Ii}/items/add`,null,{params:s})},playUri(t,e,n){const s={clear:"true",playback:"start",playback_from_position:n,shuffle:e,uris:t};return ut.post(`${Ii}/items/add`,null,{params:s})},remove(t){return ut.delete(`${Ii}/items/${t}`)},async saveToPlaylist(t){const{data:e}=await ut.post(`${Ii}/save`,null,{params:{name:t}});return So().add({text:iy("server.queue-saved",{name:t}),timeout:2e3,type:"info"}),e},state(){return ut.get(Ii)}},Tx={state(){return ut.get("./api/config")}},Vo=Ps("ConfigurationStore",{actions:{async initialise(){this.$state=await Tx.state()}},state:()=>({allow_modifying_stored_playlists:!1,buildoptions:[],default_playlist_directory:"",directories:[],hide_singles:!1,library_name:"",radio_playlists:!1,version:"",websocket_port:0})}),Ms=Ps("QueueStore",{actions:{async initialise(){this.$state=await ae.state()}},getters:{current(t){const e=Bn();return e.initialise(),t.items.find(n=>n.id===e.item_id)??{}},isEmpty(t){return t.count===0},isPauseAllowed(t){return t.current&&t.current.data_kind!=="pipe"},isSavingAllowed(){const t=Vo();return t.allow_modifying_stored_playlists&&t.default_playlist_directory}},state:()=>({count:0,items:[],version:0})}),Bn=Ps("PlayerStore",{actions:{async initialise(){this.$state=await en.state();const t=Ms();t.current.track_id&&Ct.track(t.current.track_id).then(e=>{this.lyricsContent=e.lyrics||""})}},getters:{isMuted:t=>t.volume===0,isPlaying:t=>t.state==="play",isRepeatAll:t=>t.repeat==="all",isRepeatOff:t=>t.repeat==="off",isRepeatSingle:t=>t.repeat==="single",isStopped:t=>t.state==="stop"},state:()=>({consume:!1,item_id:0,item_length_ms:0,item_progress_ms:0,lyricsContent:"",repeat:"off",showLyrics:!1,shuffle:!1,state:"stop",volume:0})}),Cx={name:"ControlVolume",components:{ControlSlider:Hu},setup(){return{playerStore:Bn()}},data(){return{volume:0}},computed:{icon(){return this.playerStore.isMuted?"volume-off":"volume-high"}},watch:{"playerStore.volume"(){this.playerStore.isMuted||(this.volume=this.playerStore.volume)}},methods:{changeVolume(){en.setVolume(this.playerStore.volume)},toggle(){this.playerStore.isMuted?this.playerStore.volume=this.volume:this.playerStore.volume=0,this.changeVolume()}}},Ax={class:"media is-align-items-center mb-0"},Ox={class:"media-left"},xx={class:"media-content"},Ix=["textContent"];function Nx(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-slider");return O(),F("div",Ax,[P("div",Ox,[P("button",{class:"button is-small",onClick:e[0]||(e[0]=(...l)=>r.toggle&&r.toggle(...l))},[E(o,{class:"icon",name:r.icon},null,8,["name"])])]),P("div",xx,[P("div",{class:"is-size-7 is-uppercase",textContent:et(t.$t("navigation.volume"))},null,8,Ix),E(a,{value:s.playerStore.volume,"onUpdate:value":e[1]||(e[1]=l=>s.playerStore.volume=l),max:100,onChange:r.changeVolume},null,8,["value","onChange"])])])}const Px=nt(Cx,[["render",Nx]]),Bd="./api/outputs",Wc={state(){return ut.get(Bd)},toggle(t){return ut.put(`${Bd}/${t}/toggle`)},update(t,e){return ut.put(`${Bd}/${t}`,e)}},Dx={name:"ControlOutputVolume",components:{ControlSlider:Hu},props:{output:{required:!0,type:Object}},data(){return{volume:this.output.volume}},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(){en.setVolume(this.volume,this.output.id)},toggle(){Wc.update(this.output.id,{selected:!this.output.selected})}}},Mx={class:"media is-align-items-center mb-0"},Lx={class:"media-left"},Rx={class:"media-content"},$x=["textContent"];function Fx(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-slider");return O(),F("div",Mx,[P("div",Lx,[P("button",{class:Gt(["button is-small",{"has-text-grey-light":!n.output.selected}]),onClick:e[0]||(e[0]=(...l)=>r.toggle&&r.toggle(...l))},[E(o,{class:"icon",name:r.icon,title:n.output.type},null,8,["name","title"])],2)]),P("div",Rx,[P("div",{class:Gt(["is-size-7 is-uppercase",{"has-text-grey-light":!n.output.selected}]),textContent:et(n.output.name)},null,10,$x),E(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 Vx=nt(Dx,[["render",Fx]]),Hx={name:"ControlPlayerBack",props:{offset:{required:!0,type:Number}},setup(){return{playerStore:Bn(),queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty||this.playerStore.isStopped},visible(){return["podcast","audiobook"].includes(this.queueStore.current.media_kind)}},methods:{seek(){en.seek(this.offset*-1)}}},Ux=["disabled"];function jx(t,e,n,s,i,r){const o=w("mdicon");return r.visible?(O(),F("button",{key:0,disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.seek&&r.seek(...a))},[E(o,{class:"icon",name:"rewind-10",title:t.$t("player.button.seek-backward")},null,8,["title"])],8,Ux)):_t("",!0)}const Bx=nt(Hx,[["render",jx]]),Wx={name:"ControlPlayerConsume",setup(){return{playerStore:Bn()}},methods:{toggle(){en.consume(!this.playerStore.consume)}}};function Gx(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{class:Gt({"is-dark":s.playerStore.consume}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:"fire",size:"16",title:t.$t("player.button.consume")},null,8,["title"])],2)}const Kx=nt(Wx,[["render",Gx]]),zx={name:"ControlPlayerForward",props:{offset:{required:!0,type:Number}},setup(){return{playerStore:Bn(),queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty||this.playerStore.isStopped},visible(){return["podcast","audiobook"].includes(this.queueStore.current.media_kind)}},methods:{seek(){en.seek(this.offset)}}},qx=["disabled"];function Xx(t,e,n,s,i,r){const o=w("mdicon");return r.visible?(O(),F("button",{key:0,disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.seek&&r.seek(...a))},[E(o,{class:"icon",name:"fast-forward-30",title:t.$t("player.button.seek-forward")},null,8,["title"])],8,qx)):_t("",!0)}const Yx=nt(zx,[["render",Xx]]),Zx={name:"ControlPlayerLyrics",setup(){return{playerStore:Bn()}},computed:{icon(){return this.playerStore.showLyrics?"script-text-play":"script-text-outline"}},methods:{toggle(){this.playerStore.showLyrics=!this.playerStore.showLyrics}}};function Jx(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{class:Gt({"is-dark":s.playerStore.showLyrics}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:r.icon,size:16,title:t.$t("player.button.toggle-lyrics")},null,8,["name","title"])],2)}const Qx=nt(Zx,[["render",Jx]]),tI={name:"ControlPlayerNext",setup(){return{queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty}},methods:{next(){en.next()}}},eI=["disabled"];function nI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.next&&r.next(...a))},[E(o,{class:"icon",name:"skip-forward",title:t.$t("player.button.skip-forward")},null,8,["title"])],8,eI)}const sI=nt(tI,[["render",nI]]),iI={name:"ControlPlayerPlay",setup(){return{playerStore:Bn(),queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty},icon(){if(this.playerStore.isPlaying){if(this.queueStore.isPauseAllowed)return"pause"}else return"play";return"stop"}},methods:{toggle(){this.playerStore.isPlaying&&this.queueStore.isPauseAllowed?en.pause():this.playerStore.isPlaying&&!this.queueStore.isPauseAllowed?en.stop():en.play()}}},rI=["disabled"];function oI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:r.icon,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],8,rI)}const aI=nt(iI,[["render",oI]]),lI={name:"ControlPlayerPrevious",setup(){return{queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty}},methods:{previous(){en.previous()}}},cI=["disabled"];function uI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.previous&&r.previous(...a))},[E(o,{class:"icon",name:"skip-backward",title:t.$t("player.button.skip-backward")},null,8,["title"])],8,cI)}const dI=nt(lI,[["render",uI]]),fI={name:"ControlPlayerRepeat",setup(){return{playerStore:Bn()}},computed:{icon(){return this.playerStore.isRepeatAll?"repeat":this.playerStore.isRepeatSingle?"repeat-once":"repeat-off"}},methods:{toggle(){this.playerStore.isRepeatAll?en.repeat("single"):this.playerStore.isRepeatSingle?en.repeat("off"):en.repeat("all")}}};function hI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{class:Gt({"is-dark":!s.playerStore.isRepeatOff}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:r.icon,size:16,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],2)}const pI=nt(fI,[["render",hI]]),mI={name:"ControlPlayerShuffle",setup(){return{playerStore:Bn()}},computed:{icon(){return this.playerStore.shuffle?"shuffle":"shuffle-disabled"}},methods:{toggle(){en.shuffle(!this.playerStore.shuffle)}}};function gI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{class:Gt({"is-dark":s.playerStore.shuffle}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:r.icon,size:16,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],2)}const yI=nt(mI,[["render",gI]]),Ll={audio:null,play(t){this.audio=new Audio(`${String(t||"")}?x=${Date.now()}`),this.audio.crossOrigin="anonymous";const e=new(window.AudioContext||window.webkitAudioContext);e.createMediaElementSource(this.audio).connect(e.destination),this.audio.addEventListener("canplay",()=>{e.resume().then(()=>{this.audio.play()})}),this.audio.load()},setVolume(t){this.audio&&(this.audio.volume=Math.max(0,Math.min(1,Number(t)||0)))},stop(){try{this.audio?.pause()}catch{}}},bI={name:"ControlStreamVolume",components:{ControlSlider:Hu},emits:["change","mute"],data(){return{loading:!1,playing:!1,volume:10}},unmounted(){this.closeAudio()},methods:{changeVolume(){Ll.setVolume(this.volume/100)},closeAudio(){Ll.stop(),this.playing=!1,this.loading=!1},playChannel(){this.loading=!0,Ll.play("/stream.mp3"),this.changeVolume();const t=Ll.audio;t&&(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()}))},togglePlay(){this.playing||this.loading?this.closeAudio():this.playChannel()}}},vI={class:"media is-align-items-center mb-0"},_I={class:"media-left"},SI={class:"media-content is-align-items-center"},EI=["textContent"],wI={href:"stream.mp3",class:"ml-2",target:"_blank"};function kI(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-slider");return O(),F("div",vI,[P("div",_I,[P("button",{class:Gt(["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))},[E(o,{class:"icon",name:"broadcast"})],2)]),P("div",SI,[P("div",{class:Gt(["is-flex",{"has-text-grey-light":!i.playing}])},[P("div",{class:"is-size-7 is-uppercase",textContent:et(t.$t("navigation.stream"))},null,8,EI),P("a",wI,[E(o,{class:"icon is-small",name:"open-in-new"})])],2),E(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 TI=nt(bI,[["render",kI]]),Ep=Ps("OutputsStore",{actions:{async initialise(){this.$state=await Wc.state()}},state:()=>({outputs:[]})}),CI={name:"NavbarBottom",components:{ControlLink:Q0,ControlMainVolume:Px,ControlOutputVolume:Vx,ControlPlayerBack:Bx,ControlPlayerConsume:Kx,ControlPlayerForward:Yx,ControlPlayerLyrics:Qx,ControlPlayerNext:sI,ControlPlayerPlay:aI,ControlPlayerPrevious:dI,ControlPlayerRepeat:pI,ControlPlayerShuffle:yI,ControlStreamVolume:TI},setup(){return{notificationsStore:So(),outputsStore:Ep(),queueStore:Ms(),uiStore:Zn()}},computed:{isPlayerPage(){return this.$route.name==="player"},metadata(){const{current:t}=this.queueStore;return[t.artist,t.album].filter(Boolean).join(" - ")}}},AI={class:"navbar-brand is-flex-grow-1"},OI={class:"is-text-clipped"},xI=["textContent"],II=["textContent"],NI={class:"dropdown-menu is-mobile"},PI={class:"dropdown-content"},DI={class:"dropdown-item pt-0"},MI={class:"dropdown-item is-flex is-justify-content-center"},LI={class:"buttons has-addons"};function RI(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-link"),l=w("control-player-previous"),c=w("control-player-back"),u=w("control-player-play"),d=w("control-player-forward"),f=w("control-player-next"),h=w("control-main-volume"),p=w("control-output-volume"),m=w("control-stream-volume"),b=w("control-player-repeat"),y=w("control-player-shuffle"),_=w("control-player-consume"),g=w("control-player-lyrics");return O(),F("nav",{class:Gt(["navbar is-fixed-bottom",{"is-bottom":!r.isPlayerPage}])},[P("div",AI,[E(a,{class:"navbar-item",to:{name:"queue"}},{default:R(()=>[E(o,{class:"icon",name:"playlist-play"})]),_:1}),r.isPlayerPage?(O(),F(it,{key:0},[E(l,{class:"navbar-item ml-auto"}),E(c,{class:"navbar-item",offset:1e4}),E(u,{class:"navbar-item"}),E(d,{class:"navbar-item",offset:3e4}),E(f,{class:"navbar-item mr-auto"})],64)):(O(),F(it,{key:1},[E(a,{to:{name:"player"},exact:"",class:"navbar-item is-justify-content-flex-start is-expanded is-clipped is-size-7"},{default:R(()=>[P("div",OI,[P("strong",{textContent:et(s.queueStore.current.title)},null,8,xI),e[1]||(e[1]=P("br",null,null,-1)),P("span",{textContent:et(r.metadata)},null,8,II)])]),_:1}),E(u,{class:"navbar-item"})],64)),P("a",{class:"navbar-item",onClick:e[0]||(e[0]=(...v)=>s.uiStore.togglePlayerMenu&&s.uiStore.togglePlayerMenu(...v))},[E(o,{class:"icon",name:s.uiStore.showPlayerMenu?"chevron-down":"chevron-up"},null,8,["name"])]),P("div",{class:Gt(["dropdown is-up is-right",{"is-active":s.uiStore.showPlayerMenu}])},[P("div",NI,[P("div",PI,[P("div",DI,[E(h),(O(!0),F(it,null,de(s.outputsStore.outputs,v=>(O(),yt(p,{key:v.id,output:v},null,8,["output"]))),128)),E(m)]),e[2]||(e[2]=P("hr",{class:"dropdown-divider"},null,-1)),P("div",MI,[P("div",LI,[E(b,{class:"button"}),E(y,{class:"button"}),E(_,{class:"button"}),E(g,{class:"button"})])])])])],2)])],2)}const $I=nt(CI,[["render",RI],["__scopeId","data-v-77d048ef"]]),Uu=Ps("SearchStore",{actions:{add(t){const e=this.history.indexOf(t);e!==-1&&this.history.splice(e,1),this.history.unshift(t),this.history.length>5&&this.history.pop()},remove(t){const e=this.history.indexOf(t);e!==-1&&this.history.splice(e,1)}},state:()=>({history:[],query:"",source:"search-library"})}),ry="./api/settings",t_={state(){return ut.get(ry)},update(t){return ut.put(`${ry}/${t.category}/${t.name}`,t)}},{t:Rl,availableLocales:oy}=Bs.global,wi=Ps("SettingsStore",{actions:{currentAppearance(){return this.$state.appearance},currentLocale(){const t=oy;let e=t.find(s=>s===Bs.global.locale.value);const[n]=Bs.global.locale.value.split("-");return e||(e=t.find(s=>s===n)),e||(e=t.find(s=>s.split("-")[0]===n)),e||(e=Bs.global.fallbackLocale),e},get(t,e){return this.categories.find(n=>n.name===t)?.options.find(n=>n.name===e)??{}},async initialise(){this.$state=await t_.state()},setAppearance(t){this.$state.appearance=t;const e=document.documentElement;t==="auto"?e.removeAttribute("data-theme"):e.setAttribute("data-theme",t)},setLocale(t){Bs.global.locale.value=t},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)}},getters:{appearances(){return[{id:"auto",name:Rl("settings.appearance.auto")},{id:"light",name:Rl("settings.appearance.light")},{id:"dark",name:Rl("settings.appearance.dark")}]},locales(){return oy.map(t=>({id:t,name:Rl(`language.${t}`)}))},recentlyAddedLimit:t=>t.get("webinterface","recently_added_limit")?.value??100,showComposerForGenre:t=>t.get("webinterface","show_composer_for_genre")?.value??null,showComposerNowPlaying:t=>t.get("webinterface","show_composer_now_playing")?.value??!1,showCoverArtworkInAlbumLists:t=>t.get("artwork","show_cover_artwork_in_album_lists")?.value??!1,showFilepathNowPlaying:t=>t.get("webinterface","show_filepath_now_playing")?.value??!1,showMenuItemAudiobooks:t=>t.get("webinterface","show_menu_item_audiobooks")?.value??!1,showMenuItemFiles:t=>t.get("webinterface","show_menu_item_files")?.value??!1,showMenuItemMusic:t=>t.get("webinterface","show_menu_item_music")?.value??!1,showMenuItemPlaylists:t=>t.get("webinterface","show_menu_item_playlists")?.value??!1,showMenuItemPodcasts:t=>t.get("webinterface","show_menu_item_podcasts")?.value??!1,showMenuItemRadio:t=>t.get("webinterface","show_menu_item_radio")?.value??!1,showMenuItemSearch:t=>t.get("webinterface","show_menu_item_search")?.value??!1},state:()=>({appearance:"auto",categories:[]})}),FI={name:"NavbarTop",components:{ControlLink:Q0},setup(){return{searchStore:Uu(),servicesStore:Ye(),settingsStore:wi(),uiStore:Zn()}},computed:{menus(){return[{icon:"music-box-multiple",key:"navigation.playlists",name:"playlists",show:this.settingsStore.showMenuItemPlaylists},{icon:"music",key:"navigation.music",name:"music",show:this.settingsStore.showMenuItemMusic},{key:"navigation.artists",name:"music-artists",sub:!0},{key:"navigation.albums",name:"music-albums",sub:!0},{key:"navigation.genres",name:"music-genres",sub:!0},{key:"navigation.composers",name:"music-composers",sub:!0},{key:"navigation.spotify",name:"music-spotify",show:this.servicesStore.isSpotifyActive,sub:!0},{icon:"microphone",key:"navigation.podcasts",name:"podcasts",show:this.settingsStore.showMenuItemPodcasts},{icon:"book-open-variant",key:"navigation.audiobooks",name:"audiobooks",show:this.settingsStore.showMenuItemAudiobooks},{icon:"radio",key:"navigation.radio",name:"radio",show:this.settingsStore.showMenuItemRadio},{icon:"folder-open",key:"navigation.files",name:"files",show:this.settingsStore.showMenuItemFiles},{icon:"magnify",key:"navigation.search",name:this.searchStore.source,show:this.settingsStore.showMenuItemSearch},{separator:!0},{key:"navigation.settings",name:"settings-webinterface"},{action:this.openUpdateDialog,key:"navigation.update-library"},{key:"navigation.about",name:"about"}]}},methods:{openUpdateDialog(){this.uiStore.showUpdateDialog=!0,this.uiStore.hideMenus()}}},VI={class:"navbar is-fixed-top is-top"},HI={class:"navbar-brand is-flex-grow-1"},UI={class:"dropdown-menu is-mobile"},jI={class:"dropdown-content"},BI={key:0,class:"my-3"},WI=["onClick","textContent"],GI={key:0,class:"icon-text"},KI=["textContent"];function zI(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-link");return O(),F("nav",VI,[P("div",HI,[(O(!0),F(it,null,de(r.menus.filter(l=>l.show&&!l.sub),l=>(O(),yt(a,{key:l.name,to:{name:l.name},class:"navbar-item is-hidden-mobile"},{default:R(()=>[E(o,{class:"icon",name:l.icon,size:"16"},null,8,["name"])]),_:2},1032,["to"]))),128)),P("a",{class:"navbar-item ml-auto",onClick:e[0]||(e[0]=(...l)=>s.uiStore.toggleBurgerMenu&&s.uiStore.toggleBurgerMenu(...l))},[E(o,{class:"icon",name:s.uiStore.showBurgerMenu?"close":"menu"},null,8,["name"])]),P("div",{class:Gt(["dropdown is-right",{"is-active":s.uiStore.showBurgerMenu}])},[P("div",UI,[P("div",jI,[(O(!0),F(it,null,de(r.menus,l=>(O(),F(it,{key:l.name},[l.separator?(O(),F("hr",BI)):l.action?(O(),F("a",{key:1,class:"dropdown-item",onClick:jn(l.action,["stop","prevent"]),textContent:et(t.$t(l.key))},null,8,WI)):(O(),yt(a,{key:2,to:{name:l.name},class:"dropdown-item"},{default:R(()=>[l.icon?(O(),F("span",GI,[E(o,{class:"icon",name:l.icon,size:"16"},null,8,["name"])])):_t("",!0),P("span",{class:Gt({"pl-5":l.sub,"has-text-weight-semibold":l.icon}),textContent:et(t.$t(l.key))},null,10,KI)]),_:2},1032,["to"]))],64))),128))])])],2)])])}const qI=nt(FI,[["render",zI]]);function ju(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Bu(t){if(Object.prototype.hasOwnProperty.call(t,"__esModule"))return t;var e=t.default;if(typeof e=="function"){var n=function s(){var i=!1;try{i=this instanceof s}catch{}return i?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 ac={exports:{}},XI=ac.exports,ay;function YI(){return ay||(ay=1,function(t){(function(e,n){t.exports?t.exports=n():e.ReconnectingWebSocket=n()})(XI,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(h){a.onopen(h)}),d.addEventListener("close",function(h){a.onclose(h)}),d.addEventListener("connecting",function(h){a.onconnecting(h)}),d.addEventListener("message",function(h){a.onmessage(h)}),d.addEventListener("error",function(h){a.onerror(h)}),this.addEventListener=d.addEventListener.bind(d),this.removeEventListener=d.removeEventListener.bind(d),this.dispatchEvent=d.dispatchEvent.bind(d);function f(h,p){var m=document.createEvent("CustomEvent");return m.initCustomEvent(h,!1,!1,p),m}this.open=function(h){if(l=new WebSocket(a.url,s||[]),h){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 p=l,m=setTimeout(function(){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","connection-timeout",a.url),u=!0,p.close(),u=!1},a.timeoutInterval);l.onopen=function(b){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=h,h=!1,d.dispatchEvent(y)},l.onclose=function(b){if(clearTimeout(_),l=null,c)a.readyState=WebSocket.CLOSED,d.dispatchEvent(f("close"));else{a.readyState=WebSocket.CONNECTING;var y=f("connecting");y.code=b.code,y.reason=b.reason,y.wasClean=b.wasClean,d.dispatchEvent(y),!h&&!u&&((a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onclose",a.url),d.dispatchEvent(f("close")));var _=a.reconnectInterval*Math.pow(a.reconnectDecay,a.reconnectAttempts);setTimeout(function(){a.reconnectAttempts++,a.open(!0)},_>a.maxReconnectInterval?a.maxReconnectInterval:_)}},l.onmessage=function(b){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onmessage",a.url,b.data);var y=f("message");y.data=b.data,d.dispatchEvent(y)},l.onerror=function(b){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onerror",a.url,b),d.dispatchEvent(f("error"))}},this.automaticOpen==!0&&this.open(!1),this.send=function(h){if(l)return(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","send",a.url,h),l.send(h);throw"INVALID_STATE_ERR : Pausing to reconnect websocket"},this.close=function(h,p){typeof h>"u"&&(h=1e3),c=!0,l&&l.close(h,p)},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})}(ac)),ac.exports}var ZI=YI();const JI=ju(ZI),QI={name:"App",components:{ListNotifications:Zk,ModalDialogRemotePairing:ZO,ModalDialogUpdate:vx,NavbarBottom:$I,NavbarTop:qI},setup(){return{configurationStore:Vo(),libraryStore:Vu(),notificationsStore:So(),outputsStore:Ep(),playerStore:Bn(),queueStore:Ms(),remotesStore:_p(),servicesStore:Ye(),settingsStore:wi(),uiStore:Zn()}},data(){return{handlers:{},scheduledHandlers:new Map}},watch:{"uiStore.showBurgerMenu"(){this.updateClipping()},"uiStore.showPlayerMenu"(){this.updateClipping()}},created(){this.handlers={database:[this.libraryStore.initialise],lastfm:[this.servicesStore.initialiseLastfm],options:[this.playerStore.initialise],outputs:[this.outputsStore.initialise],pairing:[this.remotesStore.initialise],player:[this.playerStore.initialise],queue:[this.queueStore.initialise],settings:[this.settingsStore.initialise],spotify:[this.servicesStore.initialiseSpotify],update:[this.libraryStore.initialise],volume:[this.playerStore.initialise,this.outputsStore.initialise]},this.$router.beforeEach(async(t,e,n)=>{await this.configurationStore.initialise(),this.updateClipping(),t.path===e.path&&t.hash||this.$Progress.start(),n()}),this.$router.afterEach(()=>{this.$Progress.finish()}),this.connect()},beforeUnmount(){this.scheduledHandlers.forEach(t=>clearTimeout(t)),this.scheduledHandlers.clear()},methods:{async connect(){try{await this.configurationStore.initialise(),this.uiStore.hideSingles=this.configurationStore.hide_singles,document.title=this.configurationStore.library_name,this.openWebsocket()}catch{this.notificationsStore.add({text:this.$t("server.connection-failed"),topic:"connection",type:"danger"})}},createWebsocket(){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 JI(s,"notify",{maxReconnectInterval:2e3,reconnectInterval:1e3})},handleEvents(t=[]){t.forEach(e=>{(this.handlers[e]||[]).forEach(s=>{if(!this.scheduledHandlers.has(s)){const i=setTimeout(()=>{s.call(this),this.scheduledHandlers.delete(s)},50);this.scheduledHandlers.set(s,i)}})})},openWebsocket(){const t=this.createWebsocket(),e=["database","lastfm","options","outputs","pairing","player","queue","settings","spotify","update","volume"];t.onopen=()=>{t.send(JSON.stringify({notify:e})),this.handleEvents(e)},window.addEventListener("focus",()=>{this.handleEvents(e)}),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&this.handleEvents(e)}),t.onmessage=n=>{const s=JSON.parse(n.data).notify;this.handleEvents(s)}},updateClipping(){this.uiStore.showBurgerMenu||this.uiStore.showPlayerMenu?document.querySelector("html").classList.add("is-clipped"):document.querySelector("html").classList.remove("is-clipped")}}};function tN(t,e,n,s,i,r){const o=w("vue-progress-bar"),a=w("navbar-top"),l=w("router-view"),c=w("modal-dialog-remote-pairing"),u=w("modal-dialog-update"),d=w("list-notifications"),f=w("navbar-bottom");return O(),F(it,null,[E(o,{class:"has-background-primary"}),E(a),E(l,null,{default:R(({Component:h})=>[(O(),yt(qh(h)))]),_:1}),E(c,{show:s.remotesStore.active,onClose:e[0]||(e[0]=h=>s.remotesStore.active=!1)},null,8,["show"]),E(u,{show:s.uiStore.showUpdateDialog,onClose:e[1]||(e[1]=h=>s.uiStore.showUpdateDialog=!1)},null,8,["show"]),hs(E(d,null,null,512),[[Lc,!s.uiStore.showBurgerMenu]]),E(f),hs(P("div",{class:"overlay-fullscreen",onClick:e[2]||(e[2]=(...h)=>s.uiStore.hideMenus&&s.uiStore.hideMenus(...h))},null,512),[[Lc,s.uiStore.showBurgerMenu||s.uiStore.showPlayerMenu]])],64)}const eN=nt(QI,[["render",tN]]),e_=function(){return document.ontouchstart!==null?"click":"touchstart"},Gc="__vue_click_away__",n_=function(t,e,n){s_(t);let s=n.context,i=e.value,r=!1;setTimeout(function(){r=!0},0),t[Gc]=function(o){if((!t||!t.contains(o.target))&&i&&r&&typeof i=="function")return i.call(s,o)},document.addEventListener(e_(),t[Gc],!1)},s_=function(t){document.removeEventListener(e_(),t[Gc],!1),delete t[Gc]},nN=function(t,e,n){e.value!==e.oldValue&&n_(t,e,n)},sN={install:function(t){t.directive("click-away",iN)}},iN={mounted:n_,updated:nN,unmounted:s_};var Vs=(t=>(t.LOADING="loading",t.LOADED="loaded",t.ERROR="error",t))(Vs||{});const rN=typeof window<"u"&&window!==null,oN=uN(),aN=Object.prototype.propertyIsEnumerable,ly=Object.getOwnPropertySymbols;function _a(t){return typeof t=="function"||toString.call(t)==="[object Object]"}function lN(t){return typeof t=="object"?t===null:typeof t!="function"}function cN(t){return t!=="__proto__"&&t!=="constructor"&&t!=="prototype"}function uN(){return rN&&"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 dN(t,...e){if(!_a(t))throw new TypeError("expected the first argument to be an object");if(e.length===0||typeof Symbol!="function"||typeof ly!="function")return t;for(const n of e){const s=ly(n);for(const i of s)aN.call(n,i)&&(t[i]=n[i])}return t}function i_(t,...e){let n=0;for(lN(t)&&(t=e[n++]),t||(t={});n{this._logger("Not support IntersectionObserver!")})),this._initIntersectionObserver(e,s,r,o,a)}update(e,n){if(!e)return;this._realObserver(e)?.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){e&&(this._realObserver(e)?.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(Vs.LOADED,i,e)},()=>{e.onload=null,this._lifecycle(Vs.ERROR,i,e),this._realObserver(e)?.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){const o=this.options.observerOptions;this._images.set(e,new IntersectionObserver(a=>{Array.prototype.forEach.call(a,l=>{r&&r>0?this._delayedIntersectionCallback(e,l,r,n,s,i):this._intersectionCallback(e,l,n,s,i)})},o)),this._realObserver(e)?.observe(e)}_intersectionCallback(e,n,s,i,r){n.isIntersecting&&(this._realObserver(e)?.unobserve(n.target),this._setImageSrc(e,s,i,r))}_delayedIntersectionCallback(e,n,s,i,r,o){if(n.isIntersecting){if(n.target.hasAttribute(Gr))return;const a=setTimeout(()=>{this._intersectionCallback(e,n,i,r,o),n.target.removeAttribute(Gr)},s);n.target.setAttribute(Gr,String(a))}else n.target.hasAttribute(Gr)&&(clearTimeout(Number(n.target.getAttribute(Gr))),n.target.removeAttribute(Gr))}_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 _a(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 Vs.LOADING:s?.setAttribute("lazy",Vs.LOADING),n?.loading&&n.loading(s);break;case Vs.LOADED:s?.setAttribute("lazy",Vs.LOADED),n?.loaded&&n.loaded(s);break;case Vs.ERROR:s?.setAttribute("lazy",Vs.ERROR),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 mN={install(t,e){const n=new pN(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 Wd={exports:{}},Gd={exports:{}},Kd={};/** + */const TO="11.1.11";function AO(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(pp().__INTLIFY_PROD_DEVTOOLS__=!1)}const gs={UNEXPECTED_RETURN_TYPE:GA,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 Ns(t,...e){return Bu(t,null,void 0)}const ih=or("__translateVNode"),rh=or("__datetimeParts"),oh=or("__numberParts"),OO=or("__setPluralRules"),xO=or("__injectWithOption"),ah=or("__dispose");function za(t){if(!pe(t)||qs(t))return t;for(const e in t)if(Os(t,e))if(!e.includes("."))pe(t[e])&&za(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]||Ee(),fc(c,o[l])):fc(c,o)}else vt(a)&&fc(JSON.parse(a),o)}),i==null&&r)for(const a in o)Os(o,a)&&za(o[a]);return o}function t_(t){return t.type}function IO(t,e,n){let s=pe(e.messages)?e.messages:Ee();"__i18nGlobal"in n&&(s=Q0(t.locale.value,{messages:s,__i18n:n.__i18nGlobal}));const i=Object.keys(s);i.length&&i.forEach(r=>{t.mergeLocaleMessage(r,s[r])});{if(pe(e.datetimeFormats)){const r=Object.keys(e.datetimeFormats);r.length&&r.forEach(o=>{t.mergeDateTimeFormat(o,e.datetimeFormats[o])})}if(pe(e.numberFormats)){const r=Object.keys(e.numberFormats);r.length&&r.forEach(o=>{t.mergeNumberFormat(o,e.numberFormats[o])})}}}function Yg(t){return E(mi,null,t,0)}const Zg="__INTLIFY_META__",Jg=()=>[],NO=()=>!1;let Qg=0;function ty(t){return((e,n,s,i)=>t(n,s,cn()||void 0,i))}const PO=()=>{const t=cn();let e=null;return t&&(e=t_(t)[Zg])?{[Zg]:e}:null};function e_(t={}){const{__root:e,__injectWithOption:n}=t,s=e===void 0,i=t.flatJson,r=qc?cs:Tu;let o=Re(t.inheritLocale)?t.inheritLocale:!0;const a=r(e&&o?e.locale.value:vt(t.locale)?t.locale:Xc),l=r(e&&o?e.fallbackLocale.value:vt(t.fallbackLocale)||je(t.fallbackLocale)||se(t.fallbackLocale)||t.fallbackLocale===!1?t.fallbackLocale:a.value),c=r(Q0(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:Re(t.missingWarn)||zc(t.missingWarn)?t.missingWarn:!0,h=e?e.fallbackWarn:Re(t.fallbackWarn)||zc(t.fallbackWarn)?t.fallbackWarn:!0,p=e?e.fallbackRoot:Re(t.fallbackRoot)?t.fallbackRoot:!0,m=!!t.fallbackFormat,_=Pe(t.missing)?t.missing:null,y=Pe(t.missing)?ty(t.missing):null,v=Pe(t.postTranslation)?t.postTranslation:null,g=e?e.warnHtmlMessage:Re(t.warnHtmlMessage)?t.warnHtmlMessage:!0,b=!!t.escapeParameter;const S=e?e.modifiers:se(t.modifiers)?t.modifiers:{};let k=t.pluralRules||e&&e.pluralRules,I;I=(()=>{s&&Hg(null);const L={version:TO,locale:a.value,fallbackLocale:l.value,messages:c.value,modifiers:S,pluralRules:k,missing:y===null?void 0:y,missingWarn:f,fallbackWarn:h,fallbackFormat:m,unresolving:!0,postTranslation:v===null?void 0:v,warnHtmlMessage:g,escapeParameter:b,messageResolver:t.messageResolver,messageCompiler:t.messageCompiler,__meta:{framework:"vue"}};L.datetimeFormats=u.value,L.numberFormats=d.value,L.__datetimeFormatters=se(I)?I.__datetimeFormatters:void 0,L.__numberFormatters=se(I)?I.__numberFormatters:void 0;const G=dO(L);return s&&Hg(G),G})(),ta(I,a.value,l.value);function C(){return[a.value,l.value,c.value,u.value,d.value]}const R=Je({get:()=>a.value,set:L=>{I.locale=L,a.value=L}}),B=Je({get:()=>l.value,set:L=>{I.fallbackLocale=L,l.value=L,ta(I,a.value,L)}}),$=Je(()=>c.value),H=Je(()=>u.value),X=Je(()=>d.value);function ot(){return Pe(v)?v:null}function K(L){v=L,I.postTranslation=L}function Q(){return _}function at(L){L!==null&&(y=ty(L)),_=L,I.missing=y}const kt=(L,G,ht,St,Kt,U)=>{C();let j;try{__INTLIFY_PROD_DEVTOOLS__,s||(I.fallbackContext=e?uO():void 0),j=L(I)}finally{__INTLIFY_PROD_DEVTOOLS__,s||(I.fallbackContext=void 0)}if(ht!=="translate exists"&&Xe(j)&&j===Wu||ht==="translate exists"&&!j){const[q,rt]=G();return e&&p?St(e):Kt(q)}else{if(U(j))return j;throw Ns(gs.UNEXPECTED_RETURN_TYPE)}};function zt(...L){return kt(G=>Reflect.apply(Xg,null,[G,...L]),()=>sh(...L),"translate",G=>Reflect.apply(G.t,G,[...L]),G=>G,G=>vt(G))}function Vt(...L){const[G,ht,St]=L;if(St&&!pe(St))throw Ns(gs.INVALID_ARGUMENT);return zt(G,ht,tn({resolvedMessage:!0},St||{}))}function Bt(...L){return kt(G=>Reflect.apply(Bg,null,[G,...L]),()=>eh(...L),"datetime format",G=>Reflect.apply(G.d,G,[...L]),()=>Vg,G=>vt(G)||je(G))}function ge(...L){return kt(G=>Reflect.apply(Gg,null,[G,...L]),()=>nh(...L),"number format",G=>Reflect.apply(G.n,G,[...L]),()=>Vg,G=>vt(G)||je(G))}function ve(L){return L.map(G=>vt(G)||Xe(G)||Re(G)?Yg(String(G)):G)}const Wt={normalize:ve,interpolate:L=>L,type:"vnode"};function Y(...L){return kt(G=>{let ht;const St=G;try{St.processor=Wt,ht=Reflect.apply(Xg,null,[St,...L])}finally{St.processor=null}return ht},()=>sh(...L),"translate",G=>G[ih](...L),G=>[Yg(G)],G=>je(G))}function dt(...L){return kt(G=>Reflect.apply(Gg,null,[G,...L]),()=>nh(...L),"number format",G=>G[oh](...L),Jg,G=>vt(G)||je(G))}function ct(...L){return kt(G=>Reflect.apply(Bg,null,[G,...L]),()=>eh(...L),"datetime format",G=>G[rh](...L),Jg,G=>vt(G)||je(G))}function bt(L){k=L,I.pluralRules=k}function Ut(L,G){return kt(()=>{if(!L)return!1;const ht=vt(G)?G:a.value,St=N(ht),Kt=I.messageResolver(St,L);return qs(Kt)||os(Kt)||vt(Kt)},()=>[L],"translate exists",ht=>Reflect.apply(ht.te,ht,[L,G]),NO,ht=>Re(ht))}function Xt(L){let G=null;const ht=B0(I,l.value,a.value);for(let St=0;St{o&&(a.value=L,I.locale=L,ta(I,a.value,l.value))}),Zn(e.fallbackLocale,L=>{o&&(l.value=L,I.fallbackLocale=L,ta(I,a.value,l.value))}));const lt={id:Qg,locale:R,fallbackLocale:B,get inheritLocale(){return o},set inheritLocale(L){o=L,L&&e&&(a.value=e.locale.value,l.value=e.fallbackLocale.value,ta(I,a.value,l.value))},get availableLocales(){return Object.keys(c.value).sort()},messages:$,get modifiers(){return S},get pluralRules(){return k||{}},get isGlobal(){return s},get missingWarn(){return f},set missingWarn(L){f=L,I.missingWarn=f},get fallbackWarn(){return h},set fallbackWarn(L){h=L,I.fallbackWarn=h},get fallbackRoot(){return p},set fallbackRoot(L){p=L},get fallbackFormat(){return m},set fallbackFormat(L){m=L,I.fallbackFormat=m},get warnHtmlMessage(){return g},set warnHtmlMessage(L){g=L,I.warnHtmlMessage=L},get escapeParameter(){return b},set escapeParameter(L){b=L,I.escapeParameter=L},t:zt,getLocaleMessage:N,setLocaleMessage:W,mergeLocaleMessage:st,getPostTranslationHandler:ot,setPostTranslationHandler:K,getMissingHandler:Q,setMissingHandler:at,[OO]:bt};return lt.datetimeFormats=H,lt.numberFormats=X,lt.rt=Vt,lt.te=Ut,lt.tm=A,lt.d=Bt,lt.n=ge,lt.getDateTimeFormat=J,lt.setDateTimeFormat=T,lt.mergeDateTimeFormat=x,lt.getNumberFormat=V,lt.setNumberFormat=z,lt.mergeNumberFormat=tt,lt[xO]=n,lt[ih]=Y,lt[rh]=ct,lt[oh]=dt,lt}const Sp={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:t=>t==="parent"||t==="global",default:"parent"},i18n:{type:Object}};function RO({slots:t},e){return e.length===1&&e[0]==="default"?(t.default?t.default():[]).reduce((s,i)=>[...s,...i.type===it?i.children:[i]],[]):e.reduce((n,s)=>{const i=t[s];return i&&(n[s]=i()),n},Ee())}function n_(){return it}const DO=Ti({name:"i18n-t",props:tn({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:t=>Xe(t)||!isNaN(t)}},Sp),setup(t,e){const{slots:n,attrs:s}=e,i=t.i18n||Ep({useScope:t.scope,__useComponent:!0});return()=>{const r=Object.keys(n).filter(d=>d[0]!=="_"),o=Ee();t.locale&&(o.locale=t.locale),t.plural!==void 0&&(o.plural=vt(t.plural)?+t.plural:t.plural);const a=RO(e,r),l=i[ih](t.keypath,a,o),c=tn(Ee(),s),u=vt(t.tag)||pe(t.tag)?t.tag:n_();return Ws(u,c,l)}}}),ey=DO;function LO(t){return je(t)&&!vt(t[0])}function s_(t,e,n,s){const{slots:i,attrs:r}=e;return()=>{const o={part:!0};let a=Ee();t.locale&&(o.locale=t.locale),vt(t.format)?o.key=t.format:pe(t.format)&&(vt(t.format.key)&&(o.key=t.format.key),a=Object.keys(t.format).reduce((f,h)=>n.includes(h)?tn(Ee(),f,{[h]:t.format[h]}):f,Ee()));const l=s(t.value,o,a);let c=[o.key];je(l)?c=l.map((f,h)=>{const p=i[f.type],m=p?p({[f.type]:f.value,index:h,parts:l}):[f.value];return LO(m)&&(m[0].key=`${f.type}-${h}`),m}):vt(l)&&(c=[l]);const u=tn(Ee(),r),d=vt(t.tag)||pe(t.tag)?t.tag:n_();return Ws(d,u,c)}}const MO=Ti({name:"i18n-n",props:tn({value:{type:Number,required:!0},format:{type:[String,Object]}},Sp),setup(t,e){const n=t.i18n||Ep({useScope:t.scope,__useComponent:!0});return s_(t,e,Y0,(...s)=>n[oh](...s))}}),ny=MO;function $O(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 FO(t){const e=o=>{const{instance:a,value:l}=o;if(!a||!a.$)throw Ns(gs.UNEXPECTED_ERROR);const c=$O(t,a.$),u=sy(l);return[Reflect.apply(c.t,c,[...iy(u)]),c]};return{created:(o,a)=>{const[l,c]=e(a);qc&&t.global===c&&(o.__i18nWatcher=Zn(c.locale,()=>{a.instance&&a.instance.$forceUpdate()})),o.__composer=c,o.textContent=l},unmounted:o=>{qc&&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=sy(a);o.textContent=Reflect.apply(l.t,l,[...iy(c)])}},getSSRProps:o=>{const[a]=e(o);return{textContent:a}}}}function sy(t){if(vt(t))return{path:t};if(se(t)){if(!("path"in t))throw Ns(gs.REQUIRED_VALUE,"path");return t}else throw Ns(gs.INVALID_VALUE)}function iy(t){const{path:e,locale:n,args:s,choice:i,plural:r}=t,o={},a=s||{};return vt(n)&&(o.locale=n),Xe(i)&&(o.plural=i),Xe(r)&&(o.plural=r),[e,a,o]}function VO(t,e,...n){const s=se(n[0])?n[0]:{};(Re(s.globalInstall)?s.globalInstall:!0)&&([ey.name,"I18nT"].forEach(r=>t.component(r,ey)),[ny.name,"I18nN"].forEach(r=>t.component(r,ny)),[oy.name,"I18nD"].forEach(r=>t.component(r,oy))),t.directive("t",FO(e))}const UO=or("global-vue-i18n");function HO(t={}){const e=Re(t.globalInjection)?t.globalInjection:!0,n=new Map,[s,i]=jO(t),r=or("");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 p=d[0];c.__composerExtend=p.__composerExtend,c.__vueI18nExtend=p.__vueI18nExtend}let f=null;e&&(f=YO(u,c.global)),VO(u,c,...d);const h=u.unmount;u.unmount=()=>{f&&f(),c.dispose(),h()}},get global(){return i},dispose(){s.stop()},__instances:n,__getInstance:o,__setInstance:a,__deleteInstance:l};return c}function Ep(t={}){const e=cn();if(e==null)throw Ns(gs.MUST_BE_CALL_SETUP_TOP);if(!e.isCE&&e.appContext.app!=null&&!e.appContext.app.__VUE_I18N_SYMBOL__)throw Ns(gs.NOT_INSTALLED);const n=BO(e),s=GO(n),i=t_(e),r=WO(t,i);if(r==="global")return IO(s,t,i),s;if(r==="parent"){let l=KO(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=e_(l),o.__composerExtend&&(a[ah]=o.__composerExtend(a)),zO(o,e,a),o.__setInstance(e,a)}return a}function jO(t,e){const n=vu(),s=n.run(()=>e_(t));if(s==null)throw Ns(gs.UNEXPECTED_ERROR);return[n,s]}function BO(t){const e=us(t.isCE?UO:t.appContext.app.__VUE_I18N_SYMBOL__);if(!e)throw Ns(t.isCE?gs.NOT_INSTALLED_WITH_PROVIDE:gs.UNEXPECTED_ERROR);return e}function WO(t,e){return ju(t)?"__i18n"in e?"local":"global":t.useScope?t.useScope:"local"}function GO(t){return t.mode==="composition"?t.global:t.global.__composer}function KO(t,e,n=!1){let s=null;const i=e.root;let r=qO(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 qO(t,e=!1){return t==null?null:e&&t.vnode.ctx||t.parent}function zO(t,e,n){Vo(()=>{},e),ll(()=>{const s=n;t.__deleteInstance(e);const i=s[ah];i&&(i(),delete s[ah])},e)}const XO=["locale","fallbackLocale","availableLocales"],ry=["t","rt","d","n","tm","te"];function YO(t,e){const n=Object.create(null);return XO.forEach(i=>{const r=Object.getOwnPropertyDescriptor(e,i);if(!r)throw Ns(gs.UNEXPECTED_ERROR);const o=Ie(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,ry.forEach(i=>{const r=Object.getOwnPropertyDescriptor(e,i);if(!r||!r.value)throw Ns(gs.UNEXPECTED_ERROR);Object.defineProperty(t.config.globalProperties,`$${i}`,r)}),()=>{delete t.config.globalProperties.$i18n,ry.forEach(i=>{delete t.config.globalProperties[`$${i}`]})}}const ZO=Ti({name:"i18n-d",props:tn({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Sp),setup(t,e){const n=t.i18n||Ep({useScope:t.scope,__useComponent:!0});return s_(t,e,X0,(...s)=>n[rh](...s))}}),oy=ZO;AO();rO(UA);oO(nO);aO(B0);if(__INTLIFY_PROD_DEVTOOLS__){const t=pp();t.__INTLIFY__=!0,HA(t.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const qd=t=>t&&typeof t=="object"&&!Array.isArray(t),lh=(t,...e)=>{if(!e.length)return t;const n=e.shift();if(qd(t)&&qd(n))for(const s in n)qd(n[s])?(t[s]||Object.assign(t,{[s]:{}}),lh(t[s],n[s])):Object.assign(t,{[s]:n[s]});return lh(t,...e)},JO=lh({},{de:{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"Hinzufügen"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Als nächstes hinzufügen"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Stream hinzufügen"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Abbrechen"}},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"}},login:{t:0,b:{t:2,i:[{t:3}],s:"Einloggen"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Ausloggen"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Alle abgespielten markieren"}},"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"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Remote paaren"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Spielen"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Entfernen"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Speichern"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Zeige mehr"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Zufallswiedergabe"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Neu einlesen"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Verifizieren"}}},data:{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"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"Datei"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Stream"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}}},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"}]}]}}},dialog:{add:{rss:{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:{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"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Verarbeite…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Stream hinzufügen"}}}},playlist:{save:{"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Playlistname"}},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"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcast enfernen"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"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:{"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:"data.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"}},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"}},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"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Letzer Monat"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"Letzte Woche"}},today:{t:0,b:{t:2,i:[{t:3}],s:"Heute"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Unbestimmt"}}},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)"}]}}},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"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}},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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP-stream"}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP-stream-Fehler: Stream kann nicht geladen werden oder wurde wg. Netzwerkfehler gestopt"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek neu einlesen"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Lautstärke"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Singles"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Wenn aktiv, blendet Singles und alles, was mit ihnen verbunden ist, aus."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Verbirgt Spotify-Inhalt"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Wenn aktiv, blendet Inhalte aus, die von Spotify stammen."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Filtern"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Künstler › Erscheinungsdatum"}},"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Künstler › Name"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Namen"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Bewertung"}},"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"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Erscheinungsdatum"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Sortieren"}}}},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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Künstler"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Autoren"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"Autoren"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Komponisten"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"Tracks durch Auswählen aus der Bibliothek anfügen"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Live"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Deine Playliste ist leer."}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"Playlisten"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"Neue Episoden"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}}},queue:{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"}]}]}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Bibliothek"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"Fernbedienungen und Ausgänge"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Online-Services"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"Allgemein"}}}},spotify:{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"}}}}},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"}}}},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"}}}},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"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Album-Künstler"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Alben"}},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"}},folders:{t:0,b:{t:2,i:[{t:3}],s:"Ordner"}},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"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},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:{"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"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Fehler bei Verbindung zum OwnTone-Server"}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"Warteschlange zu Playlist "},{t:4,k:"name"},{t:3,v:" gesichert"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"Automatisch"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"Dunkel"}},light:{t:0,b:{t:2,i:[{t:3}],s:"Hell"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Erscheinungsbild"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"Zeige Cover-Artwork in der Albumliste"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"Bereitgestellte Artwork von Radiostationen ignorieren"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Keine aktive Pairing-Anfrage"}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Pairing Remote"}},"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 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Lautsprecher-Pairing und Geräteverifikation"}},"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."}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Verifikationscode"}}},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."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone wurde ohne Unterstützung für Last.fm erstellt."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"Passwort"}},spotify:{authorize:{t:0,b:{t:2,i:[{t:3}],s:"Authorisiere API-Zugriff"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Zugriff auf die Spotify API gestatten."}},"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."}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"Bitte den Zugriff der API durch setzen folgender Zugriffsrechte für OwnTone: "},{t:4,k:"scopes"},{t:3,v:"."}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"Spotify Premium Abo erforderlich. Zugriff auf die Spotify API ermöglicht scannen der Spotify-Blibliothek. Erforderliche scopes sind: "},{t:4,k:"scopes"},{t:3,v:"."}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"Zugriff gestattet für "},{t:4,k:"user"},{t:3,v:"."}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"Benutzername"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Sprache"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Wähle hier die Einträge des oberen Navigationsmenüs"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"Auf den Bildschirmen mobiler Geräte wird nur das Burger-Menü angezeigt."}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Navigationsmenüs"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"Aktuell läuft-Seite"}},"recently-added-limit":{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"}},"show-composer-for-genre":{t:0,b:{t:2,i:[{t:3}],s:"Zeige den Komponisten für die aufgelisteten Genres an"}},"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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Komponisten anzeigen"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Dateipfad anzeigen"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"Hörbücher"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"Dateien"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"Musik"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Playlisten"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"Suche"}}}}}},{en:{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"Add"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Add Next"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Add stream"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Cancel"}},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"}},login:{t:0,b:{t:2,i:[{t:3}],s:"Login"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"Logout"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Mark All Played"}},"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"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Pair Remote"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Play"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Remove"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Rescan"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Save"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Show more"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Shuffle"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Update"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Verify"}}},data:{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"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"File"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Stream"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}}},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"}]}]}}},dialog:{add:{rss:{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:{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"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"Processing…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Add stream"}}}},playlist:{save:{"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Playlist name"}},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"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Delete the podcast"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"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:{"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:"data.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"}},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"}},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"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Last month"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"Last week"}},today:{t:0,b:{t:2,i:[{t:3}],s:"Today"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Undefined"}}},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:")"}]}}},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"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}},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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP stream"}},"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"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Update Library"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Volume"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Hide singles"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides singles and anything associated with them."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Hide Spotify content"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"If active, hides content from Spotify."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Filter"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Artist › Release date"}},"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Artist › Name"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Name"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Rating"}},"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"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Release date"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Sort"}}}},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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Artists"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Authors"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"Authors"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Composers"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"Files"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"Add some tracks by browsing your library"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"Live"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Your play queue is empty"}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"Playlists"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"New Episodes"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}}},queue:{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"}]}]}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"Library"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Tracks"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"Remotes and Outputs"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Online Services"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"General"}}}},spotify:{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"}}}}},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"}}}},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"}}}},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"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Album Artist"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},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"}},folders:{t:0,b:{t:2,i:[{t:3}],s:"Folders"}},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"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},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:{"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"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Failed to connect to OwnTone server"}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"Queue saved to playlist "},{t:4,k:"name"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"Auto"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"Dark"}},light:{t:0,b:{t:2,i:[{t:3}],s:"Light"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Appearance"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"Show cover artwork in album list"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"Ignore artwork provided by radio stations"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Artwork"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"No active pairing request."}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Remote Pairing"}},"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 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Speaker pairing and device verification"}},"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."}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Verification code"}}},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."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone was built without support for Last.fm."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"Password"}},spotify:{authorize:{t:0,b:{t:2,i:[{t:3}],s:"Authorize API access"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"Grant access to the Spotify API."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone was either built without support for Spotify or libspotify is not installed."}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"Please reauthorize API access to grant OwnTone the following additional access rights: "},{t:4,k:"scopes"},{t:3,v:"."}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"You must have a Spotify premium account. Access to the Spotify API enables scanning of your Spotify library. Required scopes are: "},{t:4,k:"scopes"},{t:3,v:"."}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"Access granted for "},{t:4,k:"user"}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"Username"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Language"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"Select the top navigation bar menu items"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"On mobile device screens, only the burger menu is displayed."}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Navigation Bar"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"Player page"}},"recently-added-limit":{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"}},"show-composer-for-genre":{t:0,b:{t:2,i:[{t:3}],s:"Show composer only for listed genres"}},"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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Show composer"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Show filepath"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"Audiobooks"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"Files"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"Music"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Playlists"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"Search"}}}}}},{fr:{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"Ajouter"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter ensuite"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"Ajouter un flux"}},cancel:{t:0,b:{t:2,i:[{t:3}],s:"Annuler"}},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"}},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"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"Marquer comme lus"}},"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"}},pair:{t:0,b:{t:2,i:[{t:3}],s:"Jumeler la télécommande"}},play:{t:0,b:{t:2,i:[{t:3}],s:"Lire"}},remove:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"Analyser"}},save:{t:0,b:{t:2,i:[{t:3}],s:"Enregistrer"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"Afficher plus"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"Lecture aléatoire"}},update:{t:0,b:{t:2,i:[{t:3}],s:"Actualiser"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"Vérifier"}}},data:{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"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"Fichier"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"Flux"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"URL"}}},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"}]}]}}},dialog:{add:{rss:{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:{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"}},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 flux"}}}},playlist:{save:{"playlist-name":{t:0,b:{t:2,i:[{t:3}],s:"Nom de la liste de lecture"}},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"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Supprimer le podcast"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"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:{"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:"data.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"}},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"}},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"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"Le mois dernier"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"La semaine dernière"}},today:{t:0,b:{t:2,i:[{t:3}],s:"Aujourd’hui"}},undefined:{t:0,b:{t:2,i:[{t:3}],s:"Indéfini"}}},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:")"}]}}},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"}},composers:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}},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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"Flux HTTP"}},"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"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"Actualiser la bibliothèque"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"Volume"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"Masquer les singles"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque les singles et tout ce qui leur est associé."}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Masquer le contenu de Spotify"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"Si actif, masque le contenu qui provient de Spotify."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Filtrer"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"Artiste › Date de sortie"}},"artist-name":{t:0,b:{t:2,i:[{t:3}],s:"Artiste › Nom"}},name:{t:0,b:{t:2,i:[{t:3}],s:"Nom"}},rating:{t:0,b:{t:2,i:[{t:3}],s:"Classement"}},"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"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"Date de sortie"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Trier"}}}},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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Artistes"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"Auteurs"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"Auteurs"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"Compositeurs"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"Ajoutez des pistes en parcourant votre bibliothèque"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"En direct"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"La file d’attente est vide"}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"Listes de lecture"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"Nouveaux épisodes"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}}},queue:{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:"count"},{t:3,v:" 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"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"Pistes"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"Illustrations"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"Télécommandes et sorties"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"Services en ligne"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"Général"}}}},spotify:{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"}}}}},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"}}}},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"}}}},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"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"Artiste de l’album"}},albums:{t:0,b:{t:2,i:[{t:3}],s:"Albums"}},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"}},folders:{t:0,b:{t:2,i:[{t:3}],s:"Dossiers"}},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"}},playlists:{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},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:{"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"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"Échec de connexion au serveur"}},"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"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"Automatique"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"Sombre"}},light:{t:0,b:{t:2,i:[{t:3}],s:"Clair"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Mode d’apparence"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"Afficher les illustrations dans la liste d’albums"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"Ignorer les illustrations fournies par les stations de radio"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Illustrations"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Aucune demande de jumelage active."}},pairing:{t:0,b:{t:2,i:[{t:3}],s:"Jumelage de télécommande"}},"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 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"Jumelage d’enceinte et vérification d’appareil"}},"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."}},"verification-code":{t:0,b:{t:2,i:[{t:3}],s:"Code de vérification"}}},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."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"L’option Last.fm n’est pas présente."}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"Mot de passe"}},spotify:{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."}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"L’option Spotify n’est pas présente."}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"Veuillez autoriser à nouveau l’accès à l’API pour accorder à OwnTone les droits d’accès supplémentaires suivants : "},{t:4,k:"scopes"},{t:3,v:"."}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"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 : "},{t:4,k:"scopes"},{t:3,v:"."}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"Accès autorisé pour "},{t:4,k:"user"},{t:3,v:"."}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"Nom d’utilisateur"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"Genres"}},language:{t:0,b:{t:2,i:[{t:3}],s:"Langue"}},"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-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"Sur les écrans des appareils mobiles, seul le menu est affiché."}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"Barre de navigation"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"Page « En cours de lecture »"}},"recently-added-limit":{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 »"}},"show-composer-for-genre":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le compositeur uniquement pour les genres listés"}},"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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le compositeur"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"Afficher le chemin du fichier"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"Livres audio"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"Fichiers"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"Musique"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"Listes de lecture"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"Podcasts"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"Radio"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"Recherche"}}}}}},{"zh-CN":{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"添加"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"添加流"}},cancel:{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:"隐藏历史"}},login:{t:0,b:{t:2,i:[{t:3}],s:"登入"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"退出"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"全部标记为已播放"}},"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"标记为最新"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"标记为已播放"}},pair:{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:"移除"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"重新扫描"}},save:{t:0,b:{t:2,i:[{t:3}],s:"保存"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"显示更多"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"随机播放"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"验证"}}},data:{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:" 个流派"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"流"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"链接"}}},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:" 只曲目"}]}]}}},dialog:{add:{rss:{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:{loading:{t:0,b:{t:2,i:[{t:3}],s:"加载中…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"处理中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"添加流"}}}},playlist:{save:{"playlist-name":{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:"保存播放清单到列表"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"移除播客"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配对码"}},title:{t:0,b:{t:2,i:[{t:3}],s:"请求遥控配对"}}},track:{"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:"data.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:"更新所有内容"}},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:"重新扫描未修改文件的元数据"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"仅更新Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"更新资料库"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"上月"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"上周"}},today:{t:0,b:{t:2,i:[{t:3}],s:"今日"}},undefined:{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:")"}]}}},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:"有声读物"}},composers:{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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP流"}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP流错误:流载入失败或者由于网络原因无法载入"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"更新资料库"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"音量"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隐藏单曲"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果处于活动状态,则隐藏单曲和与其关联的任何内容"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隐藏来自Spotify的内容"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果处于活动状态,则隐藏 Spotify 中的内容"}},title:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"艺人 › 发行日期"}},"artist-name":{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:"评级"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近添加"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"最近发行"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"发行日期"}},title:{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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"张专辑"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"艺人"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"作者"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"作者"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"文件"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"流派"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"浏览资料库添加曲目"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"直播"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"播放清单是空的"}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"播放列表"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"最新单集"}},title:{t:0,b:{t:2,i:[{t:3}],s:"播客"}}},queue:{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:" 只曲目"}]}]}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"资料库"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"遥控和输出"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"在线服务"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"概览"}}}},spotify:{music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"特色列表"}},"new-releases":{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:"显示/隐藏歌词"}}}},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:"智能"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"添加时间"}},album:{t:0,b:{t:2,i:[{t:3}],s:"专辑"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"专辑艺人"}},albums:{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:"时长"}},folders:{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:"路径"}},playlists:{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:{"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:" 只曲目"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"无法连接到 OwnTone 服务器"}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"清单以添加到播放列表 "},{t:4,k:"name"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"自动"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"深色"}},light:{t:0,b:{t:2,i:[{t:3}],s:"浅色"}},title:{t:0,b:{t:2,i:[{t:3}],s:"外观"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"在专辑列表中显示封面艺术作品"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"忽略广播电台提供的作品"}},title:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"没有活跃的配对请求"}},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:"远程配对请求来自于 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"扬声器配对和设备验证"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您的扬声器需要配对,请在下面输入它显示的 PIN以激活"}},"verification-code":{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 用户名/密码,仅存储会话密钥。会话密钥不会过期"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone的构建没有来自Last.fm的官方支持"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"密码"}},spotify:{authorize:{t:0,b:{t:2,i:[{t:3}],s:"授权 API 访问"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"授予对 Spotify API 的访问权限"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone的构建没有来自 Spotify 官方的支持,也未安装 libspotify"}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"请重新授权 API 访问权限,以授予 OwnTone 以下附加访问权限:"},{t:4,k:"scopes"}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"您必须拥有 Spotify付费帐户。访问 Spotify API 可以扫描您的 Spotify库。所需范围是:"},{t:4,k:"scopes"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"授予访问权限 "},{t:4,k:"user"}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"用户名"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"流派"}},language:{t:0,b:{t:2,i:[{t:3}],s:"语言"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"选择顶部导航栏菜单项"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"在移动设备屏幕上,只显示汉堡菜单"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"导航条"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"“正在播放”页面"}},"recently-added-limit":{t:0,b:{t:2,i:[{t:3}],s:"限制显示的相册数量"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"“最近添加”页面"}},"show-composer-for-genre":{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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"显示作曲家"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"显示文件路径"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"有声读物"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"文件"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"音乐"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"播客"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"广播电台"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"搜索"}}}}}},{"zh-TW":{actions:{add:{t:0,b:{t:2,i:[{t:3}],s:"新增"}},"add-next":{t:0,b:{t:2,i:[{t:3}],s:"插播"}},"add-stream":{t:0,b:{t:2,i:[{t:3}],s:"新增串流"}},cancel:{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:"隱藏歷史"}},login:{t:0,b:{t:2,i:[{t:3}],s:"登入"}},logout:{t:0,b:{t:2,i:[{t:3}],s:"退出"}},"mark-all-played":{t:0,b:{t:2,i:[{t:3}],s:"全部標記為已播放"}},"mark-as-new":{t:0,b:{t:2,i:[{t:3}],s:"標記為最新"}},"mark-as-played":{t:0,b:{t:2,i:[{t:3}],s:"標記為已播放"}},pair:{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:"移除"}},rescan:{t:0,b:{t:2,i:[{t:3}],s:"重新掃描"}},save:{t:0,b:{t:2,i:[{t:3}],s:"儲存"}},"show-more":{t:0,b:{t:2,i:[{t:3}],s:"顯示更多"}},shuffle:{t:0,b:{t:2,i:[{t:3}],s:"隨機播放"}},update:{t:0,b:{t:2,i:[{t:3}],s:"更新"}},verify:{t:0,b:{t:2,i:[{t:3}],s:"驗證"}}},data:{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:" 個音樂類型"}]}]}},kind:{file:{t:0,b:{t:2,i:[{t:3}],s:"文件"}},pipe:{t:0,b:{t:2,i:[{t:3}],s:"串流"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},url:{t:0,b:{t:2,i:[{t:3}],s:"鏈接"}}},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:" 首曲目"}]}]}}},dialog:{add:{rss:{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:{loading:{t:0,b:{t:2,i:[{t:3}],s:"載入中…"}},placeholder:{t:0,b:{t:2,i:[{t:3}],s:"https://url-to-stream"}},processing:{t:0,b:{t:2,i:[{t:3}],s:"處理中…"}},title:{t:0,b:{t:2,i:[{t:3}],s:"新增串流"}}}},playlist:{save:{"playlist-name":{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:"儲存播放清單到列表"}}}},podcast:{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:")"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"移除Podcast"}}}},"queue-item":{"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:"data.channels"}},{t:3,v:" "},{t:9,v:"|"},{t:3,v:" "},{t:4,k:"bitrate"},{t:3,v:" kbit/s"}]}}},"remote-pairing":{"pairing-code":{t:0,b:{t:2,i:[{t:3}],s:"配對碼"}},title:{t:0,b:{t:2,i:[{t:3}],s:"請求遙控配對"}}},track:{"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:"data.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:"更新所有內容"}},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:"重新掃描未修改文件的中繼資料"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"僅更新Spotify"}},title:{t:0,b:{t:2,i:[{t:3}],s:"更新資料庫"}}}},"grouped-list":{"last-month":{t:0,b:{t:2,i:[{t:3}],s:"上月"}},"last-week":{t:0,b:{t:2,i:[{t:3}],s:"上周"}},today:{t:0,b:{t:2,i:[{t:3}],s:"今日"}},undefined:{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:")"}]}}},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:"有聲書"}},composers:{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"}},stream:{t:0,b:{t:2,i:[{t:3}],s:"HTTP串流"}},"stream-error":{t:0,b:{t:2,i:[{t:3}],s:"HTTP串流錯誤:串流載入失敗或者由於網絡原因無法載入"}},"update-library":{t:0,b:{t:2,i:[{t:3}],s:"更新資料庫"}},volume:{t:0,b:{t:2,i:[{t:3}],s:"音量"}}},options:{filter:{"hide-singles":{t:0,b:{t:2,i:[{t:3}],s:"隱藏單曲"}},"hide-singles-help":{t:0,b:{t:2,i:[{t:3}],s:"如果處於活動狀態,則隱藏單曲和與其關聯的任何內容"}},"hide-spotify":{t:0,b:{t:2,i:[{t:3}],s:"隱藏來自Spotify的內容"}},"hide-spotify-help":{t:0,b:{t:2,i:[{t:3}],s:"如果處於活動狀態,則隱藏 Spotify 中的內容"}},title:{t:0,b:{t:2,i:[{t:3}],s:"篩選"}}},sort:{"artist-date":{t:0,b:{t:2,i:[{t:3}],s:"藝人 › 發行日期"}},"artist-name":{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:"評級"}},"recently-added":{t:0,b:{t:2,i:[{t:3}],s:"最近新增"}},"recently-released":{t:0,b:{t:2,i:[{t:3}],s:"最近發行"}},"release-date":{t:0,b:{t:2,i:[{t:3}],s:"發行日期"}},title:{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"}]}}},albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"藝人"}}},audiobooks:{albums:{title:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}}},artists:{title:{t:0,b:{t:2,i:[{t:3}],s:"作者"}}},tabs:{audiobooks:{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},authors:{t:0,b:{t:2,i:[{t:3}],s:"作者"}},genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}}}},composers:{title:{t:0,b:{t:2,i:[{t:3}],s:"作曲家"}}},files:{title:{t:0,b:{t:2,i:[{t:3}],s:"文件"}}},genres:{title:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}}},music:{"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"}}}},player:{info:{t:0,b:{t:2,i:[{t:3}],s:"瀏覽資料庫新增曲目"}},time:{t:0,b:{t:1,c:[{t:2,i:[{t:3}],s:"直播"},{t:2,i:[{t:4,k:"time"}]},{t:2,i:[{t:4,k:"time"}]}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"播放清單是空的"}}},playlists:{title:{t:0,b:{t:1,c:[{t:2,i:[{t:4,k:"name"}]},{t:2,i:[{t:3}],s:"播放列表"}]}}},podcasts:{"new-episodes":{t:0,b:{t:2,i:[{t:3}],s:"最新單集"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}}},queue:{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:" 首曲目"}]}]}},tabs:{library:{t:0,b:{t:2,i:[{t:3}],s:"資料庫"}},spotify:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},tracks:{t:0,b:{t:2,i:[{t:3}],s:"曲目"}}},settings:{tabs:{artwork:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},devices:{t:0,b:{t:2,i:[{t:3}],s:"遙控和輸出"}},"online-services":{t:0,b:{t:2,i:[{t:3}],s:"在線服務"}},webinterface:{t:0,b:{t:2,i:[{t:3}],s:"概覽"}}}},spotify:{music:{"featured-playlists":{t:0,b:{t:2,i:[{t:3}],s:"特色列表"}},"new-releases":{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:"顯示/隱藏歌詞"}}}},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:"智能"}}}},property:{"added-on":{t:0,b:{t:2,i:[{t:3}],s:"新增時間"}},album:{t:0,b:{t:2,i:[{t:3}],s:"專輯"}},"album-artist":{t:0,b:{t:2,i:[{t:3}],s:"專輯藝人"}},albums:{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:"時長"}},folders:{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:"路徑"}},playlists:{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:{"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:" 首曲目"}]}]}},"connection-failed":{t:0,b:{t:2,i:[{t:3}],s:"無法連接到 OwnTone 伺服器"}},"queue-saved":{t:0,b:{t:2,i:[{t:3,v:"清單以新增到播放列表 "},{t:4,k:"name"}]}},"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:")"}]}}},settings:{appearance:{auto:{t:0,b:{t:2,i:[{t:3}],s:"自動"}},dark:{t:0,b:{t:2,i:[{t:3}],s:"深色"}},light:{t:0,b:{t:2,i:[{t:3}],s:"淺色"}},title:{t:0,b:{t:2,i:[{t:3}],s:"外觀"}}},artwork:{"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-cover-artwork-in-album-lists":{t:0,b:{t:2,i:[{t:3}],s:"在專輯列表中顯示封面藝術作品"}},"streamurl-ignore":{t:0,b:{t:2,i:[{t:3}],s:"忽略電台提供的作品"}},title:{t:0,b:{t:2,i:[{t:3}],s:"封面"}},"use-artwork-source-coverartarchive":{t:0,b:{t:2,i:[{t:3}],s:"Cover Art Archive"}},"use-artwork-source-discogs":{t:0,b:{t:2,i:[{t:3}],s:"Discogs"}},"use-artwork-source-spotify":{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}}},devices:{"no-active-pairing":{t:0,b:{t:2,i:[{t:3}],s:"沒有活躍的配對請求"}},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:"遠程配對請求來自於 "}},"speaker-pairing":{t:0,b:{t:2,i:[{t:3}],s:"揚聲器配對和設備驗證"}},"speaker-pairing-info":{t:0,b:{t:2,i:[{t:3}],s:"如果您的揚聲器需要配對,請在下面輸入它顯示的 PIN以啓用"}},"verification-code":{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 用戶名/密碼,僅存儲會話密鑰。會話密鑰不會過期"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone並無Last.fm的官方支持"}},title:{t:0,b:{t:2,i:[{t:3}],s:"Last.fm"}}},password:{t:0,b:{t:2,i:[{t:3}],s:"密碼"}},spotify:{authorize:{t:0,b:{t:2,i:[{t:3}],s:"授權 API 訪問"}},"grant-access":{t:0,b:{t:2,i:[{t:3}],s:"授予對 Spotify API 的訪問權限"}},"no-support":{t:0,b:{t:2,i:[{t:3}],s:"OwnTone並無 Spotify 官方的支持,也未安裝 libspotify"}},reauthorize:{t:0,b:{t:2,i:[{t:3,v:"請重新授權 API 訪問權限,以授予 OwnTone 以下附加訪問權限:"},{t:4,k:"scopes"}]}},requirements:{t:0,b:{t:2,i:[{t:3,v:"您必須擁有 Spotify付費帳戶。訪問 Spotify API 可以掃描您的 Spotify庫。所需範圍是:"},{t:4,k:"scopes"}]}},title:{t:0,b:{t:2,i:[{t:3}],s:"Spotify"}},user:{t:0,b:{t:2,i:[{t:3,v:"授予訪問權限 "},{t:4,k:"user"}]}}},username:{t:0,b:{t:2,i:[{t:3}],s:"用戶名"}}},webinterface:{genres:{t:0,b:{t:2,i:[{t:3}],s:"音樂類型"}},language:{t:0,b:{t:2,i:[{t:3}],s:"語言"}},"navigation-item-selection":{t:0,b:{t:2,i:[{t:3}],s:"選擇頂部導航欄菜單項"}},"navigation-item-selection-info":{t:0,b:{t:2,i:[{t:3}],s:"在行動裝置螢幕上,只會顯示漢堡菜單"}},"navigation-items":{t:0,b:{t:2,i:[{t:3}],s:"導航條"}},"player-page":{t:0,b:{t:2,i:[{t:3}],s:"“正在播放”頁面"}},"recently-added-limit":{t:0,b:{t:2,i:[{t:3}],s:"限制顯示的相簿數量"}},"recently-added-page":{t:0,b:{t:2,i:[{t:3}],s:"“最近新增”頁面"}},"show-composer-for-genre":{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-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"顯示作曲家"}},"show-filepath-now-playing":{t:0,b:{t:2,i:[{t:3}],s:"顯示檔案路徑"}},"show-menu-item-audiobooks":{t:0,b:{t:2,i:[{t:3}],s:"有聲書"}},"show-menu-item-files":{t:0,b:{t:2,i:[{t:3}],s:"文件"}},"show-menu-item-music":{t:0,b:{t:2,i:[{t:3}],s:"音樂"}},"show-menu-item-playlists":{t:0,b:{t:2,i:[{t:3}],s:"播放列表"}},"show-menu-item-podcasts":{t:0,b:{t:2,i:[{t:3}],s:"Podcast"}},"show-menu-item-radio":{t:0,b:{t:2,i:[{t:3}],s:"電台"}},"show-menu-item-search":{t:0,b:{t:2,i:[{t:3}],s:"搜尋"}}}}}}),Gs=HO({fallbackLocale:"en",fallbackWarn:!1,locale:navigator.language,messages:JO,missingWarn:!1}),{t:QO}=Gs.global;ut.interceptors.response.use(t=>t.data,t=>(t.request.status&&t.request.responseURL&&ko().add({text:QO("server.request-failed",{cause:t.request.statusText,status:t.request.status,url:t.request.responseURL}),type:"danger"}),Promise.reject(t)));const ay="./api/pairing",wp={pair(t){return ut.post(ay,{pin:t})},state(){return ut.get(ay)}},kp=Ds("RemotesStore",{actions:{async initialise(){this.$state=await wp.state()}},state:()=>({active:!1,remote:""})}),tx={name:"ModalDialogRemotePairing",components:{ControlPinField:a0,ModalDialog:rr},props:{show:Boolean},emits:["close"],setup(){return{remoteStore:kp()}},data(){return{disabled:!0,pin:""}},computed:{actions(){return[{handler:this.cancel,icon:"cancel",key:"actions.cancel"},{disabled:this.disabled,handler:this.pair,icon:"vector-link",key:"actions.pair"}]}},methods:{cancel(){this.$emit("close")},onPinChange(t,e){this.pin=t,this.disabled=e},pair(){wp.pair(this.pin).then(()=>{this.pin=""})}}},ex=["textContent"];function nx(t,e,n,s,i,r){const o=w("control-pin-field"),a=w("modal-dialog");return O(),yt(a,{actions:r.actions,show:n.show,title:t.$t("dialog.remote-pairing.title"),onClose:e[1]||(e[1]=l=>t.$emit("close"))},{content:M(()=>[P("form",{onSubmit:e[0]||(e[0]=Bn((...l)=>r.pair&&r.pair(...l),["prevent"]))},[P("label",{class:"label",textContent:et(s.remoteStore.remote)},null,8,ex),E(o,{placeholder:t.$t("dialog.remote-pairing.pairing-code"),onInput:r.onPinChange},null,8,["placeholder","onInput"])],32)]),_:1},8,["actions","show","title"])}const sx=nt(tx,[["render",nx]]),ix={name:"ControlSwitch",props:{modelValue:Boolean},emits:["update:modelValue"]},rx={class:"field mb-0 is-flex is-align-items-center"},ox={class:"toggle is-flex is-align-items-center"},ax={class:"control is-flex is-align-items-center"},lx=["checked"],cx={key:0,class:"help mb-4"};function ux(t,e,n,s,i,r){return O(),F(it,null,[P("div",rx,[P("label",ox,[P("div",ax,[P("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,lx),e[1]||(e[1]=P("div",{class:"toggle-switch"},null,-1))]),le(t.$slots,"label",{},void 0,!0)])]),t.$slots.help?(O(),F("div",cx,[le(t.$slots,"help",{},void 0,!0)])):_t("",!0)],64)}const Ur=nt(ix,[["render",ux],["__scopeId","data-v-f999a158"]]),Ge="./api/library",_s="./api/search",Tt={add(t){return ut.post(`${Ge}/add`,null,{params:{url:t}})},album(t){return ut.get(`${Ge}/albums/${t}`)},albumTracks(t,e={limit:-1,offset:0}){return ut.get(`${Ge}/albums/${t}/tracks`,{params:e})},albums(t){return ut.get(`${Ge}/albums`,{params:{media_kind:t}})},artist(t){return ut.get(`${Ge}/artists/${t}`)},artistAlbums(t){return ut.get(`${Ge}/artists/${t}/albums`)},async artistTracks(t){const e={expression:`songartistid is "${t}"`,type:"tracks"};return(await ut.get(_s,{params:e})).tracks},artists(t){return ut.get(`${Ge}/artists`,{params:{media_kind:t}})},composer(t){return ut.get(`${Ge}/composers/${encodeURIComponent(t)}`)},async composerAlbums(t){const e={expression:`composer is "${t}" and media_kind is music`,type:"albums"};return(await ut.get(_s,{params:e})).albums},async composerTracks(t){const e={expression:`composer is "${t}" and media_kind is music`,type:"tracks"};return(await ut.get(_s,{params:e})).tracks},composers(t){return ut.get(`${Ge}/composers`,{params:{media_kind:t}})},files(t){return ut.get(`${Ge}/files`,{params:{directory:t}})},async genre(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"genres"};return(await ut.get(_s,{params:n})).genres},async genreAlbums(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"albums"};return(await ut.get(_s,{params:n})).albums},async genreTracks(t,e){const n={expression:`genre is "${t}" and media_kind is ${e}`,type:"tracks"};return(await ut.get(_s,{params:n})).tracks},async genres(t){const e={expression:`media_kind is ${t}`,type:"genres"};return(await ut.get(_s,{params:e})).genres},async newPodcastEpisodes(){const t={expression:"media_kind is podcast and play_count = 0 ORDER BY time_added DESC",type:"tracks"};return(await ut.get(_s,{params:t})).tracks},playlist(t){return ut.get(`${Ge}/playlists/${t}`)},playlistDelete(t){return ut.delete(`${Ge}/playlists/${t}`)},playlistFolder(t=0){return ut.get(`${Ge}/playlists/${t}/playlists`)},playlistTracks(t){return ut.get(`${Ge}/playlists/${t}/tracks`)},async podcastEpisodes(t){const e={expression:`media_kind is podcast and songalbumid is "${t}" ORDER BY date_released DESC`,type:"tracks"};return(await ut.get(_s,{params:e})).tracks},async radioStreams(){const t={expression:"data_kind is url and song_length = 0",media_kind:"music",type:"tracks"};return(await ut.get(_s,{params:t})).tracks},rescan(t){return ut.put("./api/rescan",null,{params:{scan_kind:t}})},rssCount(){return ut.get(`${Ge}/count`,{params:{expression:"scan_kind is rss"}})},search(t){return ut.get(_s,{params:t})},state(){return ut.get(Ge)},track(t){return ut.get(`${Ge}/tracks/${t}`)},trackPlaylists(t){return ut.get(`${Ge}/tracks/${t}/playlists`)},update(t){return ut.put("./api/update",null,{params:{scan_kind:t}})},updateAlbum(t,e){return ut.put(`${Ge}/albums/${t}/tracks`,null,{params:e})},updateTrack(t,e={}){return ut.put(`${Ge}/tracks/${t}`,null,{params:e})}},Gu=Ds("LibraryStore",{actions:{async initialise(){this.$state=await Tt.state()}},state:()=>({albums:0,artists:0,db_playtime:0,songs:0,started_at:"01",update_dialog_scan_kind:"",updated_at:"01",updating:!1})});class We{api;constructor(e){this.api=e}async getRequest(e){return await this.api.makeRequest("GET",e)}async postRequest(e,n,s=void 0){return await this.api.makeRequest("POST",e,n,s)}async putRequest(e,n,s=void 0){return await this.api.makeRequest("PUT",e,n,s)}async deleteRequest(e,n){return await this.api.makeRequest("DELETE",e,n)}paramsFor(e){const n=new URLSearchParams;for(let s of Object.getOwnPropertyNames(e))(e[s]||e[s]===0||!e[s]&&typeof e[s]=="boolean")&&n.append(s,e[s].toString());return[...n].length>0?`?${n.toString()}`:""}}class dx extends We{async get(e,n){if(typeof e=="string"){const r=this.paramsFor({market:n});return await this.getRequest(`albums/${e}${r}`)}const s=this.paramsFor({ids:e,market:n});return(await this.getRequest(`albums${s}`)).albums}tracks(e,n,s,i){const r=this.paramsFor({market:n,limit:s,offset:i});return this.getRequest(`albums/${e}/tracks${r}`)}}class fx extends We{async get(e){if(typeof e=="string")return this.getRequest(`artists/${e}`);const n=this.paramsFor({ids:e});return(await this.getRequest(`artists${n}`)).artists}albums(e,n,s,i,r){const o=this.paramsFor({include_groups:n,market:s,limit:i,offset:r});return this.getRequest(`artists/${e}/albums${o}`)}topTracks(e,n){const s=this.paramsFor({market:n});return this.getRequest(`artists/${e}/top-tracks${s}`)}relatedArtists(e){return this.getRequest(`artists/${e}/related-artists`)}}class hx extends We{async get(e,n){if(typeof e=="string"){const r=this.paramsFor({market:n});return this.getRequest(`audiobooks/${e}${r}`)}const s=this.paramsFor({ids:e,market:n});return(await this.getRequest(`audiobooks${s}`)).audiobooks}getAudiobookChapters(e,n,s,i){const r=this.paramsFor({market:n,limit:s,offset:i});return this.getRequest(`audiobooks/${e}/chapters${r}`)}}class px extends We{getCategories(e,n,s,i){const r=this.paramsFor({country:e,locale:n,limit:s,offset:i});return this.getRequest(`browse/categories${r}`)}getCategory(e,n,s){const i=this.paramsFor({country:n,locale:s});return this.getRequest(`browse/categories/${e}${i}`)}getNewReleases(e,n,s){const i=this.paramsFor({country:e,limit:n,offset:s});return this.getRequest(`browse/new-releases${i}`)}getFeaturedPlaylists(e,n,s,i,r){const o=this.paramsFor({country:e,locale:n,timestamp:s,limit:i,offset:r});return this.getRequest(`browse/featured-playlists${o}`)}getPlaylistsForCategory(e,n,s,i){const r=this.paramsFor({country:n,limit:s,offset:i});return this.getRequest(`browse/categories/${e}/playlists${r}`)}}class mx extends We{async get(e,n){if(typeof e=="string"){const r=this.paramsFor({market:n});return this.getRequest(`chapters/${e}${r}`)}const s=this.paramsFor({ids:e,market:n});return(await this.getRequest(`chapters${s}`)).chapters}}class gx extends We{async get(e,n){if(typeof e=="string"){const r=this.paramsFor({market:n});return this.getRequest(`episodes/${e}${r}`)}const s=this.paramsFor({ids:e,market:n});return(await this.getRequest(`episodes${s}`)).episodes}}class yx extends We{get(e){const n=this.paramsFor(e);return this.getRequest(`recommendations${n}`)}genreSeeds(){return this.getRequest("recommendations/available-genre-seeds")}}class bx extends We{getAvailableMarkets(){return this.getRequest("markets")}}class vx extends We{getPlaybackState(e,n){const s=this.paramsFor({market:e,additional_types:n});return this.getRequest(`me/player${s}`)}getAvailableDevices(){return this.getRequest("me/player/devices")}getCurrentlyPlayingTrack(e,n){const s=this.paramsFor({market:e,additional_types:n});return this.getRequest(`me/player/currently-playing${s}`)}getRecentlyPlayedTracks(e,n){const s={limit:e};n&&(n.type==="before"?s.before=n.timestamp:n.type==="after"&&(s.after=n.timestamp));const i=this.paramsFor(s);return this.getRequest(`me/player/recently-played${i}`)}getUsersQueue(){return this.getRequest("me/player/queue")}async transferPlayback(e,n){if(e.length>1)throw new Error("Although an array is accepted, only a single device_id is currently supported. Supplying more than one will return 400 Bad Request");await this.putRequest("me/player",{device_ids:e,play:n})}async startResumePlayback(e,n,s,i,r){const o=this.paramsFor({device_id:e});await this.putRequest(`me/player/play${o}`,{context_uri:n,uris:s,offset:i,positionMs:r})}async pausePlayback(e){const n=this.paramsFor({device_id:e});await this.putRequest(`me/player/pause${n}`)}async skipToNext(e){const n=this.paramsFor({device_id:e});await this.postRequest(`me/player/next${n}`)}async skipToPrevious(e){const n=this.paramsFor({device_id:e});await this.postRequest(`me/player/previous${n}`)}async seekToPosition(e,n){const s=this.paramsFor({position_ms:e,device_id:n});await this.putRequest(`me/player/seek${s}`)}async setRepeatMode(e,n){const s=this.paramsFor({state:e,device_id:n});await this.putRequest(`me/player/repeat${s}`)}async setPlaybackVolume(e,n){const s=this.paramsFor({volume_percent:e,device_id:n});await this.putRequest(`me/player/volume${s}`)}async togglePlaybackShuffle(e,n){const s=this.paramsFor({state:e,device_id:n});await this.putRequest(`me/player/shuffle${s}`)}async addItemToPlaybackQueue(e,n){const s=this.paramsFor({uri:e,device_id:n});await this.postRequest(`me/player/queue${s}`)}}class _x extends We{getPlaylist(e,n,s,i){const r=this.paramsFor({market:n,fields:s,additional_types:i?.join(",")});return this.getRequest(`playlists/${e}${r}`)}getPlaylistItems(e,n,s,i,r,o){const a=this.paramsFor({market:n,fields:s,limit:i,offset:r,additional_types:o?.join(",")});return this.getRequest(`playlists/${e}/tracks${a}`)}async changePlaylistDetails(e,n){await this.putRequest(`playlists/${e}`,n)}movePlaylistItems(e,n,s,i){return this.updatePlaylistItems(e,{range_start:n,range_length:s,insert_before:i})}updatePlaylistItems(e,n){return this.putRequest(`playlists/${e}/tracks`,n)}async addItemsToPlaylist(e,n,s){await this.postRequest(`playlists/${e}/tracks`,{position:s,uris:n})}async removeItemsFromPlaylist(e,n){await this.deleteRequest(`playlists/${e}/tracks`,n)}getUsersPlaylists(e,n,s){const i=this.paramsFor({limit:n,offset:s});return this.getRequest(`users/${e}/playlists${i}`)}createPlaylist(e,n){return this.postRequest(`users/${e}/playlists`,n)}getPlaylistCoverImage(e){return this.getRequest(`playlists/${e}/images`)}async addCustomPlaylistCoverImage(e,n){let s="";if(n instanceof Buffer)s=n.toString("base64");else if(n instanceof HTMLCanvasElement)s=n.toDataURL("image/jpeg").split(";base64,")[1];else if(n instanceof HTMLImageElement){const i=document.createElement("canvas");i.width=n.width,i.height=n.height;const r=i.getContext("2d");if(!r)throw new Error("Could not get canvas context");r.drawImage(n,0,0),s=i.toDataURL("image/jpeg").split(";base64,")[1]}else if(typeof n=="string")s=n;else throw new Error("ImageData must be a Buffer, HTMLImageElement, HTMLCanvasElement, or string containing a base64 encoded jpeg");await this.addCustomPlaylistCoverImageFromBase64String(e,s)}async addCustomPlaylistCoverImageFromBase64String(e,n){await this.putRequest(`playlists/${e}/images`,n,"image/jpeg")}}class Sx extends We{async execute(e,n,s,i,r,o){const a=this.paramsFor({q:e,type:n,market:s,limit:i,offset:r,include_external:o});return await this.getRequest(`search${a}`)}}class Ex extends We{async get(e,n){if(typeof e=="string"){const r=this.paramsFor({market:n});return this.getRequest(`shows/${e}${r}`)}const s=this.paramsFor({ids:e,market:n});return(await this.getRequest(`shows${s}`)).shows}episodes(e,n,s,i){const r=this.paramsFor({market:n,limit:s,offset:i});return this.getRequest(`shows/${e}/episodes${r}`)}}class wx extends We{async get(e,n){if(typeof e=="string"){const r=this.paramsFor({market:n});return this.getRequest(`tracks/${e}${r}`)}const s=this.paramsFor({ids:e,market:n});return(await this.getRequest(`tracks${s}`)).tracks}async audioFeatures(e){if(typeof e=="string")return this.getRequest(`audio-features/${e}`);const n=this.paramsFor({ids:e});return(await this.getRequest(`audio-features${n}`)).audio_features}audioAnalysis(e){return this.getRequest(`audio-analysis/${e}`)}}const Cp={access_token:"emptyAccessToken",token_type:"",expires_in:0,refresh_token:"",expires:-1};function la(t){return t===Cp}class kx extends We{profile(e){return this.getRequest(`users/${e}`)}}class Cx extends We{albums;audiobooks;episodes;playlists;shows;tracks;constructor(e){super(e),this.albums=new Tx(e),this.audiobooks=new Ax(e),this.episodes=new Ox(e),this.playlists=new xx(e),this.shows=new Ix(e),this.tracks=new Nx(e)}profile(){return this.getRequest("me")}topItems(e,n,s,i){const r=this.paramsFor({time_range:n,limit:s,offset:i});return this.getRequest(`me/top/${e}${r}`)}followedArtists(e,n){const s=this.paramsFor({type:"artist",after:e,limit:n});return this.getRequest(`me/following${s}`)}async followArtistsOrUsers(e,n){const s=this.paramsFor({type:n});await this.putRequest(`me/following${s}`,{ids:e})}async unfollowArtistsOrUsers(e,n){const s=this.paramsFor({type:n});await this.deleteRequest(`me/following${s}`,{ids:e})}followsArtistsOrUsers(e,n){const s=this.paramsFor({ids:e,type:n});return this.getRequest(`me/following/contains${s}`)}}class Tx extends We{savedAlbums(e,n,s){const i=this.paramsFor({limit:e,offset:n,market:s});return this.getRequest(`me/albums${i}`)}async saveAlbums(e){await this.putRequest("me/albums",e)}async removeSavedAlbums(e){await this.deleteRequest("me/albums",e)}hasSavedAlbums(e){const n=this.paramsFor({ids:e});return this.getRequest(`me/albums/contains${n}`)}}class Ax extends We{savedAudiobooks(e,n){const s=this.paramsFor({limit:e,offset:n});return this.getRequest(`me/audiobooks${s}`)}async saveAudiobooks(e){await this.putRequest("me/audiobooks",e)}async removeSavedAudiobooks(e){await this.deleteRequest("me/audiobooks",e)}hasSavedAudiobooks(e){const n=this.paramsFor({ids:e});return this.getRequest(`me/audiobooks/contains${n}`)}}class Ox extends We{savedEpisodes(e,n,s){const i=this.paramsFor({market:e,limit:n,offset:s});return this.getRequest(`me/episodes${i}`)}async saveEpisodes(e){await this.putRequest("me/episodes",e)}async removeSavedEpisodes(e){await this.deleteRequest("me/episodes",e)}hasSavedEpisodes(e){const n=this.paramsFor({ids:e});return this.getRequest(`me/episodes/contains${n}`)}}class xx extends We{playlists(e,n){const s=this.paramsFor({limit:e,offset:n});return this.getRequest(`me/playlists${s}`)}async follow(e){await this.putRequest(`playlists/${e}/followers`)}async unfollow(e){await this.deleteRequest(`playlists/${e}/followers`)}isFollowing(e,n){const s=this.paramsFor({ids:n});return this.getRequest(`playlists/${e}/followers/contains${s}`)}}class Ix extends We{savedShows(e,n){const s=this.paramsFor({limit:e,offset:n});return this.getRequest(`me/shows${s}`)}saveShows(e){const n=this.paramsFor({ids:e});return this.putRequest(`me/shows${n}`)}removeSavedShows(e,n){const s=this.paramsFor({ids:e,market:n});return this.deleteRequest(`me/shows${s}`)}hasSavedShow(e){const n=this.paramsFor({ids:e});return this.getRequest(`me/shows/contains${n}`)}}class Nx extends We{savedTracks(e,n,s){const i=this.paramsFor({limit:e,offset:n,market:s});return this.getRequest(`me/tracks${i}`)}async saveTracks(e){await this.putRequest("me/tracks",e)}async removeSavedTracks(e){await this.deleteRequest("me/tracks",e)}hasSavedTracks(e){const n=this.paramsFor({ids:e});return this.getRequest(`me/tracks/contains${n}`)}}class Px{static get current(){return this.hasSubtleCrypto?window.crypto:this.tryLoadNodeWebCrypto()}static get hasSubtleCrypto(){return typeof window<"u"&&typeof window.crypto<"u"&&typeof window.crypto.subtle<"u"}static tryLoadNodeWebCrypto(){try{const{webcrypto:e}=require("crypto");return e}catch(e){throw e}}}class zn{static async refreshCachedAccessToken(e,n){const s=await zn.refreshToken(e,n.refresh_token);return zn.toCachable(s)}static toCachable(e){return e.expires&&e.expires===-1?e:{...e,expires:this.calculateExpiry(e)}}static calculateExpiry(e){return Date.now()+e.expires_in*1e3}static async refreshToken(e,n){const s=new URLSearchParams;s.append("client_id",e),s.append("grant_type","refresh_token"),s.append("refresh_token",n);const i=await fetch("https://accounts.spotify.com/api/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:s}),r=await i.text();if(!i.ok)throw new Error(`Failed to refresh token: ${i.statusText}, ${r}`);return JSON.parse(r)}static generateCodeVerifier(e){let n="",s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let i=0;i{const n=await this.getTokenFromApi();return zn.toCachable(n)},async n=>{const s=await this.getTokenFromApi();return zn.toCachable(s)})}async getAccessToken(){return await this.cache.get(ka.cacheKey)}removeAccessToken(){this.cache.remove(ka.cacheKey)}async getTokenFromApi(){const e={grant_type:"client_credentials",scope:this.scopes.join(" ")},n=Object.keys(e).map(l=>l+"="+e[l]).join("&"),s=typeof Buffer<"u",i=`${this.clientId}:${this.clientSecret}`,r=s?Buffer.from(i).toString("base64"):btoa(i),o=await fetch("https://accounts.spotify.com/api/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Authorization:`Basic ${r}`},body:n});if(o.status!==200)throw new Error("Failed to get access token.");return await o.json()}}class Ca{clientId;redirectUri;scopes;static cacheKey="spotify-sdk:ImplicitGrantStrategy:token";configuration=null;get cache(){return this.configuration.cachingStrategy}constructor(e,n,s){this.clientId=e,this.redirectUri=n,this.scopes=s}setConfiguration(e){this.configuration=e}async getOrCreateAccessToken(){return await this.cache.getOrCreate(Ca.cacheKey,async()=>{const n=await this.redirectOrVerifyToken();return zn.toCachable(n)},async n=>zn.refreshCachedAccessToken(this.clientId,n))}async getAccessToken(){return await this.cache.get(Ca.cacheKey)}removeAccessToken(){this.cache.remove(Ca.cacheKey)}async redirectOrVerifyToken(){const e=new URLSearchParams(window.location.hash.substring(1)),n=e.get("access_token");if(n)return Promise.resolve({access_token:n,token_type:e.get("token_type")??"",expires_in:parseInt(e.get("expires_in")??"0"),refresh_token:e.get("refresh_token")??"",expires:Number(e.get("expires"))||0});var i=(this.scopes??[]).join(" ");const r=new URLSearchParams;r.append("client_id",this.clientId),r.append("response_type","token"),r.append("redirect_uri",this.redirectUri),r.append("scope",i);const o="https://accounts.spotify.com/authorize?"+r.toString();return this.configuration.redirectionStrategy.redirect(o),Cp}}class go{clientId;redirectUri;scopes;static cacheKey="spotify-sdk:AuthorizationCodeWithPKCEStrategy:token";configuration=null;get cache(){return this.configuration.cachingStrategy}constructor(e,n,s){this.clientId=e,this.redirectUri=n,this.scopes=s}setConfiguration(e){this.configuration=e}async getOrCreateAccessToken(){return await this.cache.getOrCreate(go.cacheKey,async()=>{const n=await this.redirectOrVerifyToken();return zn.toCachable(n)},async n=>zn.refreshCachedAccessToken(this.clientId,n))}async getAccessToken(){return await this.cache.get(go.cacheKey)}removeAccessToken(){this.cache.remove(go.cacheKey)}async redirectOrVerifyToken(){const n=new URLSearchParams(window.location.search).get("code");if(n){const s=await this.verifyAndExchangeCode(n);return this.removeCodeFromUrl(),s}return this.redirectToSpotify(),Cp}async redirectToSpotify(){const e=zn.generateCodeVerifier(128),n=await zn.generateCodeChallenge(e),s={verifier:e,expiresOnAccess:!0};this.cache.setCacheItem("spotify-sdk:verifier",s);const i=await this.generateRedirectUrlForUser(this.scopes,n);await this.configuration.redirectionStrategy.redirect(i)}async verifyAndExchangeCode(e){const s=(await this.cache.get("spotify-sdk:verifier"))?.verifier;if(!s)throw new Error("No verifier found in cache - can't validate query string callback parameters.");return await this.configuration.redirectionStrategy.onReturnFromRedirect(),await this.exchangeCodeForToken(e,s)}removeCodeFromUrl(){const e=new URL(window.location.href);e.searchParams.delete("code");const n=e.search?e.href:e.href.replace("?","");window.history.replaceState({},document.title,n)}async generateRedirectUrlForUser(e,n){const s=e.join(" "),i=new URLSearchParams;return i.append("client_id",this.clientId),i.append("response_type","code"),i.append("redirect_uri",this.redirectUri),i.append("scope",s),i.append("code_challenge_method","S256"),i.append("code_challenge",n),`https://accounts.spotify.com/authorize?${i.toString()}`}async exchangeCodeForToken(e,n){const s=new URLSearchParams;s.append("client_id",this.clientId),s.append("grant_type","authorization_code"),s.append("code",e),s.append("redirect_uri",this.redirectUri),s.append("code_verifier",n);const i=await fetch("https://accounts.spotify.com/api/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:s}),r=await i.text();if(!i.ok)throw new Error(`Failed to exchange code for token: ${i.statusText}, ${r}`);return JSON.parse(r)}}class Rx{async deserialize(e){const n=await e.text();return n.length>0?JSON.parse(n):null}}class Dx{async validateResponse(e){switch(e.status){case 401:throw new Error("Bad or expired token. This can happen if the user revoked a token or the access token has expired. You should re-authenticate the user.");case 403:const n=await e.text();throw new Error(`Bad OAuth request (wrong consumer key, bad nonce, expired timestamp...). Unfortunately, re-authenticating the user won't help here. Body: ${n}`);case 429:throw new Error("The app has exceeded its rate limits.");default:if(!e.status.toString().startsWith("20")){const s=await e.text();throw new Error(`Unrecognised response code: ${e.status} - ${e.statusText}. Body: ${s}`)}}}}class Lx{async handleErrors(e){return!1}}class Mx{async redirect(e){document.location=e.toString()}async onReturnFromRedirect(){}}class i_{storage;updateFunctions;autoRenewInterval;autoRenewWindow;constructor(e,n=new Map,s=0,i=120*1e3){this.storage=e,this.updateFunctions=n,this.autoRenewInterval=s,this.autoRenewWindow=i,this.autoRenewInterval>0&&setInterval(()=>this.autoRenewRenewableItems(),this.autoRenewInterval)}async getOrCreate(e,n,s){s&&this.updateFunctions.set(e,s);const i=await this.get(e);if(i)return i;const r=await n();if(!r)throw new Error("Could not create cache item");return la(r)||this.setCacheItem(e,r),r}async get(e){let n=this.storage.get(e),s=n?JSON.parse(n):null;if(this.itemDueToExpire(s)&&this.updateFunctions.has(e)){const i=this.updateFunctions.get(e);await this.tryUpdateItem(e,s,i),n=this.storage.get(e),s=n?JSON.parse(n):null}return s?s.expires&&(s.expires===-1||s.expires<=Date.now())?(this.remove(e),null):(s.expiresOnAccess&&s.expiresOnAccess===!0&&this.remove(e),s):null}set(e,n,s){const i=Date.now()+s,r={...n,expires:i};this.setCacheItem(e,r)}setCacheItem(e,n){const s=JSON.stringify(n);this.storage.set(e,s)}remove(e){this.storage.remove(e)}itemDueToExpire(e){return!e||!e.expires?!1:e.expires-Date.now(){const s=await this.get(n);s&&e&&this.itemDueToExpire(s)&&await this.tryUpdateItem(n,s,e)})}async tryUpdateItem(e,n,s){try{const i=await s(n);i&&this.setCacheItem(e,i)}catch(i){console.error(i)}}}class $x extends i_{constructor(){super(new Fx)}}class Fx{get(e){return localStorage.getItem(e)}set(e,n){localStorage.setItem(e,n)}remove(e){localStorage.removeItem(e)}}class Vx extends i_{constructor(){super(new Ux)}}class Ux{cache=new Map;get(e){return this.cache.get(e)??null}set(e,n){this.cache.set(e,n)}remove(e){this.cache.delete(e)}}class Hx{clientId;accessToken;refreshTokenAction;constructor(e,n,s){this.clientId=e,this.accessToken=n,this.refreshTokenAction=s||zn.refreshCachedAccessToken,this.accessToken.expires||(this.accessToken.expires=zn.calculateExpiry(this.accessToken))}setConfiguration(e){}async getOrCreateAccessToken(){if(this.accessToken.expires&&this.accessToken.expires<=Date.now()){const e=await this.refreshTokenAction(this.clientId,this.accessToken);this.accessToken=e}return this.accessToken}async getAccessToken(){return this.accessToken}removeAccessToken(){this.accessToken={access_token:"",token_type:"",expires_in:0,refresh_token:"",expires:0}}}class ji{sdkConfig;static rootUrl="https://api.spotify.com/v1/";authenticationStrategy;albums;artists;audiobooks;browse;chapters;episodes;recommendations;markets;player;playlists;shows;tracks;users;search;currentUser;constructor(e,n){this.sdkConfig=this.initializeSdk(n),this.albums=new dx(this),this.artists=new fx(this),this.audiobooks=new hx(this),this.browse=new px(this),this.chapters=new mx(this),this.episodes=new gx(this),this.recommendations=new yx(this),this.markets=new bx(this),this.player=new vx(this),this.playlists=new _x(this),this.shows=new Ex(this),this.tracks=new wx(this),this.users=new kx(this),this.currentUser=new Cx(this);const s=new Sx(this);this.search=s.execute.bind(s),this.authenticationStrategy=e,this.authenticationStrategy.setConfiguration(this.sdkConfig)}async makeRequest(e,n,s=void 0,i=void 0){try{const r=await this.authenticationStrategy.getOrCreateAccessToken();if(la(r))return console.warn("No access token found, authenticating now."),null;const o=r?.access_token,a=ji.rootUrl+n,l={method:e,headers:{Authorization:`Bearer ${o}`,"Content-Type":i??"application/json"},body:s?typeof s=="string"?s:JSON.stringify(s):void 0};this.sdkConfig.beforeRequest(a,l);const c=await this.sdkConfig.fetch(a,l);return this.sdkConfig.afterRequest(a,l,c),c.status===204?null:(await this.sdkConfig.responseValidator.validateResponse(c),this.sdkConfig.deserializer.deserialize(c))}catch(r){if(!await this.sdkConfig.errorHandler.handleErrors(r))throw r;return null}}initializeSdk(e){const n=typeof window<"u";return{...{fetch:(i,r)=>fetch(i,r),beforeRequest:(i,r)=>{},afterRequest:(i,r,o)=>{},deserializer:new Rx,responseValidator:new Dx,errorHandler:new Lx,redirectionStrategy:new Mx,cachingStrategy:n?new $x:new Vx},...e}}switchAuthenticationStrategy(e){this.authenticationStrategy=e,this.authenticationStrategy.setConfiguration(this.sdkConfig),this.authenticationStrategy.getOrCreateAccessToken()}async authenticate(){const e=await this.authenticationStrategy.getOrCreateAccessToken();return{authenticated:e.expires>Date.now()&&!la(e),accessToken:e}}async getAccessToken(){return this.authenticationStrategy.getAccessToken()}logOut(){this.authenticationStrategy.removeAccessToken()}static withUserAuthorization(e,n,s=[],i){const r=new go(e,n,s);return new ji(r,i)}static withClientCredentials(e,n,s=[],i){const r=new ka(e,n,s);return new ji(r,i)}static withImplicitGrant(e,n,s=[],i){const r=new Ca(e,n,s);return new ji(r,i)}static withAccessToken(e,n,s){const i=new Hx(e,n);return new ji(i,s)}static async performUserAuthorization(e,n,s,i,r){const o=new go(e,n,s),l=await new ji(o,r).authenticationStrategy.getOrCreateAccessToken();return la(l)||(typeof i=="string"?(console.log("Posting access token to postback URL."),await fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l)})):await i(l)),{authenticated:l.expires>Date.now()&&!la(l),accessToken:l}}}const Nn={lastfm(){return ut.get("./api/lastfm")},loginLastfm(t){return ut.post("./api/lastfm-login",t)},logoutLastfm(){return ut.get("./api/lastfm-logout")},logoutSpotify(){return ut.get("./api/spotify-logout")},spotify(){return ut.get("./api/spotify").then(t=>({api:ji.withAccessToken(t.webapi_client_id,{access_token:t.webapi_token}),configuration:t}))}},Qn=Ds("ServicesStore",{actions:{async initialiseLastfm(){this.lastfm=await Nn.lastfm()},initialiseSpotify(){Nn.spotify().then(({configuration:t})=>{this.spotify=t})}},getters:{grantedSpotifyScopes:t=>t.spotify.webapi_granted_scope?.split(" ")??[],hasMissingSpotifyScopes:t=>t.missingSpotifyScopes.length>0,isAuthorizationRequired:t=>!t.isSpotifyActive||t.hasMissingSpotifyScopes,isLastfmActive:t=>t.lastfm.scrobbling_enabled,isLastfmEnabled:t=>t.lastfm.enabled,isSpotifyActive:t=>t.spotify.webapi_token_valid,isSpotifyEnabled:t=>t.spotify.spotify_installed,missingSpotifyScopes(t){const e=new Set(t.grantedSpotifyScopes);return t.requiredSpotifyScopes.filter(n=>!e.has(n))??[]},requiredSpotifyScopes:t=>t.spotify.webapi_required_scope?.split(" ")??[]},state:()=>({lastfm:{},spotify:{}})}),jx={name:"ModalDialogUpdate",components:{ControlSwitch:Ur,ModalDialog:rr},props:{show:Boolean},emits:["close"],setup(){return{libraryStore:Gu(),servicesStore:Qn()}},data(){return{rescanMetadata:!1}},computed:{actions(){const t=[{handler:this.cancel,icon:"cancel",key:"actions.cancel"}];return this.libraryStore.updating||t.push({handler:this.analyse,icon:"check",key:"actions.rescan"}),t}},methods:{analyse(){this.rescanMetadata?Tt.rescan(this.libraryStore.update_dialog_scan_kind):Tt.update(this.libraryStore.update_dialog_scan_kind)},cancel(){this.$emit("close"),this.libraryStore.update_dialog_scan_kind=""}}},Bx={key:0},Wx={key:0,class:"field"},Gx=["textContent"],Kx={class:"control"},qx={class:"select is-small"},zx=["textContent"],Xx=["textContent"],Yx=["textContent"],Zx=["textContent"],Jx=["textContent"],Qx={key:1},tI=["textContent"];function eI(t,e,n,s,i,r){const o=w("control-switch"),a=w("modal-dialog");return O(),yt(a,{actions:r.actions,show:n.show,title:t.$t("dialog.update.title"),onClose:e[2]||(e[2]=l=>t.$emit("close"))},{content:M(()=>[s.libraryStore.updating?(O(),F("div",Qx,[P("div",{class:"mb-3",textContent:et(t.$t("dialog.update.progress"))},null,8,tI)])):(O(),F("div",Bx,[s.servicesStore.isSpotifyActive?(O(),F("div",Wx,[P("label",{class:"label",textContent:et(t.$t("dialog.update.info"))},null,8,Gx),P("div",Kx,[P("div",qx,[ms(P("select",{"onUpdate:modelValue":e[0]||(e[0]=l=>s.libraryStore.update_dialog_scan_kind=l)},[P("option",{value:"",textContent:et(t.$t("dialog.update.all"))},null,8,zx),P("option",{value:"files",textContent:et(t.$t("dialog.update.local"))},null,8,Xx),s.servicesStore.isSpotifyActive?(O(),F("option",{key:0,value:"spotify",textContent:et(t.$t("dialog.update.spotify"))},null,8,Yx)):_t("",!0),P("option",{value:"rss",textContent:et(t.$t("dialog.update.feeds"))},null,8,Zx)],512),[[up,s.libraryStore.update_dialog_scan_kind]])])])])):_t("",!0),E(o,{modelValue:i.rescanMetadata,"onUpdate:modelValue":e[1]||(e[1]=l=>i.rescanMetadata=l)},{label:M(()=>[P("span",{textContent:et(t.$t("dialog.update.rescan-metadata"))},null,8,Jx)]),_:1},8,["modelValue"])]))]),_:1},8,["actions","show","title"])}const nI=nt(jx,[["render",eI]]),ts=Ds("UIStore",{actions:{hideMenus(){this.showBurgerMenu=!1,this.showPlayerMenu=!1},toggleBurgerMenu(){this.showPlayerMenu=!1,this.showBurgerMenu=!this.showBurgerMenu},toggleHideReadItems(){this.hideReadItems=!this.hideReadItems},togglePlayerMenu(){this.showBurgerMenu=!1,this.showPlayerMenu=!this.showPlayerMenu}},state:()=>({albumsSort:1,artistAlbumsSort:1,artistTracksSort:1,artistsSort:1,composerTracksSort:1,genreTracksSort:1,hideReadItems:!1,hideSingles:!1,hideSpotify:!1,showBurgerMenu:!1,showPlayerMenu:!1,showUpdateDialog:!1})}),sI={name:"ControlLink",props:{to:{required:!0,type:Object}},setup(){return{uiStore:ts()}},methods:{open(){this.uiStore.hideMenus(),this.$router.push(this.to)}}},iI=["href"];function rI(t,e,n,s,i,r){return O(),F("a",{href:t.$router.resolve(n.to).href,onClick:e[0]||(e[0]=Bn((...o)=>r.open&&r.open(...o),["stop","prevent"]))},[le(t.$slots,"default")],8,iI)}const r_=nt(sI,[["render",rI]]),Tp={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}}},ly=()=>{ap(t=>({"71a992eb":t.ratio}))},cy=Tp.setup;Tp.setup=cy?(t,e)=>(ly(),cy(t,e)):ly;const oI=["value","disabled","max"];function aI(t,e,n,s,i,r){return O(),F("input",{value:n.value,disabled:n.disabled,class:Gt(["slider",{"is-inactive":n.disabled}]),max:n.max,type:"range",onInput:e[0]||(e[0]=o=>t.$emit("update:value",o.target.valueAsNumber))},null,42,oI)}const Ku=nt(Tp,[["render",aI],["__scopeId","data-v-460ca666"]]),ss="./api/player",en={consume(t){return ut.put(`${ss}/consume`,null,{params:{state:t}})},next(){return ut.put(`${ss}/next`)},pause(){return ut.put(`${ss}/pause`)},play(t={}){return ut.put(`${ss}/play`,null,{params:t})},previous(){return ut.put(`${ss}/previous`)},repeat(t){return ut.put(`${ss}/repeat`,null,{params:{state:t}})},seek(t){return ut.put(`${ss}/seek`,null,{params:{seek_ms:t}})},seekToPosition(t){return ut.put(`${ss}/seek`,null,{params:{position_ms:t}})},setVolume(t,e=null){const n={volume:t,...e!==null&&{output_id:e}};return ut.put(`${ss}/volume`,null,{params:n})},shuffle(t){return ut.put(`${ss}/shuffle`,null,{params:{state:t}})},state(){return ut.get(ss)},stop(){return ut.put(`${ss}/stop`)}},{t:uy}=Gs.global,Ni="./api/queue",ae={async add(t,e=!1){if(e){const{current:s}=Ms();s?.id&&(t.position=s.position+1)}const n=await ut.post(`${Ni}/items/add`,null,{params:t});return ko().add({text:uy("server.appended-tracks",{count:n.count}),timeout:2e3,type:"info"}),n},addExpression(t,e=!1){return this.add({expression:t},e)},addUri(t,e=!1){return this.add({uris:t},e)},clear(){return ut.put(`${Ni}/clear`)},move(t,e){return ut.put(`${Ni}/items/${t}`,null,{params:{new_position:e}})},playExpression(t,e,n){const s={clear:"true",expression:t,playback:"start",playback_from_position:n,shuffle:e};return ut.post(`${Ni}/items/add`,null,{params:s})},playUri(t,e,n){const s={clear:"true",playback:"start",playback_from_position:n,shuffle:e,uris:t};return ut.post(`${Ni}/items/add`,null,{params:s})},remove(t){return ut.delete(`${Ni}/items/${t}`)},async saveToPlaylist(t){const{data:e}=await ut.post(`${Ni}/save`,null,{params:{name:t}});return ko().add({text:uy("server.queue-saved",{name:t}),timeout:2e3,type:"info"}),e},state(){return ut.get(Ni)}},lI={state(){return ut.get("./api/config")}},jo=Ds("ConfigurationStore",{actions:{async initialise(){this.$state=await lI.state()}},state:()=>({allow_modifying_stored_playlists:!1,buildoptions:[],default_playlist_directory:"",directories:[],hide_singles:!1,library_name:"",radio_playlists:!1,version:"",websocket_port:0})}),Ms=Ds("QueueStore",{actions:{async initialise(){this.$state=await ae.state()}},getters:{current(t){const e=Wn();return e.initialise(),t.items.find(n=>n.id===e.item_id)??{}},isEmpty(t){return t.count===0},isPauseAllowed(t){return t.current&&t.current.data_kind!=="pipe"},isSavingAllowed(){const t=jo();return t.allow_modifying_stored_playlists&&t.default_playlist_directory}},state:()=>({count:0,items:[],version:0})}),Wn=Ds("PlayerStore",{actions:{async initialise(){this.$state=await en.state();const t=Ms();t.current.track_id&&Tt.track(t.current.track_id).then(e=>{this.lyricsContent=e.lyrics||""})}},getters:{isMuted:t=>t.volume===0,isPlaying:t=>t.state==="play",isRepeatAll:t=>t.repeat==="all",isRepeatOff:t=>t.repeat==="off",isRepeatSingle:t=>t.repeat==="single",isStopped:t=>t.state==="stop"},state:()=>({consume:!1,item_id:0,item_length_ms:0,item_progress_ms:0,lyricsContent:"",repeat:"off",showLyrics:!1,shuffle:!1,state:"stop",volume:0})}),cI={name:"ControlVolume",components:{ControlSlider:Ku},setup(){return{playerStore:Wn()}},data(){return{volume:0}},computed:{icon(){return this.playerStore.isMuted?"volume-off":"volume-high"}},watch:{"playerStore.volume"(){this.playerStore.isMuted||(this.volume=this.playerStore.volume)}},methods:{changeVolume(){en.setVolume(this.playerStore.volume)},toggle(){this.playerStore.isMuted?this.playerStore.volume=this.volume:this.playerStore.volume=0,this.changeVolume()}}},uI={class:"media is-align-items-center mb-0"},dI={class:"media-left"},fI={class:"media-content"},hI=["textContent"];function pI(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-slider");return O(),F("div",uI,[P("div",dI,[P("button",{class:"button is-small",onClick:e[0]||(e[0]=(...l)=>r.toggle&&r.toggle(...l))},[E(o,{class:"icon",name:r.icon},null,8,["name"])])]),P("div",fI,[P("div",{class:"is-size-7 is-uppercase",textContent:et(t.$t("navigation.volume"))},null,8,hI),E(a,{value:s.playerStore.volume,"onUpdate:value":e[1]||(e[1]=l=>s.playerStore.volume=l),max:100,onChange:r.changeVolume},null,8,["value","onChange"])])])}const mI=nt(cI,[["render",pI]]),zd="./api/outputs",Yc={state(){return ut.get(zd)},toggle(t){return ut.put(`${zd}/${t}/toggle`)},update(t,e){return ut.put(`${zd}/${t}`,e)}},gI={name:"ControlOutputVolume",components:{ControlSlider:Ku},props:{output:{required:!0,type:Object}},data(){return{volume:this.output.volume}},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(){en.setVolume(this.volume,this.output.id)},toggle(){Yc.update(this.output.id,{selected:!this.output.selected})}}},yI={class:"media is-align-items-center mb-0"},bI={class:"media-left"},vI={class:"media-content"},_I=["textContent"];function SI(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-slider");return O(),F("div",yI,[P("div",bI,[P("button",{class:Gt(["button is-small",{"has-text-grey-light":!n.output.selected}]),onClick:e[0]||(e[0]=(...l)=>r.toggle&&r.toggle(...l))},[E(o,{class:"icon",name:r.icon,title:n.output.type},null,8,["name","title"])],2)]),P("div",vI,[P("div",{class:Gt(["is-size-7 is-uppercase",{"has-text-grey-light":!n.output.selected}]),textContent:et(n.output.name)},null,10,_I),E(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 EI=nt(gI,[["render",SI]]),wI={name:"ControlPlayerBack",props:{offset:{required:!0,type:Number}},setup(){return{playerStore:Wn(),queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty||this.playerStore.isStopped},visible(){return["podcast","audiobook"].includes(this.queueStore.current.media_kind)}},methods:{seek(){en.seek(this.offset*-1)}}},kI=["disabled"];function CI(t,e,n,s,i,r){const o=w("mdicon");return r.visible?(O(),F("button",{key:0,disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.seek&&r.seek(...a))},[E(o,{class:"icon",name:"rewind-10",title:t.$t("player.button.seek-backward")},null,8,["title"])],8,kI)):_t("",!0)}const TI=nt(wI,[["render",CI]]),AI={name:"ControlPlayerConsume",setup(){return{playerStore:Wn()}},methods:{toggle(){en.consume(!this.playerStore.consume)}}};function OI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{class:Gt({"is-dark":s.playerStore.consume}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:"fire",size:"16",title:t.$t("player.button.consume")},null,8,["title"])],2)}const xI=nt(AI,[["render",OI]]),II={name:"ControlPlayerForward",props:{offset:{required:!0,type:Number}},setup(){return{playerStore:Wn(),queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty||this.playerStore.isStopped},visible(){return["podcast","audiobook"].includes(this.queueStore.current.media_kind)}},methods:{seek(){en.seek(this.offset)}}},NI=["disabled"];function PI(t,e,n,s,i,r){const o=w("mdicon");return r.visible?(O(),F("button",{key:0,disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.seek&&r.seek(...a))},[E(o,{class:"icon",name:"fast-forward-30",title:t.$t("player.button.seek-forward")},null,8,["title"])],8,NI)):_t("",!0)}const RI=nt(II,[["render",PI]]),DI={name:"ControlPlayerLyrics",setup(){return{playerStore:Wn()}},computed:{icon(){return this.playerStore.showLyrics?"script-text-play":"script-text-outline"}},methods:{toggle(){this.playerStore.showLyrics=!this.playerStore.showLyrics}}};function LI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{class:Gt({"is-dark":s.playerStore.showLyrics}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:r.icon,size:16,title:t.$t("player.button.toggle-lyrics")},null,8,["name","title"])],2)}const MI=nt(DI,[["render",LI]]),$I={name:"ControlPlayerNext",setup(){return{queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty}},methods:{next(){en.next()}}},FI=["disabled"];function VI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.next&&r.next(...a))},[E(o,{class:"icon",name:"skip-forward",title:t.$t("player.button.skip-forward")},null,8,["title"])],8,FI)}const UI=nt($I,[["render",VI]]),HI={name:"ControlPlayerPlay",setup(){return{playerStore:Wn(),queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty},icon(){if(this.playerStore.isPlaying){if(this.queueStore.isPauseAllowed)return"pause"}else return"play";return"stop"}},methods:{toggle(){this.playerStore.isPlaying&&this.queueStore.isPauseAllowed?en.pause():this.playerStore.isPlaying&&!this.queueStore.isPauseAllowed?en.stop():en.play()}}},jI=["disabled"];function BI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:r.icon,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],8,jI)}const WI=nt(HI,[["render",BI]]),GI={name:"ControlPlayerPrevious",setup(){return{queueStore:Ms()}},computed:{disabled(){return this.queueStore.isEmpty}},methods:{previous(){en.previous()}}},KI=["disabled"];function qI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{disabled:r.disabled,onClick:e[0]||(e[0]=(...a)=>r.previous&&r.previous(...a))},[E(o,{class:"icon",name:"skip-backward",title:t.$t("player.button.skip-backward")},null,8,["title"])],8,KI)}const zI=nt(GI,[["render",qI]]),XI={name:"ControlPlayerRepeat",setup(){return{playerStore:Wn()}},computed:{icon(){return this.playerStore.isRepeatAll?"repeat":this.playerStore.isRepeatSingle?"repeat-once":"repeat-off"}},methods:{toggle(){this.playerStore.isRepeatAll?en.repeat("single"):this.playerStore.isRepeatSingle?en.repeat("off"):en.repeat("all")}}};function YI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{class:Gt({"is-dark":!s.playerStore.isRepeatOff}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:r.icon,size:16,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],2)}const ZI=nt(XI,[["render",YI]]),JI={name:"ControlPlayerShuffle",setup(){return{playerStore:Wn()}},computed:{icon(){return this.playerStore.shuffle?"shuffle":"shuffle-disabled"}},methods:{toggle(){en.shuffle(!this.playerStore.shuffle)}}};function QI(t,e,n,s,i,r){const o=w("mdicon");return O(),F("button",{class:Gt({"is-dark":s.playerStore.shuffle}),onClick:e[0]||(e[0]=(...a)=>r.toggle&&r.toggle(...a))},[E(o,{class:"icon",name:r.icon,size:16,title:t.$t(`player.button.${r.icon}`)},null,8,["name","title"])],2)}const tN=nt(JI,[["render",QI]]),Hl={audio:null,play(t){this.audio=new Audio(`${String(t||"")}?x=${Date.now()}`),this.audio.crossOrigin="anonymous";const e=new(window.AudioContext||window.webkitAudioContext);e.createMediaElementSource(this.audio).connect(e.destination),this.audio.addEventListener("canplay",()=>{e.resume().then(()=>{this.audio.play()})}),this.audio.load()},setVolume(t){this.audio&&(this.audio.volume=Math.max(0,Math.min(1,Number(t)||0)))},stop(){try{this.audio?.pause()}catch{}}},eN={name:"ControlStreamVolume",components:{ControlSlider:Ku},emits:["change","mute"],data(){return{loading:!1,playing:!1,volume:10}},unmounted(){this.closeAudio()},methods:{changeVolume(){Hl.setVolume(this.volume/100)},closeAudio(){Hl.stop(),this.playing=!1,this.loading=!1},playChannel(){this.loading=!0,Hl.play("/stream.mp3"),this.changeVolume();const t=Hl.audio;t&&(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()}))},togglePlay(){this.playing||this.loading?this.closeAudio():this.playChannel()}}},nN={class:"media is-align-items-center mb-0"},sN={class:"media-left"},iN={class:"media-content is-align-items-center"},rN=["textContent"],oN={href:"stream.mp3",class:"ml-2",target:"_blank"};function aN(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-slider");return O(),F("div",nN,[P("div",sN,[P("button",{class:Gt(["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))},[E(o,{class:"icon",name:"broadcast"})],2)]),P("div",iN,[P("div",{class:Gt(["is-flex",{"has-text-grey-light":!i.playing}])},[P("div",{class:"is-size-7 is-uppercase",textContent:et(t.$t("navigation.stream"))},null,8,rN),P("a",oN,[E(o,{class:"icon is-small",name:"open-in-new"})])],2),E(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 lN=nt(eN,[["render",aN]]),Ap=Ds("OutputsStore",{actions:{async initialise(){this.$state=await Yc.state()}},state:()=>({outputs:[]})}),cN={name:"NavbarBottom",components:{ControlLink:r_,ControlMainVolume:mI,ControlOutputVolume:EI,ControlPlayerBack:TI,ControlPlayerConsume:xI,ControlPlayerForward:RI,ControlPlayerLyrics:MI,ControlPlayerNext:UI,ControlPlayerPlay:WI,ControlPlayerPrevious:zI,ControlPlayerRepeat:ZI,ControlPlayerShuffle:tN,ControlStreamVolume:lN},setup(){return{notificationsStore:ko(),outputsStore:Ap(),queueStore:Ms(),uiStore:ts()}},computed:{isPlayerPage(){return this.$route.name==="player"},metadata(){const{current:t}=this.queueStore;return[t.artist,t.album].filter(Boolean).join(" - ")}}},uN={class:"navbar-brand is-flex-grow-1"},dN={class:"is-text-clipped"},fN=["textContent"],hN=["textContent"],pN={class:"dropdown-menu is-mobile"},mN={class:"dropdown-content"},gN={class:"dropdown-item pt-0"},yN={class:"dropdown-item is-flex is-justify-content-center"},bN={class:"buttons has-addons"};function vN(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-link"),l=w("control-player-previous"),c=w("control-player-back"),u=w("control-player-play"),d=w("control-player-forward"),f=w("control-player-next"),h=w("control-main-volume"),p=w("control-output-volume"),m=w("control-stream-volume"),_=w("control-player-repeat"),y=w("control-player-shuffle"),v=w("control-player-consume"),g=w("control-player-lyrics");return O(),F("nav",{class:Gt(["navbar is-fixed-bottom",{"is-bottom":!r.isPlayerPage}])},[P("div",uN,[E(a,{class:"navbar-item",to:{name:"queue"}},{default:M(()=>[E(o,{class:"icon",name:"playlist-play"})]),_:1}),r.isPlayerPage?(O(),F(it,{key:0},[E(l,{class:"navbar-item ml-auto"}),E(c,{class:"navbar-item",offset:1e4}),E(u,{class:"navbar-item"}),E(d,{class:"navbar-item",offset:3e4}),E(f,{class:"navbar-item mr-auto"})],64)):(O(),F(it,{key:1},[E(a,{to:{name:"player"},exact:"",class:"navbar-item is-justify-content-flex-start is-expanded is-clipped is-size-7"},{default:M(()=>[P("div",dN,[P("strong",{textContent:et(s.queueStore.current.title)},null,8,fN),e[1]||(e[1]=P("br",null,null,-1)),P("span",{textContent:et(r.metadata)},null,8,hN)])]),_:1}),E(u,{class:"navbar-item"})],64)),P("a",{class:"navbar-item",onClick:e[0]||(e[0]=(...b)=>s.uiStore.togglePlayerMenu&&s.uiStore.togglePlayerMenu(...b))},[E(o,{class:"icon",name:s.uiStore.showPlayerMenu?"chevron-down":"chevron-up"},null,8,["name"])]),P("div",{class:Gt(["dropdown is-up is-right",{"is-active":s.uiStore.showPlayerMenu}])},[P("div",pN,[P("div",mN,[P("div",gN,[E(h),(O(!0),F(it,null,de(s.outputsStore.outputs,b=>(O(),yt(p,{key:b.id,output:b},null,8,["output"]))),128)),E(m)]),e[2]||(e[2]=P("hr",{class:"dropdown-divider"},null,-1)),P("div",yN,[P("div",bN,[E(_,{class:"button"}),E(y,{class:"button"}),E(v,{class:"button"}),E(g,{class:"button"})])])])])],2)])],2)}const _N=nt(cN,[["render",vN],["__scopeId","data-v-77d048ef"]]),qu=Ds("SearchStore",{actions:{add(t){const e=this.history.indexOf(t);e!==-1&&this.history.splice(e,1),this.history.unshift(t),this.history.length>5&&this.history.pop()},remove(t){const e=this.history.indexOf(t);e!==-1&&this.history.splice(e,1)}},state:()=>({history:[],query:"",source:"search-library"})}),dy="./api/settings",o_={state(){return ut.get(dy)},update(t){return ut.put(`${dy}/${t.category}/${t.name}`,t)}},{t:jl,availableLocales:fy}=Gs.global,Js=Ds("SettingsStore",{actions:{currentAppearance(){return this.$state.appearance},currentLocale(){const t=fy;let e=t.find(s=>s===Gs.global.locale.value);const[n]=Gs.global.locale.value.split("-");return e||(e=t.find(s=>s===n)),e||(e=t.find(s=>s.split("-")[0]===n)),e||(e=Gs.global.fallbackLocale),e},get(t,e){return this.categories.find(n=>n.name===t)?.options.find(n=>n.name===e)??{}},async initialise(){this.$state=await o_.state()},setAppearance(t){this.$state.appearance=t;const e=document.documentElement;t==="auto"?e.removeAttribute("data-theme"):e.setAttribute("data-theme",t)},setLocale(t){Gs.global.locale.value=t},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)}},getters:{appearances(){return[{id:"auto",name:jl("settings.appearance.auto")},{id:"light",name:jl("settings.appearance.light")},{id:"dark",name:jl("settings.appearance.dark")}]},locales(){return fy.map(t=>({id:t,name:jl(`language.${t}`)}))},recentlyAddedLimit:t=>t.get("webinterface","recently_added_limit")?.value??100,showComposerForGenre:t=>t.get("webinterface","show_composer_for_genre")?.value??null,showComposerNowPlaying:t=>t.get("webinterface","show_composer_now_playing")?.value??!1,showCoverArtworkInAlbumLists:t=>t.get("artwork","show_cover_artwork_in_album_lists")?.value??!1,showFilepathNowPlaying:t=>t.get("webinterface","show_filepath_now_playing")?.value??!1,showMenuItemAudiobooks:t=>t.get("webinterface","show_menu_item_audiobooks")?.value??!1,showMenuItemFiles:t=>t.get("webinterface","show_menu_item_files")?.value??!1,showMenuItemMusic:t=>t.get("webinterface","show_menu_item_music")?.value??!1,showMenuItemPlaylists:t=>t.get("webinterface","show_menu_item_playlists")?.value??!1,showMenuItemPodcasts:t=>t.get("webinterface","show_menu_item_podcasts")?.value??!1,showMenuItemRadio:t=>t.get("webinterface","show_menu_item_radio")?.value??!1,showMenuItemSearch:t=>t.get("webinterface","show_menu_item_search")?.value??!1},state:()=>({appearance:"auto",categories:[]})}),SN={name:"NavbarTop",components:{ControlLink:r_},setup(){return{searchStore:qu(),servicesStore:Qn(),settingsStore:Js(),uiStore:ts()}},computed:{menus(){return[{icon:"music-box-multiple",key:"navigation.playlists",name:"playlists",show:this.settingsStore.showMenuItemPlaylists},{icon:"music",key:"navigation.music",name:"music",show:this.settingsStore.showMenuItemMusic},{key:"navigation.artists",name:"music-artists",sub:!0},{key:"navigation.albums",name:"music-albums",sub:!0},{key:"navigation.genres",name:"music-genres",sub:!0},{key:"navigation.composers",name:"music-composers",sub:!0},{key:"navigation.spotify",name:"music-spotify",show:this.servicesStore.isSpotifyActive,sub:!0},{icon:"microphone",key:"navigation.podcasts",name:"podcasts",show:this.settingsStore.showMenuItemPodcasts},{icon:"book-open-variant",key:"navigation.audiobooks",name:"audiobooks",show:this.settingsStore.showMenuItemAudiobooks},{icon:"radio",key:"navigation.radio",name:"radio",show:this.settingsStore.showMenuItemRadio},{icon:"folder-open",key:"navigation.files",name:"files",show:this.settingsStore.showMenuItemFiles},{icon:"magnify",key:"navigation.search",name:this.searchStore.source,show:this.settingsStore.showMenuItemSearch},{separator:!0},{key:"navigation.settings",name:"settings-webinterface"},{action:this.openUpdateDialog,key:"navigation.update-library"},{key:"navigation.about",name:"about"}]}},methods:{openUpdateDialog(){this.uiStore.showUpdateDialog=!0,this.uiStore.hideMenus()}}},EN={class:"navbar is-fixed-top is-top"},wN={class:"navbar-brand is-flex-grow-1"},kN={class:"dropdown-menu is-mobile"},CN={class:"dropdown-content"},TN={key:0,class:"my-3"},AN=["onClick","textContent"],ON={key:0,class:"icon-text"},xN=["textContent"];function IN(t,e,n,s,i,r){const o=w("mdicon"),a=w("control-link");return O(),F("nav",EN,[P("div",wN,[(O(!0),F(it,null,de(r.menus.filter(l=>l.show&&!l.sub),l=>(O(),yt(a,{key:l.name,to:{name:l.name},class:"navbar-item is-hidden-mobile"},{default:M(()=>[E(o,{class:"icon",name:l.icon,size:"16"},null,8,["name"])]),_:2},1032,["to"]))),128)),P("a",{class:"navbar-item ml-auto",onClick:e[0]||(e[0]=(...l)=>s.uiStore.toggleBurgerMenu&&s.uiStore.toggleBurgerMenu(...l))},[E(o,{class:"icon",name:s.uiStore.showBurgerMenu?"close":"menu"},null,8,["name"])]),P("div",{class:Gt(["dropdown is-right",{"is-active":s.uiStore.showBurgerMenu}])},[P("div",kN,[P("div",CN,[(O(!0),F(it,null,de(r.menus,l=>(O(),F(it,{key:l.name},[l.separator?(O(),F("hr",TN)):l.action?(O(),F("a",{key:1,class:"dropdown-item",onClick:Bn(l.action,["stop","prevent"]),textContent:et(t.$t(l.key))},null,8,AN)):(O(),yt(a,{key:2,to:{name:l.name},class:"dropdown-item"},{default:M(()=>[l.icon?(O(),F("span",ON,[E(o,{class:"icon",name:l.icon,size:"16"},null,8,["name"])])):_t("",!0),P("span",{class:Gt({"pl-5":l.sub,"has-text-weight-semibold":l.icon}),textContent:et(t.$t(l.key))},null,10,xN)]),_:2},1032,["to"]))],64))),128))])])],2)])])}const NN=nt(SN,[["render",IN]]);function Op(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function zu(t){if(Object.prototype.hasOwnProperty.call(t,"__esModule"))return t;var e=t.default;if(typeof e=="function"){var n=function s(){var i=!1;try{i=this instanceof s}catch{}return i?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 hc={exports:{}},PN=hc.exports,hy;function RN(){return hy||(hy=1,(function(t){(function(e,n){t.exports?t.exports=n():e.ReconnectingWebSocket=n()})(PN,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(h){a.onopen(h)}),d.addEventListener("close",function(h){a.onclose(h)}),d.addEventListener("connecting",function(h){a.onconnecting(h)}),d.addEventListener("message",function(h){a.onmessage(h)}),d.addEventListener("error",function(h){a.onerror(h)}),this.addEventListener=d.addEventListener.bind(d),this.removeEventListener=d.removeEventListener.bind(d),this.dispatchEvent=d.dispatchEvent.bind(d);function f(h,p){var m=document.createEvent("CustomEvent");return m.initCustomEvent(h,!1,!1,p),m}this.open=function(h){if(l=new WebSocket(a.url,s||[]),h){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 p=l,m=setTimeout(function(){(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","connection-timeout",a.url),u=!0,p.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=h,h=!1,d.dispatchEvent(y)},l.onclose=function(_){if(clearTimeout(v),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),!h&&!u&&((a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","onclose",a.url),d.dispatchEvent(f("close")));var v=a.reconnectInterval*Math.pow(a.reconnectDecay,a.reconnectAttempts);setTimeout(function(){a.reconnectAttempts++,a.open(!0)},v>a.maxReconnectInterval?a.maxReconnectInterval:v)}},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(h){if(l)return(a.debug||e.debugAll)&&console.debug("ReconnectingWebSocket","send",a.url,h),l.send(h);throw"INVALID_STATE_ERR : Pausing to reconnect websocket"},this.close=function(h,p){typeof h>"u"&&(h=1e3),c=!0,l&&l.close(h,p)},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})})(hc)),hc.exports}var DN=RN();const LN=Op(DN),MN={name:"App",components:{ListNotifications:sC,ModalDialogRemotePairing:sx,ModalDialogUpdate:nI,NavbarBottom:_N,NavbarTop:NN},setup(){return{configurationStore:jo(),libraryStore:Gu(),notificationsStore:ko(),outputsStore:Ap(),playerStore:Wn(),queueStore:Ms(),remotesStore:kp(),servicesStore:Qn(),settingsStore:Js(),uiStore:ts()}},data(){return{handlers:{},scheduledHandlers:new Map}},watch:{"uiStore.showBurgerMenu"(){this.updateClipping()},"uiStore.showPlayerMenu"(){this.updateClipping()}},created(){this.handlers={database:[this.libraryStore.initialise],lastfm:[this.servicesStore.initialiseLastfm],options:[this.playerStore.initialise],outputs:[this.outputsStore.initialise],pairing:[this.remotesStore.initialise],player:[this.playerStore.initialise],queue:[this.queueStore.initialise],settings:[this.settingsStore.initialise],spotify:[this.servicesStore.initialiseSpotify],update:[this.libraryStore.initialise],volume:[this.playerStore.initialise,this.outputsStore.initialise]},this.$router.beforeEach(async(t,e,n)=>{await this.configurationStore.initialise(),this.updateClipping(),t.path===e.path&&t.hash||this.$Progress.start(),n()}),this.$router.afterEach(()=>{this.$Progress.finish()}),this.connect()},beforeUnmount(){this.scheduledHandlers.forEach(t=>clearTimeout(t)),this.scheduledHandlers.clear()},methods:{async connect(){try{await this.configurationStore.initialise(),this.uiStore.hideSingles=this.configurationStore.hide_singles,document.title=this.configurationStore.library_name,this.openWebsocket()}catch{this.notificationsStore.add({text:this.$t("server.connection-failed"),topic:"connection",type:"danger"})}},createWebsocket(){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 LN(s,"notify",{maxReconnectInterval:2e3,reconnectInterval:1e3})},handleEvents(t=[]){t.forEach(e=>{(this.handlers[e]||[]).forEach(s=>{if(!this.scheduledHandlers.has(s)){const i=setTimeout(()=>{s.call(this),this.scheduledHandlers.delete(s)},50);this.scheduledHandlers.set(s,i)}})})},openWebsocket(){const t=this.createWebsocket(),e=["database","lastfm","options","outputs","pairing","player","queue","settings","spotify","update","volume"];t.onopen=()=>{t.send(JSON.stringify({notify:e})),this.handleEvents(e)},window.addEventListener("focus",()=>{this.handleEvents(e)}),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&this.handleEvents(e)}),t.onmessage=n=>{const s=JSON.parse(n.data).notify;this.handleEvents(s)}},updateClipping(){this.uiStore.showBurgerMenu||this.uiStore.showPlayerMenu?document.querySelector("html").classList.add("is-clipped"):document.querySelector("html").classList.remove("is-clipped")}}};function $N(t,e,n,s,i,r){const o=w("vue-progress-bar"),a=w("navbar-top"),l=w("router-view"),c=w("modal-dialog-remote-pairing"),u=w("modal-dialog-update"),d=w("list-notifications"),f=w("navbar-bottom");return O(),F(it,null,[E(o,{class:"has-background-primary"}),E(a),E(l,null,{default:M(({Component:h})=>[(O(),yt(Jh(h)))]),_:1}),E(c,{show:s.remotesStore.active,onClose:e[0]||(e[0]=h=>s.remotesStore.active=!1)},null,8,["show"]),E(u,{show:s.uiStore.showUpdateDialog,onClose:e[1]||(e[1]=h=>s.uiStore.showUpdateDialog=!1)},null,8,["show"]),ms(E(d,null,null,512),[[Hc,!s.uiStore.showBurgerMenu]]),E(f),ms(P("div",{class:"overlay-fullscreen",onClick:e[2]||(e[2]=(...h)=>s.uiStore.hideMenus&&s.uiStore.hideMenus(...h))},null,512),[[Hc,s.uiStore.showBurgerMenu||s.uiStore.showPlayerMenu]])],64)}const FN=nt(MN,[["render",$N]]),a_=function(){return document.ontouchstart!==null?"click":"touchstart"},Zc="__vue_click_away__",l_=function(t,e,n){c_(t);let s=n.context,i=e.value,r=!1;setTimeout(function(){r=!0},0),t[Zc]=function(o){if((!t||!t.contains(o.target))&&i&&r&&typeof i=="function")return i.call(s,o)},document.addEventListener(a_(),t[Zc],!1)},c_=function(t){document.removeEventListener(a_(),t[Zc],!1),delete t[Zc]},VN=function(t,e,n){e.value!==e.oldValue&&l_(t,e,n)},UN={install:function(t){t.directive("click-away",HN)}},HN={mounted:l_,updated:VN,unmounted:c_};var Hs=(t=>(t.LOADING="loading",t.LOADED="loaded",t.ERROR="error",t))(Hs||{});const jN=typeof window<"u"&&window!==null,BN=qN(),WN=Object.prototype.propertyIsEnumerable,py=Object.getOwnPropertySymbols;function Ta(t){return typeof t=="function"||toString.call(t)==="[object Object]"}function GN(t){return typeof t=="object"?t===null:typeof t!="function"}function KN(t){return t!=="__proto__"&&t!=="constructor"&&t!=="prototype"}function qN(){return jN&&"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 zN(t,...e){if(!Ta(t))throw new TypeError("expected the first argument to be an object");if(e.length===0||typeof Symbol!="function"||typeof py!="function")return t;for(const n of e){const s=py(n);for(const i of s)WN.call(n,i)&&(t[i]=n[i])}return t}function u_(t,...e){let n=0;for(GN(t)&&(t=e[n++]),t||(t={});n{this._logger("Not support IntersectionObserver!")})),this._initIntersectionObserver(e,s,r,o,a)}update(e,n){if(!e)return;this._realObserver(e)?.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){e&&(this._realObserver(e)?.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(Hs.LOADED,i,e)},()=>{e.onload=null,this._lifecycle(Hs.ERROR,i,e),this._realObserver(e)?.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){const o=this.options.observerOptions;this._images.set(e,new IntersectionObserver(a=>{Array.prototype.forEach.call(a,l=>{r&&r>0?this._delayedIntersectionCallback(e,l,r,n,s,i):this._intersectionCallback(e,l,n,s,i)})},o)),this._realObserver(e)?.observe(e)}_intersectionCallback(e,n,s,i,r){n.isIntersecting&&(this._realObserver(e)?.unobserve(n.target),this._setImageSrc(e,s,i,r))}_delayedIntersectionCallback(e,n,s,i,r,o){if(n.isIntersecting){if(n.target.hasAttribute(qr))return;const a=setTimeout(()=>{this._intersectionCallback(e,n,i,r,o),n.target.removeAttribute(qr)},s);n.target.setAttribute(qr,String(a))}else n.target.hasAttribute(qr)&&(clearTimeout(Number(n.target.getAttribute(qr))),n.target.removeAttribute(qr))}_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 Ta(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 Hs.LOADING:s?.setAttribute("lazy",Hs.LOADING),n?.loading&&n.loading(s);break;case Hs.LOADED:s?.setAttribute("lazy",Hs.LOADED),n?.loaded&&n.loaded(s);break;case Hs.ERROR:s?.setAttribute("lazy",Hs.ERROR),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 JN={install(t,e){const n=new ZN(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 Xd={exports:{}},Yd={exports:{}},Zd={};/** * @vue/compiler-core v3.5.18 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const wo=Symbol(""),po=Symbol(""),Wu=Symbol(""),Ba=Symbol(""),wp=Symbol(""),Qi=Symbol(""),kp=Symbol(""),Tp=Symbol(""),Gu=Symbol(""),Ku=Symbol(""),Ho=Symbol(""),zu=Symbol(""),Cp=Symbol(""),qu=Symbol(""),Xu=Symbol(""),Yu=Symbol(""),Zu=Symbol(""),Ju=Symbol(""),Qu=Symbol(""),Ap=Symbol(""),Op=Symbol(""),ul=Symbol(""),Wa=Symbol(""),td=Symbol(""),ed=Symbol(""),ko=Symbol(""),Uo=Symbol(""),nd=Symbol(""),Kc=Symbol(""),r_=Symbol(""),zc=Symbol(""),Ga=Symbol(""),o_=Symbol(""),a_=Symbol(""),sd=Symbol(""),l_=Symbol(""),c_=Symbol(""),id=Symbol(""),xp=Symbol(""),Nr={[wo]:"Fragment",[po]:"Teleport",[Wu]:"Suspense",[Ba]:"KeepAlive",[wp]:"BaseTransition",[Qi]:"openBlock",[kp]:"createBlock",[Tp]:"createElementBlock",[Gu]:"createVNode",[Ku]:"createElementVNode",[Ho]:"createCommentVNode",[zu]:"createTextVNode",[Cp]:"createStaticVNode",[qu]:"resolveComponent",[Xu]:"resolveDynamicComponent",[Yu]:"resolveDirective",[Zu]:"resolveFilter",[Ju]:"withDirectives",[Qu]:"renderList",[Ap]:"renderSlot",[Op]:"createSlots",[ul]:"toDisplayString",[Wa]:"mergeProps",[td]:"normalizeClass",[ed]:"normalizeStyle",[ko]:"normalizeProps",[Uo]:"guardReactiveProps",[nd]:"toHandlers",[Kc]:"camelize",[r_]:"capitalize",[zc]:"toHandlerKey",[Ga]:"setBlockTracking",[o_]:"pushScopeId",[a_]:"popScopeId",[sd]:"withCtx",[l_]:"unref",[c_]:"isRef",[id]:"withMemo",[xp]:"isMemoSame"};function u_(t){Object.getOwnPropertySymbols(t).forEach(e=>{Nr[e]=t[e]})}const gN={HTML:0,0:"HTML",SVG:1,1:"SVG",MATH_ML:2,2:"MATH_ML"},yN={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"},bN={ELEMENT:0,0:"ELEMENT",COMPONENT:1,1:"COMPONENT",SLOT:2,2:"SLOT",TEMPLATE:3,3:"TEMPLATE"},vN={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 d_(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 To(t,e,n,s,i,r,o,a=!1,l=!1,c=!1,u=Ze){return t&&(a?(t.helper(Qi),t.helper(Mr(t.inSSR,c))):t.helper(Dr(t.inSSR,c)),o&&t.helper(Ju)),{type:13,tag:e,props:n,children:s,patchFlag:i,dynamicProps:r,directives:o,isBlock:a,disableTracking:l,isComponent:c,loc:u}}function Yi(t,e=Ze){return{type:17,loc:e,elements:t}}function zn(t,e=Ze){return{type:15,loc:e,properties:t}}function Me(t,e){return{type:16,loc:Ze,key:Dt(t)?Rt(t,!0):t,value:e}}function Rt(t,e=!1,n=Ze,s=0){return{type:4,loc:n,content:t,isStatic:e,constType:e?3:s}}function _N(t,e){return{type:5,loc:e,content:Dt(t)?Rt(t,!1,e):t}}function us(t,e=Ze){return{type:8,loc:e,children:t}}function ze(t,e=[],n=Ze){return{type:14,loc:n,callee:t,arguments:e}}function Pr(t,e=void 0,n=!1,s=!1,i=Ze){return{type:18,params:t,returns:e,newline:n,isSlot:s,loc:i}}function qc(t,e,n,s=!0){return{type:19,test:t,consequent:e,alternate:n,newline:s,loc:Ze}}function f_(t,e,n=!1,s=!1){return{type:20,index:t,value:e,needPauseTracking:n,inVOnce:s,needArraySpread:!1,loc:Ze}}function h_(t){return{type:21,body:t,loc:Ze}}function SN(t){return{type:22,elements:t,loc:Ze}}function EN(t,e,n){return{type:23,test:t,consequent:e,alternate:n,loc:Ze}}function wN(t,e){return{type:24,left:t,right:e,loc:Ze}}function kN(t){return{type:25,expressions:t,loc:Ze}}function TN(t){return{type:26,returns:t,loc:Ze}}function Dr(t,e){return t||e?Gu:Ku}function Mr(t,e){return t||e?kp:Tp}function rd(t,{helper:e,removeHelper:n,inSSR:s}){t.isBlock||(t.isBlock=!0,n(Dr(s,t.isComponent)),e(Qi),e(Mr(s,t.isComponent)))}const uy=new Uint8Array([123,123]),dy=new Uint8Array([125,125]);function fy(t){return t>=97&&t<=122||t>=65&&t<=90}function Kn(t){return t===32||t===10||t===9||t===12||t===13}function Ni(t){return t===47||t===62||Kn(t)}function Xc(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?Ni(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||Kn(e)){const n=this.index-this.currentSequence.length;if(this.sectionStart=e||(this.state===28?this.currentSequence===dn.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 AN={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"},ON={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