- 修复BCryptPasswordEncoder密码验证问题 - 实现密码设置提示弹窗功能(仅对无密码用户显示一次) - 优化修改密码逻辑和验证流程 - 更新Welcome页面背景样式 - 清理临时SQL文件和测试代码 - 移动数据库备份文件到database/backups目录 - 删除不必要的MD文档和临时文件
26 lines
139 KiB
JavaScript
26 lines
139 KiB
JavaScript
import{y as Bt,ac as Ur,g as dt,ao as Ia,i as Ca,m as Da,U as Sa,s as Vr,r as ve,c as Z,a2 as Aa,h as bt,Q as Tt,k as Na,R as oe,a0 as Fa,ax as Oa,ay as Ra,az as wa,z as le,A as Rt,B,P as ae,aA as Ma,al as ce,I as ge,J as z,u as pe,M as Se,O as we,aB as Ua,D as Zt,au as Va,aC as Wa}from"./vue-vendor-164775a6.js";import{a as xa}from"./utils-edfcd65b.js";import{E as ne,a as $a,i as Ga}from"./element-plus-83a396df.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))n(o);new MutationObserver(o=>{for(const a of o)if(a.type==="childList")for(const s of a.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&n(s)}).observe(document,{childList:!0,subtree:!0});function r(o){const a={};return o.integrity&&(a.integrity=o.integrity),o.referrerPolicy&&(a.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?a.credentials="include":o.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(o){if(o.ep)return;o.ep=!0;const a=r(o);fetch(o.href,a)}})();/*!
|
||
* shared v9.14.5
|
||
* (c) 2025 kazuya kawaguchi
|
||
* Released under the MIT License.
|
||
*/function Ha(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const kt=typeof window<"u",Ne=(e,t=!1)=>t?Symbol.for(e):Symbol(e),Ba=(e,t,r)=>Ya({l:e,k:t,s:r}),Ya=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),X=e=>typeof e=="number"&&isFinite(e),qa=e=>xr(e)==="[object Date]",Ae=e=>xr(e)==="[object RegExp]",Lt=e=>R(e)&&Object.keys(e).length===0,te=Object.assign,ja=Object.create,G=(e=null)=>ja(e);let er;const Le=()=>er||(er=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:G());function tr(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function rr(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function Ka(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(n,o,a)=>`${o}="${rr(a)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(n,o,a)=>`${o}='${rr(a)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(n=>{e=e.replace(n,"$1javascript:")}),e}const za=Object.prototype.hasOwnProperty;function _e(e,t){return za.call(e,t)}const q=Array.isArray,Y=e=>typeof e=="function",C=e=>typeof e=="string",U=e=>typeof e=="boolean",W=e=>e!==null&&typeof e=="object",Xa=e=>W(e)&&Y(e.then)&&Y(e.catch),Wr=Object.prototype.toString,xr=e=>Wr.call(e),R=e=>{if(!W(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},Ja=e=>e==null?"":q(e)||R(e)&&e.toString===Wr?JSON.stringify(e,null,2):String(e);function Qa(e,t=""){return e.reduce((r,n,o)=>o===0?r+n:r+t+n,"")}function It(e){let t=e;return()=>++t}const Et=e=>!W(e)||q(e);function vt(e,t){if(Et(e)||Et(t))throw new Error("Invalid value");const r=[{src:e,des:t}];for(;r.length;){const{src:n,des:o}=r.pop();Object.keys(n).forEach(a=>{a!=="__proto__"&&(W(n[a])&&!W(o[a])&&(o[a]=Array.isArray(n[a])?[]:G()),Et(o[a])||Et(n[a])?o[a]=n[a]:r.push({src:n[a],des:o[a]}))})}}/*!
|
||
* message-compiler v9.14.5
|
||
* (c) 2025 kazuya kawaguchi
|
||
* Released under the MIT License.
|
||
*/function Za(e,t,r){return{line:e,column:t,offset:r}}function Pt(e,t,r){const n={start:e,end:t};return r!=null&&(n.source=r),n}const en=/\{([0-9a-zA-Z]+)\}/g;function $r(e,...t){return t.length===1&&tn(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(en,(r,n)=>t.hasOwnProperty(n)?t[n]:"")}const Gr=Object.assign,ar=e=>typeof e=="string",tn=e=>e!==null&&typeof e=="object";function Hr(e,t=""){return e.reduce((r,n,o)=>o===0?r+n:r+t+n,"")}const Yt={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},rn={[Yt.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function an(e,t,...r){const n=$r(rn[e]||"",...r||[]),o={message:String(n),code:e};return t&&(o.location=t),o}const O={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},nn={[O.EXPECTED_TOKEN]:"Expected token: '{0}'",[O.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[O.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[O.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[O.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[O.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[O.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[O.EMPTY_PLACEHOLDER]:"Empty placeholder",[O.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[O.INVALID_LINKED_FORMAT]:"Invalid linked format",[O.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[O.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[O.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[O.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[O.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[O.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function je(e,t,r={}){const{domain:n,messages:o,args:a}=r,s=$r((o||nn)[e]||"",...a||[]),u=new SyntaxError(String(s));return u.code=e,t&&(u.location=t),u.domain=n,u}function on(e){throw e}const ke=" ",sn="\r",se=`
|
||
`,ln=String.fromCharCode(8232),un=String.fromCharCode(8233);function cn(e){const t=e;let r=0,n=1,o=1,a=0;const s=I=>t[I]===sn&&t[I+1]===se,u=I=>t[I]===se,c=I=>t[I]===un,d=I=>t[I]===ln,y=I=>s(I)||u(I)||c(I)||d(I),E=()=>r,g=()=>n,L=()=>o,b=()=>a,k=I=>s(I)||c(I)||d(I)?se:t[I],S=()=>k(r),A=()=>k(r+a);function M(){return a=0,y(r)&&(n++,o=0),s(r)&&r++,r++,o++,t[r]}function f(){return s(r+a)&&a++,a++,t[r+a]}function p(){r=0,n=1,o=1,a=0}function T(I=0){a=I}function h(){const I=r+a;for(;I!==r;)M();a=0}return{index:E,line:g,column:L,peekOffset:b,charAt:k,currentChar:S,currentPeek:A,next:M,peek:f,reset:p,resetPeek:T,skipToPeek:h}}const De=void 0,dn=".",nr="'",mn="tokenizer";function fn(e,t={}){const r=t.location!==!1,n=cn(e),o=()=>n.index(),a=()=>Za(n.line(),n.column(),n.index()),s=a(),u=o(),c={currentType:14,offset:u,startLoc:s,endLoc:s,lastType:14,lastOffset:u,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},d=()=>c,{onError:y}=t;function E(i,l,_,...F){const j=d();if(l.column+=_,l.offset+=_,y){const w=r?Pt(j.startLoc,l):null,m=je(i,w,{domain:mn,args:F});y(m)}}function g(i,l,_){i.endLoc=a(),i.currentType=l;const F={type:l};return r&&(F.loc=Pt(i.startLoc,i.endLoc)),_!=null&&(F.value=_),F}const L=i=>g(i,14);function b(i,l){return i.currentChar()===l?(i.next(),l):(E(O.EXPECTED_TOKEN,a(),0,l),"")}function k(i){let l="";for(;i.currentPeek()===ke||i.currentPeek()===se;)l+=i.currentPeek(),i.peek();return l}function S(i){const l=k(i);return i.skipToPeek(),l}function A(i){if(i===De)return!1;const l=i.charCodeAt(0);return l>=97&&l<=122||l>=65&&l<=90||l===95}function M(i){if(i===De)return!1;const l=i.charCodeAt(0);return l>=48&&l<=57}function f(i,l){const{currentType:_}=l;if(_!==2)return!1;k(i);const F=A(i.currentPeek());return i.resetPeek(),F}function p(i,l){const{currentType:_}=l;if(_!==2)return!1;k(i);const F=i.currentPeek()==="-"?i.peek():i.currentPeek(),j=M(F);return i.resetPeek(),j}function T(i,l){const{currentType:_}=l;if(_!==2)return!1;k(i);const F=i.currentPeek()===nr;return i.resetPeek(),F}function h(i,l){const{currentType:_}=l;if(_!==8)return!1;k(i);const F=i.currentPeek()===".";return i.resetPeek(),F}function I(i,l){const{currentType:_}=l;if(_!==9)return!1;k(i);const F=A(i.currentPeek());return i.resetPeek(),F}function N(i,l){const{currentType:_}=l;if(!(_===8||_===12))return!1;k(i);const F=i.currentPeek()===":";return i.resetPeek(),F}function D(i,l){const{currentType:_}=l;if(_!==10)return!1;const F=()=>{const w=i.currentPeek();return w==="{"?A(i.peek()):w==="@"||w==="%"||w==="|"||w===":"||w==="."||w===ke||!w?!1:w===se?(i.peek(),F()):V(i,!1)},j=F();return i.resetPeek(),j}function J(i){k(i);const l=i.currentPeek()==="|";return i.resetPeek(),l}function ue(i){const l=k(i),_=i.currentPeek()==="%"&&i.peek()==="{";return i.resetPeek(),{isModulo:_,hasSpace:l.length>0}}function V(i,l=!0){const _=(j=!1,w="",m=!1)=>{const v=i.currentPeek();return v==="{"?w==="%"?!1:j:v==="@"||!v?w==="%"?!0:j:v==="%"?(i.peek(),_(j,"%",!0)):v==="|"?w==="%"||m?!0:!(w===ke||w===se):v===ke?(i.peek(),_(!0,ke,m)):v===se?(i.peek(),_(!0,se,m)):!0},F=_();return l&&i.resetPeek(),F}function re(i,l){const _=i.currentChar();return _===De?De:l(_)?(i.next(),_):null}function ze(i){const l=i.charCodeAt(0);return l>=97&&l<=122||l>=65&&l<=90||l>=48&&l<=57||l===95||l===36}function Xe(i){return re(i,ze)}function Ee(i){const l=i.charCodeAt(0);return l>=97&&l<=122||l>=65&&l<=90||l>=48&&l<=57||l===95||l===36||l===45}function Je(i){return re(i,Ee)}function Qe(i){const l=i.charCodeAt(0);return l>=48&&l<=57}function Ze(i){return re(i,Qe)}function et(i){const l=i.charCodeAt(0);return l>=48&&l<=57||l>=65&&l<=70||l>=97&&l<=102}function me(i){return re(i,et)}function Re(i){let l="",_="";for(;l=Ze(i);)_+=l;return _}function tt(i){S(i);const l=i.currentChar();return l!=="%"&&E(O.EXPECTED_TOKEN,a(),0,l),i.next(),"%"}function Ve(i){let l="";for(;;){const _=i.currentChar();if(_==="{"||_==="}"||_==="@"||_==="|"||!_)break;if(_==="%")if(V(i))l+=_,i.next();else break;else if(_===ke||_===se)if(V(i))l+=_,i.next();else{if(J(i))break;l+=_,i.next()}else l+=_,i.next()}return l}function rt(i){S(i);let l="",_="";for(;l=Je(i);)_+=l;return i.currentChar()===De&&E(O.UNTERMINATED_CLOSING_BRACE,a(),0),_}function at(i){S(i);let l="";return i.currentChar()==="-"?(i.next(),l+=`-${Re(i)}`):l+=Re(i),i.currentChar()===De&&E(O.UNTERMINATED_CLOSING_BRACE,a(),0),l}function _t(i){return i!==nr&&i!==se}function nt(i){S(i),b(i,"'");let l="",_="";for(;l=re(i,_t);)l==="\\"?_+=ot(i):_+=l;const F=i.currentChar();return F===se||F===De?(E(O.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,a(),0),F===se&&(i.next(),b(i,"'")),_):(b(i,"'"),_)}function ot(i){const l=i.currentChar();switch(l){case"\\":case"'":return i.next(),`\\${l}`;case"u":return We(i,l,4);case"U":return We(i,l,6);default:return E(O.UNKNOWN_ESCAPE_SEQUENCE,a(),0,l),""}}function We(i,l,_){b(i,l);let F="";for(let j=0;j<_;j++){const w=me(i);if(!w){E(O.INVALID_UNICODE_ESCAPE_SEQUENCE,a(),0,`\\${l}${F}${i.currentChar()}`);break}F+=w}return`\\${l}${F}`}function st(i){return i!=="{"&&i!=="}"&&i!==ke&&i!==se}function it(i){S(i);let l="",_="";for(;l=re(i,st);)_+=l;return _}function lt(i){let l="",_="";for(;l=Xe(i);)_+=l;return _}function P(i){const l=_=>{const F=i.currentChar();return F==="{"||F==="%"||F==="@"||F==="|"||F==="("||F===")"||!F||F===ke?_:(_+=F,i.next(),l(_))};return l("")}function x(i){S(i);const l=b(i,"|");return S(i),l}function xe(i,l){let _=null;switch(i.currentChar()){case"{":return l.braceNest>=1&&E(O.NOT_ALLOW_NEST_PLACEHOLDER,a(),0),i.next(),_=g(l,2,"{"),S(i),l.braceNest++,_;case"}":return l.braceNest>0&&l.currentType===2&&E(O.EMPTY_PLACEHOLDER,a(),0),i.next(),_=g(l,3,"}"),l.braceNest--,l.braceNest>0&&S(i),l.inLinked&&l.braceNest===0&&(l.inLinked=!1),_;case"@":return l.braceNest>0&&E(O.UNTERMINATED_CLOSING_BRACE,a(),0),_=$e(i,l)||L(l),l.braceNest=0,_;default:{let j=!0,w=!0,m=!0;if(J(i))return l.braceNest>0&&E(O.UNTERMINATED_CLOSING_BRACE,a(),0),_=g(l,1,x(i)),l.braceNest=0,l.inLinked=!1,_;if(l.braceNest>0&&(l.currentType===5||l.currentType===6||l.currentType===7))return E(O.UNTERMINATED_CLOSING_BRACE,a(),0),l.braceNest=0,ut(i,l);if(j=f(i,l))return _=g(l,5,rt(i)),S(i),_;if(w=p(i,l))return _=g(l,6,at(i)),S(i),_;if(m=T(i,l))return _=g(l,7,nt(i)),S(i),_;if(!j&&!w&&!m)return _=g(l,13,it(i)),E(O.INVALID_TOKEN_IN_PLACEHOLDER,a(),0,_.value),S(i),_;break}}return _}function $e(i,l){const{currentType:_}=l;let F=null;const j=i.currentChar();switch((_===8||_===9||_===12||_===10)&&(j===se||j===ke)&&E(O.INVALID_LINKED_FORMAT,a(),0),j){case"@":return i.next(),F=g(l,8,"@"),l.inLinked=!0,F;case".":return S(i),i.next(),g(l,9,".");case":":return S(i),i.next(),g(l,10,":");default:return J(i)?(F=g(l,1,x(i)),l.braceNest=0,l.inLinked=!1,F):h(i,l)||N(i,l)?(S(i),$e(i,l)):I(i,l)?(S(i),g(l,12,lt(i))):D(i,l)?(S(i),j==="{"?xe(i,l)||F:g(l,11,P(i))):(_===8&&E(O.INVALID_LINKED_FORMAT,a(),0),l.braceNest=0,l.inLinked=!1,ut(i,l))}}function ut(i,l){let _={type:14};if(l.braceNest>0)return xe(i,l)||L(l);if(l.inLinked)return $e(i,l)||L(l);switch(i.currentChar()){case"{":return xe(i,l)||L(l);case"}":return E(O.UNBALANCED_CLOSING_BRACE,a(),0),i.next(),g(l,3,"}");case"@":return $e(i,l)||L(l);default:{if(J(i))return _=g(l,1,x(i)),l.braceNest=0,l.inLinked=!1,_;const{isModulo:j,hasSpace:w}=ue(i);if(j)return w?g(l,0,Ve(i)):g(l,4,tt(i));if(V(i))return g(l,0,Ve(i));break}}return _}function At(){const{currentType:i,offset:l,startLoc:_,endLoc:F}=c;return c.lastType=i,c.lastOffset=l,c.lastStartLoc=_,c.lastEndLoc=F,c.offset=o(),c.startLoc=a(),n.currentChar()===De?g(c,14):ut(n,c)}return{nextToken:At,currentOffset:o,currentPosition:a,context:d}}const pn="parser",gn=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function _n(e,t,r){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const n=parseInt(t||r,16);return n<=55295||n>=57344?String.fromCodePoint(n):"<22>"}}}function hn(e={}){const t=e.location!==!1,{onError:r,onWarn:n}=e;function o(f,p,T,h,...I){const N=f.currentPosition();if(N.offset+=h,N.column+=h,r){const D=t?Pt(T,N):null,J=je(p,D,{domain:pn,args:I});r(J)}}function a(f,p,T,h,...I){const N=f.currentPosition();if(N.offset+=h,N.column+=h,n){const D=t?Pt(T,N):null;n(an(p,D,I))}}function s(f,p,T){const h={type:f};return t&&(h.start=p,h.end=p,h.loc={start:T,end:T}),h}function u(f,p,T,h){h&&(f.type=h),t&&(f.end=p,f.loc&&(f.loc.end=T))}function c(f,p){const T=f.context(),h=s(3,T.offset,T.startLoc);return h.value=p,u(h,f.currentOffset(),f.currentPosition()),h}function d(f,p){const T=f.context(),{lastOffset:h,lastStartLoc:I}=T,N=s(5,h,I);return N.index=parseInt(p,10),f.nextToken(),u(N,f.currentOffset(),f.currentPosition()),N}function y(f,p,T){const h=f.context(),{lastOffset:I,lastStartLoc:N}=h,D=s(4,I,N);return D.key=p,T===!0&&(D.modulo=!0),f.nextToken(),u(D,f.currentOffset(),f.currentPosition()),D}function E(f,p){const T=f.context(),{lastOffset:h,lastStartLoc:I}=T,N=s(9,h,I);return N.value=p.replace(gn,_n),f.nextToken(),u(N,f.currentOffset(),f.currentPosition()),N}function g(f){const p=f.nextToken(),T=f.context(),{lastOffset:h,lastStartLoc:I}=T,N=s(8,h,I);return p.type!==12?(o(f,O.UNEXPECTED_EMPTY_LINKED_MODIFIER,T.lastStartLoc,0),N.value="",u(N,h,I),{nextConsumeToken:p,node:N}):(p.value==null&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,T.lastStartLoc,0,fe(p)),N.value=p.value||"",u(N,f.currentOffset(),f.currentPosition()),{node:N})}function L(f,p){const T=f.context(),h=s(7,T.offset,T.startLoc);return h.value=p,u(h,f.currentOffset(),f.currentPosition()),h}function b(f){const p=f.context(),T=s(6,p.offset,p.startLoc);let h=f.nextToken();if(h.type===9){const I=g(f);T.modifier=I.node,h=I.nextConsumeToken||f.nextToken()}switch(h.type!==10&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,p.lastStartLoc,0,fe(h)),h=f.nextToken(),h.type===2&&(h=f.nextToken()),h.type){case 11:h.value==null&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,p.lastStartLoc,0,fe(h)),T.key=L(f,h.value||"");break;case 5:h.value==null&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,p.lastStartLoc,0,fe(h)),T.key=y(f,h.value||"");break;case 6:h.value==null&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,p.lastStartLoc,0,fe(h)),T.key=d(f,h.value||"");break;case 7:h.value==null&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,p.lastStartLoc,0,fe(h)),T.key=E(f,h.value||"");break;default:{o(f,O.UNEXPECTED_EMPTY_LINKED_KEY,p.lastStartLoc,0);const I=f.context(),N=s(7,I.offset,I.startLoc);return N.value="",u(N,I.offset,I.startLoc),T.key=N,u(T,I.offset,I.startLoc),{nextConsumeToken:h,node:T}}}return u(T,f.currentOffset(),f.currentPosition()),{node:T}}function k(f){const p=f.context(),T=p.currentType===1?f.currentOffset():p.offset,h=p.currentType===1?p.endLoc:p.startLoc,I=s(2,T,h);I.items=[];let N=null,D=null;do{const V=N||f.nextToken();switch(N=null,V.type){case 0:V.value==null&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,p.lastStartLoc,0,fe(V)),I.items.push(c(f,V.value||""));break;case 6:V.value==null&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,p.lastStartLoc,0,fe(V)),I.items.push(d(f,V.value||""));break;case 4:D=!0;break;case 5:V.value==null&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,p.lastStartLoc,0,fe(V)),I.items.push(y(f,V.value||"",!!D)),D&&(a(f,Yt.USE_MODULO_SYNTAX,p.lastStartLoc,0,fe(V)),D=null);break;case 7:V.value==null&&o(f,O.UNEXPECTED_LEXICAL_ANALYSIS,p.lastStartLoc,0,fe(V)),I.items.push(E(f,V.value||""));break;case 8:{const re=b(f);I.items.push(re.node),N=re.nextConsumeToken||null;break}}}while(p.currentType!==14&&p.currentType!==1);const J=p.currentType===1?p.lastOffset:f.currentOffset(),ue=p.currentType===1?p.lastEndLoc:f.currentPosition();return u(I,J,ue),I}function S(f,p,T,h){const I=f.context();let N=h.items.length===0;const D=s(1,p,T);D.cases=[],D.cases.push(h);do{const J=k(f);N||(N=J.items.length===0),D.cases.push(J)}while(I.currentType!==14);return N&&o(f,O.MUST_HAVE_MESSAGES_IN_PLURAL,T,0),u(D,f.currentOffset(),f.currentPosition()),D}function A(f){const p=f.context(),{offset:T,startLoc:h}=p,I=k(f);return p.currentType===14?I:S(f,T,h,I)}function M(f){const p=fn(f,Gr({},e)),T=p.context(),h=s(0,T.offset,T.startLoc);return t&&h.loc&&(h.loc.source=f),h.body=A(p),e.onCacheKey&&(h.cacheKey=e.onCacheKey(f)),T.currentType!==14&&o(p,O.UNEXPECTED_LEXICAL_ANALYSIS,T.lastStartLoc,0,f[T.offset]||""),u(h,p.currentOffset(),p.currentPosition()),h}return{parse:M}}function fe(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function En(e,t={}){const r={ast:e,helpers:new Set};return{context:()=>r,helper:a=>(r.helpers.add(a),a)}}function or(e,t){for(let r=0;r<e.length;r++)qt(e[r],t)}function qt(e,t){switch(e.type){case 1:or(e.cases,t),t.helper("plural");break;case 2:or(e.items,t);break;case 6:{qt(e.key,t),t.helper("linked"),t.helper("type");break}case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named");break}}function yn(e,t={}){const r=En(e);r.helper("normalize"),e.body&&qt(e.body,r);const n=r.context();e.helpers=Array.from(n.helpers)}function vn(e){const t=e.body;return t.type===2?sr(t):t.cases.forEach(r=>sr(r)),e}function sr(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let r=0;r<e.items.length;r++){const n=e.items[r];if(!(n.type===3||n.type===9)||n.value==null)break;t.push(n.value)}if(t.length===e.items.length){e.static=Hr(t);for(let r=0;r<e.items.length;r++){const n=e.items[r];(n.type===3||n.type===9)&&delete n.value}}}}const bn="minifier";function He(e){switch(e.t=e.type,e.type){case 0:{const t=e;He(t.body),t.b=t.body,delete t.body;break}case 1:{const t=e,r=t.cases;for(let n=0;n<r.length;n++)He(r[n]);t.c=r,delete t.cases;break}case 2:{const t=e,r=t.items;for(let n=0;n<r.length;n++)He(r[n]);t.i=r,delete t.items,t.static&&(t.s=t.static,delete t.static);break}case 3:case 9:case 8:case 7:{const t=e;t.value&&(t.v=t.value,delete t.value);break}case 6:{const t=e;He(t.key),t.k=t.key,delete t.key,t.modifier&&(He(t.modifier),t.m=t.modifier,delete t.modifier);break}case 5:{const t=e;t.i=t.index,delete t.index;break}case 4:{const t=e;t.k=t.key,delete t.key;break}default:throw je(O.UNHANDLED_MINIFIER_NODE_TYPE,null,{domain:bn,args:[e.type]})}delete e.type}const Tn="parser";function kn(e,t){const{sourceMap:r,filename:n,breakLineCode:o,needIndent:a}=t,s=t.location!==!1,u={filename:n,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:o,needIndent:a,indentLevel:0};s&&e.loc&&(u.source=e.loc.source);const c=()=>u;function d(S,A){u.code+=S}function y(S,A=!0){const M=A?o:"";d(a?M+" ".repeat(S):M)}function E(S=!0){const A=++u.indentLevel;S&&y(A)}function g(S=!0){const A=--u.indentLevel;S&&y(A)}function L(){y(u.indentLevel)}return{context:c,push:d,indent:E,deindent:g,newline:L,helper:S=>`_${S}`,needIndent:()=>u.needIndent}}function Pn(e,t){const{helper:r}=e;e.push(`${r("linked")}(`),Ye(e,t.key),t.modifier?(e.push(", "),Ye(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Ln(e,t){const{helper:r,needIndent:n}=e;e.push(`${r("normalize")}([`),e.indent(n());const o=t.items.length;for(let a=0;a<o&&(Ye(e,t.items[a]),a!==o-1);a++)e.push(", ");e.deindent(n()),e.push("])")}function In(e,t){const{helper:r,needIndent:n}=e;if(t.cases.length>1){e.push(`${r("plural")}([`),e.indent(n());const o=t.cases.length;for(let a=0;a<o&&(Ye(e,t.cases[a]),a!==o-1);a++)e.push(", ");e.deindent(n()),e.push("])")}}function Cn(e,t){t.body?Ye(e,t.body):e.push("null")}function Ye(e,t){const{helper:r}=e;switch(t.type){case 0:Cn(e,t);break;case 1:In(e,t);break;case 2:Ln(e,t);break;case 6:Pn(e,t);break;case 8:e.push(JSON.stringify(t.value),t);break;case 7:e.push(JSON.stringify(t.value),t);break;case 5:e.push(`${r("interpolate")}(${r("list")}(${t.index}))`,t);break;case 4:e.push(`${r("interpolate")}(${r("named")}(${JSON.stringify(t.key)}))`,t);break;case 9:e.push(JSON.stringify(t.value),t);break;case 3:e.push(JSON.stringify(t.value),t);break;default:throw je(O.UNHANDLED_CODEGEN_NODE_TYPE,null,{domain:Tn,args:[t.type]})}}const Dn=(e,t={})=>{const r=ar(t.mode)?t.mode:"normal",n=ar(t.filename)?t.filename:"message.intl",o=!!t.sourceMap,a=t.breakLineCode!=null?t.breakLineCode:r==="arrow"?";":`
|
||
`,s=t.needIndent?t.needIndent:r!=="arrow",u=e.helpers||[],c=kn(e,{mode:r,filename:n,sourceMap:o,breakLineCode:a,needIndent:s});c.push(r==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),c.indent(s),u.length>0&&(c.push(`const { ${Hr(u.map(E=>`${E}: _${E}`),", ")} } = ctx`),c.newline()),c.push("return "),Ye(c,e),c.deindent(s),c.push("}"),delete e.helpers;const{code:d,map:y}=c.context();return{ast:e,code:d,map:y?y.toJSON():void 0}};function Sn(e,t={}){const r=Gr({},t),n=!!r.jit,o=!!r.minify,a=r.optimize==null?!0:r.optimize,u=hn(r).parse(e);return n?(a&&vn(u),o&&He(u),{ast:u,code:""}):(yn(u,r),Dn(u,r))}/*!
|
||
* core-base v9.14.5
|
||
* (c) 2025 kazuya kawaguchi
|
||
* Released under the MIT License.
|
||
*/function An(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Le().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Le().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Le().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function Te(e){return W(e)&&jt(e)===0&&(_e(e,"b")||_e(e,"body"))}const Br=["b","body"];function Nn(e){return Fe(e,Br)}const Yr=["c","cases"];function Fn(e){return Fe(e,Yr,[])}const qr=["s","static"];function On(e){return Fe(e,qr)}const jr=["i","items"];function Rn(e){return Fe(e,jr,[])}const Kr=["t","type"];function jt(e){return Fe(e,Kr)}const zr=["v","value"];function yt(e,t){const r=Fe(e,zr);if(r!=null)return r;throw mt(t)}const Xr=["m","modifier"];function wn(e){return Fe(e,Xr)}const Jr=["k","key"];function Mn(e){const t=Fe(e,Jr);if(t)return t;throw mt(6)}function Fe(e,t,r){for(let n=0;n<t.length;n++){const o=t[n];if(_e(e,o)&&e[o]!=null)return e[o]}return r}const Qr=[...Br,...Yr,...qr,...jr,...Jr,...Xr,...zr,...Kr];function mt(e){return new Error(`unhandled node type: ${e}`)}const Oe=[];Oe[0]={w:[0],i:[3,0],"[":[4],o:[7]};Oe[1]={w:[1],".":[2],"[":[4],o:[7]};Oe[2]={w:[2],i:[3,0],0:[3,0]};Oe[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]};Oe[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]};Oe[5]={"'":[4,0],o:8,l:[5,0]};Oe[6]={'"':[4,0],o:8,l:[6,0]};const Un=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function Vn(e){return Un.test(e)}function Wn(e){const t=e.charCodeAt(0),r=e.charCodeAt(e.length-1);return t===r&&(t===34||t===39)?e.slice(1,-1):e}function xn(e){if(e==null)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function $n(e){const t=e.trim();return e.charAt(0)==="0"&&isNaN(parseInt(e))?!1:Vn(t)?Wn(t):"*"+t}function Gn(e){const t=[];let r=-1,n=0,o=0,a,s,u,c,d,y,E;const g=[];g[0]=()=>{s===void 0?s=u:s+=u},g[1]=()=>{s!==void 0&&(t.push(s),s=void 0)},g[2]=()=>{g[0](),o++},g[3]=()=>{if(o>0)o--,n=4,g[0]();else{if(o=0,s===void 0||(s=$n(s),s===!1))return!1;g[1]()}};function L(){const b=e[r+1];if(n===5&&b==="'"||n===6&&b==='"')return r++,u="\\"+b,g[0](),!0}for(;n!==null;)if(r++,a=e[r],!(a==="\\"&&L())){if(c=xn(a),E=Oe[n],d=E[c]||E.l||8,d===8||(n=d[0],d[1]!==void 0&&(y=g[d[1]],y&&(u=a,y()===!1))))return;if(n===7)return t}}const ir=new Map;function Hn(e,t){return W(e)?e[t]:null}function Bn(e,t){if(!W(e))return null;let r=ir.get(t);if(r||(r=Gn(t),r&&ir.set(t,r)),!r)return null;const n=r.length;let o=e,a=0;for(;a<n;){const s=r[a];if(Qr.includes(s)&&Te(o))return null;const u=o[s];if(u===void 0||Y(o))return null;o=u,a++}return o}const Yn=e=>e,qn=e=>"",jn="text",Kn=e=>e.length===0?"":Qa(e),zn=Ja;function lr(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function Xn(e){const t=X(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(X(e.named.count)||X(e.named.n))?X(e.named.count)?e.named.count:X(e.named.n)?e.named.n:t:t}function Jn(e,t){t.count||(t.count=e),t.n||(t.n=e)}function Qn(e={}){const t=e.locale,r=Xn(e),n=W(e.pluralRules)&&C(t)&&Y(e.pluralRules[t])?e.pluralRules[t]:lr,o=W(e.pluralRules)&&C(t)&&Y(e.pluralRules[t])?lr:void 0,a=A=>A[n(r,A.length,o)],s=e.list||[],u=A=>s[A],c=e.named||G();X(e.pluralIndex)&&Jn(r,c);const d=A=>c[A];function y(A){const M=Y(e.messages)?e.messages(A):W(e.messages)?e.messages[A]:!1;return M||(e.parent?e.parent.message(A):qn)}const E=A=>e.modifiers?e.modifiers[A]:Yn,g=R(e.processor)&&Y(e.processor.normalize)?e.processor.normalize:Kn,L=R(e.processor)&&Y(e.processor.interpolate)?e.processor.interpolate:zn,b=R(e.processor)&&C(e.processor.type)?e.processor.type:jn,S={list:u,named:d,plural:a,linked:(A,...M)=>{const[f,p]=M;let T="text",h="";M.length===1?W(f)?(h=f.modifier||h,T=f.type||T):C(f)&&(h=f||h):M.length===2&&(C(f)&&(h=f||h),C(p)&&(T=p||T));const I=y(A)(S),N=T==="vnode"&&q(I)&&h?I[0]:I;return h?E(h)(N,T):N},message:y,type:b,interpolate:L,normalize:g,values:te(G(),s,c)};return S}let ft=null;function Zn(e){ft=e}function eo(e,t,r){ft&&ft.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:r})}const to=ro("function:translate");function ro(e){return t=>ft&&ft.emit(e,t)}const Zr=Yt.__EXTEND_POINT__,Me=It(Zr),ao={NOT_FOUND_KEY:Zr,FALLBACK_TO_TRANSLATE:Me(),CANNOT_FORMAT_NUMBER:Me(),FALLBACK_TO_NUMBER_FORMAT:Me(),CANNOT_FORMAT_DATE:Me(),FALLBACK_TO_DATE_FORMAT:Me(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:Me(),__EXTEND_POINT__:Me()},ea=O.__EXTEND_POINT__,Ue=It(ea),he={INVALID_ARGUMENT:ea,INVALID_DATE_ARGUMENT:Ue(),INVALID_ISO_DATE_ARGUMENT:Ue(),NOT_SUPPORT_NON_STRING_MESSAGE:Ue(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:Ue(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:Ue(),NOT_SUPPORT_LOCALE_TYPE:Ue(),__EXTEND_POINT__:Ue()};function be(e){return je(e,null,void 0)}function Kt(e,t){return t.locale!=null?ur(t.locale):ur(e.locale)}let Nt;function ur(e){if(C(e))return e;if(Y(e)){if(e.resolvedOnce&&Nt!=null)return Nt;if(e.constructor.name==="Function"){const t=e();if(Xa(t))throw be(he.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Nt=t}else throw be(he.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw be(he.NOT_SUPPORT_LOCALE_TYPE)}function no(e,t,r){return[...new Set([r,...q(t)?t:W(t)?Object.keys(t):C(t)?[t]:[r]])]}function ta(e,t,r){const n=C(r)?r:qe,o=e;o.__localeChainCache||(o.__localeChainCache=new Map);let a=o.__localeChainCache.get(n);if(!a){a=[];let s=[r];for(;q(s);)s=cr(a,s,t);const u=q(t)||!R(t)?t:t.default?t.default:null;s=C(u)?[u]:u,q(s)&&cr(a,s,!1),o.__localeChainCache.set(n,a)}return a}function cr(e,t,r){let n=!0;for(let o=0;o<t.length&&U(n);o++){const a=t[o];C(a)&&(n=oo(e,t[o],r))}return n}function oo(e,t,r){let n;const o=t.split("-");do{const a=o.join("-");n=so(e,a,r),o.splice(-1,1)}while(o.length&&n===!0);return n}function so(e,t,r){let n=!1;if(!e.includes(t)&&(n=!0,t)){n=t[t.length-1]!=="!";const o=t.replace(/!/g,"");e.push(o),(q(r)||R(r))&&r[o]&&(n=r[o])}return n}const io="9.14.5",Ct=-1,qe="en-US",dr="",mr=e=>`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function lo(){return{upper:(e,t)=>t==="text"&&C(e)?e.toUpperCase():t==="vnode"&&W(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&C(e)?e.toLowerCase():t==="vnode"&&W(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&C(e)?mr(e):t==="vnode"&&W(e)&&"__v_isVNode"in e?mr(e.children):e}}let ra;function fr(e){ra=e}let aa;function uo(e){aa=e}let na;function co(e){na=e}let oa=null;const mo=e=>{oa=e},fo=()=>oa;let sa=null;const pr=e=>{sa=e},po=()=>sa;let gr=0;function go(e={}){const t=Y(e.onWarn)?e.onWarn:Ha,r=C(e.version)?e.version:io,n=C(e.locale)||Y(e.locale)?e.locale:qe,o=Y(n)?qe:n,a=q(e.fallbackLocale)||R(e.fallbackLocale)||C(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:o,s=R(e.messages)?e.messages:Ft(o),u=R(e.datetimeFormats)?e.datetimeFormats:Ft(o),c=R(e.numberFormats)?e.numberFormats:Ft(o),d=te(G(),e.modifiers,lo()),y=e.pluralRules||G(),E=Y(e.missing)?e.missing:null,g=U(e.missingWarn)||Ae(e.missingWarn)?e.missingWarn:!0,L=U(e.fallbackWarn)||Ae(e.fallbackWarn)?e.fallbackWarn:!0,b=!!e.fallbackFormat,k=!!e.unresolving,S=Y(e.postTranslation)?e.postTranslation:null,A=R(e.processor)?e.processor:null,M=U(e.warnHtmlMessage)?e.warnHtmlMessage:!0,f=!!e.escapeParameter,p=Y(e.messageCompiler)?e.messageCompiler:ra,T=Y(e.messageResolver)?e.messageResolver:aa||Hn,h=Y(e.localeFallbacker)?e.localeFallbacker:na||no,I=W(e.fallbackContext)?e.fallbackContext:void 0,N=e,D=W(N.__datetimeFormatters)?N.__datetimeFormatters:new Map,J=W(N.__numberFormatters)?N.__numberFormatters:new Map,ue=W(N.__meta)?N.__meta:{};gr++;const V={version:r,cid:gr,locale:n,fallbackLocale:a,messages:s,modifiers:d,pluralRules:y,missing:E,missingWarn:g,fallbackWarn:L,fallbackFormat:b,unresolving:k,postTranslation:S,processor:A,warnHtmlMessage:M,escapeParameter:f,messageCompiler:p,messageResolver:T,localeFallbacker:h,fallbackContext:I,onWarn:t,__meta:ue};return V.datetimeFormats=u,V.numberFormats=c,V.__datetimeFormatters=D,V.__numberFormatters=J,__INTLIFY_PROD_DEVTOOLS__&&eo(V,r,ue),V}const Ft=e=>({[e]:G()});function zt(e,t,r,n,o){const{missing:a,onWarn:s}=e;if(a!==null){const u=a(e,r,t,o);return C(u)?u:t}else return t}function ct(e,t,r){const n=e;n.__localeChainCache=new Map,e.localeFallbacker(e,r,t)}function _o(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function ho(e,t){const r=t.indexOf(e);if(r===-1)return!1;for(let n=r+1;n<t.length;n++)if(_o(e,t[n]))return!0;return!1}function Ot(e){return r=>Eo(r,e)}function Eo(e,t){const r=Nn(t);if(r==null)throw mt(0);if(jt(r)===1){const a=Fn(r);return e.plural(a.reduce((s,u)=>[...s,_r(e,u)],[]))}else return _r(e,r)}function _r(e,t){const r=On(t);if(r!=null)return e.type==="text"?r:e.normalize([r]);{const n=Rn(t).reduce((o,a)=>[...o,wt(e,a)],[]);return e.normalize(n)}}function wt(e,t){const r=jt(t);switch(r){case 3:return yt(t,r);case 9:return yt(t,r);case 4:{const n=t;if(_e(n,"k")&&n.k)return e.interpolate(e.named(n.k));if(_e(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw mt(r)}case 5:{const n=t;if(_e(n,"i")&&X(n.i))return e.interpolate(e.list(n.i));if(_e(n,"index")&&X(n.index))return e.interpolate(e.list(n.index));throw mt(r)}case 6:{const n=t,o=wn(n),a=Mn(n);return e.linked(wt(e,a),o?wt(e,o):void 0,e.type)}case 7:return yt(t,r);case 8:return yt(t,r);default:throw new Error(`unhandled node on format message part: ${r}`)}}const ia=e=>e;let Be=G();function la(e,t={}){let r=!1;const n=t.onError||on;return t.onError=o=>{r=!0,n(o)},{...Sn(e,t),detectError:r}}const yo=(e,t)=>{if(!C(e))throw be(he.NOT_SUPPORT_NON_STRING_MESSAGE);{U(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||ia)(e),o=Be[n];if(o)return o;const{code:a,detectError:s}=la(e,t),u=new Function(`return ${a}`)();return s?u:Be[n]=u}};function vo(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&C(e)){U(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||ia)(e),o=Be[n];if(o)return o;const{ast:a,detectError:s}=la(e,{...t,location:!1,jit:!0}),u=Ot(a);return s?u:Be[n]=u}else{const r=e.cacheKey;if(r){const n=Be[r];return n||(Be[r]=Ot(e))}else return Ot(e)}}const hr=()=>"",de=e=>Y(e);function Er(e,...t){const{fallbackFormat:r,postTranslation:n,unresolving:o,messageCompiler:a,fallbackLocale:s,messages:u}=e,[c,d]=Mt(...t),y=U(d.missingWarn)?d.missingWarn:e.missingWarn,E=U(d.fallbackWarn)?d.fallbackWarn:e.fallbackWarn,g=U(d.escapeParameter)?d.escapeParameter:e.escapeParameter,L=!!d.resolvedMessage,b=C(d.default)||U(d.default)?U(d.default)?a?c:()=>c:d.default:r?a?c:()=>c:"",k=r||b!=="",S=Kt(e,d);g&&bo(d);let[A,M,f]=L?[c,S,u[S]||G()]:ua(e,c,S,s,E,y),p=A,T=c;if(!L&&!(C(p)||Te(p)||de(p))&&k&&(p=b,T=p),!L&&(!(C(p)||Te(p)||de(p))||!C(M)))return o?Ct:c;let h=!1;const I=()=>{h=!0},N=de(p)?p:ca(e,c,M,p,T,I);if(h)return p;const D=Po(e,M,f,d),J=Qn(D),ue=To(e,N,J);let V=n?n(ue,c):ue;if(g&&C(V)&&(V=Ka(V)),__INTLIFY_PROD_DEVTOOLS__){const re={timestamp:Date.now(),key:C(c)?c:de(p)?p.key:"",locale:M||(de(p)?p.locale:""),format:C(p)?p:de(p)?p.source:"",message:V};re.meta=te({},e.__meta,fo()||{}),to(re)}return V}function bo(e){q(e.list)?e.list=e.list.map(t=>C(t)?tr(t):t):W(e.named)&&Object.keys(e.named).forEach(t=>{C(e.named[t])&&(e.named[t]=tr(e.named[t]))})}function ua(e,t,r,n,o,a){const{messages:s,onWarn:u,messageResolver:c,localeFallbacker:d}=e,y=d(e,n,r);let E=G(),g,L=null;const b="translate";for(let k=0;k<y.length&&(g=y[k],E=s[g]||G(),(L=c(E,t))===null&&(L=E[t]),!(C(L)||Te(L)||de(L)));k++)if(!ho(g,y)){const S=zt(e,t,g,a,b);S!==t&&(L=S)}return[L,g,E]}function ca(e,t,r,n,o,a){const{messageCompiler:s,warnHtmlMessage:u}=e;if(de(n)){const d=n;return d.locale=d.locale||r,d.key=d.key||t,d}if(s==null){const d=()=>n;return d.locale=r,d.key=t,d}const c=s(n,ko(e,r,o,n,u,a));return c.locale=r,c.key=t,c.source=n,c}function To(e,t,r){return t(r)}function Mt(...e){const[t,r,n]=e,o=G();if(!C(t)&&!X(t)&&!de(t)&&!Te(t))throw be(he.INVALID_ARGUMENT);const a=X(t)?String(t):(de(t),t);return X(r)?o.plural=r:C(r)?o.default=r:R(r)&&!Lt(r)?o.named=r:q(r)&&(o.list=r),X(n)?o.plural=n:C(n)?o.default=n:R(n)&&te(o,n),[a,o]}function ko(e,t,r,n,o,a){return{locale:t,key:r,warnHtmlMessage:o,onError:s=>{throw a&&a(s),s},onCacheKey:s=>Ba(t,r,s)}}function Po(e,t,r,n){const{modifiers:o,pluralRules:a,messageResolver:s,fallbackLocale:u,fallbackWarn:c,missingWarn:d,fallbackContext:y}=e,g={locale:t,modifiers:o,pluralRules:a,messages:L=>{let b=s(r,L);if(b==null&&y){const[,,k]=ua(y,L,t,u,c,d);b=s(k,L)}if(C(b)||Te(b)){let k=!1;const A=ca(e,L,t,b,L,()=>{k=!0});return k?hr:A}else return de(b)?b:hr}};return e.processor&&(g.processor=e.processor),n.list&&(g.list=n.list),n.named&&(g.named=n.named),X(n.plural)&&(g.pluralIndex=n.plural),g}function yr(e,...t){const{datetimeFormats:r,unresolving:n,fallbackLocale:o,onWarn:a,localeFallbacker:s}=e,{__datetimeFormatters:u}=e,[c,d,y,E]=Ut(...t),g=U(y.missingWarn)?y.missingWarn:e.missingWarn;U(y.fallbackWarn)?y.fallbackWarn:e.fallbackWarn;const L=!!y.part,b=Kt(e,y),k=s(e,o,b);if(!C(c)||c==="")return new Intl.DateTimeFormat(b,E).format(d);let S={},A,M=null;const f="datetime format";for(let h=0;h<k.length&&(A=k[h],S=r[A]||{},M=S[c],!R(M));h++)zt(e,c,A,g,f);if(!R(M)||!C(A))return n?Ct:c;let p=`${A}__${c}`;Lt(E)||(p=`${p}__${JSON.stringify(E)}`);let T=u.get(p);return T||(T=new Intl.DateTimeFormat(A,te({},M,E)),u.set(p,T)),L?T.formatToParts(d):T.format(d)}const da=["localeMatcher","weekday","era","year","month","day","hour","minute","second","timeZoneName","formatMatcher","hour12","timeZone","dateStyle","timeStyle","calendar","dayPeriod","numberingSystem","hourCycle","fractionalSecondDigits"];function Ut(...e){const[t,r,n,o]=e,a=G();let s=G(),u;if(C(t)){const c=t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);if(!c)throw be(he.INVALID_ISO_DATE_ARGUMENT);const d=c[3]?c[3].trim().startsWith("T")?`${c[1].trim()}${c[3].trim()}`:`${c[1].trim()}T${c[3].trim()}`:c[1].trim();u=new Date(d);try{u.toISOString()}catch{throw be(he.INVALID_ISO_DATE_ARGUMENT)}}else if(qa(t)){if(isNaN(t.getTime()))throw be(he.INVALID_DATE_ARGUMENT);u=t}else if(X(t))u=t;else throw be(he.INVALID_ARGUMENT);return C(r)?a.key=r:R(r)&&Object.keys(r).forEach(c=>{da.includes(c)?s[c]=r[c]:a[c]=r[c]}),C(n)?a.locale=n:R(n)&&(s=n),R(o)&&(s=o),[a.key||"",u,a,s]}function vr(e,t,r){const n=e;for(const o in r){const a=`${t}__${o}`;n.__datetimeFormatters.has(a)&&n.__datetimeFormatters.delete(a)}}function br(e,...t){const{numberFormats:r,unresolving:n,fallbackLocale:o,onWarn:a,localeFallbacker:s}=e,{__numberFormatters:u}=e,[c,d,y,E]=Vt(...t),g=U(y.missingWarn)?y.missingWarn:e.missingWarn;U(y.fallbackWarn)?y.fallbackWarn:e.fallbackWarn;const L=!!y.part,b=Kt(e,y),k=s(e,o,b);if(!C(c)||c==="")return new Intl.NumberFormat(b,E).format(d);let S={},A,M=null;const f="number format";for(let h=0;h<k.length&&(A=k[h],S=r[A]||{},M=S[c],!R(M));h++)zt(e,c,A,g,f);if(!R(M)||!C(A))return n?Ct:c;let p=`${A}__${c}`;Lt(E)||(p=`${p}__${JSON.stringify(E)}`);let T=u.get(p);return T||(T=new Intl.NumberFormat(A,te({},M,E)),u.set(p,T)),L?T.formatToParts(d):T.format(d)}const ma=["localeMatcher","style","currency","currencyDisplay","currencySign","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","compactDisplay","notation","signDisplay","unit","unitDisplay","roundingMode","roundingPriority","roundingIncrement","trailingZeroDisplay"];function Vt(...e){const[t,r,n,o]=e,a=G();let s=G();if(!X(t))throw be(he.INVALID_ARGUMENT);const u=t;return C(r)?a.key=r:R(r)&&Object.keys(r).forEach(c=>{ma.includes(c)?s[c]=r[c]:a[c]=r[c]}),C(n)?a.locale=n:R(n)&&(s=n),R(o)&&(s=o),[a.key||"",u,a,s]}function Tr(e,t,r){const n=e;for(const o in r){const a=`${t}__${o}`;n.__numberFormatters.has(a)&&n.__numberFormatters.delete(a)}}An();/*!
|
||
* vue-i18n v9.14.5
|
||
* (c) 2025 kazuya kawaguchi
|
||
* Released under the MIT License.
|
||
*/const Lo="9.14.5";function Io(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Le().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Le().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Le().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Le().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Le().__INTLIFY_PROD_DEVTOOLS__=!1)}const fa=ao.__EXTEND_POINT__,Pe=It(fa);Pe(),Pe(),Pe(),Pe(),Pe(),Pe(),Pe(),Pe(),Pe();const pa=he.__EXTEND_POINT__,ie=It(pa),Q={UNEXPECTED_RETURN_TYPE:pa,INVALID_ARGUMENT:ie(),MUST_BE_CALL_SETUP_TOP:ie(),NOT_INSTALLED:ie(),NOT_AVAILABLE_IN_LEGACY_MODE:ie(),REQUIRED_VALUE:ie(),INVALID_VALUE:ie(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:ie(),NOT_INSTALLED_WITH_PROVIDE:ie(),UNEXPECTED_ERROR:ie(),NOT_COMPATIBLE_LEGACY_VUE_I18N:ie(),BRIDGE_SUPPORT_VUE_2_ONLY:ie(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:ie(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:ie(),__EXTEND_POINT__:ie()};function ee(e,...t){return je(e,null,void 0)}const Wt=Ne("__translateVNode"),xt=Ne("__datetimeParts"),$t=Ne("__numberParts"),ga=Ne("__setPluralRules"),_a=Ne("__injectWithOption"),Gt=Ne("__dispose");function pt(e){if(!W(e)||Te(e))return e;for(const t in e)if(_e(e,t))if(!t.includes("."))W(e[t])&&pt(e[t]);else{const r=t.split("."),n=r.length-1;let o=e,a=!1;for(let s=0;s<n;s++){if(r[s]==="__proto__")throw new Error(`unsafe key: ${r[s]}`);if(r[s]in o||(o[r[s]]=G()),!W(o[r[s]])){a=!0;break}o=o[r[s]]}if(a||(Te(o)?Qr.includes(r[n])||delete e[t]:(o[r[n]]=e[t],delete e[t])),!Te(o)){const s=o[r[n]];W(s)&&pt(s)}}return e}function Dt(e,t){const{messages:r,__i18n:n,messageResolver:o,flatJson:a}=t,s=R(r)?r:q(n)?G():{[e]:G()};if(q(n)&&n.forEach(u=>{if("locale"in u&&"resource"in u){const{locale:c,resource:d}=u;c?(s[c]=s[c]||G(),vt(d,s[c])):vt(d,s)}else C(u)&&vt(JSON.parse(u),s)}),o==null&&a)for(const u in s)_e(s,u)&&pt(s[u]);return s}function ha(e){return e.type}function Ea(e,t,r){let n=W(t.messages)?t.messages:G();"__i18nGlobal"in r&&(n=Dt(e.locale.value,{messages:n,__i18n:r.__i18nGlobal}));const o=Object.keys(n);o.length&&o.forEach(a=>{e.mergeLocaleMessage(a,n[a])});{if(W(t.datetimeFormats)){const a=Object.keys(t.datetimeFormats);a.length&&a.forEach(s=>{e.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(W(t.numberFormats)){const a=Object.keys(t.numberFormats);a.length&&a.forEach(s=>{e.mergeNumberFormat(s,t.numberFormats[s])})}}}function kr(e){return oe(Fa,null,e,0)}const Pr="__INTLIFY_META__",Lr=()=>[],Co=()=>!1;let Ir=0;function Cr(e){return(t,r,n,o)=>e(r,n,dt()||void 0,o)}const Do=()=>{const e=dt();let t=null;return e&&(t=ha(e)[Pr])?{[Pr]:t}:null};function Xt(e={},t){const{__root:r,__injectWithOption:n}=e,o=r===void 0,a=e.flatJson,s=kt?ve:Vr,u=!!e.translateExistCompatible;let c=U(e.inheritLocale)?e.inheritLocale:!0;const d=s(r&&c?r.locale.value:C(e.locale)?e.locale:qe),y=s(r&&c?r.fallbackLocale.value:C(e.fallbackLocale)||q(e.fallbackLocale)||R(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:d.value),E=s(Dt(d.value,e)),g=s(R(e.datetimeFormats)?e.datetimeFormats:{[d.value]:{}}),L=s(R(e.numberFormats)?e.numberFormats:{[d.value]:{}});let b=r?r.missingWarn:U(e.missingWarn)||Ae(e.missingWarn)?e.missingWarn:!0,k=r?r.fallbackWarn:U(e.fallbackWarn)||Ae(e.fallbackWarn)?e.fallbackWarn:!0,S=r?r.fallbackRoot:U(e.fallbackRoot)?e.fallbackRoot:!0,A=!!e.fallbackFormat,M=Y(e.missing)?e.missing:null,f=Y(e.missing)?Cr(e.missing):null,p=Y(e.postTranslation)?e.postTranslation:null,T=r?r.warnHtmlMessage:U(e.warnHtmlMessage)?e.warnHtmlMessage:!0,h=!!e.escapeParameter;const I=r?r.modifiers:R(e.modifiers)?e.modifiers:{};let N=e.pluralRules||r&&r.pluralRules,D;D=(()=>{o&&pr(null);const m={version:Lo,locale:d.value,fallbackLocale:y.value,messages:E.value,modifiers:I,pluralRules:N,missing:f===null?void 0:f,missingWarn:b,fallbackWarn:k,fallbackFormat:A,unresolving:!0,postTranslation:p===null?void 0:p,warnHtmlMessage:T,escapeParameter:h,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};m.datetimeFormats=g.value,m.numberFormats=L.value,m.__datetimeFormatters=R(D)?D.__datetimeFormatters:void 0,m.__numberFormatters=R(D)?D.__numberFormatters:void 0;const v=go(m);return o&&pr(v),v})(),ct(D,d.value,y.value);function ue(){return[d.value,y.value,E.value,g.value,L.value]}const V=Z({get:()=>d.value,set:m=>{d.value=m,D.locale=d.value}}),re=Z({get:()=>y.value,set:m=>{y.value=m,D.fallbackLocale=y.value,ct(D,d.value,m)}}),ze=Z(()=>E.value),Xe=Z(()=>g.value),Ee=Z(()=>L.value);function Je(){return Y(p)?p:null}function Qe(m){p=m,D.postTranslation=m}function Ze(){return M}function et(m){m!==null&&(f=Cr(m)),M=m,D.missing=f}const me=(m,v,H,K,Ce,ht)=>{ue();let Ge;try{__INTLIFY_PROD_DEVTOOLS__,o||(D.fallbackContext=r?po():void 0),Ge=m(D)}finally{__INTLIFY_PROD_DEVTOOLS__,o||(D.fallbackContext=void 0)}if(H!=="translate exists"&&X(Ge)&&Ge===Ct||H==="translate exists"&&!Ge){const[La,zs]=v();return r&&S?K(r):Ce(La)}else{if(ht(Ge))return Ge;throw ee(Q.UNEXPECTED_RETURN_TYPE)}};function Re(...m){return me(v=>Reflect.apply(Er,null,[v,...m]),()=>Mt(...m),"translate",v=>Reflect.apply(v.t,v,[...m]),v=>v,v=>C(v))}function tt(...m){const[v,H,K]=m;if(K&&!W(K))throw ee(Q.INVALID_ARGUMENT);return Re(v,H,te({resolvedMessage:!0},K||{}))}function Ve(...m){return me(v=>Reflect.apply(yr,null,[v,...m]),()=>Ut(...m),"datetime format",v=>Reflect.apply(v.d,v,[...m]),()=>dr,v=>C(v))}function rt(...m){return me(v=>Reflect.apply(br,null,[v,...m]),()=>Vt(...m),"number format",v=>Reflect.apply(v.n,v,[...m]),()=>dr,v=>C(v))}function at(m){return m.map(v=>C(v)||X(v)||U(v)?kr(String(v)):v)}const nt={normalize:at,interpolate:m=>m,type:"vnode"};function ot(...m){return me(v=>{let H;const K=v;try{K.processor=nt,H=Reflect.apply(Er,null,[K,...m])}finally{K.processor=null}return H},()=>Mt(...m),"translate",v=>v[Wt](...m),v=>[kr(v)],v=>q(v))}function We(...m){return me(v=>Reflect.apply(br,null,[v,...m]),()=>Vt(...m),"number format",v=>v[$t](...m),Lr,v=>C(v)||q(v))}function st(...m){return me(v=>Reflect.apply(yr,null,[v,...m]),()=>Ut(...m),"datetime format",v=>v[xt](...m),Lr,v=>C(v)||q(v))}function it(m){N=m,D.pluralRules=N}function lt(m,v){return me(()=>{if(!m)return!1;const H=C(v)?v:d.value,K=xe(H),Ce=D.messageResolver(K,m);return u?Ce!=null:Te(Ce)||de(Ce)||C(Ce)},()=>[m],"translate exists",H=>Reflect.apply(H.te,H,[m,v]),Co,H=>U(H))}function P(m){let v=null;const H=ta(D,y.value,d.value);for(let K=0;K<H.length;K++){const Ce=E.value[H[K]]||{},ht=D.messageResolver(Ce,m);if(ht!=null){v=ht;break}}return v}function x(m){const v=P(m);return v??(r?r.tm(m)||{}:{})}function xe(m){return E.value[m]||{}}function $e(m,v){if(a){const H={[m]:v};for(const K in H)_e(H,K)&&pt(H[K]);v=H[m]}E.value[m]=v,D.messages=E.value}function ut(m,v){E.value[m]=E.value[m]||{};const H={[m]:v};if(a)for(const K in H)_e(H,K)&&pt(H[K]);v=H[m],vt(v,E.value[m]),D.messages=E.value}function At(m){return g.value[m]||{}}function i(m,v){g.value[m]=v,D.datetimeFormats=g.value,vr(D,m,v)}function l(m,v){g.value[m]=te(g.value[m]||{},v),D.datetimeFormats=g.value,vr(D,m,v)}function _(m){return L.value[m]||{}}function F(m,v){L.value[m]=v,D.numberFormats=L.value,Tr(D,m,v)}function j(m,v){L.value[m]=te(L.value[m]||{},v),D.numberFormats=L.value,Tr(D,m,v)}Ir++,r&&kt&&(bt(r.locale,m=>{c&&(d.value=m,D.locale=m,ct(D,d.value,y.value))}),bt(r.fallbackLocale,m=>{c&&(y.value=m,D.fallbackLocale=m,ct(D,d.value,y.value))}));const w={id:Ir,locale:V,fallbackLocale:re,get inheritLocale(){return c},set inheritLocale(m){c=m,m&&r&&(d.value=r.locale.value,y.value=r.fallbackLocale.value,ct(D,d.value,y.value))},get availableLocales(){return Object.keys(E.value).sort()},messages:ze,get modifiers(){return I},get pluralRules(){return N||{}},get isGlobal(){return o},get missingWarn(){return b},set missingWarn(m){b=m,D.missingWarn=b},get fallbackWarn(){return k},set fallbackWarn(m){k=m,D.fallbackWarn=k},get fallbackRoot(){return S},set fallbackRoot(m){S=m},get fallbackFormat(){return A},set fallbackFormat(m){A=m,D.fallbackFormat=A},get warnHtmlMessage(){return T},set warnHtmlMessage(m){T=m,D.warnHtmlMessage=m},get escapeParameter(){return h},set escapeParameter(m){h=m,D.escapeParameter=m},t:Re,getLocaleMessage:xe,setLocaleMessage:$e,mergeLocaleMessage:ut,getPostTranslationHandler:Je,setPostTranslationHandler:Qe,getMissingHandler:Ze,setMissingHandler:et,[ga]:it};return w.datetimeFormats=Xe,w.numberFormats=Ee,w.rt=tt,w.te=lt,w.tm=x,w.d=Ve,w.n=rt,w.getDateTimeFormat=At,w.setDateTimeFormat=i,w.mergeDateTimeFormat=l,w.getNumberFormat=_,w.setNumberFormat=F,w.mergeNumberFormat=j,w[_a]=n,w[Wt]=ot,w[xt]=st,w[$t]=We,w}function So(e){const t=C(e.locale)?e.locale:qe,r=C(e.fallbackLocale)||q(e.fallbackLocale)||R(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,n=Y(e.missing)?e.missing:void 0,o=U(e.silentTranslationWarn)||Ae(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,a=U(e.silentFallbackWarn)||Ae(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,s=U(e.fallbackRoot)?e.fallbackRoot:!0,u=!!e.formatFallbackMessages,c=R(e.modifiers)?e.modifiers:{},d=e.pluralizationRules,y=Y(e.postTranslation)?e.postTranslation:void 0,E=C(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,g=!!e.escapeParameterHtml,L=U(e.sync)?e.sync:!0;let b=e.messages;if(R(e.sharedMessages)){const h=e.sharedMessages;b=Object.keys(h).reduce((N,D)=>{const J=N[D]||(N[D]={});return te(J,h[D]),N},b||{})}const{__i18n:k,__root:S,__injectWithOption:A}=e,M=e.datetimeFormats,f=e.numberFormats,p=e.flatJson,T=e.translateExistCompatible;return{locale:t,fallbackLocale:r,messages:b,flatJson:p,datetimeFormats:M,numberFormats:f,missing:n,missingWarn:o,fallbackWarn:a,fallbackRoot:s,fallbackFormat:u,modifiers:c,pluralRules:d,postTranslation:y,warnHtmlMessage:E,escapeParameter:g,messageResolver:e.messageResolver,inheritLocale:L,translateExistCompatible:T,__i18n:k,__root:S,__injectWithOption:A}}function Ht(e={},t){{const r=Xt(So(e)),{__extender:n}=e,o={id:r.id,get locale(){return r.locale.value},set locale(a){r.locale.value=a},get fallbackLocale(){return r.fallbackLocale.value},set fallbackLocale(a){r.fallbackLocale.value=a},get messages(){return r.messages.value},get datetimeFormats(){return r.datetimeFormats.value},get numberFormats(){return r.numberFormats.value},get availableLocales(){return r.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(a){},get missing(){return r.getMissingHandler()},set missing(a){r.setMissingHandler(a)},get silentTranslationWarn(){return U(r.missingWarn)?!r.missingWarn:r.missingWarn},set silentTranslationWarn(a){r.missingWarn=U(a)?!a:a},get silentFallbackWarn(){return U(r.fallbackWarn)?!r.fallbackWarn:r.fallbackWarn},set silentFallbackWarn(a){r.fallbackWarn=U(a)?!a:a},get modifiers(){return r.modifiers},get formatFallbackMessages(){return r.fallbackFormat},set formatFallbackMessages(a){r.fallbackFormat=a},get postTranslation(){return r.getPostTranslationHandler()},set postTranslation(a){r.setPostTranslationHandler(a)},get sync(){return r.inheritLocale},set sync(a){r.inheritLocale=a},get warnHtmlInMessage(){return r.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(a){r.warnHtmlMessage=a!=="off"},get escapeParameterHtml(){return r.escapeParameter},set escapeParameterHtml(a){r.escapeParameter=a},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(a){},get pluralizationRules(){return r.pluralRules||{}},__composer:r,t(...a){const[s,u,c]=a,d={};let y=null,E=null;if(!C(s))throw ee(Q.INVALID_ARGUMENT);const g=s;return C(u)?d.locale=u:q(u)?y=u:R(u)&&(E=u),q(c)?y=c:R(c)&&(E=c),Reflect.apply(r.t,r,[g,y||E||{},d])},rt(...a){return Reflect.apply(r.rt,r,[...a])},tc(...a){const[s,u,c]=a,d={plural:1};let y=null,E=null;if(!C(s))throw ee(Q.INVALID_ARGUMENT);const g=s;return C(u)?d.locale=u:X(u)?d.plural=u:q(u)?y=u:R(u)&&(E=u),C(c)?d.locale=c:q(c)?y=c:R(c)&&(E=c),Reflect.apply(r.t,r,[g,y||E||{},d])},te(a,s){return r.te(a,s)},tm(a){return r.tm(a)},getLocaleMessage(a){return r.getLocaleMessage(a)},setLocaleMessage(a,s){r.setLocaleMessage(a,s)},mergeLocaleMessage(a,s){r.mergeLocaleMessage(a,s)},d(...a){return Reflect.apply(r.d,r,[...a])},getDateTimeFormat(a){return r.getDateTimeFormat(a)},setDateTimeFormat(a,s){r.setDateTimeFormat(a,s)},mergeDateTimeFormat(a,s){r.mergeDateTimeFormat(a,s)},n(...a){return Reflect.apply(r.n,r,[...a])},getNumberFormat(a){return r.getNumberFormat(a)},setNumberFormat(a,s){r.setNumberFormat(a,s)},mergeNumberFormat(a,s){r.mergeNumberFormat(a,s)},getChoiceIndex(a,s){return-1}};return o.__extender=n,o}}const Jt={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function Ao({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,o)=>[...n,...o.type===Tt?o.children:[o]],[]):t.reduce((r,n)=>{const o=e[n];return o&&(r[n]=o()),r},G())}function ya(e){return Tt}const No=Bt({name:"i18n-t",props:te({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>X(e)||!isNaN(e)}},Jt),setup(e,t){const{slots:r,attrs:n}=t,o=e.i18n||Ke({useScope:e.scope,__useComponent:!0});return()=>{const a=Object.keys(r).filter(E=>E!=="_"),s=G();e.locale&&(s.locale=e.locale),e.plural!==void 0&&(s.plural=C(e.plural)?+e.plural:e.plural);const u=Ao(t,a),c=o[Wt](e.keypath,u,s),d=te(G(),n),y=C(e.tag)||W(e.tag)?e.tag:ya();return Ur(y,d,c)}}}),Dr=No;function Fo(e){return q(e)&&!C(e[0])}function va(e,t,r,n){const{slots:o,attrs:a}=t;return()=>{const s={part:!0};let u=G();e.locale&&(s.locale=e.locale),C(e.format)?s.key=e.format:W(e.format)&&(C(e.format.key)&&(s.key=e.format.key),u=Object.keys(e.format).reduce((g,L)=>r.includes(L)?te(G(),g,{[L]:e.format[L]}):g,G()));const c=n(e.value,s,u);let d=[s.key];q(c)?d=c.map((g,L)=>{const b=o[g.type],k=b?b({[g.type]:g.value,index:L,parts:c}):[g.value];return Fo(k)&&(k[0].key=`${g.type}-${L}`),k}):C(c)&&(d=[c]);const y=te(G(),a),E=C(e.tag)||W(e.tag)?e.tag:ya();return Ur(E,y,d)}}const Oo=Bt({name:"i18n-n",props:te({value:{type:Number,required:!0},format:{type:[String,Object]}},Jt),setup(e,t){const r=e.i18n||Ke({useScope:e.scope,__useComponent:!0});return va(e,t,ma,(...n)=>r[$t](...n))}}),Sr=Oo,Ro=Bt({name:"i18n-d",props:te({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Jt),setup(e,t){const r=e.i18n||Ke({useScope:e.scope,__useComponent:!0});return va(e,t,da,(...n)=>r[xt](...n))}}),Ar=Ro;function wo(e,t){const r=e;if(e.mode==="composition")return r.__getInstance(t)||e.global;{const n=r.__getInstance(t);return n!=null?n.__composer:e.global.__composer}}function Mo(e){const t=s=>{const{instance:u,modifiers:c,value:d}=s;if(!u||!u.$)throw ee(Q.UNEXPECTED_ERROR);const y=wo(e,u.$),E=Nr(d);return[Reflect.apply(y.t,y,[...Fr(E)]),y]};return{created:(s,u)=>{const[c,d]=t(u);kt&&e.global===d&&(s.__i18nWatcher=bt(d.locale,()=>{u.instance&&u.instance.$forceUpdate()})),s.__composer=d,s.textContent=c},unmounted:s=>{kt&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:u})=>{if(s.__composer){const c=s.__composer,d=Nr(u);s.textContent=Reflect.apply(c.t,c,[...Fr(d)])}},getSSRProps:s=>{const[u]=t(s);return{textContent:u}}}}function Nr(e){if(C(e))return{path:e};if(R(e)){if(!("path"in e))throw ee(Q.REQUIRED_VALUE,"path");return e}else throw ee(Q.INVALID_VALUE)}function Fr(e){const{path:t,locale:r,args:n,choice:o,plural:a}=e,s={},u=n||{};return C(r)&&(s.locale=r),X(o)&&(s.plural=o),X(a)&&(s.plural=a),[t,u,s]}function Uo(e,t,...r){const n=R(r[0])?r[0]:{},o=!!n.useI18nComponentName;(U(n.globalInstall)?n.globalInstall:!0)&&([o?"i18n":Dr.name,"I18nT"].forEach(s=>e.component(s,Dr)),[Sr.name,"I18nN"].forEach(s=>e.component(s,Sr)),[Ar.name,"I18nD"].forEach(s=>e.component(s,Ar))),e.directive("t",Mo(t))}function Vo(e,t,r){return{beforeCreate(){const n=dt();if(!n)throw ee(Q.UNEXPECTED_ERROR);const o=this.$options;if(o.i18n){const a=o.i18n;if(o.__i18n&&(a.__i18n=o.__i18n),a.__root=t,this===this.$root)this.$i18n=Or(e,a);else{a.__injectWithOption=!0,a.__extender=r.__vueI18nExtend,this.$i18n=Ht(a);const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}}else if(o.__i18n)if(this===this.$root)this.$i18n=Or(e,o);else{this.$i18n=Ht({__i18n:o.__i18n,__injectWithOption:!0,__extender:r.__vueI18nExtend,__root:t});const a=this.$i18n;a.__extender&&(a.__disposer=a.__extender(this.$i18n))}else this.$i18n=e;o.__i18nGlobal&&Ea(t,o,o),this.$t=(...a)=>this.$i18n.t(...a),this.$rt=(...a)=>this.$i18n.rt(...a),this.$tc=(...a)=>this.$i18n.tc(...a),this.$te=(a,s)=>this.$i18n.te(a,s),this.$d=(...a)=>this.$i18n.d(...a),this.$n=(...a)=>this.$i18n.n(...a),this.$tm=a=>this.$i18n.tm(a),r.__setInstance(n,this.$i18n)},mounted(){},unmounted(){const n=dt();if(!n)throw ee(Q.UNEXPECTED_ERROR);const o=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,o.__disposer&&(o.__disposer(),delete o.__disposer,delete o.__extender),r.__deleteInstance(n),delete this.$i18n}}}function Or(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[ga](t.pluralizationRules||e.pluralizationRules);const r=Dt(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(r).forEach(n=>e.mergeLocaleMessage(n,r[n])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>e.mergeNumberFormat(n,t.numberFormats[n])),e}const Wo=Ne("global-vue-i18n");function xo(e={},t){const r=__VUE_I18N_LEGACY_API__&&U(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=U(e.globalInjection)?e.globalInjection:!0,o=__VUE_I18N_LEGACY_API__&&r?!!e.allowComposition:!0,a=new Map,[s,u]=$o(e,r),c=Ne("");function d(g){return a.get(g)||null}function y(g,L){a.set(g,L)}function E(g){a.delete(g)}{const g={get mode(){return __VUE_I18N_LEGACY_API__&&r?"legacy":"composition"},get allowComposition(){return o},async install(L,...b){if(L.__VUE_I18N_SYMBOL__=c,L.provide(L.__VUE_I18N_SYMBOL__,g),R(b[0])){const A=b[0];g.__composerExtend=A.__composerExtend,g.__vueI18nExtend=A.__vueI18nExtend}let k=null;!r&&n&&(k=Xo(L,g.global)),__VUE_I18N_FULL_INSTALL__&&Uo(L,g,...b),__VUE_I18N_LEGACY_API__&&r&&L.mixin(Vo(u,u.__composer,g));const S=L.unmount;L.unmount=()=>{k&&k(),g.dispose(),S()}},get global(){return u},dispose(){s.stop()},__instances:a,__getInstance:d,__setInstance:y,__deleteInstance:E};return g}}function Ke(e={}){const t=dt();if(t==null)throw ee(Q.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw ee(Q.NOT_INSTALLED);const r=Go(t),n=Bo(r),o=ha(t),a=Ho(e,o);if(__VUE_I18N_LEGACY_API__&&r.mode==="legacy"&&!e.__useComponent){if(!r.allowComposition)throw ee(Q.NOT_AVAILABLE_IN_LEGACY_MODE);return Ko(t,a,n,e)}if(a==="global")return Ea(n,e,o),n;if(a==="parent"){let c=Yo(r,t,e.__useComponent);return c==null&&(c=n),c}const s=r;let u=s.__getInstance(t);if(u==null){const c=te({},e);"__i18n"in o&&(c.__i18n=o.__i18n),n&&(c.__root=n),u=Xt(c),s.__composerExtend&&(u[Gt]=s.__composerExtend(u)),jo(s,t,u),s.__setInstance(t,u)}return u}function $o(e,t,r){const n=Ia();{const o=__VUE_I18N_LEGACY_API__&&t?n.run(()=>Ht(e)):n.run(()=>Xt(e));if(o==null)throw ee(Q.UNEXPECTED_ERROR);return[n,o]}}function Go(e){{const t=Ca(e.isCE?Wo:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw ee(e.isCE?Q.NOT_INSTALLED_WITH_PROVIDE:Q.UNEXPECTED_ERROR);return t}}function Ho(e,t){return Lt(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function Bo(e){return e.mode==="composition"?e.global:e.global.__composer}function Yo(e,t,r=!1){let n=null;const o=t.root;let a=qo(t,r);for(;a!=null;){const s=e;if(e.mode==="composition")n=s.__getInstance(a);else if(__VUE_I18N_LEGACY_API__){const u=s.__getInstance(a);u!=null&&(n=u.__composer,r&&n&&!n[_a]&&(n=null))}if(n!=null||o===a)break;a=a.parent}return n}function qo(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function jo(e,t,r){Da(()=>{},t),Sa(()=>{const n=r;e.__deleteInstance(t);const o=n[Gt];o&&(o(),delete n[Gt])},t)}function Ko(e,t,r,n={}){const o=t==="local",a=Vr(null);if(o&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw ee(Q.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const s=U(n.inheritLocale)?n.inheritLocale:!C(n.locale),u=ve(!o||s?r.locale.value:C(n.locale)?n.locale:qe),c=ve(!o||s?r.fallbackLocale.value:C(n.fallbackLocale)||q(n.fallbackLocale)||R(n.fallbackLocale)||n.fallbackLocale===!1?n.fallbackLocale:u.value),d=ve(Dt(u.value,n)),y=ve(R(n.datetimeFormats)?n.datetimeFormats:{[u.value]:{}}),E=ve(R(n.numberFormats)?n.numberFormats:{[u.value]:{}}),g=o?r.missingWarn:U(n.missingWarn)||Ae(n.missingWarn)?n.missingWarn:!0,L=o?r.fallbackWarn:U(n.fallbackWarn)||Ae(n.fallbackWarn)?n.fallbackWarn:!0,b=o?r.fallbackRoot:U(n.fallbackRoot)?n.fallbackRoot:!0,k=!!n.fallbackFormat,S=Y(n.missing)?n.missing:null,A=Y(n.postTranslation)?n.postTranslation:null,M=o?r.warnHtmlMessage:U(n.warnHtmlMessage)?n.warnHtmlMessage:!0,f=!!n.escapeParameter,p=o?r.modifiers:R(n.modifiers)?n.modifiers:{},T=n.pluralRules||o&&r.pluralRules;function h(){return[u.value,c.value,d.value,y.value,E.value]}const I=Z({get:()=>a.value?a.value.locale.value:u.value,set:P=>{a.value&&(a.value.locale.value=P),u.value=P}}),N=Z({get:()=>a.value?a.value.fallbackLocale.value:c.value,set:P=>{a.value&&(a.value.fallbackLocale.value=P),c.value=P}}),D=Z(()=>a.value?a.value.messages.value:d.value),J=Z(()=>y.value),ue=Z(()=>E.value);function V(){return a.value?a.value.getPostTranslationHandler():A}function re(P){a.value&&a.value.setPostTranslationHandler(P)}function ze(){return a.value?a.value.getMissingHandler():S}function Xe(P){a.value&&a.value.setMissingHandler(P)}function Ee(P){return h(),P()}function Je(...P){return a.value?Ee(()=>Reflect.apply(a.value.t,null,[...P])):Ee(()=>"")}function Qe(...P){return a.value?Reflect.apply(a.value.rt,null,[...P]):""}function Ze(...P){return a.value?Ee(()=>Reflect.apply(a.value.d,null,[...P])):Ee(()=>"")}function et(...P){return a.value?Ee(()=>Reflect.apply(a.value.n,null,[...P])):Ee(()=>"")}function me(P){return a.value?a.value.tm(P):{}}function Re(P,x){return a.value?a.value.te(P,x):!1}function tt(P){return a.value?a.value.getLocaleMessage(P):{}}function Ve(P,x){a.value&&(a.value.setLocaleMessage(P,x),d.value[P]=x)}function rt(P,x){a.value&&a.value.mergeLocaleMessage(P,x)}function at(P){return a.value?a.value.getDateTimeFormat(P):{}}function _t(P,x){a.value&&(a.value.setDateTimeFormat(P,x),y.value[P]=x)}function nt(P,x){a.value&&a.value.mergeDateTimeFormat(P,x)}function ot(P){return a.value?a.value.getNumberFormat(P):{}}function We(P,x){a.value&&(a.value.setNumberFormat(P,x),E.value[P]=x)}function st(P,x){a.value&&a.value.mergeNumberFormat(P,x)}const it={get id(){return a.value?a.value.id:-1},locale:I,fallbackLocale:N,messages:D,datetimeFormats:J,numberFormats:ue,get inheritLocale(){return a.value?a.value.inheritLocale:s},set inheritLocale(P){a.value&&(a.value.inheritLocale=P)},get availableLocales(){return a.value?a.value.availableLocales:Object.keys(d.value)},get modifiers(){return a.value?a.value.modifiers:p},get pluralRules(){return a.value?a.value.pluralRules:T},get isGlobal(){return a.value?a.value.isGlobal:!1},get missingWarn(){return a.value?a.value.missingWarn:g},set missingWarn(P){a.value&&(a.value.missingWarn=P)},get fallbackWarn(){return a.value?a.value.fallbackWarn:L},set fallbackWarn(P){a.value&&(a.value.missingWarn=P)},get fallbackRoot(){return a.value?a.value.fallbackRoot:b},set fallbackRoot(P){a.value&&(a.value.fallbackRoot=P)},get fallbackFormat(){return a.value?a.value.fallbackFormat:k},set fallbackFormat(P){a.value&&(a.value.fallbackFormat=P)},get warnHtmlMessage(){return a.value?a.value.warnHtmlMessage:M},set warnHtmlMessage(P){a.value&&(a.value.warnHtmlMessage=P)},get escapeParameter(){return a.value?a.value.escapeParameter:f},set escapeParameter(P){a.value&&(a.value.escapeParameter=P)},t:Je,getPostTranslationHandler:V,setPostTranslationHandler:re,getMissingHandler:ze,setMissingHandler:Xe,rt:Qe,d:Ze,n:et,tm:me,te:Re,getLocaleMessage:tt,setLocaleMessage:Ve,mergeLocaleMessage:rt,getDateTimeFormat:at,setDateTimeFormat:_t,mergeDateTimeFormat:nt,getNumberFormat:ot,setNumberFormat:We,mergeNumberFormat:st};function lt(P){P.locale.value=u.value,P.fallbackLocale.value=c.value,Object.keys(d.value).forEach(x=>{P.mergeLocaleMessage(x,d.value[x])}),Object.keys(y.value).forEach(x=>{P.mergeDateTimeFormat(x,y.value[x])}),Object.keys(E.value).forEach(x=>{P.mergeNumberFormat(x,E.value[x])}),P.escapeParameter=f,P.fallbackFormat=k,P.fallbackRoot=b,P.fallbackWarn=L,P.missingWarn=g,P.warnHtmlMessage=M}return Aa(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw ee(Q.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const P=a.value=e.proxy.$i18n.__composer;t==="global"?(u.value=P.locale.value,c.value=P.fallbackLocale.value,d.value=P.messages.value,y.value=P.datetimeFormats.value,E.value=P.numberFormats.value):o&<(P)}),it}const zo=["locale","fallbackLocale","availableLocales"],Rr=["t","rt","d","n","tm","te"];function Xo(e,t){const r=Object.create(null);return zo.forEach(o=>{const a=Object.getOwnPropertyDescriptor(t,o);if(!a)throw ee(Q.UNEXPECTED_ERROR);const s=Na(a.value)?{get(){return a.value.value},set(u){a.value.value=u}}:{get(){return a.get&&a.get()}};Object.defineProperty(r,o,s)}),e.config.globalProperties.$i18n=r,Rr.forEach(o=>{const a=Object.getOwnPropertyDescriptor(t,o);if(!a||!a.value)throw ee(Q.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${o}`,a)}),()=>{delete e.config.globalProperties.$i18n,Rr.forEach(o=>{delete e.config.globalProperties[`$${o}`]})}}Io();__INTLIFY_JIT_COMPILATION__?fr(vo):fr(yo);uo(Bn);co(ta);if(__INTLIFY_PROD_DEVTOOLS__){const e=Le();e.__INTLIFY__=!0,Zn(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}/*! Element Plus v2.11.4 */var Jo={name:"zh-cn",el:{breadcrumb:{label:"面包屑"},colorpicker:{confirm:"确定",clear:"清空",defaultLabel:"颜色选择器",description:"当前颜色 {color},按 Enter 键选择新颜色",alphaLabel:"选择透明度的值"},datepicker:{now:"此刻",today:"今天",cancel:"取消",clear:"清空",confirm:"确定",dateTablePrompt:"使用方向键与 Enter 键可选择日期",monthTablePrompt:"使用方向键与 Enter 键可选择月份",yearTablePrompt:"使用方向键与 Enter 键可选择年份",selectedDate:"已选日期",selectDate:"选择日期",selectTime:"选择时间",startDate:"开始日期",startTime:"开始时间",endDate:"结束日期",endTime:"结束时间",prevYear:"前一年",nextYear:"后一年",prevMonth:"上个月",nextMonth:"下个月",year:"年",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},weeksFull:{sun:"星期日",mon:"星期一",tue:"星期二",wed:"星期三",thu:"星期四",fri:"星期五",sat:"星期六"},months:{jan:"一月",feb:"二月",mar:"三月",apr:"四月",may:"五月",jun:"六月",jul:"七月",aug:"八月",sep:"九月",oct:"十月",nov:"十一月",dec:"十二月"}},inputNumber:{decrease:"减少数值",increase:"增加数值"},select:{loading:"加载中",noMatch:"无匹配数据",noData:"无数据",placeholder:"请选择"},dropdown:{toggleDropdown:"切换下拉选项"},mention:{loading:"加载中"},cascader:{noMatch:"无匹配数据",loading:"加载中",placeholder:"请选择",noData:"暂无数据"},pagination:{goto:"前往",pagesize:"条/页",total:"共 {total} 条",pageClassifier:"页",page:"页",prev:"上一页",next:"下一页",currentPage:"第 {pager} 页",prevPages:"向前 {pager} 页",nextPages:"向后 {pager} 页",deprecationWarning:"你使用了一些已被废弃的用法,请参考 el-pagination 的官方文档"},dialog:{close:"关闭此对话框"},drawer:{close:"关闭此对话框"},messagebox:{title:"提示",confirm:"确定",cancel:"取消",error:"输入的数据不合法!",close:"关闭此对话框"},upload:{deleteTip:"按 Delete 键可删除",delete:"删除",preview:"查看图片",continue:"继续上传"},slider:{defaultLabel:"滑块介于 {min} 至 {max}",defaultRangeStartLabel:"选择起始值",defaultRangeEndLabel:"选择结束值"},table:{emptyText:"暂无数据",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部",sumText:"合计"},tour:{next:"下一步",previous:"上一步",finish:"结束导览",close:"关闭此对话框"},tree:{emptyText:"暂无数据"},transfer:{noMatch:"无匹配数据",noData:"无数据",titles:["列表 1","列表 2"],filterPlaceholder:"请输入搜索内容",noCheckedFormat:"共 {total} 项",hasCheckedFormat:"已选 {checked}/{total} 项"},image:{error:"加载失败"},pageHeader:{title:"返回"},popconfirm:{confirmButtonText:"确定",cancelButtonText:"取消"},carousel:{leftArrow:"上一张幻灯片",rightArrow:"下一张幻灯片",indicator:"幻灯片切换至索引 {index}"}}};/*! Element Plus v2.11.4 */var Qo={name:"en",el:{breadcrumb:{label:"Breadcrumb"},colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color.",alphaLabel:"pick alpha value"},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},mention:{loading:"Loading"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",page:"Page",prev:"Go to previous page",next:"Go to next page",currentPage:"page {pager}",prevPages:"Previous {pager} pages",nextPages:"Next {pager} pages",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum"},tour:{next:"Next",previous:"Previous",finish:"Finish",close:"Close this dialog"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"},carousel:{leftArrow:"Carousel arrow left",rightArrow:"Carousel arrow right",indicator:"Carousel switch to index {index}"}}};const Zo="/images/backgrounds/logo.svg",es="modulepreload",ts=function(e){return"/"+e},wr={},$=function(t,r,n){if(!r||r.length===0)return t();const o=document.getElementsByTagName("link");return Promise.all(r.map(a=>{if(a=ts(a),a in wr)return;wr[a]=!0;const s=a.endsWith(".css"),u=s?'[rel="stylesheet"]':"";if(!!n)for(let y=o.length-1;y>=0;y--){const E=o[y];if(E.href===a&&(!s||E.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${u}`))return;const d=document.createElement("link");if(d.rel=s?"stylesheet":es,s||(d.as="script",d.crossOrigin=""),d.href=a,document.head.appendChild(d),s)return new Promise((y,E)=>{d.addEventListener("load",y),d.addEventListener("error",()=>E(new Error(`Unable to preload CSS for ${a}`)))})})).then(()=>t()).catch(a=>{const s=new Event("vite:preloadError",{cancelable:!0});if(s.payload=a,window.dispatchEvent(s),!s.defaultPrevented)throw a})},rs=()=>$(()=>import("./Login-366a6e40.js"),["static/Login-366a6e40.js","static/vue-vendor-164775a6.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/Login-5b4c7b65.css"]),as=()=>$(()=>import("./Register-3b20391d.js"),["static/Register-3b20391d.js","static/vue-vendor-164775a6.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/Register-db11cb6a.css"]),ns=()=>$(()=>import("./OrderDetail-4c4919c3.js"),["static/OrderDetail-4c4919c3.js","static/vue-vendor-164775a6.js","static/orders-1393322b.js","static/orders-38b0d842.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/OrderDetail-d72799a7.css"]),os=()=>$(()=>import("./OrderCreate-af1b0e81.js"),["static/OrderCreate-af1b0e81.js","static/vue-vendor-164775a6.js","static/orders-1393322b.js","static/orders-38b0d842.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/OrderCreate-8ae5b174.css"]),ss=()=>$(()=>import("./Payments-558b6842.js"),["static/Payments-558b6842.js","static/element-plus-83a396df.js","static/vue-vendor-164775a6.js","static/payments-8752b587.js","static/utils-edfcd65b.js","static/Payments-2be3ab12.css"]),is=()=>$(()=>import("./PaymentCreate-a26a71fd.js"),["static/PaymentCreate-a26a71fd.js","static/vue-vendor-164775a6.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/PaymentCreate-845e7a7d.css"]),ls=()=>$(()=>import("./AdminOrders-f6125e9d.js"),["static/AdminOrders-f6125e9d.js","static/vue-vendor-164775a6.js","static/logo-admin-5be797ff.js","static/avatar-default-20a1956c.js","static/element-plus-83a396df.js","static/orders-38b0d842.js","static/utils-edfcd65b.js","static/AdminOrders-e989572c.css"]),us=()=>$(()=>import("./AdminDashboard-f0f21b58.js"),["static/AdminDashboard-f0f21b58.js","static/logo-admin-5be797ff.js","static/avatar-default-20a1956c.js","static/vue-vendor-164775a6.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/AdminDashboard-24811571.css"]),cs=()=>$(()=>import("./Welcome-45a384b5.js"),["static/Welcome-45a384b5.js","static/vue-vendor-164775a6.js","static/utils-edfcd65b.js","static/element-plus-83a396df.js","static/Welcome-566435d9.css"]),ds=()=>$(()=>import("./Profile-1a5780d5.js"),["static/Profile-1a5780d5.js","static/vue-vendor-164775a6.js","static/avatar-default-20a1956c.js","static/element-plus-83a396df.js","static/userWorks-2c5b5447.js","static/utils-edfcd65b.js","static/Profile-7da0de25.css"]),ms=()=>$(()=>import("./Subscription-a4075855.js"),["static/Subscription-a4075855.js","static/vue-vendor-164775a6.js","static/avatar-default-20a1956c.js","static/MyWorks-a005f9f3.js","static/element-plus-83a396df.js","static/userWorks-2c5b5447.js","static/utils-edfcd65b.js","static/MyWorks-340b0f11.css","static/payments-8752b587.js","static/members-878f8c4f.js","static/Subscription-36410ffa.css"]),fs=()=>$(()=>import("./MyWorks-a005f9f3.js"),["static/MyWorks-a005f9f3.js","static/vue-vendor-164775a6.js","static/avatar-default-20a1956c.js","static/element-plus-83a396df.js","static/userWorks-2c5b5447.js","static/utils-edfcd65b.js","static/MyWorks-340b0f11.css"]),ps=()=>$(()=>import("./VideoDetail-7399c171.js"),["static/VideoDetail-7399c171.js","static/avatar-default-20a1956c.js","static/vue-vendor-164775a6.js","static/element-plus-83a396df.js","static/userWorks-2c5b5447.js","static/utils-edfcd65b.js","static/VideoDetail-9babab47.css"]),gs=()=>$(()=>import("./TextToVideo-75471195.js"),["static/TextToVideo-75471195.js","static/vue-vendor-164775a6.js","static/avatar-default-20a1956c.js","static/element-plus-83a396df.js","static/textToVideo-544f1d26.js","static/utils-edfcd65b.js","static/TextToVideo-8b34e9cf.css"]),_s=()=>$(()=>import("./TextToVideoCreate-58f2fee9.js"),["static/TextToVideoCreate-58f2fee9.js","static/vue-vendor-164775a6.js","static/avatar-default-20a1956c.js","static/textToVideo-544f1d26.js","static/element-plus-83a396df.js","static/promptOptimizer-a438e36c.js","static/userWorks-2c5b5447.js","static/utils-edfcd65b.js","static/TextToVideoCreate-f34c4b9e.css"]),hs=()=>$(()=>import("./ImageToVideo-e440ecde.js"),["static/ImageToVideo-e440ecde.js","static/vue-vendor-164775a6.js","static/avatar-default-20a1956c.js","static/element-plus-83a396df.js","static/imageToVideo-33203855.js","static/utils-edfcd65b.js","static/ImageToVideo-0bcdf429.css"]),Es=()=>$(()=>import("./ImageToVideoCreate-f8598cf1.js"),["static/ImageToVideoCreate-f8598cf1.js","static/vue-vendor-164775a6.js","static/avatar-default-20a1956c.js","static/element-plus-83a396df.js","static/imageToVideo-33203855.js","static/promptOptimizer-a438e36c.js","static/userWorks-2c5b5447.js","static/utils-edfcd65b.js","static/ImageToVideoCreate-24f5f46e.css"]),ys=()=>$(()=>import("./ImageToVideoDetail-922a1f92.js"),["static/ImageToVideoDetail-922a1f92.js","static/vue-vendor-164775a6.js","static/imageToVideo-33203855.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/ImageToVideoDetail-11edf271.css"]),vs=()=>$(()=>import("./StoryboardVideo-583da452.js"),["static/StoryboardVideo-583da452.js","static/vue-vendor-164775a6.js","static/avatar-default-20a1956c.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/StoryboardVideo-27987756.css"]),bs=()=>$(()=>import("./StoryboardVideoCreate-d61e9f5d.js"),["static/StoryboardVideoCreate-d61e9f5d.js","static/vue-vendor-164775a6.js","static/avatar-default-20a1956c.js","static/imageToVideo-33203855.js","static/promptOptimizer-a438e36c.js","static/userWorks-2c5b5447.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/StoryboardVideoCreate-29a59055.css"]),Ts=()=>$(()=>import("./MemberManagement-77e413cd.js"),["static/MemberManagement-77e413cd.js","static/logo-admin-5be797ff.js","static/avatar-default-20a1956c.js","static/vue-vendor-164775a6.js","static/element-plus-83a396df.js","static/members-878f8c4f.js","static/utils-edfcd65b.js","static/MemberManagement-4a80ef02.css"]),ks=()=>$(()=>import("./SystemSettings-a6695426.js"),["static/SystemSettings-a6695426.js","static/vue-vendor-164775a6.js","static/logo-admin-5be797ff.js","static/avatar-default-20a1956c.js","static/element-plus-83a396df.js","static/members-878f8c4f.js","static/utils-edfcd65b.js","static/SystemSettings-98b5aecd.css"]),Ps=()=>$(()=>import("./GenerateTaskRecord-c5c5cfc2.js"),["static/GenerateTaskRecord-c5c5cfc2.js","static/vue-vendor-164775a6.js","static/logo-admin-5be797ff.js","static/avatar-default-20a1956c.js","static/element-plus-83a396df.js","static/taskStatus-f1fd8fd3.js","static/utils-edfcd65b.js","static/GenerateTaskRecord-5b9c46ed.css"]),Ls=()=>$(()=>import("./HelloWorld-9bce383a.js"),["static/HelloWorld-9bce383a.js","static/vue-vendor-164775a6.js"]),Is=()=>$(()=>import("./TaskStatusPage-7e42cb17.js"),["static/TaskStatusPage-7e42cb17.js","static/vue-vendor-164775a6.js","static/taskStatus-f1fd8fd3.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/TaskStatusPage-851102ec.css"]),Cs=()=>$(()=>import("./TermsOfService-37087c3a.js"),["static/TermsOfService-37087c3a.js","static/vue-vendor-164775a6.js","static/utils-edfcd65b.js","static/element-plus-83a396df.js","static/TermsOfService-df88b72b.css"]),Ds=()=>$(()=>import("./UserAgreement-e25fce59.js"),["static/UserAgreement-e25fce59.js","static/vue-vendor-164775a6.js","static/utils-edfcd65b.js","static/element-plus-83a396df.js","static/UserAgreement-d9bf814e.css"]),Ss=()=>$(()=>import("./PrivacyPolicy-291d699e.js"),["static/PrivacyPolicy-291d699e.js","static/vue-vendor-164775a6.js","static/utils-edfcd65b.js","static/element-plus-83a396df.js","static/PrivacyPolicy-602f14c0.css"]),As=[{path:"/works",name:"MyWorks",component:fs,meta:{title:"我的作品",requiresAuth:!0,keepAlive:!0}},{path:"/task-status",name:"TaskStatus",component:Is,meta:{title:"任务状态",requiresAuth:!0}},{path:"/video/:id",name:"VideoDetail",component:ps,meta:{title:"视频详情",requiresAuth:!0}},{path:"/text-to-video",name:"TextToVideo",component:gs,meta:{title:"文生视频",requiresAuth:!0,keepAlive:!0}},{path:"/text-to-video/create",name:"TextToVideoCreate",component:_s,meta:{title:"文生视频创作"}},{path:"/image-to-video",name:"ImageToVideo",component:hs,meta:{title:"图生视频",requiresAuth:!0,keepAlive:!0}},{path:"/image-to-video/create",name:"ImageToVideoCreate",component:Es,meta:{title:"图生视频创作"}},{path:"/image-to-video/detail/:taskId",name:"ImageToVideoDetail",component:ys,meta:{title:"图生视频详情",requiresAuth:!0}},{path:"/storyboard-video",name:"StoryboardVideo",component:vs,meta:{title:"分镜视频",requiresAuth:!0,keepAlive:!0}},{path:"/storyboard-video/create",name:"StoryboardVideoCreate",component:bs,meta:{title:"分镜视频创作"}},{path:"/",name:"Root",redirect:"/welcome"},{path:"/welcome",name:"Welcome",component:cs,meta:{title:"欢迎",guest:!0}},{path:"/profile",name:"Profile",component:ds,meta:{title:"个人主页",requiresAuth:!0}},{path:"/subscription",name:"Subscription",component:ms,meta:{title:"会员订阅",requiresAuth:!0}},{path:"/login",name:"Login",component:rs,meta:{title:"登录",guest:!0}},{path:"/register",name:"Register",component:as,meta:{title:"注册",guest:!0}},{path:"/orders/:id",name:"OrderDetail",component:ns,meta:{title:"订单详情",requiresAuth:!0}},{path:"/orders/create",name:"OrderCreate",component:os,meta:{title:"创建订单",requiresAuth:!0}},{path:"/payments",name:"Payments",component:ss,meta:{title:"支付记录",requiresAuth:!0}},{path:"/payments/create",name:"PaymentCreate",component:is,meta:{title:"创建支付",requiresAuth:!0}},{path:"/admin/orders",name:"AdminOrders",component:ls,meta:{title:"订单管理",requiresAuth:!0,requiresAdmin:!0}},{path:"/admin/dashboard",name:"AdminDashboard",component:us,meta:{title:"后台管理",requiresAuth:!0,requiresAdmin:!0}},{path:"/member-management",name:"MemberManagement",component:Ts,meta:{title:"会员管理",requiresAuth:!0,requiresAdmin:!0}},{path:"/system-settings",name:"SystemSettings",component:ks,meta:{title:"系统设置",requiresAuth:!0,requiresAdmin:!0}},{path:"/generate-task-record",name:"GenerateTaskRecord",component:Ps,meta:{title:"生成任务记录",requiresAuth:!0,requiresAdmin:!0}},{path:"/api-management",name:"ApiManagement",component:()=>$(()=>import("./ApiManagement-0e57caeb.js"),["static/ApiManagement-0e57caeb.js","static/logo-admin-5be797ff.js","static/avatar-default-20a1956c.js","static/vue-vendor-164775a6.js","static/element-plus-83a396df.js","static/utils-edfcd65b.js","static/ApiManagement-08563720.css"]),meta:{title:"API管理",requiresAuth:!0,requiresAdmin:!0}},{path:"/hello",name:"HelloWorld",component:Ls,meta:{title:"Hello World"}},{path:"/terms-of-service",name:"TermsOfService",component:Cs,meta:{title:"Vionow 服务条款"}},{path:"/user-agreement",name:"UserAgreement",component:Ds,meta:{title:"用户协议"}},{path:"/privacy-policy",name:"PrivacyPolicy",component:Ss,meta:{title:"隐私政策"}}],ye=Oa({history:Ra(),routes:As,scrollBehavior(e,t,r){return r||{top:0}}});ye.beforeEach(async(e,t,r)=>{try{const n=ba();if(n.initialized||await n.init(),e.path==="/"||e.path==="/welcome"){if(n.isAuthenticated&&e.path==="/"){r("/profile");return}if(!n.isAuthenticated&&e.path==="/welcome"){r();return}}if(e.meta.requiresAuth){if(!n.isAuthenticated){r({path:"/login",query:{redirect:e.fullPath}});return}if(e.meta.requiresAdmin&&!n.isAdmin){ne.warning("权限不足,只有管理员才能访问此页面"),r("/profile");return}}if(e.meta.guest&&n.isAuthenticated){r("/profile");return}e.meta.title&&(document.title=`${e.meta.title} - AIGC Demo`),r()}catch(n){console.error("路由守卫错误:",n),r()}});function Ns(){if(typeof window<"u"){const e=window.location.hostname;if(e.includes("ngrok")||e==="localhost"||e==="127.0.0.1"||e.startsWith("172.22.")||window.location.port==="")return"/api"}return"/api"}const Ie=xa.create({baseURL:Ns(),timeout:9e5,withCredentials:!0,maxRedirects:0,headers:{"Content-Type":"application/json"},validateStatus:function(e){return e>=200&&e<600}});Ie.interceptors.request.use(e=>{if(["/auth/login","/auth/login/email","/auth/register","/verification/email/send","/verification/email/verify","/verification/email/dev-set","/public/"].some(n=>e.url.includes(n)))console.log("请求拦截器:登录相关请求,不添加token:",e.url);else{const n=sessionStorage.getItem("token");n&&n!=="null"&&n.trim()!==""?(e.headers.Authorization=`Bearer ${n}`,console.log("请求拦截器:添加Authorization头,token长度:",n.length)):console.warn("请求拦截器:未找到有效的token")}return e},e=>(console.error("请求拦截器错误:",e),Promise.reject(e)));Ie.interceptors.response.use(e=>e.data&&typeof e.data=="string"&&e.data.trim().startsWith("<!DOCTYPE")?(console.error("收到HTML响应,可能是认证失败:",e.config.url),["/auth/login","/auth/login/email","/auth/register","/verification/","/public/"].some(n=>e.config.url.includes(n))||(sessionStorage.removeItem("token"),sessionStorage.removeItem("user"),ye.currentRoute.value.path!=="/login"&&(ne.error("认证失败,请重新登录"),ye.push("/login"))),Promise.reject(new Error("认证失败:收到HTML响应"))):e.status===302?(console.error("收到302重定向,可能是认证失败:",e.config.url),["/auth/login","/auth/login/email","/auth/register","/verification/","/public/"].some(n=>e.config.url.includes(n))||(sessionStorage.removeItem("token"),sessionStorage.removeItem("user"),ye.currentRoute.value.path!=="/login"&&(ne.error("认证失败,请重新登录"),ye.push("/login"))),Promise.reject(new Error("认证失败:302重定向"))):e,e=>{if(e.response){const{status:t,data:r}=e.response;if(r&&typeof r=="string"&&r.trim().startsWith("<!DOCTYPE"))return console.error("收到HTML响应(可能是302重定向):",e.config.url),["/auth/login","/auth/login/email","/auth/register","/verification/","/public/"].some(a=>e.config.url.includes(a))||(sessionStorage.removeItem("token"),sessionStorage.removeItem("user"),ye.currentRoute.value.path!=="/login"&&(ne.error("认证失败,请重新登录"),ye.push("/login"))),Promise.reject(e);switch(t){case 401:case 302:["/auth/login","/auth/login/email","/auth/register","/verification/","/public/"].some(u=>e.config.url.includes(u))||(sessionStorage.removeItem("token"),sessionStorage.removeItem("user"),ye.currentRoute.value.path!=="/login"&&(ne.error("认证失败,请重新登录"),ye.push("/login")));break;case 403:["/auth/login","/auth/login/email","/auth/register","/verification/","/public/"].some(u=>e.config.url.includes(u))?ne.error((r==null?void 0:r.message)||"请求失败,请检查网络连接"):ne.error("权限不足");break;case 404:ne.error("请求的资源不存在");break;case 500:ne.error("服务器内部错误");break;default:ne.error((r==null?void 0:r.message)||"请求失败")}}else e.request?ne.error("网络错误,请检查网络连接"):ne.error("请求配置错误");return Promise.reject(e)});const Zs=e=>Ie.post("/auth/login/email",e),Fs=e=>Ie.post("/auth/login",e),Os=e=>Ie.post("/auth/register",e),Rs=()=>Ie.get("/auth/me"),ei=e=>Ie.get("/public/users/exists/username",{params:{value:e}}),ti=e=>Ie.get("/public/users/exists/email",{params:{value:e}}),ri=e=>Ie.post("/verification/email/send",{email:e}),ba=wa("user",()=>{const e=ve(null),t=ve(null),r=ve(!1),n=ve(!1);try{const b=sessionStorage.getItem("user"),k=sessionStorage.getItem("token");b&&k&&(e.value=JSON.parse(b),t.value=k)}catch{}const o=Z(()=>!!e.value),a=Z(()=>{var b;return((b=e.value)==null?void 0:b.role)==="ROLE_ADMIN"}),s=Z(()=>{var b;return((b=e.value)==null?void 0:b.username)||""}),u=Z(()=>{if(!e.value)return 0;const b=e.value.points||0,k=e.value.frozenPoints||0;return Math.max(0,b-k)}),c=async b=>{try{r.value=!0;const k=await Fs(b);return k.success?(e.value=k.data.user,t.value=k.data.token,sessionStorage.setItem("token",k.data.token),sessionStorage.setItem("user",JSON.stringify(e.value)),{success:!0}):{success:!1,message:k.message}}catch(k){return console.error("Login error:",k),{success:!1,message:"登录失败,请检查网络连接"}}finally{r.value=!1}},d=async b=>{try{r.value=!0;const k=await Os(b);return k.success?{success:!0,message:"注册成功,请登录"}:{success:!1,message:k.message}}catch(k){return console.error("Register error:",k),{success:!1,message:"注册失败,请检查网络连接"}}finally{r.value=!1}},y=async()=>{try{t.value=null,e.value=null,sessionStorage.removeItem("token"),sessionStorage.removeItem("user")}catch(b){console.error("Logout error:",b)}},E=async()=>{try{const b=await Rs(),k=b.data||b;k.success?(e.value=k.data,sessionStorage.setItem("user",JSON.stringify(e.value))):console.warn("获取用户信息失败:",k.message)}catch(b){console.error("Fetch user error:",b)}},g=()=>{t.value=null,e.value=null,sessionStorage.removeItem("token"),sessionStorage.removeItem("user")};return{user:e,token:t,loading:r,isAuthenticated:o,isAdmin:a,username:s,availablePoints:u,loginUser:c,registerUser:d,logoutUser:y,fetchCurrentUser:E,clearUserData:g,init:async()=>{if(n.value)return;const b=sessionStorage.getItem("token"),k=sessionStorage.getItem("user");if(b&&k)try{t.value=b,e.value=JSON.parse(k)}catch(S){console.error("Failed to restore user state:",S),g()}n.value=!0},initialized:n}});const Qt=(e,t)=>{const r=e.__vccOpts||e;for(const[n,o]of t)r[n]=o;return r},ws=["title"],Ms={class:"lang-text"},Us={__name:"LanguageSwitcher",setup(e){const{locale:t}=Ke(),r=Z(()=>t.value),n=()=>{console.log("[LanguageSwitcher] 当前语言:",t.value);const o=t.value==="zh"?"en":"zh";console.log("[LanguageSwitcher] 切换到:",o),t.value=o,localStorage.setItem("language",o),console.log("[LanguageSwitcher] localStorage 已保存:",localStorage.getItem("language")),console.log("[LanguageSwitcher] 语言切换完成(无刷新)")};return(o,a)=>(le(),Rt("button",{class:"language-switcher",onClick:n,title:r.value==="zh"?"切换到英文":"Switch to Chinese"},[a[0]||(a[0]=B("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none"},[B("path",{d:"M4.16602 12.4998V14.1665C4.16602 15.0452 4.84592 15.765 5.7083 15.8286L5.83268 15.8332H8.33268V17.4998H5.83268C3.99173 17.4998 2.49935 16.0074 2.49935 14.1665V12.4998H4.16602ZM14.9993 8.33317L18.666 17.4998H16.8702L15.8694 14.9998H12.461L11.4618 17.4998H9.66685L13.3327 8.33317H14.9993ZM14.166 10.7375L13.1268 13.3332H15.2035L14.166 10.7375ZM6.66602 1.6665V3.33317H9.99935V9.1665H6.66602V11.6665H4.99935V9.1665H1.66602V3.33317H4.99935V1.6665H6.66602ZM14.166 2.49984C16.0069 2.49984 17.4993 3.99222 17.4993 5.83317V7.49984H15.8327V5.83317C15.8327 4.9127 15.0865 4.1665 14.166 4.1665H11.666V2.49984H14.166ZM4.99935 4.99984H3.33268V7.49984H4.99935V4.99984ZM8.33268 4.99984H6.66602V7.49984H8.33268V4.99984Z",fill:"currentColor"})],-1)),B("span",Ms,ae(r.value==="zh"?"中":"EN"),1)],8,ws))}},Mr=Qt(Us,[["__scopeId","data-v-16ee31fd"]]);const Vs={class:"navbar-container"},Ws={class:"navbar-brand"},xs={class:"navbar-user"},$s={class:"user-dropdown"},Gs={__name:"NavBar",setup(e){const{t}=Ke(),r=ba(),n=Ma(),o=s=>{n.replace(s)},a=async s=>{switch(s){case"profile":ne.info(t("common.profileDevMsg"));break;case"admin":r.isAdmin?n.push("/admin/dashboard"):ne.warning(t("common.noPermissionMsg"));break;case"settings":ne.info(t("common.settingsDevMsg"));break;case"logout":try{await $a.confirm(t("common.logoutConfirm"),t("common.tip"),{confirmButtonText:t("common.confirm"),cancelButtonText:t("common.cancel"),type:"warning"}),await r.logoutUser(),ne.success(t("common.logoutSuccess")),n.push("/")}catch{}break}};return(s,u)=>{const c=ce("router-link"),d=ce("el-menu-item"),y=ce("el-menu"),E=ce("el-tag"),g=ce("el-dropdown-item"),L=ce("el-dropdown-menu"),b=ce("el-dropdown"),k=ce("el-button"),S=ce("el-header");return le(),ge(S,{class:"navbar"},{default:z(()=>[B("div",Vs,[B("div",Ws,[oe(c,{to:"/",class:"brand-link"},{default:z(()=>[...u[2]||(u[2]=[B("img",{src:Zo,alt:"Logo",class:"brand-logo"},null,-1)])]),_:1})]),oe(y,{mode:"horizontal",class:"navbar-menu","background-color":"#409EFF","text-color":"#fff","active-text-color":"#ffd04b",router:"",onSelect:o},{default:z(()=>[oe(d,{index:"/welcome"},{default:z(()=>[B("span",null,ae(s.$t("common.welcome")),1)]),_:1}),oe(d,{index:"/admin/dashboard"},{default:z(()=>[B("span",null,ae(s.$t("common.home")),1)]),_:1}),pe(r).isAuthenticated?(le(),ge(d,{key:0,index:"/profile"},{default:z(()=>[B("span",null,ae(s.$t("common.profile")),1)]),_:1})):Se("",!0),pe(r).isAuthenticated?(le(),ge(d,{key:1,index:"/admin/orders"},{default:z(()=>[B("span",null,ae(s.$t("common.orders")),1)]),_:1})):Se("",!0),pe(r).isAuthenticated?(le(),ge(d,{key:2,index:"/payments"},{default:z(()=>[B("span",null,ae(s.$t("common.payments")),1)]),_:1})):Se("",!0),pe(r).isAdmin?(le(),ge(d,{key:3,index:"/admin/dashboard"},{default:z(()=>[B("span",null,ae(s.$t("common.adminPanel")),1)]),_:1})):Se("",!0)]),_:1}),B("div",xs,[pe(r).isAuthenticated?(le(),Rt(Tt,{key:0},[oe(Mr),oe(b,{onCommand:a},{dropdown:z(()=>[oe(L,null,{default:z(()=>[oe(g,{command:"profile"},{default:z(()=>[we(ae(s.$t("common.userProfile")),1)]),_:1}),pe(r).isAdmin?(le(),ge(g,{key:0,command:"admin"},{default:z(()=>[we(ae(s.$t("common.adminPanel")),1)]),_:1})):Se("",!0),oe(g,{command:"settings"},{default:z(()=>[we(ae(s.$t("common.settings")),1)]),_:1}),oe(g,{divided:"",command:"logout"},{default:z(()=>[we(ae(s.$t("common.logout")),1)]),_:1})]),_:1})]),default:z(()=>[B("span",$s,[B("span",null,ae(pe(r).username),1),pe(r).availablePoints>0?(le(),ge(E,{key:0,size:"small",type:"success",class:"points-tag"},{default:z(()=>[we(ae(pe(r).availablePoints)+ae(s.$t("common.points")),1)]),_:1})):Se("",!0)])]),_:1})],64)):(le(),Rt(Tt,{key:1},[oe(Mr),oe(k,{type:"primary",plain:"",onClick:u[0]||(u[0]=A=>s.$router.push("/login"))},{default:z(()=>[we(ae(s.$t("common.login")),1)]),_:1}),oe(k,{type:"success",plain:"",onClick:u[1]||(u[1]=A=>s.$router.push("/register"))},{default:z(()=>[we(ae(s.$t("common.register")),1)]),_:1})],64))])])]),_:1})}}},Hs=Qt(Gs,[["__scopeId","data-v-e4b9ad34"]]);const Bs={__name:"Footer",setup(e){return(t,r)=>{const n=ce("el-footer");return le(),ge(n,{class:"footer"},{default:z(()=>[...r[0]||(r[0]=[B("div",{class:"footer-content"},[B("div",{class:"footer-info"},[B("p",null,"© 2024 AIGC Demo. All rights reserved."),B("p",null,"基于 Vue.js 3 + Element Plus 构建")]),B("div",{class:"footer-links"},[B("a",{href:"#",class:"footer-link"},"关于我们"),B("a",{href:"#",class:"footer-link"},"联系我们"),B("a",{href:"#",class:"footer-link"},"隐私政策"),B("a",{href:"#",class:"footer-link"},"服务条款")])],-1)])]),_:1})}}},Ys=Qt(Bs,[["__scopeId","data-v-98d784c4"]]);const qs=["data-route"],js={__name:"App",setup(e){const t=Ua(),{locale:r}=Ke(),n=Z(()=>(console.log("[App.vue] 当前语言切换为:",r.value),r.value==="zh"?Jo:Qo)),o=Z(()=>!1),a=Z(()=>!["login","register"].includes(t.name));return bt(t,s=>{console.log("路由变化:",s.name)},{immediate:!0}),console.log("App.vue 加载成功"),(s,u)=>{const c=ce("router-view"),d=ce("el-config-provider");return le(),ge(d,{locale:n.value},{default:z(()=>[B("div",{id:"app","data-route":pe(t).name},[B("div",{class:Zt(["fullscreen-background",pe(t).name])},null,2),o.value?(le(),ge(Hs,{key:0})):Se("",!0),B("main",{class:Zt({"with-navbar":o.value})},[oe(c)],2),a.value?(le(),ge(Ys,{key:1})):Se("",!0)],8,qs)]),_:1},8,["locale"])}}},Ta={common:{confirm:"确认",cancel:"取消",save:"保存",delete:"删除",edit:"编辑",search:"搜索",reset:"重置",view:"查看",loading:"加载中...",searchPlaceholder:"搜索你想要的内容",welcome:"欢迎页",home:"首页",profile:"个人主页",orders:"订单管理",payments:"支付记录",adminPanel:"后台管理",login:"登录",register:"注册",logout:"退出登录",settings:"设置",userProfile:"个人资料",points:"积分",profileDevMsg:"个人资料功能开发中",settingsDevMsg:"设置功能开发中",noPermissionMsg:"权限不足,只有管理员才能访问后台管理",logoutConfirm:"确定要退出登录吗?",logoutSuccess:"退出登录成功",tip:"提示",submit:"提交",back:"返回",next:"下一步",previous:"上一步",close:"关闭",success:"成功",error:"错误",warning:"警告",info:"信息"},login:{title:"登录",emailCodeLogin:"邮箱验证码登录",emailPasswordLogin:"邮箱密码登录",emailPlaceholder:"请输入邮箱地址",codePlaceholder:"请输入验证码",passwordPlaceholder:"请输入密码",getCode:"获取验证码",loginButton:"登录",loginOrRegister:"登陆/注册",loggingIn:"登录中...",agreement:"登录即表示您同意遵守用户协议和隐私政策",testAccounts:"测试邮箱",admin:"管理员",normalUser:"普通用户",quickEmail:"快捷输入"},home:{title:"首页",exploreCreativity:"探索无限创意",subtitle:"用 AI 将你的想象变为现实",getStarted:"开始创作",learnMore:"了解更多",features:"核心功能",textToVideo:"文生视频",textToVideoDesc:"输入文字描述,AI 自动生成高质量视频",imageToVideo:"图生视频",imageToVideoDesc:"上传图片,AI 智能生成动态视频",storyboardVideo:"分镜视频",storyboardVideoDesc:"专业分镜制作,打造电影级效果",myWorks:"我的作品",myWorksDesc:"管理和查看你的所有创作",subscription:"会员订阅",subscriptionDesc:"解锁更多高级功能和资源"},profile:{title:"个人主页",userInfo:"用户信息",username:"用户名",email:"邮箱",memberLevel:"会员等级",expiryDate:"到期时间",availablePoints:"可用积分",frozenPoints:"冻结积分",accountStats:"账户统计",totalWorks:"作品总数",videoGenerated:"生成视频数",storageUsed:"已用存储",editProfile:"编辑资料",changePassword:"修改密码",viewWorks:"查看作品",upgradeMembership:"升级会员",subscription:"会员订阅",myWorks:"我的作品",tools:"工具",noUsername:"未设置用户名",published:"已发布",userId:"ID",noWorksYet:"暂无作品,开始创作吧!",createSimilar:"做同款",workDetail:"作品详情",category:"分类",inputDetails:"输入详情",createTime:"创建时间",workId:"作品 ID",date:"日期",duration:"时长",quality:"清晰度",aspectRatio:"宽高比",unknown:"未知",anonymousUser:"匿名用户",browserNotSupport:"您的浏览器不支持视频播放",noPrompt:"暂无提示词",dashboard:"数据仪表盘",orderManagement:"订单管理",memberManagement:"会员管理",systemSettings:"系统设置",insufficientPermission:"权限不足,只有管理员才能访问",logoutConfirm:"确定要退出登录吗?",logoutSuccess:"已退出登录",logoutFailed:"退出登录失败",loadWorksFailed:"加载作品列表失败",loadUserInfoFailed:"获取用户信息失败",loadDetailFailed:"加载作品详情失败",profileEditDevMsg:"个人简介编辑功能待实现"},video:{create:"创建",generating:"生成中",completed:"已完成",failed:"失败",prompt:"提示词",promptPlaceholder:"请输入视频描述...",optimizePrompt:"优化提示词",uploadImage:"上传图片",selectImage:"选择图片",generate:"生成视频",duration:"时长",resolution:"分辨率",style:"风格",aspectRatio:"宽高比",advancedSettings:"高级设置",cost:"消耗积分",estimatedTime:"预计用时",result:"生成结果",download:"下载",share:"分享",regenerate:"重新生成",saveToWorks:"保存到作品",videoUrl:"视频链接",status:"状态",createdAt:"创建时间",textToVideo:{aspectRatio:"宽高比",dateFormat:"{year}年{month}月{day}日 {hours}:{minutes}",pointsUpdated:"用户积分已更新",pointsUpdateFailed:"更新用户积分失败",textInputPlaceholder:"请输入视频描述,例如:在草原上奔跑的骏马...",userAvatar:"用户头像",optimizing:"优化中...",oneClickOptimize:"一键优化",hdMode:"高清模式",hdModeCost:"+20积分",startGenerate:"开始生成",pleaseLogin:"请先登录",loginRequired:"登录后才能开始创作",loginNow:"立即登录",inProgress:"进行中",noVideoUrl:"暂无视频",withWatermark:"带水印",withoutWatermark:"不带水印",createSimilar:"做同款",downloadVideo:"下载视频",deleteWork:"删除作品",generationFailed:"生成失败",checkInputOrRetry:"请检查输入或重新尝试",regenerate:"重新生成",startCreating:"开始创作你的视频吧!",noDescription:"无描述",queuing:"排队中...",subscribeToSpeedUp:"订阅会员可加速",noResult:"暂无结果",pleaseLoginFirst:"请先登录后再创建任务",taskInProgress:"当前已有任务正在生成中,请稍候",pleaseEnterText:"请输入视频描述文本",creatingTask:"正在创建任务...",taskCreated:"任务创建成功,开始生成",createTaskFailed:"创建任务失败",videoCompleted:"视频生成完成!",videoFailed:"视频生成失败:",statusPending:"排队中",statusProcessing:"生成中",statusCancelled:"已取消",statusUnknown:"未知状态",pleaseEnterPrompt:"请先输入提示词",promptTooLong:"提示词过长,最多2000字符",optimizingPrompt:"正在优化提示词...",optimizeSuccess:"提示词优化成功!",optimizeNoChange:"提示词已是最优,无需优化",optimizeFailed:"优化失败,请稍后重试",requestParamError:"请求参数错误",requestTimeout:"请求超时,请检查网络",serverError:"服务器错误,请稍后重试",networkError:"网络错误,请检查连接",networkConnectionError:"网络连接失败",downloadStarted:"开始下载",videoUrlNotAvailable:"视频链接不可用",noWorkToDelete:"没有可删除的作品",deleteConfirm:"确定要删除这个作品吗?删除后将无法恢复。",confirmDelete:"确认删除",workDeleted:"作品已删除",deleteCancelled:"已取消删除",historyLoadSuccess:"历史记录加载成功: {count}条",historyLoadFailed:"加载历史记录失败",historyParamsFilled:"已填充历史参数,可以开始生成",cancelFunctionTBD:"取消功能开发中",unfinishedTaskDetected:"检测到未完成任务,正在恢复..."},imageToVideo:{userAvatar:"用户头像",firstFrame:"首帧",promptPlaceholder:"结合图片,描述想要生成的内容",optimizing:"优化中...",optimizePrompt:"一键优化",hdMode:"高清模式",hdModeCost:"开启消耗20积分",startGenerate:"开始生成",pleaseLogin:"请先登录",loginRequired:"需要登录后才能提交任务",loginNow:"立即登录",inProgress:"进行中",statusPending:"等待中",statusProcessing:"处理中",statusCompleted:"已完成",statusFailed:"失败",statusCancelled:"已取消",noVideoUrl:"视频生成完成,但未获取到视频链接",withWatermark:"带水印",withoutWatermark:"不带水印 会员专享",createSimilar:"做同款",downloadVideo:"下载视频",deleteWork:"删除作品",retry:"重新生成",generateFailed:"生成失败",generateFailedDesc:"请检查输入内容或重试",startCreating:"开始创作您的第一个作品吧!",tip1:"上传首帧图片",tip2:"输入描述文字",tip3:"选择视频参数",tip4:"点击开始生成",noDescription:"无描述",queuing:"排队中",subscribeToSpeedUp:"订阅套餐以提升生成速度",cancel:"取消",firstFrameImage:"首帧图片",noResult:"暂无结果",year:"年",month:"月",day:"日",fileSizeLimit:"图片文件大小不能超过100MB",invalidImageFile:"请选择有效的图片文件",pleaseLoginFirst:"请先登录后再提交任务",taskInProgress:"已有任务在进行中,请等待完成或取消当前任务",uploadFirstFrameRequired:"请上传首帧图片",enterDescriptionRequired:"请输入描述文字",creatingTask:"正在创建任务...",taskCreatedSuccess:"任务创建成功,开始处理...",createTaskFailed:"创建任务失败",createTaskFailedRetry:"创建任务失败,请重试",videoGenerateCompleted:"视频生成完成!",videoGenerateFailed:"视频生成失败:",enterPromptFirst:"请输入提示词",promptTooLong:"提示词过长,请控制在2000字符以内",optimizingPrompt:"正在优化提示词,请稍候...",promptOptimizedSuccess:"提示词优化成功!",promptAlreadyOptimized:"提示词已优化,但可能无明显变化",optimizeFailed:"优化失败",optimizePromptFailed:"优化提示词失败",requestParameterError:"请求参数错误",requestTimeout:"请求超时,请稍后重试",serverError:"服务器错误,请稍后重试",networkError:"网络错误,请检查网络连接",networkConnectionError:"网络连接错误,请检查您的网络",startDownload:"开始下载视频",videoUrlNotAvailable:"视频链接不可用",noWorkToDelete:"没有可删除的作品",confirmDeleteWork:"确定要删除这个作品吗?",confirmDelete:"确认删除",workDeleted:"作品已删除",deleteCancelled:"已取消删除",historyParamsFilled:"已填充历史记录参数,可以开始生成",cancelFeatureTodo:"取消功能待实现",resumingTask:"检测到未完成的任务,继续处理中..."},storyboard:{userAvatar:"用户头像",generateStoryboard:"生成分镜图",generateVideo:"生成视频",uploadStoryboard:"上传分镜图 (可直接生成视频)",uploadedCount:"已上传 {count}/6",uploadLimit:"已达上限",uploadedImage:"上传的图片 {index}",maxImages:"最多只能上传6张图片",maxImagesWarning:"最多只能上传6张图片,您已上传{current}张,还可以上传{remaining}张",fileSizeLimit:"图片文件大小不能超过100MB",invalidFileType:"请选择有效的图片文件",uploadSuccess:"成功上传 {count} 张图片",imageRemoved:"已删除图片",promptPlaceholder:`例如:一个咖啡的广告
|
||
|
||
提示:简单描述即可,AI会自动优化成专业的分镜图
|
||
支持中文或英文输入,系统会自动翻译并优化为专业的分镜图描述`,tip1:"💡 AI会根据您的描述自动生成专业分镜图",tip2:"🎬 支持多种画面构图和镜头类型描述",optimizing:"优化中...",enterPrompt:"请输入提示词",promptTooLong:"提示词过长,请控制在2000字符以内",optimizingPrompt:"正在优化提示词,请稍候...",optimizeSuccess:"提示词优化成功!",alreadyOptimized:"提示词已优化,但可能无明显变化",optimizeFailed:"优化提示词失败",paramError:"请求参数错误",timeout:"请求超时,请稍后重试",serverError:"服务器错误,请稍后重试",networkError:"网络错误,请检查网络连接",storyboardImage:"分镜图",noStoryboard:"暂无分镜图",hdMode:"高清模式 (1080P)",hdCost:"开启消耗20积分",pleaseLogin:"请先登录",loginRequired:"需要登录后才能提交任务",loginNow:"立即登录",loginBeforeSubmit:"请先登录后再提交任务",inProgress:"进行中",generatingVideo:"正在生成视频,请稍候...",progress:"进度: {progress}%",generatingStoryboardText:"正在生成分镜图,请稍候...",generatingVideoText:"正在生成视频,请稍候...",startCreating:"开始创作您的第一个作品吧!",noDescription:"无描述",queuing:"排队中",subscribeToSpeed:"订阅套餐以提升生成速度",noResult:"暂无结果",uploadOrGenerateFirst:"请先上传分镜图或生成分镜图",uploadOrInputPrompt:"请上传分镜图或输入提示词",startGenerateVideo:"开始生成视频",generateVideoWithUpload:"使用上传图片生成视频",startGenerateStoryboard:"开始生成分镜图",startGenerate:"开始生成",enterDescription:"请输入描述文字",startingGenerate:"开始生成分镜图...",taskCreated:"分镜图任务创建成功!",createTaskFailed:"创建任务失败",generateFailed:"生成分镜图失败",taskTimeout:"任务超时,请稍后查看",storyboardCompleted:'分镜图生成完成!请点击"开始生成"按钮生成视频',videoCompleted:"视频生成完成!",taskFailed:"任务失败",unknownError:"未知错误",startingVideoGenerate:"开始生成视频...",videoTaskStarted:"视频生成任务已启动,请稍候...",videoStartFailed:"启动视频生成失败",defaultPrompt:"根据图片生成视频",videoTaskCreated:"视频任务创建成功,开始处理...",createVideoTaskFailed:"创建视频任务失败",generateVideoFailed:"生成视频失败",videoTaskTimeout:"视频任务超时,请稍后查看",videoGenerateFailed:"视频生成失败",paramsFilled:"已填充历史记录参数,可以开始生成",cancelFeaturePending:"取消功能待实现",taskCompleted:"任务已完成!",resumingVideoTask:"检测到未完成的视频生成任务,继续处理中...",resumingStoryboardTask:"检测到未完成的分镜图生成任务,继续处理中...",resumingTask:"检测到未完成的任务,继续处理中..."}},works:{title:"我的作品",all:"全部",textToVideo:"文生视频",imageToVideo:"图生视频",storyboardVideo:"分镜视频",filter:"筛选",sortBy:"排序",newest:"最新",oldest:"最旧",noWorks:"暂无作品",noWorksDesc:"开始创作你的第一个作品吧!",viewDetail:"查看详情",deleteConfirm:"确定要删除这个作品吗?",deleteSuccess:"删除成功",deleteFailed:"删除失败",video:"视频",image:"图片",dateFilter:"日期",today:"今天",thisWeek:"本周",thisMonth:"本月",taskType:"任务类型",resolution:"清晰度",sd:"标清",hd:"高清",uhd:"超清",ratio:"比例",time:"时间",popular:"热门",searchPlaceholder:"名字/提示词/ID",selectItems:"选择{count}个项目",selectedCount:"已选 {count} 个项目",favorite:"收藏",downloadWithWatermark:"带水印下载",downloadWithoutWatermark:"不带水印下载",memberOnly:"会员",rename:"重命名",referenceImagePrompt:"图1在图2中奔跑视频",allLoaded:"✓ 已加载全部内容",noContent:"没有找到相关内容",backToTop:"回到顶部",createSimilarInfo:'基于作品"{title}"创建同款',goToCreate:"跳转到创作页面",downloadStart:"开始下载:{title}",shareComingSoon:"分享链接功能即将上线",downloadWithWatermarkStart:"开始下载带水印版本",downloadWithoutWatermarkStart:"开始下载不带水印版本(会员专享)",renameDevMsg:"重命名功能开发中",deleteWorkConfirm:"确定删除该作品吗?",deleteConfirmTitle:"删除确认",bulkDownloadStart:"开始下载 {count} 个文件",bulkDeleteConfirm:"确定删除选中的 {count} 个项目吗?",bulkDeleteSuccess:"已删除选中项目",filtersReset:"筛选器已重置",processing:"生成中...",noPreview:"无预览",videoLoadFailed:"视频加载失败",videoFileNotExist:"视频文件可能不存在或已被删除",retry:"重试",deleteFailedWork:"删除此作品",deleteFailedWorkConfirm:"此作品视频加载失败,确定要删除吗?删除后无法恢复。"},subscription:{title:"会员订阅",choosePlan:"选择套餐",currentPlan:"当前套餐",free:"免费版",standard:"标准版",professional:"专业版",perMonth:"/月",subscribe:"立即订阅",renew:"续费",upgrade:"升级",features:"功能特性",unlimited:"无限",limited:"有限",pointsPerMonth:"积分/月",videoQuality:"视频质量",support:"客服支持",priorityQueue:"优先队列",advancedFeatures:"高级功能",userAvatar:"用户头像",loading:"加载中...",pointsDetails:"积分详情",myOrders:"我的订单",currentActivePlan:"当前生效权益",expiryTime:"到期时间",permanent:"永久",remainingPoints:"剩余积分",plans:"套餐",currentPackage:"当前套餐",firstPurchaseDiscount:"首购低至8.5折",bestValue:"超值之选",standardPoints:"每月200积分",premiumPoints:"每月1000积分",freeNewUserBonus:"新用户首次登陆免费获得50积分",fastGeneration:"快速通道生成",superFastGeneration:"极速通道生成",commercialUse:"支持商用",noWatermark:"下载去水印",earlyAccess:"新功能优先体验",pointsUsageHistory:"积分使用情况",pointsUsageOverview:"积分使用总览",totalRecharge:"总充值",totalConsumption:"总消耗",currentPoints:"当前积分",noPointsHistory:"暂无积分使用记录",description:"描述",time:"时间",orderNumber:"订单号",taskId:"任务ID",recharge:"充值",consume:"消耗",pleaseLogin:"请先登录",loadUserInfoFailed:"获取用户信息失败,使用默认值",loadUserInfoError:"加载用户信息失败: {message}",loadPointsHistoryFailed:"获取积分使用历史失败",generatingQRCode:"正在生成支付二维码...",subscriptionFailed:"订阅处理失败,请重试",qrCodeGenerated:"二维码已生成,请使用支付宝扫码支付",qrCodeGenerationFailed:"生成二维码失败,请重试",qrCodeEmpty:"二维码生成失败:二维码为空",createPaymentFailed:"创建支付订单失败",qrCodeGenerationError:"二维码生成失败:{message}",pleaseTryAgain:"请重试",refreshPage:"请刷新页面重试",paymentSuccess:"支付成功!正在更新信息...",infoUpdated:"信息已更新!",paymentProcessingFailed:"支付成功但处理订单失败,请联系客服",paymentFailed:"支付失败,请重试",creatingOrder:"正在创建订单...",paymentPageLoadFailed:"支付页面加载失败",createAlipayPaymentFailed:"创建支付宝支付失败",createPaymentOrderFailed:"创建支付订单失败,请重试",standardDescription:"标准版订阅 - 每月200积分",premiumDescription:"专业版订阅 - 每月1000积分"},welcome:{textToVideo:"文生视频",imageToVideo:"图生视频",storyboardVideo:"分镜视频",pricing:"订阅套餐",startExperience:"开始体验",title1:"智创",title2:"无限,",title3:"灵感",title4:"变现。",subtitle:"使用邮箱验证码登录,安全便捷",tryNow:"立即体验",coreFeatures:"核心功能",textToVideoDesc:"输入文字描述,AI自动生成高质量视频内容",imageToVideoDesc:"上传图片,AI智能分析并生成动态视频",storyboardVideoDesc:"专业分镜制作,打造电影级视频效果",pricingDesc:"灵活的价格方案,满足不同创作需求",startCreating:"开始创作"},nav:{dashboard:"数据仪表台",members:"会员管理",orders:"订单管理",apiManagement:"API管理",tasks:"生成任务记录",systemSettings:"系统设置",onlineUsers:"当前在线用户",systemUptime:"系统运行时间"},admin:{exitAdmin:"退出后台"},dashboard:{title:"数据仪表台",totalUsers:"用户总数",paidUsers:"付费用户数",todayRevenue:"今日收入",dailyActive:"日活用户趋势",conversionRate:"用户转化率",comparedToLastMonth:"较上月同期",year2025:"2025年",year2024:"2024年",year2023:"2023年",userAvatar:"用户头像",month1:"1月",month2:"2月",month3:"3月",month4:"4月",month5:"5月",month6:"6月",month7:"7月",month8:"8月",month9:"9月",month10:"10月",month11:"11月",month12:"12月",pleaseLogin:"请先登录",loadDataFailed:"加载仪表盘数据失败"},orders:{title:"订单管理",orderNumber:"订单编号",username:"用户名",amount:"金额",paymentMethod:"支付方式",status:"状态",createTime:"创建时间",operation:"操作",allStatus:"全部状态",allTypes:"全部类型",pending:"待支付",confirmed:"已确认",paid:"已支付",processing:"处理中",shipped:"已发货",delivered:"已送达",completed:"已完成",cancelled:"已取消",refunded:"已退款",unpaid:"未支付",alipay:"支付宝",wechat:"微信支付",paypal:"PayPal",selected:"已选择{count}项"},tasks:{title:"生成任务记录",taskId:"任务ID",username:"用户名",type:"类型",resources:"消耗资源",status:"状态",createTime:"创建时间",operation:"操作",allStatus:"全部状态",completed:"已完成",processing:"处理中",failed:"失败",cancelled:"已取消",textToVideo:"文生视频",imageToVideo:"图生视频",storyboardVideo:"分镜视频"},members:{title:"会员列表",userId:"用户ID",username:"用户名",level:"会员等级",points:"剩余资源点",expiryDate:"到期时间",operation:"编辑",allLevels:"全部等级",professional:"专业会员",standard:"标准会员",editMember:"编辑会员信息",usernamePlaceholder:"请输入用户名",levelPlaceholder:"请选择会员等级",pointsPlaceholder:"请输入资源点",expiryPlaceholder:"请选择到期时间"},apiManagement:{title:"API管理",apiKey:"API密钥",apiKeyPlaceholder:"请输入API密钥",tokenExpiration:"Token过期时间",tokenPlaceholder:"请输入小时数(1-720)",hours:"小时",days:"天",rangeHint:"范围:1-720小时(1小时-30天)",saveSuccess:"保存成功",saveFailed:"保存失败"},systemSettings:{title:"系统设置",membership:"会员收费标准",cleanup:"任务清理管理",membershipLevels:"会员等级",editLevel:"编辑等级",price:"价格",description:"描述",cleanupStats:"清理统计",manualCleanup:"手动清理",autoCleanup:"自动清理",perMonth:"/月",includesPoints:"包含{points}资源点/月",cleanupStatsInfo:"清理统计信息",refresh:"刷新",currentTotalTasks:"当前任务总数",completedTasks:"已完成任务",failedTasks:"失败任务",archivedTasks:"已归档任务",cleanupLogsCount:"清理日志数",retentionDays:"保留天数",days:"天",cleanupActions:"清理操作",performFullCleanup:"执行完整清理",cleanupUserTasks:"清理指定用户任务",fullCleanupDesc:"完整清理",fullCleanupDescDetail:"将成功任务导出到归档表,删除失败任务",userCleanupDesc:"用户清理",userCleanupDescDetail:"清理指定用户的所有任务",cleanupConfig:"清理配置",taskRetentionDays:"任务保留天数",taskRetentionTip:"任务完成后保留的天数",archiveRetentionDays:"归档保留天数",archiveRetentionTip:"归档数据保留的天数",membershipLevel:"会员等级",selectLevelPlaceholder:"请选择会员等级",freeMembership:"免费版会员",standardMembership:"标准版会员",professionalMembership:"专业版会员",membershipPrice:"会员价格",resourcePointsAmount:"资源点数量",validityPeriod:"会员有效期",monthly:"月付",quarterly:"季付",yearly:"年付",enterUsername:"请输入要清理的用户名",warning:"警告",cleanupWarning:"此操作将清理该用户的所有任务,包括:",successTasksArchived:"成功任务将导出到归档表",failedTasksLogged:"失败任务将记录到清理日志",originalTasksDeleted:"原始任务记录将被删除",irreversibleWarning:"此操作不可撤销,请谨慎操作!",confirmCleanup:"确认清理"}},ka={common:{confirm:"Confirm",cancel:"Cancel",save:"Save",delete:"Delete",edit:"Edit",search:"Search",reset:"Reset",view:"View",loading:"Loading...",searchPlaceholder:"Search for content",welcome:"Welcome",home:"Home",profile:"Profile",orders:"Orders",payments:"Payments",adminPanel:"Admin Panel",login:"Login",register:"Register",logout:"Logout",settings:"Settings",userProfile:"User Profile",points:"Points",profileDevMsg:"Profile feature under development",settingsDevMsg:"Settings feature under development",noPermissionMsg:"Insufficient permission, only administrators can access admin panel",logoutConfirm:"Are you sure you want to logout?",logoutSuccess:"Logout successful",tip:"Tip",submit:"Submit",back:"Back",next:"Next",previous:"Previous",close:"Close",success:"Success",error:"Error",warning:"Warning",info:"Info"},login:{title:"Login",emailCodeLogin:"Email Verification Login",emailPasswordLogin:"Email Password Login",emailPlaceholder:"Enter email address",codePlaceholder:"Enter verification code",passwordPlaceholder:"Enter password",getCode:"Get Code",loginButton:"Login",loginOrRegister:"Login/Register",loggingIn:"Logging in...",agreement:"By logging in, you agree to the Terms of Service and Privacy Policy",testAccounts:"Test Accounts",admin:"Admin",normalUser:"Normal User",quickEmail:"Quick Email"},home:{title:"Home",exploreCreativity:"Explore Unlimited Creativity",subtitle:"Transform Your Imagination into Reality with AI",getStarted:"Get Started",learnMore:"Learn More",features:"Core Features",textToVideo:"Text to Video",textToVideoDesc:"Enter text descriptions and AI generates high-quality videos",imageToVideo:"Image to Video",imageToVideoDesc:"Upload images and AI generates dynamic videos",storyboardVideo:"Storyboard Video",storyboardVideoDesc:"Professional storyboarding for cinematic effects",myWorks:"My Works",myWorksDesc:"Manage and view all your creations",subscription:"Subscription",subscriptionDesc:"Unlock more advanced features and resources"},profile:{title:"Profile",userInfo:"User Information",username:"Username",email:"Email",memberLevel:"Membership Level",expiryDate:"Expiry Date",availablePoints:"Available Points",frozenPoints:"Frozen Points",accountStats:"Account Statistics",totalWorks:"Total Works",videoGenerated:"Videos Generated",storageUsed:"Storage Used",editProfile:"Edit Profile",changePassword:"Change Password",viewWorks:"View Works",upgradeMembership:"Upgrade Membership",subscription:"Subscription",myWorks:"My Works",tools:"Tools",noUsername:"No username set",published:"Published",userId:"ID",noWorksYet:"No works yet, start creating!",createSimilar:"Create Similar",workDetail:"Work Details",category:"Category",inputDetails:"Input Details",createTime:"Create Time",workId:"Work ID",date:"Date",duration:"Duration",quality:"Quality",aspectRatio:"Aspect Ratio",unknown:"Unknown",anonymousUser:"Anonymous User",browserNotSupport:"Your browser does not support video playback",noPrompt:"No prompt available",dashboard:"Dashboard",orderManagement:"Order Management",memberManagement:"Member Management",systemSettings:"System Settings",insufficientPermission:"Insufficient permission, only administrators can access",logoutConfirm:"Are you sure you want to logout?",logoutSuccess:"Logged out successfully",logoutFailed:"Logout failed",loadWorksFailed:"Failed to load works",loadUserInfoFailed:"Failed to load user info",loadDetailFailed:"Failed to load work details",profileEditDevMsg:"Profile edit feature under development"},video:{create:"Create",generating:"Generating",completed:"Completed",failed:"Failed",prompt:"Prompt",promptPlaceholder:"Enter video description...",optimizePrompt:"Optimize Prompt",uploadImage:"Upload Image",selectImage:"Select Image",generate:"Generate Video",duration:"Duration",resolution:"Resolution",style:"Style",aspectRatio:"Aspect Ratio",advancedSettings:"Advanced Settings",cost:"Points Cost",estimatedTime:"Estimated Time",result:"Result",download:"Download",share:"Share",regenerate:"Regenerate",saveToWorks:"Save to Works",videoUrl:"Video URL",status:"Status",createdAt:"Created At",textToVideo:{aspectRatio:"Aspect Ratio",dateFormat:"{year}-{month}-{day} {hours}:{minutes}",pointsUpdated:"User points updated",pointsUpdateFailed:"Failed to update user points",textInputPlaceholder:"Enter video description, e.g.: horses running on the grassland...",userAvatar:"User Avatar",optimizing:"Optimizing...",oneClickOptimize:"One-Click Optimize",hdMode:"HD Mode",hdModeCost:"+20 Points",startGenerate:"Start Generation",pleaseLogin:"Please Login First",loginRequired:"Login required to start creating",loginNow:"Login Now",inProgress:"In Progress",noVideoUrl:"No Video Available",withWatermark:"With Watermark",withoutWatermark:"Without Watermark",createSimilar:"Create Similar",downloadVideo:"Download Video",deleteWork:"Delete Work",generationFailed:"Generation Failed",checkInputOrRetry:"Please check input or retry",regenerate:"Regenerate",startCreating:"Start creating your video!",noDescription:"No Description",queuing:"Queuing...",subscribeToSpeedUp:"Subscribe to speed up",noResult:"No Result",pleaseLoginFirst:"Please login first",taskInProgress:"Task already in progress, please wait",pleaseEnterText:"Please enter video description",creatingTask:"Creating task...",taskCreated:"Task created successfully, generating...",createTaskFailed:"Failed to create task",videoCompleted:"Video generation completed!",videoFailed:"Video generation failed:",statusPending:"Pending",statusProcessing:"Processing",statusCancelled:"Cancelled",statusUnknown:"Unknown Status",pleaseEnterPrompt:"Please enter prompt first",promptTooLong:"Prompt too long, max 2000 characters",optimizingPrompt:"Optimizing prompt...",optimizeSuccess:"Prompt optimized successfully!",optimizeNoChange:"Prompt is already optimal",optimizeFailed:"Optimization failed, please retry",requestParamError:"Invalid request parameters",requestTimeout:"Request timeout, check network",serverError:"Server error, please retry later",networkError:"Network error, check connection",networkConnectionError:"Network connection failed",downloadStarted:"Download started",videoUrlNotAvailable:"Video URL not available",noWorkToDelete:"No work to delete",deleteConfirm:"Are you sure to delete this work? This cannot be undone.",confirmDelete:"Confirm Delete",workDeleted:"Work deleted",deleteCancelled:"Delete cancelled",historyLoadSuccess:"History loaded: {count} items",historyLoadFailed:"Failed to load history",historyParamsFilled:"History parameters filled, ready to generate",cancelFunctionTBD:"Cancel function under development",unfinishedTaskDetected:"Unfinished task detected, restoring..."},imageToVideo:{userAvatar:"User Avatar",firstFrame:"First Frame",promptPlaceholder:"Describe the content you want to generate with the image",optimizing:"Optimizing...",optimizePrompt:"Optimize",hdMode:"HD Mode",hdModeCost:"Costs 20 points when enabled",startGenerate:"Start Generate",pleaseLogin:"Please Login",loginRequired:"Login required to submit task",loginNow:"Login Now",inProgress:"In Progress",statusPending:"Pending",statusProcessing:"Processing",statusCompleted:"Completed",statusFailed:"Failed",statusCancelled:"Cancelled",noVideoUrl:"Video generated but URL not available",withWatermark:"With Watermark",withoutWatermark:"Without Watermark (Member Exclusive)",createSimilar:"Create Similar",downloadVideo:"Download Video",deleteWork:"Delete Work",retry:"Retry",generateFailed:"Generation Failed",generateFailedDesc:"Please check input or retry",startCreating:"Start creating your first work!",tip1:"Upload first frame image",tip2:"Enter description text",tip3:"Select video parameters",tip4:"Click to start generating",noDescription:"No Description",queuing:"Queuing",subscribeToSpeedUp:"Subscribe to speed up generation",cancel:"Cancel",firstFrameImage:"First Frame Image",noResult:"No Result",year:"",month:"",day:"",fileSizeLimit:"Image file size cannot exceed 100MB",invalidImageFile:"Please select a valid image file",pleaseLoginFirst:"Please login before submitting task",taskInProgress:"A task is already in progress, please wait or cancel it",uploadFirstFrameRequired:"Please upload first frame image",enterDescriptionRequired:"Please enter description text",creatingTask:"Creating task...",taskCreatedSuccess:"Task created successfully, processing...",createTaskFailed:"Failed to create task",createTaskFailedRetry:"Failed to create task, please retry",videoGenerateCompleted:"Video generation completed!",videoGenerateFailed:"Video generation failed: ",enterPromptFirst:"Please enter prompt",promptTooLong:"Prompt too long, please keep within 2000 characters",optimizingPrompt:"Optimizing prompt, please wait...",promptOptimizedSuccess:"Prompt optimized successfully!",promptAlreadyOptimized:"Prompt already optimized, may not have obvious changes",optimizeFailed:"Optimization failed",optimizePromptFailed:"Failed to optimize prompt",requestParameterError:"Request parameter error",requestTimeout:"Request timeout, please retry later",serverError:"Server error, please retry later",networkError:"Network error, please check connection",networkConnectionError:"Network connection error, please check your network",startDownload:"Starting video download",videoUrlNotAvailable:"Video URL not available",noWorkToDelete:"No work to delete",confirmDeleteWork:"Are you sure to delete this work?",confirmDelete:"Confirm Delete",workDeleted:"Work deleted",deleteCancelled:"Deletion cancelled",historyParamsFilled:"History parameters filled, ready to generate",cancelFeatureTodo:"Cancel feature coming soon",resumingTask:"Unfinished task detected, resuming..."},storyboard:{userAvatar:"User Avatar",generateStoryboard:"Generate Storyboard",generateVideo:"Generate Video",uploadStoryboard:"Upload Storyboard (can generate video directly)",uploadedCount:"Uploaded {count}/6",uploadLimit:"Limit reached",uploadedImage:"Uploaded image {index}",maxImages:"Maximum 6 images allowed",maxImagesWarning:"Maximum 6 images allowed, you have uploaded {current}, you can upload {remaining} more",fileSizeLimit:"Image file size cannot exceed 100MB",invalidFileType:"Please select valid image files",uploadSuccess:"Successfully uploaded {count} images",imageRemoved:"Image removed",promptPlaceholder:`Example: a coffee advertisement
|
||
|
||
Tip: Simple description is enough, AI will automatically optimize it into professional storyboard
|
||
Supports Chinese or English input, the system will automatically translate and optimize it into professional storyboard description`,tip1:"💡 AI will automatically generate professional storyboards based on your description",tip2:"🎬 Supports various scene compositions and camera types",optimizing:"Optimizing...",enterPrompt:"Please enter prompt",promptTooLong:"Prompt is too long, please keep it within 2000 characters",optimizingPrompt:"Optimizing prompt, please wait...",optimizeSuccess:"Prompt optimized successfully!",alreadyOptimized:"Prompt already optimized, but may have no obvious changes",optimizeFailed:"Failed to optimize prompt",paramError:"Request parameter error",timeout:"Request timeout, please try again later",serverError:"Server error, please try again later",networkError:"Network error, please check your connection",storyboardImage:"Storyboard",noStoryboard:"No storyboard yet",hdMode:"HD Mode (1080P)",hdCost:"Costs 20 points when enabled",pleaseLogin:"Please login first",loginRequired:"Login required to submit task",loginNow:"Login Now",loginBeforeSubmit:"Please login before submitting task",inProgress:"In Progress",generatingVideo:"Generating video, please wait...",progress:"Progress: {progress}%",generatingStoryboardText:"Generating storyboard, please wait...",generatingVideoText:"Generating video, please wait...",startCreating:"Start creating your first work!",noDescription:"No description",queuing:"Queuing",subscribeToSpeed:"Subscribe to improve generation speed",noResult:"No result yet",uploadOrGenerateFirst:"Please upload or generate storyboard first",uploadOrInputPrompt:"Please upload storyboard or enter prompt",startGenerateVideo:"Start Generate Video",generateVideoWithUpload:"Generate Video with Uploaded Image",startGenerateStoryboard:"Start Generate Storyboard",startGenerate:"Start Generate",enterDescription:"Please enter description",startingGenerate:"Starting to generate storyboard...",taskCreated:"Storyboard task created successfully!",createTaskFailed:"Failed to create task",generateFailed:"Failed to generate storyboard",taskTimeout:"Task timeout, please check later",storyboardCompleted:'Storyboard generation completed! Please click "Start Generate" button to generate video',videoCompleted:"Video generation completed!",taskFailed:"Task failed",unknownError:"Unknown error",startingVideoGenerate:"Starting to generate video...",videoTaskStarted:"Video generation task started, please wait...",videoStartFailed:"Failed to start video generation",defaultPrompt:"Generate video from image",videoTaskCreated:"Video task created successfully, processing...",createVideoTaskFailed:"Failed to create video task",generateVideoFailed:"Failed to generate video",videoTaskTimeout:"Video task timeout, please check later",videoGenerateFailed:"Video generation failed",paramsFilled:"Parameters filled from history, ready to generate",cancelFeaturePending:"Cancel feature pending implementation",taskCompleted:"Task completed!",resumingVideoTask:"Detected unfinished video generation task, resuming...",resumingStoryboardTask:"Detected unfinished storyboard generation task, resuming...",resumingTask:"Detected unfinished task, resuming..."}},works:{title:"My Works",all:"All",textToVideo:"Text to Video",imageToVideo:"Image to Video",storyboardVideo:"Storyboard Video",filter:"Filter",sortBy:"Sort By",newest:"Newest",oldest:"Oldest",noWorks:"No Works Yet",noWorksDesc:"Start creating your first work!",viewDetail:"View Details",deleteConfirm:"Are you sure you want to delete this work?",deleteSuccess:"Deleted successfully",deleteFailed:"Delete failed",video:"Video",image:"Image",dateFilter:"Date",today:"Today",thisWeek:"This Week",thisMonth:"This Month",taskType:"Task Type",resolution:"Resolution",sd:"SD",hd:"HD",uhd:"UHD",ratio:"Ratio",time:"Time",popular:"Popular",searchPlaceholder:"Name/Prompt/ID",selectItems:"Select {count} items",selectedCount:"{count} selected",favorite:"Favorite",downloadWithWatermark:"Download with Watermark",downloadWithoutWatermark:"Download without Watermark",memberOnly:"Member Only",rename:"Rename",referenceImagePrompt:"Image 1 running in Image 2 video",allLoaded:"✓ All content loaded",noContent:"No content found",backToTop:"Back to Top",createSimilarInfo:'Create similar based on "{title}"',goToCreate:"Go to create page",downloadStart:"Download started: {title}",shareComingSoon:"Share feature coming soon",downloadWithWatermarkStart:"Starting download with watermark",downloadWithoutWatermarkStart:"Starting download without watermark (Member exclusive)",renameDevMsg:"Rename feature under development",deleteWorkConfirm:"Are you sure to delete this work?",deleteConfirmTitle:"Delete Confirmation",bulkDownloadStart:"Starting download of {count} files",bulkDeleteConfirm:"Are you sure to delete {count} selected items?",bulkDeleteSuccess:"Selected items deleted",filtersReset:"Filters reset",processing:"Processing...",noPreview:"No Preview",videoLoadFailed:"Video Load Failed",videoFileNotExist:"Video file may not exist or has been deleted",retry:"Retry",deleteFailedWork:"Delete This Work",deleteFailedWorkConfirm:"This work's video failed to load. Are you sure you want to delete it? This action cannot be undone."},subscription:{title:"Subscription",choosePlan:"Choose Plan",currentPlan:"Current Plan",free:"Free",standard:"Standard",professional:"Professional",perMonth:"/month",subscribe:"Subscribe Now",renew:"Renew",upgrade:"Upgrade",features:"Features",unlimited:"Unlimited",limited:"Limited",pointsPerMonth:"Points/Month",videoQuality:"Video Quality",support:"Support",priorityQueue:"Priority Queue",advancedFeatures:"Advanced Features",userAvatar:"User Avatar",loading:"Loading...",pointsDetails:"Points Details",myOrders:"My Orders",currentActivePlan:"Current Active Plan",expiryTime:"Expiry Time",permanent:"Permanent",remainingPoints:"Remaining Points",plans:"Plans",currentPackage:"Current Plan",firstPurchaseDiscount:"First Purchase Discount up to 15% off",bestValue:"Best Value",standardPoints:"200 points per month",premiumPoints:"1000 points per month",freeNewUserBonus:"New users get 50 points free on first login",fastGeneration:"Fast Generation",superFastGeneration:"Super Fast Generation",commercialUse:"Commercial Use",noWatermark:"No Watermark",earlyAccess:"Early Access to New Features",pointsUsageHistory:"Points Usage History",pointsUsageOverview:"Points Usage Overview",totalRecharge:"Total Recharge",totalConsumption:"Total Consumption",currentPoints:"Current Points",noPointsHistory:"No points usage history",description:"Description",time:"Time",orderNumber:"Order Number",taskId:"Task ID",recharge:"Recharge",consume:"Consume",pleaseLogin:"Please login first",loadUserInfoFailed:"Failed to load user info, using defaults",loadUserInfoError:"Failed to load user info: {message}",loadPointsHistoryFailed:"Failed to load points history",generatingQRCode:"Generating payment QR code...",subscriptionFailed:"Subscription failed, please try again",qrCodeGenerated:"QR code generated, please scan with Alipay",qrCodeGenerationFailed:"Failed to generate QR code, please try again",qrCodeEmpty:"QR code generation failed: QR code is empty",createPaymentFailed:"Failed to create payment order",qrCodeGenerationError:"QR code generation failed: {message}",pleaseTryAgain:"Please try again",refreshPage:"Please refresh and try again",paymentSuccess:"Payment successful! Updating information...",infoUpdated:"Information updated!",paymentProcessingFailed:"Payment successful but order processing failed, please contact support",paymentFailed:"Payment failed, please try again",creatingOrder:"Creating order...",paymentPageLoadFailed:"Failed to load payment page",createAlipayPaymentFailed:"Failed to create Alipay payment",createPaymentOrderFailed:"Failed to create payment order, please try again",standardDescription:"Standard Subscription - 200 points per month",premiumDescription:"Premium Subscription - 1000 points per month"},welcome:{textToVideo:"Text to Video",imageToVideo:"Image to Video",storyboardVideo:"Storyboard Video",pricing:"Pricing Plans",startExperience:"Get Started",title1:"Create",title2:"Unlimited,",title3:"Ideas",title4:"Realized.",subtitle:"Secure and convenient login with email verification",tryNow:"Try Now",coreFeatures:"Core Features",textToVideoDesc:"Enter text description, AI automatically generates high-quality video content",imageToVideoDesc:"Upload images, AI intelligently analyzes and generates dynamic videos",storyboardVideoDesc:"Professional storyboarding for cinematic video effects",pricingDesc:"Flexible pricing plans to meet different creative needs",startCreating:"Start Creating"},nav:{dashboard:"Dashboard",members:"Member Management",orders:"Order Management",apiManagement:"API Management",tasks:"Task Records",systemSettings:"System Settings",onlineUsers:"Online Users",systemUptime:"System Uptime"},admin:{exitAdmin:"Exit Admin"},dashboard:{title:"Dashboard",totalUsers:"Total Users",paidUsers:"Paid Users",todayRevenue:"Today's Revenue",dailyActive:"Daily Active User Trend",conversionRate:"User Conversion Rate",comparedToLastMonth:"vs last month",year2025:"2025",year2024:"2024",year2023:"2023",userAvatar:"User Avatar",month1:"Jan",month2:"Feb",month3:"Mar",month4:"Apr",month5:"May",month6:"Jun",month7:"Jul",month8:"Aug",month9:"Sep",month10:"Oct",month11:"Nov",month12:"Dec",pleaseLogin:"Please login first",loadDataFailed:"Failed to load dashboard data"},orders:{title:"Order Management",orderNumber:"Order Number",username:"Username",amount:"Amount",paymentMethod:"Payment Method",status:"Status",createTime:"Create Time",operation:"Operation",allStatus:"All Status",allTypes:"All Types",pending:"Pending",confirmed:"Confirmed",paid:"Paid",processing:"Processing",shipped:"Shipped",delivered:"Delivered",completed:"Completed",cancelled:"Cancelled",refunded:"Refunded",unpaid:"Unpaid",alipay:"Alipay",wechat:"WeChat Pay",paypal:"PayPal",selected:"{count} selected"},tasks:{title:"Task Records",taskId:"Task ID",username:"Username",type:"Type",resources:"Resources Used",status:"Status",createTime:"Create Time",operation:"Operation",allStatus:"All Status",completed:"Completed",processing:"Processing",failed:"Failed",cancelled:"Cancelled",textToVideo:"Text to Video",imageToVideo:"Image to Video",storyboardVideo:"Storyboard Video"},members:{title:"Member List",userId:"User ID",username:"Username",level:"Membership Level",points:"Remaining Points",expiryDate:"Expiry Date",operation:"Edit",allLevels:"All Levels",professional:"Professional",standard:"Standard",editMember:"Edit Member",usernamePlaceholder:"Enter username",levelPlaceholder:"Select level",pointsPlaceholder:"Enter points",expiryPlaceholder:"Select expiry date"},apiManagement:{title:"API Management",apiKey:"API Key",apiKeyPlaceholder:"Enter API key",tokenExpiration:"Token Expiration",tokenPlaceholder:"Enter hours (1-720)",hours:"hours",days:"days",rangeHint:"Range: 1-720 hours (1 hour - 30 days)",saveSuccess:"Saved successfully",saveFailed:"Save failed"},systemSettings:{title:"System Settings",membership:"Membership Pricing",cleanup:"Task Cleanup",membershipLevels:"Membership Levels",editLevel:"Edit Level",price:"Price",description:"Description",cleanupStats:"Cleanup Statistics",manualCleanup:"Manual Cleanup",autoCleanup:"Auto Cleanup",perMonth:"/month",includesPoints:"Includes {points} points/month",cleanupStatsInfo:"Cleanup Statistics",refresh:"Refresh",currentTotalTasks:"Current Total Tasks",completedTasks:"Completed Tasks",failedTasks:"Failed Tasks",archivedTasks:"Archived Tasks",cleanupLogsCount:"Cleanup Logs",retentionDays:"Retention Days",days:"days",cleanupActions:"Cleanup Actions",performFullCleanup:"Perform Full Cleanup",cleanupUserTasks:"Cleanup User Tasks",fullCleanupDesc:"Full Cleanup",fullCleanupDescDetail:"Export successful tasks to archive, delete failed tasks",userCleanupDesc:"User Cleanup",userCleanupDescDetail:"Cleanup all tasks for specified user",cleanupConfig:"Cleanup Configuration",taskRetentionDays:"Task Retention Days",taskRetentionTip:"Days to retain completed tasks",archiveRetentionDays:"Archive Retention Days",archiveRetentionTip:"Days to retain archived data",membershipLevel:"Membership Level",selectLevelPlaceholder:"Select membership level",freeMembership:"Free Membership",standardMembership:"Standard Membership",professionalMembership:"Professional Membership",membershipPrice:"Membership Price",resourcePointsAmount:"Resource Points",validityPeriod:"Validity Period",monthly:"Monthly",quarterly:"Quarterly",yearly:"Yearly",enterUsername:"Enter username to cleanup",warning:"Warning",cleanupWarning:"This operation will cleanup all tasks for this user, including:",successTasksArchived:"Successful tasks will be exported to archive",failedTasksLogged:"Failed tasks will be logged to cleanup logs",originalTasksDeleted:"Original task records will be deleted",irreversibleWarning:"This operation is irreversible, please proceed with caution!",confirmCleanup:"Confirm Cleanup"}},Pa=localStorage.getItem("language")||"zh";console.log("[i18n] 从 localStorage 读取的语言:",Pa);console.log("[i18n] 可用的语言:",Object.keys({zh:Ta,en:ka}));const St=xo({legacy:!1,locale:Pa,fallbackLocale:"zh",messages:{zh:Ta,en:ka}});console.log("[i18n] i18n 初始化完成,当前语言:",St.global.locale.value);const gt=Va(js),Ks=Wa();gt.use(Ks);gt.use(ye);gt.use(St);gt.use(Ga);console.log("[main.js] i18n 当前语言:",St.global.locale.value);gt.mount("#app");console.log("[main.js] 应用已挂载,当前语言:",St.global.locale.value);export{Mr as L,Qt as _,Zo as a,Fs as b,ei as c,ti as d,Ie as e,Ke as f,Rs as g,$ as h,Ns as i,Zs as l,ri as s,ba as u};
|