`adapter ${a} `+(f===!1?"is not supported by the environment":"is not available in the build"));let i=t?r.length>1?`since :
+`+r.map(ql).join(`
+`):" "+ql(r[0]):"as no adapter specified";throw new ce("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return s},adapters:Rr};function tr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new fs(null,e)}function Kl(e){return tr(e),e.headers=Ct.from(e.headers),e.data=er.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),nu.getAdapter(e.adapter||di.adapter)(e).then(function(s){return tr(e),s.data=er.call(e,e.transformResponse,s),s.headers=Ct.from(s.headers),s},function(s){return eu(s)||(tr(e),s&&s.response&&(s.response.data=er.call(e,e.transformResponse,s.response),s.response.headers=Ct.from(s.response.headers))),Promise.reject(s)})}const Ql=e=>e instanceof Ct?e.toJSON():e;function Rn(e,t){t=t||{};const n={};function s(l,c,u){return x.isPlainObject(l)&&x.isPlainObject(c)?x.merge.call({caseless:u},l,c):x.isPlainObject(c)?x.merge({},c):x.isArray(c)?c.slice():c}function o(l,c,u){if(x.isUndefined(c)){if(!x.isUndefined(l))return s(void 0,l,u)}else return s(l,c,u)}function r(l,c){if(!x.isUndefined(c))return s(void 0,c)}function i(l,c){if(x.isUndefined(c)){if(!x.isUndefined(l))return s(void 0,l)}else return s(void 0,c)}function a(l,c,u){if(u in t)return s(l,c);if(u in e)return s(void 0,l)}const f={url:r,method:r,data:r,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:a,headers:(l,c)=>o(Ql(l),Ql(c),!0)};return x.forEach(Object.keys(Object.assign({},e,t)),function(c){const u=f[c]||o,p=u(e[c],t[c],c);x.isUndefined(p)&&u!==a||(n[c]=p)}),n}const su="1.6.2",Ai={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Ai[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const Wl={};Ai.transitional=function(t,n,s){function o(r,i){return"[Axios v"+su+"] Transitional option '"+r+"'"+i+(s?". "+s:"")}return(r,i,a)=>{if(t===!1)throw new ce(o(i," has been removed"+(n?" in "+n:"")),ce.ERR_DEPRECATED);return n&&!Wl[i]&&(Wl[i]=!0,console.warn(o(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(r,i,a):!0}};function Cg(e,t,n){if(typeof e!="object")throw new ce("options must be an object",ce.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let o=s.length;for(;o-- >0;){const r=s[o],i=t[r];if(i){const a=e[r],f=a===void 0||i(a,r,e);if(f!==!0)throw new ce("option "+r+" must be "+f,ce.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new ce("Unknown option "+r,ce.ERR_BAD_OPTION)}}const Lr={assertOptions:Cg,validators:Ai},Bt=Lr.validators;class so{constructor(t){this.defaults=t,this.interceptors={request:new Dl,response:new Dl}}request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Rn(this.defaults,n);const{transitional:s,paramsSerializer:o,headers:r}=n;s!==void 0&&Lr.assertOptions(s,{silentJSONParsing:Bt.transitional(Bt.boolean),forcedJSONParsing:Bt.transitional(Bt.boolean),clarifyTimeoutError:Bt.transitional(Bt.boolean)},!1),o!=null&&(x.isFunction(o)?n.paramsSerializer={serialize:o}:Lr.assertOptions(o,{encode:Bt.function,serialize:Bt.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=r&&x.merge(r.common,r[n.method]);r&&x.forEach(["delete","get","head","post","put","patch","common"],_=>{delete r[_]}),n.headers=Ct.concat(i,r);const a=[];let f=!0;this.interceptors.request.forEach(function(w){typeof w.runWhen=="function"&&w.runWhen(n)===!1||(f=f&&w.synchronous,a.unshift(w.fulfilled,w.rejected))});const l=[];this.interceptors.response.forEach(function(w){l.push(w.fulfilled,w.rejected)});let c,u=0,p;if(!f){const _=[Kl.bind(this),void 0];for(_.unshift.apply(_,a),_.push.apply(_,l),p=_.length,c=Promise.resolve(n);u{if(!s._listeners)return;let r=s._listeners.length;for(;r-- >0;)s._listeners[r](o);s._listeners=null}),this.promise.then=o=>{let r;const i=new Promise(a=>{s.subscribe(a),r=a}).then(o);return i.cancel=function(){s.unsubscribe(r)},i},t(function(r,i,a){s.reason||(s.reason=new fs(r,i,a),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}static source(){let t;return{token:new hi(function(o){t=o}),cancel:t}}}const Eg=hi;function xg(e){return function(n){return e.apply(null,n)}}function kg(e){return x.isObject(e)&&e.isAxiosError===!0}const Ir={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ir).forEach(([e,t])=>{Ir[t]=e});const Tg=Ir;function ou(e){const t=new Fs(e),n=Nc(Fs.prototype.request,t);return x.extend(n,Fs.prototype,t,{allOwnKeys:!0}),x.extend(n,t,null,{allOwnKeys:!0}),n.create=function(o){return ou(Rn(e,o))},n}const Le=ou(di);Le.Axios=Fs;Le.CanceledError=fs;Le.CancelToken=Eg;Le.isCancel=eu;Le.VERSION=su;Le.toFormData=Co;Le.AxiosError=ce;Le.Cancel=Le.CanceledError;Le.all=function(t){return Promise.all(t)};Le.spread=xg;Le.isAxiosError=kg;Le.mergeConfig=Rn;Le.AxiosHeaders=Ct;Le.formToJSON=e=>$c(x.isHTMLForm(e)?new FormData(e):e);Le.getAdapter=nu.getAdapter;Le.HttpStatusCode=Tg;Le.default=Le;const Sg=Le,Rg=""+new URL("logo.6622f82d.png",import.meta.url).href,Lg="data:image/png;base64,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",Ig="data:image/png;base64,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",Og=""+new URL("add-icon.0b0b5313.svg",import.meta.url).href,Pg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAAED0lEQVRYCe2Wu09UQRTGdwlYWWMAIzEhWhCJhRgVAbHzAWil1sT/gKcKLAqG159AYimVgIFSeVOglSYmRhPFEEiIlTQ2sP6+y5zr3OUuLFDqJLPnzHce883MmdmbSPzrLXmQDRgaGjqNfyO9Op1OFyFPuvjVZDK5Dja3tbU10dHR8d3h+4qcCDDxdZL3ku3yvhlxgMwS4nFLS8vMfv57Eujr6zuRn5//goQ3vESf0Sch9BW55vBifMrA6pFnPN9Jxk0Q2fCwiJqVwODg4Hk8J+inXMQYyVIk+xDJkDFgtyogkgK+60wrxDVki4sloMkJmifRcZJsoN/LZTvdhIEYGBioI26UQSF9E/1qHIldBLTtBQUFywRp5Z/y8vJuNjc3r6AfuA0PD5dub29PEVhOX4HERUhEjiMvM6vOHEyTbxxlcuUVcXLcUi56KTs6ItxvEQKqdlgGBYfz/cOu3J9AOcj5wGH1HG+tb48QYNI+Zxxra2ub9h2lc64XSFCVidtYNvnY2CTb/hZ9XGPIPDdcMiTgHplLAnFKSfqN86wEV20s4Nvp26Q7bEE+cSTAu+XHIq+oNqSrhQQw3NmBEl/iqpViOoY9KFp8n7LaLuefkC7MjZPo8o00l1NviEjoNQ1aSACGVx322smIaG1tXSSw1QN7WHU3q20D6zGcPF3t7e1LNvYl8boRatU7IroDwbtOgi9mzJTUxZBPAj2Ff7/5aXJW+szGMTLITVyJ2cIdAChy4JoZ42QmCfPJYfIEV3Ld+RdbnE8gLZCz3vU4mbMn/TiD4zCzBdLLHcwl0A+ylYfsItFuoDP3t918dByqCRvHSeKCXUbaXH8JGIgsiwsWpmrHHp45kK5jeCVFwr8divEbdsu9mwDGOTkzQXhF/GASq3LDakfv5Gb0qkv3fHv6+/vtRnlwoN7WL0cxa4bwCPQlI1As2coKczBJAf2WWWNIPnETB2bpwoIBPujyjTTlBD8DyBTp8KqHBPQZhcOSonBISfqNN/0dJCphX8VVsyc7dBEmm3y4Ke9Dg1PIGewecyzyTvwwe6TiYXkNx2kZkdfj/g8s8CCSvPqke+NiatixeYsPd0AAq5hBTEqH6aj/Zgs7TFMOJn/pYsf9yYVFCAhg4ibECr2QLZ06CgnFKody0b9xPA+RkbaLALugT7AGvDbp5SRY1tFEonIY8F7UKVY56L/QG6mjn5mhkRrwjapatk7VWiocUq+4KSkK6KPvl6lzBc+xUhWcfZR+0+TZ4rISUGJIFEJiBLVeY9f0l6rPbf2xBA8KE5Qw1iOje36Wbm1c2x63cnPYk4A58QjVouvqVRm2l4TMAsQfZRZcXExOBCzQVXQjyWuYpAhpf+Gr6Pqnm2U3Jvx7brH/ZbYd+APZxM/2zgvhdQAAAABJRU5ErkJggg==",Bg=""+new URL("dot.1026a040.svg",import.meta.url).href,Hg="data:image/png;base64,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",sn=""+new URL("dot-yellow.4b5e135b.svg",import.meta.url).href,on=""+new URL("dot-gray.86cdd7b5.svg",import.meta.url).href,pi=""+new URL("empty-icon.24a01ae2.svg",import.meta.url).href,Mg=""+new URL("close-icon.86743366.svg",import.meta.url).href,_t="data:image/png;base64,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",mi="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAAECklEQVRoBe1YS2tTQRTOowmND1wYEl26Cc2jWVhXBUvEqlDqMq2KCzdaf4ArcSEIWlB3LkTpqq0IAQVRd2pUbFwY+kif2bRQKDTGhViTJsbE76QzdW7M497k5uaCGbg9Z+bOPef7zpyZnozB0G7tCPzfETC2mr7f73fk8/mbhUJhw+Px3AmFQr+VYGopAQb+DQD7GOiQ3W6/EA6Hc3JJmOVOVHteGfDkwptKpdxYiedra2t5OT5NciapPcfn8zmRNu9gl0c+I/gIJpPJ8WAwKCu4siYJxhtWKfLId0obLzP2E3LAaDTGIM+wMR9IyFoJTQmUSRsCPzg/Px9OJBIRp9P5QyAhK500I1ANPIu6gUg4HI4t9E+zsZokNCEgB3y9JJpOQAn4ekg0lQCdNtiwdNrwDbtlMpkGYrHYBw6WSyLa19e3vbi4WKAxlk5ZqCfZHEqnDMY/sn5RNO0YJfDw8BaPhzksgp+bm5MAoHder/c8jtX15eXlMTaXiwgUIsGbgytcdnBFTakUPI7Qcfg341nnOGAjAP0VHisbm83lcreYvitULyXK5HwKaTS4sLBAqSRpADmEgUk8FMgxHKdXIPOwcRwr8hr6PjzUZrPZbH88Hk/udP/+VZWA1uCJhmoEWgFeNQKtAq8KgVaCb5hAq8E3REAP4OsmoBfwdRHQE3jFBPQGXhEBPYInAlR/1GxdXV0HUa+8x0ReVf5EfwD/+mlM0iqVByjYTmAilQd72QczqG36V1ZWvkkMKOzIKubMZvNt2OVVJUqbwlmA/6ckrgYehF/Cxh6Grwge1WdD4MmWnHLaBOfDzDEJdI1XA4GAhDzA+/HuCZ4OvH8MgpehFwsz9F9A5+CpMDulBnjYrE0AwOjq4wBNFtoQbg0mRRJYlRSAbkI+wA+WEcwtYN/IrioF24rUmsVcd3f3CEA9ZFZXIY8IHibcbvelcteBlPMg1JS0EfzXXgGA7+UfANAN6Nd4H/Li0tKSZCXoHUUec8W0mVEzbQT/tQlgskgggty+jzGRxDDSaYKnU5m0KW7Ycj9GRCD16lVTyOVy2a1WawLGad4mwB/ijrA1iMRd3od8itV6xCLPf0mpdtoIfiRq1VPIYrFQ9DnJKfFLkLmH/nVh7BzA05WhZuDJt+QoFMBwdTd9MEA3BMXW09NjSafTRxHxNEBvYpBuIKhxsk2P/I47BQQAdj9OllF82JvJZI7hfsfGjZRIzcCTXx6xEgwGA0UZQL/jRSWgkm9AMI6BZ52dnaPRaJS+06RVTCGkiKtKlNMA/AXvI7j++ISNHpmenv6qCeISJxUJ2Gy21e3t7Thy3IVnA99NEVjURZ+xuRHk6K8SW/rrUhrhP+1h/SFrI2pHoB2BdgT0EoE/XD0Yrfi3Ps4AAAAASUVORK5CYII=",Ug=""+new URL("edit-icon-white.29b27582.svg",import.meta.url).href,ru="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAADpUlEQVRoBe2ZO2gVQRSGTXxEo4UJYuEjGkHBoCjaKqIWViKIKFgJVkpANGlErGORSkUURBAFGy3FwkZFfKOJDxBBBG0EwfiM78f3x2wye+7c3b25s5uL5MB/d845M3P+M7MzO7u3blyyNCW7U72fqfE9tVa8wlRUtRuRTKFVJ+gBCvynSqiPE6AOpMlsKjwGinkJNIOKpIXaj0C1pH3t12Zg0m1iP0EXp0SpH/Rq5C+CJYm1R+5UUmnSbyq0od8AS43dq3Zg9Y1ctbZv9HsMZLmFplOv18OjD9sakCgP8Lpkr6FrBLSIq8Ek2lciSuIKcLmo/AVsAV7R6NgFu8hbsxjjZMKcBzaJX9jaLQWRbwR225qI7aetnJOu3UaLfCVYDLQbzQCtwCddGA8AJTggSsBmO2HQl9dFe/0OoFtVA2Xjp+mnaDMkRSYwjaj7wRuQRjLNvz7KoKgENhLwZQDiUWKbi0qggUDHU4g/x38S7AYbgNbDMnAQRITd623sQztcnjOgBXqzDAltHEfBCuCT7Rj1HHGJq6xjhm7FIckrgZlE8B1NtB1qRuQvJ/tw/AaW/Gls2iFjkkcCGqG7wBLQGlgVix5XtK13A9tO+iEgf4nkkcAFolgSt7Bpfy8n9TjOAttOM7anXCPZQyewiz4tCe332vuTZCtO2+4rtm1JjeQLmcAs+vsAXCI6FuuMkybtVHDbvUdfl9ZI/pAJnKE/l8Qn9DYFySBK8iFQ+xdgOcgkoRJYSDR7LOjMxGC40niKC0DJTjNcpbQUKgGd+93Rf1YpkVJq2SwhEtDT9i1wE9iZLXxFteZSWw+/I2BO1DJEApvozCX/Dl2vqaHlHh1Gce5EnYdI4LDTsQLEjrtRoCqvmmX36axygx4eIWS16eSy0UOoWuDuk1hl2areRjUI/SCaWl3ngdDiu1MaQ8yAFpN7vyuZV6HZl+svRALNpvPX6Lo/C5EQCWhqXfnoKnmXQyTwFJI6MkRyPSoUdfUtjkq/SuiMfw50Ab0L5CE+ngOz73NUmkAehG2fPp5BdiEbqFA9xBoolLANNpaAHZGi9bEZKHrEbbyxGbAjUrT+X8yAPh79MCPXYvRaUOcbEvpbTP+dDUgPv+4Lid6o8ngp+Ret8t9WmlwFLsf7bjcdxulWrNXyXjcBvVH5PoXXKvle+OrfzJjovo8+7dUqcfESeX0f8oqy0tToj2/fvyOjlZi46J4Xt9jIu58p8JVIU4lldAx95cL+BRfIP0NGsZjIAAAAAElFTkSuQmCC",gi="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAACWUlEQVRoBe2Zyy4sURSGm7QBI2dESI4WyTFhxuQ8BPEQLhPEROI2FzPxHNIJOZwnOE9gSjsuESNDA9f/a7WS1a2LiC69S/ZK/uy1V7H3vy5VvatWofBaumSaE/4KF8Kd8JSCBdk/K6yRtj57w+FQmBU6hTdlSlcvhbQF6+1ZO1C/H85MeA/a3WRJ+q7Q52yhqf0iVBYWjVhbohB5yNscc0XYS8ZbDA3kn2xHDewfMY3oj3+n/AMlMyhMCiXB5FEKnOFXoOZ92TxoviIUhVCkQ0RWBbhZWZ1Lr94T3LBmZIR8qLImYp7rDER52pjxWHpIkYefFzJREYzvATcxNWiyL+XeJgGOPFardZ9wG8WBHkf0zOmhqv8dsV4c8CUTcvSNt+dYxIFcS3Sg1emLGWh1Bjj7VH/NEiLNONtk7dNbZ6es947rxwjECMQI1EWAx+i4sCx0110LfXojgls4wAtCScijVDhK8HaTV3kiA2MCJfQjZ15QQps54xzpxgjECHy7CPAYzf0LjX2mY2zG9/6ss1zTEIkv9VmH+731Ywbei1DW179FBmq+9mYdsSasX/M1nQxcu0V/Oj1UteSIXaHTRLbfghPptHFCFbidCsb3D0TpgJuBkW5gqLIhYp7rNERpVV64C7Qy6QaGlAm4rAu+zXqmeSdnIYT2fVnwT6VTzWn60blsZaN7SPvDb0AwodGNrVpCZlyU4j30qUrTOZd8Vlgjbf1GdjjO26Y+4tsy0r6nnEIVuvNEfscIegew0YP9JXBjHwiXgv+d0PRLhb3hQKlw7B9OdA0v8gypmLKP2lSLggAAAABJRU5ErkJggg==",Ng=""+new URL("title.98892974.png",import.meta.url).href,Dg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAA4CAYAAABNGP5yAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAOAAAAACP8+m+AAADhUlEQVRoBe2aS4hPURzHZ7zfj4USmTGTkGcodiRRNh5JNsooO7NhgyJSyoayIDbySFlYkLLwyAaRR5Ty2DCTJPIYeYfx+U5z9O/M+f/N/zf3/q//vfdX3+4959zze3zP6557T01NxqU2EP8M8prAPDAaVLN8x/lWcBEcA+9AURlCyVHwG7SnEG3EtAEERcHfAmkM3I9pd4iBUxkJ3pGxwpGgOWAuUOv7cpuM60DjqFplOI4vA2O8AJ6TngB+Kf8QcMy46zbyQhOknq82GYbDV4GLzV0Xu0AeeoV3XUGKrg3E4k/uOxVfL+AvdWIrbfKMgF54QdUrLQL6ewXfvHRakp+8QHorLQIyLTkBmW5+gs98D+jTwx4wivpDe6jDr/6WDL23V0SsBDTi3XkwJSYvr6B3Ofgck/6/aq1DQG+KcQUv5xaB9bqJW6wEdLxExOzc+Jj1d6i3EvCkAs49qoAN8yqwB+cugx8xOPkFnSfBiRh0d1FpnQRfoUm7Kb1OarcVpbyPUtm/dFkJcHq1n66ow85wVFfrHBCV/cT15AQk3gQJO5D3gIQbIHHzme8B1mVQxK0DC8GABJuxFdsHgb75mcRKQDPWDpgsRl9pNSonAdO3TOsQWBJ9HGaNddQ070ytBMSxBzAzQEVT68uglYDj1NWPhv9BbuLEY6sj1jngHAZngwVgoNV4BPVa0HEWmBvDSoB8f9AJ3VetWIdA1QbsO54T4DOStXTeA7LW4n68eQ+AkXaPlb5eOi1Jv7E73h2U+caLcJqXTkNSh6UavEBeu/QZbtQLHPSld74rTMl1X0F8Ls41iq0WrAIioVC+ktgPLgH/aEnhc1Hda3OlP0E/y1SoHqweW2zY1lO2FqwEhfKRRB1oU6Z+buhMoGMmqatOq80E3ZURPHgfWPzd7huZTIbmAouyKOvoUOYO0J09yiajv/r1HtQ/nYKnRqVRkiBdd8BUUEo2Uliu3dPUKbl7HcQDm4G1a5XrUKnn9ZFjK9AQDclgMq+BUjpUJj0XwFLQRTQJFhMdfRkLZChOGYdyzdKNRYzoHHMTCH30kP9a3kaCkHwgswWUO7mGdMWap265t9PRUItqVdoCivUGitIhswjjHgiRoLwbQF+AUy39iG4X0IoQIuIl+XEPS0wkL3rB0QfPEAlzknevMh5ozGu913E5R4R6gFarTMlEoj0MjgC9tEUmfwCaJfF0KbQc/QAAAABJRU5ErkJggg==",Fg=""+new URL("mini-code.71ebcc53.png",import.meta.url).href,iu=""+new URL("menu-icon-gray.d61f02b1.svg",import.meta.url).href,Vl=""+new URL("comment-icon-gray.2c8779f9.svg",import.meta.url).href,lu="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAAIA0lEQVRoBc2aaWxVVRDHea9FEtomZXFBqlEj4DdDCsgXE+GDxqqIdGWTBAUUUInBxBijQYx8QAOBogIqhKVQyiYqrrEuiYIC+pGCSiLiVqlgW6SUtv7+l3tv553e9+hroXWS4ZyZc2bOf86Zs9xXYn0uAW3btu0a3IyPxWK3tbW13UL9JngQnA2LGuCT8E/0Odza2rqPsrqkpOR3NXaHYl013rlz56Dm5uapAJmOj1Fd9PMt9hszMjIqJk2apADTprQD2LFjR15LS8tCRpoF9097xGiDRlZuLcG8zKqciO4Sre10AKtXr+47YMCAubh5EQ5SI9pr17VnCGRpTk7OkoKCgqbOuOlUAOT4CJxVwrcmcdqC/hvlNeVBypqmpqZfGyD1z4b69et3LeDkJ59yPOUYOA5H0ffsk9KysrIjUY1Wd9EAKisrCwG0HqOoWT8OmFW0b0p36f1UnIbfeXAe7FI9ihn43eU2WDllAIB/BHDlGGRYI+q18LPwegY457SlJbK6VzAJMxlnMYaDHWOt7FzGWOPoQzFpAD7418Ke7ZUKqo/htK5d1f2af6qVE0hZhLc5yYKIDMBPG+W8nflmnM8tLi5+I2KAS6aqqqqaw4qsxGFf47QFXVFpaeluo/OqHQLwN+wBWm3OnwF8EeDfdx1cDpkJLGC8KnzbY7o+Ho/nFxUVHbVjJpwCykcaNfMWvGa+x8ALHDO9l6IEbpbsUw4nU6WO80ChMiEA5CfhhKPST5semXkBCoicf4+0eTyQ/XIkd9ECqwtTiNkfSkMNnBV0wMFmZkNHXa8RuLYyeKkB0MDTY3hhYeFv0tkVeAo5BE/9JE+GhGhl0Auk2/8vM262/5TxVF4AOsKQ9Lax9MyUKVOsoW3rsbqOa9L4eWfAOT7mCyugVyUd7I7/BXm9Y9RrIqmso/tnAyALzN594a0AEepJHBIG5UTerRs2dHYJKj6WhEsVzA/KdZw3yRDKfDNOa2Zm5mYj/1+qGwGip0VAoysqKq7OPH/+/B1EE55GtO5nhyuFQuIkuAdhNdwGP86MpHxghYZpVhjnAUx0C5MEbXP8+8DzwpgnaD+IoFesKMZE38HlFh97Qb7wL7HoSeySwOuYzYOrcDTF7dBd2fep29cbBxwa06VPrYIgx8b5R9+wISEfCIX2yvn2qvc+2sCACfvGtKdd9X1twNC+veyYgU+tQEgEOUKb+OZQQ4UVOWJl1en4KIXd1BpoHW+WGWrvDvk+1uHDgj/HmDr/XapxFMMUQK5V8t7wbjir0yMOhxPRnTX6DHTrmD0F1yUCvL4D3sLYBV8S9XBkv7rYchWAfbgJiPcZqIol36E2mQ1Cm38VT+Co2bLmHeoE/hDg19IgDAFplRmq+O1AYcvc3Nx6K1PPscZOW0eRk+AD9oi7EjF05czmvI4W0RoCfpiWNbAd/xx+ihhjT7RVtFYO3Bl3VyTBkqPtQ2bufpT/mgZUsZXM6nyji6wS6CyA6oSx4JuwL8T3O5FGvvLUqVM5Tnu9nPxtlWziIVaOqrPEH6G/G2407UqnFQB0n8BhFwKcDVAXvCbiPny+G3ZMUuHcd7GdUgA/2v5s4uFWTlZnqT9nJgtotyuolVgO0CdcO30qonsdtpemfgeagK+P3f5J5BGO/micAQ9bJQ5HWzlVnSX/AvsOQWCjIJ4ObAG/AL96yySAx3YCPj4J+l2spP8o2wefNZnMuH5oDZed+jjb6WJ1lv5LwCqd9Bloc3QJ6aQJOstArzh+ziArbRJuVqdPBxE/4x3l1zHvQZSZqfM1mJ1WPhhumDx58nGnc0qRWb6dARREykOA9gaCKlDgKR06jUzS9aiOwcHmb+NeGBLno+UPlAdM/zifbFON3KmqAAHsLjr/k8KgkT6a+bTAyx92whSAl2q/sHsKGjdKY2geEesXirQIYF/hS+l0OsLwNG130ueziLaUqr179/ZjdRPumQCzF4B+n8eDPRLzMJiZ0muSRgXhv3C300WpKdYr8za1UaZN/Easz92hxrARzJWSg7zvw4ZbRlT2I76OHBvR29/F+vYFh07KwUEATO4rnF4LJYc5BfiXke0qDCRKfVz0KgFex28Innq9j9XDFQbAZXKChhcsWuQy/wKy6h6rkxXK+2I7IJgWgTX821oYgDrV1dUto/jOGrBcK3Gky6pHiYm7F7DLnUEPgXGF1YV7IFBu3bp1OJtQx6q9lHTlF5N3OucvOwk842mT9jeD6XjOZ/Z/MLr2PRAo/T/r6EvL/gLQn9nYzUo8EvS7XKXSBvC78G/BC8t0F7wwdFgBKUXcA7Mp9HJ0qZKNNf9Sn06MdyUDrYITch6ZeLxfKNa6QCQnDUCNfhCvUs2QbOgkK/JcVlbWm539a6KxTajqkvLP+UU0DExoJAsA/yipGwlefVMGoA4s6UTAbqBq94SaRCfgct5Om9N9O23ZsuU63vfTAKiTxl5S8itSzitt9nhSkn8uGoDstm/fPkx/XKA6MomfVvTa+HpdHoRrYAXXAIuyORjy9K3BZIwC9Hh0+XDCKaiOPh2iLI3K+aBDUHYqAHWurq7OrK2t1WwthqNWQ926S94fugnyJcDbn3GS+u10AIEH/ZbKTD7FLGqTZwX6bpaN2OvAWArw8JLqjM+0Awic+m+UycjT4DFwur7asNnPRGxixrcAvA45bUp30MgBCOYqjtZxgBkLGP1UeSOsYzHbN9BeqIWP0ecwffaxgav5Hyp/+u1dLv4D4SL5jJQdUmEAAAAASUVORK5CYII=",xo=""+new URL("tick-no.179037b3.svg",import.meta.url).href,ko=""+new URL("tick-option.e092d22f.svg",import.meta.url).href,jg=""+new URL("QRCode-icon.a105d5fc.svg",import.meta.url).href,Jl=""+new URL("delete-icon.4d386dce.svg",import.meta.url).href,au=""+new URL("arrows-icon.271dd0d3.svg",import.meta.url).href,To=""+new URL("tick-orange.233abc69.svg",import.meta.url).href,qg=""+new URL("issue-bj.44adad8c.svg",import.meta.url).href;const Kg=(e,t)=>{const n=e.__vccOpts||e;for(const[s,o]of t)n[s]=o;return n},Qg={name:"#answer-app",async setup(){const e=(A,y)=>(A=A.indexOf("//")>-1?A:n+A,new Promise(function(S,M){Sg.post(A,y,{emulateJSON:!0,withCredentials:!0,headers:{authorization:"017189d7d01fa8ccf649f36e82807937"}}).then(function(te){var Ae=null;try{Ae=typeof te.data=="string"?JSON.parse(te.data):te.data,Ae.code!=200&&He("error",Ae.message||"报错了,请重试!!!"),Ae.code==401&&(window.location.href="https://passport.gter.net")}catch{}S(Ae)}).catch(te=>{te.response.status==401&&(window.location.href="https://passport.gter.net")})})),t=ai(),n="https://ask.gter.net";let s=Y("list");Vs(()=>{a(),we(),window.addEventListener("scroll",C),l(),Io&&xi(),o.value=window.location.origin});let o=Y("");Yr(()=>{window.removeEventListener("keydown",Mo),window.removeEventListener("scroll",C)});const r=()=>window.location.href;let i=Y({});const a=()=>{e("/api/user").then(A=>{if(A.code!=200)return;let y=A.data;i.value=y.count})};let f=Y(!1);const l=()=>{const A=localStorage.getItem("historical-Search");A?K.value=JSON.parse(A)||[]:K.value=[]},c=()=>{K.value.unshift(v.value),K.value=[...new Set(K.value)],K.value=K.value.slice(0,10),localStorage.setItem("historical-Search",JSON.stringify(K.value))},u=()=>{v.value!=""&&(c(),V=1,q.value=[],s.value="list",Qt.value=null,jn({keyword:v.value}),g(),B())},p=()=>{K.value.length!=0&&(D.value=!0)},g=()=>{setTimeout(()=>D.value=!1,300)},_=A=>{v.value=A,u()},w=()=>{v.value="",V=1,q.value=[],s.value="list",Qt.value=null,B(),gs(["keyword"])};let D=Y(!1),K=Y([]),j=Y(!1);const C=()=>{const A=document.documentElement.scrollTop||document.body.scrollTop;document.documentElement.scrollHeight,document.documentElement.clientHeight,A>115&&s.value=="list"?j.value=!0:j.value=!1};let v=Y(""),O=Y(""),q=Y([]),V=1,U=Y(0),Q=Y(!1),F=Y(!1),oe=Y();const B=()=>{V==0||Q.value||(Q.value=!0,e("/api/lists",{page:V,limit:20,keyword:v.value,type:he.value}).then(A=>{if(A.code!=200)return;let y=A.data;q.value=q.value.concat(y.data||[]),U.value=y.count||0,O.value=v.value||"",q.value.length>=y.count?V=0:V++,V==0&&q.value.length!=0?F.value=!0:F.value=!1,q.value.length==0?oe.value=!0:oe.value=!1,v.value?f.value=!0:f.value=!1}).finally(()=>Q.value=!1))};let ee=Y([]),he=Y(null);const we=()=>{e("/api/common/typeList").then(A=>{if(A.code!=200)return;let y=A.data;ee.value=y,z()})};let J=Y(0),ie=Y(0);const z=()=>{let A=document.querySelector("#pageHeader");J.value=A.clientHeight+10,ie.value=window.innerHeight-J.value};let ke=Y({}),kt=Y(0),et=Y(0),je=Y(0),yt="",Hn=Y({}),un=Y(!1);const qe=(A,y,S)=>{un.value||(un.value=!0,ke.value={},re.value=[],Me.value=0,e("/api/details",{uniqid:A}).then(M=>{if(M.code!=200){s.value="list";return}let te=M.data;ke.value=te.info||{},kt.value=te.isanswered||0,et.value=te.iscollection||0,je.value=te.ismyself||0,yt=te.token||"",Hn.value=te.share||{},s.value="details",y!=null?hs(y):Tt(te.info,A),re.value=[],Me.value=1,St(),Po(),S&&I(),jn({uniqid:A}),_s.value=te.seo,hn.value={text:"",anonymous:0}}).finally(()=>{un.value=!1}))},Tt=(A,y)=>{let S=[...q.value];if(S.length==0&&f.value==!1){setTimeout(()=>Tt(A,y),200);return}let M=!1;if(S.forEach((te,Ae)=>{te.uniqid==y&&(hs(Ae),M=!0)}),!M){let te="";A.content.indexOf("
{qt||Me.value==0||(qt=!0,e("/api/details/answerList",{token:yt,limit:20,page:Me.value}).then(A=>{if(A.code!=200)return;let y=A.data;y.data.forEach(S=>{S.commentList=[]}),re.value=re.value.concat(y.data),re.value.length==y.count?Me.value=0:Me.value++}).finally(()=>qt=!1))},h=(A,y)=>{e("/api/operate/like",{token:A}).then(S=>{if(S.code!=200)return;let M=S.data;re.value[y].islike=M.status,re.value[y].likenum=M.count,He("success",S.message||"操作成功")})},m=(A=yt,y)=>{e("/api/operate/collect",{token:A}).then(S=>{if(S.code!=200)return;let M=S.data;Se=1,Ze.value=[],M.type=="askquestioncollection"?(et.value=M.status,ke.value.collectionnum=M.count):(re.value[y].iscollection=M.status,re.value[y].collectionnum=M.count),He("success",S.message||"操作成功"),M.status?i.value.collect++:i.value.collect--})};let b=Y(!1),k=Y(!1),E=Y({});const I=(A,y)=>{A==null?(E.value={title:ke.value.title,content:ke.value.content,anonymous:0},b.value=!0,bn(()=>Fn())):(y=="my"?(E.value={title:ke.value.title,...tt.value[A],text:tt.value[A].content,content:ke.value.content},Ke.value=""):E.value={title:ke.value.title,...re.value[A],text:re.value[A].content,content:ke.value.content},k.value=!0,bn(()=>Fn()))},N=()=>{b.value=!1,k.value=!1,No=!1},L=()=>{E.value.anonymous=E.value.anonymous==0?1:0},H=A=>{let y=null;A=="you"?y=document.querySelector(".your-answer-textarea"):y=document.querySelector(".question-textarea"),y&&(E.value.text=y.innerHTML),e("/api/publish/answerSubmit",{token:E.value.token||yt,anonymous:E.value.anonymous||0,content:E.value.text}).then(S=>{S.code==200&&(No?(qe(E.value.uniqid,E.value.index),b.value=!1):(re.value=[],Me.value=1,St(),N(),E.value.token||i.value.answer++,A=="you"&&(y.innerHTML="")),He("success",S.message||"操作成功"))})},T=A=>{re.value[A].commentState?re.value[A].commentState=!1:re.value[A].commentState=!0,re.value[A].commentList.length==0&&re.value[A].commentnum!=0&&W(A)};let G=3;const W=A=>{ne(A).then(y=>{let S=y.data;re.value[A].commentList=re.value[A].commentList.concat(S.data),re.value[A].commentCount=S.count})},X=A=>{G=1e3,ne(A).then(y=>{if(y.code!=200)return;let M=y.data.data.slice(3),te=[...re.value[A].commentList,...M.filter(Ae=>!re.value[A].commentList.find(Te=>Te.id==Ae.id))];re.value[A].commentList=te,He("success",y.message||"操作成功")})},ne=A=>new Promise((y,S)=>{e("/api/comment/lists",{token:re.value[A].token,limit:G,childlimit:1}).then(M=>{M.code==200&&y(M)})}),le=(A,y,S)=>{const M=[...re.value];let te="",Ae=null,Te=M[A].token;S!=null?(te=M[A].commentList[y].child[S].commentInput,Ae=M[A].commentList[y].child[S].id):y!=null?(te=M[A].commentList[y].commentInput,Ae=M[A].commentList[y].id):te=M[A].commentInput,e("/api/comment/submit",{content:te,token:Te,parentid:Ae}).then(We=>{if(We.code!=200)return;let Ue=We.data;if(S!=null){let Ve={id:Ue.commentid,content:te,isauthor:1,islike:0,likenum:0,reply:{nickname:M[A].commentList[y].child[S].nickname},...Ue};M[A].commentList[y].child.unshift(Ve),M[A].commentList[y].childnum++}else if(y!=null){let Ve={id:Ue.commentid,content:te,isauthor:1,islike:0,likenum:0,reply:[],...Ue};M[A].commentList[y].child.unshift(Ve),M[A].commentList[y].childnum++}else{let Ve={id:Ue.commentid,content:te,isauthor:1,islike:0,likenum:0,...Ue,child:[]};M[A].commentList.unshift(Ve),M[A].commentCount++}M[A].commentnum=Ue.count,Ce(),He("success",We.message||"操作成功")})},me=(A,y,S,M)=>{e("/api/comment/like",{token:A}).then(te=>{if(te.code!=200)return;let Ae=te.data;const Te=[...re.value];M==null?(Te[y].commentList[S].islike=Ae.status,Te[y].commentList[S].likenum=Ae.likenum):(Te[y].commentList[S].child[M].islike=Ae.status,Te[y].commentList[S].child[M].likenum=Ae.likenum),re.value=Te,He("success",te.message||"操作成功")})},pe=(A,y,S)=>{Ce(),S==null?re.value[A].commentList[y].childState=!0:re.value[A].commentList[y].child[S].childState=!0},Ce=(A,y,S)=>{const M=[...re.value];M.forEach(te=>{te.commentList&&te.commentList.length!=0&&te.commentList.forEach(Ae=>{Ae.childState=!1,Ae.child&&Ae.child.length!=0&&Ae.child.forEach(Te=>{Te.childState=!1})})}),re.value=M},Xe=(A,y)=>{const S=[...re.value],M=S[A].commentList[y].id,te=S[A].token;e("/api/comment/childrenList",{token:te,parentid:M,limit:20,page:1,childlimit:1}).then(Ae=>{if(Ae.code!=200)return;let Te=Ae.data,We=[...S[A].commentList[y].child,...Te.data.filter(Ue=>!S[A].commentList[y].child.find(Ve=>Ve.id==Ue.id))];S[A].commentList[y].child=We,re.value=S})};let Ke=Y("");const ds=A=>{A=="collect"?(Ze.value=[],Se=1,dn()):A=="answers"?(tt.value=[],Mn=1,vi()):A=="questions"&&(ft.value=[],Nn=1,bi())};let Ze=Y([]),fn=Y(0),Se=1,Qe=!1;const dn=()=>{Se==0||Qe||(Qe=!0,e("/api/user/collect",{limit:20,page:Se}).then(A=>{if(A.code!=200)return;let y=A.data;Ke.value="collect",Ze.value=Ze.value.concat(y.data),fn.value=y.count,Ze.value.length!=y.count?Se++:Se=0}).finally(()=>Qe=!1))},cu=(A,y)=>{e("/api/user/deleteCollect",{token:A}).then(S=>{S.code==200&&(Ze.value.splice(y,1),fn.value--,i.value.collect--,He("success",S.message||"操作成功"))})},uu=A=>{const y=A.target;y.scrollHeight-y.scrollTop>=y.clientHeight+10||dn()};let tt=Y([]),yi=Y(0),Mn=1,So=!1;const vi=()=>{Mn==0||So||(So=!0,e("/api/user/answer",{limit:20,page:Mn}).then(A=>{if(A.code!=200)return;let y=A.data;y.data.forEach(S=>{S.popupState=!1}),tt.value=tt.value.concat(y.data),yi.value=y.count,tt.value.length!=y.count?Mn++:Mn=0,Ke.value="answers"}).finally(()=>So=!1))},fu=A=>{const y=A.target;y.scrollHeight-y.scrollTop>=y.clientHeight+10||vi()};let Un=null;const _i=A=>{tt.value[A].popupState=!0,Un==A?(tt.value[A].popupState=!1,Un=null):(tt.value[A].popupState=!0,Un!=null&&(tt.value[Un].popupState=!1),Un=A)},du=(A,y,S)=>{e("/api/publish/changeAnonymous",{token:A,anonymous:y}).then(M=>{M.code==200&&(M.data,tt.value[S].anonymous=y,_i(S),He("success",M.message||"操作成功"))})};let ft=Y([]),wi=Y(0),Nn=0,Ro=!1;const bi=()=>{Nn==0||Ro||(Ro=!0,e("/api/user/questions",{limit:20,page:Nn}).then(A=>{if(A.code!=200)return;let y=A.data;ft.value=ft.value.concat(y.data),wi.value=y.count,Ke.value="questions",ft.value.length!=y.count?Nn++:Nn=0}).finally(()=>Ro=!1))},Au=A=>{const y=A.target;y.scrollHeight-y.scrollTop>=y.clientHeight+10||bi()};let Dn=null;const Ci=A=>{ft.value[A].popupState=!0,Dn==A?(ft.value[A].popupState=!1,Dn=null):(ft.value[A].popupState=!0,Dn!=null&&(ft.value[Dn].popupState=!1),Dn=A)},hu=(A,y,S)=>{e("/api/publish/changeAnonymous",{token:A,anonymous:y}).then(M=>{M.code==200&&(M.data,ft.value[S].anonymous=y,Ci(S),He("success",M.message||"操作成功"))})};let As=Y(0);const Lo=A=>As.value=A;let Ei=Y([]),Kt=Y({token:"",title:"",content:"",tags:"",tid:"",anonymous:0});const pu=()=>{e("/api/publish/questions").then(A=>{if(A.code!=200)return;let y=A.data;Kt.value.token=y.token,Ei.value=y.typeList||[],Lo(1)})},mu=A=>{Kt.value.tid=A,Lo(2)},gu=()=>{Kt.value.anonymous=Kt.value.anonymous==0?1:0},yu=()=>{e("/api/publish/questionsSubmit",Kt.value).then(A=>{if(A.code==200){i.value.questions++,As.value=0,Kt.value={token:"",title:"",content:"",tags:"",tid:"",anonymous:0},He("success",A.message||"操作成功");let y=A.data;qe(y.uniqid);return}He("error",A.message||"刷新重试!!!")})};let Qt=Y(null);const hs=A=>{Qt.value=A,setTimeout(()=>xi(),350)};let Io=!1;const xi=()=>{if(typeof document>"u"){Io=!0;return}document.querySelector(".list-box").scrollTo({top:128*Qt.value+68-ie.value/2,behavior:"smooth"}),Io=!1},vu=()=>{const A=s.value;let y="",S="",M="";return A=="list"?(y="1200px",S="0 auto",M=Math.ceil(q.value.length/2)*128+"px"):(y="calc((100vw - 1200px) / 2 + 512px)",S="initial",M=q.value.length*128+"px"),{width:y,margin:S,height:M}},_u=(A,y)=>{const S=s.value;let M={};if(S=="list"){let te=Math.floor(A/2)*128+"px";M.top=te,A%2==0?M.left=0:M.left="649px"}else M.top=A*128+"px",M.left=0,M.width="100%",M.paddingLeft="calc((100vw - 1200px) / 2)";return M},wu=()=>{const A=s.value;let y={};return A=="list"?y.overflow="visible":y.height=ie.value+"px",y},bu=(A=new Date)=>{A=A||null;var y=new Date(A);y=y.getTime();var S=1e3*60,M=S*60,te=M*24,Ae=new Date().getTime(),Te=Ae-y,We;if(!(Te<0)){var Ue=Te/te,Ve=Te/(M+1),pn=Te/S;if(Ue>=7){let $e=new Date(y),Ku=$e.getFullYear()+"-",Qu=($e.getMonth()+1<10?"0"+($e.getMonth()+1):$e.getMonth()+1)+"-",Wu=($e.getDate()<10?"0"+$e.getDate():$e.getDate())+" ",Vu=($e.getHours()<10?"0"+$e.getHours():$e.getHours())+":",Ju=$e.getMinutes()<10?"0"+$e.getMinutes():$e.getMinutes();We=""+Ku+Qu+Wu+Vu+Ju}else Ue>=1?We=""+Math.round(Ue)+"天前":Ve>=1?We=""+Math.round(Ve)+"小时前":pn>=1?We=""+Math.round(pn)+"分钟前":We="刚刚";return We}};let Oo=Y(!1),ps=Y(!1);const Cu=()=>{Oo.value=!0,ps.value=!0,ki(yt)},Po=()=>{re.value.forEach(A=>{A.transmitState=!1}),Oo.value=!1,ps.value=!1},Eu=(A,y)=>{re.value[A].transmitState=!0,ps.value=!0,ki(re.value[A].token)},ki=A=>{e("/api/operate/share",{token:A})},xu=()=>{s.value="list",Qt.value=null,gs(["uniqid"]),_s.value={}},ku=A=>{const y=A.target;y.scrollHeight-y.scrollTop>=y.clientHeight+40||B()},Tu=(A,y)=>{const S=(A.clipboardData||A.originalEvent.clipboardData).items;for(const M of S)if(M.type.indexOf("image")===0){A.preventDefault(),He("warning","上传图片中");const te=M.getAsFile(),Ae=new FileReader;Ae.onload=Te=>{const We=Te.target.result;Su(We).then(Ue=>{let Ve=null;y=="you"?Ve=document.querySelector(".your-answer-textarea"):Ve=document.querySelector(".question-textarea");let pn=document.createElement("img");pn.setAttribute("src",Ue.url),pn.setAttribute("data-aid",Ue.aid),Ve.appendChild(pn),y=="you"?Ti():Fn(),He("success","上传成功")})},Ae.readAsDataURL(te)}},Su=A=>new Promise((y,S)=>{e("/api/common/upload",{data:A}).then(M=>{if(M.code!=200)return;let te=M.data;y(te)})});let Bo=Y(!1),Ho=Y(!0);const Fn=()=>{document.querySelector(".question-textarea").innerHTML?Bo.value=!1:Bo.value=!0},Ti=()=>{document.querySelector(".your-answer-textarea").innerHTML?Ho.value=!1:Ho.value=!0};let An=Y({});const He=(A,y)=>{An.value.state=!0,An.value.type=A,An.value.text=y},Ru=()=>(Lu(),s?`box-item-${An.value.type}`:"");let Si=null;const Lu=()=>{clearTimeout(Si),Si=setTimeout(()=>{An.value.state=!1},1e3)};let ms=A=>{navigator.clipboard?ms=()=>{navigator.clipboard.writeText(A),He("success","复制成功")}:ms=()=>{var y=document.createElement("input");y.value=A,document.body.appendChild(y),y.select(),document.execCommand("copy"),document.body.removeChild(y),He("success","复制成功")},ms()};const jn=(A={})=>{if(typeof window>"u")return;let y=new URLSearchParams(window.location.search);for(const S in A)y.set(S,A[S]);window.location.pathname.indexOf("index.html")==-1?window.history.replaceState({},"",`${window.location.pathname}index.html?${y}`):window.history.replaceState({},"",`${window.location.pathname}?${y}`)},gs=(A=[])=>{if(typeof window>"u")return;let y=new URLSearchParams(window.location.search);A.forEach(S=>{y.delete(S)}),window.history.replaceState({},"",`${window.location.pathname}?${y}`)},Iu=A=>{qe(A.data.uniqid),Ke.value=""},Ou=A=>{const y=A.target;y.scrollHeight-y.scrollTop===y.clientHeight&&St()};let ys=Y("");const Pu=A=>{if(A.target.tagName==="IMG"){var y=A.target.getAttribute("src");ys.value=y,window.addEventListener("keydown",Mo)}},Mo=A=>{A.key==="Escape"&&(ys.value="",window.removeEventListener("keydown",Mo))},Bu=A=>{he.value=A,V=1,q.value=[],s.value="list",Qt.value=null,A!=null?(jn({tid:A}),gs(["uniqid"])):gs(["tid","uniqid"]),B()},Hu=(A,y,S)=>{S===void 0?vs=re.value[A].commentList[y].token:vs=re.value[A].commentList[y].child[S].token,Uo.value=!0};let vs="";const Mu=["广告","辱骂","重复发送","不良信息","其他"];let Wt=Y([]),Uo=Y(!1),Ri=Y("");const Uu=A=>{const y=Wt.value.indexOf(A);y===-1?Wt.value.push(A):Wt.value.splice(y,1)},Nu=()=>{Wt.value.push(Ri.value),e("/api/operate/report",{message:Wt.value,token:vs}).then(A=>{Wt.value=[],vs="",Uo.value=!1,He("success","举报成功")})};Vs(()=>{Ra(()=>{As.value||Ke.value||k.value||b.value||ys.value?document.body.style.overflow="hidden":document.body.style.overflow="auto"})});let _s=Y({});try{const A=t.query;A.keyword&&(v.value=A.keyword),A.tid&&(he.value=A.tid),A.uniqid&&await e("/api/details",{uniqid:A.uniqid}).then(y=>{if(y.code!=200)return;let S=y.data;ke.value=S.info||{},kt.value=S.isanswered||0,et.value=S.iscollection||0,je.value=S.ismyself||0,yt=S.token||"",Hn.value=S.share||{},s.value="details",Tt(S.info,A.uniqid),re.value=[],Me.value=1,St(),Po(),jn({uniqid:A.uniqid}),_s.value=S.seo}),await e("/api/lists",{page:V,limit:20,keyword:v.value,type:he.value}).then(y=>{if(y.code!=200)return;let S=y.data;console.log("This is on the client side."),q.value=q.value.concat(S.data||[]),U.value=S.count||0,O.value=v.value||"",q.value.length!=S.count?V++:V=0,v.value?f.value=!0:f.value=!1})}catch(A){console.error(A)}const Du=A=>{let y=`./index.html?uniqid=${A}`,S=t.query;for(const M in S)M!="uniqid"&&(y+=`&${M}=${S[M]}`);return y},Fu=()=>{window.location.href=window.location.origin+window.location.pathname};let hn=Y({text:"",anonymous:0});const ju=()=>{hn.value.anonymous=hn.value.anonymous?0:1},qu=()=>{E.value={...hn.value},H("you"),hn.value={text:"",anonymous:0}};let No=!1;return{handleInputYou:Ti,openListIAnswer:A=>{let y=q.value[A];E.value={title:y.title,content:y.content,token:y.token,uniqid:y.uniqid,anonymous:0,index:A},No=!0,b.value=!0,bn(()=>Fn())},isListEmptyState:oe,cutYourAnswerAnonymous:ju,handleYourAnswer:qu,yourAnswer:hn,handleLogo:Fu,inTheEndState:F,setItemUrl:Du,seo:_s,originUrl:o,handleMenuState:Hu,reasonList:Mu,checkList:Wt,alertShow:Uo,alertText:Ri,selectRadio:Uu,alertSubmit:Nu,cutType:Bu,dialogSrc:ys,answerPage:Me,handleDetailsScroll:Ou,replaceState:jn,copyText:ms,boxClass:Ru,questionPlaceholderState:Bo,yourAnswerPlaceholderState:Ho,handleInput:Fn,handlePaste:Tu,itemStyle:_u,listStyle:vu,listBoxStyle:wu,myType:Ke,type:s,pitchIndex:Qt,cut:hs,list:q,keyword:v,keywordText:O,getList:B,total:U,typeList:ee,typePitch:he,getDetails:qe,detailsInfo:ke,detailsIsanswered:kt,detailsIscollection:et,detailsIsmyself:je,detailShare:Hn,detailLoading:un,answerList:re,operateLike:h,operateCollect:m,IAnswerState:b,IAnswerEditState:k,IAnswerInfo:E,amendIAnswer:L,openIAnswer:I,closeIAnswer:N,submitAnswer:H,openCommentState:T,submitAnswerComments:le,operateAnswerCommentsLike:me,openAnswerCommentsChild:pe,closeAnswerCommentsChild:Ce,alsoCommentsData:Xe,handleAllComment:X,myCollectionList:Ze,myCollectionCount:fn,myQuestionsList:ft,myQuestionsCount:wi,myAnswerList:tt,myAnswerCount:yi,cutAnswerPopupState:_i,handleDate:bu,handleCollectionScroll:uu,handleAnswersScroll:fu,handleQuestionsScroll:Au,cancelCollection:cu,getMyCollection:dn,questionsSetp:As,questionsObj:Kt,cutAnonymous:gu,cutQuestionsSetp:Lo,cutQuestionsPopupState:Ci,questionsTypeList:Ei,postingIssue:yu,choosingTheme:mu,handleMy:ds,changeAnonymous:du,changeAnonymousQuestions:hu,pageHeaderHeight:J,pageListHeight:ie,questionsTransmitState:Oo,questionsTransmitMaskState:ps,closeAllTransmitState:Po,closeTransmitState:Cu,handleAnswerTransmitList:Eu,closeDetailMode:xu,tabListFixeState:j,handleListScroll:ku,historicalSearchState:D,historicalSearchList:K,searchFocus:p,searchBlur:g,searchClick:u,handleClickHistoricalItem:_,handleClickClear:w,isSearchMode:f,questionsInit:pu,myCount:i,msg:An,myOpenDetails:Iu,handleAnswerText:Pu,getCurrentUrl:r,loading:Q}}},Wg={class:"",id:"answer-app"},Vg={class:"flexacenter",id:"pageHeader"},Jg={class:"flexacenter top"},Yg={class:"right flexacenter flex1"},Gg={class:"searchInput flexacenter"},zg={key:0,class:"clear-search flexacenter"},Xg=d("div",{class:"halving-line"},null,-1),Zg=d("div",{class:"history-title"}," 历史搜索 ",-1),$g={class:"history-list"},ey=["onClick"],ty={class:"btn-list flexacenter"},ny=d("img",{class:"add-icon",src:Og},null,-1),sy={class:"tab-list flexacenter"},oy=d("div",{class:"halving-line"},"|",-1),ry=["onClick"],iy={class:"ellipsis"},ly=d("img",{class:"search-keyword-cross",src:Pg},null,-1),ay=["href","onClick"],cy=d("img",{class:"dot",src:Bg},null,-1),uy={class:"issue-title flexcenter"},fy={key:0,class:"hot-icon",src:Hg},dy=["innerHTML"],Ay=["innerHTML"],hy={class:"bottom flexacenter"},py={class:"quantity"},my=d("div",{class:"longString"},null,-1),gy=["onClick"],yy={key:0,class:"bottom-tps"},vy={key:1,class:"empty-box flexcenter"},_y=Xr('

没有找到相关结果,请更换搜索关键词
',3),wy=[_y],by={key:0,class:"loading-bj flexcenter"},Cy=d("svg",{t:"1642133548066",class:"icon",viewBox:"0 0 1024 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg","p-id":"2597",width:"200",height:"200"},[d("path",{d:"M512 249.5c-22.5 0-37.5-15-37.5-37.5V99.5c0-22.5 15-37.5 37.5-37.5s37.5 15 37.5 37.5V212c0 22.5-15 37.5-37.5 37.5z m0 712.5c-22.5 0-37.5-15-37.5-37.5V812c0-22.5 15-37.5 37.5-37.5s37.5 15 37.5 37.5v112.5c0 22.5-15 37.5-37.5 37.5zM212 549.5H99.5C77 549.5 62 534.5 62 512s15-37.5 37.5-37.5H212c22.5 0 37.5 15 37.5 37.5s-15 37.5-37.5 37.5z m712.5 0H812c-22.5 0-37.5-15-37.5-37.5s15-37.5 37.5-37.5h112.5c22.5 0 37.5 15 37.5 37.5s-15 37.5-37.5 37.5z m-153.75-150c-11.25 0-26.25-7.5-33.75-18.75-11.25-18.75-3.75-41.25 15-52.5L849.5 272c18.75-11.25 41.25-3.75 52.5 15s3.75 41.25-15 52.5l-97.5 56.25c-3.75 3.75-11.25 3.75-18.75 3.75z m-615 356.25c-11.25 0-26.25-7.5-33.75-18.75-11.25-18.75-3.75-41.25 15-52.5l97.5-56.25c18.75-11.25 41.25-3.75 52.5 15s3.75 41.25-15 52.5L174.5 752c-7.5 3.75-15 3.75-18.75 3.75z m506.25-465c-7.5 0-11.25 0-18.75-3.75-18.75-11.25-22.5-33.75-15-52.5L684.5 137c11.25-18.75 33.75-22.5 52.5-15 18.75 11.25 22.5 33.75 15 52.5L695.75 272c-7.5 11.25-22.5 18.75-33.75 18.75z m-356.25 615c-7.5 0-11.25 0-18.75-3.75-18.75-11.25-22.5-33.75-15-52.5l56.25-97.5c11.25-15 33.75-22.5 52.5-11.25s22.5 33.75 15 52.5L339.5 887c-7.5 11.25-22.5 18.75-33.75 18.75z m-52.5-506.25c-7.5 0-15 0-18.75-3.75L137 339.5c-18.75-11.25-26.25-33.75-15-52.5s33.75-22.5 52.5-15l97.5 56.25c18.75 11.25 22.5 33.75 11.25 52.5-3.75 11.25-18.75 18.75-30 18.75z m615 356.25c-7.5 0-11.25 0-18.75-3.75L752 695.75c-18.75-11.25-22.5-33.75-15-52.5 11.25-18.75 33.75-22.5 52.5-15L887 684.5c18.75 11.25 22.5 33.75 15 52.5-7.5 11.25-18.75 18.75-33.75 18.75zM362 290.75c-11.25 0-26.25-7.5-33.75-18.75L272 174.5c-7.5-18.75-3.75-41.25 15-52.5s41.25-3.75 52.5 15l56.25 97.5c7.5 18.75 3.75 41.25-15 48.75-7.5 3.75-11.25 7.5-18.75 7.5z m356.25 615c-11.25 0-26.25-7.5-33.75-18.75l-56.25-97.5c-11.25-18.75-3.75-41.25 15-52.5s41.25-3.75 52.5 15L752 849.5c11.25 18.75 3.75 41.25-15 52.5-7.5 3.75-11.25 3.75-18.75 3.75z","p-id":"2598",fill:"#26d79f"})],-1),Ey=[Cy],xy={class:"details-box flexflex"},ky={class:"close-box"},Ty=d("img",{class:"close-icon",src:Mg},null,-1),Sy=d("img",{class:"details-cross-icon",src:_t},null,-1),Ry=[Ty,Sy],Ly={class:"details-issue"},Iy=d("div",{class:"icon q flexcenter"},"Q",-1),Oy={class:"title"},Py=["innerHTML"],By={class:"info-box flexacenter"},Hy={class:"user-info flexacenter"},My=["src"],Uy={class:"user-name"},Ny={class:"time"},Dy={class:"operate-box flexacenter"},Fy=d("img",{class:"answer-btn-icon answer-icon-edit",src:mi},null,-1),jy=d("img",{class:"answer-btn-icon answer-icon-white",src:Ug},null,-1),qy={class:"operate-list flexacenter"},Ky=["src"],Qy=d("img",{class:"operate-icon operate-transmit-icon",src:ru},null,-1),Wy={class:"transmit-left transmit-web"},Vy=d("div",{class:"transmit-title"},"转发网页版",-1),Jy={class:"transmit-content"},Yy={class:"transmit-headline"},Gy={class:"transmit-url"},zy={class:"transmit-right transmit-mini"},Xy=d("div",{class:"transmit-title"},"转发小程序版",-1),Zy={class:"transmit-content flexcenter"},$y=["src"],ev=d("div",{class:"flexcenter"},[d("img",{class:"give-sweep",src:gi}),ye(" 扫码转发该问答 ")],-1),tv={class:"answer-total-amount"},nv=d("div",{class:"icon-circle-box"},[d("div",{class:"icon-box flexcenter"},"A")],-1),sv=["innerHTML"],ov={class:"info-box flexacenter"},rv={class:"user-info flexacenter"},iv=["src"],lv={class:"user-name"},av={key:0,class:"homeShare",src:Ng},cv={class:"time"},uv={class:"operate-box flexacenter"},fv={class:"edit-box"},dv=["onClick"],Av=d("img",{class:"edit-icon",src:mi},null,-1),hv=[Av],pv={class:"operate-list flexacenter"},mv=["onClick"],gv=["src"],yv=["onClick"],vv=d("img",{class:"operate-icon operate-comment-icon",src:Dg},null,-1),_v=["onClick"],wv=["src"],bv=["onClick","onMouseenter"],Cv=d("img",{class:"operate-icon operate-transmit-icon",src:ru},null,-1),Ev={class:"transmit-left transmit-web"},xv=d("div",{class:"transmit-title"},"转发网页版",-1),kv={class:"transmit-content"},Tv={class:"transmit-headline"},Sv={class:"transmit-url"},Rv=Xr('转发小程序版


扫码转发该问答
',1),Lv={class:"post-comment flexacenter"},Iv=["onUpdate:modelValue"],Ov=["onClick"],Pv={key:0,class:"comments-box"},Bv={class:"comments-header flexacenter"},Hv={class:"comments-header-left flexacenter"},Mv=["src"],Uv={class:"comments-username"},Nv={class:"comments-time"},Dv={key:0,class:"comments-identity"},Fv={key:1,class:"comments-identity"},jv={class:"comments-header-right flexacenter"},qv=["onClick"],Kv=d("img",{class:"menu-icon",src:iu},null,-1),Qv=d("div",{class:"report-box flexcenter"},"举报",-1),Wv=[Kv,Qv],Vv=["onClick"],Jv=["onClick"],Yv=["src"],Gv={class:"like-quantity"},zv={class:"comments-content"},Xv={class:"comments-text"},Zv={key:0,class:"comments-input-box flexacenter"},$v={class:"comments-input flexflex"},e_=["onUpdate:modelValue"],t_=["onClick"],n_=["onClick"],s_={key:0,class:"child-comments"},o_={class:"comments-header flexacenter"},r_={class:"comments-header-left flexacenter"},i_=["src"],l_={class:"comments-username"},a_={class:"comments-time"},c_={key:0,class:"comments-identity"},u_={key:1,class:"comments-identity"},f_={class:"comments-header-right flexacenter"},d_=["onClick"],A_=d("img",{class:"menu-icon",src:iu},null,-1),h_=d("div",{class:"report-box flexcenter"},"举报",-1),p_=[A_,h_],m_=["onClick"],g_=["onClick"],y_=["src"],v_={class:"like-quantity"},__={class:"comments-content"},w_={class:"comments-text"},b_={key:0,class:"comments-reply"},C_={key:0,class:"comments-input-box flexacenter"},E_={class:"comments-input flexflex"},x_=["onUpdate:modelValue"],k_=["onClick"],T_=["onClick"],S_=["onClick"],R_={class:""},L_=d("img",{class:"also-icon",src:lu},null,-1),I_=["onClick"],O_=d("img",{class:"arrow-circular",src:lu},null,-1),P_={key:1,class:"comments-empty-box flexflex"},B_={class:"empty-box flexcenter"},H_={class:"dot-list flexacenter"},M_=d("img",{class:"empty-icon",src:pi},null,-1),U_=d("div",{class:"empty-hint"},"和我说说你的想法或疑问吧",-1),N_={key:0,class:"copyright flexcenter"},D_={class:"your-answer-box"},F_=d("div",{class:"your-answer-header flexacenter"},"您的答案",-1),j_=["innerHTML"],q_={class:"flexacenter your-answer-bottom"},K_={key:0,class:"option-icon",src:xo},Q_={key:1,class:"option-icon",src:ko},W_={class:"mobile-phone-check flexcenter"},V_=d("img",{class:"QRCode-icon",src:jg,alt:""},null,-1),J_={class:"QRCode-pop flexcenter"},Y_=["src"],G_=d("div",{class:"QRCode-hint flexacenter"},[d("img",{class:"QRCode-img",src:gi}),ye(" 微信扫一扫 ")],-1),z_={key:0,class:"popover-mask my-popover flexcenter"},X_={class:"popover-box flexflex"},Z_={class:"tab-list flexcenter"},$_={class:"quantity"},ew=d("div",{class:"long-string"},null,-1),tw={class:"quantity"},nw=d("div",{class:"long-string"},null,-1),sw={class:"quantity"},ow={key:0,class:"empty-box flexcenter"},rw=Xr('
暂无内容
',3),iw=[rw],lw=["onClick"],aw=d("div",{class:"icon a flexcenter"},"A",-1),cw={class:"centre flexflex flex1"},uw=["innerHTML"],fw={class:"text ellipsis"},dw={class:"delete-box flexacenter"},Aw=["onClick"],hw=d("div",{class:"icon q flexcenter"},"Q",-1),pw={class:"centre flexflex flex1"},mw={class:"title ellipsis"},gw={class:"text ellipsis"},yw={class:"delete-box flexacenter"},vw=["onClick"],_w=["onClick"],ww=d("div",{class:"icon a flexcenter"},"A",-1),bw={class:"centre flexflex flex1"},Cw={class:"info flexacenter"},Ew={class:"name"},xw={class:"time"},kw=["innerHTML"],Tw={class:"text ellipsis"},Sw={class:"operate-box flexacenter"},Rw=["onClick"],Lw={class:"text"},Iw=d("img",{class:"arrows",src:au},null,-1),Ow={key:0,class:"state-popup flexflex"},Pw=["onClick"],Bw=["onClick"],Hw=d("div",{class:""},"公开发表",-1),Mw=d("img",{class:"state-popup-icon",src:To},null,-1),Uw=[Hw,Mw],Nw=["onClick"],Dw=d("div",{class:""},"匿名发表",-1),Fw=d("img",{class:"state-popup-icon",src:To},null,-1),jw=[Dw,Fw],qw=["onClick"],Kw=["onClick"],Qw=d("div",{class:"icon q flexcenter"},"Q",-1),Ww={class:"centre flexflex flex1"},Vw={class:"info flexacenter"},Jw={class:"name"},Yw={class:"time"},Gw={class:"title ellipsis"},zw={class:"text flexacenter"},Xw={key:0,class:"new-answer flexacenter"},Zw=d("div",{class:"long-string"},null,-1),$w={class:"operate-box flexacenter"},e0=["onClick"],t0={class:"text"},n0=d("img",{class:"arrows",src:au},null,-1),s0={key:0,class:"state-popup flexflex"},o0=["onClick"],r0=d("div",{class:""},"公开发表",-1),i0=d("img",{class:"state-popup-icon",src:To},null,-1),l0=[r0,i0],a0=["onClick"],c0=d("div",{class:""},"匿名发表",-1),u0=d("img",{class:"state-popup-icon",src:To},null,-1),f0=[c0,u0],d0=d("div",{class:"title"}," 选择提问所属主题 ",-1),A0={class:"theme-list flexflex"},h0=["onClick"],p0=d("img",{class:"issue-bj",src:qg},null,-1),m0=d("div",{class:"flexcenter q"},"Q",-1),g0={class:"issue-input"},y0={class:"issue-bottom flexacenter"},v0={key:0,class:"option-icon",src:xo},_0={key:1,class:"option-icon",src:ko},w0={key:2,class:"popover-mask flexcenter"},b0={class:"edit-answers"},C0=d("div",{class:"title"},"编辑回答",-1),E0=["innerHTML"],x0={class:"issue-bottom flexacenter"},k0={key:0,class:"option-icon",src:xo},T0={key:1,class:"option-icon",src:ko},S0={key:3,class:"popover-mask flexcenter"},R0={class:"i-answer-box flexflex"},L0={class:"question-header"},I0={class:"question-title flexflex"},O0=d("div",{class:"question-icon flexcenter"},"Q",-1),P0={class:"flex1"},B0=["innerHTML"],H0={class:"question-middle flexflex"},M0=d("div",{class:"question-icon flexcenter"},"A",-1),U0=["innerHTML"],N0={class:"issue-bottom flexacenter"},D0={key:0,class:"option-icon",src:xo},F0={key:1,class:"option-icon",src:ko},j0={class:"msg-container"},q0={class:"detail-image flexcenter"},K0=["src"],Q0={class:"alert-form"},W0={class:"comments reports"},V0={class:"head"},J0=d("span",{style:{display:"flex","align-items":"center"}},[d("img",{style:{width:"25px","margin-right":"7px"},src:"//app.gter.net/image/gter/offer/img/exclamationpoint.png?v=4.2.08_331040000"}),ye("举报投诉")],-1),Y0={class:"form"},G0={class:"radio-area flexacenter"},z0=["onClick"],X0=d("div",{class:"radio-area-frame"},null,-1),Z0={class:"text-box"},$0={class:"text-num"},eb={class:"footer"},tb=["disabled"];function nb(e,t,n,s,o,r){const i=am,a=cm,f=um;return R(),P("div",null,[ve(f,null,{default:Yn(()=>[ve(i,null,{default:Yn(()=>[ye(Z(`${s.seo.title||"问答"} - 寄托天下出国留学网`),1)]),_:1}),ve(a,{name:"keyword",content:s.seo.keyword},null,8,["content"]),ve(a,{name:"description",content:s.seo.description},null,8,["content"])]),_:1}),d("div",Wg,[d("header",Vg,[d("div",Jg,[d("img",{class:"logo",onClick:t[0]||(t[0]=(...l)=>s.handleLogo&&s.handleLogo(...l)),alt:"寄托问答",src:Rg}),d("div",Yg,[d("div",Gg,[vt(d("input",{class:"input flex1",placeholder:"输入搜索关键词","onUpdate:modelValue":t[1]||(t[1]=l=>s.keyword=l),onKeydown:t[2]||(t[2]=yA(l=>s.searchClick(),["enter"])),onFocus:t[3]||(t[3]=(...l)=>s.searchFocus&&s.searchFocus(...l)),onBlur:t[4]||(t[4]=(...l)=>s.searchBlur&&s.searchBlur(...l))},null,544),[[Gt,s.keyword]]),s.isSearchMode?(R(),P("div",zg,[d("img",{class:"cross-circle-black",onClick:t[5]||(t[5]=l=>s.handleClickClear()),src:Lg}),Xg])):ae("",!0),d("img",{class:"input-icon",src:Ig,onClick:t[6]||(t[6]=l=>s.searchClick())}),s.historicalSearchState?(R(),P("div",{key:1,class:"history-box",onClick:t[7]||(t[7]=ge(()=>{},["stop"]))},[Zg,d("div",$g,[(R(!0),P(de,null,De(s.historicalSearchList,(l,c)=>(R(),P("div",{class:"history-item ellipsis",key:c,onClick:ge(u=>s.handleClickHistoricalItem(l),["stop"])},Z(l),9,ey))),128))])])):ae("",!0)]),d("div",ty,[d("div",{class:"item flex1",onClick:t[8]||(t[8]=l=>s.handleMy("collect"))}," 我的收藏 "),d("div",{class:"item flex1",onClick:t[9]||(t[9]=l=>s.handleMy("questions"))}," 我的提问 "),d("div",{class:"item flex1",onClick:t[10]||(t[10]=l=>s.handleMy("answers"))}," 我的回答 ")]),d("div",{class:"add-btn flexcenter",onClick:t[11]||(t[11]=l=>s.questionsInit())},[ny,ye(" 我要提问 ")])])]),d("div",{class:Ee(["tab-box flexcenter",{"tab-list-fixed":s.tabListFixeState}])},[d("div",sy,[d("div",{class:Ee(["item flexcenter",{pitch:s.typePitch==null}]),onClick:t[12]||(t[12]=l=>s.cutType(null))},"All",2),(R(!0),P(de,null,De(s.typeList,(l,c)=>(R(),P(de,{key:c},[oy,(R(!0),P(de,null,De(l,u=>(R(),P("div",{class:Ee(["item flexcenter",{pitch:s.typePitch==u.id}]),key:u,onClick:p=>s.cutType(u.id)},Z(u.name),11,ry))),128))],64))),128))])],2)]),d("div",{class:Ee(["main flexflex",{"mode-list":s.type=="list"}])},[d("div",{class:"list-box",onScroll:t[15]||(t[15]=(...l)=>s.handleListScroll&&s.handleListScroll(...l))},[d("div",{class:"main-header",style:Ut({paddingLeft:s.type=="list"?0:"calc((100vw - 1200px) / 2)"})},[s.isSearchMode?(R(),P("div",{key:0,class:"search-keyword flexacenter",onClick:t[13]||(t[13]=l=>s.handleClickClear())},[d("div",iy,Z(s.keywordText),1),ly])):ae("",!0),d("div",{class:"total grid-item",onClick:t[14]||(t[14]=(...l)=>s.cut&&s.cut(...l))},"共"+Z(s.total)+"条问答",1)],4),d("div",{class:"list",id:"list",style:Ut(s.listStyle())},[(R(!0),P(de,null,De(s.list,(l,c)=>(R(),P("a",{class:Ee(["item grid-item flexflex",{pitch:c===s.pitchIndex,upLevel:c===s.pitchIndex-1}]),key:c,style:Ut(s.itemStyle(c,l.content)),href:s.setItemUrl(l.uniqid),onClick:ge(u=>s.getDetails(l.uniqid,c),["stop","prevent"])},[cy,d("div",{class:"content",style:Ut({width:s.type=="list"?"531px":"430px"})},[d("div",uy,[l.ishot==1?(R(),P("img",fy)):ae("",!0),d("div",{class:"issue ellipsis flex1",innerHTML:l.title},null,8,dy)]),d("div",{class:"answer ellipsis",innerHTML:l.content},null,8,Ay),d("div",hy,[d("div",py,Z(l.answers==0?"暂无回答":"共"+l.answers+"个回答"),1),s.type=="list"?(R(),P(de,{key:0},[my,d("div",{class:"answer-btn",onClick:ge(u=>s.openListIAnswer(c),["stop","prevent"])},"我来回答",8,gy)],64)):ae("",!0)])],4)],14,ay))),128))],4),s.inTheEndState?(R(),P("div",yy,"- 到底了 -")):ae("",!0),s.isListEmptyState?(R(),P("div",vy,wy)):ae("",!0)],32),s.type=="details"?(R(),P("div",{key:0,class:"details-area-box flexflex",onScroll:t[34]||(t[34]=(...l)=>s.handleDetailsScroll&&s.handleDetailsScroll(...l))},[s.detailLoading?(R(),P("div",by,Ey)):ae("",!0),d("div",xy,[d("div",ky,[d("div",{class:"close-circle flexcenter",onClick:t[16]||(t[16]=l=>s.closeDetailMode())},Ry)]),d("div",Ly,[Iy,d("div",Oy,Z(s.detailsInfo.title),1),d("div",{class:"hint",onClick:t[17]||(t[17]=(...l)=>s.handleAnswerText&&s.handleAnswerText(...l)),innerHTML:s.detailsInfo.content},null,8,Py),d("div",By,[d("div",Hy,[s.detailsInfo.avatar?(R(),P("img",{key:0,class:"avatar",src:s.detailsInfo.avatar},null,8,My)):ae("",!0),d("div",Uy,Z(s.detailsInfo.nickname),1)]),d("div",Ny,Z(s.handleDate(s.detailsInfo.publicationdate)),1)]),d("div",Dy,[d("div",{class:Ee(["answer-btn flexcenter",{white:s.detailsInfo.answers==0}]),onClick:t[18]||(t[18]=l=>s.openIAnswer())},[Fy,jy,ye(" 我来回答 ")],2),d("div",qy,[d("div",{class:"operate-item flexacenter",onClick:t[19]||(t[19]=l=>s.operateCollect())},[d("img",{class:"operate-icon operate-collect-icon",src:s.detailsIscollection==0?"./img/collect-icon.png":"./img/collect-icon-colours.svg"},null,8,Ky),ye(" "+Z(s.detailsInfo.collectionnum>0?s.detailsInfo.collectionnum:"收藏"),1)]),d("div",{class:"operate-item flexacenter operate-transmit",onMouseenter:t[23]||(t[23]=ge(l=>s.closeTransmitState(),["stop"])),onMouseleave:t[24]||(t[24]=ge(l=>s.closeAllTransmitState(),["stop"]))},[Qy,ye(" 转发 "),s.questionsTransmitState?(R(),P("div",{key:0,class:"transmit-box flexflex",onClick:t[22]||(t[22]=ge(()=>{},["stop"])),style:{"z-index":"10"}},[d("img",{class:"cross-icon",onClick:t[20]||(t[20]=ge(l=>s.closeAllTransmitState(),["stop"])),src:_t}),d("div",Wy,[Vy,d("div",Jy,[d("div",Yy,Z(s.detailsInfo.title),1),d("div",Gy,Z(s.getCurrentUrl()),1)]),d("div",{class:"transmit-web-btn flexcenter",onClick:t[21]||(t[21]=l=>s.copyText(s.detailsInfo.title+s.getCurrentUrl()))},"复制链接")]),d("div",zy,[Xy,d("div",Zy,[d("img",{class:"transmit-mini-img",src:s.detailShare.qrcode},null,8,$y),ev])])])):ae("",!0)],32)])])]),d("div",tv,"共 "+Z(s.detailsInfo.answers)+" 个回答",1),(R(!0),P(de,null,De(s.answerList,(l,c)=>(R(),P("div",{class:"answer-box-item",key:c},[nv,d("div",{class:"answer-text",innerHTML:l.content,onClick:t[25]||(t[25]=(...u)=>s.handleAnswerText&&s.handleAnswerText(...u))},null,8,sv),d("div",ov,[d("div",rv,[d("img",{class:"avatar",src:l.avatar},null,8,iv),d("div",lv,Z(l.nickname),1),l.groupid==14?(R(),P("img",av)):ae("",!0)]),d("div",cv,Z(s.handleDate(l.publicationdate)),1)]),d("div",uv,[d("div",fv,[l.ismyself==1?(R(),P("div",{key:0,class:"edit-btn flexcenter",onClick:u=>s.openIAnswer(c)},hv,8,dv)):ae("",!0)]),d("div",pv,[d("div",{class:"operate-item flexacenter",onClick:u=>s.operateLike(l.token,c)},[d("img",{class:"operate-icon operate-like-icon",src:l.islike==1?"./img/like-icon-colours.png":"./img/like-icon.png"},null,8,gv),ye(" "+Z(l.likenum),1)],8,mv),d("div",{class:Ee(["operate-item flexacenter",{commentnum:l.commentState}]),onClick:u=>s.openCommentState(c)},[vv,ye(" "+Z(l.commentnum),1)],10,yv),d("div",{class:"operate-item flexacenter",onClick:u=>s.operateCollect(l.token,c)},[d("img",{class:"operate-icon operate-collect-icon",src:l.iscollection==1?"./img/collect-icon-colours.svg":"./img/collect-icon.png"},null,8,wv),ye(" "+Z(l.collectionnum==0?"收藏":l.collectionnum),1)],8,_v),d("div",{class:"operate-item operate-transmit flexacenter",onClick:u=>s.handleAnswerTransmitList(c),onMouseenter:ge(u=>s.handleAnswerTransmitList(c),["stop"]),onMouseleave:t[29]||(t[29]=ge(u=>s.closeAllTransmitState(),["stop"]))},[Cv,ye(" 转发 "),l.transmitState?(R(),P("div",{key:0,class:"transmit-box flexflex",onClick:t[28]||(t[28]=ge(()=>{},["stop"]))},[d("img",{class:"cross-icon",onClick:t[26]||(t[26]=ge(u=>s.closeAllTransmitState(),["stop"])),src:_t}),d("div",Ev,[xv,d("div",kv,[d("div",Tv,Z(s.detailsInfo.title),1),d("div",Sv,Z(s.getCurrentUrl()),1)]),d("div",{class:"transmit-web-btn flexcenter",onClick:t[27]||(t[27]=u=>s.copyText(s.detailsInfo.title+s.getCurrentUrl()))},"复制链接")]),Rv])):ae("",!0)],40,bv)])]),l.commentState?(R(),P(de,{key:0},[d("div",Lv,[vt(d("input",{class:"post-input flex1",placeholder:"说点什么…","onUpdate:modelValue":u=>l.commentInput=u},null,8,Iv),[[Gt,l.commentInput]]),d("div",{class:"post-ok flexcenter",onClick:u=>s.submitAnswerComments(c)},"OK",8,Ov)]),l.commentList&&l.commentList.length!=0?(R(),P("div",Pv,[(R(!0),P(de,null,De(l.commentList,(u,p)=>(R(),P("div",{class:"comments-item",key:p},[d("div",Bv,[d("div",Hv,[d("img",{class:"comments-avatar",src:u.avatar},null,8,Mv),d("div",Uv,Z(u.nickname),1),d("div",Nv,Z(s.handleDate(u.timestamp)),1),u.questioner==1?(R(),P("div",Dv,"提问者")):u.isauthor==1?(R(),P("div",Fv,"回答者")):ae("",!0)]),d("div",jv,[d("div",{class:"menu-box flexacenter",onClick:g=>s.handleMenuState(c,p)},Wv,8,qv),d("img",{class:"comment-icon",onClick:g=>s.openAnswerCommentsChild(c,p),src:Vl},null,8,Vv),d("div",{class:"flexacenter like-box",onClick:g=>s.operateAnswerCommentsLike(u.token,c,p)},[d("img",{class:"like-icon",src:u.islike==0?"./img/like-icon-gray.png":"./img/like-icon-colours.png"},null,8,Yv),d("div",Gv,Z(u.likenum||0),1)],8,Jv)])]),d("div",zv,[d("div",Xv,Z(u.content),1),u.childState?(R(),P("div",Zv,[d("div",$v,[vt(d("textarea",{class:"flex1",placeholder:"回复","onUpdate:modelValue":g=>u.commentInput=g},null,8,e_),[[Gt,u.commentInput]]),d("div",{class:"comments-btn flexcenter",onClick:g=>s.submitAnswerComments(c,p)},"发送",8,t_)]),d("img",{class:"forkfork",src:_t,onClick:g=>s.closeAnswerCommentsChild(c,p)},null,8,n_)])):ae("",!0)]),u.child.length!=0?(R(),P("div",s_,[(R(!0),P(de,null,De(u.child,(g,_)=>(R(),P("div",{class:"comments-item",key:_},[d("div",o_,[d("div",r_,[d("img",{class:"comments-avatar",src:g.avatar},null,8,i_),d("div",l_,Z(g.nickname),1),d("div",a_,Z(s.handleDate(g.timestamp)),1),g.questioner==1?(R(),P("div",c_,"提问者")):g.isauthor==1?(R(),P("div",u_,"回答者")):ae("",!0)]),d("div",f_,[d("div",{class:"menu-box flexacenter",onClick:w=>s.handleMenuState(c,p,_)},p_,8,d_),d("img",{class:"comment-icon",onClick:w=>s.openAnswerCommentsChild(c,p,_),src:Vl},null,8,m_),d("div",{class:"flexacenter like-box",onClick:w=>s.operateAnswerCommentsLike(g.token,c,p,_)},[d("img",{class:"like-icon",src:g.islike==0?"./img/like-icon-gray.png":"./img/like-icon-colours.png"},null,8,y_),d("div",v_,Z(g.likenum||0),1)],8,g_)])]),d("div",__,[d("div",w_,[JSON.stringify(g.reply)!="[]"?(R(),P("div",b_,"@"+Z(g.reply.nickname),1)):ae("",!0),ye(" "+Z(g.content),1)]),g.childState?(R(),P("div",C_,[d("div",E_,[vt(d("textarea",{class:"flex1",placeholder:"回复","onUpdate:modelValue":w=>g.commentInput=w},null,8,x_),[[Gt,g.commentInput]]),d("div",{class:"comments-btn flexcenter",onClick:w=>s.submitAnswerComments(c,p,_)},"发送",8,k_)]),d("img",{class:"forkfork",src:_t,onClick:w=>s.closeAnswerCommentsChild(c,p,_)},null,8,T_)])):ae("",!0)])]))),128)),u.childnum>=3&&u.childnum>u.child.length?(R(),P("div",{key:0,class:"comments-also flexacenter",onClick:g=>s.alsoCommentsData(c,p)},[d("div",R_,"还有"+Z(u.childnum-1)+"条回复",1),L_],8,S_)):ae("",!0)])):ae("",!0)]))),128)),l.commentCount!=l.commentList.length?(R(),P("div",{key:0,class:"reverl-all flexcenter",onClick:u=>s.handleAllComment(c)},[ye(" 显示全部 "),O_],8,I_)):ae("",!0)])):(R(),P("div",P_,[d("div",B_,[d("div",H_,[(R(),P(de,null,De(3,u=>d("img",{class:"dot-item",src:sn,key:u})),64)),(R(),P(de,null,De(3,u=>d("img",{class:"dot-item",src:on,key:u})),64))]),M_]),U_]))],64)):ae("",!0)]))),128)),s.answerList.length>0?(R(),P("div",N_,"· 著作权归作者所有 ·")):ae("",!0),d("div",D_,[F_,d("div",{class:Ee(["your-answer-textarea",{placeholder:s.yourAnswerPlaceholderState}]),contenteditable:"true",onPaste:t[30]||(t[30]=l=>s.handlePaste(l,"you")),innerHTML:s.yourAnswer.text,onInput:t[31]||(t[31]=(...l)=>s.handleInputYou&&s.handleInputYou(...l))},null,42,j_),d("div",q_,[d("div",{class:"option-box flexacenter",onClick:t[32]||(t[32]=l=>s.cutYourAnswerAnonymous())},[s.yourAnswer.anonymous==0?(R(),P("img",K_)):(R(),P("img",Q_)),ye(" 匿名发表 ")]),d("div",{class:"your-answer-submit flexcenter",onClick:t[33]||(t[33]=(...l)=>s.handleYourAnswer&&s.handleYourAnswer(...l))},"提交回答")])]),d("div",W_,[V_,ye(" 手机查看该问答 "),d("div",J_,[d("img",{class:"offer-mini-QRcode",src:s.detailShare.qrcode},null,8,Y_),G_])])])],32)):ae("",!0)],2),s.myType?(R(),P("div",z_,[d("div",X_,[d("img",{class:"cross-icon",src:_t,onClick:t[35]||(t[35]=l=>s.myType="")}),d("div",Z_,[d("div",{class:Ee(["tab-item flexacenter",{pitch:s.myType=="collect"}]),onClick:t[36]||(t[36]=l=>s.handleMy("collect"))},[ye(" 我的收藏 "),d("div",$_,Z(s.myCollectionCount||s.myCount.collect||0),1)],2),ew,d("div",{class:Ee(["tab-item flexacenter",{pitch:s.myType=="answers"}]),onClick:t[37]||(t[37]=l=>s.handleMy("answers"))},[ye(" 我的回答 "),d("div",tw,Z(s.myAnswerCount||s.myCount.answer||0),1)],2),nw,d("div",{class:Ee(["tab-item flexacenter",{pitch:s.myType=="questions"}]),onClick:t[38]||(t[38]=l=>s.handleMy("questions"))},[ye(" 我的提问 "),d("div",sw,Z(s.myQuestionsCount||s.myCount.questions||0),1)],2)]),s.myType=="collect"&&s.myCollectionList.length==0||s.myType=="answers"&&s.myAnswerList.length==0||s.myType=="questions"&&s.myQuestionsList.length==0?(R(),P("div",ow,iw)):ae("",!0),s.myType=="collect"&&s.myCollectionList.length!=0?(R(),P("div",{key:1,class:"content-box collect-list",onScroll:t[39]||(t[39]=(...l)=>s.handleCollectionScroll&&s.handleCollectionScroll(...l))},[(R(!0),P(de,null,De(s.myCollectionList,(l,c)=>(R(),P("div",{class:"item flexflex",key:l,onClick:ge(u=>s.myOpenDetails(l),["stop"])},[l.type=="askanswercollection"?(R(),P(de,{key:0},[aw,d("div",cw,[d("div",{class:"title ellipsis",innerHTML:l.data.content},null,8,uw),d("div",fw,"提问:"+Z(l.data.title),1)]),d("div",dw,[d("img",{class:"delete-icon",onClick:ge(u=>s.cancelCollection(l.token,c),["stop"]),src:Jl},null,8,Aw)])],64)):(R(),P(de,{key:1},[hw,d("div",pw,[d("div",mw,Z(l.data.title),1),d("div",gw,Z(l.data.answers>0?"共"+l.data.answers+"个回答":"暂无回答"),1)]),d("div",yw,[d("img",{class:"delete-icon",onClick:ge(u=>s.cancelCollection(l.token,c),["stop"]),src:Jl},null,8,vw)])],64))],8,lw))),128))],32)):ae("",!0),s.myType=="answers"&&s.myAnswerList.length!=0?(R(),P("div",{key:2,class:"content-box answers-list",onScroll:t[40]||(t[40]=(...l)=>s.handleAnswersScroll&&s.handleAnswersScroll(...l))},[(R(!0),P(de,null,De(s.myAnswerList,(l,c)=>(R(),P("div",{class:"item flexflex",key:l,onClick:ge(u=>s.myOpenDetails(l),["stop"])},[ww,d("div",bw,[d("div",Cw,[d("div",Ew,Z(l.nickname),1),d("div",xw,Z(s.handleDate(l.publicationdate)),1)]),d("div",{class:"title ellipsis",innerHTML:l.content},null,8,kw),d("div",Tw,"提问:"+Z(l.title),1)]),d("div",Sw,[d("div",{class:"state-box flexacenter",onClick:ge(u=>s.cutAnswerPopupState(c),["stop"])},[d("div",Lw,Z(l.anonymous==0?"公开":"匿名"),1),Iw,l.popupState?(R(),P("div",Ow,[d("div",{class:"state-popup-mask",onClick:ge(u=>s.cutAnswerPopupState(c),["stop"])},null,8,Pw),d("div",{class:Ee(["state-popup-item flexacenter flex1",{pitch:l.anonymous==0}]),onClick:ge(u=>s.changeAnonymous(l.token,0,c),["stop"])},Uw,10,Bw),d("div",{class:Ee(["state-popup-item flexacenter flex1",{pitch:l.anonymous==1}]),onClick:ge(u=>s.changeAnonymous(l.token,1,c),["stop"])},jw,10,Nw)])):ae("",!0)],8,Rw),d("img",{class:"edit-icon",onClick:ge(u=>s.openIAnswer(c,"my"),["stop"]),src:mi},null,8,qw)])],8,_w))),128))],32)):ae("",!0),s.myType=="questions"&&s.myQuestionsList.length!=0?(R(),P("div",{key:3,class:"content-box questions-list",onScroll:t[41]||(t[41]=(...l)=>s.handleQuestionsScroll&&s.handleQuestionsScroll(...l))},[(R(!0),P(de,null,De(s.myQuestionsList,(l,c)=>(R(),P("div",{class:"item flexflex",key:l,onClick:ge(u=>s.myOpenDetails(l),["stop"])},[Qw,d("div",Ww,[d("div",Vw,[d("div",Jw,Z(l.nickname),1),d("div",Yw,Z(s.handleDate(l.publicationdate)),1)]),d("div",Gw,Z(l.title),1),d("div",zw,[l.authornewnum>0?(R(),P("div",Xw,[ye(" 有"+Z(l.authornewnum)+"个新回答 ",1),Zw])):ae("",!0),ye(" "+Z(l.answers==0?"暂无回答":"共"+l.answers+"个回答"),1)])]),d("div",$w,[d("div",{class:"state-box flexacenter",onClick:ge(u=>s.cutQuestionsPopupState(c),["stop"])},[d("div",t0,Z(l.anonymous==0?"公开":"匿名"),1),n0,l.popupState?(R(),P("div",s0,[d("div",{class:Ee(["state-popup-item flexacenter flex1",{pitch:l.anonymous==0}]),onClick:ge(u=>s.changeAnonymousQuestions(l.token,0,c),["stop"])},l0,10,o0),d("div",{class:Ee(["state-popup-item flexacenter flex1",{pitch:l.anonymous==1}]),onClick:ge(u=>s.changeAnonymousQuestions(l.token,1,c),["stop"])},f0,10,a0)])):ae("",!0)],8,e0)])],8,Kw))),128))],32)):ae("",!0)])])):ae("",!0),s.questionsSetp?(R(),P("div",{key:1,class:"popover-mask flexcenter issue-box",onClick:t[49]||(t[49]=l=>s.cutQuestionsSetp(0))},[s.questionsSetp==1?(R(),P("div",{key:0,class:"choosing-theme",onClick:t[42]||(t[42]=ge(()=>{},["stop"]))},[d0,d("div",A0,[(R(!0),P(de,null,De(s.questionsTypeList,(l,c)=>(R(),P("div",{class:"theme-stair-box flexflex",key:c},[(R(!0),P(de,null,De(l,u=>(R(),P("div",{class:"theme-item flexcenter",key:u.id,onClick:p=>s.choosingTheme(u.id)},Z(u.name),9,h0))),128))]))),128))])])):(R(),P("div",{key:1,class:"issue-form",onClick:t[48]||(t[48]=ge(()=>{},["stop"]))},[p0,m0,d("img",{class:"cross-icon",onClick:t[43]||(t[43]=l=>s.cutQuestionsSetp(0)),src:_t}),d("div",g0,[vt(d("textarea",{"onUpdate:modelValue":t[44]||(t[44]=l=>s.questionsObj.title=l),placeholder:"一句话描述问题,以问号结尾"},null,512),[[Gt,s.questionsObj.title]])]),vt(d("textarea",{class:"issue-replenish","onUpdate:modelValue":t[45]||(t[45]=l=>s.questionsObj.content=l),placeholder:"欢迎补充,清晰表达问题的关键点,可获得更有效的解答(非必填;请正确填写,发布后将不能修改)"},null,512),[[Gt,s.questionsObj.content]]),d("div",y0,[d("div",{class:"option-box flexacenter",onClick:t[46]||(t[46]=(...l)=>s.cutAnonymous&&s.cutAnonymous(...l))},[s.questionsObj.anonymous==0?(R(),P("img",v0)):(R(),P("img",_0)),ye(" 匿名发表 ")]),d("div",{class:"issue-btn flexcenter",onClick:t[47]||(t[47]=(...l)=>s.postingIssue&&s.postingIssue(...l))},"发布问题")])]))])):ae("",!0),s.IAnswerEditState?(R(),P("div",w0,[d("div",b0,[d("img",{class:"close-icon",src:_t,onClick:t[50]||(t[50]=(...l)=>s.closeIAnswer&&s.closeIAnswer(...l))}),C0,d("div",{class:Ee(["question-textarea",{placeholder:s.questionPlaceholderState}]),contenteditable:"true",onPaste:t[51]||(t[51]=l=>s.handlePaste(l)),innerHTML:s.IAnswerInfo.text,onInput:t[52]||(t[52]=(...l)=>s.handleInput&&s.handleInput(...l))},null,42,E0),d("div",x0,[d("div",{class:"option-box flexacenter",onClick:t[53]||(t[53]=(...l)=>s.amendIAnswer&&s.amendIAnswer(...l))},[s.IAnswerInfo.anonymous==0?(R(),P("img",k0)):(R(),P("img",T0)),ye(" 匿名发表 ")]),d("div",{class:"issue-btn flexcenter",onClick:t[54]||(t[54]=(...l)=>s.submitAnswer&&s.submitAnswer(...l))},"提交回答")])])])):ae("",!0),s.IAnswerState?(R(),P("div",S0,[d("div",R0,[d("img",{class:"close-icon",src:_t,onClick:t[55]||(t[55]=(...l)=>s.closeIAnswer&&s.closeIAnswer(...l))}),d("div",L0,[d("div",I0,[O0,d("div",P0,Z(s.IAnswerInfo.title),1)]),s.IAnswerInfo.content?(R(),P("div",{key:0,class:"question-replenish",innerHTML:s.IAnswerInfo.content},null,8,B0)):ae("",!0)]),d("div",H0,[M0,d("div",{class:Ee(["question-textarea",{placeholder:s.questionPlaceholderState}]),contenteditable:"true",onPaste:t[56]||(t[56]=l=>s.handlePaste(l)),innerHTML:s.IAnswerInfo.text,onInput:t[57]||(t[57]=(...l)=>s.handleInput&&s.handleInput(...l))},null,42,U0)]),d("div",N0,[d("div",{class:"option-box flexacenter",onClick:t[58]||(t[58]=(...l)=>s.amendIAnswer&&s.amendIAnswer(...l))},[s.IAnswerInfo.anonymous==0?(R(),P("img",D0)):(R(),P("img",F0)),ye(" 匿名发表 ")]),d("div",{class:"issue-btn flexcenter",onClick:t[59]||(t[59]=(...l)=>s.submitAnswer&&s.submitAnswer(...l))},"提交回答")])])])):ae("",!0),vt(ve(ti,{name:"msg",appear:""},{default:Yn(()=>[d("div",{class:Ee(["box-item",s.boxClass()]),style:{top:"20px"}},[d("div",j0,Z(s.msg.text),1)],2)]),_:1},512),[[al,s.msg.state]]),s.dialogSrc?(R(),P("div",{key:4,class:"detail-image-mask flexcenter",onClick:t[60]||(t[60]=l=>s.dialogSrc="")},[d("div",q0,[d("img",{class:"detail-img",src:s.dialogSrc},null,8,K0)])])):ae("",!0),vt(d("div",Q0,[d("div",W0,[d("div",V0,[J0,d("div",{class:"close icon-close iconfont",onClick:t[61]||(t[61]=l=>s.alertShow=!1)})]),d("div",Y0,[d("div",G0,[(R(!0),P(de,null,De(s.reasonList,(l,c)=>(R(),P("div",{class:Ee(["radio-area-item flexacenter",{pitch:s.checkList.includes(l)}]),key:c,onClick:u=>s.selectRadio(l)},[X0,ye(" "+Z(l),1)],10,z0))),128))]),d("div",Z0,[vt(d("textarea",{placeholder:"请输入举报原因","onUpdate:modelValue":t[62]||(t[62]=l=>s.alertText=l),maxlength:"200"},null,512),[[Gt,s.alertText]]),d("div",$0,Z(200-s.alertText.length),1)]),d("div",eb,[d("button",{type:"button",onClick:t[63]||(t[63]=l=>s.alertShow=!1)},"取消"),d("button",{type:"submit",disabled:s.checkList.length==0,onClick:t[64]||(t[64]=(...l)=>s.alertSubmit&&s.alertSubmit(...l))},"提交",8,tb)])])])],512),[[al,s.alertShow]])])])}const sb=Kg(Qg,[["render",nb]]),ob={__name:"nuxt-error-page",props:{error:Object},setup(e){const n=e.error;(n.stack||"").split(`
+`).splice(1).map(u=>({text:u.replace("webpack:/","").replace(".vue",".js").trim(),internal:u.includes("node_modules")&&!u.includes(".cache")||u.includes("internal")||u.includes("new Promise")})).map(u=>`${u.text}`).join(`
+`);const s=Number(n.statusCode||500),o=s===404,r=n.statusMessage??(o?"Page Not Found":"Internal Server Error"),i=n.message||n.toString(),a=void 0,c=o?Qi(()=>El(()=>import("./error-404.f82bfbab.js"),["./error-404.f82bfbab.js","./error-404.7fc72018.css"],import.meta.url).then(u=>u.default||u)):Qi(()=>El(()=>import("./error-500.38081b51.js"),["./error-500.38081b51.js","./error-500.c5df6088.css"],import.meta.url).then(u=>u.default||u));return(u,p)=>(R(),Zt(Oe(c),of($a({statusCode:Oe(s),statusMessage:Oe(r),description:Oe(i),stack:Oe(a)})),null,16))}},rb=ob,ib={__name:"nuxt-root",setup(e){const t=()=>null,n=Be(),s=n.deferHydration(),o=!1;Fa(Lc,ai()),n.hooks.callHookWith(a=>a.map(f=>f()),"vue:setup");const r=li();Ua((a,f,l)=>{if(n.hooks.callHook("vue:error",a,f,l).catch(c=>console.error("[nuxt] Error in `vue:error` hook",c)),Mp(a)&&(a.fatal||a.unhandled))return n.runWithContext(()=>Bp(a)),!1});const i=!1;return(a,f)=>(R(),Zt(Zf,{onResolve:Oe(s)},{default:Yn(()=>[Oe(r)?(R(),Zt(Oe(rb),{key:0,error:Oe(r)},null,8,["error"])):Oe(i)?(R(),Zt(Oe(t),{key:1,context:Oe(i)},null,8,["context"])):Oe(o)?(R(),Zt(Gf(Oe(o)),{key:2})):(R(),Zt(Oe(sb),{key:3}))]),_:1},8,["onResolve"]))}},Yl=ib;let Gl;{let e;Gl=async function(){var i,a;if(e)return e;const s=!!((i=window.__NUXT__)!=null&&i.serverRendered||((a=document.getElementById("__NUXT_DATA__"))==null?void 0:a.dataset.ssr)==="true")?bA(Yl):wA(Yl),o=xh({vueApp:s});async function r(f){await o.callHook("app:error",f),o.payload.error=o.payload.error||f}s.config.errorHandler=r;try{await Th(o,rm)}catch(f){r(f)}try{await o.hooks.callHook("app:created",s),await o.hooks.callHook("app:beforeMount",s),s.mount(qp),await o.hooks.callHook("app:mounted",s),await bn()}catch(f){r(f)}return s.config.errorHandler===r&&(s.config.errorHandler=void 0),s},e=Gl().catch(t=>{console.error("Error while mounting app:",t)})}export{ve as A,Yn as B,ye as C,ab as D,cb as E,Kg as _,Mc as a,Bl as b,Qd as c,Ao as d,Jr as e,db as f,nc as g,go as h,ub as i,Pn as j,lc as k,cc as l,eo as m,fb as n,Vs as o,cs as p,Be as q,Y as r,Np as s,bp as t,yo as u,R as v,vr as w,P as x,d as y,Z as z};
diff --git a/.output/public/_nuxt/entry.e8059532.css b/.output/public/_nuxt/entry.e8059532.css
new file mode 100644
index 0000000..d70622d
--- /dev/null
+++ b/.output/public/_nuxt/entry.e8059532.css
@@ -0,0 +1 @@
+.index-footer{margin-top:0!important}header.page-header .box .tab-list .item.pitch{color:#fddf6d!important}header.page-header .box .tab-list .item.pitch:after{background-color:#fddf6d!important}body{-ms-overflow-style:none;scrollbar-width:none}body::-webkit-scrollbar{width:0!important}.bottom-tps{color:#555;font-size:14px;font-weight:400;padding:30px 0;text-align:center}*{box-sizing:border-box;font-family:PingFangSC-Regular,PingFang SC,sans-serif;margin:0;padding:0}::-webkit-scrollbar{background-color:transparent;width:8px}::-webkit-scrollbar-thumb{background-color:#d7d7d7;border-radius:4px}::-webkit-scrollbar-thumb:hover{background-color:#666}*{scrollbar-color:#d7d7d7 transparent;scrollbar-width:thin}::-moz-scrollbar-thumb{background-color:#d7d7d7}::-moz-scrollbar-thumb:hover{background-color:#666}.flexflex{display:flex}.flex1{flex:1}.flexcenter{justify-content:center}.flexacenter,.flexcenter{align-items:center;display:flex}.flexjcenter{display:flex;justify-content:center}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#answer-app{min-width:1200px;overflow-x:hidden;word-break:break-all}#answer-app header{background:#f6f6f6;border:1px solid #ebebeb;flex-direction:column;height:150px;margin:0 auto;min-width:1200px;padding-top:24px}#answer-app header .top{margin-bottom:31px;width:1200px}#answer-app header .top .logo{cursor:pointer;width:73px}#answer-app header .top .right{justify-content:flex-end}#answer-app header .top .right .searchInput{background-color:#fff;border:1px solid #ebebeb;border-radius:104px;font-size:13px;height:32px;padding-right:16px;position:relative;width:320px}#answer-app header .top .right .searchInput input{border:none;border-radius:104px;height:100%;outline:none;padding-left:16px}#answer-app header .top .right .searchInput .input-icon{cursor:pointer;height:20px;width:20px}#answer-app header .top .right .searchInput .clear-search .cross-circle-black{cursor:pointer;height:14px;width:14px}#answer-app header .top .right .searchInput .clear-search .halving-line{background-color:#ebebeb;height:13px;margin:0 17px;width:1px}#answer-app header .top .right .searchInput .history-box{background-color:#fff;border:1px solid #ebebeb;border-radius:10px;left:0;padding-bottom:14px;padding-top:15px;position:absolute;top:36px;width:320px;z-index:2}#answer-app header .top .right .searchInput .history-box .history-title{color:#aaa;font-size:13px;margin-bottom:9px;padding-left:16px}#answer-app header .top .right .searchInput .history-box .history-list .history-item{color:#333;cursor:pointer;font-size:14px;height:30px;line-height:30px;padding:0 16px}#answer-app header .top .right .btn-list{border:1px solid #ebebeb;border-radius:5px;color:#555;font-size:13px;height:30px;margin-left:20px;width:221px}#answer-app header .top .right .btn-list .item{cursor:pointer;position:relative;text-align:center}#answer-app header .top .right .btn-list .item:not(:last-of-type):before{color:#d7d7d7;content:"|";font-size:13px;position:absolute;right:0;top:50%;transform:translateY(-50%)}#answer-app header .top .right .add-btn{background-color:#fddf6d;border-radius:5px;color:#000;cursor:pointer;font-size:13px;height:30px;margin-left:20px;width:130px}#answer-app header .top .right .add-btn .add-icon{height:14px;margin-right:4px;width:14px}#answer-app header .tab-box{background-color:#f6f6f6;margin:0 auto;min-width:1200px;padding:5px 0;width:100%;z-index:1}#answer-app header .tab-box.tab-list-fixed{position:fixed;top:0}#answer-app header .tab-box .tab-list{width:1200px}#answer-app header .tab-box .tab-list .item{color:#333;cursor:pointer;font-size:14px;height:24px;margin-right:23px;text-align:center}#answer-app header .tab-box .tab-list .item.pitch{background-color:#fa6b11;border-radius:19px;color:#fff;font-weight:650;padding:0 11px}#answer-app header .tab-box .tab-list .halving-line{color:#d7d7d7;font-size:14px;margin-right:23px}#answer-app .main{background-color:#fbfbfb;height:calc(100vh - 167px);justify-content:center;margin:0 auto;min-width:1200px}#answer-app .main .transmit-mask{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}#answer-app .main.mode-list{background:#fff}#answer-app .main.mode-list .list-box .list .item,#answer-app .main.mode-list .main-header{border-right:none}#answer-app .main.mode-list .list-box .list .item:nth-child(2){border-top:1px solid #ebebeb}#answer-app .main .main-header{background:#fff;border-right:1px solid #ebebeb;display:inline-flex;height:68px;margin:0 auto;min-width:508px;padding-left:calc(50vw - 600px);padding-top:28px;width:calc(50vw - 88px)}#answer-app .main .main-header .search-keyword{border-right:1px solid #ebebeb;color:#fa6b11;cursor:pointer;font-size:14px;height:20px;margin-right:20px;max-width:400px;padding-right:20px}#answer-app .main .main-header .search-keyword .search-keyword-cross{height:14px;margin-left:8px;width:14px}#answer-app .main .main-header .total{color:#7f7f7f;font-size:13px;height:20px}#answer-app .main .list-box{-ms-overflow-style:none;overflow-x:hidden;overflow-y:auto;padding-right:15px;scrollbar-width:none}#answer-app .main .list-box::-webkit-scrollbar{width:0!important}#answer-app .main .list-box .list{display:flex;flex-wrap:wrap;justify-content:space-between;min-width:508px;position:relative}#answer-app .main .list-box .list .item{background-color:#fff;border-right:1px solid #ebebeb;cursor:pointer;height:128px;padding:20px 0 0;position:absolute;transition-duration:.5s;transition-property:top,left,background}#answer-app .main .list-box .list .item:first-of-type{border-top:1px solid #ebebeb}#answer-app .main .list-box .list .item.upLevel .content{border:none}#answer-app .main .list-box .list .item.pitch{background-color:#fbfbfb;border-bottom:1px solid #ebebeb;border-top:1px solid #ebebeb;position:relative}#answer-app .main .list-box .list .item.pitch:after{background-color:#fddf6d;content:"";height:100%;position:absolute;right:-1px;top:0;width:4px}#answer-app .main .list-box .list .item.pitch:before{background-image:url(../img/triangle-icon.svg);content:"";height:10px;position:absolute;right:-5px;top:50%;transform:translateY(-50%);width:5px}#answer-app .main .list-box .list .item.pitch .content{border:none}#answer-app .main .list-box .list .item .dot{height:6px;margin-right:14px;margin-top:8px;width:6px}#answer-app .main .list-box .list .item .content{border-bottom:1px dotted #ebebeb;padding-bottom:20px}#answer-app .main .list-box .list .item .content .issue-title{margin-bottom:8px}#answer-app .main .list-box .list .item .content .issue-title .hot-icon{height:16px;margin-right:8px;width:16px}#answer-app .main .list-box .list .item .content .issue-title .issue{color:#000;font-size:14px;font-weight:650;line-height:22px}#answer-app .main .list-box .list .item .content .issue-title .issue em{color:red}#answer-app .main .list-box .list .item .content .answer{color:#555;font-size:13px;height:22px;line-height:22px;margin-bottom:18px}#answer-app .main .list-box .list .item .content .answer em{color:red}#answer-app .main .list-box .list .item .content .bottom{font-size:12px;justify-content:flex-end}#answer-app .main .list-box .list .item .content .bottom .quantity{color:#aaa}#answer-app .main .list-box .list .item .content .bottom .longString{background-color:#d7d7d7;height:13px;margin:0 15px;width:1px}#answer-app .main .list-box .list .item .content .bottom .answer-btn{color:#72db86;cursor:pointer}#answer-app .main .list-box .empty-box{background-color:#fff;border-radius:6px;flex-direction:column;height:490px;margin:0 auto;width:690px}#answer-app .main .list-box .empty-box .dot-list .item{height:8px;width:8px}#answer-app .main .list-box .empty-box .dot-list .item:not(:last-of-type){margin-right:5px}#answer-app .main .list-box .empty-box .empty-icon{height:100px;margin-bottom:15px;margin-top:10px;width:100px}#answer-app .main .list-box .empty-box .empty-hint{color:#7f7f7f;font-size:13px;line-height:22px}#answer-app .main .details-area-box{background-color:#fbfbfb;display:flex;flex-direction:column;min-width:688px;overflow-x:hidden;overflow-y:auto;position:relative;width:calc(50vw + 88px)}#answer-app .main .details-area-box .loading-bj{background-color:#ffffff80;height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}#answer-app .main .details-area-box .loading-bj svg{animation:spin 2s linear infinite;width:100px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}#answer-app .main .details-area-box .details-box{flex:1;flex-direction:column;padding-left:60px;position:relative;width:688px}#answer-app .main .details-area-box .details-box .close-box{display:flex;height:69px;justify-content:flex-end;padding-top:29px}#answer-app .main .details-area-box .details-box .close-box .close-circle{cursor:pointer;height:20px;position:relative;width:20px}#answer-app .main .details-area-box .details-box .close-box .close-circle .close-icon{height:20px;width:20px}#answer-app .main .details-area-box .details-box .close-box .close-circle .details-cross-icon{height:10px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:10px}#answer-app .main .details-area-box .details-box .details-issue{background-color:#fff;border-radius:8px;box-shadow:0 0 11px #0000001a;margin-bottom:28px;padding-top:24px;position:relative;width:627px;word-break:break-all}#answer-app .main .details-area-box .details-box .details-issue .icon{background-color:#72db86;border:4px solid #fbfbfb;border-radius:50%;color:#fff;font-family:PingFangSC-Semibold,PingFang SC Semibold,PingFang SC,sans-serif;font-size:13px;font-weight:650;height:28px;left:-4px;line-height:20px;position:absolute;top:-4px;width:28px}#answer-app .main .details-area-box .details-box .details-issue .title{color:#000;font-size:18px;font-weight:650;line-height:22px;margin-bottom:21px;padding:0 24px}#answer-app .main .details-area-box .details-box .details-issue .hint{color:#555;font-size:14px;line-height:24px;margin-bottom:20px;padding:0 24px}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn{background-color:#f6f6f6;border-radius:43px;color:#555;cursor:pointer;font-size:14px;height:28px;line-height:20px;width:120px}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn.white{background-color:#62b1ff;color:#fff}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn.white .answer-icon-white{display:block}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn.white .answer-icon-edit{display:none}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn .answer-btn-icon{display:none;height:16px;margin-right:8px;width:16px}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn .answer-icon-edit{display:block}#answer-app .main .details-area-box .details-box .answer-total-amount{color:#555;font-size:13px;line-height:22px;margin-bottom:20px}#answer-app .main .details-area-box .details-box .your-answer-box{background-color:#fff;border:1px solid #ebebeb;border-radius:10px;box-shadow:0 0 3px #0000001e;margin-bottom:25px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-header{border-bottom:1px dotted #ebebeb;color:#000;font-size:18px;font-weight:650;height:67px;line-height:26px;padding-left:24px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-textarea{border:none;font-size:14px;height:224px;outline:none;overflow-x:hidden;overflow-y:auto;padding:20px 23px;resize:none;width:100%}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-textarea.placeholder:after{color:#999;content:"输入图文内容回答提问"}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-textarea img{max-width:100%}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-bottom{background-color:#f6f6f6;height:50px;justify-content:space-between;padding-left:25px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-bottom .option-box{color:#7f7f7f;cursor:pointer;font-size:14px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-bottom .option-box .option-icon{height:12px;margin-right:8px;width:12px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-bottom .your-answer-submit{background-color:#fddf6d;border-radius:0 0 10px;color:#333;cursor:pointer;font-size:14px;height:50px;width:120px}#answer-app .main .details-area-box .details-box .answer-box-item{background-color:#fff;border-radius:8px;box-shadow:0 0 11px #0000001a;margin-bottom:21px;padding-top:24px;position:relative;width:627px}#answer-app .main .details-area-box .details-box .answer-box-item .icon-box{background-color:#62b1ff;border:4px solid #fbfbfb;border-radius:50%;color:#fff;font-family:PingFangSC-Semibold,PingFang SC Semibold,PingFang SC,sans-serif;font-size:13px;font-weight:650;height:28px;left:-4px;line-height:20px;position:absolute;top:-4px;width:28px}#answer-app .main .details-area-box .details-box .answer-box-item .answer-text{color:#555;font-size:14px;line-height:26px;margin-bottom:20px;padding:0 24px;word-break:break-all}#answer-app .main .details-area-box .details-box .answer-box-item .answer-text img{cursor:pointer;max-width:100%}#answer-app .main .details-area-box .details-box .answer-box-item .operate-box{padding:0 24px}#answer-app .main .details-area-box .details-box .answer-box-item .operate-box .edit-box .edit-btn{background-color:#f6f6f6;border-radius:50%;cursor:pointer;height:24px;width:24px}#answer-app .main .details-area-box .details-box .answer-box-item .operate-box .edit-box .edit-btn .edit-icon{height:16px;width:16px}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment{background-color:#f6f6f6;position:relative;z-index:2}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment .post-input{background-color:transparent;border:none;font-size:14px;height:50px;outline-color:#62b1ff;padding:0 23px}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment .post-input::-moz-placeholder{color:#aaa}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment .post-input::placeholder{color:#aaa}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment .post-ok{background-color:#62b1ff;color:#fff;cursor:pointer;font-size:13px;height:50px;width:50px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-empty-box{flex-direction:column;height:321px;justify-content:center}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box{padding:17px 24px 29px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item{padding:13px 0 0}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header{justify-content:space-between;margin-bottom:9px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left{font-size:13px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left .comments-avatar{border-radius:50%;height:20px;margin-right:10px;width:20px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left .comments-username{color:#555;margin-right:10px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left .comments-time{color:#aaa;margin-right:8px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left .comments-identity{background-color:#f0f2f5;border:1px solid #d7d7d7;border-radius:5px;color:#7f7f7f;font-size:12px;height:20px;padding:0 3px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box{position:relative}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box:hover .report-box{display:flex}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box .menu-icon{cursor:pointer;height:14px;width:14px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box .report-box{background-color:#f6f6f6;border:1px solid #d7d7d7;border-radius:5px;color:#7f7f7f;cursor:pointer;display:none;font-size:12px;height:24px;position:absolute;right:0;top:24px;width:60px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box .report-box:after{content:"";height:36px;position:absolute;right:0;top:-14px;width:58px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .comment-icon{cursor:pointer;height:13px;margin-left:40px;width:14px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .like-box{color:#aaa;cursor:pointer;font-size:12px;margin-left:40px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .like-box .like-icon{height:14px;width:14px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .like-box .like-quantity{margin-left:6px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content{border-bottom:1px dotted #ebebeb;margin-left:30px;padding-bottom:12px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-text{color:#333;font-size:14px;line-height:22px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-text .comments-reply{color:#92a1bf;display:inline}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box{margin-top:13px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .comments-input{border:1px solid #d7d7d7;border-radius:8px;height:60px;margin-right:16px;position:relative;width:519px;z-index:1}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .comments-input:after{background-color:#d7d7d7;content:"";display:block;height:20px;left:21px;position:absolute;top:-2px;transform:rotate(45deg);width:20px;z-index:-1}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .comments-input textarea{border:none;border-radius:7px 0 0 7px;outline:none;padding:11px 16px;resize:none}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .comments-input .comments-btn{background-color:#72db86;border-radius:0 7px 7px 0;color:#fff;cursor:pointer;font-size:14px;height:58px;width:58px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .forkfork{cursor:pointer;height:12px;width:12px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .child-comments{border-bottom:1px dotted #ebebeb;margin-left:24px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .child-comments .comments-item:last-of-type .comments-text{border-bottom:none}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .child-comments .comments-also{color:#62b1ff;cursor:pointer;font-size:13px;height:46px;line-height:22px;margin-left:30px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .child-comments .comments-also .also-icon{height:10px;margin-left:8px;width:10px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .reverl-all{border:1px solid #ebebeb;border-radius:43px;color:#555;cursor:pointer;font-size:13px;height:28px;line-height:20px;margin:16px auto 0;width:120px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .reverl-all .arrow-circular{height:10px;margin-left:10px;width:10px}#answer-app .main .details-area-box .details-box .info-box{justify-content:space-between;margin-bottom:20px;padding:0 24px}#answer-app .main .details-area-box .details-box .info-box .user-info .avatar{border-radius:50%;height:20px;margin-right:8px;width:20px}#answer-app .main .details-area-box .details-box .info-box .user-info .user-name{color:#7f7f7f;font-size:13px;margin-right:20px}#answer-app .main .details-area-box .details-box .info-box .user-info .homeShare{height:14px}#answer-app .main .details-area-box .details-box .info-box .time{color:#aaa;font-size:12px}#answer-app .main .details-area-box .details-box .operate-box{border-top:1px dotted #ebebeb;height:54px;justify-content:space-between;padding:0 24px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item{color:#7f7f7f;cursor:pointer;font-size:13px;height:53px;margin-left:49px;position:relative}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.commentnum{z-index:1}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.commentnum:after{background:inherit;background-color:#f6f6f6;content:"";height:100%;left:50%;position:absolute;top:0;transform:translate(-50%);width:80px;z-index:-1}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon{margin-right:7px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon.operate-like-icon,#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon.operate-transmit-icon{height:14px;width:14px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon.operate-comment-icon{height:13px;width:14px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon.operate-collect-icon{height:16px;width:16px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit{position:relative}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit:after{content:"";height:100%;position:absolute;top:20px;width:100%;z-index:10}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box{background:#fff;border:1px solid #ebebeb;border-radius:10px;box-shadow:0 0 3px #0000001e;justify-content:space-between;padding:40px 35px 42px;position:absolute;right:-24px;top:64px;width:628px;z-index:3}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .cross-icon{cursor:pointer;height:22px;padding:6px;position:absolute;right:6px;top:6px;width:22px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-title{color:#000;font-size:16px;font-weight:650;line-height:24px;margin-bottom:24px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-content{border:1px solid #f2f2f2;border-radius:16px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-web .transmit-content{font-size:14px;line-height:24px;margin-bottom:32px;padding:14px 16px;width:300px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-web .transmit-content .transmit-headline{color:#333}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-web .transmit-content .transmit-url{word-wrap:break-word;color:#aaa}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-web .transmit-web-btn{background-color:#fddf6d;border-radius:8px;color:#000;font-size:14px;height:38px;width:120px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-mini .transmit-content{color:#555;flex-direction:column;font-size:13px;padding:22px 44px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-mini .transmit-content .transmit-mini-img{height:90px;margin-bottom:21px;width:90px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-mini .transmit-content .give-sweep{height:12px;margin-right:8px;width:12px}#answer-app .main .details-area-box .details-box .copyright{background-color:#f2f2f2;border-radius:4px;color:#aaa;font-size:13px;height:32px;margin-bottom:21px;text-align:center}#answer-app .main .details-area-box .details-box .mobile-phone-check{border:1px solid #ebebeb;border-radius:20px;color:#7f7f7f;cursor:pointer;font-size:13px;margin:0 auto 50px;padding:10px 0;position:relative;width:150px}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-icon{height:16px;margin-right:10px;width:16px}#answer-app .main .details-area-box .details-box .mobile-phone-check:hover .QRCode-pop{display:flex}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-pop{background-color:#fff;border-radius:17px;bottom:45px;box-shadow:0 0 5px #00000029;display:none;flex-direction:column;height:200px;position:absolute;width:200px;z-index:1}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-pop .offer-mini-QRcode{margin-bottom:18px;width:113px}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-pop .QRCode-hint{color:#333;font-size:13px}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-pop .QRCode-hint .QRCode-img{height:12px;margin-right:12px;width:12px}#answer-app .main .details-area-box .empty-box{flex-direction:column;margin-bottom:16px}#answer-app .main .details-area-box .empty-box .dot-list{margin-bottom:8px}#answer-app .main .details-area-box .empty-box .dot-list .dot-item{height:8px;width:8px}#answer-app .main .details-area-box .empty-box .dot-list .dot-item:not(:last-of-type){margin-right:5px}#answer-app .main .details-area-box .empty-box .empty-icon{height:100px;width:100px}#answer-app .main .details-area-box .empty-hint{color:#7f7f7f;font-size:13px;line-height:22px;text-align:center}#answer-app .my-popover .popover-box{background-color:#fff;border-radius:10px;box-shadow:0 0 3px #0000001e;flex-direction:column;height:616px;padding-top:30px;position:relative;width:750px}#answer-app .my-popover .popover-box .cross-icon{cursor:pointer;height:12px;position:absolute;right:12px;top:12px;width:12px}#answer-app .my-popover .popover-box .tab-list{color:#aaa;font-size:16px;margin-bottom:30px}#answer-app .my-popover .popover-box .tab-list .tab-item{cursor:pointer}#answer-app .my-popover .popover-box .tab-list .tab-item .quantity{margin-left:10px}#answer-app .my-popover .popover-box .tab-list .tab-item.pitch{color:#000;font-family:PingFangSC-Semibold,PingFang SC Semibold,PingFang SC,sans-serif;font-weight:650}#answer-app .my-popover .popover-box .tab-list .tab-item.pitch .quantity{color:#555;font-weight:400}#answer-app .my-popover .popover-box .tab-list .long-string{background-color:#d7d7d7;height:17px;margin:0 20px;width:1px}#answer-app .my-popover .popover-box .empty-box{background-color:#fff;border:1px solid #ebebeb;border-radius:6px;flex-direction:column;height:490px;margin:0 auto;width:690px}#answer-app .my-popover .popover-box .empty-box .dot-list .item{height:8px;width:8px}#answer-app .my-popover .popover-box .empty-box .dot-list .item:not(:last-of-type){margin-right:5px}#answer-app .my-popover .popover-box .empty-box .empty-icon{height:100px;margin-bottom:15px;margin-top:10px;width:100px}#answer-app .my-popover .popover-box .empty-box .empty-hint{color:#7f7f7f;font-size:13px;line-height:22px}#answer-app .my-popover .popover-box .content-box{height:490px;margin:0 auto;overflow:auto;width:690px}#answer-app .my-popover .popover-box .content-box .icon{border-radius:50%;color:#fff;font-family:PingFangSC-Semibold,PingFang SC Semibold,PingFang SC,sans-serif;font-size:13px;font-weight:650;height:20px;line-height:20px;margin-right:17px;width:20px}#answer-app .my-popover .popover-box .content-box .icon.q{background-color:#72db86}#answer-app .my-popover .popover-box .content-box .icon.a{background-color:#62b1ff}#answer-app .my-popover .popover-box .content-box .item{border-bottom:1px dotted #ebebeb;padding:20px 0}#answer-app .my-popover .popover-box .content-box .item .centre{flex-direction:column}#answer-app .my-popover .popover-box .content-box .item .centre .info{color:#555;font-size:12px;margin-bottom:10px}#answer-app .my-popover .popover-box .content-box .item .centre .info .time{color:#aaa;margin-left:8px}#answer-app .my-popover .popover-box .content-box .item .centre .title{color:#333;font-size:14px;line-height:22px;margin-bottom:10px;width:532px}#answer-app .my-popover .popover-box .content-box .item .centre .text{color:#aaa;font-size:12px;width:532px}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box{cursor:pointer;position:relative}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .text{color:#333;font-size:13px}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .arrows{height:5px;margin-left:6px;width:8px}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup{background-color:#fff;border-radius:10px;box-shadow:0 0 6px #00000034;flex-direction:column;height:101px;position:absolute;right:3px;top:28px;width:140px;z-index:1}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-mask{height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:-1}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item{color:#555;font-size:14px;justify-content:space-between;padding:0 10px}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item:hover{color:#000}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item.pitch{color:#fa6b11}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item.pitch .state-popup-icon{display:block}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item:not(:last-of-type){border-bottom:1px dotted #e3e3e3}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item .state-popup-icon{display:none;height:8px;width:11px}#answer-app .my-popover .popover-box .content-box .item .operate-box .edit-icon{cursor:pointer;height:16px;margin-left:30px;width:16px}#answer-app .my-popover .popover-box .content-box.collect-list{padding-right:10px}#answer-app .my-popover .popover-box .content-box.collect-list .item{border-bottom:1px dotted #ebebeb;padding:20px 0}#answer-app .my-popover .popover-box .content-box.collect-list .item .delete-box .delete-icon{cursor:pointer}#answer-app .my-popover .popover-box .content-box.questions-list .item .new-answer{color:#f95d5d}#answer-app .my-popover .popover-box .content-box.questions-list .item .new-answer .long-string{background-color:#d7d7d7;height:12px;margin:0 8px;width:1px}#answer-app .popover-mask{background-color:#00000080;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1000}#answer-app .issue-box .choosing-theme{background:inherit;background-color:#fff;border:none;border-radius:10px;box-shadow:0 0 3px #0000001e;padding:30px 36px 45px;width:530px}#answer-app .issue-box .choosing-theme .title{color:#000;font-size:14px;font-weight:650;margin-bottom:30px;position:relative}#answer-app .issue-box .choosing-theme .title:before{background-color:#72db86;border-radius:3px;content:"";height:12px;left:-15px;position:absolute;top:50%;transform:translateY(-50%);width:5px}#answer-app .issue-box .choosing-theme .theme-list,#answer-app .issue-box .choosing-theme .theme-list .theme-stair-box{flex-wrap:wrap}#answer-app .issue-box .choosing-theme .theme-list .theme-item{background-color:#f6f6f6;border-radius:5px;color:#333;cursor:pointer;font-size:14px;height:36px;margin-bottom:10px;width:106px}#answer-app .issue-box .choosing-theme .theme-list .theme-item:not(:nth-child(4n)){margin-right:11px}#answer-app .issue-box .choosing-theme .theme-list .theme-item:hover{background-color:#fddf6d;color:#000}#answer-app .issue-box .issue-form{background-position:-4px -3px;border-radius:10px;height:520px;padding-top:30px;position:relative;width:720px;z-index:1}#answer-app .issue-box .issue-form .issue-bj{height:526px;left:-4px;position:absolute;top:-3px;width:727px;z-index:-1}#answer-app .issue-box .issue-form .q{background-color:#72db86;border-radius:50%;color:#fff;font-size:13px;font-style:normal;font-weight:650;height:20px;left:-1px;position:absolute;top:-1px;width:20px}#answer-app .issue-box .issue-form .cross-icon{cursor:pointer;height:12px;position:absolute;right:12px;top:12px;width:12px}#answer-app .issue-box .issue-form input,#answer-app .issue-box .issue-form textarea{border:none;outline:none}#answer-app .issue-box .issue-form .issue-input{border-bottom:1px dotted #ebebeb;height:80px;padding:0 30px;width:720px}#answer-app .issue-box .issue-form .issue-input textarea{font-size:18px;height:100%;resize:none;width:100%}#answer-app .issue-box .issue-form .issue-input textarea::-moz-placeholder{color:#aaa}#answer-app .issue-box .issue-form .issue-input textarea::placeholder{color:#aaa}#answer-app .issue-box .issue-form .issue-replenish{display:block;font-size:14px;height:360px;padding:20px 30px;resize:none;width:720px}#answer-app .issue-box .issue-form .issue-replenish::-moz-placeholder{color:#aaa}#answer-app .issue-box .issue-form .issue-replenish::placeholder{color:#aaa}#answer-app .edit-answers{background-color:#fff;border-radius:10px;box-shadow:0 0 3px #0000001e;display:flex;flex-direction:column;height:400px;position:relative;width:720px}#answer-app .edit-answers .close-icon{cursor:pointer;height:12px;position:absolute;right:12px;top:12px;width:12px}#answer-app .edit-answers .title{border-bottom:1px solid #ebebeb;color:#000;font-size:14px;font-weight:650;height:64px;padding-left:20px;padding-top:20px}#answer-app .edit-answers .question-textarea{border:none;color:#555;display:block;flex:1;font-size:14px;line-height:26px;outline:none;overflow:auto;padding:20px;resize:none;width:100%}#answer-app .edit-answers .question-textarea.placeholder:after{color:#999;content:"输入图文内容回答提问"}#answer-app .edit-answers .question-textarea img{max-width:100%}#answer-app .issue-bottom{background-color:#f6f6f6;border-radius:0 0 10px 10px;height:50px;justify-content:space-between;padding-left:30px}#answer-app .issue-bottom .option-box{color:#7f7f7f;cursor:pointer;font-size:14px}#answer-app .issue-bottom .option-box .option-icon{height:12px;margin-right:6px;width:12px}#answer-app .issue-bottom .issue-btn{background-color:#fddf6d;border-radius:0 0 10px;color:#333;cursor:pointer;font-size:14px;height:50px;width:120px}#answer-app .i-answer-box{background-color:#fff;border-radius:10px;box-shadow:0 0 3px #0000001e;flex-direction:column;height:660px;position:relative;width:720px}#answer-app .i-answer-box .close-icon{cursor:pointer;height:12px;position:absolute;right:12px;top:12px;width:12px}#answer-app .i-answer-box .question-header{border-bottom:1px solid #ebebeb;padding:25px 8px 25px 20px}#answer-app .i-answer-box .question-header .question-title{color:#000;font-size:18px;font-weight:650;margin-bottom:20px}#answer-app .i-answer-box .question-header .question-title .question-icon{background-color:#72db86;border-radius:50%;color:#fff;font-size:13px;font-weight:650;height:20px;margin-right:12px;margin-top:3px;width:20px}#answer-app .i-answer-box .question-header .question-replenish{color:#7f7f7f;font-size:13px;font-weight:400;line-height:24px;max-height:87px;overflow:auto;padding-left:33px}#answer-app .i-answer-box .question-middle{flex:1;padding:23px 20px}#answer-app .i-answer-box .question-middle .question-icon{background-color:#62b1ff;border-radius:50%;color:#fff;font-size:13px;font-weight:650;height:20px;margin-right:12px;width:20px}#answer-app .i-answer-box .question-middle .question-textarea{background-color:transparent;border:none;outline:none;overflow:auto;resize:none;width:100%}#answer-app .i-answer-box .question-middle .question-textarea.placeholder:after{color:#999;content:"输入图文内容回答提问"}#answer-app .i-answer-box .question-middle .question-textarea img{max-width:100%}#answer-app .detail-image-mask{background-color:#fffc;border:none;height:100%;left:0;max-height:none;max-width:none;position:fixed;top:0;width:100%;z-index:100}#answer-app .detail-image-mask .detail-image{background-color:#111;border-radius:8px;height:80vh;width:80vw}#answer-app .detail-image-mask .detail-image .detail-img{max-height:100%;max-width:100%}.box-item{align-items:center;background-color:#edf2fc;border:1px solid #ebeef5;border-radius:4px;display:flex;font-size:14px;justify-content:space-between;left:50%;min-width:380px;padding:15px 15px 15px 20px;position:fixed;transform:translate(-50%);transition:opacity .3s,transform .4s,top .4s;z-index:5000}.box-item-success{background-color:#f0f9eb;border-color:#e1f3d8;color:#67c23a}.box-item-warning{background-color:#fdf6ec;border-color:#faecd8;color:#e6a23c}.box-item-error{background-color:#fef0f0;border-color:#fde2e2;color:#f56c6c}.msg-container{align-items:center;display:flex;line-height:16px}.msg-container .iconfont{margin-right:5px}.msg-enter-active{animation:anim .5s}.msg-leave-active{animation:anim .5s reverse}@keyframes anim{0%{opacity:0;transform:translate(-50%,-200%)}to{opacity:1;transform:translate(-50%)}}.alert-form{background-color:#000000b3;display:block;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:2100}.alert-form *{box-sizing:border-box}.alert-form .reports{height:440px}.alert-form .reports .radio-area{margin-bottom:40px}.alert-form .reports .radio-area .radio-area-item{color:#606266;cursor:pointer;font-size:14px;margin-right:10px}.alert-form .reports .radio-area .radio-area-item.pitch .radio-area-frame{background-color:#50e3c2;border-color:#50e3c2}.alert-form .reports .radio-area .radio-area-item.pitch .radio-area-frame:after{transform:rotate(45deg) scaleY(1)}.alert-form .reports .radio-area .radio-area-item .radio-area-frame{border:1px solid #dcdfe6;border-radius:2px;height:14px;margin-right:10px;position:relative;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);width:14px}.alert-form .reports .radio-area .radio-area-item .radio-area-frame:after{border:1px solid #fff;border-left:0;border-top:0;box-sizing:content-box;content:"";height:7px;left:4px;position:absolute;top:1px;transform:rotate(45deg) scaleY(0);transform-origin:center;transition:transform .15s ease-in .05s;width:3px}.alert-form .el-checkbox-group{font-size:0}.alert-form .comments{background-color:#fff;border:none;border-radius:8px 8px 6px 6px;display:block;height:440px;left:50%;max-height:90vh;max-width:90vw;position:fixed;top:50%;transform:translate(-50%,-50%);width:740px;z-index:11}.alert-form .comments .text-box{position:relative}.alert-form .comments .text-num{bottom:10px;color:#999;font-size:12px;position:absolute;right:10px}.alert-form .comments .form{display:block;padding:34px 30px 40px;width:100%}.alert-form .comments .form textarea{background:#f7f7f7;border:1px solid #f7f7f7;border-radius:5px;display:block;font-size:14px;height:172px;line-height:22px;margin-bottom:30px;outline:none;padding:18px;resize:none;width:100%}.alert-form .head{align-items:center;background:#333;border-radius:6px 6px 0 0;color:#fff;display:flex;font-size:17px;height:56px;justify-content:space-between;padding:0 18px 0 30px}.alert-form .head .close{color:#b3b3b3;cursor:pointer;font-size:14px}.alert-form .footer{align-items:center;display:flex;justify-content:center}.alert-form .footer button[type=button]{margin-right:20px}.alert-form .footer button{background-color:#fff;border:1px solid #999;border-radius:5px;color:#333;cursor:pointer;font-size:14px;height:38px;outline:none;width:128px}.alert-form .footer button[type=submit]{color:#fff}.alert-form .el-checkbox__input.is-checked .el-checkbox__inner,.alert-form .el-checkbox__input.is-indeterminate .el-checkbox__inner,.alert-form .footer button[type=submit]{background-color:#50e3c2;border-color:#50e3c2}.alert-form .el-checkbox__inner:hover,.alert-form .el-checkbox__input.is-focus .el-checkbox__inner{border-color:#50e3c2}.alert-form .el-checkbox__input.is-checked+.el-checkbox__label{color:#50e3c2}
diff --git a/.output/public/_nuxt/error-404.7fc72018.css b/.output/public/_nuxt/error-404.7fc72018.css
new file mode 100644
index 0000000..cfabbe5
--- /dev/null
+++ b/.output/public/_nuxt/error-404.7fc72018.css
@@ -0,0 +1 @@
+.spotlight[data-v-ccd3db62]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);bottom:-30vh;filter:blur(20vh);height:40vh}.gradient-border[data-v-ccd3db62]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.5rem;position:relative}@media (prefers-color-scheme:light){.gradient-border[data-v-ccd3db62]{background-color:#ffffff4d}.gradient-border[data-v-ccd3db62]:before{background:linear-gradient(90deg,#e2e2e2,#e2e2e2 25%,#00dc82 50%,#36e4da 75%,#0047e1)}}@media (prefers-color-scheme:dark){.gradient-border[data-v-ccd3db62]{background-color:#1414144d}.gradient-border[data-v-ccd3db62]:before{background:linear-gradient(90deg,#303030,#303030 25%,#00dc82 50%,#36e4da 75%,#0047e1)}}.gradient-border[data-v-ccd3db62]:before{background-size:400% auto;border-radius:.5rem;bottom:0;content:"";left:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.5;padding:2px;position:absolute;right:0;top:0;transition:background-position .3s ease-in-out,opacity .2s ease-in-out;width:100%}.gradient-border[data-v-ccd3db62]:hover:before{background-position:-50% 0;opacity:1}.bg-white[data-v-ccd3db62]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.cursor-pointer[data-v-ccd3db62]{cursor:pointer}.flex[data-v-ccd3db62]{display:flex}.grid[data-v-ccd3db62]{display:grid}.place-content-center[data-v-ccd3db62]{place-content:center}.items-center[data-v-ccd3db62]{align-items:center}.justify-center[data-v-ccd3db62]{justify-content:center}.font-sans[data-v-ccd3db62]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-medium[data-v-ccd3db62]{font-weight:500}.font-light[data-v-ccd3db62]{font-weight:300}.text-8xl[data-v-ccd3db62]{font-size:6rem;line-height:1}.text-xl[data-v-ccd3db62]{font-size:1.25rem;line-height:1.75rem}.leading-tight[data-v-ccd3db62]{line-height:1.25}.mb-8[data-v-ccd3db62]{margin-bottom:2rem}.mb-16[data-v-ccd3db62]{margin-bottom:4rem}.max-w-520px[data-v-ccd3db62]{max-width:520px}.min-h-screen[data-v-ccd3db62]{min-height:100vh}.overflow-hidden[data-v-ccd3db62]{overflow:hidden}.px-8[data-v-ccd3db62]{padding-left:2rem;padding-right:2rem}.py-2[data-v-ccd3db62]{padding-bottom:.5rem;padding-top:.5rem}.px-4[data-v-ccd3db62]{padding-left:1rem;padding-right:1rem}.fixed[data-v-ccd3db62]{position:fixed}.left-0[data-v-ccd3db62]{left:0}.right-0[data-v-ccd3db62]{right:0}.text-center[data-v-ccd3db62]{text-align:center}.text-black[data-v-ccd3db62]{--tw-text-opacity:1;color:rgba(0,0,0,var(--tw-text-opacity))}.antialiased[data-v-ccd3db62]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.w-full[data-v-ccd3db62]{width:100%}.z-10[data-v-ccd3db62]{z-index:10}.z-20[data-v-ccd3db62]{z-index:20}@media (min-width:640px){.sm\:text-4xl[data-v-ccd3db62]{font-size:2.25rem;line-height:2.5rem}.sm\:text-xl[data-v-ccd3db62]{font-size:1.25rem;line-height:1.75rem}.sm\:text-10xl[data-v-ccd3db62]{font-size:10rem;line-height:1}.sm\:px-0[data-v-ccd3db62]{padding-left:0;padding-right:0}.sm\:py-3[data-v-ccd3db62]{padding-bottom:.75rem;padding-top:.75rem}.sm\:px-6[data-v-ccd3db62]{padding-left:1.5rem;padding-right:1.5rem}}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-ccd3db62]{--tw-bg-opacity:1;background-color:rgba(0,0,0,var(--tw-bg-opacity))}.dark\:text-white[data-v-ccd3db62]{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}}
diff --git a/.output/public/_nuxt/error-404.f82bfbab.js b/.output/public/_nuxt/error-404.f82bfbab.js
new file mode 100644
index 0000000..ab32d90
--- /dev/null
+++ b/.output/public/_nuxt/error-404.f82bfbab.js
@@ -0,0 +1 @@
+import{u as C,d as R,c as y,h as q,r as S,o as A,a as B,b as E,e as z,f as I,g as w,i as L,j as T,p as j,k as U,n as V,w as D,l as H,m as M,q as k,s as O,_ as $,t as F,v as G,x as Q,y as g,z as _,A as X,B as J,C as K,D as W,E as Y}from"./entry.dcd752c1.js";async function N(t,a=C()){const{path:l,matched:e}=a.resolve(t);if(!e.length||(a._routePreloaded||(a._routePreloaded=new Set),a._routePreloaded.has(l)))return;const r=a._preloadPromises=a._preloadPromises||[];if(r.length>4)return Promise.all(r).then(()=>N(t,a));a._routePreloaded.add(l);const s=e.map(i=>{var n;return(n=i.components)==null?void 0:n.default}).filter(i=>typeof i=="function");for(const i of s){const n=Promise.resolve(i()).catch(()=>{}).finally(()=>r.splice(r.indexOf(n)));r.push(n)}await Promise.all(r)}const Z=(...t)=>t.find(a=>a!==void 0),ee="noopener noreferrer";/*! @__NO_SIDE_EFFECTS__ */function te(t){const a=t.componentName||"NuxtLink",l=(e,r)=>{if(!e||t.trailingSlash!=="append"&&t.trailingSlash!=="remove")return e;const s=t.trailingSlash==="append"?D:H;if(typeof e=="string")return s(e,!0);const i="path"in e?e.path:r(e).path;return{...e,name:void 0,path:s(i,!0)}};return R({name:a,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1}},setup(e,{slots:r}){const s=C(),i=M(),n=y(()=>{const o=e.to||e.href||"";return l(o,s.resolve)}),f=y(()=>typeof n.value=="string"&&q(n.value,{acceptRelative:!0})),h=y(()=>e.external||e.target&&e.target!=="_self"?!0:typeof n.value=="object"?!1:n.value===""||f.value),b=S(!1),v=S(null),P=o=>{var d;v.value=e.custom?(d=o==null?void 0:o.$el)==null?void 0:d.nextElementSibling:o==null?void 0:o.$el};if(e.prefetch!==!1&&e.noPrefetch!==!0&&e.target!=="_blank"&&!re()){const d=k();let m,c=null;A(()=>{const x=ne();B(()=>{m=E(()=>{var p;(p=v==null?void 0:v.value)!=null&&p.tagName&&(c=x.observe(v.value,async()=>{c==null||c(),c=null;const u=typeof n.value=="string"?n.value:s.resolve(n.value).fullPath;await Promise.all([d.hooks.callHook("link:prefetch",u).catch(()=>{}),!h.value&&N(n.value,s).catch(()=>{})]),b.value=!0}))})})}),z(()=>{m&&I(m),c==null||c(),c=null})}return()=>{var x,p;if(!h.value){const u={ref:P,to:n.value,activeClass:e.activeClass||t.activeClass,exactActiveClass:e.exactActiveClass||t.exactActiveClass,replace:e.replace,ariaCurrentValue:e.ariaCurrentValue,custom:e.custom};return e.custom||(b.value&&(u.class=e.prefetchedClass||t.prefetchedClass),u.rel=e.rel),w(L("RouterLink"),u,r.default)}const o=typeof n.value=="object"?((x=s.resolve(n.value))==null?void 0:x.href)??null:n.value&&!e.external&&!f.value?l(T(i.app.baseURL,n.value),s.resolve):n.value||null,d=e.target||null,m=e.noRel?null:Z(e.rel,t.externalRelAttribute,o?ee:"")||null,c=()=>O(o,{replace:e.replace});return e.custom?r.default?r.default({href:o,navigate:c,get route(){if(!o)return;const u=j(o);return{path:u.pathname,fullPath:u.pathname,get query(){return U(u.search)},hash:u.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:o}},rel:m,target:d,isExternal:h.value,isActive:!1,isExactActive:!1}):null:w("a",{ref:v,href:o,rel:m,target:d},(p=r.default)==null?void 0:p.call(r))}}})}const ae=te(V);function ne(){const t=k();if(t._observer)return t._observer;let a=null;const l=new Map,e=(s,i)=>(a||(a=new IntersectionObserver(n=>{for(const f of n){const h=l.get(f.target);(f.isIntersecting||f.intersectionRatio>0)&&h&&h()}})),l.set(s,i),a.observe(s),()=>{l.delete(s),a.unobserve(s),l.size===0&&(a.disconnect(),a=null)});return t._observer={observe:e}}function re(){const t=navigator.connection;return!!(t&&(t.saveData||/2g/.test(t.effectiveType)))}const oe=t=>(W("data-v-ccd3db62"),t=t(),Y(),t),se={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},le=oe(()=>g("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),ie={class:"max-w-520px text-center z-20"},ce=["textContent"],ue=["textContent"],de={class:"w-full flex items-center justify-center"},fe={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:404},statusMessage:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const a=t;return F({title:`${a.statusCode} - ${a.statusMessage} | ${a.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}a{color:inherit;text-decoration:inherit}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(l,e)=>{const r=ae;return G(),Q("div",se,[le,g("div",ie,[g("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:_(t.statusCode)},null,8,ce),g("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:_(t.description)},null,8,ue),g("div",de,[X(r,{to:"/",class:"gradient-border text-md sm:text-xl py-2 px-4 sm:py-3 sm:px-6 cursor-pointer"},{default:J(()=>[K(_(t.backHome),1)]),_:1})])])])}}},ve=$(fe,[["__scopeId","data-v-ccd3db62"]]);export{ve as default};
diff --git a/.output/public/_nuxt/error-500.38081b51.js b/.output/public/_nuxt/error-500.38081b51.js
new file mode 100644
index 0000000..ad0305c
--- /dev/null
+++ b/.output/public/_nuxt/error-500.38081b51.js
@@ -0,0 +1 @@
+import{_ as i,t as a,v as r,x as n,y as e,z as s,D as l,E as d}from"./entry.dcd752c1.js";const c=t=>(l("data-v-df79c84d"),t=t(),d(),t),p={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},f=c(()=>e("div",{class:"fixed -bottom-1/2 left-0 right-0 h-1/2 spotlight"},null,-1)),h={class:"max-w-520px text-center"},g=["textContent"],m=["textContent"],x={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const o=t;return a({title:`${o.statusCode} - ${o.statusMessage} | ${o.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(u,b)=>(r(),n("div",p,[f,e("div",h,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:s(t.statusCode)},null,8,g),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:s(t.description)},null,8,m)])]))}},w=i(x,[["__scopeId","data-v-df79c84d"]]);export{w as default};
diff --git a/.output/public/_nuxt/error-500.c5df6088.css b/.output/public/_nuxt/error-500.c5df6088.css
new file mode 100644
index 0000000..27ea077
--- /dev/null
+++ b/.output/public/_nuxt/error-500.c5df6088.css
@@ -0,0 +1 @@
+.spotlight[data-v-df79c84d]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);filter:blur(20vh)}.bg-white[data-v-df79c84d]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.grid[data-v-df79c84d]{display:grid}.place-content-center[data-v-df79c84d]{place-content:center}.font-sans[data-v-df79c84d]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-medium[data-v-df79c84d]{font-weight:500}.font-light[data-v-df79c84d]{font-weight:300}.h-1\/2[data-v-df79c84d]{height:50%}.text-8xl[data-v-df79c84d]{font-size:6rem;line-height:1}.text-xl[data-v-df79c84d]{font-size:1.25rem;line-height:1.75rem}.leading-tight[data-v-df79c84d]{line-height:1.25}.mb-8[data-v-df79c84d]{margin-bottom:2rem}.mb-16[data-v-df79c84d]{margin-bottom:4rem}.max-w-520px[data-v-df79c84d]{max-width:520px}.min-h-screen[data-v-df79c84d]{min-height:100vh}.overflow-hidden[data-v-df79c84d]{overflow:hidden}.px-8[data-v-df79c84d]{padding-left:2rem;padding-right:2rem}.fixed[data-v-df79c84d]{position:fixed}.left-0[data-v-df79c84d]{left:0}.right-0[data-v-df79c84d]{right:0}.-bottom-1\/2[data-v-df79c84d]{bottom:-50%}.text-center[data-v-df79c84d]{text-align:center}.text-black[data-v-df79c84d]{--tw-text-opacity:1;color:rgba(0,0,0,var(--tw-text-opacity))}.antialiased[data-v-df79c84d]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (min-width:640px){.sm\:text-4xl[data-v-df79c84d]{font-size:2.25rem;line-height:2.5rem}.sm\:text-10xl[data-v-df79c84d]{font-size:10rem;line-height:1}.sm\:px-0[data-v-df79c84d]{padding-left:0;padding-right:0}}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-df79c84d]{--tw-bg-opacity:1;background-color:rgba(0,0,0,var(--tw-bg-opacity))}.dark\:text-white[data-v-df79c84d]{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}}
diff --git a/.output/public/_nuxt/issue-bj.44adad8c.svg b/.output/public/_nuxt/issue-bj.44adad8c.svg
new file mode 100644
index 0000000..35c1a6f
--- /dev/null
+++ b/.output/public/_nuxt/issue-bj.44adad8c.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/.output/public/_nuxt/logo.6622f82d.png b/.output/public/_nuxt/logo.6622f82d.png
new file mode 100644
index 0000000..dc6308b
Binary files /dev/null and b/.output/public/_nuxt/logo.6622f82d.png differ
diff --git a/.output/public/_nuxt/menu-icon-gray.d61f02b1.svg b/.output/public/_nuxt/menu-icon-gray.d61f02b1.svg
new file mode 100644
index 0000000..1abc84a
--- /dev/null
+++ b/.output/public/_nuxt/menu-icon-gray.d61f02b1.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/.output/public/_nuxt/mini-code.71ebcc53.png b/.output/public/_nuxt/mini-code.71ebcc53.png
new file mode 100644
index 0000000..def8ef0
Binary files /dev/null and b/.output/public/_nuxt/mini-code.71ebcc53.png differ
diff --git a/.output/public/_nuxt/tick-no.179037b3.svg b/.output/public/_nuxt/tick-no.179037b3.svg
new file mode 100644
index 0000000..987610a
--- /dev/null
+++ b/.output/public/_nuxt/tick-no.179037b3.svg
@@ -0,0 +1,5 @@
+
+
\ No newline at end of file
diff --git a/.output/public/_nuxt/tick-option.e092d22f.svg b/.output/public/_nuxt/tick-option.e092d22f.svg
new file mode 100644
index 0000000..3149e3d
--- /dev/null
+++ b/.output/public/_nuxt/tick-option.e092d22f.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/_nuxt/tick-orange.233abc69.svg b/.output/public/_nuxt/tick-orange.233abc69.svg
new file mode 100644
index 0000000..c31fcfa
--- /dev/null
+++ b/.output/public/_nuxt/tick-orange.233abc69.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/_nuxt/title.98892974.png b/.output/public/_nuxt/title.98892974.png
new file mode 100644
index 0000000..b7977d4
Binary files /dev/null and b/.output/public/_nuxt/title.98892974.png differ
diff --git a/.output/public/favicon.ico b/.output/public/favicon.ico
new file mode 100644
index 0000000..4164824
Binary files /dev/null and b/.output/public/favicon.ico differ
diff --git a/.output/public/img/QRCode-icon.svg b/.output/public/img/QRCode-icon.svg
new file mode 100644
index 0000000..8464970
--- /dev/null
+++ b/.output/public/img/QRCode-icon.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/add-icon.svg b/.output/public/img/add-icon.svg
new file mode 100644
index 0000000..585cf1c
--- /dev/null
+++ b/.output/public/img/add-icon.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/arrow-circular-gray.png b/.output/public/img/arrow-circular-gray.png
new file mode 100644
index 0000000..208e039
Binary files /dev/null and b/.output/public/img/arrow-circular-gray.png differ
diff --git a/.output/public/img/arrows-icon.svg b/.output/public/img/arrows-icon.svg
new file mode 100644
index 0000000..f36972e
--- /dev/null
+++ b/.output/public/img/arrows-icon.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/close-icon.svg b/.output/public/img/close-icon.svg
new file mode 100644
index 0000000..4fb9f94
--- /dev/null
+++ b/.output/public/img/close-icon.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/collect-icon-colours.svg b/.output/public/img/collect-icon-colours.svg
new file mode 100644
index 0000000..1a4057d
--- /dev/null
+++ b/.output/public/img/collect-icon-colours.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/collect-icon.png b/.output/public/img/collect-icon.png
new file mode 100644
index 0000000..4d60d52
Binary files /dev/null and b/.output/public/img/collect-icon.png differ
diff --git a/.output/public/img/comment-icon-gray.svg b/.output/public/img/comment-icon-gray.svg
new file mode 100644
index 0000000..1f5b9fa
--- /dev/null
+++ b/.output/public/img/comment-icon-gray.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/comment-icon.png b/.output/public/img/comment-icon.png
new file mode 100644
index 0000000..8d4a63e
Binary files /dev/null and b/.output/public/img/comment-icon.png differ
diff --git a/.output/public/img/cross-circle-black.png b/.output/public/img/cross-circle-black.png
new file mode 100644
index 0000000..1b7df23
Binary files /dev/null and b/.output/public/img/cross-circle-black.png differ
diff --git a/.output/public/img/cross-circle-icon.png b/.output/public/img/cross-circle-icon.png
new file mode 100644
index 0000000..d2793f8
Binary files /dev/null and b/.output/public/img/cross-circle-icon.png differ
diff --git a/.output/public/img/cross-icon.png b/.output/public/img/cross-icon.png
new file mode 100644
index 0000000..c3e2e52
Binary files /dev/null and b/.output/public/img/cross-icon.png differ
diff --git a/.output/public/img/delete-icon.svg b/.output/public/img/delete-icon.svg
new file mode 100644
index 0000000..1e295a1
--- /dev/null
+++ b/.output/public/img/delete-icon.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/dot-gray.svg b/.output/public/img/dot-gray.svg
new file mode 100644
index 0000000..3351277
--- /dev/null
+++ b/.output/public/img/dot-gray.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/dot-yellow.svg b/.output/public/img/dot-yellow.svg
new file mode 100644
index 0000000..1bb33f7
--- /dev/null
+++ b/.output/public/img/dot-yellow.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/dot.svg b/.output/public/img/dot.svg
new file mode 100644
index 0000000..2945c5b
--- /dev/null
+++ b/.output/public/img/dot.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/edit-icon-white.svg b/.output/public/img/edit-icon-white.svg
new file mode 100644
index 0000000..84c4805
--- /dev/null
+++ b/.output/public/img/edit-icon-white.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/edit-icon.png b/.output/public/img/edit-icon.png
new file mode 100644
index 0000000..af69726
Binary files /dev/null and b/.output/public/img/edit-icon.png differ
diff --git a/.output/public/img/empty-icon.svg b/.output/public/img/empty-icon.svg
new file mode 100644
index 0000000..1e2de01
--- /dev/null
+++ b/.output/public/img/empty-icon.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/give-sweep.png b/.output/public/img/give-sweep.png
new file mode 100644
index 0000000..f72331d
Binary files /dev/null and b/.output/public/img/give-sweep.png differ
diff --git a/.output/public/img/hot-icon.png b/.output/public/img/hot-icon.png
new file mode 100644
index 0000000..2b97527
Binary files /dev/null and b/.output/public/img/hot-icon.png differ
diff --git a/.output/public/img/input-icon.png b/.output/public/img/input-icon.png
new file mode 100644
index 0000000..3587ae1
Binary files /dev/null and b/.output/public/img/input-icon.png differ
diff --git a/.output/public/img/issue-bj.png b/.output/public/img/issue-bj.png
new file mode 100644
index 0000000..d33b46e
Binary files /dev/null and b/.output/public/img/issue-bj.png differ
diff --git a/.output/public/img/issue-bj.svg b/.output/public/img/issue-bj.svg
new file mode 100644
index 0000000..35c1a6f
--- /dev/null
+++ b/.output/public/img/issue-bj.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/like-icon-colours.png b/.output/public/img/like-icon-colours.png
new file mode 100644
index 0000000..09d9120
Binary files /dev/null and b/.output/public/img/like-icon-colours.png differ
diff --git a/.output/public/img/like-icon-gray.png b/.output/public/img/like-icon-gray.png
new file mode 100644
index 0000000..b9e164c
Binary files /dev/null and b/.output/public/img/like-icon-gray.png differ
diff --git a/.output/public/img/like-icon.png b/.output/public/img/like-icon.png
new file mode 100644
index 0000000..e38f888
Binary files /dev/null and b/.output/public/img/like-icon.png differ
diff --git a/.output/public/img/logo.png b/.output/public/img/logo.png
new file mode 100644
index 0000000..dc6308b
Binary files /dev/null and b/.output/public/img/logo.png differ
diff --git a/.output/public/img/menu-icon-gray.svg b/.output/public/img/menu-icon-gray.svg
new file mode 100644
index 0000000..1abc84a
--- /dev/null
+++ b/.output/public/img/menu-icon-gray.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/mini-code.png b/.output/public/img/mini-code.png
new file mode 100644
index 0000000..def8ef0
Binary files /dev/null and b/.output/public/img/mini-code.png differ
diff --git a/.output/public/img/offer-mini-QRcode.png b/.output/public/img/offer-mini-QRcode.png
new file mode 100644
index 0000000..c16265b
Binary files /dev/null and b/.output/public/img/offer-mini-QRcode.png differ
diff --git a/.output/public/img/tick-no.svg b/.output/public/img/tick-no.svg
new file mode 100644
index 0000000..987610a
--- /dev/null
+++ b/.output/public/img/tick-no.svg
@@ -0,0 +1,5 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/tick-option.svg b/.output/public/img/tick-option.svg
new file mode 100644
index 0000000..3149e3d
--- /dev/null
+++ b/.output/public/img/tick-option.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/tick-orange.svg b/.output/public/img/tick-orange.svg
new file mode 100644
index 0000000..c31fcfa
--- /dev/null
+++ b/.output/public/img/tick-orange.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/title.png b/.output/public/img/title.png
new file mode 100644
index 0000000..b7977d4
Binary files /dev/null and b/.output/public/img/title.png differ
diff --git a/.output/public/img/transmit-icon.png b/.output/public/img/transmit-icon.png
new file mode 100644
index 0000000..5ea6961
Binary files /dev/null and b/.output/public/img/transmit-icon.png differ
diff --git a/.output/public/img/triangle-icon.svg b/.output/public/img/triangle-icon.svg
new file mode 100644
index 0000000..b66289b
--- /dev/null
+++ b/.output/public/img/triangle-icon.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/.output/public/img/u4494.png b/.output/public/img/u4494.png
new file mode 100644
index 0000000..36cb1ab
Binary files /dev/null and b/.output/public/img/u4494.png differ
diff --git a/.output/server/chunks/app/_nuxt/entry-styles.d7e5cfd6.mjs b/.output/server/chunks/app/_nuxt/entry-styles.d7e5cfd6.mjs
new file mode 100644
index 0000000..7621002
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/entry-styles.d7e5cfd6.mjs
@@ -0,0 +1,6 @@
+const app_vue_vue_type_style_index_0_lang = '.index-footer{margin-top:0!important}header.page-header .box .tab-list .item.pitch{color:#fddf6d!important}header.page-header .box .tab-list .item.pitch:after{background-color:#fddf6d!important}body{-ms-overflow-style:none;scrollbar-width:none}body::-webkit-scrollbar{width:0!important}.bottom-tps{color:#555;font-size:14px;font-weight:400;padding:30px 0;text-align:center}*{box-sizing:border-box;font-family:PingFangSC-Regular,PingFang SC,sans-serif;margin:0;padding:0}::-webkit-scrollbar{background-color:transparent;width:8px}::-webkit-scrollbar-thumb{background-color:#d7d7d7;border-radius:4px}::-webkit-scrollbar-thumb:hover{background-color:#666}*{scrollbar-color:#d7d7d7 transparent;scrollbar-width:thin}::-moz-scrollbar-thumb{background-color:#d7d7d7}::-moz-scrollbar-thumb:hover{background-color:#666}.flexflex{display:flex}.flex1{flex:1}.flexcenter{justify-content:center}.flexacenter,.flexcenter{align-items:center;display:flex}.flexjcenter{display:flex;justify-content:center}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#answer-app{min-width:1200px;overflow-x:hidden;word-break:break-all}#answer-app header{background:#f6f6f6;border:1px solid #ebebeb;flex-direction:column;height:150px;margin:0 auto;min-width:1200px;padding-top:24px}#answer-app header .top{margin-bottom:31px;width:1200px}#answer-app header .top .logo{cursor:pointer;width:73px}#answer-app header .top .right{justify-content:flex-end}#answer-app header .top .right .searchInput{background-color:#fff;border:1px solid #ebebeb;border-radius:104px;font-size:13px;height:32px;padding-right:16px;position:relative;width:320px}#answer-app header .top .right .searchInput input{border:none;border-radius:104px;height:100%;outline:none;padding-left:16px}#answer-app header .top .right .searchInput .input-icon{cursor:pointer;height:20px;width:20px}#answer-app header .top .right .searchInput .clear-search .cross-circle-black{cursor:pointer;height:14px;width:14px}#answer-app header .top .right .searchInput .clear-search .halving-line{background-color:#ebebeb;height:13px;margin:0 17px;width:1px}#answer-app header .top .right .searchInput .history-box{background-color:#fff;border:1px solid #ebebeb;border-radius:10px;left:0;padding-bottom:14px;padding-top:15px;position:absolute;top:36px;width:320px;z-index:2}#answer-app header .top .right .searchInput .history-box .history-title{color:#aaa;font-size:13px;margin-bottom:9px;padding-left:16px}#answer-app header .top .right .searchInput .history-box .history-list .history-item{color:#333;cursor:pointer;font-size:14px;height:30px;line-height:30px;padding:0 16px}#answer-app header .top .right .btn-list{border:1px solid #ebebeb;border-radius:5px;color:#555;font-size:13px;height:30px;margin-left:20px;width:221px}#answer-app header .top .right .btn-list .item{cursor:pointer;position:relative;text-align:center}#answer-app header .top .right .btn-list .item:not(:last-of-type):before{color:#d7d7d7;content:"|";font-size:13px;position:absolute;right:0;top:50%;transform:translateY(-50%)}#answer-app header .top .right .add-btn{background-color:#fddf6d;border-radius:5px;color:#000;cursor:pointer;font-size:13px;height:30px;margin-left:20px;width:130px}#answer-app header .top .right .add-btn .add-icon{height:14px;margin-right:4px;width:14px}#answer-app header .tab-box{background-color:#f6f6f6;margin:0 auto;min-width:1200px;padding:5px 0;width:100%;z-index:1}#answer-app header .tab-box.tab-list-fixed{position:fixed;top:0}#answer-app header .tab-box .tab-list{width:1200px}#answer-app header .tab-box .tab-list .item{color:#333;cursor:pointer;font-size:14px;height:24px;margin-right:23px;text-align:center}#answer-app header .tab-box .tab-list .item.pitch{background-color:#fa6b11;border-radius:19px;color:#fff;font-weight:650;padding:0 11px}#answer-app header .tab-box .tab-list .halving-line{color:#d7d7d7;font-size:14px;margin-right:23px}#answer-app .main{background-color:#fbfbfb;height:calc(100vh - 167px);justify-content:center;margin:0 auto;min-width:1200px}#answer-app .main .transmit-mask{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}#answer-app .main.mode-list{background:#fff}#answer-app .main.mode-list .list-box .list .item,#answer-app .main.mode-list .main-header{border-right:none}#answer-app .main.mode-list .list-box .list .item:nth-child(2){border-top:1px solid #ebebeb}#answer-app .main .main-header{background:#fff;border-right:1px solid #ebebeb;display:inline-flex;height:68px;margin:0 auto;min-width:508px;padding-left:calc(50vw - 600px);padding-top:28px;width:calc(50vw - 88px)}#answer-app .main .main-header .search-keyword{border-right:1px solid #ebebeb;color:#fa6b11;cursor:pointer;font-size:14px;height:20px;margin-right:20px;max-width:400px;padding-right:20px}#answer-app .main .main-header .search-keyword .search-keyword-cross{height:14px;margin-left:8px;width:14px}#answer-app .main .main-header .total{color:#7f7f7f;font-size:13px;height:20px}#answer-app .main .list-box{-ms-overflow-style:none;overflow-x:hidden;overflow-y:auto;padding-right:15px;scrollbar-width:none}#answer-app .main .list-box::-webkit-scrollbar{width:0!important}#answer-app .main .list-box .list{display:flex;flex-wrap:wrap;justify-content:space-between;min-width:508px;position:relative}#answer-app .main .list-box .list .item{background-color:#fff;border-right:1px solid #ebebeb;cursor:pointer;height:128px;padding:20px 0 0;position:absolute;transition-duration:.5s;transition-property:top,left,background}#answer-app .main .list-box .list .item:first-of-type{border-top:1px solid #ebebeb}#answer-app .main .list-box .list .item.upLevel .content{border:none}#answer-app .main .list-box .list .item.pitch{background-color:#fbfbfb;border-bottom:1px solid #ebebeb;border-top:1px solid #ebebeb;position:relative}#answer-app .main .list-box .list .item.pitch:after{background-color:#fddf6d;content:"";height:100%;position:absolute;right:-1px;top:0;width:4px}#answer-app .main .list-box .list .item.pitch:before{background-image:url(../img/triangle-icon.svg);content:"";height:10px;position:absolute;right:-5px;top:50%;transform:translateY(-50%);width:5px}#answer-app .main .list-box .list .item.pitch .content{border:none}#answer-app .main .list-box .list .item .dot{height:6px;margin-right:14px;margin-top:8px;width:6px}#answer-app .main .list-box .list .item .content{border-bottom:1px dotted #ebebeb;padding-bottom:20px}#answer-app .main .list-box .list .item .content .issue-title{margin-bottom:8px}#answer-app .main .list-box .list .item .content .issue-title .hot-icon{height:16px;margin-right:8px;width:16px}#answer-app .main .list-box .list .item .content .issue-title .issue{color:#000;font-size:14px;font-weight:650;line-height:22px}#answer-app .main .list-box .list .item .content .issue-title .issue em{color:red}#answer-app .main .list-box .list .item .content .answer{color:#555;font-size:13px;height:22px;line-height:22px;margin-bottom:18px}#answer-app .main .list-box .list .item .content .answer em{color:red}#answer-app .main .list-box .list .item .content .bottom{font-size:12px;justify-content:flex-end}#answer-app .main .list-box .list .item .content .bottom .quantity{color:#aaa}#answer-app .main .list-box .list .item .content .bottom .longString{background-color:#d7d7d7;height:13px;margin:0 15px;width:1px}#answer-app .main .list-box .list .item .content .bottom .answer-btn{color:#72db86;cursor:pointer}#answer-app .main .list-box .empty-box{background-color:#fff;border-radius:6px;flex-direction:column;height:490px;margin:0 auto;width:690px}#answer-app .main .list-box .empty-box .dot-list .item{height:8px;width:8px}#answer-app .main .list-box .empty-box .dot-list .item:not(:last-of-type){margin-right:5px}#answer-app .main .list-box .empty-box .empty-icon{height:100px;margin-bottom:15px;margin-top:10px;width:100px}#answer-app .main .list-box .empty-box .empty-hint{color:#7f7f7f;font-size:13px;line-height:22px}#answer-app .main .details-area-box{background-color:#fbfbfb;display:flex;flex-direction:column;min-width:688px;overflow-x:hidden;overflow-y:auto;position:relative;width:calc(50vw + 88px)}#answer-app .main .details-area-box .loading-bj{background-color:hsla(0,0%,100%,.5);height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}#answer-app .main .details-area-box .loading-bj svg{animation:spin 2s linear infinite;width:100px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}#answer-app .main .details-area-box .details-box{flex:1;flex-direction:column;padding-left:60px;position:relative;width:688px}#answer-app .main .details-area-box .details-box .close-box{display:flex;height:69px;justify-content:flex-end;padding-top:29px}#answer-app .main .details-area-box .details-box .close-box .close-circle{cursor:pointer;height:20px;position:relative;width:20px}#answer-app .main .details-area-box .details-box .close-box .close-circle .close-icon{height:20px;width:20px}#answer-app .main .details-area-box .details-box .close-box .close-circle .details-cross-icon{height:10px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:10px}#answer-app .main .details-area-box .details-box .details-issue{background-color:#fff;border-radius:8px;box-shadow:0 0 11px rgba(0,0,0,.1);margin-bottom:28px;padding-top:24px;position:relative;width:627px;word-break:break-all}#answer-app .main .details-area-box .details-box .details-issue .icon{background-color:#72db86;border:4px solid #fbfbfb;border-radius:50%;color:#fff;font-family:PingFangSC-Semibold,PingFang SC Semibold,PingFang SC,sans-serif;font-size:13px;font-weight:650;height:28px;left:-4px;line-height:20px;position:absolute;top:-4px;width:28px}#answer-app .main .details-area-box .details-box .details-issue .title{color:#000;font-size:18px;font-weight:650;line-height:22px;margin-bottom:21px;padding:0 24px}#answer-app .main .details-area-box .details-box .details-issue .hint{color:#555;font-size:14px;line-height:24px;margin-bottom:20px;padding:0 24px}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn{background-color:#f6f6f6;border-radius:43px;color:#555;cursor:pointer;font-size:14px;height:28px;line-height:20px;width:120px}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn.white{background-color:#62b1ff;color:#fff}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn.white .answer-icon-white{display:block}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn.white .answer-icon-edit{display:none}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn .answer-btn-icon{display:none;height:16px;margin-right:8px;width:16px}#answer-app .main .details-area-box .details-box .details-issue .operate-box .answer-btn .answer-icon-edit{display:block}#answer-app .main .details-area-box .details-box .answer-total-amount{color:#555;font-size:13px;line-height:22px;margin-bottom:20px}#answer-app .main .details-area-box .details-box .your-answer-box{background-color:#fff;border:1px solid #ebebeb;border-radius:10px;box-shadow:0 0 3px rgba(0,0,0,.118);margin-bottom:25px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-header{border-bottom:1px dotted #ebebeb;color:#000;font-size:18px;font-weight:650;height:67px;line-height:26px;padding-left:24px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-textarea{border:none;font-size:14px;height:224px;outline:none;overflow-x:hidden;overflow-y:auto;padding:20px 23px;resize:none;width:100%}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-textarea.placeholder:after{color:#999;content:"\u8F93\u5165\u56FE\u6587\u5185\u5BB9\u56DE\u7B54\u63D0\u95EE"}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-textarea img{max-width:100%}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-bottom{background-color:#f6f6f6;height:50px;justify-content:space-between;padding-left:25px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-bottom .option-box{color:#7f7f7f;cursor:pointer;font-size:14px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-bottom .option-box .option-icon{height:12px;margin-right:8px;width:12px}#answer-app .main .details-area-box .details-box .your-answer-box .your-answer-bottom .your-answer-submit{background-color:#fddf6d;border-radius:0 0 10px 0;color:#333;cursor:pointer;font-size:14px;height:50px;width:120px}#answer-app .main .details-area-box .details-box .answer-box-item{background-color:#fff;border-radius:8px;box-shadow:0 0 11px rgba(0,0,0,.1);margin-bottom:21px;padding-top:24px;position:relative;width:627px}#answer-app .main .details-area-box .details-box .answer-box-item .icon-box{background-color:#62b1ff;border:4px solid #fbfbfb;border-radius:50%;color:#fff;font-family:PingFangSC-Semibold,PingFang SC Semibold,PingFang SC,sans-serif;font-size:13px;font-weight:650;height:28px;left:-4px;line-height:20px;position:absolute;top:-4px;width:28px}#answer-app .main .details-area-box .details-box .answer-box-item .answer-text{color:#555;font-size:14px;line-height:26px;margin-bottom:20px;padding:0 24px;word-break:break-all}#answer-app .main .details-area-box .details-box .answer-box-item .answer-text img{cursor:pointer;max-width:100%}#answer-app .main .details-area-box .details-box .answer-box-item .operate-box{padding:0 24px}#answer-app .main .details-area-box .details-box .answer-box-item .operate-box .edit-box .edit-btn{background-color:#f6f6f6;border-radius:50%;cursor:pointer;height:24px;width:24px}#answer-app .main .details-area-box .details-box .answer-box-item .operate-box .edit-box .edit-btn .edit-icon{height:16px;width:16px}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment{background-color:#f6f6f6;position:relative;z-index:2}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment .post-input{background-color:transparent;border:none;font-size:14px;height:50px;outline-color:#62b1ff;padding:0 23px}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment .post-input::-moz-placeholder{color:#aaa}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment .post-input::placeholder{color:#aaa}#answer-app .main .details-area-box .details-box .answer-box-item .post-comment .post-ok{background-color:#62b1ff;color:#fff;cursor:pointer;font-size:13px;height:50px;width:50px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-empty-box{flex-direction:column;height:321px;justify-content:center}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box{padding:17px 24px 29px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item{padding:13px 0 0}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header{justify-content:space-between;margin-bottom:9px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left{font-size:13px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left .comments-avatar{border-radius:50%;height:20px;margin-right:10px;width:20px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left .comments-username{color:#555;margin-right:10px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left .comments-time{color:#aaa;margin-right:8px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-left .comments-identity{background-color:#f0f2f5;border:1px solid #d7d7d7;border-radius:5px;color:#7f7f7f;font-size:12px;height:20px;padding:0 3px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box{position:relative}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box:hover .report-box{display:flex}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box .menu-icon{cursor:pointer;height:14px;width:14px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box .report-box{background-color:#f6f6f6;border:1px solid #d7d7d7;border-radius:5px;color:#7f7f7f;cursor:pointer;display:none;font-size:12px;height:24px;position:absolute;right:0;top:24px;width:60px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .menu-box .report-box:after{content:"";height:36px;position:absolute;right:0;top:-14px;width:58px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .comment-icon{cursor:pointer;height:13px;margin-left:40px;width:14px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .like-box{color:#aaa;cursor:pointer;font-size:12px;margin-left:40px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .like-box .like-icon{height:14px;width:14px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-header .comments-header-right .like-box .like-quantity{margin-left:6px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content{border-bottom:1px dotted #ebebeb;margin-left:30px;padding-bottom:12px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-text{color:#333;font-size:14px;line-height:22px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-text .comments-reply{color:#92a1bf;display:inline}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box{margin-top:13px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .comments-input{border:1px solid #d7d7d7;border-radius:8px;height:60px;margin-right:16px;position:relative;width:519px;z-index:1}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .comments-input:after{background-color:#d7d7d7;content:"";display:block;height:20px;left:21px;position:absolute;top:-2px;transform:rotate(45deg);width:20px;z-index:-1}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .comments-input textarea{border:none;border-radius:7px 0 0 7px;outline:none;padding:11px 16px;resize:none}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .comments-input .comments-btn{background-color:#72db86;border-radius:0 7px 7px 0;color:#fff;cursor:pointer;font-size:14px;height:58px;width:58px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .comments-item .comments-content .comments-input-box .forkfork{cursor:pointer;height:12px;width:12px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .child-comments{border-bottom:1px dotted #ebebeb;margin-left:24px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .child-comments .comments-item:last-of-type .comments-text{border-bottom:none}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .child-comments .comments-also{color:#62b1ff;cursor:pointer;font-size:13px;height:46px;line-height:22px;margin-left:30px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .child-comments .comments-also .also-icon{height:10px;margin-left:8px;width:10px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .reverl-all{border:1px solid #ebebeb;border-radius:43px;color:#555;cursor:pointer;font-size:13px;height:28px;line-height:20px;margin:16px auto 0;width:120px}#answer-app .main .details-area-box .details-box .answer-box-item .comments-box .reverl-all .arrow-circular{height:10px;margin-left:10px;width:10px}#answer-app .main .details-area-box .details-box .info-box{justify-content:space-between;margin-bottom:20px;padding:0 24px}#answer-app .main .details-area-box .details-box .info-box .user-info .avatar{border-radius:50%;height:20px;margin-right:8px;width:20px}#answer-app .main .details-area-box .details-box .info-box .user-info .user-name{color:#7f7f7f;font-size:13px;margin-right:20px}#answer-app .main .details-area-box .details-box .info-box .user-info .homeShare{height:14px}#answer-app .main .details-area-box .details-box .info-box .time{color:#aaa;font-size:12px}#answer-app .main .details-area-box .details-box .operate-box{border-top:1px dotted #ebebeb;height:54px;justify-content:space-between;padding:0 24px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item{color:#7f7f7f;cursor:pointer;font-size:13px;height:53px;margin-left:49px;position:relative}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.commentnum{z-index:1}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.commentnum:after{background:inherit;background-color:#f6f6f6;content:"";height:100%;left:50%;position:absolute;top:0;transform:translateX(-50%);width:80px;z-index:-1}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon{margin-right:7px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon.operate-like-icon,#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon.operate-transmit-icon{height:14px;width:14px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon.operate-comment-icon{height:13px;width:14px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item .operate-icon.operate-collect-icon{height:16px;width:16px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit{position:relative}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit:after{content:"";height:100%;position:absolute;top:20px;width:100%;z-index:10}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box{background:#fff;border:1px solid #ebebeb;border-radius:10px;box-shadow:0 0 3px rgba(0,0,0,.118);justify-content:space-between;padding:40px 35px 42px;position:absolute;right:-24px;top:64px;width:628px;z-index:3}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .cross-icon{cursor:pointer;height:22px;padding:6px;position:absolute;right:6px;top:6px;width:22px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-title{color:#000;font-size:16px;font-weight:650;line-height:24px;margin-bottom:24px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-content{border:1px solid #f2f2f2;border-radius:16px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-web .transmit-content{font-size:14px;line-height:24px;margin-bottom:32px;padding:14px 16px;width:300px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-web .transmit-content .transmit-headline{color:#333}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-web .transmit-content .transmit-url{word-wrap:break-word;color:#aaa}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-web .transmit-web-btn{background-color:#fddf6d;border-radius:8px;color:#000;font-size:14px;height:38px;width:120px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-mini .transmit-content{color:#555;flex-direction:column;font-size:13px;padding:22px 44px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-mini .transmit-content .transmit-mini-img{height:90px;margin-bottom:21px;width:90px}#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-mini .transmit-content .give-sweep{height:12px;margin-right:8px;width:12px}#answer-app .main .details-area-box .details-box .copyright{background-color:#f2f2f2;border-radius:4px;color:#aaa;font-size:13px;height:32px;margin-bottom:21px;text-align:center}#answer-app .main .details-area-box .details-box .mobile-phone-check{border:1px solid #ebebeb;border-radius:20px;color:#7f7f7f;cursor:pointer;font-size:13px;margin:0 auto 50px;padding:10px 0;position:relative;width:150px}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-icon{height:16px;margin-right:10px;width:16px}#answer-app .main .details-area-box .details-box .mobile-phone-check:hover .QRCode-pop{display:flex}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-pop{background-color:#fff;border-radius:17px;bottom:45px;box-shadow:0 0 5px rgba(0,0,0,.161);display:none;flex-direction:column;height:200px;position:absolute;width:200px;z-index:1}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-pop .offer-mini-QRcode{margin-bottom:18px;width:113px}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-pop .QRCode-hint{color:#333;font-size:13px}#answer-app .main .details-area-box .details-box .mobile-phone-check .QRCode-pop .QRCode-hint .QRCode-img{height:12px;margin-right:12px;width:12px}#answer-app .main .details-area-box .empty-box{flex-direction:column;margin-bottom:16px}#answer-app .main .details-area-box .empty-box .dot-list{margin-bottom:8px}#answer-app .main .details-area-box .empty-box .dot-list .dot-item{height:8px;width:8px}#answer-app .main .details-area-box .empty-box .dot-list .dot-item:not(:last-of-type){margin-right:5px}#answer-app .main .details-area-box .empty-box .empty-icon{height:100px;width:100px}#answer-app .main .details-area-box .empty-hint{color:#7f7f7f;font-size:13px;line-height:22px;text-align:center}#answer-app .my-popover .popover-box{background-color:#fff;border-radius:10px;box-shadow:0 0 3px rgba(0,0,0,.118);flex-direction:column;height:616px;padding-top:30px;position:relative;width:750px}#answer-app .my-popover .popover-box .cross-icon{cursor:pointer;height:12px;position:absolute;right:12px;top:12px;width:12px}#answer-app .my-popover .popover-box .tab-list{color:#aaa;font-size:16px;margin-bottom:30px}#answer-app .my-popover .popover-box .tab-list .tab-item{cursor:pointer}#answer-app .my-popover .popover-box .tab-list .tab-item .quantity{margin-left:10px}#answer-app .my-popover .popover-box .tab-list .tab-item.pitch{color:#000;font-family:PingFangSC-Semibold,PingFang SC Semibold,PingFang SC,sans-serif;font-weight:650}#answer-app .my-popover .popover-box .tab-list .tab-item.pitch .quantity{color:#555;font-weight:400}#answer-app .my-popover .popover-box .tab-list .long-string{background-color:#d7d7d7;height:17px;margin:0 20px;width:1px}#answer-app .my-popover .popover-box .empty-box{background-color:#fff;border:1px solid #ebebeb;border-radius:6px;flex-direction:column;height:490px;margin:0 auto;width:690px}#answer-app .my-popover .popover-box .empty-box .dot-list .item{height:8px;width:8px}#answer-app .my-popover .popover-box .empty-box .dot-list .item:not(:last-of-type){margin-right:5px}#answer-app .my-popover .popover-box .empty-box .empty-icon{height:100px;margin-bottom:15px;margin-top:10px;width:100px}#answer-app .my-popover .popover-box .empty-box .empty-hint{color:#7f7f7f;font-size:13px;line-height:22px}#answer-app .my-popover .popover-box .content-box{height:490px;margin:0 auto;overflow:auto;width:690px}#answer-app .my-popover .popover-box .content-box .icon{border-radius:50%;color:#fff;font-family:PingFangSC-Semibold,PingFang SC Semibold,PingFang SC,sans-serif;font-size:13px;font-weight:650;height:20px;line-height:20px;margin-right:17px;width:20px}#answer-app .my-popover .popover-box .content-box .icon.q{background-color:#72db86}#answer-app .my-popover .popover-box .content-box .icon.a{background-color:#62b1ff}#answer-app .my-popover .popover-box .content-box .item{border-bottom:1px dotted #ebebeb;padding:20px 0}#answer-app .my-popover .popover-box .content-box .item .centre{flex-direction:column}#answer-app .my-popover .popover-box .content-box .item .centre .info{color:#555;font-size:12px;margin-bottom:10px}#answer-app .my-popover .popover-box .content-box .item .centre .info .time{color:#aaa;margin-left:8px}#answer-app .my-popover .popover-box .content-box .item .centre .title{color:#333;font-size:14px;line-height:22px;margin-bottom:10px;width:532px}#answer-app .my-popover .popover-box .content-box .item .centre .text{color:#aaa;font-size:12px;width:532px}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box{cursor:pointer;position:relative}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .text{color:#333;font-size:13px}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .arrows{height:5px;margin-left:6px;width:8px}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup{background-color:#fff;border-radius:10px;box-shadow:0 0 6px rgba(0,0,0,.204);flex-direction:column;height:101px;position:absolute;right:3px;top:28px;width:140px;z-index:1}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-mask{height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:-1}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item{color:#555;font-size:14px;justify-content:space-between;padding:0 10px}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item:hover{color:#000}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item.pitch{color:#fa6b11}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item.pitch .state-popup-icon{display:block}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item:not(:last-of-type){border-bottom:1px dotted #e3e3e3}#answer-app .my-popover .popover-box .content-box .item .operate-box .state-box .state-popup .state-popup-item .state-popup-icon{display:none;height:8px;width:11px}#answer-app .my-popover .popover-box .content-box .item .operate-box .edit-icon{cursor:pointer;height:16px;margin-left:30px;width:16px}#answer-app .my-popover .popover-box .content-box.collect-list{padding-right:10px}#answer-app .my-popover .popover-box .content-box.collect-list .item{border-bottom:1px dotted #ebebeb;padding:20px 0}#answer-app .my-popover .popover-box .content-box.collect-list .item .delete-box .delete-icon{cursor:pointer}#answer-app .my-popover .popover-box .content-box.questions-list .item .new-answer{color:#f95d5d}#answer-app .my-popover .popover-box .content-box.questions-list .item .new-answer .long-string{background-color:#d7d7d7;height:12px;margin:0 8px;width:1px}#answer-app .popover-mask{background-color:rgba(0,0,0,.5);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1000}#answer-app .issue-box .choosing-theme{background:inherit;background-color:#fff;border:none;border-radius:10px;box-shadow:0 0 3px rgba(0,0,0,.118);padding:30px 36px 45px;width:530px}#answer-app .issue-box .choosing-theme .title{color:#000;font-size:14px;font-weight:650;margin-bottom:30px;position:relative}#answer-app .issue-box .choosing-theme .title:before{background-color:#72db86;border-radius:3px;content:"";height:12px;left:-15px;position:absolute;top:50%;transform:translateY(-50%);width:5px}#answer-app .issue-box .choosing-theme .theme-list,#answer-app .issue-box .choosing-theme .theme-list .theme-stair-box{flex-wrap:wrap}#answer-app .issue-box .choosing-theme .theme-list .theme-item{background-color:#f6f6f6;border-radius:5px;color:#333;cursor:pointer;font-size:14px;height:36px;margin-bottom:10px;width:106px}#answer-app .issue-box .choosing-theme .theme-list .theme-item:not(:nth-child(4n)){margin-right:11px}#answer-app .issue-box .choosing-theme .theme-list .theme-item:hover{background-color:#fddf6d;color:#000}#answer-app .issue-box .issue-form{background-position:-4px -3px;border-radius:10px;height:520px;padding-top:30px;position:relative;width:720px;z-index:1}#answer-app .issue-box .issue-form .issue-bj{height:526px;left:-4px;position:absolute;top:-3px;width:727px;z-index:-1}#answer-app .issue-box .issue-form .q{background-color:#72db86;border-radius:50%;color:#fff;font-size:13px;font-style:normal;font-weight:650;height:20px;left:-1px;position:absolute;top:-1px;width:20px}#answer-app .issue-box .issue-form .cross-icon{cursor:pointer;height:12px;position:absolute;right:12px;top:12px;width:12px}#answer-app .issue-box .issue-form input,#answer-app .issue-box .issue-form textarea{border:none;outline:none}#answer-app .issue-box .issue-form .issue-input{border-bottom:1px dotted #ebebeb;height:80px;padding:0 30px;width:720px}#answer-app .issue-box .issue-form .issue-input textarea{font-size:18px;height:100%;resize:none;width:100%}#answer-app .issue-box .issue-form .issue-input textarea::-moz-placeholder{color:#aaa}#answer-app .issue-box .issue-form .issue-input textarea::placeholder{color:#aaa}#answer-app .issue-box .issue-form .issue-replenish{display:block;font-size:14px;height:360px;padding:20px 30px;resize:none;width:720px}#answer-app .issue-box .issue-form .issue-replenish::-moz-placeholder{color:#aaa}#answer-app .issue-box .issue-form .issue-replenish::placeholder{color:#aaa}#answer-app .edit-answers{background-color:#fff;border-radius:10px;box-shadow:0 0 3px rgba(0,0,0,.118);display:flex;flex-direction:column;height:400px;position:relative;width:720px}#answer-app .edit-answers .close-icon{cursor:pointer;height:12px;position:absolute;right:12px;top:12px;width:12px}#answer-app .edit-answers .title{border-bottom:1px solid #ebebeb;color:#000;font-size:14px;font-weight:650;height:64px;padding-left:20px;padding-top:20px}#answer-app .edit-answers .question-textarea{border:none;color:#555;display:block;flex:1;font-size:14px;line-height:26px;outline:none;overflow:auto;padding:20px;resize:none;width:100%}#answer-app .edit-answers .question-textarea.placeholder:after{color:#999;content:"\u8F93\u5165\u56FE\u6587\u5185\u5BB9\u56DE\u7B54\u63D0\u95EE"}#answer-app .edit-answers .question-textarea img{max-width:100%}#answer-app .issue-bottom{background-color:#f6f6f6;border-radius:0 0 10px 10px;height:50px;justify-content:space-between;padding-left:30px}#answer-app .issue-bottom .option-box{color:#7f7f7f;cursor:pointer;font-size:14px}#answer-app .issue-bottom .option-box .option-icon{height:12px;margin-right:6px;width:12px}#answer-app .issue-bottom .issue-btn{background-color:#fddf6d;border-radius:0 0 10px 0;color:#333;cursor:pointer;font-size:14px;height:50px;width:120px}#answer-app .i-answer-box{background-color:#fff;border-radius:10px;box-shadow:0 0 3px rgba(0,0,0,.118);flex-direction:column;height:660px;position:relative;width:720px}#answer-app .i-answer-box .close-icon{cursor:pointer;height:12px;position:absolute;right:12px;top:12px;width:12px}#answer-app .i-answer-box .question-header{border-bottom:1px solid #ebebeb;padding:25px 8px 25px 20px}#answer-app .i-answer-box .question-header .question-title{color:#000;font-size:18px;font-weight:650;margin-bottom:20px}#answer-app .i-answer-box .question-header .question-title .question-icon{background-color:#72db86;border-radius:50%;color:#fff;font-size:13px;font-weight:650;height:20px;margin-right:12px;margin-top:3px;width:20px}#answer-app .i-answer-box .question-header .question-replenish{color:#7f7f7f;font-size:13px;font-weight:400;line-height:24px;max-height:87px;overflow:auto;padding-left:33px}#answer-app .i-answer-box .question-middle{flex:1;padding:23px 20px}#answer-app .i-answer-box .question-middle .question-icon{background-color:#62b1ff;border-radius:50%;color:#fff;font-size:13px;font-weight:650;height:20px;margin-right:12px;width:20px}#answer-app .i-answer-box .question-middle .question-textarea{background-color:transparent;border:none;outline:none;overflow:auto;resize:none;width:100%}#answer-app .i-answer-box .question-middle .question-textarea.placeholder:after{color:#999;content:"\u8F93\u5165\u56FE\u6587\u5185\u5BB9\u56DE\u7B54\u63D0\u95EE"}#answer-app .i-answer-box .question-middle .question-textarea img{max-width:100%}#answer-app .detail-image-mask{background-color:hsla(0,0%,100%,.8);border:none;height:100%;left:0;max-height:none;max-width:none;position:fixed;top:0;width:100%;z-index:100}#answer-app .detail-image-mask .detail-image{background-color:#111;border-radius:8px;height:80vh;width:80vw}#answer-app .detail-image-mask .detail-image .detail-img{max-height:100%;max-width:100%}.box-item{align-items:center;background-color:#edf2fc;border:1px solid #ebeef5;border-radius:4px;display:flex;font-size:14px;justify-content:space-between;left:50%;min-width:380px;padding:15px 15px 15px 20px;position:fixed;transform:translateX(-50%);transition:opacity .3s,transform .4s,top .4s;z-index:5000}.box-item-success{background-color:#f0f9eb;border-color:#e1f3d8;color:#67c23a}.box-item-warning{background-color:#fdf6ec;border-color:#faecd8;color:#e6a23c}.box-item-error{background-color:#fef0f0;border-color:#fde2e2;color:#f56c6c}.msg-container{align-items:center;display:flex;line-height:16px}.msg-container .iconfont{margin-right:5px}.msg-enter-active{animation:anim .5s}.msg-leave-active{animation:anim .5s reverse}@keyframes anim{0%{opacity:0;transform:translate(-50%,-200%)}to{opacity:1;transform:translate(-50%)}}.alert-form{background-color:rgba(0,0,0,.7);display:block;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:2100}.alert-form *{box-sizing:border-box}.alert-form .reports{height:440px}.alert-form .reports .radio-area{margin-bottom:40px}.alert-form .reports .radio-area .radio-area-item{color:#606266;cursor:pointer;font-size:14px;margin-right:10px}.alert-form .reports .radio-area .radio-area-item.pitch .radio-area-frame{background-color:#50e3c2;border-color:#50e3c2}.alert-form .reports .radio-area .radio-area-item.pitch .radio-area-frame:after{transform:rotate(45deg) scaleY(1)}.alert-form .reports .radio-area .radio-area-item .radio-area-frame{border:1px solid #dcdfe6;border-radius:2px;height:14px;margin-right:10px;position:relative;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);width:14px}.alert-form .reports .radio-area .radio-area-item .radio-area-frame:after{border:1px solid #fff;border-left:0;border-top:0;box-sizing:content-box;content:"";height:7px;left:4px;position:absolute;top:1px;transform:rotate(45deg) scaleY(0);transform-origin:center;transition:transform .15s ease-in .05s;width:3px}.alert-form .el-checkbox-group{font-size:0}.alert-form .comments{background-color:#fff;border:none;border-radius:8px 8px 6px 6px;display:block;height:440px;left:50%;max-height:90vh;max-width:90vw;position:fixed;top:50%;transform:translate(-50%,-50%);width:740px;z-index:11}.alert-form .comments .text-box{position:relative}.alert-form .comments .text-num{bottom:10px;color:#999;font-size:12px;position:absolute;right:10px}.alert-form .comments .form{display:block;padding:34px 30px 40px;width:100%}.alert-form .comments .form textarea{background:#f7f7f7;border:1px solid #f7f7f7;border-radius:5px;display:block;font-size:14px;height:172px;line-height:22px;margin-bottom:30px;outline:none;padding:18px;resize:none;width:100%}.alert-form .head{align-items:center;background:#333;border-radius:6px 6px 0 0;color:#fff;display:flex;font-size:17px;height:56px;justify-content:space-between;padding:0 18px 0 30px}.alert-form .head .close{color:#b3b3b3;cursor:pointer;font-size:14px}.alert-form .footer{align-items:center;display:flex;justify-content:center}.alert-form .footer button[type=button]{margin-right:20px}.alert-form .footer button{background-color:#fff;border:1px solid #999;border-radius:5px;color:#333;cursor:pointer;font-size:14px;height:38px;outline:none;width:128px}.alert-form .footer button[type=submit]{color:#fff}.alert-form .el-checkbox__input.is-checked .el-checkbox__inner,.alert-form .el-checkbox__input.is-indeterminate .el-checkbox__inner,.alert-form .footer button[type=submit]{background-color:#50e3c2;border-color:#50e3c2}.alert-form .el-checkbox__inner:hover,.alert-form .el-checkbox__input.is-focus .el-checkbox__inner{border-color:#50e3c2}.alert-form .el-checkbox__input.is-checked+.el-checkbox__label{color:#50e3c2}';
+
+const entryStyles_d7e5cfd6 = [app_vue_vue_type_style_index_0_lang];
+
+export { entryStyles_d7e5cfd6 as default };
+//# sourceMappingURL=entry-styles.d7e5cfd6.mjs.map
diff --git a/.output/server/chunks/app/_nuxt/entry-styles.d7e5cfd6.mjs.map b/.output/server/chunks/app/_nuxt/entry-styles.d7e5cfd6.mjs.map
new file mode 100644
index 0000000..144520c
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/entry-styles.d7e5cfd6.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"entry-styles.d7e5cfd6.mjs","sources":["../../../../../.nuxt/dist/server/_nuxt/entry-styles-1.mjs-075cfc12.js","../../../../../.nuxt/dist/server/_nuxt/entry-styles.d7e5cfd6.mjs"],"sourcesContent":null,"names":["style_0"],"mappings":"AAAA,MAAM,mCAAsC,GAAA,koyCAAA;;ACC5C,6BAAe,CAACA,mCAAO;;;;"}
\ No newline at end of file
diff --git a/.output/server/chunks/app/_nuxt/error-404-ac9751db.mjs b/.output/server/chunks/app/_nuxt/error-404-ac9751db.mjs
new file mode 100644
index 0000000..b54095b
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/error-404-ac9751db.mjs
@@ -0,0 +1,283 @@
+import { mergeProps, withCtx, createTextVNode, toDisplayString, useSSRContext, defineComponent, computed, ref, h, resolveComponent } from 'vue';
+import { l as hasProtocol, j as joinURL, p as parseURL, v as parseQuery, x as withTrailingSlash, y as withoutTrailingSlash } from '../../nitro/node-server.mjs';
+import { _ as _export_sfc, b as useHead, u as useRouter, a as useRuntimeConfig, n as navigateTo } from '../server.mjs';
+import { ssrRenderAttrs, ssrInterpolate, ssrRenderComponent } from 'vue/server-renderer';
+import 'node:http';
+import 'node:https';
+import 'fs';
+import 'path';
+import 'node:fs';
+import 'node:url';
+import 'unhead';
+import '@unhead/shared';
+import 'axios';
+
+const nuxtLinkDefaults = { "componentName": "NuxtLink" };
+const firstNonUndefined = (...args) => args.find((arg) => arg !== void 0);
+const DEFAULT_EXTERNAL_REL_ATTRIBUTE = "noopener noreferrer";
+/*! @__NO_SIDE_EFFECTS__ */
+// @__NO_SIDE_EFFECTS__
+function defineNuxtLink(options) {
+ const componentName = options.componentName || "NuxtLink";
+ const resolveTrailingSlashBehavior = (to, resolve) => {
+ if (!to || options.trailingSlash !== "append" && options.trailingSlash !== "remove") {
+ return to;
+ }
+ const normalizeTrailingSlash = options.trailingSlash === "append" ? withTrailingSlash : withoutTrailingSlash;
+ if (typeof to === "string") {
+ return normalizeTrailingSlash(to, true);
+ }
+ const path = "path" in to ? to.path : resolve(to).path;
+ return {
+ ...to,
+ name: void 0,
+ // named routes would otherwise always override trailing slash behavior
+ path: normalizeTrailingSlash(path, true)
+ };
+ };
+ return defineComponent({
+ name: componentName,
+ props: {
+ // Routing
+ to: {
+ type: [String, Object],
+ default: void 0,
+ required: false
+ },
+ href: {
+ type: [String, Object],
+ default: void 0,
+ required: false
+ },
+ // Attributes
+ target: {
+ type: String,
+ default: void 0,
+ required: false
+ },
+ rel: {
+ type: String,
+ default: void 0,
+ required: false
+ },
+ noRel: {
+ type: Boolean,
+ default: void 0,
+ required: false
+ },
+ // Prefetching
+ prefetch: {
+ type: Boolean,
+ default: void 0,
+ required: false
+ },
+ noPrefetch: {
+ type: Boolean,
+ default: void 0,
+ required: false
+ },
+ // Styling
+ activeClass: {
+ type: String,
+ default: void 0,
+ required: false
+ },
+ exactActiveClass: {
+ type: String,
+ default: void 0,
+ required: false
+ },
+ prefetchedClass: {
+ type: String,
+ default: void 0,
+ required: false
+ },
+ // Vue Router's `` additional props
+ replace: {
+ type: Boolean,
+ default: void 0,
+ required: false
+ },
+ ariaCurrentValue: {
+ type: String,
+ default: void 0,
+ required: false
+ },
+ // Edge cases handling
+ external: {
+ type: Boolean,
+ default: void 0,
+ required: false
+ },
+ // Slot API
+ custom: {
+ type: Boolean,
+ default: void 0,
+ required: false
+ }
+ },
+ setup(props, { slots }) {
+ const router = useRouter();
+ const config = useRuntimeConfig();
+ const to = computed(() => {
+ const path = props.to || props.href || "";
+ return resolveTrailingSlashBehavior(path, router.resolve);
+ });
+ const isProtocolURL = computed(() => typeof to.value === "string" && hasProtocol(to.value, { acceptRelative: true }));
+ const isExternal = computed(() => {
+ if (props.external) {
+ return true;
+ }
+ if (props.target && props.target !== "_self") {
+ return true;
+ }
+ if (typeof to.value === "object") {
+ return false;
+ }
+ return to.value === "" || isProtocolURL.value;
+ });
+ const prefetched = ref(false);
+ const el = void 0;
+ const elRef = void 0;
+ return () => {
+ var _a2;
+ var _a, _b;
+ if (!isExternal.value) {
+ const routerLinkProps = {
+ ref: elRef,
+ to: to.value,
+ activeClass: props.activeClass || options.activeClass,
+ exactActiveClass: props.exactActiveClass || options.exactActiveClass,
+ replace: props.replace,
+ ariaCurrentValue: props.ariaCurrentValue,
+ custom: props.custom
+ };
+ if (!props.custom) {
+ if (prefetched.value) {
+ routerLinkProps.class = props.prefetchedClass || options.prefetchedClass;
+ }
+ routerLinkProps.rel = props.rel;
+ }
+ return h(
+ resolveComponent("RouterLink"),
+ routerLinkProps,
+ slots.default
+ );
+ }
+ const href = typeof to.value === "object" ? (_a2 = (_a = router.resolve(to.value)) == null ? void 0 : _a.href) != null ? _a2 : null : to.value && !props.external && !isProtocolURL.value ? resolveTrailingSlashBehavior(joinURL(config.app.baseURL, to.value), router.resolve) : to.value || null;
+ const target = props.target || null;
+ const rel = props.noRel ? null : firstNonUndefined(props.rel, options.externalRelAttribute, href ? DEFAULT_EXTERNAL_REL_ATTRIBUTE : "") || null;
+ const navigate = () => navigateTo(href, { replace: props.replace });
+ if (props.custom) {
+ if (!slots.default) {
+ return null;
+ }
+ return slots.default({
+ href,
+ navigate,
+ get route() {
+ if (!href) {
+ return void 0;
+ }
+ const url = parseURL(href);
+ return {
+ path: url.pathname,
+ fullPath: url.pathname,
+ get query() {
+ return parseQuery(url.search);
+ },
+ hash: url.hash,
+ // stub properties for compat with vue-router
+ params: {},
+ name: void 0,
+ matched: [],
+ redirectedFrom: void 0,
+ meta: {},
+ href
+ };
+ },
+ rel,
+ target,
+ isExternal: isExternal.value,
+ isActive: false,
+ isExactActive: false
+ });
+ }
+ return h("a", { ref: el, href, rel, target }, (_b = slots.default) == null ? void 0 : _b.call(slots));
+ };
+ }
+ });
+}
+const __nuxt_component_0 = /* @__PURE__ */ defineNuxtLink(nuxtLinkDefaults);
+const _sfc_main = {
+ __name: "error-404",
+ __ssrInlineRender: true,
+ props: {
+ appName: {
+ type: String,
+ default: "Nuxt"
+ },
+ version: {
+ type: String,
+ default: ""
+ },
+ statusCode: {
+ type: Number,
+ default: 404
+ },
+ statusMessage: {
+ type: String,
+ default: "Not Found"
+ },
+ description: {
+ type: String,
+ default: "Sorry, the page you are looking for could not be found."
+ },
+ backHome: {
+ type: String,
+ default: "Go back home"
+ }
+ },
+ setup(__props) {
+ const props = __props;
+ useHead({
+ title: `${props.statusCode} - ${props.statusMessage} | ${props.appName}`,
+ script: [],
+ style: [
+ {
+ children: `*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}a{color:inherit;text-decoration:inherit}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}`
+ }
+ ]
+ });
+ return (_ctx, _push, _parent, _attrs) => {
+ const _component_NuxtLink = __nuxt_component_0;
+ _push(`${ssrInterpolate(__props.statusCode)}
${ssrInterpolate(__props.description)}
`);
+ _push(ssrRenderComponent(_component_NuxtLink, {
+ to: "/",
+ class: "gradient-border text-md sm:text-xl py-2 px-4 sm:py-3 sm:px-6 cursor-pointer"
+ }, {
+ default: withCtx((_, _push2, _parent2, _scopeId) => {
+ if (_push2) {
+ _push2(`${ssrInterpolate(__props.backHome)}`);
+ } else {
+ return [
+ createTextVNode(toDisplayString(__props.backHome), 1)
+ ];
+ }
+ }),
+ _: 1
+ }, _parent));
+ _push(`
`);
+ };
+ }
+};
+const _sfc_setup = _sfc_main.setup;
+_sfc_main.setup = (props, ctx) => {
+ const ssrContext = useSSRContext();
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("node_modules/@nuxt/ui-templates/dist/templates/error-404.vue");
+ return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
+};
+const error404 = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-ccd3db62"]]);
+
+export { error404 as default };
+//# sourceMappingURL=error-404-ac9751db.mjs.map
diff --git a/.output/server/chunks/app/_nuxt/error-404-ac9751db.mjs.map b/.output/server/chunks/app/_nuxt/error-404-ac9751db.mjs.map
new file mode 100644
index 0000000..6f34c54
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/error-404-ac9751db.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"error-404-ac9751db.mjs","sources":["../../../../../.nuxt/dist/server/_nuxt/error-404-ac9751db.js"],"sourcesContent":null,"names":["_a"],"mappings":"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"}
\ No newline at end of file
diff --git a/.output/server/chunks/app/_nuxt/error-404-styles.1e0dde27.mjs b/.output/server/chunks/app/_nuxt/error-404-styles.1e0dde27.mjs
new file mode 100644
index 0000000..19bf0e6
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/error-404-styles.1e0dde27.mjs
@@ -0,0 +1,6 @@
+const error404_vue_vue_type_style_index_0_scoped_ccd3db62_lang = '.spotlight[data-v-ccd3db62]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);bottom:-30vh;filter:blur(20vh);height:40vh}.gradient-border[data-v-ccd3db62]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.5rem;position:relative}@media (prefers-color-scheme:light){.gradient-border[data-v-ccd3db62]{background-color:hsla(0,0%,100%,.3)}.gradient-border[data-v-ccd3db62]:before{background:linear-gradient(90deg,#e2e2e2,#e2e2e2 25%,#00dc82 50%,#36e4da 75%,#0047e1)}}@media (prefers-color-scheme:dark){.gradient-border[data-v-ccd3db62]{background-color:hsla(0,0%,8%,.3)}.gradient-border[data-v-ccd3db62]:before{background:linear-gradient(90deg,#303030,#303030 25%,#00dc82 50%,#36e4da 75%,#0047e1)}}.gradient-border[data-v-ccd3db62]:before{background-size:400% auto;border-radius:.5rem;bottom:0;content:"";left:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.5;padding:2px;position:absolute;right:0;top:0;transition:background-position .3s ease-in-out,opacity .2s ease-in-out;width:100%}.gradient-border[data-v-ccd3db62]:hover:before{background-position:-50% 0;opacity:1}.bg-white[data-v-ccd3db62]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.cursor-pointer[data-v-ccd3db62]{cursor:pointer}.flex[data-v-ccd3db62]{display:flex}.grid[data-v-ccd3db62]{display:grid}.place-content-center[data-v-ccd3db62]{place-content:center}.items-center[data-v-ccd3db62]{align-items:center}.justify-center[data-v-ccd3db62]{justify-content:center}.font-sans[data-v-ccd3db62]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-medium[data-v-ccd3db62]{font-weight:500}.font-light[data-v-ccd3db62]{font-weight:300}.text-8xl[data-v-ccd3db62]{font-size:6rem;line-height:1}.text-xl[data-v-ccd3db62]{font-size:1.25rem;line-height:1.75rem}.leading-tight[data-v-ccd3db62]{line-height:1.25}.mb-8[data-v-ccd3db62]{margin-bottom:2rem}.mb-16[data-v-ccd3db62]{margin-bottom:4rem}.max-w-520px[data-v-ccd3db62]{max-width:520px}.min-h-screen[data-v-ccd3db62]{min-height:100vh}.overflow-hidden[data-v-ccd3db62]{overflow:hidden}.px-8[data-v-ccd3db62]{padding-left:2rem;padding-right:2rem}.py-2[data-v-ccd3db62]{padding-bottom:.5rem;padding-top:.5rem}.px-4[data-v-ccd3db62]{padding-left:1rem;padding-right:1rem}.fixed[data-v-ccd3db62]{position:fixed}.left-0[data-v-ccd3db62]{left:0}.right-0[data-v-ccd3db62]{right:0}.text-center[data-v-ccd3db62]{text-align:center}.text-black[data-v-ccd3db62]{--tw-text-opacity:1;color:rgba(0,0,0,var(--tw-text-opacity))}.antialiased[data-v-ccd3db62]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.w-full[data-v-ccd3db62]{width:100%}.z-10[data-v-ccd3db62]{z-index:10}.z-20[data-v-ccd3db62]{z-index:20}@media (min-width:640px){.sm\\:text-4xl[data-v-ccd3db62]{font-size:2.25rem;line-height:2.5rem}.sm\\:text-xl[data-v-ccd3db62]{font-size:1.25rem;line-height:1.75rem}.sm\\:text-10xl[data-v-ccd3db62]{font-size:10rem;line-height:1}.sm\\:px-0[data-v-ccd3db62]{padding-left:0;padding-right:0}.sm\\:py-3[data-v-ccd3db62]{padding-bottom:.75rem;padding-top:.75rem}.sm\\:px-6[data-v-ccd3db62]{padding-left:1.5rem;padding-right:1.5rem}}@media (prefers-color-scheme:dark){.dark\\:bg-black[data-v-ccd3db62]{--tw-bg-opacity:1;background-color:rgba(0,0,0,var(--tw-bg-opacity))}.dark\\:text-white[data-v-ccd3db62]{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}}';
+
+const error404Styles_1e0dde27 = [error404_vue_vue_type_style_index_0_scoped_ccd3db62_lang, error404_vue_vue_type_style_index_0_scoped_ccd3db62_lang];
+
+export { error404Styles_1e0dde27 as default };
+//# sourceMappingURL=error-404-styles.1e0dde27.mjs.map
diff --git a/.output/server/chunks/app/_nuxt/error-404-styles.1e0dde27.mjs.map b/.output/server/chunks/app/_nuxt/error-404-styles.1e0dde27.mjs.map
new file mode 100644
index 0000000..48f8fd1
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/error-404-styles.1e0dde27.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"error-404-styles.1e0dde27.mjs","sources":["../../../../../.nuxt/dist/server/_nuxt/error-404-styles-1.mjs-e0837f4f.js","../../../../../.nuxt/dist/server/_nuxt/error-404-styles.1e0dde27.mjs"],"sourcesContent":null,"names":["style_0","style_1"],"mappings":"AAAA,MAAM,wDAA2D,GAAA,ukHAAA;;ACEjE,gCAAe,CAACA,wDAAO,EAAEC,wDAAO;;;;"}
\ No newline at end of file
diff --git a/.output/server/chunks/app/_nuxt/error-500-db5011fe.mjs b/.output/server/chunks/app/_nuxt/error-500-db5011fe.mjs
new file mode 100644
index 0000000..9cd7ef6
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/error-500-db5011fe.mjs
@@ -0,0 +1,65 @@
+import { _ as _export_sfc, b as useHead } from '../server.mjs';
+import { mergeProps, useSSRContext } from 'vue';
+import { ssrRenderAttrs, ssrInterpolate } from 'vue/server-renderer';
+import '../../nitro/node-server.mjs';
+import 'node:http';
+import 'node:https';
+import 'fs';
+import 'path';
+import 'node:fs';
+import 'node:url';
+import 'unhead';
+import '@unhead/shared';
+import 'axios';
+
+const _sfc_main = {
+ __name: "error-500",
+ __ssrInlineRender: true,
+ props: {
+ appName: {
+ type: String,
+ default: "Nuxt"
+ },
+ version: {
+ type: String,
+ default: ""
+ },
+ statusCode: {
+ type: Number,
+ default: 500
+ },
+ statusMessage: {
+ type: String,
+ default: "Server error"
+ },
+ description: {
+ type: String,
+ default: "This page is temporarily unavailable."
+ }
+ },
+ setup(__props) {
+ const props = __props;
+ useHead({
+ title: `${props.statusCode} - ${props.statusMessage} | ${props.appName}`,
+ script: [],
+ style: [
+ {
+ children: `*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}`
+ }
+ ]
+ });
+ return (_ctx, _push, _parent, _attrs) => {
+ _push(`${ssrInterpolate(__props.statusCode)}
${ssrInterpolate(__props.description)}
`);
+ };
+ }
+};
+const _sfc_setup = _sfc_main.setup;
+_sfc_main.setup = (props, ctx) => {
+ const ssrContext = useSSRContext();
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("node_modules/@nuxt/ui-templates/dist/templates/error-500.vue");
+ return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
+};
+const error500 = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-df79c84d"]]);
+
+export { error500 as default };
+//# sourceMappingURL=error-500-db5011fe.mjs.map
diff --git a/.output/server/chunks/app/_nuxt/error-500-db5011fe.mjs.map b/.output/server/chunks/app/_nuxt/error-500-db5011fe.mjs.map
new file mode 100644
index 0000000..6119101
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/error-500-db5011fe.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"error-500-db5011fe.mjs","sources":["../../../../../.nuxt/dist/server/_nuxt/error-500-db5011fe.js"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;AAgBA,MAAM,SAAY,GAAA;AAAA,EAChB,MAAQ,EAAA,WAAA;AAAA,EACR,iBAAmB,EAAA,IAAA;AAAA,EACnB,KAAO,EAAA;AAAA,IACL,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,MAAA;AAAA,MACN,OAAS,EAAA,MAAA;AAAA,KACX;AAAA,IACA,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,MAAA;AAAA,MACN,OAAS,EAAA,EAAA;AAAA,KACX;AAAA,IACA,UAAY,EAAA;AAAA,MACV,IAAM,EAAA,MAAA;AAAA,MACN,OAAS,EAAA,GAAA;AAAA,KACX;AAAA,IACA,aAAe,EAAA;AAAA,MACb,IAAM,EAAA,MAAA;AAAA,MACN,OAAS,EAAA,cAAA;AAAA,KACX;AAAA,IACA,WAAa,EAAA;AAAA,MACX,IAAM,EAAA,MAAA;AAAA,MACN,OAAS,EAAA,uCAAA;AAAA,KACX;AAAA,GACF;AAAA,EACA,MAAM,OAAS,EAAA;AACb,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAQ,OAAA,CAAA;AAAA,MACN,KAAA,EAAO,GAAG,KAAM,CAAA,UAAU,MAAM,KAAM,CAAA,aAAa,CAAM,GAAA,EAAA,KAAA,CAAM,OAAO,CAAA,CAAA;AAAA,MACtE,QAAQ,EAAC;AAAA,MACT,KAAO,EAAA;AAAA,QACL;AAAA,UACE,QAAU,EAAA,CAAA,uuBAAA,CAAA;AAAA,SACZ;AAAA,OACF;AAAA,KACD,CAAA,CAAA;AACD,IAAA,OAAO,CAAC,IAAA,EAAM,KAAO,EAAA,OAAA,EAAS,MAAW,KAAA;AACvC,MAAM,KAAA,CAAA,CAAA,IAAA,EAAO,eAAe,UAAW,CAAA,EAAE,OAAO,gIAAiI,EAAA,EAAG,MAAM,CAAC,CAAC,gOAAgO,cAAe,CAAA,OAAA,CAAQ,UAAU,CAAC,CAAA,gGAAA,EAAmG,eAAe,OAAQ,CAAA,WAAW,CAAC,CAAkB,gBAAA,CAAA,CAAA,CAAA;AAAA,KACxlB,CAAA;AAAA,GACF;AACF,CAAA,CAAA;AACA,MAAM,aAAa,SAAU,CAAA,KAAA,CAAA;AAC7B,SAAU,CAAA,KAAA,GAAQ,CAAC,KAAA,EAAO,GAAQ,KAAA;AAChC,EAAA,MAAM,aAAa,aAAc,EAAA,CAAA;AACjC,EAAC,CAAA,UAAA,CAAW,YAAY,UAAW,CAAA,OAAA,uBAA8B,GAAI,EAAA,CAAA,EAAI,IAAI,8DAA8D,CAAA,CAAA;AAC3I,EAAA,OAAO,UAAa,GAAA,UAAA,CAAW,KAAO,EAAA,GAAG,CAAI,GAAA,KAAA,CAAA,CAAA;AAC/C,CAAA,CAAA;AACM,MAAA,QAAA,+BAAuC,SAAW,EAAA,CAAC,CAAC,WAAa,EAAA,iBAAiB,CAAC,CAAC;;;;"}
\ No newline at end of file
diff --git a/.output/server/chunks/app/_nuxt/error-500-styles.cf4b3e80.mjs b/.output/server/chunks/app/_nuxt/error-500-styles.cf4b3e80.mjs
new file mode 100644
index 0000000..7a5b299
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/error-500-styles.cf4b3e80.mjs
@@ -0,0 +1,6 @@
+const error500_vue_vue_type_style_index_0_scoped_df79c84d_lang = ".spotlight[data-v-df79c84d]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);filter:blur(20vh)}.bg-white[data-v-df79c84d]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.grid[data-v-df79c84d]{display:grid}.place-content-center[data-v-df79c84d]{place-content:center}.font-sans[data-v-df79c84d]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-medium[data-v-df79c84d]{font-weight:500}.font-light[data-v-df79c84d]{font-weight:300}.h-1\\/2[data-v-df79c84d]{height:50%}.text-8xl[data-v-df79c84d]{font-size:6rem;line-height:1}.text-xl[data-v-df79c84d]{font-size:1.25rem;line-height:1.75rem}.leading-tight[data-v-df79c84d]{line-height:1.25}.mb-8[data-v-df79c84d]{margin-bottom:2rem}.mb-16[data-v-df79c84d]{margin-bottom:4rem}.max-w-520px[data-v-df79c84d]{max-width:520px}.min-h-screen[data-v-df79c84d]{min-height:100vh}.overflow-hidden[data-v-df79c84d]{overflow:hidden}.px-8[data-v-df79c84d]{padding-left:2rem;padding-right:2rem}.fixed[data-v-df79c84d]{position:fixed}.left-0[data-v-df79c84d]{left:0}.right-0[data-v-df79c84d]{right:0}.-bottom-1\\/2[data-v-df79c84d]{bottom:-50%}.text-center[data-v-df79c84d]{text-align:center}.text-black[data-v-df79c84d]{--tw-text-opacity:1;color:rgba(0,0,0,var(--tw-text-opacity))}.antialiased[data-v-df79c84d]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (min-width:640px){.sm\\:text-4xl[data-v-df79c84d]{font-size:2.25rem;line-height:2.5rem}.sm\\:text-10xl[data-v-df79c84d]{font-size:10rem;line-height:1}.sm\\:px-0[data-v-df79c84d]{padding-left:0;padding-right:0}}@media (prefers-color-scheme:dark){.dark\\:bg-black[data-v-df79c84d]{--tw-bg-opacity:1;background-color:rgba(0,0,0,var(--tw-bg-opacity))}.dark\\:text-white[data-v-df79c84d]{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}}";
+
+const error500Styles_cf4b3e80 = [error500_vue_vue_type_style_index_0_scoped_df79c84d_lang, error500_vue_vue_type_style_index_0_scoped_df79c84d_lang];
+
+export { error500Styles_cf4b3e80 as default };
+//# sourceMappingURL=error-500-styles.cf4b3e80.mjs.map
diff --git a/.output/server/chunks/app/_nuxt/error-500-styles.cf4b3e80.mjs.map b/.output/server/chunks/app/_nuxt/error-500-styles.cf4b3e80.mjs.map
new file mode 100644
index 0000000..7ca32c3
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/error-500-styles.cf4b3e80.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"error-500-styles.cf4b3e80.mjs","sources":["../../../../../.nuxt/dist/server/_nuxt/error-500-styles-1.mjs-8fa81fcc.js","../../../../../.nuxt/dist/server/_nuxt/error-500-styles.cf4b3e80.mjs"],"sourcesContent":null,"names":["style_0","style_1"],"mappings":"AAAA,MAAM,wDAA2D,GAAA,s6DAAA;;ACEjE,gCAAe,CAACA,wDAAO,EAAEC,wDAAO;;;;"}
\ No newline at end of file
diff --git a/.output/server/chunks/app/_nuxt/island-renderer-4de2a5fd.mjs b/.output/server/chunks/app/_nuxt/island-renderer-4de2a5fd.mjs
new file mode 100644
index 0000000..5e98596
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/island-renderer-4de2a5fd.mjs
@@ -0,0 +1,43 @@
+import { defineComponent, onErrorCaptured, createVNode } from 'vue';
+import { c as createError } from '../server.mjs';
+import '../../nitro/node-server.mjs';
+import 'node:http';
+import 'node:https';
+import 'fs';
+import 'path';
+import 'node:fs';
+import 'node:url';
+import 'unhead';
+import '@unhead/shared';
+import 'vue/server-renderer';
+import 'axios';
+
+const components_islands = {};
+const islandComponents = /* @__PURE__ */ Object.freeze({
+ __proto__: null,
+ default: components_islands
+});
+const islandRenderer = defineComponent({
+ props: {
+ context: {
+ type: Object,
+ required: true
+ }
+ },
+ setup(props) {
+ const component = islandComponents[props.context.name];
+ if (!component) {
+ throw createError({
+ statusCode: 404,
+ statusMessage: `Island component not found: ${props.context.name}`
+ });
+ }
+ onErrorCaptured((e) => {
+ console.log(e);
+ });
+ return () => createVNode(component || "span", { ...props.context.props, "nuxt-ssr-component-uid": "" });
+ }
+});
+
+export { islandRenderer as default };
+//# sourceMappingURL=island-renderer-4de2a5fd.mjs.map
diff --git a/.output/server/chunks/app/_nuxt/island-renderer-4de2a5fd.mjs.map b/.output/server/chunks/app/_nuxt/island-renderer-4de2a5fd.mjs.map
new file mode 100644
index 0000000..d05aedd
--- /dev/null
+++ b/.output/server/chunks/app/_nuxt/island-renderer-4de2a5fd.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"island-renderer-4de2a5fd.mjs","sources":["../../../../../.nuxt/dist/server/_nuxt/island-renderer-4de2a5fd.js"],"sourcesContent":null,"names":[],"mappings":";;;;;;;;;;;;;;AAeA,MAAM,qBAAqB,EAAC,CAAA;AAC5B,MAAM,gBAAA,0BAA0C,MAAO,CAAA;AAAA,EACrD,SAAW,EAAA,IAAA;AAAA,EACX,OAAS,EAAA,kBAAA;AACX,CAAC,CAAA,CAAA;AACD,MAAM,iBAAiB,eAAgB,CAAA;AAAA,EACrC,KAAO,EAAA;AAAA,IACL,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,MAAA;AAAA,MACN,QAAU,EAAA,IAAA;AAAA,KACZ;AAAA,GACF;AAAA,EACA,MAAM,KAAO,EAAA;AACX,IAAA,MAAM,SAAY,GAAA,gBAAA,CAAiB,KAAM,CAAA,OAAA,CAAQ,IAAI,CAAA,CAAA;AACrD,IAAA,IAAI,CAAC,SAAW,EAAA;AACd,MAAA,MAAM,WAAY,CAAA;AAAA,QAChB,UAAY,EAAA,GAAA;AAAA,QACZ,aAAe,EAAA,CAAA,4BAAA,EAA+B,KAAM,CAAA,OAAA,CAAQ,IAAI,CAAA,CAAA;AAAA,OACjE,CAAA,CAAA;AAAA,KACH;AACA,IAAA,eAAA,CAAgB,CAAC,CAAM,KAAA;AACrB,MAAA,OAAA,CAAQ,IAAI,CAAC,CAAA,CAAA;AAAA,KACd,CAAA,CAAA;AACD,IAAO,OAAA,MAAM,WAAY,CAAA,SAAA,IAAa,MAAQ,EAAA,EAAE,GAAG,KAAA,CAAM,OAAQ,CAAA,KAAA,EAAO,wBAA0B,EAAA,EAAA,EAAI,CAAA,CAAA;AAAA,GACxG;AACF,CAAC;;;;"}
\ No newline at end of file
diff --git a/.output/server/chunks/app/client.manifest.mjs b/.output/server/chunks/app/client.manifest.mjs
new file mode 100644
index 0000000..8c8e6b8
--- /dev/null
+++ b/.output/server/chunks/app/client.manifest.mjs
@@ -0,0 +1,355 @@
+const client_manifest = {
+ "img/QRCode-icon.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "QRCode-icon.a105d5fc.svg",
+ "src": "img/QRCode-icon.svg"
+ },
+ "img/add-icon.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "add-icon.0b0b5313.svg",
+ "src": "img/add-icon.svg"
+ },
+ "img/arrows-icon.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "arrows-icon.271dd0d3.svg",
+ "src": "img/arrows-icon.svg"
+ },
+ "img/close-icon.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "close-icon.86743366.svg",
+ "src": "img/close-icon.svg"
+ },
+ "img/comment-icon-gray.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "comment-icon-gray.2c8779f9.svg",
+ "src": "img/comment-icon-gray.svg"
+ },
+ "img/delete-icon.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "delete-icon.4d386dce.svg",
+ "src": "img/delete-icon.svg"
+ },
+ "img/dot-gray.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "dot-gray.86cdd7b5.svg",
+ "src": "img/dot-gray.svg"
+ },
+ "img/dot-yellow.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "dot-yellow.4b5e135b.svg",
+ "src": "img/dot-yellow.svg"
+ },
+ "img/dot.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "dot.1026a040.svg",
+ "src": "img/dot.svg"
+ },
+ "img/edit-icon-white.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "edit-icon-white.29b27582.svg",
+ "src": "img/edit-icon-white.svg"
+ },
+ "img/empty-icon.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "empty-icon.24a01ae2.svg",
+ "src": "img/empty-icon.svg"
+ },
+ "img/issue-bj.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "issue-bj.44adad8c.svg",
+ "src": "img/issue-bj.svg"
+ },
+ "img/logo.png": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/png",
+ "file": "logo.6622f82d.png",
+ "src": "img/logo.png"
+ },
+ "img/menu-icon-gray.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "menu-icon-gray.d61f02b1.svg",
+ "src": "img/menu-icon-gray.svg"
+ },
+ "img/mini-code.png": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/png",
+ "file": "mini-code.71ebcc53.png",
+ "src": "img/mini-code.png"
+ },
+ "img/tick-no.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "tick-no.179037b3.svg",
+ "src": "img/tick-no.svg"
+ },
+ "img/tick-option.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "tick-option.e092d22f.svg",
+ "src": "img/tick-option.svg"
+ },
+ "img/tick-orange.svg": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml",
+ "file": "tick-orange.233abc69.svg",
+ "src": "img/tick-orange.svg"
+ },
+ "img/title.png": {
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/png",
+ "file": "title.98892974.png",
+ "src": "img/title.png"
+ },
+ "node_modules/@nuxt/ui-templates/dist/templates/error-404.css": {
+ "resourceType": "style",
+ "prefetch": true,
+ "preload": true,
+ "file": "error-404.7fc72018.css",
+ "src": "node_modules/@nuxt/ui-templates/dist/templates/error-404.css"
+ },
+ "node_modules/@nuxt/ui-templates/dist/templates/error-404.vue": {
+ "resourceType": "script",
+ "module": true,
+ "prefetch": true,
+ "preload": true,
+ "css": [],
+ "file": "error-404.f82bfbab.js",
+ "imports": [
+ "node_modules/nuxt/dist/app/entry.js"
+ ],
+ "isDynamicEntry": true,
+ "src": "node_modules/@nuxt/ui-templates/dist/templates/error-404.vue"
+ },
+ "error-404.7fc72018.css": {
+ "file": "error-404.7fc72018.css",
+ "resourceType": "style",
+ "prefetch": true,
+ "preload": true
+ },
+ "node_modules/@nuxt/ui-templates/dist/templates/error-500.css": {
+ "resourceType": "style",
+ "prefetch": true,
+ "preload": true,
+ "file": "error-500.c5df6088.css",
+ "src": "node_modules/@nuxt/ui-templates/dist/templates/error-500.css"
+ },
+ "node_modules/@nuxt/ui-templates/dist/templates/error-500.vue": {
+ "resourceType": "script",
+ "module": true,
+ "prefetch": true,
+ "preload": true,
+ "css": [],
+ "file": "error-500.38081b51.js",
+ "imports": [
+ "node_modules/nuxt/dist/app/entry.js"
+ ],
+ "isDynamicEntry": true,
+ "src": "node_modules/@nuxt/ui-templates/dist/templates/error-500.vue"
+ },
+ "error-500.c5df6088.css": {
+ "file": "error-500.c5df6088.css",
+ "resourceType": "style",
+ "prefetch": true,
+ "preload": true
+ },
+ "node_modules/nuxt/dist/app/entry.css": {
+ "resourceType": "style",
+ "prefetch": true,
+ "preload": true,
+ "file": "entry.e8059532.css",
+ "src": "node_modules/nuxt/dist/app/entry.css"
+ },
+ "node_modules/nuxt/dist/app/entry.js": {
+ "resourceType": "script",
+ "module": true,
+ "prefetch": true,
+ "preload": true,
+ "assets": [
+ "logo.6622f82d.png",
+ "add-icon.0b0b5313.svg",
+ "dot.1026a040.svg",
+ "dot-yellow.4b5e135b.svg",
+ "dot-gray.86cdd7b5.svg",
+ "empty-icon.24a01ae2.svg",
+ "close-icon.86743366.svg",
+ "edit-icon-white.29b27582.svg",
+ "title.98892974.png",
+ "mini-code.71ebcc53.png",
+ "menu-icon-gray.d61f02b1.svg",
+ "comment-icon-gray.2c8779f9.svg",
+ "tick-no.179037b3.svg",
+ "tick-option.e092d22f.svg",
+ "QRCode-icon.a105d5fc.svg",
+ "delete-icon.4d386dce.svg",
+ "arrows-icon.271dd0d3.svg",
+ "tick-orange.233abc69.svg",
+ "issue-bj.44adad8c.svg"
+ ],
+ "css": [
+ "entry.e8059532.css"
+ ],
+ "dynamicImports": [
+ "node_modules/@nuxt/ui-templates/dist/templates/error-404.vue",
+ "node_modules/@nuxt/ui-templates/dist/templates/error-500.vue"
+ ],
+ "file": "entry.dcd752c1.js",
+ "isEntry": true,
+ "src": "node_modules/nuxt/dist/app/entry.js",
+ "_globalCSS": true
+ },
+ "entry.e8059532.css": {
+ "file": "entry.e8059532.css",
+ "resourceType": "style",
+ "prefetch": true,
+ "preload": true
+ },
+ "logo.6622f82d.png": {
+ "file": "logo.6622f82d.png",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/png"
+ },
+ "add-icon.0b0b5313.svg": {
+ "file": "add-icon.0b0b5313.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "dot.1026a040.svg": {
+ "file": "dot.1026a040.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "dot-yellow.4b5e135b.svg": {
+ "file": "dot-yellow.4b5e135b.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "dot-gray.86cdd7b5.svg": {
+ "file": "dot-gray.86cdd7b5.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "empty-icon.24a01ae2.svg": {
+ "file": "empty-icon.24a01ae2.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "close-icon.86743366.svg": {
+ "file": "close-icon.86743366.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "edit-icon-white.29b27582.svg": {
+ "file": "edit-icon-white.29b27582.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "title.98892974.png": {
+ "file": "title.98892974.png",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/png"
+ },
+ "mini-code.71ebcc53.png": {
+ "file": "mini-code.71ebcc53.png",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/png"
+ },
+ "menu-icon-gray.d61f02b1.svg": {
+ "file": "menu-icon-gray.d61f02b1.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "comment-icon-gray.2c8779f9.svg": {
+ "file": "comment-icon-gray.2c8779f9.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "tick-no.179037b3.svg": {
+ "file": "tick-no.179037b3.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "tick-option.e092d22f.svg": {
+ "file": "tick-option.e092d22f.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "QRCode-icon.a105d5fc.svg": {
+ "file": "QRCode-icon.a105d5fc.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "delete-icon.4d386dce.svg": {
+ "file": "delete-icon.4d386dce.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "arrows-icon.271dd0d3.svg": {
+ "file": "arrows-icon.271dd0d3.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "tick-orange.233abc69.svg": {
+ "file": "tick-orange.233abc69.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ },
+ "issue-bj.44adad8c.svg": {
+ "file": "issue-bj.44adad8c.svg",
+ "resourceType": "image",
+ "prefetch": true,
+ "mimeType": "image/svg+xml"
+ }
+};
+
+export { client_manifest as default };
+//# sourceMappingURL=client.manifest.mjs.map
diff --git a/.output/server/chunks/app/client.manifest.mjs.map b/.output/server/chunks/app/client.manifest.mjs.map
new file mode 100644
index 0000000..c3e4452
--- /dev/null
+++ b/.output/server/chunks/app/client.manifest.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"client.manifest.mjs","sources":["../../../../.nuxt/dist/server/client.manifest.mjs"],"sourcesContent":null,"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/.output/server/chunks/app/server.mjs b/.output/server/chunks/app/server.mjs
new file mode 100644
index 0000000..631f7f6
--- /dev/null
+++ b/.output/server/chunks/app/server.mjs
@@ -0,0 +1,2763 @@
+import { version, ref, watchEffect, watch, getCurrentInstance, defineComponent, hasInjectionContext, unref, inject, useSSRContext, createApp, effectScope, reactive, onUnmounted, nextTick, defineAsyncComponent, provide, onErrorCaptured, onServerPrefetch, createVNode, resolveDynamicComponent, toRef, h, isReadonly, isRef, isShallow, isReactive, toRaw, withCtx, createTextVNode, toDisplayString, mergeProps } from 'vue';
+import { d as useRuntimeConfig$1, $ as $fetch, w as withQuery, l as hasProtocol, p as parseURL, m as isScriptProtocol, j as joinURL, h as createError$1, n as sanitizeStatusCode, o as createHooks, q as isEqual, r as stringifyParsedURL, t as stringifyQuery, v as parseQuery } from '../nitro/node-server.mjs';
+import { getActiveHead } from 'unhead';
+import { defineHeadPlugin, composableNames } from '@unhead/shared';
+import { ssrRenderSuspense, ssrRenderComponent, ssrRenderVNode, ssrRenderAttrs, ssrInterpolate, ssrRenderAttr, ssrRenderList, ssrRenderClass, ssrRenderStyle, ssrIncludeBooleanAttr } from 'vue/server-renderer';
+import axios from 'axios';
+import 'node:http';
+import 'node:https';
+import 'fs';
+import 'path';
+import 'node:fs';
+import 'node:url';
+
+function createContext$1(opts = {}) {
+ let currentInstance;
+ let isSingleton = false;
+ const checkConflict = (instance) => {
+ if (currentInstance && currentInstance !== instance) {
+ throw new Error("Context conflict");
+ }
+ };
+ let als;
+ if (opts.asyncContext) {
+ const _AsyncLocalStorage = opts.AsyncLocalStorage || globalThis.AsyncLocalStorage;
+ if (_AsyncLocalStorage) {
+ als = new _AsyncLocalStorage();
+ } else {
+ console.warn("[unctx] `AsyncLocalStorage` is not provided.");
+ }
+ }
+ const _getCurrentInstance = () => {
+ if (als && currentInstance === void 0) {
+ const instance = als.getStore();
+ if (instance !== void 0) {
+ return instance;
+ }
+ }
+ return currentInstance;
+ };
+ return {
+ use: () => {
+ const _instance = _getCurrentInstance();
+ if (_instance === void 0) {
+ throw new Error("Context is not available");
+ }
+ return _instance;
+ },
+ tryUse: () => {
+ return _getCurrentInstance();
+ },
+ set: (instance, replace) => {
+ if (!replace) {
+ checkConflict(instance);
+ }
+ currentInstance = instance;
+ isSingleton = true;
+ },
+ unset: () => {
+ currentInstance = void 0;
+ isSingleton = false;
+ },
+ call: (instance, callback) => {
+ checkConflict(instance);
+ currentInstance = instance;
+ try {
+ return als ? als.run(instance, callback) : callback();
+ } finally {
+ if (!isSingleton) {
+ currentInstance = void 0;
+ }
+ }
+ },
+ async callAsync(instance, callback) {
+ currentInstance = instance;
+ const onRestore = () => {
+ currentInstance = instance;
+ };
+ const onLeave = () => currentInstance === instance ? onRestore : void 0;
+ asyncHandlers$1.add(onLeave);
+ try {
+ const r = als ? als.run(instance, callback) : callback();
+ if (!isSingleton) {
+ currentInstance = void 0;
+ }
+ return await r;
+ } finally {
+ asyncHandlers$1.delete(onLeave);
+ }
+ }
+ };
+}
+function createNamespace$1(defaultOpts = {}) {
+ const contexts = {};
+ return {
+ get(key, opts = {}) {
+ if (!contexts[key]) {
+ contexts[key] = createContext$1({ ...defaultOpts, ...opts });
+ }
+ contexts[key];
+ return contexts[key];
+ }
+ };
+}
+const _globalThis$1 = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof global !== "undefined" ? global : {};
+const globalKey$2 = "__unctx__";
+const defaultNamespace = _globalThis$1[globalKey$2] || (_globalThis$1[globalKey$2] = createNamespace$1());
+const getContext = (key, opts = {}) => defaultNamespace.get(key, opts);
+const asyncHandlersKey$1 = "__unctx_async_handlers__";
+const asyncHandlers$1 = _globalThis$1[asyncHandlersKey$1] || (_globalThis$1[asyncHandlersKey$1] = /* @__PURE__ */ new Set());
+
+const appConfig = useRuntimeConfig$1().app;
+const baseURL = () => appConfig.baseURL;
+if (!globalThis.$fetch) {
+ globalThis.$fetch = $fetch.create({
+ baseURL: baseURL()
+ });
+}
+const nuxtAppCtx = /* @__PURE__ */ getContext("nuxt-app", {
+ asyncContext: false
+});
+const NuxtPluginIndicator = "__nuxt_plugin";
+function createNuxtApp(options) {
+ let hydratingCount = 0;
+ const nuxtApp = {
+ _scope: effectScope(),
+ provide: void 0,
+ globalName: "nuxt",
+ versions: {
+ get nuxt() {
+ return "3.8.2";
+ },
+ get vue() {
+ return nuxtApp.vueApp.version;
+ }
+ },
+ payload: reactive({
+ data: {},
+ state: {},
+ _errors: {},
+ ...{ serverRendered: true }
+ }),
+ static: {
+ data: {}
+ },
+ runWithContext: (fn) => nuxtApp._scope.run(() => callWithNuxt(nuxtApp, fn)),
+ isHydrating: false,
+ deferHydration() {
+ if (!nuxtApp.isHydrating) {
+ return () => {
+ };
+ }
+ hydratingCount++;
+ let called = false;
+ return () => {
+ if (called) {
+ return;
+ }
+ called = true;
+ hydratingCount--;
+ if (hydratingCount === 0) {
+ nuxtApp.isHydrating = false;
+ return nuxtApp.callHook("app:suspense:resolve");
+ }
+ };
+ },
+ _asyncDataPromises: {},
+ _asyncData: {},
+ _payloadRevivers: {},
+ ...options
+ };
+ nuxtApp.hooks = createHooks();
+ nuxtApp.hook = nuxtApp.hooks.hook;
+ {
+ const contextCaller = async function(hooks, args) {
+ for (const hook of hooks) {
+ await nuxtApp.runWithContext(() => hook(...args));
+ }
+ };
+ nuxtApp.hooks.callHook = (name, ...args) => nuxtApp.hooks.callHookWith(contextCaller, name, ...args);
+ }
+ nuxtApp.callHook = nuxtApp.hooks.callHook;
+ nuxtApp.provide = (name, value) => {
+ const $name = "$" + name;
+ defineGetter(nuxtApp, $name, value);
+ defineGetter(nuxtApp.vueApp.config.globalProperties, $name, value);
+ };
+ defineGetter(nuxtApp.vueApp, "$nuxt", nuxtApp);
+ defineGetter(nuxtApp.vueApp.config.globalProperties, "$nuxt", nuxtApp);
+ {
+ if (nuxtApp.ssrContext) {
+ nuxtApp.ssrContext.nuxt = nuxtApp;
+ nuxtApp.ssrContext._payloadReducers = {};
+ nuxtApp.payload.path = nuxtApp.ssrContext.url;
+ }
+ nuxtApp.ssrContext = nuxtApp.ssrContext || {};
+ if (nuxtApp.ssrContext.payload) {
+ Object.assign(nuxtApp.payload, nuxtApp.ssrContext.payload);
+ }
+ nuxtApp.ssrContext.payload = nuxtApp.payload;
+ nuxtApp.ssrContext.config = {
+ public: options.ssrContext.runtimeConfig.public,
+ app: options.ssrContext.runtimeConfig.app
+ };
+ }
+ const runtimeConfig = options.ssrContext.runtimeConfig;
+ nuxtApp.provide("config", runtimeConfig);
+ return nuxtApp;
+}
+async function applyPlugin(nuxtApp, plugin) {
+ if (plugin.hooks) {
+ nuxtApp.hooks.addHooks(plugin.hooks);
+ }
+ if (typeof plugin === "function") {
+ const { provide: provide2 } = await nuxtApp.runWithContext(() => plugin(nuxtApp)) || {};
+ if (provide2 && typeof provide2 === "object") {
+ for (const key in provide2) {
+ nuxtApp.provide(key, provide2[key]);
+ }
+ }
+ }
+}
+async function applyPlugins(nuxtApp, plugins2) {
+ var _a, _b;
+ const parallels = [];
+ const errors = [];
+ for (const plugin of plugins2) {
+ if (((_a = nuxtApp.ssrContext) == null ? void 0 : _a.islandContext) && ((_b = plugin.env) == null ? void 0 : _b.islands) === false) {
+ continue;
+ }
+ const promise = applyPlugin(nuxtApp, plugin);
+ if (plugin.parallel) {
+ parallels.push(promise.catch((e) => errors.push(e)));
+ } else {
+ await promise;
+ }
+ }
+ await Promise.all(parallels);
+ if (errors.length) {
+ throw errors[0];
+ }
+}
+/*! @__NO_SIDE_EFFECTS__ */
+// @__NO_SIDE_EFFECTS__
+function defineNuxtPlugin(plugin) {
+ if (typeof plugin === "function") {
+ return plugin;
+ }
+ delete plugin.name;
+ return Object.assign(plugin.setup || (() => {
+ }), plugin, { [NuxtPluginIndicator]: true });
+}
+function callWithNuxt(nuxt, setup, args) {
+ const fn = () => args ? setup(...args) : setup();
+ {
+ return nuxt.vueApp.runWithContext(() => nuxtAppCtx.callAsync(nuxt, fn));
+ }
+}
+/*! @__NO_SIDE_EFFECTS__ */
+// @__NO_SIDE_EFFECTS__
+function useNuxtApp() {
+ var _a;
+ let nuxtAppInstance;
+ if (hasInjectionContext()) {
+ nuxtAppInstance = (_a = getCurrentInstance()) == null ? void 0 : _a.appContext.app.$nuxt;
+ }
+ nuxtAppInstance = nuxtAppInstance || nuxtAppCtx.tryUse();
+ if (!nuxtAppInstance) {
+ {
+ throw new Error("[nuxt] instance unavailable");
+ }
+ }
+ return nuxtAppInstance;
+}
+/*! @__NO_SIDE_EFFECTS__ */
+// @__NO_SIDE_EFFECTS__
+function useRuntimeConfig() {
+ return (/* @__PURE__ */ useNuxtApp()).$config;
+}
+function defineGetter(obj, key, val) {
+ Object.defineProperty(obj, key, { get: () => val });
+}
+version.startsWith("3");
+function resolveUnref(r) {
+ return typeof r === "function" ? r() : unref(r);
+}
+function resolveUnrefHeadInput(ref2, lastKey = "") {
+ if (ref2 instanceof Promise)
+ return ref2;
+ const root = resolveUnref(ref2);
+ if (!ref2 || !root)
+ return root;
+ if (Array.isArray(root))
+ return root.map((r) => resolveUnrefHeadInput(r, lastKey));
+ if (typeof root === "object") {
+ return Object.fromEntries(
+ Object.entries(root).map(([k, v]) => {
+ if (k === "titleTemplate" || k.startsWith("on"))
+ return [k, unref(v)];
+ return [k, resolveUnrefHeadInput(v, k)];
+ })
+ );
+ }
+ return root;
+}
+defineHeadPlugin({
+ hooks: {
+ "entries:resolve": function(ctx) {
+ for (const entry2 of ctx.entries)
+ entry2.resolvedInput = resolveUnrefHeadInput(entry2.input);
+ }
+ }
+});
+const headSymbol = "usehead";
+const _global = typeof globalThis !== "undefined" ? globalThis : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
+const globalKey$1 = "__unhead_injection_handler__";
+function setHeadInjectionHandler(handler) {
+ _global[globalKey$1] = handler;
+}
+function injectHead() {
+ if (globalKey$1 in _global) {
+ return _global[globalKey$1]();
+ }
+ const head = inject(headSymbol);
+ if (!head && "production" !== "production")
+ console.warn("Unhead is missing Vue context, falling back to shared context. This may have unexpected results.");
+ return head || getActiveHead();
+}
+function useHead(input, options = {}) {
+ const head = options.head || injectHead();
+ if (head) {
+ if (!head.ssr)
+ return clientUseHead(head, input, options);
+ return head.push(input, options);
+ }
+}
+function clientUseHead(head, input, options = {}) {
+ const deactivated = ref(false);
+ const resolvedInput = ref({});
+ watchEffect(() => {
+ resolvedInput.value = deactivated.value ? {} : resolveUnrefHeadInput(input);
+ });
+ const entry2 = head.push(resolvedInput.value, options);
+ watch(resolvedInput, (e) => {
+ entry2.patch(e);
+ });
+ getCurrentInstance();
+ return entry2;
+}
+const coreComposableNames = [
+ "injectHead"
+];
+({
+ "@unhead/vue": [...coreComposableNames, ...composableNames]
+});
+const unhead_KgADcZ0jPj = /* @__PURE__ */ defineNuxtPlugin({
+ name: "nuxt:head",
+ enforce: "pre",
+ setup(nuxtApp) {
+ const head = nuxtApp.ssrContext.head;
+ setHeadInjectionHandler(
+ // need a fresh instance of the nuxt app to avoid parallel requests interfering with each other
+ () => (/* @__PURE__ */ useNuxtApp()).vueApp._context.provides.usehead
+ );
+ nuxtApp.vueApp.use(head);
+ }
+});
+const PageRouteSymbol = Symbol("route");
+const useRouter = () => {
+ var _a;
+ return (_a = /* @__PURE__ */ useNuxtApp()) == null ? void 0 : _a.$router;
+};
+const useRoute = () => {
+ if (hasInjectionContext()) {
+ return inject(PageRouteSymbol, (/* @__PURE__ */ useNuxtApp())._route);
+ }
+ return (/* @__PURE__ */ useNuxtApp())._route;
+};
+/*! @__NO_SIDE_EFFECTS__ */
+// @__NO_SIDE_EFFECTS__
+function defineNuxtRouteMiddleware(middleware) {
+ return middleware;
+}
+const isProcessingMiddleware = () => {
+ try {
+ if ((/* @__PURE__ */ useNuxtApp())._processingMiddleware) {
+ return true;
+ }
+ } catch {
+ return true;
+ }
+ return false;
+};
+const navigateTo = (to, options) => {
+ if (!to) {
+ to = "/";
+ }
+ const toPath = typeof to === "string" ? to : withQuery(to.path || "/", to.query || {}) + (to.hash || "");
+ if (options == null ? void 0 : options.open) {
+ return Promise.resolve();
+ }
+ const isExternal = (options == null ? void 0 : options.external) || hasProtocol(toPath, { acceptRelative: true });
+ if (isExternal) {
+ if (!(options == null ? void 0 : options.external)) {
+ throw new Error("Navigating to an external URL is not allowed by default. Use `navigateTo(url, { external: true })`.");
+ }
+ const protocol = parseURL(toPath).protocol;
+ if (protocol && isScriptProtocol(protocol)) {
+ throw new Error(`Cannot navigate to a URL with '${protocol}' protocol.`);
+ }
+ }
+ const inMiddleware = isProcessingMiddleware();
+ const router = useRouter();
+ const nuxtApp = /* @__PURE__ */ useNuxtApp();
+ {
+ if (nuxtApp.ssrContext) {
+ const fullPath = typeof to === "string" || isExternal ? toPath : router.resolve(to).fullPath || "/";
+ const location2 = isExternal ? toPath : joinURL((/* @__PURE__ */ useRuntimeConfig()).app.baseURL, fullPath);
+ const redirect = async function(response) {
+ await nuxtApp.callHook("app:redirected");
+ const encodedLoc = location2.replace(/"/g, "%22");
+ nuxtApp.ssrContext._renderResponse = {
+ statusCode: sanitizeStatusCode((options == null ? void 0 : options.redirectCode) || 302, 302),
+ body: ``,
+ headers: { location: location2 }
+ };
+ return response;
+ };
+ if (!isExternal && inMiddleware) {
+ router.afterEach((final) => final.fullPath === fullPath ? redirect(false) : void 0);
+ return to;
+ }
+ return redirect(!inMiddleware ? void 0 : (
+ /* abort route navigation */
+ false
+ ));
+ }
+ }
+ if (isExternal) {
+ nuxtApp._scope.stop();
+ if (options == null ? void 0 : options.replace) {
+ location.replace(toPath);
+ } else {
+ location.href = toPath;
+ }
+ if (inMiddleware) {
+ if (!nuxtApp.isHydrating) {
+ return false;
+ }
+ return new Promise(() => {
+ });
+ }
+ return Promise.resolve();
+ }
+ return (options == null ? void 0 : options.replace) ? router.replace(to) : router.push(to);
+};
+const useError = () => toRef((/* @__PURE__ */ useNuxtApp()).payload, "error");
+const showError = (_err) => {
+ const err = createError(_err);
+ try {
+ const nuxtApp = /* @__PURE__ */ useNuxtApp();
+ const error = useError();
+ if (false)
+ ;
+ error.value = error.value || err;
+ } catch {
+ throw err;
+ }
+ return err;
+};
+const isNuxtError = (err) => !!(err && typeof err === "object" && "__nuxt_error" in err);
+const createError = (err) => {
+ const _err = createError$1(err);
+ _err.__nuxt_error = true;
+ return _err;
+};
+function createContext(opts = {}) {
+ let currentInstance;
+ let isSingleton = false;
+ const checkConflict = (instance) => {
+ if (currentInstance && currentInstance !== instance) {
+ throw new Error("Context conflict");
+ }
+ };
+ let als;
+ if (opts.asyncContext) {
+ const _AsyncLocalStorage = opts.AsyncLocalStorage || globalThis.AsyncLocalStorage;
+ if (_AsyncLocalStorage) {
+ als = new _AsyncLocalStorage();
+ } else {
+ console.warn("[unctx] `AsyncLocalStorage` is not provided.");
+ }
+ }
+ const _getCurrentInstance = () => {
+ if (als && currentInstance === void 0) {
+ const instance = als.getStore();
+ if (instance !== void 0) {
+ return instance;
+ }
+ }
+ return currentInstance;
+ };
+ return {
+ use: () => {
+ const _instance = _getCurrentInstance();
+ if (_instance === void 0) {
+ throw new Error("Context is not available");
+ }
+ return _instance;
+ },
+ tryUse: () => {
+ return _getCurrentInstance();
+ },
+ set: (instance, replace) => {
+ if (!replace) {
+ checkConflict(instance);
+ }
+ currentInstance = instance;
+ isSingleton = true;
+ },
+ unset: () => {
+ currentInstance = void 0;
+ isSingleton = false;
+ },
+ call: (instance, callback) => {
+ checkConflict(instance);
+ currentInstance = instance;
+ try {
+ return als ? als.run(instance, callback) : callback();
+ } finally {
+ if (!isSingleton) {
+ currentInstance = void 0;
+ }
+ }
+ },
+ async callAsync(instance, callback) {
+ currentInstance = instance;
+ const onRestore = () => {
+ currentInstance = instance;
+ };
+ const onLeave = () => currentInstance === instance ? onRestore : void 0;
+ asyncHandlers.add(onLeave);
+ try {
+ const r = als ? als.run(instance, callback) : callback();
+ if (!isSingleton) {
+ currentInstance = void 0;
+ }
+ return await r;
+ } finally {
+ asyncHandlers.delete(onLeave);
+ }
+ }
+ };
+}
+function createNamespace(defaultOpts = {}) {
+ const contexts = {};
+ return {
+ get(key, opts = {}) {
+ if (!contexts[key]) {
+ contexts[key] = createContext({ ...defaultOpts, ...opts });
+ }
+ contexts[key];
+ return contexts[key];
+ }
+ };
+}
+const _globalThis = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof global !== "undefined" ? global : {};
+const globalKey = "__unctx__";
+_globalThis[globalKey] || (_globalThis[globalKey] = createNamespace());
+const asyncHandlersKey = "__unctx_async_handlers__";
+const asyncHandlers = _globalThis[asyncHandlersKey] || (_globalThis[asyncHandlersKey] = /* @__PURE__ */ new Set());
+const manifest_45route_45rule = /* @__PURE__ */ defineNuxtRouteMiddleware(async (to) => {
+ {
+ return;
+ }
+});
+const globalMiddleware = [
+ manifest_45route_45rule
+];
+function getRouteFromPath(fullPath) {
+ if (typeof fullPath === "object") {
+ fullPath = stringifyParsedURL({
+ pathname: fullPath.path || "",
+ search: stringifyQuery(fullPath.query || {}),
+ hash: fullPath.hash || ""
+ });
+ }
+ const url = parseURL(fullPath.toString());
+ return {
+ path: url.pathname,
+ fullPath,
+ query: parseQuery(url.search),
+ hash: url.hash,
+ // stub properties for compat with vue-router
+ params: {},
+ name: void 0,
+ matched: [],
+ redirectedFrom: void 0,
+ meta: {},
+ href: fullPath
+ };
+}
+const router_CaKIoANnI2 = /* @__PURE__ */ defineNuxtPlugin({
+ name: "nuxt:router",
+ enforce: "pre",
+ setup(nuxtApp) {
+ const initialURL = nuxtApp.ssrContext.url;
+ const routes = [];
+ const hooks = {
+ "navigate:before": [],
+ "resolve:before": [],
+ "navigate:after": [],
+ error: []
+ };
+ const registerHook = (hook, guard) => {
+ hooks[hook].push(guard);
+ return () => hooks[hook].splice(hooks[hook].indexOf(guard), 1);
+ };
+ (/* @__PURE__ */ useRuntimeConfig()).app.baseURL;
+ const route = reactive(getRouteFromPath(initialURL));
+ async function handleNavigation(url, replace) {
+ try {
+ const to = getRouteFromPath(url);
+ for (const middleware of hooks["navigate:before"]) {
+ const result = await middleware(to, route);
+ if (result === false || result instanceof Error) {
+ return;
+ }
+ if (typeof result === "string" && result.length) {
+ return handleNavigation(result, true);
+ }
+ }
+ for (const handler of hooks["resolve:before"]) {
+ await handler(to, route);
+ }
+ Object.assign(route, to);
+ if (false)
+ ;
+ for (const middleware of hooks["navigate:after"]) {
+ await middleware(to, route);
+ }
+ } catch (err) {
+ for (const handler of hooks.error) {
+ await handler(err);
+ }
+ }
+ }
+ const router = {
+ currentRoute: route,
+ isReady: () => Promise.resolve(),
+ // These options provide a similar API to vue-router but have no effect
+ options: {},
+ install: () => Promise.resolve(),
+ // Navigation
+ push: (url) => handleNavigation(url),
+ replace: (url) => handleNavigation(url),
+ back: () => window.history.go(-1),
+ go: (delta) => window.history.go(delta),
+ forward: () => window.history.go(1),
+ // Guards
+ beforeResolve: (guard) => registerHook("resolve:before", guard),
+ beforeEach: (guard) => registerHook("navigate:before", guard),
+ afterEach: (guard) => registerHook("navigate:after", guard),
+ onError: (handler) => registerHook("error", handler),
+ // Routes
+ resolve: getRouteFromPath,
+ addRoute: (parentName, route2) => {
+ routes.push(route2);
+ },
+ getRoutes: () => routes,
+ hasRoute: (name) => routes.some((route2) => route2.name === name),
+ removeRoute: (name) => {
+ const index = routes.findIndex((route2) => route2.name === name);
+ if (index !== -1) {
+ routes.splice(index, 1);
+ }
+ }
+ };
+ nuxtApp.vueApp.component("RouterLink", {
+ functional: true,
+ props: {
+ to: String,
+ custom: Boolean,
+ replace: Boolean,
+ // Not implemented
+ activeClass: String,
+ exactActiveClass: String,
+ ariaCurrentValue: String
+ },
+ setup: (props, { slots }) => {
+ const navigate = () => handleNavigation(props.to, props.replace);
+ return () => {
+ var _a;
+ const route2 = router.resolve(props.to);
+ return props.custom ? (_a = slots.default) == null ? void 0 : _a.call(slots, { href: props.to, navigate, route: route2 }) : h("a", { href: props.to, onClick: (e) => {
+ e.preventDefault();
+ return navigate();
+ } }, slots);
+ };
+ }
+ });
+ nuxtApp._route = route;
+ nuxtApp._middleware = nuxtApp._middleware || {
+ global: [],
+ named: {}
+ };
+ const initialLayout = nuxtApp.payload.state._layout;
+ nuxtApp.hooks.hookOnce("app:created", async () => {
+ router.beforeEach(async (to, from) => {
+ var _a;
+ to.meta = reactive(to.meta || {});
+ if (nuxtApp.isHydrating && initialLayout && !isReadonly(to.meta.layout)) {
+ to.meta.layout = initialLayout;
+ }
+ nuxtApp._processingMiddleware = true;
+ if (!((_a = nuxtApp.ssrContext) == null ? void 0 : _a.islandContext)) {
+ const middlewareEntries = /* @__PURE__ */ new Set([...globalMiddleware, ...nuxtApp._middleware.global]);
+ for (const middleware of middlewareEntries) {
+ const result = await nuxtApp.runWithContext(() => middleware(to, from));
+ {
+ if (result === false || result instanceof Error) {
+ const error = result || createError$1({
+ statusCode: 404,
+ statusMessage: `Page Not Found: ${initialURL}`
+ });
+ delete nuxtApp._processingMiddleware;
+ return nuxtApp.runWithContext(() => showError(error));
+ }
+ }
+ if (result === true) {
+ continue;
+ }
+ if (result || result === false) {
+ return result;
+ }
+ }
+ }
+ });
+ router.afterEach(() => {
+ delete nuxtApp._processingMiddleware;
+ });
+ await router.replace(initialURL);
+ if (!isEqual(route.fullPath, initialURL)) {
+ await nuxtApp.runWithContext(() => navigateTo(route.fullPath));
+ }
+ });
+ return {
+ provide: {
+ route,
+ router
+ }
+ };
+ }
+});
+function definePayloadReducer(name, reduce) {
+ {
+ (/* @__PURE__ */ useNuxtApp()).ssrContext._payloadReducers[name] = reduce;
+ }
+}
+const reducers = {
+ NuxtError: (data) => isNuxtError(data) && data.toJSON(),
+ EmptyShallowRef: (data) => isRef(data) && isShallow(data) && !data.value && (typeof data.value === "bigint" ? "0n" : JSON.stringify(data.value) || "_"),
+ EmptyRef: (data) => isRef(data) && !data.value && (typeof data.value === "bigint" ? "0n" : JSON.stringify(data.value) || "_"),
+ ShallowRef: (data) => isRef(data) && isShallow(data) && data.value,
+ ShallowReactive: (data) => isReactive(data) && isShallow(data) && toRaw(data),
+ Ref: (data) => isRef(data) && data.value,
+ Reactive: (data) => isReactive(data) && toRaw(data)
+};
+const revive_payload_server_eJ33V7gbc6 = /* @__PURE__ */ defineNuxtPlugin({
+ name: "nuxt:revive-payload:server",
+ setup() {
+ for (const reducer in reducers) {
+ definePayloadReducer(reducer, reducers[reducer]);
+ }
+ }
+});
+const components_plugin_KR1HBZs4kY = /* @__PURE__ */ defineNuxtPlugin({
+ name: "nuxt:global-components"
+});
+const plugins = [
+ unhead_KgADcZ0jPj,
+ router_CaKIoANnI2,
+ revive_payload_server_eJ33V7gbc6,
+ components_plugin_KR1HBZs4kY
+];
+const removeUndefinedProps = (props) => Object.fromEntries(Object.entries(props).filter(([, value]) => value !== void 0));
+const setupForUseMeta = (metaFactory, renderChild) => (props, ctx) => {
+ useHead(() => metaFactory({ ...removeUndefinedProps(props), ...ctx.attrs }, ctx));
+ return () => {
+ var _a, _b;
+ return renderChild ? (_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a) : null;
+ };
+};
+const globalProps = {
+ accesskey: String,
+ autocapitalize: String,
+ autofocus: {
+ type: Boolean,
+ default: void 0
+ },
+ class: [String, Object, Array],
+ contenteditable: {
+ type: Boolean,
+ default: void 0
+ },
+ contextmenu: String,
+ dir: String,
+ draggable: {
+ type: Boolean,
+ default: void 0
+ },
+ enterkeyhint: String,
+ exportparts: String,
+ hidden: {
+ type: Boolean,
+ default: void 0
+ },
+ id: String,
+ inputmode: String,
+ is: String,
+ itemid: String,
+ itemprop: String,
+ itemref: String,
+ itemscope: String,
+ itemtype: String,
+ lang: String,
+ nonce: String,
+ part: String,
+ slot: String,
+ spellcheck: {
+ type: Boolean,
+ default: void 0
+ },
+ style: String,
+ tabindex: String,
+ title: String,
+ translate: String
+};
+defineComponent({
+ name: "NoScript",
+ inheritAttrs: false,
+ props: {
+ ...globalProps,
+ title: String,
+ body: Boolean,
+ renderPriority: [String, Number]
+ },
+ setup: setupForUseMeta((props, { slots }) => {
+ var _a;
+ const noscript = { ...props };
+ const textContent = (((_a = slots.default) == null ? void 0 : _a.call(slots)) || []).filter(({ children }) => children).map(({ children }) => children).join("");
+ if (textContent) {
+ noscript.children = textContent;
+ }
+ return {
+ noscript: [noscript]
+ };
+ })
+});
+defineComponent({
+ // eslint-disable-next-line vue/no-reserved-component-names
+ name: "Link",
+ inheritAttrs: false,
+ props: {
+ ...globalProps,
+ as: String,
+ crossorigin: String,
+ disabled: Boolean,
+ fetchpriority: String,
+ href: String,
+ hreflang: String,
+ imagesizes: String,
+ imagesrcset: String,
+ integrity: String,
+ media: String,
+ prefetch: {
+ type: Boolean,
+ default: void 0
+ },
+ referrerpolicy: String,
+ rel: String,
+ sizes: String,
+ title: String,
+ type: String,
+ /** @deprecated **/
+ methods: String,
+ /** @deprecated **/
+ target: String,
+ body: Boolean,
+ renderPriority: [String, Number]
+ },
+ setup: setupForUseMeta((link) => ({
+ link: [link]
+ }))
+});
+defineComponent({
+ // eslint-disable-next-line vue/no-reserved-component-names
+ name: "Base",
+ inheritAttrs: false,
+ props: {
+ ...globalProps,
+ href: String,
+ target: String
+ },
+ setup: setupForUseMeta((base) => ({
+ base
+ }))
+});
+const Title = defineComponent({
+ // eslint-disable-next-line vue/no-reserved-component-names
+ name: "Title",
+ inheritAttrs: false,
+ setup: setupForUseMeta((_, { slots }) => {
+ var _a, _b, _c;
+ return {
+ title: ((_c = (_b = (_a = slots.default) == null ? void 0 : _a.call(slots)) == null ? void 0 : _b[0]) == null ? void 0 : _c.children) || null
+ };
+ })
+});
+const Meta = defineComponent({
+ // eslint-disable-next-line vue/no-reserved-component-names
+ name: "Meta",
+ inheritAttrs: false,
+ props: {
+ ...globalProps,
+ charset: String,
+ content: String,
+ httpEquiv: String,
+ name: String,
+ body: Boolean,
+ renderPriority: [String, Number]
+ },
+ setup: setupForUseMeta((props) => {
+ const meta = { ...props };
+ if (meta.httpEquiv) {
+ meta["http-equiv"] = meta.httpEquiv;
+ delete meta.httpEquiv;
+ }
+ return {
+ meta: [meta]
+ };
+ })
+});
+defineComponent({
+ // eslint-disable-next-line vue/no-reserved-component-names
+ name: "Style",
+ inheritAttrs: false,
+ props: {
+ ...globalProps,
+ type: String,
+ media: String,
+ nonce: String,
+ title: String,
+ /** @deprecated **/
+ scoped: {
+ type: Boolean,
+ default: void 0
+ },
+ body: Boolean,
+ renderPriority: [String, Number]
+ },
+ setup: setupForUseMeta((props, { slots }) => {
+ var _a, _b, _c;
+ const style = { ...props };
+ const textContent = (_c = (_b = (_a = slots.default) == null ? void 0 : _a.call(slots)) == null ? void 0 : _b[0]) == null ? void 0 : _c.children;
+ if (textContent) {
+ style.children = textContent;
+ }
+ return {
+ style: [style]
+ };
+ })
+});
+const Head = defineComponent({
+ // eslint-disable-next-line vue/no-reserved-component-names
+ name: "Head",
+ inheritAttrs: false,
+ setup: (_props, ctx) => () => {
+ var _a, _b;
+ return (_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a);
+ }
+});
+defineComponent({
+ // eslint-disable-next-line vue/no-reserved-component-names
+ name: "Html",
+ inheritAttrs: false,
+ props: {
+ ...globalProps,
+ manifest: String,
+ version: String,
+ xmlns: String,
+ renderPriority: [String, Number]
+ },
+ setup: setupForUseMeta((htmlAttrs) => ({ htmlAttrs }), true)
+});
+defineComponent({
+ // eslint-disable-next-line vue/no-reserved-component-names
+ name: "Body",
+ inheritAttrs: false,
+ props: {
+ ...globalProps,
+ renderPriority: [String, Number]
+ },
+ setup: setupForUseMeta((bodyAttrs) => ({ bodyAttrs }), true)
+});
+const _imports_0 = "" + __buildAssetsURL("logo.6622f82d.png");
+const _imports_1 = "data:image/png;base64,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";
+const _imports_2 = "data:image/png;base64,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";
+const _imports_3 = "" + __buildAssetsURL("add-icon.0b0b5313.svg");
+const _imports_4 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAAED0lEQVRYCe2Wu09UQRTGdwlYWWMAIzEhWhCJhRgVAbHzAWil1sT/gKcKLAqG159AYimVgIFSeVOglSYmRhPFEEiIlTQ2sP6+y5zr3OUuLFDqJLPnzHce883MmdmbSPzrLXmQDRgaGjqNfyO9Op1OFyFPuvjVZDK5Dja3tbU10dHR8d3h+4qcCDDxdZL3ku3yvhlxgMwS4nFLS8vMfv57Eujr6zuRn5//goQ3vESf0Sch9BW55vBifMrA6pFnPN9Jxk0Q2fCwiJqVwODg4Hk8J+inXMQYyVIk+xDJkDFgtyogkgK+60wrxDVki4sloMkJmifRcZJsoN/LZTvdhIEYGBioI26UQSF9E/1qHIldBLTtBQUFywRp5Z/y8vJuNjc3r6AfuA0PD5dub29PEVhOX4HERUhEjiMvM6vOHEyTbxxlcuUVcXLcUi56KTs6ItxvEQKqdlgGBYfz/cOu3J9AOcj5wGH1HG+tb48QYNI+Zxxra2ub9h2lc64XSFCVidtYNvnY2CTb/hZ9XGPIPDdcMiTgHplLAnFKSfqN86wEV20s4Nvp26Q7bEE+cSTAu+XHIq+oNqSrhQQw3NmBEl/iqpViOoY9KFp8n7LaLuefkC7MjZPo8o00l1NviEjoNQ1aSACGVx322smIaG1tXSSw1QN7WHU3q20D6zGcPF3t7e1LNvYl8boRatU7IroDwbtOgi9mzJTUxZBPAj2Ff7/5aXJW+szGMTLITVyJ2cIdAChy4JoZ42QmCfPJYfIEV3Ld+RdbnE8gLZCz3vU4mbMn/TiD4zCzBdLLHcwl0A+ylYfsItFuoDP3t918dByqCRvHSeKCXUbaXH8JGIgsiwsWpmrHHp45kK5jeCVFwr8divEbdsu9mwDGOTkzQXhF/GASq3LDakfv5Gb0qkv3fHv6+/vtRnlwoN7WL0cxa4bwCPQlI1As2coKczBJAf2WWWNIPnETB2bpwoIBPujyjTTlBD8DyBTp8KqHBPQZhcOSonBISfqNN/0dJCphX8VVsyc7dBEmm3y4Ke9Dg1PIGewecyzyTvwwe6TiYXkNx2kZkdfj/g8s8CCSvPqke+NiatixeYsPd0AAq5hBTEqH6aj/Zgs7TFMOJn/pYsf9yYVFCAhg4ibECr2QLZ06CgnFKody0b9xPA+RkbaLALugT7AGvDbp5SRY1tFEonIY8F7UKVY56L/QG6mjn5mhkRrwjapatk7VWiocUq+4KSkK6KPvl6lzBc+xUhWcfZR+0+TZ4rISUGJIFEJiBLVeY9f0l6rPbf2xBA8KE5Qw1iOje36Wbm1c2x63cnPYk4A58QjVouvqVRm2l4TMAsQfZRZcXExOBCzQVXQjyWuYpAhpf+Gr6Pqnm2U3Jvx7brH/ZbYd+APZxM/2zgvhdQAAAABJRU5ErkJggg==";
+const _imports_5 = "" + __buildAssetsURL("dot.1026a040.svg");
+const _imports_6 = "data:image/png;base64,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";
+const _imports_7 = "" + __buildAssetsURL("dot-yellow.4b5e135b.svg");
+const _imports_8 = "" + __buildAssetsURL("dot-gray.86cdd7b5.svg");
+const _imports_9 = "" + __buildAssetsURL("empty-icon.24a01ae2.svg");
+const _imports_10 = "" + __buildAssetsURL("close-icon.86743366.svg");
+const _imports_11 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAgKADAAQAAAABAAAAgAAAAABIjgR3AAAGo0lEQVR4Ae2dTW8bVRSGEydOihDEUSW2ICQ2wBJERSLRDaJlwc8obBI5ShQkVl4SN5aVOEIgfgb9QioqCxcWXSLY0ILKjkWkuBVK4yQO5ygzMHbjyXzcO3PPue9Iluf73vu8z1zPxJnxxAQGEAABEAABEAABEAABEAABEAABEAABEAABEAABEAABEAABEAABEAABEAABEAABEAABEAABPQQmbTVlZWXl9cFg8GalUnk2MzPzYGNjo2erLI37rdfrtZOTk3epbbPE8Ld2u/2HjXYaF2B5efkNqvC3VNkPIhXuT05Ofj03N/d5o9F4FpmP0RECxOdCr9e7TuFfo0Uz4WKavkevT7e3t38P55l4NypAEP7PVLGLYyrXpd7g42az+XTMcq9nr6+vv9Tv928RhMUxIHbpQLpEvcHDMctTz66k3iJmg+DIHxc+b7lIDbzNDY3ZjZeLgvBvM6MYABepF/gmZnnqRcZ6AP7Mp8o9SliD+9QTXEVPcEorEv5CEn5TU1OvtVqtx0nWPW8dYz0An/CdV1hk+QJ6glMaacPnrQ4PD9+KsMw1akwAPttPWRPvJcgSPjPOwHpsNMYE4Es9KqU/tqSzF3grQdbwCeNBwPpsoinnGhOAr/P5Ui9l+by6dxLkCH+CzrO+MnnuZEwATpKv8+mty+MpB28kyBM+Me3Oz89/kZJt7OrGrgLCUtbW1l48Ojq6QdOXw3lJ36kH+Ym2vdrpdJ4k3UbSegGbm1Tn6B/JEjWB2VSr1Ssmj34u2LgAvFNIwBSGBxfD5xpaEYB3DAmYwungavhcO2sC8M4hwX8MnOr2OZtwsCoAF+KzBC4f+YUJ4KsEEsLnbKz3AKFpPvUEUsIvVAAuzAcJJIVfuADaJZAWfikCaJVAYvilCaBNAqnhlyqAFgkkh1+6ANIlkB6+EwJIlUBD+M4IIE0CLeE7JYAUCTSF75wArkugLXwnBXBVAo3hOyuAaxJoDd9pAVyRQHP4zgtQtgTawxchQFkS+BC+GAGKlsCX8EUJUJQEPoUvTgDbEvgWvkgBbEngY/hiBTAtga/hixbAlASzs7PHdDuas/+3z+20ORT2X8G2GpHzZsv7Qb0SPZljpA0qnnIiXgAOJejCM92QOhJqoklbN2omKtzwSioEYCZFSaApfOamRoAiJNAWvjoBbEqgMXyVAtiQQGv4agUwKYHm8FULYEIC7eEzI6MPieIdOjjkOtHd39/Ptb2DPIaqpLZxef68GyXEvYDmB1epFMBU+KEImiVQJ4Dp8LVLoEoAW+FrlkCNALbD1yqBCgGKCl+jBOIvA/nrYDpL/57CSf34VdqGvw4OvxIO8z33nR7Y/D79aMMtLvvclR1fQbQAfOTTD098R4xTf5/PZ/b8qyXT09Mf0fY/ZshpgX644c7S0tLLGbZ1ZhOxHwF5uv3Rv/AF+8r0/wTSLxFFCmAy/PBQ9FUCcQLYCN9nCUQJYDN8XyUQI0AR4fsogQgBigzfNwmcF6CM8H2SwGkBygzfFwmcFcCF8H2QwEkBXApfuwTOCeBi+JolcEoAl8PXKoEzAkgIX6METgggKXxtEpQugMTwNUlQqgCSw9ciQWkCaAhfgwSlCKApfOkSFC6AxvAlS1CoAJrDlypBYQL4EL5ECQoRwKfwpUlgXQAfw5ckgVUBfA5figTWBED4oQL5HmFn+74DKwIg/P/DD8cCJs7dfGJcAIQfRv78u4sSGL03sNFoXKAbNe9Q0zPdqFmtVq80m82nz6PTMWdzc/Mfuh/xE2pN1htSbzJjkzSMCtDr9a5T5RYzVFDFg5eTtJsF55tSad3UEjDbvb29L5OUk3QdYx8B9Xq9RoX+Ta+ZpIUH63kTfpRLjqecHxwfH7/S6XSeRPeXddxYD0Bnq+9QJRB+wiRy9ASz9GwCZm1kMCbAYDBI+9nk5ZEfTS2rBBlYR4sdGjcmAHVLvw7tOX7C+/BDPFkkoJPlNKzDos58NybAzs7On/TolHtnljI8E+EP85hIKcHdVqv1eGQXmSeNCcA1qFQq1+htN6Y2XT4D5gbHrOPloogE3RgAu9TTfhazPPUiowK02+2HdDJ4iV4/jNTkgHqHdq1W+xDhj5CJTDIbZkSztuh1EFnEo3cp/Pfo7P/RyPxck8YuA0drsbq6+ipV+G2av09H/QMEP0oofpofPhWc7b9AB88vW1tbf8VvgaUgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIgAAIg8C9yNG0zv/zA5QAAAABJRU5ErkJggg==";
+const _imports_12 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAAECklEQVRoBe1YS2tTQRTOowmND1wYEl26Cc2jWVhXBUvEqlDqMq2KCzdaf4ArcSEIWlB3LkTpqq0IAQVRd2pUbFwY+kif2bRQKDTGhViTJsbE76QzdW7M497k5uaCGbg9Z+bOPef7zpyZnozB0G7tCPzfETC2mr7f73fk8/mbhUJhw+Px3AmFQr+VYGopAQb+DQD7GOiQ3W6/EA6Hc3JJmOVOVHteGfDkwptKpdxYiedra2t5OT5NciapPcfn8zmRNu9gl0c+I/gIJpPJ8WAwKCu4siYJxhtWKfLId0obLzP2E3LAaDTGIM+wMR9IyFoJTQmUSRsCPzg/Px9OJBIRp9P5QyAhK500I1ANPIu6gUg4HI4t9E+zsZokNCEgB3y9JJpOQAn4ekg0lQCdNtiwdNrwDbtlMpkGYrHYBw6WSyLa19e3vbi4WKAxlk5ZqCfZHEqnDMY/sn5RNO0YJfDw8BaPhzksgp+bm5MAoHder/c8jtX15eXlMTaXiwgUIsGbgytcdnBFTakUPI7Qcfg341nnOGAjAP0VHisbm83lcreYvitULyXK5HwKaTS4sLBAqSRpADmEgUk8FMgxHKdXIPOwcRwr8hr6PjzUZrPZbH88Hk/udP/+VZWA1uCJhmoEWgFeNQKtAq8KgVaCb5hAq8E3REAP4OsmoBfwdRHQE3jFBPQGXhEBPYInAlR/1GxdXV0HUa+8x0ReVf5EfwD/+mlM0iqVByjYTmAilQd72QczqG36V1ZWvkkMKOzIKubMZvNt2OVVJUqbwlmA/6ckrgYehF/Cxh6Grwge1WdD4MmWnHLaBOfDzDEJdI1XA4GAhDzA+/HuCZ4OvH8MgpehFwsz9F9A5+CpMDulBnjYrE0AwOjq4wBNFtoQbg0mRRJYlRSAbkI+wA+WEcwtYN/IrioF24rUmsVcd3f3CEA9ZFZXIY8IHibcbvelcteBlPMg1JS0EfzXXgGA7+UfANAN6Nd4H/Li0tKSZCXoHUUec8W0mVEzbQT/tQlgskgggty+jzGRxDDSaYKnU5m0KW7Ycj9GRCD16lVTyOVy2a1WawLGad4mwB/ijrA1iMRd3od8itV6xCLPf0mpdtoIfiRq1VPIYrFQ9DnJKfFLkLmH/nVh7BzA05WhZuDJt+QoFMBwdTd9MEA3BMXW09NjSafTRxHxNEBvYpBuIKhxsk2P/I47BQQAdj9OllF82JvJZI7hfsfGjZRIzcCTXx6xEgwGA0UZQL/jRSWgkm9AMI6BZ52dnaPRaJS+06RVTCGkiKtKlNMA/AXvI7j++ISNHpmenv6qCeISJxUJ2Gy21e3t7Thy3IVnA99NEVjURZ+xuRHk6K8SW/rrUhrhP+1h/SFrI2pHoB2BdgT0EoE/XD0Yrfi3Ps4AAAAASUVORK5CYII=";
+const _imports_13 = "" + __buildAssetsURL("edit-icon-white.29b27582.svg");
+const _imports_14 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAADpUlEQVRoBe2ZO2gVQRSGTXxEo4UJYuEjGkHBoCjaKqIWViKIKFgJVkpANGlErGORSkUURBAFGy3FwkZFfKOJDxBBBG0EwfiM78f3x2wye+7c3b25s5uL5MB/d845M3P+M7MzO7u3blyyNCW7U72fqfE9tVa8wlRUtRuRTKFVJ+gBCvynSqiPE6AOpMlsKjwGinkJNIOKpIXaj0C1pH3t12Zg0m1iP0EXp0SpH/Rq5C+CJYm1R+5UUmnSbyq0od8AS43dq3Zg9Y1ctbZv9HsMZLmFplOv18OjD9sakCgP8Lpkr6FrBLSIq8Ek2lciSuIKcLmo/AVsAV7R6NgFu8hbsxjjZMKcBzaJX9jaLQWRbwR225qI7aetnJOu3UaLfCVYDLQbzQCtwCddGA8AJTggSsBmO2HQl9dFe/0OoFtVA2Xjp+mnaDMkRSYwjaj7wRuQRjLNvz7KoKgENhLwZQDiUWKbi0qggUDHU4g/x38S7AYbgNbDMnAQRITd623sQztcnjOgBXqzDAltHEfBCuCT7Rj1HHGJq6xjhm7FIckrgZlE8B1NtB1qRuQvJ/tw/AaW/Gls2iFjkkcCGqG7wBLQGlgVix5XtK13A9tO+iEgf4nkkcAFolgSt7Bpfy8n9TjOAttOM7anXCPZQyewiz4tCe332vuTZCtO2+4rtm1JjeQLmcAs+vsAXCI6FuuMkybtVHDbvUdfl9ZI/pAJnKE/l8Qn9DYFySBK8iFQ+xdgOcgkoRJYSDR7LOjMxGC40niKC0DJTjNcpbQUKgGd+93Rf1YpkVJq2SwhEtDT9i1wE9iZLXxFteZSWw+/I2BO1DJEApvozCX/Dl2vqaHlHh1Gce5EnYdI4LDTsQLEjrtRoCqvmmX36axygx4eIWS16eSy0UOoWuDuk1hl2areRjUI/SCaWl3ngdDiu1MaQ8yAFpN7vyuZV6HZl+svRALNpvPX6Lo/C5EQCWhqXfnoKnmXQyTwFJI6MkRyPSoUdfUtjkq/SuiMfw50Ab0L5CE+ngOz73NUmkAehG2fPp5BdiEbqFA9xBoolLANNpaAHZGi9bEZKHrEbbyxGbAjUrT+X8yAPh79MCPXYvRaUOcbEvpbTP+dDUgPv+4Lid6o8ngp+Ret8t9WmlwFLsf7bjcdxulWrNXyXjcBvVH5PoXXKvle+OrfzJjovo8+7dUqcfESeX0f8oqy0tToj2/fvyOjlZi46J4Xt9jIu58p8JVIU4lldAx95cL+BRfIP0NGsZjIAAAAAElFTkSuQmCC";
+const _imports_15 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAACWUlEQVRoBe2Zyy4sURSGm7QBI2dESI4WyTFhxuQ8BPEQLhPEROI2FzPxHNIJOZwnOE9gSjsuESNDA9f/a7WS1a2LiC69S/ZK/uy1V7H3vy5VvatWofBaumSaE/4KF8Kd8JSCBdk/K6yRtj57w+FQmBU6hTdlSlcvhbQF6+1ZO1C/H85MeA/a3WRJ+q7Q52yhqf0iVBYWjVhbohB5yNscc0XYS8ZbDA3kn2xHDewfMY3oj3+n/AMlMyhMCiXB5FEKnOFXoOZ92TxoviIUhVCkQ0RWBbhZWZ1Lr94T3LBmZIR8qLImYp7rDER52pjxWHpIkYefFzJREYzvATcxNWiyL+XeJgGOPFardZ9wG8WBHkf0zOmhqv8dsV4c8CUTcvSNt+dYxIFcS3Sg1emLGWh1Bjj7VH/NEiLNONtk7dNbZ6es947rxwjECMQI1EWAx+i4sCx0110LfXojgls4wAtCScijVDhK8HaTV3kiA2MCJfQjZ15QQps54xzpxgjECHy7CPAYzf0LjX2mY2zG9/6ss1zTEIkv9VmH+731Ywbei1DW179FBmq+9mYdsSasX/M1nQxcu0V/Oj1UteSIXaHTRLbfghPptHFCFbidCsb3D0TpgJuBkW5gqLIhYp7rNERpVV64C7Qy6QaGlAm4rAu+zXqmeSdnIYT2fVnwT6VTzWn60blsZaN7SPvDb0AwodGNrVpCZlyU4j30qUrTOZd8Vlgjbf1GdjjO26Y+4tsy0r6nnEIVuvNEfscIegew0YP9JXBjHwiXgv+d0PRLhb3hQKlw7B9OdA0v8gypmLKP2lSLggAAAABJRU5ErkJggg==";
+const _imports_16 = "" + __buildAssetsURL("title.98892974.png");
+const _imports_17 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAA4CAYAAABNGP5yAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAOAAAAACP8+m+AAADhUlEQVRoBe2aS4hPURzHZ7zfj4USmTGTkGcodiRRNh5JNsooO7NhgyJSyoayIDbySFlYkLLwyAaRR5Ty2DCTJPIYeYfx+U5z9O/M+f/N/zf3/q//vfdX3+4959zze3zP6557T01NxqU2EP8M8prAPDAaVLN8x/lWcBEcA+9AURlCyVHwG7SnEG3EtAEERcHfAmkM3I9pd4iBUxkJ3pGxwpGgOWAuUOv7cpuM60DjqFplOI4vA2O8AJ6TngB+Kf8QcMy46zbyQhOknq82GYbDV4GLzV0Xu0AeeoV3XUGKrg3E4k/uOxVfL+AvdWIrbfKMgF54QdUrLQL6ewXfvHRakp+8QHorLQIyLTkBmW5+gs98D+jTwx4wivpDe6jDr/6WDL23V0SsBDTi3XkwJSYvr6B3Ofgck/6/aq1DQG+KcQUv5xaB9bqJW6wEdLxExOzc+Jj1d6i3EvCkAs49qoAN8yqwB+cugx8xOPkFnSfBiRh0d1FpnQRfoUm7Kb1OarcVpbyPUtm/dFkJcHq1n66ow85wVFfrHBCV/cT15AQk3gQJO5D3gIQbIHHzme8B1mVQxK0DC8GABJuxFdsHgb75mcRKQDPWDpgsRl9pNSonAdO3TOsQWBJ9HGaNddQ070ytBMSxBzAzQEVT68uglYDj1NWPhv9BbuLEY6sj1jngHAZngwVgoNV4BPVa0HEWmBvDSoB8f9AJ3VetWIdA1QbsO54T4DOStXTeA7LW4n68eQ+AkXaPlb5eOi1Jv7E73h2U+caLcJqXTkNSh6UavEBeu/QZbtQLHPSld74rTMl1X0F8Ls41iq0WrAIioVC+ktgPLgH/aEnhc1Hda3OlP0E/y1SoHqweW2zY1lO2FqwEhfKRRB1oU6Z+buhMoGMmqatOq80E3ZURPHgfWPzd7huZTIbmAouyKOvoUOYO0J09yiajv/r1HtQ/nYKnRqVRkiBdd8BUUEo2Uliu3dPUKbl7HcQDm4G1a5XrUKnn9ZFjK9AQDclgMq+BUjpUJj0XwFLQRTQJFhMdfRkLZChOGYdyzdKNRYzoHHMTCH30kP9a3kaCkHwgswWUO7mGdMWap265t9PRUItqVdoCivUGitIhswjjHgiRoLwbQF+AUy39iG4X0IoQIuIl+XEPS0wkL3rB0QfPEAlzknevMh5ozGu913E5R4R6gFarTMlEoj0MjgC9tEUmfwCaJfF0KbQc/QAAAABJRU5ErkJggg==";
+const _imports_18 = "" + __buildAssetsURL("mini-code.71ebcc53.png");
+const _imports_19 = "" + __buildAssetsURL("menu-icon-gray.d61f02b1.svg");
+const _imports_20 = "" + __buildAssetsURL("comment-icon-gray.2c8779f9.svg");
+const _imports_21 = "data:image/png;base64,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";
+const _imports_22 = "" + __buildAssetsURL("tick-no.179037b3.svg");
+const _imports_23 = "" + __buildAssetsURL("tick-option.e092d22f.svg");
+const _imports_24 = "" + __buildAssetsURL("QRCode-icon.a105d5fc.svg");
+const _imports_25 = "" + __buildAssetsURL("delete-icon.4d386dce.svg");
+const _imports_26 = "" + __buildAssetsURL("arrows-icon.271dd0d3.svg");
+const _imports_27 = "" + __buildAssetsURL("tick-orange.233abc69.svg");
+const _imports_28 = "" + __buildAssetsURL("issue-bj.44adad8c.svg");
+const _export_sfc = (sfc, props) => {
+ const target = sfc.__vccOpts || sfc;
+ for (const [key, val] of props) {
+ target[key] = val;
+ }
+ return target;
+};
+const _sfc_main$2 = {
+ name: "#answer-app",
+ async setup() {
+ const $ajax = (url, data) => {
+ url = url.indexOf("//") > -1 ? url : baseURL2 + url;
+ return new Promise(function(resolve, reject) {
+ axios.post(url, data, {
+ emulateJSON: true,
+ withCredentials: true,
+ headers: {
+ authorization: "017189d7d01fa8ccf649f36e82807937"
+ // 头部标记
+ }
+ }).then(function(res) {
+ var data2 = null;
+ try {
+ data2 = typeof res.data == "string" ? JSON.parse(res.data) : res.data;
+ if (data2["code"] != 200)
+ handleMsg("error", data2["message"] || "报错了,请重试!!!");
+ if (data2["code"] == 401)
+ window.location.href = "https://passport.gter.net";
+ } catch (error) {
+ }
+ resolve(data2);
+ }).catch((err) => {
+ if (err.response.status == 401)
+ window.location.href = "https://passport.gter.net";
+ });
+ });
+ };
+ const route = useRoute();
+ const baseURL2 = "https://ask.gter.net";
+ let type = ref("list");
+ let originUrl = ref("");
+ onUnmounted(() => {
+ window.removeEventListener("keydown", handleKeydown);
+ window.removeEventListener("scroll", handleScroll);
+ });
+ const getCurrentUrl = () => {
+ return window.location.href;
+ };
+ let myCount = ref({});
+ let isSearchMode = ref(false);
+ const setHistoricalSearchList = () => {
+ historicalSearchList.value.unshift(keyword.value);
+ historicalSearchList.value = [...new Set(historicalSearchList.value)];
+ historicalSearchList.value = historicalSearchList.value.slice(0, 10);
+ localStorage.setItem("historical-Search", JSON.stringify(historicalSearchList.value));
+ };
+ const searchClick = () => {
+ if (keyword.value == "")
+ return;
+ setHistoricalSearchList();
+ page = 1;
+ list.value = [];
+ type.value = "list";
+ pitchIndex.value = null;
+ replaceState({
+ keyword: keyword.value
+ });
+ searchBlur();
+ getList();
+ };
+ const searchFocus = () => {
+ if (historicalSearchList.value.length == 0)
+ return;
+ historicalSearchState.value = true;
+ };
+ const searchBlur = () => {
+ setTimeout(() => historicalSearchState.value = false, 300);
+ };
+ const handleClickHistoricalItem = (value) => {
+ keyword.value = value;
+ searchClick();
+ };
+ const handleClickClear = () => {
+ keyword.value = "";
+ page = 1;
+ list.value = [];
+ type.value = "list";
+ pitchIndex.value = null;
+ getList();
+ };
+ let historicalSearchState = ref(false);
+ let historicalSearchList = ref([]);
+ let tabListFixeState = ref(false);
+ const handleScroll = () => {
+ const scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
+ document.documentElement.scrollHeight;
+ document.documentElement.clientHeight;
+ if (scrollTop > 115 && type.value == "list")
+ tabListFixeState.value = true;
+ else
+ tabListFixeState.value = false;
+ };
+ let keyword = ref("");
+ let keywordText = ref("");
+ let list = ref([]);
+ let page = 1;
+ let total = ref(0);
+ let loading = ref(false);
+ let inTheEndState = ref(false);
+ let isListEmptyState = ref();
+ const getList = () => {
+ if (page == 0 || loading.value)
+ return;
+ loading.value = true;
+ $ajax("/api/lists", {
+ page,
+ limit: 20,
+ keyword: keyword.value,
+ type: typePitch.value
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ list.value = list.value.concat(data.data || []);
+ total.value = data.count || 0;
+ keywordText.value = keyword.value || "";
+ if (list.value.length >= data["count"])
+ page = 0;
+ else
+ page++;
+ if (page == 0 && list.value.length != 0)
+ inTheEndState.value = true;
+ else
+ inTheEndState.value = false;
+ if (list.value.length == 0)
+ isListEmptyState.value = true;
+ else
+ isListEmptyState.value = false;
+ if (keyword.value)
+ isSearchMode.value = true;
+ else
+ isSearchMode.value = false;
+ }).finally(() => loading.value = false);
+ };
+ let typeList = ref([]);
+ let typePitch = ref(null);
+ let pageHeaderHeight = ref(0);
+ let pageListHeight = ref(0);
+ let detailsInfo = ref({});
+ let detailsIsanswered = ref(0);
+ let detailsIscollection = ref(0);
+ let detailsIsmyself = ref(0);
+ let detailsToken = "";
+ let detailShare = ref({});
+ let detailLoading = ref(false);
+ const getDetails = (uniqid, index, isOpenAnswer) => {
+ if (detailLoading.value)
+ return;
+ detailLoading.value = true;
+ detailsInfo.value = {};
+ answerList.value = [];
+ answerPage.value = 0;
+ $ajax("/api/details", { uniqid }).then((res) => {
+ if (res.code != 200) {
+ type.value = "list";
+ return;
+ }
+ let data = res.data;
+ detailsInfo.value = data["info"] || {};
+ detailsIsanswered.value = data["isanswered"] || 0;
+ detailsIscollection.value = data["iscollection"] || 0;
+ detailsIsmyself.value = data["ismyself"] || 0;
+ detailsToken = data["token"] || "";
+ detailShare.value = data["share"] || {};
+ type.value = "details";
+ if (index !== null && index !== void 0)
+ cut(index);
+ else
+ calculateListIndex(data.info, uniqid);
+ answerList.value = [];
+ answerPage.value = 1;
+ getAnswerList();
+ closeAllTransmitState();
+ if (isOpenAnswer)
+ openIAnswer();
+ seo.value = data.seo;
+ yourAnswer.value = {
+ text: "",
+ anonymous: 0
+ };
+ }).finally(() => {
+ detailLoading.value = false;
+ });
+ };
+ const calculateListIndex = (info, uniqid) => {
+ let targetList = [...list.value];
+ if (targetList.length == 0 && isSearchMode.value == false) {
+ setTimeout(() => calculateListIndex(info, uniqid), 200);
+ return;
+ }
+ let valve = false;
+ targetList.forEach((element, index) => {
+ if (element["uniqid"] == uniqid) {
+ cut(index);
+ valve = true;
+ }
+ });
+ if (!valve) {
+ let content = "";
+ if (info["content"].indexOf("
{
+ if (answerLoading || answerPage.value == 0)
+ return;
+ answerLoading = true;
+ $ajax("/api/details/answerList", {
+ token: detailsToken,
+ limit: 20,
+ page: answerPage.value
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ data.data.forEach((element) => {
+ element["commentList"] = [];
+ });
+ answerList.value = answerList.value.concat(data.data);
+ if (answerList.value.length == data["count"])
+ answerPage.value = 0;
+ else
+ answerPage.value++;
+ }).finally(() => answerLoading = false);
+ };
+ const operateLike = (token, index) => {
+ $ajax("/api/operate/like", {
+ token
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ answerList.value[index]["islike"] = data["status"];
+ answerList.value[index]["likenum"] = data["count"];
+ handleMsg("success", res["message"] || "操作成功");
+ });
+ };
+ const operateCollect = (token = detailsToken, index) => {
+ $ajax("/api/operate/collect", {
+ token
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ myCollectionPage = 1;
+ myCollectionList.value = [];
+ if (data["type"] == "askquestioncollection") {
+ detailsIscollection.value = data["status"];
+ detailsInfo.value["collectionnum"] = data["count"];
+ } else {
+ answerList.value[index]["iscollection"] = data["status"];
+ answerList.value[index]["collectionnum"] = data["count"];
+ }
+ handleMsg("success", res["message"] || "操作成功");
+ if (data["status"])
+ myCount.value["collect"]++;
+ else
+ myCount.value["collect"]--;
+ });
+ };
+ let IAnswerState = ref(false);
+ let IAnswerEditState = ref(false);
+ let IAnswerInfo = ref({});
+ const openIAnswer = (index, type2) => {
+ if (index == null) {
+ IAnswerInfo.value = {
+ title: detailsInfo.value["title"],
+ content: detailsInfo.value["content"],
+ anonymous: 0
+ };
+ IAnswerState.value = true;
+ nextTick(() => handleInput());
+ } else {
+ if (type2 == "my") {
+ IAnswerInfo.value = {
+ title: detailsInfo.value["title"],
+ ...myAnswerList.value[index],
+ text: myAnswerList.value[index]["content"],
+ content: detailsInfo.value["content"]
+ };
+ myType.value = "";
+ } else {
+ IAnswerInfo.value = {
+ title: detailsInfo.value["title"],
+ ...answerList.value[index],
+ text: answerList.value[index]["content"],
+ content: detailsInfo.value["content"]
+ };
+ }
+ IAnswerEditState.value = true;
+ nextTick(() => handleInput());
+ }
+ };
+ const closeIAnswer = () => {
+ IAnswerState.value = false;
+ IAnswerEditState.value = false;
+ isDirectlyListIAnswer = false;
+ };
+ const amendIAnswer = () => {
+ IAnswerInfo.value["anonymous"] = IAnswerInfo.value["anonymous"] == 0 ? 1 : 0;
+ };
+ const submitAnswer = (type2) => {
+ let questionTextarea = null;
+ if (type2 == "you")
+ questionTextarea = document.querySelector(".your-answer-textarea");
+ else
+ questionTextarea = document.querySelector(".question-textarea");
+ if (questionTextarea)
+ IAnswerInfo.value["text"] = questionTextarea.innerHTML;
+ $ajax("/api/publish/answerSubmit", {
+ token: IAnswerInfo.value["token"] || detailsToken,
+ anonymous: IAnswerInfo.value["anonymous"] || 0,
+ content: IAnswerInfo.value["text"]
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ if (isDirectlyListIAnswer) {
+ getDetails(IAnswerInfo.value["uniqid"], IAnswerInfo.value["index"]);
+ IAnswerState.value = false;
+ } else {
+ answerList.value = [];
+ answerPage.value = 1;
+ getAnswerList();
+ closeIAnswer();
+ if (!IAnswerInfo.value["token"])
+ myCount.value["answer"]++;
+ if (type2 == "you")
+ questionTextarea.innerHTML = "";
+ }
+ handleMsg("success", res["message"] || "操作成功");
+ });
+ };
+ const openCommentState = (index) => {
+ if (answerList.value[index]["commentState"])
+ answerList.value[index]["commentState"] = false;
+ else
+ answerList.value[index]["commentState"] = true;
+ if (answerList.value[index]["commentList"].length == 0 && answerList.value[index]["commentnum"] != 0)
+ getAnswerCommentList(index);
+ };
+ let answerCommentLimit = 3;
+ const getAnswerCommentList = (index) => {
+ getAnswerCommentPublic(index).then((res) => {
+ let data = res.data;
+ answerList.value[index]["commentList"] = answerList.value[index]["commentList"].concat(data.data);
+ answerList.value[index]["commentCount"] = data["count"];
+ });
+ };
+ const handleAllComment = (index) => {
+ answerCommentLimit = 1e3;
+ getAnswerCommentPublic(index).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ let slice3 = data.data.slice(3);
+ let merged1 = [...answerList.value[index]["commentList"], ...slice3.filter((item2) => !answerList.value[index]["commentList"].find((item1) => item1.id == item2.id))];
+ answerList.value[index]["commentList"] = merged1;
+ handleMsg("success", res["message"] || "操作成功");
+ });
+ };
+ const getAnswerCommentPublic = (index) => {
+ return new Promise((resolve, reject) => {
+ $ajax("/api/comment/lists", {
+ token: answerList.value[index]["token"],
+ limit: answerCommentLimit,
+ childlimit: 1
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ resolve(res);
+ });
+ });
+ };
+ const submitAnswerComments = (index, ind, i) => {
+ const targetAnswerList = [...answerList.value];
+ let content = "";
+ let parentid = null;
+ let token = targetAnswerList[index]["token"];
+ if (i != null) {
+ content = targetAnswerList[index]["commentList"][ind]["child"][i]["commentInput"];
+ parentid = targetAnswerList[index]["commentList"][ind]["child"][i]["id"];
+ } else if (ind != null) {
+ content = targetAnswerList[index]["commentList"][ind]["commentInput"];
+ parentid = targetAnswerList[index]["commentList"][ind]["id"];
+ } else
+ content = targetAnswerList[index]["commentInput"];
+ $ajax("/api/comment/submit", {
+ content,
+ token,
+ parentid
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ if (i != null) {
+ let targetData = {
+ id: data["commentid"],
+ content,
+ isauthor: 1,
+ islike: 0,
+ likenum: 0,
+ reply: {
+ nickname: targetAnswerList[index]["commentList"][ind]["child"][i]["nickname"]
+ },
+ ...data
+ };
+ targetAnswerList[index]["commentList"][ind]["child"].unshift(targetData);
+ targetAnswerList[index]["commentList"][ind]["childnum"]++;
+ } else if (ind != null) {
+ let targetData = {
+ id: data["commentid"],
+ content,
+ isauthor: 1,
+ islike: 0,
+ likenum: 0,
+ reply: [],
+ ...data
+ };
+ targetAnswerList[index]["commentList"][ind]["child"].unshift(targetData);
+ targetAnswerList[index]["commentList"][ind]["childnum"]++;
+ } else {
+ let targetData = {
+ id: data["commentid"],
+ content,
+ isauthor: 1,
+ islike: 0,
+ likenum: 0,
+ ...data,
+ child: []
+ };
+ targetAnswerList[index]["commentList"].unshift(targetData);
+ targetAnswerList[index]["commentCount"]++;
+ }
+ targetAnswerList[index]["commentnum"] = data["count"];
+ closeAnswerCommentsChild();
+ handleMsg("success", res["message"] || "操作成功");
+ });
+ };
+ const operateAnswerCommentsLike = (token, index, ind, i) => {
+ $ajax("/api/comment/like", {
+ token
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ const targetAnswerList = [...answerList.value];
+ if (i == null) {
+ targetAnswerList[index]["commentList"][ind]["islike"] = data["status"];
+ targetAnswerList[index]["commentList"][ind]["likenum"] = data["likenum"];
+ } else {
+ targetAnswerList[index]["commentList"][ind]["child"][i]["islike"] = data["status"];
+ targetAnswerList[index]["commentList"][ind]["child"][i]["likenum"] = data["likenum"];
+ }
+ answerList.value = targetAnswerList;
+ handleMsg("success", res["message"] || "操作成功");
+ });
+ };
+ const openAnswerCommentsChild = (index, ind, i) => {
+ closeAnswerCommentsChild();
+ if (i == null)
+ answerList.value[index].commentList[ind]["childState"] = true;
+ else
+ answerList.value[index].commentList[ind]["child"][i]["childState"] = true;
+ };
+ const closeAnswerCommentsChild = (index, ind, i) => {
+ const targetAnswerList = [...answerList.value];
+ targetAnswerList.forEach((element) => {
+ if (element["commentList"] && element["commentList"].length != 0) {
+ element["commentList"].forEach((ele) => {
+ ele["childState"] = false;
+ if (ele["child"] && ele["child"].length != 0) {
+ ele["child"].forEach((el) => {
+ el["childState"] = false;
+ });
+ }
+ });
+ }
+ });
+ answerList.value = targetAnswerList;
+ };
+ const alsoCommentsData = (index, ind) => {
+ const targetAnswerList = [...answerList.value];
+ const parentid = targetAnswerList[index]["commentList"][ind]["id"];
+ const token = targetAnswerList[index]["token"];
+ $ajax("/api/comment/childrenList", {
+ token,
+ parentid,
+ limit: 20,
+ page: 1,
+ childlimit: 1
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ let merged1 = [...targetAnswerList[index]["commentList"][ind]["child"], ...data.data.filter((item2) => !targetAnswerList[index]["commentList"][ind]["child"].find((item1) => item1.id == item2.id))];
+ targetAnswerList[index]["commentList"][ind]["child"] = merged1;
+ answerList.value = targetAnswerList;
+ });
+ };
+ let myType = ref("");
+ const handleMy = (key) => {
+ if (key == "collect") {
+ myCollectionList.value = [];
+ myCollectionPage = 1;
+ getMyCollection();
+ } else if (key == "answers") {
+ myAnswerList.value = [];
+ myAnswerPage = 1;
+ getMyAnswer();
+ } else if (key == "questions") {
+ myQuestionsList.value = [];
+ myQuestionsPage = 1;
+ getMyQuestions();
+ }
+ };
+ let myCollectionList = ref([]);
+ let myCollectionCount = ref(0);
+ let myCollectionPage = 1;
+ let myCollectionLading = false;
+ const getMyCollection = () => {
+ if (myCollectionPage == 0 || myCollectionLading)
+ return;
+ myCollectionLading = true;
+ $ajax("/api/user/collect", {
+ limit: 20,
+ page: myCollectionPage
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ myType.value = "collect";
+ myCollectionList.value = myCollectionList.value.concat(data.data);
+ myCollectionCount.value = data.count;
+ if (myCollectionList.value.length != data["count"])
+ myCollectionPage++;
+ else
+ myCollectionPage = 0;
+ }).finally(() => myCollectionLading = false);
+ };
+ const cancelCollection = (token, index) => {
+ $ajax("/api/user/deleteCollect", {
+ token
+ }).then((res) => {
+ if (res.code == 200) {
+ myCollectionList.value.splice(index, 1);
+ myCollectionCount.value--;
+ myCount.value["collect"]--;
+ handleMsg("success", res["message"] || "操作成功");
+ }
+ });
+ };
+ const handleCollectionScroll = (e) => {
+ const el = e.target;
+ if (el.scrollHeight - el.scrollTop >= el.clientHeight + 10)
+ return;
+ getMyCollection();
+ };
+ let myAnswerList = ref([]);
+ let myAnswerCount = ref(0);
+ let myAnswerPage = 1;
+ let myAnswerloadimg = false;
+ const getMyAnswer = () => {
+ if (myAnswerPage == 0 || myAnswerloadimg)
+ return;
+ myAnswerloadimg = true;
+ $ajax("/api/user/answer", {
+ limit: 20,
+ page: myAnswerPage
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ data.data.forEach((element) => {
+ element["popupState"] = false;
+ });
+ myAnswerList.value = myAnswerList.value.concat(data.data);
+ myAnswerCount.value = data.count;
+ if (myAnswerList.value.length != data["count"])
+ myAnswerPage++;
+ else
+ myAnswerPage = 0;
+ myType.value = "answers";
+ }).finally(() => myAnswerloadimg = false);
+ };
+ const handleAnswersScroll = (e) => {
+ const el = e.target;
+ if (el.scrollHeight - el.scrollTop >= el.clientHeight + 10)
+ return;
+ getMyAnswer();
+ };
+ let answerIndexOld = null;
+ const cutAnswerPopupState = (index) => {
+ myAnswerList.value[index]["popupState"] = true;
+ if (answerIndexOld == index) {
+ myAnswerList.value[index]["popupState"] = false;
+ answerIndexOld = null;
+ } else {
+ myAnswerList.value[index]["popupState"] = true;
+ if (answerIndexOld != null)
+ myAnswerList.value[answerIndexOld]["popupState"] = false;
+ answerIndexOld = index;
+ }
+ };
+ const changeAnonymous = (token, anonymous, index) => {
+ $ajax("/api/publish/changeAnonymous", {
+ token,
+ anonymous
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ res.data;
+ myAnswerList.value[index]["anonymous"] = anonymous;
+ cutAnswerPopupState(index);
+ handleMsg("success", res["message"] || "操作成功");
+ });
+ };
+ let myQuestionsList = ref([]);
+ let myQuestionsCount = ref(0);
+ let myQuestionsPage = 0;
+ let myQuestionsloading = false;
+ const getMyQuestions = () => {
+ if (myQuestionsPage == 0 || myQuestionsloading)
+ return;
+ myQuestionsloading = true;
+ $ajax("/api/user/questions", {
+ limit: 20,
+ page: myQuestionsPage
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ myQuestionsList.value = myQuestionsList.value.concat(data.data);
+ myQuestionsCount.value = data.count;
+ myType.value = "questions";
+ if (myQuestionsList.value.length != data["count"])
+ myQuestionsPage++;
+ else
+ myQuestionsPage = 0;
+ }).finally(() => myQuestionsloading = false);
+ };
+ const handleQuestionsScroll = (e) => {
+ const el = e.target;
+ if (el.scrollHeight - el.scrollTop >= el.clientHeight + 10)
+ return;
+ getMyQuestions();
+ };
+ let questionsIndexOld = null;
+ const cutQuestionsPopupState = (index) => {
+ myQuestionsList.value[index]["popupState"] = true;
+ if (questionsIndexOld == index) {
+ myQuestionsList.value[index]["popupState"] = false;
+ questionsIndexOld = null;
+ } else {
+ myQuestionsList.value[index]["popupState"] = true;
+ if (questionsIndexOld != null)
+ myQuestionsList.value[questionsIndexOld]["popupState"] = false;
+ questionsIndexOld = index;
+ }
+ };
+ const changeAnonymousQuestions = (token, anonymous, index) => {
+ $ajax("/api/publish/changeAnonymous", {
+ token,
+ anonymous
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ res.data;
+ myQuestionsList.value[index]["anonymous"] = anonymous;
+ cutQuestionsPopupState(index);
+ handleMsg("success", res["message"] || "操作成功");
+ });
+ };
+ let questionsSetp = ref(0);
+ const cutQuestionsSetp = (value) => questionsSetp.value = value;
+ let questionsTypeList = ref([]);
+ let questionsObj = ref({
+ // 提问的内容
+ token: "",
+ title: "",
+ content: "",
+ tags: "",
+ tid: "",
+ anonymous: 0
+ });
+ const questionsInit = () => {
+ $ajax("/api/publish/questions").then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ questionsObj.value["token"] = data["token"];
+ questionsTypeList.value = data["typeList"] || [];
+ cutQuestionsSetp(1);
+ });
+ };
+ const choosingTheme = (id) => {
+ questionsObj.value.tid = id;
+ cutQuestionsSetp(2);
+ };
+ const cutAnonymous = () => {
+ questionsObj.value.anonymous = questionsObj.value.anonymous == 0 ? 1 : 0;
+ };
+ const postingIssue = () => {
+ $ajax("/api/publish/questionsSubmit", questionsObj.value).then((res) => {
+ if (res.code == 200) {
+ myCount.value["questions"]++;
+ questionsSetp.value = 0;
+ questionsObj.value = {
+ token: "",
+ title: "",
+ content: "",
+ tags: "",
+ tid: "",
+ anonymous: 0
+ };
+ handleMsg("success", res["message"] || "操作成功");
+ let data = res.data;
+ getDetails(data["uniqid"]);
+ return;
+ }
+ handleMsg("error", res["message"] || "刷新重试!!!");
+ });
+ };
+ let pitchIndex = ref(null);
+ const cut = (index) => {
+ pitchIndex.value = index;
+ setTimeout(() => scrollLeftInMiddle(), 350);
+ };
+ const scrollLeftInMiddle = () => {
+ {
+ return;
+ }
+ };
+ const listStyle = () => {
+ const newtype = type.value;
+ let width = "";
+ let margin = "";
+ let height = "";
+ if (newtype == "list") {
+ width = "1200px";
+ margin = "0 auto";
+ height = Math.ceil(list.value.length / 2) * 128 + "px";
+ } else {
+ width = "calc((100vw - 1200px) / 2 + 512px)";
+ margin = "initial";
+ height = list.value.length * 128 + "px";
+ }
+ return {
+ width,
+ margin,
+ height
+ };
+ };
+ const itemStyle = (index, content) => {
+ const newtype = type.value;
+ let obj = {};
+ if (newtype == "list") {
+ let top = Math.floor(index / 2) * 128 + "px";
+ obj["top"] = top;
+ if (index % 2 == 0)
+ obj["left"] = 0;
+ else
+ obj["left"] = "649px";
+ } else {
+ obj["top"] = index * 128 + "px";
+ obj["left"] = 0;
+ obj["width"] = "100%";
+ obj["paddingLeft"] = "calc((100vw - 1200px) / 2)";
+ }
+ return obj;
+ };
+ const listBoxStyle = () => {
+ const newtype = type.value;
+ let obj = {};
+ if (newtype == "list")
+ obj["overflow"] = "visible";
+ else
+ obj["height"] = pageListHeight.value + "px";
+ return obj;
+ };
+ const handleDate = (dateTimeStamp = /* @__PURE__ */ new Date()) => {
+ dateTimeStamp = dateTimeStamp ? dateTimeStamp : null;
+ var timestamp = new Date(dateTimeStamp);
+ timestamp = timestamp.getTime();
+ var minute = 1e3 * 60;
+ var hour = minute * 60;
+ var day = hour * 24;
+ var now = (/* @__PURE__ */ new Date()).getTime();
+ var diffValue = now - timestamp;
+ var result;
+ if (diffValue < 0)
+ return;
+ var dayC = diffValue / day;
+ var hourC = diffValue / (hour + 1);
+ var minC = diffValue / minute;
+ if (dayC >= 7) {
+ let date = new Date(timestamp);
+ let Y = date.getFullYear() + "-";
+ let M = (date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1) + "-";
+ let D = (date.getDate() < 10 ? "0" + date.getDate() : date.getDate()) + " ";
+ let h2 = (date.getHours() < 10 ? "0" + date.getHours() : date.getHours()) + ":";
+ let m = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();
+ result = "" + Y + M + D + h2 + m;
+ } else if (dayC >= 1)
+ result = "" + Math.round(dayC) + "天前";
+ else if (hourC >= 1)
+ result = "" + Math.round(hourC) + "小时前";
+ else if (minC >= 1)
+ result = "" + Math.round(minC) + "分钟前";
+ else
+ result = "刚刚";
+ return result;
+ };
+ let questionsTransmitState = ref(false);
+ let questionsTransmitMaskState = ref(false);
+ const closeTransmitState = () => {
+ questionsTransmitState.value = true;
+ questionsTransmitMaskState.value = true;
+ countForwardingTimes(detailsToken);
+ };
+ const closeAllTransmitState = () => {
+ answerList.value.forEach((element) => {
+ element["transmitState"] = false;
+ });
+ questionsTransmitState.value = false;
+ questionsTransmitMaskState.value = false;
+ };
+ const handleAnswerTransmitList = (Iindex, type2) => {
+ answerList.value[Iindex]["transmitState"] = true;
+ questionsTransmitMaskState.value = true;
+ countForwardingTimes(answerList.value[Iindex]["token"]);
+ };
+ const countForwardingTimes = (token) => {
+ $ajax("/api/operate/share", {
+ token
+ });
+ };
+ const closeDetailMode = () => {
+ type.value = "list";
+ pitchIndex.value = null;
+ seo.value = {};
+ };
+ const handleListScroll = (e) => {
+ const el = e.target;
+ if (el.scrollHeight - el.scrollTop >= el.clientHeight + 40)
+ return;
+ getList();
+ };
+ const handlePaste = (event, type2) => {
+ const items = (event.clipboardData || event.originalEvent.clipboardData).items;
+ for (const item of items) {
+ if (item.type.indexOf("image") === 0) {
+ event.preventDefault();
+ handleMsg("warning", "上传图片中");
+ const file = item.getAsFile();
+ const reader = new FileReader();
+ reader.onload = (e) => {
+ const base64 = e.target.result;
+ uploadImg(base64).then((res) => {
+ let questionTextarea = null;
+ if (type2 == "you")
+ questionTextarea = document.querySelector(".your-answer-textarea");
+ else
+ questionTextarea = document.querySelector(".question-textarea");
+ let imgNode = document.createElement("img");
+ imgNode.setAttribute("src", res.url);
+ imgNode.setAttribute("data-aid", res.aid);
+ questionTextarea.appendChild(imgNode);
+ if (type2 == "you")
+ handleInputYou();
+ else
+ handleInput();
+ handleMsg("success", "上传成功");
+ });
+ };
+ reader.readAsDataURL(file);
+ }
+ }
+ };
+ const uploadImg = (base64) => {
+ return new Promise((resolve, reject) => {
+ $ajax("/api/common/upload", {
+ data: base64
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ resolve(data);
+ });
+ });
+ };
+ let questionPlaceholderState = ref(false);
+ let yourAnswerPlaceholderState = ref(true);
+ const handleInput = () => {
+ const questionTextarea = document.querySelector(".question-textarea");
+ const html = questionTextarea.innerHTML;
+ if (html)
+ questionPlaceholderState.value = false;
+ else
+ questionPlaceholderState.value = true;
+ };
+ const handleInputYou = () => {
+ const questionTextarea = document.querySelector(".your-answer-textarea");
+ const html = questionTextarea.innerHTML;
+ if (html)
+ yourAnswerPlaceholderState.value = false;
+ else
+ yourAnswerPlaceholderState.value = true;
+ };
+ let msg = ref({});
+ const handleMsg = (type2, text) => {
+ msg.value["state"] = true;
+ msg.value["type"] = type2;
+ msg.value["text"] = text;
+ };
+ const boxClass = () => {
+ msgShowTimer();
+ return type ? `box-item-${msg.value["type"]}` : "";
+ };
+ let msgTimer = null;
+ const msgShowTimer = () => {
+ clearTimeout(msgTimer);
+ msgTimer = setTimeout(() => {
+ msg.value["state"] = false;
+ }, 1e3);
+ };
+ let copyText = (text) => {
+ if (navigator.clipboard) {
+ copyText = () => {
+ navigator.clipboard.writeText(text);
+ handleMsg("success", "复制成功");
+ };
+ } else {
+ copyText = () => {
+ var tempInput = document.createElement("input");
+ tempInput.value = text;
+ document.body.appendChild(tempInput);
+ tempInput.select();
+ document.execCommand("copy");
+ document.body.removeChild(tempInput);
+ handleMsg("success", "复制成功");
+ };
+ }
+ copyText();
+ };
+ const replaceState = (obj = {}) => {
+ return;
+ };
+ const myOpenDetails = (value) => {
+ getDetails(value.data["uniqid"]);
+ myType.value = "";
+ };
+ const handleDetailsScroll = (e) => {
+ const el = e.target;
+ if (el.scrollHeight - el.scrollTop !== el.clientHeight)
+ return;
+ getAnswerList();
+ };
+ let dialogSrc = ref("");
+ const handleAnswerText = (e) => {
+ if (e.target.tagName === "IMG") {
+ var src = e.target.getAttribute("src");
+ dialogSrc.value = src;
+ window.addEventListener("keydown", handleKeydown);
+ }
+ };
+ const handleKeydown = (event) => {
+ if (event.key !== "Escape")
+ return;
+ dialogSrc.value = "";
+ window.removeEventListener("keydown", handleKeydown);
+ };
+ const cutType = (id) => {
+ typePitch.value = id;
+ page = 1;
+ list.value = [];
+ type.value = "list";
+ pitchIndex.value = null;
+ getList();
+ };
+ const handleMenuState = (index, ind, i) => {
+ if (i === void 0)
+ reportToken = answerList.value[index].commentList[ind]["token"];
+ else
+ reportToken = answerList.value[index].commentList[ind]["child"][i]["token"];
+ alertShow.value = true;
+ };
+ let reportToken = "";
+ const reasonList = ["广告", "辱骂", "重复发送", "不良信息", "其他"];
+ let checkList = ref([]);
+ let alertShow = ref(false);
+ let alertText = ref("");
+ const selectRadio = (value) => {
+ const index = checkList.value.indexOf(value);
+ if (index === -1)
+ checkList.value.push(value);
+ else
+ checkList.value.splice(index, 1);
+ };
+ const alertSubmit = () => {
+ checkList.value.push(alertText.value);
+ $ajax("/api/operate/report", {
+ message: checkList.value,
+ token: reportToken
+ }).then((res) => {
+ checkList.value = [];
+ reportToken = "";
+ alertShow.value = false;
+ handleMsg("success", "举报成功");
+ });
+ };
+ let seo = ref({});
+ try {
+ const params = route.query;
+ if (params["keyword"])
+ keyword.value = params["keyword"];
+ if (params["tid"])
+ typePitch.value = params["tid"];
+ if (params["uniqid"]) {
+ await $ajax("/api/details", { uniqid: params["uniqid"] }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ detailsInfo.value = data["info"] || {};
+ detailsIsanswered.value = data["isanswered"] || 0;
+ detailsIscollection.value = data["iscollection"] || 0;
+ detailsIsmyself.value = data["ismyself"] || 0;
+ detailsToken = data["token"] || "";
+ detailShare.value = data["share"] || {};
+ type.value = "details";
+ calculateListIndex(data.info, params["uniqid"]);
+ answerList.value = [];
+ answerPage.value = 1;
+ getAnswerList();
+ closeAllTransmitState();
+ replaceState({ uniqid: params["uniqid"] });
+ seo.value = data.seo;
+ });
+ }
+ await $ajax("/api/lists", {
+ page,
+ limit: 20,
+ keyword: keyword.value,
+ type: typePitch.value
+ }).then((res) => {
+ if (res.code != 200)
+ return;
+ let data = res.data;
+ if (true)
+ console.log("This is on the server side.");
+ list.value = list.value.concat(data.data || []);
+ total.value = data.count || 0;
+ keywordText.value = keyword.value || "";
+ if (list.value.length != data["count"])
+ page++;
+ else
+ page = 0;
+ if (keyword.value)
+ isSearchMode.value = true;
+ else
+ isSearchMode.value = false;
+ });
+ } catch (error) {
+ console.error(error);
+ }
+ const setItemUrl = (uniqid) => {
+ let url = `./index.html?uniqid=${uniqid}`;
+ let query = route.query;
+ for (const key in query) {
+ if (key != "uniqid")
+ url += `&${key}=${query[key]}`;
+ }
+ return url;
+ };
+ const handleLogo = () => {
+ window.location.href = window.location.origin + window.location.pathname;
+ };
+ let yourAnswer = ref({
+ text: "",
+ anonymous: 0
+ });
+ const cutYourAnswerAnonymous = () => {
+ yourAnswer.value["anonymous"] = yourAnswer.value["anonymous"] ? 0 : 1;
+ };
+ const handleYourAnswer = () => {
+ IAnswerInfo.value = { ...yourAnswer.value };
+ submitAnswer("you");
+ yourAnswer.value = {
+ text: "",
+ anonymous: 0
+ };
+ };
+ let isDirectlyListIAnswer = false;
+ const openListIAnswer = (index) => {
+ let targetData = list.value[index];
+ IAnswerInfo.value = {
+ title: targetData["title"],
+ content: targetData["content"],
+ token: targetData["token"],
+ uniqid: targetData["uniqid"],
+ anonymous: 0,
+ index
+ };
+ isDirectlyListIAnswer = true;
+ IAnswerState.value = true;
+ nextTick(() => handleInput());
+ };
+ return {
+ handleInputYou,
+ openListIAnswer,
+ isListEmptyState,
+ cutYourAnswerAnonymous,
+ handleYourAnswer,
+ yourAnswer,
+ handleLogo,
+ inTheEndState,
+ setItemUrl,
+ seo,
+ originUrl,
+ handleMenuState,
+ reasonList,
+ checkList,
+ alertShow,
+ alertText,
+ selectRadio,
+ alertSubmit,
+ cutType,
+ dialogSrc,
+ answerPage,
+ handleDetailsScroll,
+ replaceState,
+ copyText,
+ boxClass,
+ questionPlaceholderState,
+ yourAnswerPlaceholderState,
+ handleInput,
+ handlePaste,
+ itemStyle,
+ listStyle,
+ listBoxStyle,
+ myType,
+ type,
+ pitchIndex,
+ cut,
+ list,
+ keyword,
+ keywordText,
+ getList,
+ total,
+ typeList,
+ typePitch,
+ getDetails,
+ detailsInfo,
+ detailsIsanswered,
+ detailsIscollection,
+ detailsIsmyself,
+ detailShare,
+ detailLoading,
+ answerList,
+ operateLike,
+ operateCollect,
+ IAnswerState,
+ IAnswerEditState,
+ IAnswerInfo,
+ amendIAnswer,
+ openIAnswer,
+ closeIAnswer,
+ submitAnswer,
+ openCommentState,
+ submitAnswerComments,
+ operateAnswerCommentsLike,
+ openAnswerCommentsChild,
+ closeAnswerCommentsChild,
+ alsoCommentsData,
+ handleAllComment,
+ myCollectionList,
+ myCollectionCount,
+ myQuestionsList,
+ myQuestionsCount,
+ myAnswerList,
+ myAnswerCount,
+ cutAnswerPopupState,
+ handleDate,
+ handleCollectionScroll,
+ handleAnswersScroll,
+ handleQuestionsScroll,
+ cancelCollection,
+ getMyCollection,
+ questionsSetp,
+ questionsObj,
+ cutAnonymous,
+ cutQuestionsSetp,
+ cutQuestionsPopupState,
+ questionsTypeList,
+ postingIssue,
+ choosingTheme,
+ handleMy,
+ changeAnonymous,
+ changeAnonymousQuestions,
+ pageHeaderHeight,
+ pageListHeight,
+ questionsTransmitState,
+ questionsTransmitMaskState,
+ closeAllTransmitState,
+ closeTransmitState,
+ handleAnswerTransmitList,
+ closeDetailMode,
+ tabListFixeState,
+ handleListScroll,
+ historicalSearchState,
+ historicalSearchList,
+ searchFocus,
+ searchBlur,
+ searchClick,
+ handleClickHistoricalItem,
+ handleClickClear,
+ isSearchMode,
+ questionsInit,
+ myCount,
+ msg,
+ myOpenDetails,
+ handleAnswerText,
+ getCurrentUrl,
+ loading
+ };
+ }
+};
+function _sfc_ssrRender(_ctx, _push, _parent, _attrs, $props, $setup, $data, $options) {
+ const _component_Head = Head;
+ const _component_Title = Title;
+ const _component_Meta = Meta;
+ _push(``);
+ _push(ssrRenderComponent(_component_Head, null, {
+ default: withCtx((_, _push2, _parent2, _scopeId) => {
+ if (_push2) {
+ _push2(ssrRenderComponent(_component_Title, null, {
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
+ if (_push3) {
+ _push3(`${ssrInterpolate(`${$setup.seo["title"] || "问答"} - 寄托天下出国留学网`)}`);
+ } else {
+ return [
+ createTextVNode(toDisplayString(`${$setup.seo["title"] || "问答"} - 寄托天下出国留学网`), 1)
+ ];
+ }
+ }),
+ _: 1
+ }, _parent2, _scopeId));
+ _push2(ssrRenderComponent(_component_Meta, {
+ name: "keyword",
+ content: $setup.seo["keyword"]
+ }, null, _parent2, _scopeId));
+ _push2(ssrRenderComponent(_component_Meta, {
+ name: "description",
+ content: $setup.seo["description"]
+ }, null, _parent2, _scopeId));
+ } else {
+ return [
+ createVNode(_component_Title, null, {
+ default: withCtx(() => [
+ createTextVNode(toDisplayString(`${$setup.seo["title"] || "问答"} - 寄托天下出国留学网`), 1)
+ ]),
+ _: 1
+ }),
+ createVNode(_component_Meta, {
+ name: "keyword",
+ content: $setup.seo["keyword"]
+ }, null, 8, ["content"]),
+ createVNode(_component_Meta, {
+ name: "description",
+ content: $setup.seo["description"]
+ }, null, 8, ["content"])
+ ];
+ }
+ }),
+ _: 1
+ }, _parent));
+ _push(`
`);
+ if ($setup.isSearchMode) {
+ _push(`
${ssrInterpolate($setup.keywordText)}
![]()
`);
+ } else {
+ _push(``);
+ }
+ _push(`
共${ssrInterpolate($setup.total)}条问答
`);
+ if ($setup.inTheEndState) {
+ _push(`
- 到底了 -
`);
+ } else {
+ _push(``);
+ }
+ if ($setup.isListEmptyState) {
+ _push(`
![]()
没有找到相关结果,请更换搜索关键词
`);
+ } else {
+ _push(``);
+ }
+ _push(`
`);
+ if ($setup.type == "details") {
+ _push(`
`);
+ if ($setup.detailLoading) {
+ _push(`
`);
+ } else {
+ _push(``);
+ }
+ _push(`
Q
${ssrInterpolate($setup.detailsInfo["title"])}
${$setup.detailsInfo["content"]}
`);
+ if ($setup.detailsInfo["avatar"]) {
+ _push(`
![]()
`);
+ } else {
+ _push(``);
+ }
+ _push(`
${ssrInterpolate($setup.detailsInfo["nickname"])}
${ssrInterpolate($setup.handleDate($setup.detailsInfo["publicationdate"]))}
![]()
![]()
我来回答
![]()
${ssrInterpolate($setup.detailsInfo["collectionnum"] > 0 ? $setup.detailsInfo["collectionnum"] : "收藏")}
![]()
转发 `);
+ if ($setup.questionsTransmitState) {
+ _push(`
![]()
转发网页版
${ssrInterpolate($setup.detailsInfo["title"])}
${ssrInterpolate($setup.getCurrentUrl())}
复制链接
转发小程序版
![]()
![]()
扫码转发该问答
`);
+ } else {
+ _push(``);
+ }
+ _push(`
共 ${ssrInterpolate($setup.detailsInfo["answers"])} 个回答
`);
+ ssrRenderList($setup.answerList, (item, index) => {
+ _push(`
${item["content"]}
![]()
${ssrInterpolate(item["nickname"])}
`);
+ if (item["groupid"] == 14) {
+ _push(`
![]()
`);
+ } else {
+ _push(``);
+ }
+ _push(`
${ssrInterpolate($setup.handleDate(item["publicationdate"]))}
`);
+ if (item["ismyself"] == 1) {
+ _push(`
`);
+ } else {
+ _push(``);
+ }
+ _push(`
![]()
${ssrInterpolate(item["likenum"])}
![]()
${ssrInterpolate(item["collectionnum"] == 0 ? "收藏" : item["collectionnum"])}
![]()
转发 `);
+ if (item["transmitState"]) {
+ _push(`
![]()
转发网页版
${ssrInterpolate($setup.detailsInfo["title"])}
${ssrInterpolate($setup.getCurrentUrl())}
复制链接
转发小程序版
![]()
![]()
扫码转发该问答
`);
+ } else {
+ _push(``);
+ }
+ _push(`
`);
+ if (item["commentState"]) {
+ _push(``);
+ if (item["commentList"] && item["commentList"].length != 0) {
+ _push(``);
+ } else {
+ _push(``);
+ }
+ _push(``);
+ } else {
+ _push(``);
+ }
+ _push(`
`);
+ });
+ _push(``);
+ if ($setup.answerList.length > 0) {
+ _push(`
· 著作权归作者所有 ·
`);
+ } else {
+ _push(``);
+ }
+ _push(`
${$setup.yourAnswer["text"]}
`);
+ if ($setup.yourAnswer["anonymous"] == 0) {
+ _push(`
![]()
`);
+ } else {
+ _push(`
![]()
`);
+ }
+ _push(` 匿名发表
提交回答
`);
+ } else {
+ _push(``);
+ }
+ _push(`
`);
+ if ($setup.myType) {
+ _push(`
![]()
我的收藏
${ssrInterpolate($setup.myCollectionCount || $setup.myCount["collect"] || 0)}
我的回答
${ssrInterpolate($setup.myAnswerCount || $setup.myCount["answer"] || 0)}
我的提问
${ssrInterpolate($setup.myQuestionsCount || $setup.myCount["questions"] || 0)}
`);
+ if ($setup.myType == "collect" && $setup.myCollectionList.length == 0 || $setup.myType == "answers" && $setup.myAnswerList.length == 0 || $setup.myType == "questions" && $setup.myQuestionsList.length == 0) {
+ _push(`
![]()
暂无内容
`);
+ } else {
+ _push(``);
+ }
+ if ($setup.myType == "collect" && $setup.myCollectionList.length != 0) {
+ _push(`
`);
+ ssrRenderList($setup.myCollectionList, (item, index) => {
+ _push(`
`);
+ if (item.type == "askanswercollection") {
+ _push(`
A
${item["data"]["content"]}
提问:${ssrInterpolate(item["data"]["title"])}
`);
+ } else {
+ _push(`
Q
${ssrInterpolate(item["data"]["title"])}
${ssrInterpolate(item["data"]["answers"] > 0 ? "共" + item["data"]["answers"] + "个回答" : "暂无回答")}
`);
+ }
+ _push(`
`);
+ });
+ _push(`
`);
+ } else {
+ _push(``);
+ }
+ if ($setup.myType == "answers" && $setup.myAnswerList.length != 0) {
+ _push(`
`);
+ ssrRenderList($setup.myAnswerList, (item, index) => {
+ _push(`
A
${ssrInterpolate(item["nickname"])}
${ssrInterpolate($setup.handleDate(item["publicationdate"]))}
${item["content"]}
提问:${ssrInterpolate(item["title"])}
${ssrInterpolate(item["anonymous"] == 0 ? "公开" : "匿名")}
![]()
`);
+ if (item["popupState"]) {
+ _push(``);
+ } else {
+ _push(``);
+ }
+ _push(`
![]()
`);
+ });
+ _push(`
`);
+ } else {
+ _push(``);
+ }
+ if ($setup.myType == "questions" && $setup.myQuestionsList.length != 0) {
+ _push(`
`);
+ ssrRenderList($setup.myQuestionsList, (item, index) => {
+ _push(`
Q
${ssrInterpolate(item["nickname"])}
${ssrInterpolate($setup.handleDate(item["publicationdate"]))}
${ssrInterpolate(item["title"])}
`);
+ if (item["authornewnum"] > 0) {
+ _push(`
有${ssrInterpolate(item["authornewnum"])}个新回答
`);
+ } else {
+ _push(``);
+ }
+ _push(` ${ssrInterpolate(item["answers"] == 0 ? "暂无回答" : "共" + item["answers"] + "个回答")}
${ssrInterpolate(item["anonymous"] == 0 ? "公开" : "匿名")}
![]()
`);
+ if (item["popupState"]) {
+ _push(``);
+ } else {
+ _push(``);
+ }
+ _push(`
`);
+ });
+ _push(`
`);
+ } else {
+ _push(``);
+ }
+ _push(`
`);
+ } else {
+ _push(``);
+ }
+ if ($setup.questionsSetp) {
+ _push(`
`);
+ if ($setup.questionsSetp == 1) {
+ _push(`
选择提问所属主题
`);
+ ssrRenderList($setup.questionsTypeList, (item, index) => {
+ _push(`
`);
+ ssrRenderList(item, (item2) => {
+ _push(`
${ssrInterpolate(item2.name)}
`);
+ });
+ _push(`
`);
+ });
+ _push(`
`);
+ } else {
+ _push(`
`);
+ }
+ _push(`
`);
+ } else {
+ _push(``);
+ }
+ if ($setup.IAnswerEditState) {
+ _push(`
![]()
编辑回答
${$setup.IAnswerInfo["text"]}
`);
+ if ($setup.IAnswerInfo["anonymous"] == 0) {
+ _push(`
![]()
`);
+ } else {
+ _push(`
![]()
`);
+ }
+ _push(` 匿名发表
提交回答
`);
+ } else {
+ _push(``);
+ }
+ if ($setup.IAnswerState) {
+ _push(`
![]()
A
${$setup.IAnswerInfo["text"]}
`);
+ if ($setup.IAnswerInfo["anonymous"] == 0) {
+ _push(`
![]()
`);
+ } else {
+ _push(`
![]()
`);
+ }
+ _push(` 匿名发表
提交回答
`);
+ } else {
+ _push(``);
+ }
+ _push(`
${ssrInterpolate($setup.msg["text"])}
`);
+ if ($setup.dialogSrc) {
+ _push(`
`);
+ } else {
+ _push(``);
+ }
+ _push(`
`);
+}
+const _sfc_setup$2 = _sfc_main$2.setup;
+_sfc_main$2.setup = (props, ctx) => {
+ const ssrContext = useSSRContext();
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("app.vue");
+ return _sfc_setup$2 ? _sfc_setup$2(props, ctx) : void 0;
+};
+const AppComponent = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["ssrRender", _sfc_ssrRender]]);
+const _sfc_main$1 = {
+ __name: "nuxt-error-page",
+ __ssrInlineRender: true,
+ props: {
+ error: Object
+ },
+ setup(__props) {
+ const props = __props;
+ const _error = props.error;
+ (_error.stack || "").split("\n").splice(1).map((line) => {
+ const text = line.replace("webpack:/", "").replace(".vue", ".js").trim();
+ return {
+ text,
+ internal: line.includes("node_modules") && !line.includes(".cache") || line.includes("internal") || line.includes("new Promise")
+ };
+ }).map((i) => `${i.text}`).join("\n");
+ const statusCode = Number(_error.statusCode || 500);
+ const is404 = statusCode === 404;
+ const statusMessage = _error.statusMessage ?? (is404 ? "Page Not Found" : "Internal Server Error");
+ const description = _error.message || _error.toString();
+ const stack = void 0;
+ const _Error404 = defineAsyncComponent(() => import('./_nuxt/error-404-ac9751db.mjs').then((r) => r.default || r));
+ const _Error = defineAsyncComponent(() => import('./_nuxt/error-500-db5011fe.mjs').then((r) => r.default || r));
+ const ErrorTemplate = is404 ? _Error404 : _Error;
+ return (_ctx, _push, _parent, _attrs) => {
+ _push(ssrRenderComponent(unref(ErrorTemplate), mergeProps({ statusCode: unref(statusCode), statusMessage: unref(statusMessage), description: unref(description), stack: unref(stack) }, _attrs), null, _parent));
+ };
+ }
+};
+const _sfc_setup$1 = _sfc_main$1.setup;
+_sfc_main$1.setup = (props, ctx) => {
+ const ssrContext = useSSRContext();
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("node_modules/nuxt/dist/app/components/nuxt-error-page.vue");
+ return _sfc_setup$1 ? _sfc_setup$1(props, ctx) : void 0;
+};
+const ErrorComponent = _sfc_main$1;
+const _sfc_main = {
+ __name: "nuxt-root",
+ __ssrInlineRender: true,
+ setup(__props) {
+ const IslandRenderer = defineAsyncComponent(() => import('./_nuxt/island-renderer-4de2a5fd.mjs').then((r) => r.default || r));
+ const nuxtApp = /* @__PURE__ */ useNuxtApp();
+ nuxtApp.deferHydration();
+ nuxtApp.ssrContext.url;
+ const SingleRenderer = false;
+ provide(PageRouteSymbol, useRoute());
+ nuxtApp.hooks.callHookWith((hooks) => hooks.map((hook) => hook()), "vue:setup");
+ const error = useError();
+ onErrorCaptured((err, target, info) => {
+ nuxtApp.hooks.callHook("vue:error", err, target, info).catch((hookError) => console.error("[nuxt] Error in `vue:error` hook", hookError));
+ {
+ const p = nuxtApp.runWithContext(() => showError(err));
+ onServerPrefetch(() => p);
+ return false;
+ }
+ });
+ const islandContext = nuxtApp.ssrContext.islandContext;
+ return (_ctx, _push, _parent, _attrs) => {
+ ssrRenderSuspense(_push, {
+ default: () => {
+ if (unref(error)) {
+ _push(ssrRenderComponent(unref(ErrorComponent), { error: unref(error) }, null, _parent));
+ } else if (unref(islandContext)) {
+ _push(ssrRenderComponent(unref(IslandRenderer), { context: unref(islandContext) }, null, _parent));
+ } else if (unref(SingleRenderer)) {
+ ssrRenderVNode(_push, createVNode(resolveDynamicComponent(unref(SingleRenderer)), null, null), _parent);
+ } else {
+ _push(ssrRenderComponent(unref(AppComponent), null, null, _parent));
+ }
+ },
+ _: 1
+ });
+ };
+ }
+};
+const _sfc_setup = _sfc_main.setup;
+_sfc_main.setup = (props, ctx) => {
+ const ssrContext = useSSRContext();
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("node_modules/nuxt/dist/app/components/nuxt-root.vue");
+ return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
+};
+const RootComponent = _sfc_main;
+let entry;
+{
+ entry = async function createNuxtAppServer(ssrContext) {
+ const vueApp = createApp(RootComponent);
+ const nuxt = createNuxtApp({ vueApp, ssrContext });
+ try {
+ await applyPlugins(nuxt, plugins);
+ await nuxt.hooks.callHook("app:created", vueApp);
+ } catch (err) {
+ await nuxt.hooks.callHook("app:error", err);
+ nuxt.payload.error = nuxt.payload.error || err;
+ }
+ if (ssrContext == null ? void 0 : ssrContext._renderResponse) {
+ throw new Error("skipping render");
+ }
+ return vueApp;
+ };
+}
+const entry$1 = (ctx) => entry(ctx);
+
+export { _export_sfc as _, useRuntimeConfig as a, useHead as b, createError as c, entry$1 as default, navigateTo as n, useRouter as u };
+//# sourceMappingURL=server.mjs.map
diff --git a/.output/server/chunks/app/server.mjs.map b/.output/server/chunks/app/server.mjs.map
new file mode 100644
index 0000000..41d3be5
--- /dev/null
+++ b/.output/server/chunks/app/server.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"server.mjs","sources":["../../../../node_modules/unctx/dist/index.mjs","../../../../.nuxt/dist/server/server.mjs"],"sourcesContent":null,"names":["createContext","asyncHandlers","createNamespace","_globalThis","globalKey","asyncHandlersKey"],"mappings":"","x_google_ignoreList":[0]}
\ No newline at end of file
diff --git a/.output/server/chunks/app/styles.mjs b/.output/server/chunks/app/styles.mjs
new file mode 100644
index 0000000..5248ca1
--- /dev/null
+++ b/.output/server/chunks/app/styles.mjs
@@ -0,0 +1,9 @@
+const interopDefault = r => r.default || r || [];
+const styles = {
+ "node_modules/nuxt/dist/app/entry.js": () => import('./_nuxt/entry-styles.d7e5cfd6.mjs').then(interopDefault),
+ "node_modules/@nuxt/ui-templates/dist/templates/error-404.vue": () => import('./_nuxt/error-404-styles.1e0dde27.mjs').then(interopDefault),
+ "node_modules/@nuxt/ui-templates/dist/templates/error-500.vue": () => import('./_nuxt/error-500-styles.cf4b3e80.mjs').then(interopDefault)
+};
+
+export { styles as default };
+//# sourceMappingURL=styles.mjs.map
diff --git a/.output/server/chunks/app/styles.mjs.map b/.output/server/chunks/app/styles.mjs.map
new file mode 100644
index 0000000..66e8404
--- /dev/null
+++ b/.output/server/chunks/app/styles.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"styles.mjs","sources":["../../../../.nuxt/dist/server/styles.mjs"],"sourcesContent":null,"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI,GAAE;AAChD,eAAe;AACf,EAAE,qCAAqC,EAAE,MAAM,OAAO,mCAAmC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AAC/G,EAAE,8DAA8D,EAAE,MAAM,OAAO,uCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AAC5I,EAAE,8DAA8D,EAAE,MAAM,OAAO,uCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AAC5I;;;;"}
\ No newline at end of file
diff --git a/.output/server/chunks/error-500.mjs b/.output/server/chunks/error-500.mjs
new file mode 100644
index 0000000..3f10daa
--- /dev/null
+++ b/.output/server/chunks/error-500.mjs
@@ -0,0 +1,21 @@
+const _messages = {"appName":"Nuxt","version":"","statusCode":500,"statusMessage":"Server error","description":"This page is temporarily unavailable."};
+const _render = function({ messages }) {
+var __t, __p = '';
+__p += '' +
+((__t = ( messages.statusCode )) == null ? '' : __t) +
+' - ' +
+((__t = ( messages.statusMessage )) == null ? '' : __t) +
+' | ' +
+((__t = ( messages.appName )) == null ? '' : __t) +
+'' +
+((__t = ( messages.statusCode )) == null ? '' : __t) +
+'
' +
+((__t = ( messages.description )) == null ? '' : __t) +
+'
';
+return __p
+};
+const _template = (messages) => _render({ messages: { ..._messages, ...messages } });
+const template = _template;
+
+export { template };
+//# sourceMappingURL=error-500.mjs.map
diff --git a/.output/server/chunks/error-500.mjs.map b/.output/server/chunks/error-500.mjs.map
new file mode 100644
index 0000000..5520258
--- /dev/null
+++ b/.output/server/chunks/error-500.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"error-500.mjs","sources":["../../../node_modules/@nuxt/ui-templates/dist/templates/error-500.mjs"],"sourcesContent":null,"names":[],"mappings":"","x_google_ignoreList":[0]}
\ No newline at end of file
diff --git a/.output/server/chunks/handlers/renderer.mjs b/.output/server/chunks/handlers/renderer.mjs
new file mode 100644
index 0000000..c4912f6
--- /dev/null
+++ b/.output/server/chunks/handlers/renderer.mjs
@@ -0,0 +1,385 @@
+import { getRequestDependencies, getPreloadLinks, getPrefetchLinks, createRenderer } from 'vue-bundle-renderer/runtime';
+import { e as eventHandler, s as setResponseHeader, a as send, g as getResponseStatus, b as setResponseStatus, c as setResponseHeaders, u as useNitroApp, j as joinURL, d as useRuntimeConfig, f as getQuery, h as createError, i as getRouteRules, k as getResponseStatusText } from '../nitro/node-server.mjs';
+import { stringify, uneval } from 'devalue';
+import { renderToString } from 'vue/server-renderer';
+import { renderSSRHead } from '@unhead/ssr';
+import { version, unref } from 'vue';
+import { createServerHead as createServerHead$1 } from 'unhead';
+import { defineHeadPlugin } from '@unhead/shared';
+import 'node:http';
+import 'node:https';
+import 'fs';
+import 'path';
+import 'node:fs';
+import 'node:url';
+
+function defineRenderHandler(handler) {
+ return eventHandler(async (event) => {
+ if (event.path.endsWith("/favicon.ico")) {
+ setResponseHeader(event, "Content-Type", "image/x-icon");
+ return send(
+ event,
+ "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
+ );
+ }
+ const response = await handler(event);
+ if (!response) {
+ const _currentStatus = getResponseStatus(event);
+ setResponseStatus(event, _currentStatus === 200 ? 500 : _currentStatus);
+ return send(
+ event,
+ "No response returned from render handler: " + event.path
+ );
+ }
+ const nitroApp = useNitroApp();
+ await nitroApp.hooks.callHook("render:response", response, { event });
+ if (response.headers) {
+ setResponseHeaders(event, response.headers);
+ }
+ if (response.statusCode || response.statusMessage) {
+ setResponseStatus(event, response.statusCode, response.statusMessage);
+ }
+ return response.body;
+ });
+}
+
+const Vue3 = version.startsWith("3");
+
+function resolveUnref(r) {
+ return typeof r === "function" ? r() : unref(r);
+}
+function resolveUnrefHeadInput(ref, lastKey = "") {
+ if (ref instanceof Promise)
+ return ref;
+ const root = resolveUnref(ref);
+ if (!ref || !root)
+ return root;
+ if (Array.isArray(root))
+ return root.map((r) => resolveUnrefHeadInput(r, lastKey));
+ if (typeof root === "object") {
+ return Object.fromEntries(
+ Object.entries(root).map(([k, v]) => {
+ if (k === "titleTemplate" || k.startsWith("on"))
+ return [k, unref(v)];
+ return [k, resolveUnrefHeadInput(v, k)];
+ })
+ );
+ }
+ return root;
+}
+
+const VueReactivityPlugin = defineHeadPlugin({
+ hooks: {
+ "entries:resolve": function(ctx) {
+ for (const entry of ctx.entries)
+ entry.resolvedInput = resolveUnrefHeadInput(entry.input);
+ }
+ }
+});
+
+const headSymbol = "usehead";
+function vueInstall(head) {
+ const plugin = {
+ install(app) {
+ if (Vue3) {
+ app.config.globalProperties.$unhead = head;
+ app.config.globalProperties.$head = head;
+ app.provide(headSymbol, head);
+ }
+ }
+ };
+ return plugin.install;
+}
+function createServerHead(options = {}) {
+ const head = createServerHead$1(options);
+ head.use(VueReactivityPlugin);
+ head.install = vueInstall(head);
+ return head;
+}
+
+const unheadPlugins = [];
+
+const appHead = {"meta":[{"name":"viewport","content":"width=device-width, initial-scale=1"},{"charset":"utf-8"}],"link":[],"style":[],"script":[{"src":"https://app.gter.net/bottom?tpl=header&menukey=ask"},{"src":"https://app.gter.net/bottom?tpl=footer","body":true}],"noscript":[]};
+
+const appRootId = "__nuxt";
+
+const appRootTag = "div";
+
+function buildAssetsDir() {
+ return useRuntimeConfig().app.buildAssetsDir;
+}
+function buildAssetsURL(...path) {
+ return joinURL(publicAssetsURL(), buildAssetsDir(), ...path);
+}
+function publicAssetsURL(...path) {
+ const publicBase = useRuntimeConfig().app.cdnURL || useRuntimeConfig().app.baseURL;
+ return path.length ? joinURL(publicBase, ...path) : publicBase;
+}
+
+globalThis.__buildAssetsURL = buildAssetsURL;
+globalThis.__publicAssetsURL = publicAssetsURL;
+const getClientManifest = () => import('../app/client.manifest.mjs').then((r) => r.default || r).then((r) => typeof r === "function" ? r() : r);
+const getEntryIds = () => getClientManifest().then((r) => Object.values(r).filter(
+ (r2) => (
+ // @ts-expect-error internal key set by CSS inlining configuration
+ r2._globalCSS
+ )
+).map((r2) => r2.src));
+const getServerEntry = () => import('../app/server.mjs').then((r) => r.default || r);
+const getSSRStyles = lazyCachedFunction(() => import('../app/styles.mjs').then((r) => r.default || r));
+const getSSRRenderer = lazyCachedFunction(async () => {
+ const manifest = await getClientManifest();
+ if (!manifest) {
+ throw new Error("client.manifest is not available");
+ }
+ const createSSRApp = await getServerEntry();
+ if (!createSSRApp) {
+ throw new Error("Server bundle is not available");
+ }
+ const options = {
+ manifest,
+ renderToString: renderToString$1,
+ buildAssetsURL
+ };
+ const renderer = createRenderer(createSSRApp, options);
+ async function renderToString$1(input, context) {
+ const html = await renderToString(input, context);
+ return `<${appRootTag}${` id="${appRootId}"` }>${html}${appRootTag}>`;
+ }
+ return renderer;
+});
+const getSPARenderer = lazyCachedFunction(async () => {
+ const manifest = await getClientManifest();
+ const spaTemplate = await import('../rollup/_virtual_spa-template.mjs').then((r) => r.template).catch(() => "");
+ const options = {
+ manifest,
+ renderToString: () => `<${appRootTag}${` id="${appRootId}"` }>${spaTemplate}${appRootTag}>`,
+ buildAssetsURL
+ };
+ const renderer = createRenderer(() => () => {
+ }, options);
+ const result = await renderer.renderToString({});
+ const renderToString = (ssrContext) => {
+ const config = useRuntimeConfig();
+ ssrContext.modules = ssrContext.modules || /* @__PURE__ */ new Set();
+ ssrContext.payload = {
+ _errors: {},
+ serverRendered: false,
+ data: {},
+ state: {}
+ };
+ ssrContext.config = {
+ public: config.public,
+ app: config.app
+ };
+ return Promise.resolve(result);
+ };
+ return {
+ rendererContext: renderer.rendererContext,
+ renderToString
+ };
+});
+const PAYLOAD_URL_RE = /\/_payload(\.[a-zA-Z0-9]+)?.json(\?.*)?$/ ;
+const renderer = defineRenderHandler(async (event) => {
+ const nitroApp = useNitroApp();
+ const ssrError = event.path.startsWith("/__nuxt_error") ? getQuery(event) : null;
+ if (ssrError && ssrError.statusCode) {
+ ssrError.statusCode = parseInt(ssrError.statusCode);
+ }
+ if (ssrError && !("__unenv__" in event.node.req)) {
+ throw createError({
+ statusCode: 404,
+ statusMessage: "Page Not Found: /__nuxt_error"
+ });
+ }
+ const islandContext = void 0;
+ let url = ssrError?.url || islandContext?.url || event.path;
+ const isRenderingPayload = PAYLOAD_URL_RE.test(url) && !islandContext;
+ if (isRenderingPayload) {
+ url = url.substring(0, url.lastIndexOf("/")) || "/";
+ event._path = url;
+ event.node.req.url = url;
+ }
+ const routeOptions = getRouteRules(event);
+ const head = createServerHead({
+ plugins: unheadPlugins
+ });
+ const headEntryOptions = { mode: "server" };
+ head.push(appHead, headEntryOptions);
+ const ssrContext = {
+ url,
+ event,
+ runtimeConfig: useRuntimeConfig(),
+ noSSR: event.context.nuxt?.noSSR || routeOptions.ssr === false && !islandContext || (false),
+ head,
+ error: !!ssrError,
+ nuxt: void 0,
+ /* NuxtApp */
+ payload: ssrError ? { error: ssrError } : {},
+ _payloadReducers: {},
+ islandContext
+ };
+ const renderer = ssrContext.noSSR ? await getSPARenderer() : await getSSRRenderer();
+ const _rendered = await renderer.renderToString(ssrContext).catch(async (error) => {
+ if (ssrContext._renderResponse && error.message === "skipping render") {
+ return {};
+ }
+ const _err = !ssrError && ssrContext.payload?.error || error;
+ await ssrContext.nuxt?.hooks.callHook("app:error", _err);
+ throw _err;
+ });
+ await ssrContext.nuxt?.hooks.callHook("app:rendered", { ssrContext, renderResult: _rendered });
+ if (ssrContext._renderResponse) {
+ return ssrContext._renderResponse;
+ }
+ if (ssrContext.payload?.error && !ssrError) {
+ throw ssrContext.payload.error;
+ }
+ if (isRenderingPayload) {
+ const response2 = renderPayloadResponse(ssrContext);
+ return response2;
+ }
+ {
+ const source = ssrContext.modules ?? ssrContext._registeredComponents;
+ if (source) {
+ for (const id of await getEntryIds()) {
+ source.add(id);
+ }
+ }
+ }
+ const inlinedStyles = await renderInlineStyles(ssrContext.modules ?? ssrContext._registeredComponents ?? []) ;
+ const NO_SCRIPTS = routeOptions.experimentalNoScripts;
+ const { styles, scripts } = getRequestDependencies(ssrContext, renderer.rendererContext);
+ head.push({ style: inlinedStyles });
+ head.push({
+ link: Object.values(styles).map(
+ (resource) => ({ rel: "stylesheet", href: renderer.rendererContext.buildAssetsURL(resource.file) })
+ )
+ }, headEntryOptions);
+ if (!NO_SCRIPTS) {
+ head.push({
+ link: getPreloadLinks(ssrContext, renderer.rendererContext)
+ }, headEntryOptions);
+ head.push({
+ link: getPrefetchLinks(ssrContext, renderer.rendererContext)
+ }, headEntryOptions);
+ head.push({
+ script: renderPayloadJsonScript({ id: "__NUXT_DATA__", ssrContext, data: ssrContext.payload })
+ }, {
+ ...headEntryOptions,
+ // this should come before another end of body scripts
+ tagPosition: "bodyClose",
+ tagPriority: "high"
+ });
+ }
+ if (!routeOptions.experimentalNoScripts) {
+ head.push({
+ script: Object.values(scripts).map((resource) => ({
+ type: resource.module ? "module" : null,
+ src: renderer.rendererContext.buildAssetsURL(resource.file),
+ defer: resource.module ? null : true,
+ crossorigin: ""
+ }))
+ }, headEntryOptions);
+ }
+ const { headTags, bodyTags, bodyTagsOpen, htmlAttrs, bodyAttrs } = await renderSSRHead(head);
+ const htmlContext = {
+ island: Boolean(islandContext),
+ htmlAttrs: [htmlAttrs],
+ head: normalizeChunks([headTags, ssrContext.styles]),
+ bodyAttrs: [bodyAttrs],
+ bodyPrepend: normalizeChunks([bodyTagsOpen, ssrContext.teleports?.body]),
+ body: [_rendered.html],
+ bodyAppend: [bodyTags]
+ };
+ await nitroApp.hooks.callHook("render:html", htmlContext, { event });
+ const response = {
+ body: renderHTMLDocument(htmlContext),
+ statusCode: getResponseStatus(event),
+ statusMessage: getResponseStatusText(event),
+ headers: {
+ "content-type": "text/html;charset=utf-8",
+ "x-powered-by": "Nuxt"
+ }
+ };
+ return response;
+});
+function lazyCachedFunction(fn) {
+ let res = null;
+ return () => {
+ if (res === null) {
+ res = fn().catch((err) => {
+ res = null;
+ throw err;
+ });
+ }
+ return res;
+ };
+}
+function normalizeChunks(chunks) {
+ return chunks.filter(Boolean).map((i) => i.trim());
+}
+function joinTags(tags) {
+ return tags.join("");
+}
+function joinAttrs(chunks) {
+ return chunks.join(" ");
+}
+function renderHTMLDocument(html) {
+ return `
+
+${joinTags(html.head)}
+${joinTags(html.bodyPrepend)}${joinTags(html.body)}${joinTags(html.bodyAppend)}
+`;
+}
+async function renderInlineStyles(usedModules) {
+ const styleMap = await getSSRStyles();
+ const inlinedStyles = /* @__PURE__ */ new Set();
+ for (const mod of usedModules) {
+ if (mod in styleMap) {
+ for (const style of await styleMap[mod]()) {
+ inlinedStyles.add(style);
+ }
+ }
+ }
+ return Array.from(inlinedStyles).map((style) => ({ innerHTML: style }));
+}
+function renderPayloadResponse(ssrContext) {
+ return {
+ body: stringify(splitPayload(ssrContext).payload, ssrContext._payloadReducers) ,
+ statusCode: getResponseStatus(ssrContext.event),
+ statusMessage: getResponseStatusText(ssrContext.event),
+ headers: {
+ "content-type": "application/json;charset=utf-8" ,
+ "x-powered-by": "Nuxt"
+ }
+ };
+}
+function renderPayloadJsonScript(opts) {
+ const contents = opts.data ? stringify(opts.data, opts.ssrContext._payloadReducers) : "";
+ const payload = {
+ type: "application/json",
+ id: opts.id,
+ innerHTML: contents,
+ "data-ssr": !(opts.ssrContext.noSSR)
+ };
+ if (opts.src) {
+ payload["data-src"] = opts.src;
+ }
+ return [
+ payload,
+ {
+ innerHTML: `window.__NUXT__={};window.__NUXT__.config=${uneval(opts.ssrContext.config)}`
+ }
+ ];
+}
+function splitPayload(ssrContext) {
+ const { data, prerenderedAt, ...initial } = ssrContext.payload;
+ return {
+ initial: { ...initial, prerenderedAt },
+ payload: { data, prerenderedAt }
+ };
+}
+
+export { renderer as default };
+//# sourceMappingURL=renderer.mjs.map
diff --git a/.output/server/chunks/handlers/renderer.mjs.map b/.output/server/chunks/handlers/renderer.mjs.map
new file mode 100644
index 0000000..d558b28
--- /dev/null
+++ b/.output/server/chunks/handlers/renderer.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"renderer.mjs","sources":["../../../../node_modules/nitropack/dist/runtime/renderer.mjs","../../../../node_modules/@unhead/vue/dist/shared/vue.cf295fb1.mjs","../../../../node_modules/nuxt/dist/core/runtime/nitro/paths.js","../../../../node_modules/nuxt/dist/core/runtime/nitro/renderer.js"],"sourcesContent":null,"names":["renderToString","_renderToString"],"mappings":"","x_google_ignoreList":[0,1,2,3]}
\ No newline at end of file
diff --git a/.output/server/chunks/nitro/node-server.mjs b/.output/server/chunks/nitro/node-server.mjs
new file mode 100644
index 0000000..19f0348
--- /dev/null
+++ b/.output/server/chunks/nitro/node-server.mjs
@@ -0,0 +1,5978 @@
+globalThis._importMeta_=globalThis._importMeta_||{url:"file:///_entry.js",env:process.env};import http, { Server as Server$1 } from 'node:http';
+import https, { Server } from 'node:https';
+import { promises, existsSync } from 'fs';
+import { dirname as dirname$1, resolve as resolve$1, join } from 'path';
+import { promises as promises$1 } from 'node:fs';
+import { fileURLToPath } from 'node:url';
+
+const suspectProtoRx = /"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/;
+const suspectConstructorRx = /"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;
+const JsonSigRx = /^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;
+function jsonParseTransform(key, value) {
+ if (key === "__proto__" || key === "constructor" && value && typeof value === "object" && "prototype" in value) {
+ warnKeyDropped(key);
+ return;
+ }
+ return value;
+}
+function warnKeyDropped(key) {
+ console.warn(`[destr] Dropping "${key}" key to prevent prototype pollution.`);
+}
+function destr(value, options = {}) {
+ if (typeof value !== "string") {
+ return value;
+ }
+ const _value = value.trim();
+ if (
+ // eslint-disable-next-line unicorn/prefer-at
+ value[0] === '"' && value.at(-1) === '"' && !value.includes("\\")
+ ) {
+ return _value.slice(1, -1);
+ }
+ if (_value.length <= 9) {
+ const _lval = _value.toLowerCase();
+ if (_lval === "true") {
+ return true;
+ }
+ if (_lval === "false") {
+ return false;
+ }
+ if (_lval === "undefined") {
+ return void 0;
+ }
+ if (_lval === "null") {
+ return null;
+ }
+ if (_lval === "nan") {
+ return Number.NaN;
+ }
+ if (_lval === "infinity") {
+ return Number.POSITIVE_INFINITY;
+ }
+ if (_lval === "-infinity") {
+ return Number.NEGATIVE_INFINITY;
+ }
+ }
+ if (!JsonSigRx.test(value)) {
+ if (options.strict) {
+ throw new SyntaxError("[destr] Invalid JSON");
+ }
+ return value;
+ }
+ try {
+ if (suspectProtoRx.test(value) || suspectConstructorRx.test(value)) {
+ if (options.strict) {
+ throw new Error("[destr] Possible prototype pollution");
+ }
+ return JSON.parse(value, jsonParseTransform);
+ }
+ return JSON.parse(value);
+ } catch (error) {
+ if (options.strict) {
+ throw error;
+ }
+ return value;
+ }
+}
+
+const HASH_RE = /#/g;
+const AMPERSAND_RE = /&/g;
+const EQUAL_RE = /=/g;
+const PLUS_RE = /\+/g;
+const ENC_CARET_RE = /%5e/gi;
+const ENC_BACKTICK_RE = /%60/gi;
+const ENC_PIPE_RE = /%7c/gi;
+const ENC_SPACE_RE = /%20/gi;
+const ENC_SLASH_RE = /%2f/gi;
+function encode(text) {
+ return encodeURI("" + text).replace(ENC_PIPE_RE, "|");
+}
+function encodeQueryValue(input) {
+ return encode(typeof input === "string" ? input : JSON.stringify(input)).replace(PLUS_RE, "%2B").replace(ENC_SPACE_RE, "+").replace(HASH_RE, "%23").replace(AMPERSAND_RE, "%26").replace(ENC_BACKTICK_RE, "`").replace(ENC_CARET_RE, "^");
+}
+function encodeQueryKey(text) {
+ return encodeQueryValue(text).replace(EQUAL_RE, "%3D");
+}
+function decode(text = "") {
+ try {
+ return decodeURIComponent("" + text);
+ } catch {
+ return "" + text;
+ }
+}
+function decodePath(text) {
+ return decode(text.replace(ENC_SLASH_RE, "%252F"));
+}
+function decodeQueryKey(text) {
+ return decode(text.replace(PLUS_RE, " "));
+}
+function decodeQueryValue(text) {
+ return decode(text.replace(PLUS_RE, " "));
+}
+
+function parseQuery(parametersString = "") {
+ const object = {};
+ if (parametersString[0] === "?") {
+ parametersString = parametersString.slice(1);
+ }
+ for (const parameter of parametersString.split("&")) {
+ const s = parameter.match(/([^=]+)=?(.*)/) || [];
+ if (s.length < 2) {
+ continue;
+ }
+ const key = decodeQueryKey(s[1]);
+ if (key === "__proto__" || key === "constructor") {
+ continue;
+ }
+ const value = decodeQueryValue(s[2] || "");
+ if (object[key] === void 0) {
+ object[key] = value;
+ } else if (Array.isArray(object[key])) {
+ object[key].push(value);
+ } else {
+ object[key] = [object[key], value];
+ }
+ }
+ return object;
+}
+function encodeQueryItem(key, value) {
+ if (typeof value === "number" || typeof value === "boolean") {
+ value = String(value);
+ }
+ if (!value) {
+ return encodeQueryKey(key);
+ }
+ if (Array.isArray(value)) {
+ return value.map((_value) => `${encodeQueryKey(key)}=${encodeQueryValue(_value)}`).join("&");
+ }
+ return `${encodeQueryKey(key)}=${encodeQueryValue(value)}`;
+}
+function stringifyQuery(query) {
+ return Object.keys(query).filter((k) => query[k] !== void 0).map((k) => encodeQueryItem(k, query[k])).filter(Boolean).join("&");
+}
+const PROTOCOL_STRICT_REGEX = /^[\s\w\0+.-]{2,}:([/\\]{1,2})/;
+const PROTOCOL_REGEX = /^[\s\w\0+.-]{2,}:([/\\]{2})?/;
+const PROTOCOL_RELATIVE_REGEX = /^([/\\]\s*){2,}[^/\\]/;
+function hasProtocol(inputString, opts = {}) {
+ if (typeof opts === "boolean") {
+ opts = { acceptRelative: opts };
+ }
+ if (opts.strict) {
+ return PROTOCOL_STRICT_REGEX.test(inputString);
+ }
+ return PROTOCOL_REGEX.test(inputString) || (opts.acceptRelative ? PROTOCOL_RELATIVE_REGEX.test(inputString) : false);
+}
+const PROTOCOL_SCRIPT_RE = /^[\s\0]*(blob|data|javascript|vbscript):$/i;
+function isScriptProtocol(protocol) {
+ return !!protocol && PROTOCOL_SCRIPT_RE.test(protocol);
+}
+const TRAILING_SLASH_RE = /\/$|\/\?|\/#/;
+function hasTrailingSlash(input = "", respectQueryAndFragment) {
+ if (!respectQueryAndFragment) {
+ return input.endsWith("/");
+ }
+ return TRAILING_SLASH_RE.test(input);
+}
+function withoutTrailingSlash(input = "", respectQueryAndFragment) {
+ if (!respectQueryAndFragment) {
+ return (hasTrailingSlash(input) ? input.slice(0, -1) : input) || "/";
+ }
+ if (!hasTrailingSlash(input, true)) {
+ return input || "/";
+ }
+ let path = input;
+ let fragment = "";
+ const fragmentIndex = input.indexOf("#");
+ if (fragmentIndex >= 0) {
+ path = input.slice(0, fragmentIndex);
+ fragment = input.slice(fragmentIndex);
+ }
+ const [s0, ...s] = path.split("?");
+ return (s0.slice(0, -1) || "/") + (s.length > 0 ? `?${s.join("?")}` : "") + fragment;
+}
+function withTrailingSlash(input = "", respectQueryAndFragment) {
+ if (!respectQueryAndFragment) {
+ return input.endsWith("/") ? input : input + "/";
+ }
+ if (hasTrailingSlash(input, true)) {
+ return input || "/";
+ }
+ let path = input;
+ let fragment = "";
+ const fragmentIndex = input.indexOf("#");
+ if (fragmentIndex >= 0) {
+ path = input.slice(0, fragmentIndex);
+ fragment = input.slice(fragmentIndex);
+ if (!path) {
+ return fragment;
+ }
+ }
+ const [s0, ...s] = path.split("?");
+ return s0 + "/" + (s.length > 0 ? `?${s.join("?")}` : "") + fragment;
+}
+function hasLeadingSlash(input = "") {
+ return input.startsWith("/");
+}
+function withLeadingSlash(input = "") {
+ return hasLeadingSlash(input) ? input : "/" + input;
+}
+function withBase(input, base) {
+ if (isEmptyURL(base) || hasProtocol(input)) {
+ return input;
+ }
+ const _base = withoutTrailingSlash(base);
+ if (input.startsWith(_base)) {
+ return input;
+ }
+ return joinURL(_base, input);
+}
+function withoutBase(input, base) {
+ if (isEmptyURL(base)) {
+ return input;
+ }
+ const _base = withoutTrailingSlash(base);
+ if (!input.startsWith(_base)) {
+ return input;
+ }
+ const trimmed = input.slice(_base.length);
+ return trimmed[0] === "/" ? trimmed : "/" + trimmed;
+}
+function withQuery(input, query) {
+ const parsed = parseURL(input);
+ const mergedQuery = { ...parseQuery(parsed.search), ...query };
+ parsed.search = stringifyQuery(mergedQuery);
+ return stringifyParsedURL(parsed);
+}
+function getQuery$1(input) {
+ return parseQuery(parseURL(input).search);
+}
+function isEmptyURL(url) {
+ return !url || url === "/";
+}
+function isNonEmptyURL(url) {
+ return url && url !== "/";
+}
+const JOIN_LEADING_SLASH_RE = /^\.?\//;
+function joinURL(base, ...input) {
+ let url = base || "";
+ for (const segment of input.filter((url2) => isNonEmptyURL(url2))) {
+ if (url) {
+ const _segment = segment.replace(JOIN_LEADING_SLASH_RE, "");
+ url = withTrailingSlash(url) + _segment;
+ } else {
+ url = segment;
+ }
+ }
+ return url;
+}
+function isEqual(a, b, options = {}) {
+ if (!options.trailingSlash) {
+ a = withTrailingSlash(a);
+ b = withTrailingSlash(b);
+ }
+ if (!options.leadingSlash) {
+ a = withLeadingSlash(a);
+ b = withLeadingSlash(b);
+ }
+ if (!options.encoding) {
+ a = decode(a);
+ b = decode(b);
+ }
+ return a === b;
+}
+
+function parseURL(input = "", defaultProto) {
+ const _specialProtoMatch = input.match(
+ /^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i
+ );
+ if (_specialProtoMatch) {
+ const [, _proto, _pathname = ""] = _specialProtoMatch;
+ return {
+ protocol: _proto.toLowerCase(),
+ pathname: _pathname,
+ href: _proto + _pathname,
+ auth: "",
+ host: "",
+ search: "",
+ hash: ""
+ };
+ }
+ if (!hasProtocol(input, { acceptRelative: true })) {
+ return defaultProto ? parseURL(defaultProto + input) : parsePath(input);
+ }
+ const [, protocol = "", auth, hostAndPath = ""] = input.replace(/\\/g, "/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/) || [];
+ const [, host = "", path = ""] = hostAndPath.match(/([^#/?]*)(.*)?/) || [];
+ const { pathname, search, hash } = parsePath(
+ path.replace(/\/(?=[A-Za-z]:)/, "")
+ );
+ return {
+ protocol: protocol.toLowerCase(),
+ auth: auth ? auth.slice(0, Math.max(0, auth.length - 1)) : "",
+ host,
+ pathname,
+ search,
+ hash
+ };
+}
+function parsePath(input = "") {
+ const [pathname = "", search = "", hash = ""] = (input.match(/([^#?]*)(\?[^#]*)?(#.*)?/) || []).splice(1);
+ return {
+ pathname,
+ search,
+ hash
+ };
+}
+function stringifyParsedURL(parsed) {
+ const pathname = parsed.pathname || "";
+ const search = parsed.search ? (parsed.search.startsWith("?") ? "" : "?") + parsed.search : "";
+ const hash = parsed.hash || "";
+ const auth = parsed.auth ? parsed.auth + "@" : "";
+ const host = parsed.host || "";
+ const proto = parsed.protocol ? parsed.protocol + "//" : "";
+ return proto + auth + host + pathname + search + hash;
+}
+
+const NODE_TYPES = {
+ NORMAL: 0,
+ WILDCARD: 1,
+ PLACEHOLDER: 2
+};
+
+function createRouter$1(options = {}) {
+ const ctx = {
+ options,
+ rootNode: createRadixNode(),
+ staticRoutesMap: {}
+ };
+ const normalizeTrailingSlash = (p) => options.strictTrailingSlash ? p : p.replace(/\/$/, "") || "/";
+ if (options.routes) {
+ for (const path in options.routes) {
+ insert(ctx, normalizeTrailingSlash(path), options.routes[path]);
+ }
+ }
+ return {
+ ctx,
+ // @ts-ignore
+ lookup: (path) => lookup(ctx, normalizeTrailingSlash(path)),
+ insert: (path, data) => insert(ctx, normalizeTrailingSlash(path), data),
+ remove: (path) => remove(ctx, normalizeTrailingSlash(path))
+ };
+}
+function lookup(ctx, path) {
+ const staticPathNode = ctx.staticRoutesMap[path];
+ if (staticPathNode) {
+ return staticPathNode.data;
+ }
+ const sections = path.split("/");
+ const params = {};
+ let paramsFound = false;
+ let wildcardNode = null;
+ let node = ctx.rootNode;
+ let wildCardParam = null;
+ for (let i = 0; i < sections.length; i++) {
+ const section = sections[i];
+ if (node.wildcardChildNode !== null) {
+ wildcardNode = node.wildcardChildNode;
+ wildCardParam = sections.slice(i).join("/");
+ }
+ const nextNode = node.children.get(section);
+ if (nextNode !== void 0) {
+ node = nextNode;
+ } else {
+ node = node.placeholderChildNode;
+ if (node !== null) {
+ params[node.paramName] = section;
+ paramsFound = true;
+ } else {
+ break;
+ }
+ }
+ }
+ if ((node === null || node.data === null) && wildcardNode !== null) {
+ node = wildcardNode;
+ params[node.paramName || "_"] = wildCardParam;
+ paramsFound = true;
+ }
+ if (!node) {
+ return null;
+ }
+ if (paramsFound) {
+ return {
+ ...node.data,
+ params: paramsFound ? params : void 0
+ };
+ }
+ return node.data;
+}
+function insert(ctx, path, data) {
+ let isStaticRoute = true;
+ const sections = path.split("/");
+ let node = ctx.rootNode;
+ let _unnamedPlaceholderCtr = 0;
+ for (const section of sections) {
+ let childNode;
+ if (childNode = node.children.get(section)) {
+ node = childNode;
+ } else {
+ const type = getNodeType(section);
+ childNode = createRadixNode({ type, parent: node });
+ node.children.set(section, childNode);
+ if (type === NODE_TYPES.PLACEHOLDER) {
+ childNode.paramName = section === "*" ? `_${_unnamedPlaceholderCtr++}` : section.slice(1);
+ node.placeholderChildNode = childNode;
+ isStaticRoute = false;
+ } else if (type === NODE_TYPES.WILDCARD) {
+ node.wildcardChildNode = childNode;
+ childNode.paramName = section.slice(
+ 3
+ /* "**:" */
+ ) || "_";
+ isStaticRoute = false;
+ }
+ node = childNode;
+ }
+ }
+ node.data = data;
+ if (isStaticRoute === true) {
+ ctx.staticRoutesMap[path] = node;
+ }
+ return node;
+}
+function remove(ctx, path) {
+ let success = false;
+ const sections = path.split("/");
+ let node = ctx.rootNode;
+ for (const section of sections) {
+ node = node.children.get(section);
+ if (!node) {
+ return success;
+ }
+ }
+ if (node.data) {
+ const lastSection = sections[sections.length - 1];
+ node.data = null;
+ if (Object.keys(node.children).length === 0) {
+ const parentNode = node.parent;
+ parentNode.children.delete(lastSection);
+ parentNode.wildcardChildNode = null;
+ parentNode.placeholderChildNode = null;
+ }
+ success = true;
+ }
+ return success;
+}
+function createRadixNode(options = {}) {
+ return {
+ type: options.type || NODE_TYPES.NORMAL,
+ parent: options.parent || null,
+ children: /* @__PURE__ */ new Map(),
+ data: options.data || null,
+ paramName: options.paramName || null,
+ wildcardChildNode: null,
+ placeholderChildNode: null
+ };
+}
+function getNodeType(str) {
+ if (str.startsWith("**")) {
+ return NODE_TYPES.WILDCARD;
+ }
+ if (str[0] === ":" || str === "*") {
+ return NODE_TYPES.PLACEHOLDER;
+ }
+ return NODE_TYPES.NORMAL;
+}
+
+function toRouteMatcher(router) {
+ const table = _routerNodeToTable("", router.ctx.rootNode);
+ return _createMatcher(table);
+}
+function _createMatcher(table) {
+ return {
+ ctx: { table },
+ matchAll: (path) => _matchRoutes(path, table)
+ };
+}
+function _createRouteTable() {
+ return {
+ static: /* @__PURE__ */ new Map(),
+ wildcard: /* @__PURE__ */ new Map(),
+ dynamic: /* @__PURE__ */ new Map()
+ };
+}
+function _matchRoutes(path, table) {
+ const matches = [];
+ for (const [key, value] of _sortRoutesMap(table.wildcard)) {
+ if (path.startsWith(key)) {
+ matches.push(value);
+ }
+ }
+ for (const [key, value] of _sortRoutesMap(table.dynamic)) {
+ if (path.startsWith(key + "/")) {
+ const subPath = "/" + path.slice(key.length).split("/").splice(2).join("/");
+ matches.push(..._matchRoutes(subPath, value));
+ }
+ }
+ const staticMatch = table.static.get(path);
+ if (staticMatch) {
+ matches.push(staticMatch);
+ }
+ return matches.filter(Boolean);
+}
+function _sortRoutesMap(m) {
+ return [...m.entries()].sort((a, b) => a[0].length - b[0].length);
+}
+function _routerNodeToTable(initialPath, initialNode) {
+ const table = _createRouteTable();
+ function _addNode(path, node) {
+ if (path) {
+ if (node.type === NODE_TYPES.NORMAL && !(path.includes("*") || path.includes(":"))) {
+ table.static.set(path, node.data);
+ } else if (node.type === NODE_TYPES.WILDCARD) {
+ table.wildcard.set(path.replace("/**", ""), node.data);
+ } else if (node.type === NODE_TYPES.PLACEHOLDER) {
+ const subTable = _routerNodeToTable("", node);
+ if (node.data) {
+ subTable.static.set("/", node.data);
+ }
+ table.dynamic.set(path.replace(/\/\*|\/:\w+/, ""), subTable);
+ return;
+ }
+ }
+ for (const [childPath, child] of node.children.entries()) {
+ _addNode(`${path}/${childPath}`.replace("//", "/"), child);
+ }
+ }
+ _addNode(initialPath, initialNode);
+ return table;
+}
+
+function _defu(baseObject, defaults, namespace = ".", merger) {
+ if (!_isPlainObject(defaults)) {
+ return _defu(baseObject, {}, namespace, merger);
+ }
+ const object = Object.assign({}, defaults);
+ for (const key in baseObject) {
+ if (key === "__proto__" || key === "constructor") {
+ continue;
+ }
+ const value = baseObject[key];
+ if (value === null || value === void 0) {
+ continue;
+ }
+ if (merger && merger(object, key, value, namespace)) {
+ continue;
+ }
+ if (Array.isArray(value) && Array.isArray(object[key])) {
+ object[key] = [...value, ...object[key]];
+ } else if (_isPlainObject(value) && _isPlainObject(object[key])) {
+ object[key] = _defu(
+ value,
+ object[key],
+ (namespace ? `${namespace}.` : "") + key.toString(),
+ merger
+ );
+ } else {
+ object[key] = value;
+ }
+ }
+ return object;
+}
+function _isPlainObject(value) {
+ if (value === null || typeof value !== "object") {
+ return false;
+ }
+ const prototype = Object.getPrototypeOf(value);
+ return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in value) && !(Symbol.iterator in value);
+}
+function createDefu(merger) {
+ return (...arguments_) => (
+ // eslint-disable-next-line unicorn/no-array-reduce
+ arguments_.reduce((p, c) => _defu(p, c, "", merger), {})
+ );
+}
+const defu = createDefu();
+const defuFn = createDefu((object, key, currentValue) => {
+ if (object[key] !== void 0 && typeof currentValue === "function") {
+ object[key] = currentValue(object[key]);
+ return true;
+ }
+});
+
+function rawHeaders(headers) {
+ const rawHeaders2 = [];
+ for (const key in headers) {
+ if (Array.isArray(headers[key])) {
+ for (const h of headers[key]) {
+ rawHeaders2.push(key, h);
+ }
+ } else {
+ rawHeaders2.push(key, headers[key]);
+ }
+ }
+ return rawHeaders2;
+}
+function mergeFns(...functions) {
+ return function(...args) {
+ for (const fn of functions) {
+ fn(...args);
+ }
+ };
+}
+function createNotImplementedError(name) {
+ throw new Error(`[unenv] ${name} is not implemented yet!`);
+}
+
+let defaultMaxListeners = 10;
+let EventEmitter$1 = class EventEmitter {
+ __unenv__ = true;
+ _events = /* @__PURE__ */ Object.create(null);
+ _maxListeners;
+ static get defaultMaxListeners() {
+ return defaultMaxListeners;
+ }
+ static set defaultMaxListeners(arg) {
+ if (typeof arg !== "number" || arg < 0 || Number.isNaN(arg)) {
+ throw new RangeError(
+ 'The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + arg + "."
+ );
+ }
+ defaultMaxListeners = arg;
+ }
+ setMaxListeners(n) {
+ if (typeof n !== "number" || n < 0 || Number.isNaN(n)) {
+ throw new RangeError(
+ 'The value of "n" is out of range. It must be a non-negative number. Received ' + n + "."
+ );
+ }
+ this._maxListeners = n;
+ return this;
+ }
+ getMaxListeners() {
+ return _getMaxListeners(this);
+ }
+ emit(type, ...args) {
+ if (!this._events[type] || this._events[type].length === 0) {
+ return false;
+ }
+ if (type === "error") {
+ let er;
+ if (args.length > 0) {
+ er = args[0];
+ }
+ if (er instanceof Error) {
+ throw er;
+ }
+ const err = new Error(
+ "Unhandled error." + (er ? " (" + er.message + ")" : "")
+ );
+ err.context = er;
+ throw err;
+ }
+ for (const _listener of this._events[type]) {
+ (_listener.listener || _listener).apply(this, args);
+ }
+ return true;
+ }
+ addListener(type, listener) {
+ return _addListener(this, type, listener, false);
+ }
+ on(type, listener) {
+ return _addListener(this, type, listener, false);
+ }
+ prependListener(type, listener) {
+ return _addListener(this, type, listener, true);
+ }
+ once(type, listener) {
+ return this.on(type, _wrapOnce(this, type, listener));
+ }
+ prependOnceListener(type, listener) {
+ return this.prependListener(type, _wrapOnce(this, type, listener));
+ }
+ removeListener(type, listener) {
+ return _removeListener(this, type, listener);
+ }
+ off(type, listener) {
+ return this.removeListener(type, listener);
+ }
+ removeAllListeners(type) {
+ return _removeAllListeners(this, type);
+ }
+ listeners(type) {
+ return _listeners(this, type, true);
+ }
+ rawListeners(type) {
+ return _listeners(this, type, false);
+ }
+ listenerCount(type) {
+ return this.rawListeners(type).length;
+ }
+ eventNames() {
+ return Object.keys(this._events);
+ }
+};
+function _addListener(target, type, listener, prepend) {
+ _checkListener(listener);
+ if (target._events.newListener !== void 0) {
+ target.emit("newListener", type, listener.listener || listener);
+ }
+ if (!target._events[type]) {
+ target._events[type] = [];
+ }
+ if (prepend) {
+ target._events[type].unshift(listener);
+ } else {
+ target._events[type].push(listener);
+ }
+ const maxListeners = _getMaxListeners(target);
+ if (maxListeners > 0 && target._events[type].length > maxListeners && !target._events[type].warned) {
+ target._events[type].warned = true;
+ const warning = new Error(
+ `[unenv] Possible EventEmitter memory leak detected. ${target._events[type].length} ${type} listeners added. Use emitter.setMaxListeners() to increase limit`
+ );
+ warning.name = "MaxListenersExceededWarning";
+ warning.emitter = target;
+ warning.type = type;
+ warning.count = target._events[type]?.length;
+ console.warn(warning);
+ }
+ return target;
+}
+function _removeListener(target, type, listener) {
+ _checkListener(listener);
+ if (!target._events[type] || target._events[type].length === 0) {
+ return target;
+ }
+ const lenBeforeFilter = target._events[type].length;
+ target._events[type] = target._events[type].filter((fn) => fn !== listener);
+ if (lenBeforeFilter === target._events[type].length) {
+ return target;
+ }
+ if (target._events.removeListener) {
+ target.emit("removeListener", type, listener.listener || listener);
+ }
+ if (target._events[type].length === 0) {
+ delete target._events[type];
+ }
+ return target;
+}
+function _removeAllListeners(target, type) {
+ if (!target._events[type] || target._events[type].length === 0) {
+ return target;
+ }
+ if (target._events.removeListener) {
+ for (const _listener of target._events[type]) {
+ target.emit("removeListener", type, _listener.listener || _listener);
+ }
+ }
+ delete target._events[type];
+ return target;
+}
+function _wrapOnce(target, type, listener) {
+ let fired = false;
+ const wrapper = (...args) => {
+ if (fired) {
+ return;
+ }
+ target.removeListener(type, wrapper);
+ fired = true;
+ return args.length === 0 ? listener.call(target) : listener.apply(target, args);
+ };
+ wrapper.listener = listener;
+ return wrapper;
+}
+function _getMaxListeners(target) {
+ return target._maxListeners ?? EventEmitter$1.defaultMaxListeners;
+}
+function _listeners(target, type, unwrap) {
+ let listeners = target._events[type];
+ if (typeof listeners === "function") {
+ listeners = [listeners];
+ }
+ return unwrap ? listeners.map((l) => l.listener || l) : listeners;
+}
+function _checkListener(listener) {
+ if (typeof listener !== "function") {
+ throw new TypeError(
+ 'The "listener" argument must be of type Function. Received type ' + typeof listener
+ );
+ }
+}
+
+const EventEmitter = globalThis.EventEmitter || EventEmitter$1;
+
+class _Readable extends EventEmitter {
+ __unenv__ = true;
+ readableEncoding = null;
+ readableEnded = true;
+ readableFlowing = false;
+ readableHighWaterMark = 0;
+ readableLength = 0;
+ readableObjectMode = false;
+ readableAborted = false;
+ readableDidRead = false;
+ closed = false;
+ errored = null;
+ readable = false;
+ destroyed = false;
+ static from(_iterable, options) {
+ return new _Readable(options);
+ }
+ constructor(_opts) {
+ super();
+ }
+ _read(_size) {
+ }
+ read(_size) {
+ }
+ setEncoding(_encoding) {
+ return this;
+ }
+ pause() {
+ return this;
+ }
+ resume() {
+ return this;
+ }
+ isPaused() {
+ return true;
+ }
+ unpipe(_destination) {
+ return this;
+ }
+ unshift(_chunk, _encoding) {
+ }
+ wrap(_oldStream) {
+ return this;
+ }
+ push(_chunk, _encoding) {
+ return false;
+ }
+ _destroy(_error, _callback) {
+ this.removeAllListeners();
+ }
+ destroy(error) {
+ this.destroyed = true;
+ this._destroy(error);
+ return this;
+ }
+ pipe(_destenition, _options) {
+ return {};
+ }
+ compose(stream, options) {
+ throw new Error("[unenv] Method not implemented.");
+ }
+ [Symbol.asyncDispose]() {
+ this.destroy();
+ return Promise.resolve();
+ }
+ async *[Symbol.asyncIterator]() {
+ throw createNotImplementedError("Readable.asyncIterator");
+ }
+ iterator(options) {
+ throw createNotImplementedError("Readable.iterator");
+ }
+ map(fn, options) {
+ throw createNotImplementedError("Readable.map");
+ }
+ filter(fn, options) {
+ throw createNotImplementedError("Readable.filter");
+ }
+ forEach(fn, options) {
+ throw createNotImplementedError("Readable.forEach");
+ }
+ reduce(fn, initialValue, options) {
+ throw createNotImplementedError("Readable.reduce");
+ }
+ find(fn, options) {
+ throw createNotImplementedError("Readable.find");
+ }
+ findIndex(fn, options) {
+ throw createNotImplementedError("Readable.findIndex");
+ }
+ some(fn, options) {
+ throw createNotImplementedError("Readable.some");
+ }
+ toArray(options) {
+ throw createNotImplementedError("Readable.toArray");
+ }
+ every(fn, options) {
+ throw createNotImplementedError("Readable.every");
+ }
+ flatMap(fn, options) {
+ throw createNotImplementedError("Readable.flatMap");
+ }
+ drop(limit, options) {
+ throw createNotImplementedError("Readable.drop");
+ }
+ take(limit, options) {
+ throw createNotImplementedError("Readable.take");
+ }
+ asIndexedPairs(options) {
+ throw createNotImplementedError("Readable.asIndexedPairs");
+ }
+}
+const Readable = globalThis.Readable || _Readable;
+
+class _Writable extends EventEmitter {
+ __unenv__ = true;
+ writable = true;
+ writableEnded = false;
+ writableFinished = false;
+ writableHighWaterMark = 0;
+ writableLength = 0;
+ writableObjectMode = false;
+ writableCorked = 0;
+ closed = false;
+ errored = null;
+ writableNeedDrain = false;
+ destroyed = false;
+ _data;
+ _encoding = "utf-8";
+ constructor(_opts) {
+ super();
+ }
+ pipe(_destenition, _options) {
+ return {};
+ }
+ _write(chunk, encoding, callback) {
+ if (this.writableEnded) {
+ if (callback) {
+ callback();
+ }
+ return;
+ }
+ if (this._data === void 0) {
+ this._data = chunk;
+ } else {
+ const a = typeof this._data === "string" ? Buffer.from(this._data, this._encoding || encoding || "utf8") : this._data;
+ const b = typeof chunk === "string" ? Buffer.from(chunk, encoding || this._encoding || "utf8") : chunk;
+ this._data = Buffer.concat([a, b]);
+ }
+ this._encoding = encoding;
+ if (callback) {
+ callback();
+ }
+ }
+ _writev(_chunks, _callback) {
+ }
+ _destroy(_error, _callback) {
+ }
+ _final(_callback) {
+ }
+ write(chunk, arg2, arg3) {
+ const encoding = typeof arg2 === "string" ? this._encoding : "utf-8";
+ const cb = typeof arg2 === "function" ? arg2 : typeof arg3 === "function" ? arg3 : void 0;
+ this._write(chunk, encoding, cb);
+ return true;
+ }
+ setDefaultEncoding(_encoding) {
+ return this;
+ }
+ end(arg1, arg2, arg3) {
+ const callback = typeof arg1 === "function" ? arg1 : typeof arg2 === "function" ? arg2 : typeof arg3 === "function" ? arg3 : void 0;
+ if (this.writableEnded) {
+ if (callback) {
+ callback();
+ }
+ return this;
+ }
+ const data = arg1 === callback ? void 0 : arg1;
+ if (data) {
+ const encoding = arg2 === callback ? void 0 : arg2;
+ this.write(data, encoding, callback);
+ }
+ this.writableEnded = true;
+ this.writableFinished = true;
+ this.emit("close");
+ this.emit("finish");
+ return this;
+ }
+ cork() {
+ }
+ uncork() {
+ }
+ destroy(_error) {
+ this.destroyed = true;
+ delete this._data;
+ this.removeAllListeners();
+ return this;
+ }
+ compose(stream, options) {
+ throw new Error("[h3] Method not implemented.");
+ }
+}
+const Writable = globalThis.Writable || _Writable;
+
+const __Duplex = class {
+ allowHalfOpen = true;
+ _destroy;
+ constructor(readable = new Readable(), writable = new Writable()) {
+ Object.assign(this, readable);
+ Object.assign(this, writable);
+ this._destroy = mergeFns(readable._destroy, writable._destroy);
+ }
+};
+function getDuplex() {
+ Object.assign(__Duplex.prototype, Readable.prototype);
+ Object.assign(__Duplex.prototype, Writable.prototype);
+ return __Duplex;
+}
+const _Duplex = /* @__PURE__ */ getDuplex();
+const Duplex = globalThis.Duplex || _Duplex;
+
+class Socket extends Duplex {
+ __unenv__ = true;
+ bufferSize = 0;
+ bytesRead = 0;
+ bytesWritten = 0;
+ connecting = false;
+ destroyed = false;
+ pending = false;
+ localAddress = "";
+ localPort = 0;
+ remoteAddress = "";
+ remoteFamily = "";
+ remotePort = 0;
+ autoSelectFamilyAttemptedAddresses = [];
+ readyState = "readOnly";
+ constructor(_options) {
+ super();
+ }
+ write(_buffer, _arg1, _arg2) {
+ return false;
+ }
+ connect(_arg1, _arg2, _arg3) {
+ return this;
+ }
+ end(_arg1, _arg2, _arg3) {
+ return this;
+ }
+ setEncoding(_encoding) {
+ return this;
+ }
+ pause() {
+ return this;
+ }
+ resume() {
+ return this;
+ }
+ setTimeout(_timeout, _callback) {
+ return this;
+ }
+ setNoDelay(_noDelay) {
+ return this;
+ }
+ setKeepAlive(_enable, _initialDelay) {
+ return this;
+ }
+ address() {
+ return {};
+ }
+ unref() {
+ return this;
+ }
+ ref() {
+ return this;
+ }
+ destroySoon() {
+ this.destroy();
+ }
+ resetAndDestroy() {
+ const err = new Error("ERR_SOCKET_CLOSED");
+ err.code = "ERR_SOCKET_CLOSED";
+ this.destroy(err);
+ return this;
+ }
+}
+
+class IncomingMessage extends Readable {
+ __unenv__ = {};
+ aborted = false;
+ httpVersion = "1.1";
+ httpVersionMajor = 1;
+ httpVersionMinor = 1;
+ complete = true;
+ connection;
+ socket;
+ headers = {};
+ trailers = {};
+ method = "GET";
+ url = "/";
+ statusCode = 200;
+ statusMessage = "";
+ closed = false;
+ errored = null;
+ readable = false;
+ constructor(socket) {
+ super();
+ this.socket = this.connection = socket || new Socket();
+ }
+ get rawHeaders() {
+ return rawHeaders(this.headers);
+ }
+ get rawTrailers() {
+ return [];
+ }
+ setTimeout(_msecs, _callback) {
+ return this;
+ }
+ get headersDistinct() {
+ return _distinct(this.headers);
+ }
+ get trailersDistinct() {
+ return _distinct(this.trailers);
+ }
+}
+function _distinct(obj) {
+ const d = {};
+ for (const [key, value] of Object.entries(obj)) {
+ if (key) {
+ d[key] = (Array.isArray(value) ? value : [value]).filter(
+ Boolean
+ );
+ }
+ }
+ return d;
+}
+
+class ServerResponse extends Writable {
+ __unenv__ = true;
+ statusCode = 200;
+ statusMessage = "";
+ upgrading = false;
+ chunkedEncoding = false;
+ shouldKeepAlive = false;
+ useChunkedEncodingByDefault = false;
+ sendDate = false;
+ finished = false;
+ headersSent = false;
+ strictContentLength = false;
+ connection = null;
+ socket = null;
+ req;
+ _headers = {};
+ constructor(req) {
+ super();
+ this.req = req;
+ }
+ assignSocket(socket) {
+ socket._httpMessage = this;
+ this.socket = socket;
+ this.connection = socket;
+ this.emit("socket", socket);
+ this._flush();
+ }
+ _flush() {
+ this.flushHeaders();
+ }
+ detachSocket(_socket) {
+ }
+ writeContinue(_callback) {
+ }
+ writeHead(statusCode, arg1, arg2) {
+ if (statusCode) {
+ this.statusCode = statusCode;
+ }
+ if (typeof arg1 === "string") {
+ this.statusMessage = arg1;
+ arg1 = void 0;
+ }
+ const headers = arg2 || arg1;
+ if (headers) {
+ if (Array.isArray(headers)) ; else {
+ for (const key in headers) {
+ this.setHeader(key, headers[key]);
+ }
+ }
+ }
+ this.headersSent = true;
+ return this;
+ }
+ writeProcessing() {
+ }
+ setTimeout(_msecs, _callback) {
+ return this;
+ }
+ appendHeader(name, value) {
+ name = name.toLowerCase();
+ const current = this._headers[name];
+ const all = [
+ ...Array.isArray(current) ? current : [current],
+ ...Array.isArray(value) ? value : [value]
+ ].filter(Boolean);
+ this._headers[name] = all.length > 1 ? all : all[0];
+ return this;
+ }
+ setHeader(name, value) {
+ this._headers[name.toLowerCase()] = value;
+ return this;
+ }
+ getHeader(name) {
+ return this._headers[name.toLowerCase()];
+ }
+ getHeaders() {
+ return this._headers;
+ }
+ getHeaderNames() {
+ return Object.keys(this._headers);
+ }
+ hasHeader(name) {
+ return name.toLowerCase() in this._headers;
+ }
+ removeHeader(name) {
+ delete this._headers[name.toLowerCase()];
+ }
+ addTrailers(_headers) {
+ }
+ flushHeaders() {
+ }
+ writeEarlyHints(_headers, cb) {
+ if (typeof cb === "function") {
+ cb();
+ }
+ }
+}
+
+function hasProp(obj, prop) {
+ try {
+ return prop in obj;
+ } catch {
+ return false;
+ }
+}
+
+var __defProp$1 = Object.defineProperty;
+var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __publicField$1 = (obj, key, value) => {
+ __defNormalProp$1(obj, typeof key !== "symbol" ? key + "" : key, value);
+ return value;
+};
+class H3Error extends Error {
+ constructor(message, opts = {}) {
+ super(message, opts);
+ __publicField$1(this, "statusCode", 500);
+ __publicField$1(this, "fatal", false);
+ __publicField$1(this, "unhandled", false);
+ __publicField$1(this, "statusMessage");
+ __publicField$1(this, "data");
+ __publicField$1(this, "cause");
+ if (opts.cause && !this.cause) {
+ this.cause = opts.cause;
+ }
+ }
+ toJSON() {
+ const obj = {
+ message: this.message,
+ statusCode: sanitizeStatusCode(this.statusCode, 500)
+ };
+ if (this.statusMessage) {
+ obj.statusMessage = sanitizeStatusMessage(this.statusMessage);
+ }
+ if (this.data !== void 0) {
+ obj.data = this.data;
+ }
+ return obj;
+ }
+}
+__publicField$1(H3Error, "__h3_error__", true);
+function createError$1(input) {
+ if (typeof input === "string") {
+ return new H3Error(input);
+ }
+ if (isError(input)) {
+ return input;
+ }
+ const err = new H3Error(input.message ?? input.statusMessage ?? "", {
+ cause: input.cause || input
+ });
+ if (hasProp(input, "stack")) {
+ try {
+ Object.defineProperty(err, "stack", {
+ get() {
+ return input.stack;
+ }
+ });
+ } catch {
+ try {
+ err.stack = input.stack;
+ } catch {
+ }
+ }
+ }
+ if (input.data) {
+ err.data = input.data;
+ }
+ if (input.statusCode) {
+ err.statusCode = sanitizeStatusCode(input.statusCode, err.statusCode);
+ } else if (input.status) {
+ err.statusCode = sanitizeStatusCode(input.status, err.statusCode);
+ }
+ if (input.statusMessage) {
+ err.statusMessage = input.statusMessage;
+ } else if (input.statusText) {
+ err.statusMessage = input.statusText;
+ }
+ if (err.statusMessage) {
+ const originalMessage = err.statusMessage;
+ const sanitizedMessage = sanitizeStatusMessage(err.statusMessage);
+ if (sanitizedMessage !== originalMessage) {
+ console.warn(
+ "[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future, `statusMessage` will be sanitized by default."
+ );
+ }
+ }
+ if (input.fatal !== void 0) {
+ err.fatal = input.fatal;
+ }
+ if (input.unhandled !== void 0) {
+ err.unhandled = input.unhandled;
+ }
+ return err;
+}
+function sendError(event, error, debug) {
+ if (event.handled) {
+ return;
+ }
+ const h3Error = isError(error) ? error : createError$1(error);
+ const responseBody = {
+ statusCode: h3Error.statusCode,
+ statusMessage: h3Error.statusMessage,
+ stack: [],
+ data: h3Error.data
+ };
+ if (debug) {
+ responseBody.stack = (h3Error.stack || "").split("\n").map((l) => l.trim());
+ }
+ if (event.handled) {
+ return;
+ }
+ const _code = Number.parseInt(h3Error.statusCode);
+ setResponseStatus(event, _code, h3Error.statusMessage);
+ event.node.res.setHeader("content-type", MIMES.json);
+ event.node.res.end(JSON.stringify(responseBody, void 0, 2));
+}
+function isError(input) {
+ return input?.constructor?.__h3_error__ === true;
+}
+
+function getQuery(event) {
+ return getQuery$1(event.path || "");
+}
+function isMethod(event, expected, allowHead) {
+ if (allowHead && event.method === "HEAD") {
+ return true;
+ }
+ if (typeof expected === "string") {
+ if (event.method === expected) {
+ return true;
+ }
+ } else if (expected.includes(event.method)) {
+ return true;
+ }
+ return false;
+}
+function assertMethod(event, expected, allowHead) {
+ if (!isMethod(event, expected, allowHead)) {
+ throw createError$1({
+ statusCode: 405,
+ statusMessage: "HTTP method is not allowed."
+ });
+ }
+}
+function getRequestHeaders(event) {
+ const _headers = {};
+ for (const key in event.node.req.headers) {
+ const val = event.node.req.headers[key];
+ _headers[key] = Array.isArray(val) ? val.filter(Boolean).join(", ") : val;
+ }
+ return _headers;
+}
+function getRequestHeader(event, name) {
+ const headers = getRequestHeaders(event);
+ const value = headers[name.toLowerCase()];
+ return value;
+}
+
+const RawBodySymbol = Symbol.for("h3RawBody");
+const PayloadMethods$1 = ["PATCH", "POST", "PUT", "DELETE"];
+function readRawBody(event, encoding = "utf8") {
+ assertMethod(event, PayloadMethods$1);
+ const _rawBody = event._requestBody || event.web?.request?.body || event.node.req[RawBodySymbol] || event.node.req.body;
+ if (_rawBody) {
+ const promise2 = Promise.resolve(_rawBody).then((_resolved) => {
+ if (Buffer.isBuffer(_resolved)) {
+ return _resolved;
+ }
+ if (typeof _resolved.pipeTo === "function") {
+ return new Promise((resolve, reject) => {
+ const chunks = [];
+ _resolved.pipeTo(
+ new WritableStream({
+ write(chunk) {
+ chunks.push(chunk);
+ },
+ close() {
+ resolve(Buffer.concat(chunks));
+ },
+ abort(reason) {
+ reject(reason);
+ }
+ })
+ ).catch(reject);
+ });
+ } else if (typeof _resolved.pipe === "function") {
+ return new Promise((resolve, reject) => {
+ const chunks = [];
+ _resolved.on("data", (chunk) => {
+ chunks.push(chunk);
+ }).on("end", () => {
+ resolve(Buffer.concat(chunks));
+ }).on("error", reject);
+ });
+ }
+ if (_resolved.constructor === Object) {
+ return Buffer.from(JSON.stringify(_resolved));
+ }
+ return Buffer.from(_resolved);
+ });
+ return encoding ? promise2.then((buff) => buff.toString(encoding)) : promise2;
+ }
+ if (!Number.parseInt(event.node.req.headers["content-length"] || "")) {
+ return Promise.resolve(void 0);
+ }
+ const promise = event.node.req[RawBodySymbol] = new Promise(
+ (resolve, reject) => {
+ const bodyData = [];
+ event.node.req.on("error", (err) => {
+ reject(err);
+ }).on("data", (chunk) => {
+ bodyData.push(chunk);
+ }).on("end", () => {
+ resolve(Buffer.concat(bodyData));
+ });
+ }
+ );
+ const result = encoding ? promise.then((buff) => buff.toString(encoding)) : promise;
+ return result;
+}
+function getRequestWebStream(event) {
+ if (!PayloadMethods$1.includes(event.method)) {
+ return;
+ }
+ return event.web?.request?.body || event._requestBody || new ReadableStream({
+ start: (controller) => {
+ event.node.req.on("data", (chunk) => {
+ controller.enqueue(chunk);
+ });
+ event.node.req.on("end", () => {
+ controller.close();
+ });
+ event.node.req.on("error", (err) => {
+ controller.error(err);
+ });
+ }
+ });
+}
+
+function handleCacheHeaders(event, opts) {
+ const cacheControls = ["public", ...opts.cacheControls || []];
+ let cacheMatched = false;
+ if (opts.maxAge !== void 0) {
+ cacheControls.push(`max-age=${+opts.maxAge}`, `s-maxage=${+opts.maxAge}`);
+ }
+ if (opts.modifiedTime) {
+ const modifiedTime = new Date(opts.modifiedTime);
+ const ifModifiedSince = event.node.req.headers["if-modified-since"];
+ event.node.res.setHeader("last-modified", modifiedTime.toUTCString());
+ if (ifModifiedSince && new Date(ifModifiedSince) >= opts.modifiedTime) {
+ cacheMatched = true;
+ }
+ }
+ if (opts.etag) {
+ event.node.res.setHeader("etag", opts.etag);
+ const ifNonMatch = event.node.req.headers["if-none-match"];
+ if (ifNonMatch === opts.etag) {
+ cacheMatched = true;
+ }
+ }
+ event.node.res.setHeader("cache-control", cacheControls.join(", "));
+ if (cacheMatched) {
+ event.node.res.statusCode = 304;
+ if (!event.handled) {
+ event.node.res.end();
+ }
+ return true;
+ }
+ return false;
+}
+
+const MIMES = {
+ html: "text/html",
+ json: "application/json"
+};
+
+const DISALLOWED_STATUS_CHARS = /[^\u0009\u0020-\u007E]/g;
+function sanitizeStatusMessage(statusMessage = "") {
+ return statusMessage.replace(DISALLOWED_STATUS_CHARS, "");
+}
+function sanitizeStatusCode(statusCode, defaultStatusCode = 200) {
+ if (!statusCode) {
+ return defaultStatusCode;
+ }
+ if (typeof statusCode === "string") {
+ statusCode = Number.parseInt(statusCode, 10);
+ }
+ if (statusCode < 100 || statusCode > 999) {
+ return defaultStatusCode;
+ }
+ return statusCode;
+}
+function splitCookiesString(cookiesString) {
+ if (Array.isArray(cookiesString)) {
+ return cookiesString.flatMap((c) => splitCookiesString(c));
+ }
+ if (typeof cookiesString !== "string") {
+ return [];
+ }
+ const cookiesStrings = [];
+ let pos = 0;
+ let start;
+ let ch;
+ let lastComma;
+ let nextStart;
+ let cookiesSeparatorFound;
+ const skipWhitespace = () => {
+ while (pos < cookiesString.length && /\s/.test(cookiesString.charAt(pos))) {
+ pos += 1;
+ }
+ return pos < cookiesString.length;
+ };
+ const notSpecialChar = () => {
+ ch = cookiesString.charAt(pos);
+ return ch !== "=" && ch !== ";" && ch !== ",";
+ };
+ while (pos < cookiesString.length) {
+ start = pos;
+ cookiesSeparatorFound = false;
+ while (skipWhitespace()) {
+ ch = cookiesString.charAt(pos);
+ if (ch === ",") {
+ lastComma = pos;
+ pos += 1;
+ skipWhitespace();
+ nextStart = pos;
+ while (pos < cookiesString.length && notSpecialChar()) {
+ pos += 1;
+ }
+ if (pos < cookiesString.length && cookiesString.charAt(pos) === "=") {
+ cookiesSeparatorFound = true;
+ pos = nextStart;
+ cookiesStrings.push(cookiesString.slice(start, lastComma));
+ start = pos;
+ } else {
+ pos = lastComma + 1;
+ }
+ } else {
+ pos += 1;
+ }
+ }
+ if (!cookiesSeparatorFound || pos >= cookiesString.length) {
+ cookiesStrings.push(cookiesString.slice(start, cookiesString.length));
+ }
+ }
+ return cookiesStrings;
+}
+
+const defer = typeof setImmediate === "undefined" ? (fn) => fn() : setImmediate;
+function send(event, data, type) {
+ if (type) {
+ defaultContentType(event, type);
+ }
+ return new Promise((resolve) => {
+ defer(() => {
+ if (!event.handled) {
+ event.node.res.end(data);
+ }
+ resolve();
+ });
+ });
+}
+function sendNoContent(event, code) {
+ if (event.handled) {
+ return;
+ }
+ if (!code && event.node.res.statusCode !== 200) {
+ code = event.node.res.statusCode;
+ }
+ const _code = sanitizeStatusCode(code, 204);
+ if (_code === 204) {
+ event.node.res.removeHeader("content-length");
+ }
+ event.node.res.writeHead(_code);
+ event.node.res.end();
+}
+function setResponseStatus(event, code, text) {
+ if (code) {
+ event.node.res.statusCode = sanitizeStatusCode(
+ code,
+ event.node.res.statusCode
+ );
+ }
+ if (text) {
+ event.node.res.statusMessage = sanitizeStatusMessage(text);
+ }
+}
+function getResponseStatus(event) {
+ return event.node.res.statusCode;
+}
+function getResponseStatusText(event) {
+ return event.node.res.statusMessage;
+}
+function defaultContentType(event, type) {
+ if (type && !event.node.res.getHeader("content-type")) {
+ event.node.res.setHeader("content-type", type);
+ }
+}
+function sendRedirect(event, location, code = 302) {
+ event.node.res.statusCode = sanitizeStatusCode(
+ code,
+ event.node.res.statusCode
+ );
+ event.node.res.setHeader("location", location);
+ const encodedLoc = location.replace(/"/g, "%22");
+ const html = ``;
+ return send(event, html, MIMES.html);
+}
+function getResponseHeader(event, name) {
+ return event.node.res.getHeader(name);
+}
+function setResponseHeaders(event, headers) {
+ for (const [name, value] of Object.entries(headers)) {
+ event.node.res.setHeader(name, value);
+ }
+}
+const setHeaders = setResponseHeaders;
+function setResponseHeader(event, name, value) {
+ event.node.res.setHeader(name, value);
+}
+function removeResponseHeader(event, name) {
+ return event.node.res.removeHeader(name);
+}
+function isStream(data) {
+ if (!data || typeof data !== "object") {
+ return false;
+ }
+ if (typeof data.pipe === "function") {
+ if (typeof data._read === "function") {
+ return true;
+ }
+ if (typeof data.abort === "function") {
+ return true;
+ }
+ }
+ if (typeof data.pipeTo === "function") {
+ return true;
+ }
+ return false;
+}
+function isWebResponse(data) {
+ return typeof Response !== "undefined" && data instanceof Response;
+}
+function sendStream(event, stream) {
+ if (!stream || typeof stream !== "object") {
+ throw new Error("[h3] Invalid stream provided.");
+ }
+ event.node.res._data = stream;
+ if (!event.node.res.socket) {
+ event._handled = true;
+ return Promise.resolve();
+ }
+ if (hasProp(stream, "pipeTo") && typeof stream.pipeTo === "function") {
+ return stream.pipeTo(
+ new WritableStream({
+ write(chunk) {
+ event.node.res.write(chunk);
+ }
+ })
+ ).then(() => {
+ event.node.res.end();
+ });
+ }
+ if (hasProp(stream, "pipe") && typeof stream.pipe === "function") {
+ return new Promise((resolve, reject) => {
+ stream.pipe(event.node.res);
+ if (stream.on) {
+ stream.on("end", () => {
+ event.node.res.end();
+ resolve();
+ });
+ stream.on("error", (error) => {
+ reject(error);
+ });
+ }
+ event.node.res.on("close", () => {
+ if (stream.abort) {
+ stream.abort();
+ }
+ });
+ });
+ }
+ throw new Error("[h3] Invalid or incompatible stream provided.");
+}
+function sendWebResponse(event, response) {
+ for (const [key, value] of response.headers) {
+ if (key === "set-cookie") {
+ event.node.res.appendHeader(key, splitCookiesString(value));
+ } else {
+ event.node.res.setHeader(key, value);
+ }
+ }
+ if (response.status) {
+ event.node.res.statusCode = sanitizeStatusCode(
+ response.status,
+ event.node.res.statusCode
+ );
+ }
+ if (response.statusText) {
+ event.node.res.statusMessage = sanitizeStatusMessage(response.statusText);
+ }
+ if (response.redirected) {
+ event.node.res.setHeader("location", response.url);
+ }
+ if (!response.body) {
+ event.node.res.end();
+ return;
+ }
+ return sendStream(event, response.body);
+}
+
+const PayloadMethods = /* @__PURE__ */ new Set(["PATCH", "POST", "PUT", "DELETE"]);
+const ignoredHeaders = /* @__PURE__ */ new Set([
+ "transfer-encoding",
+ "connection",
+ "keep-alive",
+ "upgrade",
+ "expect",
+ "host"
+]);
+async function proxyRequest(event, target, opts = {}) {
+ let body;
+ let duplex;
+ if (PayloadMethods.has(event.method)) {
+ if (opts.streamRequest) {
+ body = getRequestWebStream(event);
+ duplex = "half";
+ } else {
+ body = await readRawBody(event, false).catch(() => void 0);
+ }
+ }
+ const method = opts.fetchOptions?.method || event.method;
+ const fetchHeaders = mergeHeaders(
+ getProxyRequestHeaders(event),
+ opts.fetchOptions?.headers,
+ opts.headers
+ );
+ return sendProxy(event, target, {
+ ...opts,
+ fetchOptions: {
+ method,
+ body,
+ duplex,
+ ...opts.fetchOptions,
+ headers: fetchHeaders
+ }
+ });
+}
+async function sendProxy(event, target, opts = {}) {
+ const response = await _getFetch(opts.fetch)(target, {
+ headers: opts.headers,
+ ignoreResponseError: true,
+ // make $ofetch.raw transparent
+ ...opts.fetchOptions
+ });
+ event.node.res.statusCode = sanitizeStatusCode(
+ response.status,
+ event.node.res.statusCode
+ );
+ event.node.res.statusMessage = sanitizeStatusMessage(response.statusText);
+ const cookies = [];
+ for (const [key, value] of response.headers.entries()) {
+ if (key === "content-encoding") {
+ continue;
+ }
+ if (key === "content-length") {
+ continue;
+ }
+ if (key === "set-cookie") {
+ cookies.push(...splitCookiesString(value));
+ continue;
+ }
+ event.node.res.setHeader(key, value);
+ }
+ if (cookies.length > 0) {
+ event.node.res.setHeader(
+ "set-cookie",
+ cookies.map((cookie) => {
+ if (opts.cookieDomainRewrite) {
+ cookie = rewriteCookieProperty(
+ cookie,
+ opts.cookieDomainRewrite,
+ "domain"
+ );
+ }
+ if (opts.cookiePathRewrite) {
+ cookie = rewriteCookieProperty(
+ cookie,
+ opts.cookiePathRewrite,
+ "path"
+ );
+ }
+ return cookie;
+ })
+ );
+ }
+ if (opts.onResponse) {
+ await opts.onResponse(event, response);
+ }
+ if (response._data !== void 0) {
+ return response._data;
+ }
+ if (event.handled) {
+ return;
+ }
+ if (opts.sendStream === false) {
+ const data = new Uint8Array(await response.arrayBuffer());
+ return event.node.res.end(data);
+ }
+ if (response.body) {
+ for await (const chunk of response.body) {
+ event.node.res.write(chunk);
+ }
+ }
+ return event.node.res.end();
+}
+function getProxyRequestHeaders(event) {
+ const headers = /* @__PURE__ */ Object.create(null);
+ const reqHeaders = getRequestHeaders(event);
+ for (const name in reqHeaders) {
+ if (!ignoredHeaders.has(name)) {
+ headers[name] = reqHeaders[name];
+ }
+ }
+ return headers;
+}
+function fetchWithEvent(event, req, init, options) {
+ return _getFetch(options?.fetch)(req, {
+ ...init,
+ context: init?.context || event.context,
+ headers: {
+ ...getProxyRequestHeaders(event),
+ ...init?.headers
+ }
+ });
+}
+function _getFetch(_fetch) {
+ if (_fetch) {
+ return _fetch;
+ }
+ if (globalThis.fetch) {
+ return globalThis.fetch;
+ }
+ throw new Error(
+ "fetch is not available. Try importing `node-fetch-native/polyfill` for Node.js."
+ );
+}
+function rewriteCookieProperty(header, map, property) {
+ const _map = typeof map === "string" ? { "*": map } : map;
+ return header.replace(
+ new RegExp(`(;\\s*${property}=)([^;]+)`, "gi"),
+ (match, prefix, previousValue) => {
+ let newValue;
+ if (previousValue in _map) {
+ newValue = _map[previousValue];
+ } else if ("*" in _map) {
+ newValue = _map["*"];
+ } else {
+ return match;
+ }
+ return newValue ? prefix + newValue : "";
+ }
+ );
+}
+function mergeHeaders(defaults, ...inputs) {
+ const _inputs = inputs.filter(Boolean);
+ if (_inputs.length === 0) {
+ return defaults;
+ }
+ const merged = new Headers(defaults);
+ for (const input of _inputs) {
+ for (const [key, value] of Object.entries(input)) {
+ if (value !== void 0) {
+ merged.set(key, value);
+ }
+ }
+ }
+ return merged;
+}
+
+var __defProp = Object.defineProperty;
+var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __publicField = (obj, key, value) => {
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
+ return value;
+};
+class H3Event {
+ constructor(req, res) {
+ __publicField(this, "__is_event__", true);
+ // Context
+ __publicField(this, "node");
+ // Node
+ __publicField(this, "web");
+ // Web
+ __publicField(this, "context", {});
+ // Shared
+ // Request
+ __publicField(this, "_method");
+ __publicField(this, "_path");
+ __publicField(this, "_headers");
+ __publicField(this, "_requestBody");
+ // Response
+ __publicField(this, "_handled", false);
+ this.node = { req, res };
+ }
+ // --- Request ---
+ get method() {
+ if (!this._method) {
+ this._method = (this.node.req.method || "GET").toUpperCase();
+ }
+ return this._method;
+ }
+ get path() {
+ return this._path || this.node.req.url || "/";
+ }
+ get headers() {
+ if (!this._headers) {
+ this._headers = _normalizeNodeHeaders(this.node.req.headers);
+ }
+ return this._headers;
+ }
+ // --- Respoonse ---
+ get handled() {
+ return this._handled || this.node.res.writableEnded || this.node.res.headersSent;
+ }
+ respondWith(response) {
+ return Promise.resolve(response).then(
+ (_response) => sendWebResponse(this, _response)
+ );
+ }
+ // --- Utils ---
+ toString() {
+ return `[${this.method}] ${this.path}`;
+ }
+ toJSON() {
+ return this.toString();
+ }
+ // --- Deprecated ---
+ /** @deprecated Please use `event.node.req` instead. **/
+ get req() {
+ return this.node.req;
+ }
+ /** @deprecated Please use `event.node.res` instead. **/
+ get res() {
+ return this.node.res;
+ }
+}
+function isEvent(input) {
+ return hasProp(input, "__is_event__");
+}
+function createEvent(req, res) {
+ return new H3Event(req, res);
+}
+function _normalizeNodeHeaders(nodeHeaders) {
+ const headers = new Headers();
+ for (const [name, value] of Object.entries(nodeHeaders)) {
+ if (Array.isArray(value)) {
+ for (const item of value) {
+ headers.append(name, item);
+ }
+ } else if (value) {
+ headers.set(name, value);
+ }
+ }
+ return headers;
+}
+
+function defineEventHandler(handler) {
+ if (typeof handler === "function") {
+ return Object.assign(handler, { __is_handler__: true });
+ }
+ const _hooks = {
+ onRequest: _normalizeArray(handler.onRequest),
+ onBeforeResponse: _normalizeArray(handler.onBeforeResponse)
+ };
+ const _handler = (event) => {
+ return _callHandler(event, handler.handler, _hooks);
+ };
+ return Object.assign(_handler, { __is_handler__: true });
+}
+function _normalizeArray(input) {
+ return input ? Array.isArray(input) ? input : [input] : void 0;
+}
+async function _callHandler(event, handler, hooks) {
+ if (hooks.onRequest) {
+ for (const hook of hooks.onRequest) {
+ await hook(event);
+ if (event.handled) {
+ return;
+ }
+ }
+ }
+ const body = await handler(event);
+ const response = { body };
+ if (hooks.onBeforeResponse) {
+ for (const hook of hooks.onBeforeResponse) {
+ await hook(event, response);
+ }
+ }
+ return response.body;
+}
+const eventHandler = defineEventHandler;
+function isEventHandler(input) {
+ return hasProp(input, "__is_handler__");
+}
+function toEventHandler(input, _, _route) {
+ if (!isEventHandler(input)) {
+ console.warn(
+ "[h3] Implicit event handler conversion is deprecated. Use `eventHandler()` or `fromNodeMiddleware()` to define event handlers.",
+ _route && _route !== "/" ? `
+ Route: ${_route}` : "",
+ `
+ Handler: ${input}`
+ );
+ }
+ return input;
+}
+function defineLazyEventHandler(factory) {
+ let _promise;
+ let _resolved;
+ const resolveHandler = () => {
+ if (_resolved) {
+ return Promise.resolve(_resolved);
+ }
+ if (!_promise) {
+ _promise = Promise.resolve(factory()).then((r) => {
+ const handler = r.default || r;
+ if (typeof handler !== "function") {
+ throw new TypeError(
+ "Invalid lazy handler result. It should be a function:",
+ handler
+ );
+ }
+ _resolved = toEventHandler(r.default || r);
+ return _resolved;
+ });
+ }
+ return _promise;
+ };
+ return eventHandler((event) => {
+ if (_resolved) {
+ return _resolved(event);
+ }
+ return resolveHandler().then((handler) => handler(event));
+ });
+}
+const lazyEventHandler = defineLazyEventHandler;
+
+function createApp(options = {}) {
+ const stack = [];
+ const handler = createAppEventHandler(stack, options);
+ const app = {
+ // @ts-ignore
+ use: (arg1, arg2, arg3) => use(app, arg1, arg2, arg3),
+ handler,
+ stack,
+ options
+ };
+ return app;
+}
+function use(app, arg1, arg2, arg3) {
+ if (Array.isArray(arg1)) {
+ for (const i of arg1) {
+ use(app, i, arg2, arg3);
+ }
+ } else if (Array.isArray(arg2)) {
+ for (const i of arg2) {
+ use(app, arg1, i, arg3);
+ }
+ } else if (typeof arg1 === "string") {
+ app.stack.push(
+ normalizeLayer({ ...arg3, route: arg1, handler: arg2 })
+ );
+ } else if (typeof arg1 === "function") {
+ app.stack.push(
+ normalizeLayer({ ...arg2, route: "/", handler: arg1 })
+ );
+ } else {
+ app.stack.push(normalizeLayer({ ...arg1 }));
+ }
+ return app;
+}
+function createAppEventHandler(stack, options) {
+ const spacing = options.debug ? 2 : void 0;
+ return eventHandler(async (event) => {
+ event.node.req.originalUrl = event.node.req.originalUrl || event.node.req.url || "/";
+ const _reqPath = event._path || event.node.req.url || "/";
+ let _layerPath;
+ if (options.onRequest) {
+ await options.onRequest(event);
+ }
+ for (const layer of stack) {
+ if (layer.route.length > 1) {
+ if (!_reqPath.startsWith(layer.route)) {
+ continue;
+ }
+ _layerPath = _reqPath.slice(layer.route.length) || "/";
+ } else {
+ _layerPath = _reqPath;
+ }
+ if (layer.match && !layer.match(_layerPath, event)) {
+ continue;
+ }
+ event._path = _layerPath;
+ event.node.req.url = _layerPath;
+ const val = await layer.handler(event);
+ const _body = val === void 0 ? void 0 : await val;
+ if (_body !== void 0) {
+ const _response = { body: _body };
+ if (options.onBeforeResponse) {
+ await options.onBeforeResponse(event, _response);
+ }
+ await handleHandlerResponse(event, _response.body, spacing);
+ if (options.onAfterResponse) {
+ await options.onAfterResponse(event, _response);
+ }
+ return;
+ }
+ if (event.handled) {
+ if (options.onAfterResponse) {
+ await options.onAfterResponse(event, void 0);
+ }
+ return;
+ }
+ }
+ if (!event.handled) {
+ throw createError$1({
+ statusCode: 404,
+ statusMessage: `Cannot find any path matching ${event.path || "/"}.`
+ });
+ }
+ if (options.onAfterResponse) {
+ await options.onAfterResponse(event, void 0);
+ }
+ });
+}
+function normalizeLayer(input) {
+ let handler = input.handler;
+ if (handler.handler) {
+ handler = handler.handler;
+ }
+ if (input.lazy) {
+ handler = lazyEventHandler(handler);
+ } else if (!isEventHandler(handler)) {
+ handler = toEventHandler(handler, void 0, input.route);
+ }
+ return {
+ route: withoutTrailingSlash(input.route),
+ match: input.match,
+ handler
+ };
+}
+function handleHandlerResponse(event, val, jsonSpace) {
+ if (val === null) {
+ return sendNoContent(event);
+ }
+ if (val) {
+ if (isWebResponse(val)) {
+ return sendWebResponse(event, val);
+ }
+ if (isStream(val)) {
+ return sendStream(event, val);
+ }
+ if (val.buffer) {
+ return send(event, val);
+ }
+ if (val.arrayBuffer && typeof val.arrayBuffer === "function") {
+ return val.arrayBuffer().then((arrayBuffer) => {
+ return send(event, Buffer.from(arrayBuffer), val.type);
+ });
+ }
+ if (val instanceof Error) {
+ throw createError$1(val);
+ }
+ if (typeof val.end === "function") {
+ return true;
+ }
+ }
+ const valType = typeof val;
+ if (valType === "string") {
+ return send(event, val, MIMES.html);
+ }
+ if (valType === "object" || valType === "boolean" || valType === "number") {
+ return send(event, JSON.stringify(val, void 0, jsonSpace), MIMES.json);
+ }
+ if (valType === "bigint") {
+ return send(event, val.toString(), MIMES.json);
+ }
+ throw createError$1({
+ statusCode: 500,
+ statusMessage: `[h3] Cannot send ${valType} as response.`
+ });
+}
+
+const RouterMethods = [
+ "connect",
+ "delete",
+ "get",
+ "head",
+ "options",
+ "post",
+ "put",
+ "trace",
+ "patch"
+];
+function createRouter(opts = {}) {
+ const _router = createRouter$1({});
+ const routes = {};
+ let _matcher;
+ const router = {};
+ const addRoute = (path, handler, method) => {
+ let route = routes[path];
+ if (!route) {
+ routes[path] = route = { path, handlers: {} };
+ _router.insert(path, route);
+ }
+ if (Array.isArray(method)) {
+ for (const m of method) {
+ addRoute(path, handler, m);
+ }
+ } else {
+ route.handlers[method] = toEventHandler(handler, void 0, path);
+ }
+ return router;
+ };
+ router.use = router.add = (path, handler, method) => addRoute(path, handler, method || "all");
+ for (const method of RouterMethods) {
+ router[method] = (path, handle) => router.add(path, handle, method);
+ }
+ router.handler = eventHandler((event) => {
+ let path = event.path || "/";
+ const qIndex = path.indexOf("?");
+ if (qIndex !== -1) {
+ path = path.slice(0, Math.max(0, qIndex));
+ }
+ const matched = _router.lookup(path);
+ if (!matched || !matched.handlers) {
+ if (opts.preemptive || opts.preemtive) {
+ throw createError$1({
+ statusCode: 404,
+ name: "Not Found",
+ statusMessage: `Cannot find any route matching ${event.path || "/"}.`
+ });
+ } else {
+ return;
+ }
+ }
+ const method = (event.node.req.method || "get").toLowerCase();
+ let handler = matched.handlers[method] || matched.handlers.all;
+ if (!handler) {
+ if (!_matcher) {
+ _matcher = toRouteMatcher(_router);
+ }
+ const _matches = _matcher.matchAll(path).reverse();
+ for (const _match of _matches) {
+ if (_match.handlers[method]) {
+ handler = _match.handlers[method];
+ matched.handlers[method] = matched.handlers[method] || handler;
+ break;
+ }
+ if (_match.handlers.all) {
+ handler = _match.handlers.all;
+ matched.handlers.all = matched.handlers.all || handler;
+ break;
+ }
+ }
+ }
+ if (!handler) {
+ if (opts.preemptive || opts.preemtive) {
+ throw createError$1({
+ statusCode: 405,
+ name: "Method Not Allowed",
+ statusMessage: `Method ${method} is not allowed on this route.`
+ });
+ } else {
+ return;
+ }
+ }
+ event.context.matchedRoute = matched;
+ const params = matched.params || {};
+ event.context.params = params;
+ return Promise.resolve(handler(event)).then((res) => {
+ if (res === void 0 && (opts.preemptive || opts.preemtive)) {
+ return null;
+ }
+ return res;
+ });
+ });
+ return router;
+}
+function toNodeListener(app) {
+ const toNodeHandle = async function(req, res) {
+ const event = createEvent(req, res);
+ try {
+ await app.handler(event);
+ } catch (_error) {
+ const error = createError$1(_error);
+ if (!isError(_error)) {
+ error.unhandled = true;
+ }
+ if (app.options.onError) {
+ await app.options.onError(error, event);
+ }
+ if (event.handled) {
+ return;
+ }
+ if (error.unhandled || error.fatal) {
+ console.error("[h3]", error.fatal ? "[fatal]" : "[unhandled]", error);
+ }
+ await sendError(event, error, !!app.options.debug);
+ }
+ };
+ return toNodeHandle;
+}
+
+const s=globalThis.Headers,i=globalThis.AbortController,l=globalThis.fetch||(()=>{throw new Error("[node-fetch-native] Failed to fetch: `globalThis.fetch` is not available!")});
+
+class FetchError extends Error {
+ constructor(message, opts) {
+ super(message, opts);
+ this.name = "FetchError";
+ if (opts?.cause && !this.cause) {
+ this.cause = opts.cause;
+ }
+ }
+}
+function createFetchError(ctx) {
+ const errorMessage = ctx.error?.message || ctx.error?.toString() || "";
+ const method = ctx.request?.method || ctx.options?.method || "GET";
+ const url = ctx.request?.url || String(ctx.request) || "/";
+ const requestStr = `[${method}] ${JSON.stringify(url)}`;
+ const statusStr = ctx.response ? `${ctx.response.status} ${ctx.response.statusText}` : "";
+ const message = `${requestStr}: ${statusStr}${errorMessage ? ` ${errorMessage}` : ""}`;
+ const fetchError = new FetchError(
+ message,
+ ctx.error ? { cause: ctx.error } : void 0
+ );
+ for (const key of ["request", "options", "response"]) {
+ Object.defineProperty(fetchError, key, {
+ get() {
+ return ctx[key];
+ }
+ });
+ }
+ for (const [key, refKey] of [
+ ["data", "_data"],
+ ["status", "status"],
+ ["statusCode", "status"],
+ ["statusText", "statusText"],
+ ["statusMessage", "statusText"]
+ ]) {
+ Object.defineProperty(fetchError, key, {
+ get() {
+ return ctx.response && ctx.response[refKey];
+ }
+ });
+ }
+ return fetchError;
+}
+
+const payloadMethods = new Set(
+ Object.freeze(["PATCH", "POST", "PUT", "DELETE"])
+);
+function isPayloadMethod(method = "GET") {
+ return payloadMethods.has(method.toUpperCase());
+}
+function isJSONSerializable(value) {
+ if (value === void 0) {
+ return false;
+ }
+ const t = typeof value;
+ if (t === "string" || t === "number" || t === "boolean" || t === null) {
+ return true;
+ }
+ if (t !== "object") {
+ return false;
+ }
+ if (Array.isArray(value)) {
+ return true;
+ }
+ if (value.buffer) {
+ return false;
+ }
+ return value.constructor && value.constructor.name === "Object" || typeof value.toJSON === "function";
+}
+const textTypes = /* @__PURE__ */ new Set([
+ "image/svg",
+ "application/xml",
+ "application/xhtml",
+ "application/html"
+]);
+const JSON_RE = /^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;
+function detectResponseType(_contentType = "") {
+ if (!_contentType) {
+ return "json";
+ }
+ const contentType = _contentType.split(";").shift() || "";
+ if (JSON_RE.test(contentType)) {
+ return "json";
+ }
+ if (textTypes.has(contentType) || contentType.startsWith("text/")) {
+ return "text";
+ }
+ return "blob";
+}
+function mergeFetchOptions(input, defaults, Headers = globalThis.Headers) {
+ const merged = {
+ ...defaults,
+ ...input
+ };
+ if (defaults?.params && input?.params) {
+ merged.params = {
+ ...defaults?.params,
+ ...input?.params
+ };
+ }
+ if (defaults?.query && input?.query) {
+ merged.query = {
+ ...defaults?.query,
+ ...input?.query
+ };
+ }
+ if (defaults?.headers && input?.headers) {
+ merged.headers = new Headers(defaults?.headers || {});
+ for (const [key, value] of new Headers(input?.headers || {})) {
+ merged.headers.set(key, value);
+ }
+ }
+ return merged;
+}
+
+const retryStatusCodes = /* @__PURE__ */ new Set([
+ 408,
+ // Request Timeout
+ 409,
+ // Conflict
+ 425,
+ // Too Early
+ 429,
+ // Too Many Requests
+ 500,
+ // Internal Server Error
+ 502,
+ // Bad Gateway
+ 503,
+ // Service Unavailable
+ 504
+ // Gateway Timeout
+]);
+const nullBodyResponses$1 = /* @__PURE__ */ new Set([101, 204, 205, 304]);
+function createFetch$1(globalOptions = {}) {
+ const {
+ fetch = globalThis.fetch,
+ Headers = globalThis.Headers,
+ AbortController = globalThis.AbortController
+ } = globalOptions;
+ async function onError(context) {
+ const isAbort = context.error && context.error.name === "AbortError" && !context.options.timeout || false;
+ if (context.options.retry !== false && !isAbort) {
+ let retries;
+ if (typeof context.options.retry === "number") {
+ retries = context.options.retry;
+ } else {
+ retries = isPayloadMethod(context.options.method) ? 0 : 1;
+ }
+ const responseCode = context.response && context.response.status || 500;
+ if (retries > 0 && (Array.isArray(context.options.retryStatusCodes) ? context.options.retryStatusCodes.includes(responseCode) : retryStatusCodes.has(responseCode))) {
+ const retryDelay = context.options.retryDelay || 0;
+ if (retryDelay > 0) {
+ await new Promise((resolve) => setTimeout(resolve, retryDelay));
+ }
+ return $fetchRaw(context.request, {
+ ...context.options,
+ retry: retries - 1,
+ timeout: context.options.timeout
+ });
+ }
+ }
+ const error = createFetchError(context);
+ if (Error.captureStackTrace) {
+ Error.captureStackTrace(error, $fetchRaw);
+ }
+ throw error;
+ }
+ const $fetchRaw = async function $fetchRaw2(_request, _options = {}) {
+ const context = {
+ request: _request,
+ options: mergeFetchOptions(_options, globalOptions.defaults, Headers),
+ response: void 0,
+ error: void 0
+ };
+ context.options.method = context.options.method?.toUpperCase();
+ if (context.options.onRequest) {
+ await context.options.onRequest(context);
+ }
+ if (typeof context.request === "string") {
+ if (context.options.baseURL) {
+ context.request = withBase(context.request, context.options.baseURL);
+ }
+ if (context.options.query || context.options.params) {
+ context.request = withQuery(context.request, {
+ ...context.options.params,
+ ...context.options.query
+ });
+ }
+ }
+ if (context.options.body && isPayloadMethod(context.options.method)) {
+ if (isJSONSerializable(context.options.body)) {
+ context.options.body = typeof context.options.body === "string" ? context.options.body : JSON.stringify(context.options.body);
+ context.options.headers = new Headers(context.options.headers || {});
+ if (!context.options.headers.has("content-type")) {
+ context.options.headers.set("content-type", "application/json");
+ }
+ if (!context.options.headers.has("accept")) {
+ context.options.headers.set("accept", "application/json");
+ }
+ } else if (
+ // ReadableStream Body
+ "pipeTo" in context.options.body && typeof context.options.body.pipeTo === "function" || // Node.js Stream Body
+ typeof context.options.body.pipe === "function"
+ ) {
+ if (!("duplex" in context.options)) {
+ context.options.duplex = "half";
+ }
+ }
+ }
+ if (!context.options.signal && context.options.timeout) {
+ const controller = new AbortController();
+ setTimeout(() => controller.abort(), context.options.timeout);
+ context.options.signal = controller.signal;
+ }
+ try {
+ context.response = await fetch(
+ context.request,
+ context.options
+ );
+ } catch (error) {
+ context.error = error;
+ if (context.options.onRequestError) {
+ await context.options.onRequestError(context);
+ }
+ return await onError(context);
+ }
+ const hasBody = context.response.body && !nullBodyResponses$1.has(context.response.status) && context.options.method !== "HEAD";
+ if (hasBody) {
+ const responseType = (context.options.parseResponse ? "json" : context.options.responseType) || detectResponseType(context.response.headers.get("content-type") || "");
+ switch (responseType) {
+ case "json": {
+ const data = await context.response.text();
+ const parseFunction = context.options.parseResponse || destr;
+ context.response._data = parseFunction(data);
+ break;
+ }
+ case "stream": {
+ context.response._data = context.response.body;
+ break;
+ }
+ default: {
+ context.response._data = await context.response[responseType]();
+ }
+ }
+ }
+ if (context.options.onResponse) {
+ await context.options.onResponse(context);
+ }
+ if (!context.options.ignoreResponseError && context.response.status >= 400 && context.response.status < 600) {
+ if (context.options.onResponseError) {
+ await context.options.onResponseError(context);
+ }
+ return await onError(context);
+ }
+ return context.response;
+ };
+ const $fetch = async function $fetch2(request, options) {
+ const r = await $fetchRaw(request, options);
+ return r._data;
+ };
+ $fetch.raw = $fetchRaw;
+ $fetch.native = (...args) => fetch(...args);
+ $fetch.create = (defaultOptions = {}) => createFetch$1({
+ ...globalOptions,
+ defaults: {
+ ...globalOptions.defaults,
+ ...defaultOptions
+ }
+ });
+ return $fetch;
+}
+
+function createNodeFetch() {
+ const useKeepAlive = JSON.parse(process.env.FETCH_KEEP_ALIVE || "false");
+ if (!useKeepAlive) {
+ return l;
+ }
+ const agentOptions = { keepAlive: true };
+ const httpAgent = new http.Agent(agentOptions);
+ const httpsAgent = new https.Agent(agentOptions);
+ const nodeFetchOptions = {
+ agent(parsedURL) {
+ return parsedURL.protocol === "http:" ? httpAgent : httpsAgent;
+ }
+ };
+ return function nodeFetchWithKeepAlive(input, init) {
+ return l(input, { ...nodeFetchOptions, ...init });
+ };
+}
+const fetch = globalThis.fetch || createNodeFetch();
+const Headers$1 = globalThis.Headers || s;
+const AbortController = globalThis.AbortController || i;
+const ofetch = createFetch$1({ fetch, Headers: Headers$1, AbortController });
+const $fetch = ofetch;
+
+const nullBodyResponses = /* @__PURE__ */ new Set([101, 204, 205, 304]);
+function createCall(handle) {
+ return function callHandle(context) {
+ const req = new IncomingMessage();
+ const res = new ServerResponse(req);
+ req.url = context.url || "/";
+ req.method = context.method || "GET";
+ req.headers = {};
+ if (context.headers) {
+ const headerEntries = typeof context.headers.entries === "function" ? context.headers.entries() : Object.entries(context.headers);
+ for (const [name, value] of headerEntries) {
+ if (!value) {
+ continue;
+ }
+ req.headers[name.toLowerCase()] = value;
+ }
+ }
+ req.headers.host = req.headers.host || context.host || "localhost";
+ req.connection.encrypted = // @ts-ignore
+ req.connection.encrypted || context.protocol === "https";
+ req.body = context.body || null;
+ req.__unenv__ = context.context;
+ return handle(req, res).then(() => {
+ let body = res._data;
+ if (nullBodyResponses.has(res.statusCode) || req.method.toUpperCase() === "HEAD") {
+ body = null;
+ delete res._headers["content-length"];
+ }
+ const r = {
+ body,
+ headers: res._headers,
+ status: res.statusCode,
+ statusText: res.statusMessage
+ };
+ req.destroy();
+ res.destroy();
+ return r;
+ });
+ };
+}
+
+function createFetch(call, _fetch = global.fetch) {
+ return async function ufetch(input, init) {
+ const url = input.toString();
+ if (!url.startsWith("/")) {
+ return _fetch(url, init);
+ }
+ try {
+ const r = await call({ url, ...init });
+ return new Response(r.body, {
+ status: r.status,
+ statusText: r.statusText,
+ headers: Object.fromEntries(
+ Object.entries(r.headers).map(([name, value]) => [
+ name,
+ Array.isArray(value) ? value.join(",") : String(value) || ""
+ ])
+ )
+ });
+ } catch (error) {
+ return new Response(error.toString(), {
+ status: Number.parseInt(error.statusCode || error.code) || 500,
+ statusText: error.statusText
+ });
+ }
+ };
+}
+
+function flatHooks(configHooks, hooks = {}, parentName) {
+ for (const key in configHooks) {
+ const subHook = configHooks[key];
+ const name = parentName ? `${parentName}:${key}` : key;
+ if (typeof subHook === "object" && subHook !== null) {
+ flatHooks(subHook, hooks, name);
+ } else if (typeof subHook === "function") {
+ hooks[name] = subHook;
+ }
+ }
+ return hooks;
+}
+const defaultTask = { run: (function_) => function_() };
+const _createTask = () => defaultTask;
+const createTask = typeof console.createTask !== "undefined" ? console.createTask : _createTask;
+function serialTaskCaller(hooks, args) {
+ const name = args.shift();
+ const task = createTask(name);
+ return hooks.reduce(
+ (promise, hookFunction) => promise.then(() => task.run(() => hookFunction(...args))),
+ Promise.resolve()
+ );
+}
+function parallelTaskCaller(hooks, args) {
+ const name = args.shift();
+ const task = createTask(name);
+ return Promise.all(hooks.map((hook) => task.run(() => hook(...args))));
+}
+function callEachWith(callbacks, arg0) {
+ for (const callback of [...callbacks]) {
+ callback(arg0);
+ }
+}
+
+class Hookable {
+ constructor() {
+ this._hooks = {};
+ this._before = void 0;
+ this._after = void 0;
+ this._deprecatedMessages = void 0;
+ this._deprecatedHooks = {};
+ this.hook = this.hook.bind(this);
+ this.callHook = this.callHook.bind(this);
+ this.callHookWith = this.callHookWith.bind(this);
+ }
+ hook(name, function_, options = {}) {
+ if (!name || typeof function_ !== "function") {
+ return () => {
+ };
+ }
+ const originalName = name;
+ let dep;
+ while (this._deprecatedHooks[name]) {
+ dep = this._deprecatedHooks[name];
+ name = dep.to;
+ }
+ if (dep && !options.allowDeprecated) {
+ let message = dep.message;
+ if (!message) {
+ message = `${originalName} hook has been deprecated` + (dep.to ? `, please use ${dep.to}` : "");
+ }
+ if (!this._deprecatedMessages) {
+ this._deprecatedMessages = /* @__PURE__ */ new Set();
+ }
+ if (!this._deprecatedMessages.has(message)) {
+ console.warn(message);
+ this._deprecatedMessages.add(message);
+ }
+ }
+ if (!function_.name) {
+ try {
+ Object.defineProperty(function_, "name", {
+ get: () => "_" + name.replace(/\W+/g, "_") + "_hook_cb",
+ configurable: true
+ });
+ } catch {
+ }
+ }
+ this._hooks[name] = this._hooks[name] || [];
+ this._hooks[name].push(function_);
+ return () => {
+ if (function_) {
+ this.removeHook(name, function_);
+ function_ = void 0;
+ }
+ };
+ }
+ hookOnce(name, function_) {
+ let _unreg;
+ let _function = (...arguments_) => {
+ if (typeof _unreg === "function") {
+ _unreg();
+ }
+ _unreg = void 0;
+ _function = void 0;
+ return function_(...arguments_);
+ };
+ _unreg = this.hook(name, _function);
+ return _unreg;
+ }
+ removeHook(name, function_) {
+ if (this._hooks[name]) {
+ const index = this._hooks[name].indexOf(function_);
+ if (index !== -1) {
+ this._hooks[name].splice(index, 1);
+ }
+ if (this._hooks[name].length === 0) {
+ delete this._hooks[name];
+ }
+ }
+ }
+ deprecateHook(name, deprecated) {
+ this._deprecatedHooks[name] = typeof deprecated === "string" ? { to: deprecated } : deprecated;
+ const _hooks = this._hooks[name] || [];
+ delete this._hooks[name];
+ for (const hook of _hooks) {
+ this.hook(name, hook);
+ }
+ }
+ deprecateHooks(deprecatedHooks) {
+ Object.assign(this._deprecatedHooks, deprecatedHooks);
+ for (const name in deprecatedHooks) {
+ this.deprecateHook(name, deprecatedHooks[name]);
+ }
+ }
+ addHooks(configHooks) {
+ const hooks = flatHooks(configHooks);
+ const removeFns = Object.keys(hooks).map(
+ (key) => this.hook(key, hooks[key])
+ );
+ return () => {
+ for (const unreg of removeFns.splice(0, removeFns.length)) {
+ unreg();
+ }
+ };
+ }
+ removeHooks(configHooks) {
+ const hooks = flatHooks(configHooks);
+ for (const key in hooks) {
+ this.removeHook(key, hooks[key]);
+ }
+ }
+ removeAllHooks() {
+ for (const key in this._hooks) {
+ delete this._hooks[key];
+ }
+ }
+ callHook(name, ...arguments_) {
+ arguments_.unshift(name);
+ return this.callHookWith(serialTaskCaller, name, ...arguments_);
+ }
+ callHookParallel(name, ...arguments_) {
+ arguments_.unshift(name);
+ return this.callHookWith(parallelTaskCaller, name, ...arguments_);
+ }
+ callHookWith(caller, name, ...arguments_) {
+ const event = this._before || this._after ? { name, args: arguments_, context: {} } : void 0;
+ if (this._before) {
+ callEachWith(this._before, event);
+ }
+ const result = caller(
+ name in this._hooks ? [...this._hooks[name]] : [],
+ arguments_
+ );
+ if (result instanceof Promise) {
+ return result.finally(() => {
+ if (this._after && event) {
+ callEachWith(this._after, event);
+ }
+ });
+ }
+ if (this._after && event) {
+ callEachWith(this._after, event);
+ }
+ return result;
+ }
+ beforeEach(function_) {
+ this._before = this._before || [];
+ this._before.push(function_);
+ return () => {
+ if (this._before !== void 0) {
+ const index = this._before.indexOf(function_);
+ if (index !== -1) {
+ this._before.splice(index, 1);
+ }
+ }
+ };
+ }
+ afterEach(function_) {
+ this._after = this._after || [];
+ this._after.push(function_);
+ return () => {
+ if (this._after !== void 0) {
+ const index = this._after.indexOf(function_);
+ if (index !== -1) {
+ this._after.splice(index, 1);
+ }
+ }
+ };
+ }
+}
+function createHooks() {
+ return new Hookable();
+}
+
+const NUMBER_CHAR_RE = /\d/;
+const STR_SPLITTERS = ["-", "_", "/", "."];
+function isUppercase(char = "") {
+ if (NUMBER_CHAR_RE.test(char)) {
+ return void 0;
+ }
+ return char.toUpperCase() === char;
+}
+function splitByCase(str, separators) {
+ const splitters = separators ?? STR_SPLITTERS;
+ const parts = [];
+ if (!str || typeof str !== "string") {
+ return parts;
+ }
+ let buff = "";
+ let previousUpper;
+ let previousSplitter;
+ for (const char of str) {
+ const isSplitter = splitters.includes(char);
+ if (isSplitter === true) {
+ parts.push(buff);
+ buff = "";
+ previousUpper = void 0;
+ continue;
+ }
+ const isUpper = isUppercase(char);
+ if (previousSplitter === false) {
+ if (previousUpper === false && isUpper === true) {
+ parts.push(buff);
+ buff = char;
+ previousUpper = isUpper;
+ continue;
+ }
+ if (previousUpper === true && isUpper === false && buff.length > 1) {
+ const lastChar = buff.at(-1);
+ parts.push(buff.slice(0, Math.max(0, buff.length - 1)));
+ buff = lastChar + char;
+ previousUpper = isUpper;
+ continue;
+ }
+ }
+ buff += char;
+ previousUpper = isUpper;
+ previousSplitter = isSplitter;
+ }
+ parts.push(buff);
+ return parts;
+}
+function kebabCase(str, joiner) {
+ return str ? (Array.isArray(str) ? str : splitByCase(str)).map((p) => p.toLowerCase()).join(joiner ?? "-") : "";
+}
+function snakeCase(str) {
+ return kebabCase(str || "", "_");
+}
+
+function klona(x) {
+ if (typeof x !== 'object') return x;
+
+ var k, tmp, str=Object.prototype.toString.call(x);
+
+ if (str === '[object Object]') {
+ if (x.constructor !== Object && typeof x.constructor === 'function') {
+ tmp = new x.constructor();
+ for (k in x) {
+ if (x.hasOwnProperty(k) && tmp[k] !== x[k]) {
+ tmp[k] = klona(x[k]);
+ }
+ }
+ } else {
+ tmp = {}; // null
+ for (k in x) {
+ if (k === '__proto__') {
+ Object.defineProperty(tmp, k, {
+ value: klona(x[k]),
+ configurable: true,
+ enumerable: true,
+ writable: true,
+ });
+ } else {
+ tmp[k] = klona(x[k]);
+ }
+ }
+ }
+ return tmp;
+ }
+
+ if (str === '[object Array]') {
+ k = x.length;
+ for (tmp=Array(k); k--;) {
+ tmp[k] = klona(x[k]);
+ }
+ return tmp;
+ }
+
+ if (str === '[object Set]') {
+ tmp = new Set;
+ x.forEach(function (val) {
+ tmp.add(klona(val));
+ });
+ return tmp;
+ }
+
+ if (str === '[object Map]') {
+ tmp = new Map;
+ x.forEach(function (val, key) {
+ tmp.set(klona(key), klona(val));
+ });
+ return tmp;
+ }
+
+ if (str === '[object Date]') {
+ return new Date(+x);
+ }
+
+ if (str === '[object RegExp]') {
+ tmp = new RegExp(x.source, x.flags);
+ tmp.lastIndex = x.lastIndex;
+ return tmp;
+ }
+
+ if (str === '[object DataView]') {
+ return new x.constructor( klona(x.buffer) );
+ }
+
+ if (str === '[object ArrayBuffer]') {
+ return x.slice(0);
+ }
+
+ // ArrayBuffer.isView(x)
+ // ~> `new` bcuz `Buffer.slice` => ref
+ if (str.slice(-6) === 'Array]') {
+ return new x.constructor(x);
+ }
+
+ return x;
+}
+
+const inlineAppConfig = {
+ "nuxt": {
+ "buildId": "ee485d75-6a9c-4aef-aba3-31320668b72f"
+ }
+};
+
+
+
+const appConfig = defuFn(inlineAppConfig);
+
+const _inlineRuntimeConfig = {
+ "app": {
+ "baseURL": "/",
+ "buildAssetsDir": "/_nuxt/",
+ "cdnURL": ""
+ },
+ "nitro": {
+ "envPrefix": "NUXT_",
+ "routeRules": {
+ "/__nuxt_error": {
+ "cache": false
+ },
+ "/_nuxt/builds/meta/**": {
+ "headers": {
+ "cache-control": "public, max-age=31536000, immutable"
+ }
+ },
+ "/_nuxt/builds/**": {
+ "headers": {
+ "cache-control": "public, max-age=1, immutable"
+ }
+ },
+ "/_nuxt/**": {
+ "headers": {
+ "cache-control": "public, max-age=31536000, immutable"
+ }
+ }
+ }
+ },
+ "public": {}
+};
+const ENV_PREFIX = "NITRO_";
+const ENV_PREFIX_ALT = _inlineRuntimeConfig.nitro.envPrefix ?? process.env.NITRO_ENV_PREFIX ?? "_";
+const _sharedRuntimeConfig = _deepFreeze(
+ _applyEnv(klona(_inlineRuntimeConfig))
+);
+function useRuntimeConfig(event) {
+ if (!event) {
+ return _sharedRuntimeConfig;
+ }
+ if (event.context.nitro.runtimeConfig) {
+ return event.context.nitro.runtimeConfig;
+ }
+ const runtimeConfig = klona(_inlineRuntimeConfig);
+ _applyEnv(runtimeConfig);
+ event.context.nitro.runtimeConfig = runtimeConfig;
+ return runtimeConfig;
+}
+_deepFreeze(klona(appConfig));
+function _getEnv(key) {
+ const envKey = snakeCase(key).toUpperCase();
+ return destr(
+ process.env[ENV_PREFIX + envKey] ?? process.env[ENV_PREFIX_ALT + envKey]
+ );
+}
+function _isObject(input) {
+ return typeof input === "object" && !Array.isArray(input);
+}
+function _applyEnv(obj, parentKey = "") {
+ for (const key in obj) {
+ const subKey = parentKey ? `${parentKey}_${key}` : key;
+ const envValue = _getEnv(subKey);
+ if (_isObject(obj[key])) {
+ if (_isObject(envValue)) {
+ obj[key] = { ...obj[key], ...envValue };
+ }
+ _applyEnv(obj[key], subKey);
+ } else {
+ obj[key] = envValue ?? obj[key];
+ }
+ }
+ return obj;
+}
+function _deepFreeze(object) {
+ const propNames = Object.getOwnPropertyNames(object);
+ for (const name of propNames) {
+ const value = object[name];
+ if (value && typeof value === "object") {
+ _deepFreeze(value);
+ }
+ }
+ return Object.freeze(object);
+}
+new Proxy(/* @__PURE__ */ Object.create(null), {
+ get: (_, prop) => {
+ console.warn(
+ "Please use `useRuntimeConfig()` instead of accessing config directly."
+ );
+ const runtimeConfig = useRuntimeConfig();
+ if (prop in runtimeConfig) {
+ return runtimeConfig[prop];
+ }
+ return void 0;
+ }
+});
+
+const defaults = Object.freeze({
+ ignoreUnknown: false,
+ respectType: false,
+ respectFunctionNames: false,
+ respectFunctionProperties: false,
+ unorderedObjects: true,
+ unorderedArrays: false,
+ unorderedSets: false,
+ excludeKeys: void 0,
+ excludeValues: void 0,
+ replacer: void 0
+});
+function objectHash(object, options) {
+ if (options) {
+ options = { ...defaults, ...options };
+ } else {
+ options = defaults;
+ }
+ const hasher = createHasher(options);
+ hasher.dispatch(object);
+ return hasher.toString();
+}
+const defaultPrototypesKeys = Object.freeze([
+ "prototype",
+ "__proto__",
+ "constructor"
+]);
+function createHasher(options) {
+ let buff = "";
+ let context = /* @__PURE__ */ new Map();
+ const write = (str) => {
+ buff += str;
+ };
+ return {
+ toString() {
+ return buff;
+ },
+ getContext() {
+ return context;
+ },
+ dispatch(value) {
+ if (options.replacer) {
+ value = options.replacer(value);
+ }
+ const type = value === null ? "null" : typeof value;
+ return this[type](value);
+ },
+ object(object) {
+ if (object && typeof object.toJSON === "function") {
+ return this.object(object.toJSON());
+ }
+ const objString = Object.prototype.toString.call(object);
+ let objType = "";
+ const objectLength = objString.length;
+ if (objectLength < 10) {
+ objType = "unknown:[" + objString + "]";
+ } else {
+ objType = objString.slice(8, objectLength - 1);
+ }
+ objType = objType.toLowerCase();
+ let objectNumber = null;
+ if ((objectNumber = context.get(object)) === void 0) {
+ context.set(object, context.size);
+ } else {
+ return this.dispatch("[CIRCULAR:" + objectNumber + "]");
+ }
+ if (typeof Buffer !== "undefined" && Buffer.isBuffer && Buffer.isBuffer(object)) {
+ write("buffer:");
+ return write(object.toString("utf8"));
+ }
+ if (objType !== "object" && objType !== "function" && objType !== "asyncfunction") {
+ if (this[objType]) {
+ this[objType](object);
+ } else if (!options.ignoreUnknown) {
+ this.unkown(object, objType);
+ }
+ } else {
+ let keys = Object.keys(object);
+ if (options.unorderedObjects) {
+ keys = keys.sort();
+ }
+ let extraKeys = [];
+ if (options.respectType !== false && !isNativeFunction(object)) {
+ extraKeys = defaultPrototypesKeys;
+ }
+ if (options.excludeKeys) {
+ keys = keys.filter((key) => {
+ return !options.excludeKeys(key);
+ });
+ extraKeys = extraKeys.filter((key) => {
+ return !options.excludeKeys(key);
+ });
+ }
+ write("object:" + (keys.length + extraKeys.length) + ":");
+ const dispatchForKey = (key) => {
+ this.dispatch(key);
+ write(":");
+ if (!options.excludeValues) {
+ this.dispatch(object[key]);
+ }
+ write(",");
+ };
+ for (const key of keys) {
+ dispatchForKey(key);
+ }
+ for (const key of extraKeys) {
+ dispatchForKey(key);
+ }
+ }
+ },
+ array(arr, unordered) {
+ unordered = unordered === void 0 ? options.unorderedArrays !== false : unordered;
+ write("array:" + arr.length + ":");
+ if (!unordered || arr.length <= 1) {
+ for (const entry of arr) {
+ this.dispatch(entry);
+ }
+ return;
+ }
+ const contextAdditions = /* @__PURE__ */ new Map();
+ const entries = arr.map((entry) => {
+ const hasher = createHasher(options);
+ hasher.dispatch(entry);
+ for (const [key, value] of hasher.getContext()) {
+ contextAdditions.set(key, value);
+ }
+ return hasher.toString();
+ });
+ context = contextAdditions;
+ entries.sort();
+ return this.array(entries, false);
+ },
+ date(date) {
+ return write("date:" + date.toJSON());
+ },
+ symbol(sym) {
+ return write("symbol:" + sym.toString());
+ },
+ unkown(value, type) {
+ write(type);
+ if (!value) {
+ return;
+ }
+ write(":");
+ if (value && typeof value.entries === "function") {
+ return this.array(
+ Array.from(value.entries()),
+ true
+ /* ordered */
+ );
+ }
+ },
+ error(err) {
+ return write("error:" + err.toString());
+ },
+ boolean(bool) {
+ return write("bool:" + bool);
+ },
+ string(string) {
+ write("string:" + string.length + ":");
+ write(string);
+ },
+ function(fn) {
+ write("fn:");
+ if (isNativeFunction(fn)) {
+ this.dispatch("[native]");
+ } else {
+ this.dispatch(fn.toString());
+ }
+ if (options.respectFunctionNames !== false) {
+ this.dispatch("function-name:" + String(fn.name));
+ }
+ if (options.respectFunctionProperties) {
+ this.object(fn);
+ }
+ },
+ number(number) {
+ return write("number:" + number);
+ },
+ xml(xml) {
+ return write("xml:" + xml.toString());
+ },
+ null() {
+ return write("Null");
+ },
+ undefined() {
+ return write("Undefined");
+ },
+ regexp(regex) {
+ return write("regex:" + regex.toString());
+ },
+ uint8array(arr) {
+ write("uint8array:");
+ return this.dispatch(Array.prototype.slice.call(arr));
+ },
+ uint8clampedarray(arr) {
+ write("uint8clampedarray:");
+ return this.dispatch(Array.prototype.slice.call(arr));
+ },
+ int8array(arr) {
+ write("int8array:");
+ return this.dispatch(Array.prototype.slice.call(arr));
+ },
+ uint16array(arr) {
+ write("uint16array:");
+ return this.dispatch(Array.prototype.slice.call(arr));
+ },
+ int16array(arr) {
+ write("int16array:");
+ return this.dispatch(Array.prototype.slice.call(arr));
+ },
+ uint32array(arr) {
+ write("uint32array:");
+ return this.dispatch(Array.prototype.slice.call(arr));
+ },
+ int32array(arr) {
+ write("int32array:");
+ return this.dispatch(Array.prototype.slice.call(arr));
+ },
+ float32array(arr) {
+ write("float32array:");
+ return this.dispatch(Array.prototype.slice.call(arr));
+ },
+ float64array(arr) {
+ write("float64array:");
+ return this.dispatch(Array.prototype.slice.call(arr));
+ },
+ arraybuffer(arr) {
+ write("arraybuffer:");
+ return this.dispatch(new Uint8Array(arr));
+ },
+ url(url) {
+ return write("url:" + url.toString());
+ },
+ map(map) {
+ write("map:");
+ const arr = [...map];
+ return this.array(arr, options.unorderedSets !== false);
+ },
+ set(set) {
+ write("set:");
+ const arr = [...set];
+ return this.array(arr, options.unorderedSets !== false);
+ },
+ file(file) {
+ write("file:");
+ return this.dispatch([file.name, file.size, file.type, file.lastModfied]);
+ },
+ blob() {
+ if (options.ignoreUnknown) {
+ return write("[blob]");
+ }
+ throw new Error(
+ 'Hashing Blob objects is currently not supported\nUse "options.replacer" or "options.ignoreUnknown"\n'
+ );
+ },
+ domwindow() {
+ return write("domwindow");
+ },
+ bigint(number) {
+ return write("bigint:" + number.toString());
+ },
+ /* Node.js standard native objects */
+ process() {
+ return write("process");
+ },
+ timer() {
+ return write("timer");
+ },
+ pipe() {
+ return write("pipe");
+ },
+ tcp() {
+ return write("tcp");
+ },
+ udp() {
+ return write("udp");
+ },
+ tty() {
+ return write("tty");
+ },
+ statwatcher() {
+ return write("statwatcher");
+ },
+ securecontext() {
+ return write("securecontext");
+ },
+ connection() {
+ return write("connection");
+ },
+ zlib() {
+ return write("zlib");
+ },
+ context() {
+ return write("context");
+ },
+ nodescript() {
+ return write("nodescript");
+ },
+ httpparser() {
+ return write("httpparser");
+ },
+ dataview() {
+ return write("dataview");
+ },
+ signal() {
+ return write("signal");
+ },
+ fsevent() {
+ return write("fsevent");
+ },
+ tlswrap() {
+ return write("tlswrap");
+ }
+ };
+}
+const nativeFunc = "[native code] }";
+const nativeFuncLength = nativeFunc.length;
+function isNativeFunction(f) {
+ if (typeof f !== "function") {
+ return false;
+ }
+ return Function.prototype.toString.call(f).slice(-nativeFuncLength) === nativeFunc;
+}
+
+class WordArray {
+ constructor(words, sigBytes) {
+ words = this.words = words || [];
+ this.sigBytes = sigBytes === void 0 ? words.length * 4 : sigBytes;
+ }
+ toString(encoder) {
+ return (encoder || Hex).stringify(this);
+ }
+ concat(wordArray) {
+ this.clamp();
+ if (this.sigBytes % 4) {
+ for (let i = 0; i < wordArray.sigBytes; i++) {
+ const thatByte = wordArray.words[i >>> 2] >>> 24 - i % 4 * 8 & 255;
+ this.words[this.sigBytes + i >>> 2] |= thatByte << 24 - (this.sigBytes + i) % 4 * 8;
+ }
+ } else {
+ for (let j = 0; j < wordArray.sigBytes; j += 4) {
+ this.words[this.sigBytes + j >>> 2] = wordArray.words[j >>> 2];
+ }
+ }
+ this.sigBytes += wordArray.sigBytes;
+ return this;
+ }
+ clamp() {
+ this.words[this.sigBytes >>> 2] &= 4294967295 << 32 - this.sigBytes % 4 * 8;
+ this.words.length = Math.ceil(this.sigBytes / 4);
+ }
+ clone() {
+ return new WordArray([...this.words]);
+ }
+}
+const Hex = {
+ stringify(wordArray) {
+ const hexChars = [];
+ for (let i = 0; i < wordArray.sigBytes; i++) {
+ const bite = wordArray.words[i >>> 2] >>> 24 - i % 4 * 8 & 255;
+ hexChars.push((bite >>> 4).toString(16), (bite & 15).toString(16));
+ }
+ return hexChars.join("");
+ }
+};
+const Base64 = {
+ stringify(wordArray) {
+ const keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
+ const base64Chars = [];
+ for (let i = 0; i < wordArray.sigBytes; i += 3) {
+ const byte1 = wordArray.words[i >>> 2] >>> 24 - i % 4 * 8 & 255;
+ const byte2 = wordArray.words[i + 1 >>> 2] >>> 24 - (i + 1) % 4 * 8 & 255;
+ const byte3 = wordArray.words[i + 2 >>> 2] >>> 24 - (i + 2) % 4 * 8 & 255;
+ const triplet = byte1 << 16 | byte2 << 8 | byte3;
+ for (let j = 0; j < 4 && i * 8 + j * 6 < wordArray.sigBytes * 8; j++) {
+ base64Chars.push(keyStr.charAt(triplet >>> 6 * (3 - j) & 63));
+ }
+ }
+ return base64Chars.join("");
+ }
+};
+const Latin1 = {
+ parse(latin1Str) {
+ const latin1StrLength = latin1Str.length;
+ const words = [];
+ for (let i = 0; i < latin1StrLength; i++) {
+ words[i >>> 2] |= (latin1Str.charCodeAt(i) & 255) << 24 - i % 4 * 8;
+ }
+ return new WordArray(words, latin1StrLength);
+ }
+};
+const Utf8 = {
+ parse(utf8Str) {
+ return Latin1.parse(unescape(encodeURIComponent(utf8Str)));
+ }
+};
+class BufferedBlockAlgorithm {
+ constructor() {
+ this._data = new WordArray();
+ this._nDataBytes = 0;
+ this._minBufferSize = 0;
+ this.blockSize = 512 / 32;
+ }
+ reset() {
+ this._data = new WordArray();
+ this._nDataBytes = 0;
+ }
+ _append(data) {
+ if (typeof data === "string") {
+ data = Utf8.parse(data);
+ }
+ this._data.concat(data);
+ this._nDataBytes += data.sigBytes;
+ }
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ _doProcessBlock(_dataWords, _offset) {
+ }
+ _process(doFlush) {
+ let processedWords;
+ let nBlocksReady = this._data.sigBytes / (this.blockSize * 4);
+ if (doFlush) {
+ nBlocksReady = Math.ceil(nBlocksReady);
+ } else {
+ nBlocksReady = Math.max((nBlocksReady | 0) - this._minBufferSize, 0);
+ }
+ const nWordsReady = nBlocksReady * this.blockSize;
+ const nBytesReady = Math.min(nWordsReady * 4, this._data.sigBytes);
+ if (nWordsReady) {
+ for (let offset = 0; offset < nWordsReady; offset += this.blockSize) {
+ this._doProcessBlock(this._data.words, offset);
+ }
+ processedWords = this._data.words.splice(0, nWordsReady);
+ this._data.sigBytes -= nBytesReady;
+ }
+ return new WordArray(processedWords, nBytesReady);
+ }
+}
+class Hasher extends BufferedBlockAlgorithm {
+ update(messageUpdate) {
+ this._append(messageUpdate);
+ this._process();
+ return this;
+ }
+ finalize(messageUpdate) {
+ if (messageUpdate) {
+ this._append(messageUpdate);
+ }
+ }
+}
+
+const H = [
+ 1779033703,
+ -1150833019,
+ 1013904242,
+ -1521486534,
+ 1359893119,
+ -1694144372,
+ 528734635,
+ 1541459225
+];
+const K = [
+ 1116352408,
+ 1899447441,
+ -1245643825,
+ -373957723,
+ 961987163,
+ 1508970993,
+ -1841331548,
+ -1424204075,
+ -670586216,
+ 310598401,
+ 607225278,
+ 1426881987,
+ 1925078388,
+ -2132889090,
+ -1680079193,
+ -1046744716,
+ -459576895,
+ -272742522,
+ 264347078,
+ 604807628,
+ 770255983,
+ 1249150122,
+ 1555081692,
+ 1996064986,
+ -1740746414,
+ -1473132947,
+ -1341970488,
+ -1084653625,
+ -958395405,
+ -710438585,
+ 113926993,
+ 338241895,
+ 666307205,
+ 773529912,
+ 1294757372,
+ 1396182291,
+ 1695183700,
+ 1986661051,
+ -2117940946,
+ -1838011259,
+ -1564481375,
+ -1474664885,
+ -1035236496,
+ -949202525,
+ -778901479,
+ -694614492,
+ -200395387,
+ 275423344,
+ 430227734,
+ 506948616,
+ 659060556,
+ 883997877,
+ 958139571,
+ 1322822218,
+ 1537002063,
+ 1747873779,
+ 1955562222,
+ 2024104815,
+ -2067236844,
+ -1933114872,
+ -1866530822,
+ -1538233109,
+ -1090935817,
+ -965641998
+];
+const W = [];
+class SHA256 extends Hasher {
+ constructor() {
+ super(...arguments);
+ this._hash = new WordArray([...H]);
+ }
+ reset() {
+ super.reset();
+ this._hash = new WordArray([...H]);
+ }
+ _doProcessBlock(M, offset) {
+ const H2 = this._hash.words;
+ let a = H2[0];
+ let b = H2[1];
+ let c = H2[2];
+ let d = H2[3];
+ let e = H2[4];
+ let f = H2[5];
+ let g = H2[6];
+ let h = H2[7];
+ for (let i = 0; i < 64; i++) {
+ if (i < 16) {
+ W[i] = M[offset + i] | 0;
+ } else {
+ const gamma0x = W[i - 15];
+ const gamma0 = (gamma0x << 25 | gamma0x >>> 7) ^ (gamma0x << 14 | gamma0x >>> 18) ^ gamma0x >>> 3;
+ const gamma1x = W[i - 2];
+ const gamma1 = (gamma1x << 15 | gamma1x >>> 17) ^ (gamma1x << 13 | gamma1x >>> 19) ^ gamma1x >>> 10;
+ W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16];
+ }
+ const ch = e & f ^ ~e & g;
+ const maj = a & b ^ a & c ^ b & c;
+ const sigma0 = (a << 30 | a >>> 2) ^ (a << 19 | a >>> 13) ^ (a << 10 | a >>> 22);
+ const sigma1 = (e << 26 | e >>> 6) ^ (e << 21 | e >>> 11) ^ (e << 7 | e >>> 25);
+ const t1 = h + sigma1 + ch + K[i] + W[i];
+ const t2 = sigma0 + maj;
+ h = g;
+ g = f;
+ f = e;
+ e = d + t1 | 0;
+ d = c;
+ c = b;
+ b = a;
+ a = t1 + t2 | 0;
+ }
+ H2[0] = H2[0] + a | 0;
+ H2[1] = H2[1] + b | 0;
+ H2[2] = H2[2] + c | 0;
+ H2[3] = H2[3] + d | 0;
+ H2[4] = H2[4] + e | 0;
+ H2[5] = H2[5] + f | 0;
+ H2[6] = H2[6] + g | 0;
+ H2[7] = H2[7] + h | 0;
+ }
+ finalize(messageUpdate) {
+ super.finalize(messageUpdate);
+ const nBitsTotal = this._nDataBytes * 8;
+ const nBitsLeft = this._data.sigBytes * 8;
+ this._data.words[nBitsLeft >>> 5] |= 128 << 24 - nBitsLeft % 32;
+ this._data.words[(nBitsLeft + 64 >>> 9 << 4) + 14] = Math.floor(
+ nBitsTotal / 4294967296
+ );
+ this._data.words[(nBitsLeft + 64 >>> 9 << 4) + 15] = nBitsTotal;
+ this._data.sigBytes = this._data.words.length * 4;
+ this._process();
+ return this._hash;
+ }
+}
+function sha256base64(message) {
+ return new SHA256().finalize(message).toString(Base64);
+}
+
+function hash(object, options = {}) {
+ const hashed = typeof object === "string" ? object : objectHash(object, options);
+ return sha256base64(hashed).slice(0, 10);
+}
+
+function wrapToPromise(value) {
+ if (!value || typeof value.then !== "function") {
+ return Promise.resolve(value);
+ }
+ return value;
+}
+function asyncCall(function_, ...arguments_) {
+ try {
+ return wrapToPromise(function_(...arguments_));
+ } catch (error) {
+ return Promise.reject(error);
+ }
+}
+function isPrimitive(value) {
+ const type = typeof value;
+ return value === null || type !== "object" && type !== "function";
+}
+function isPureObject(value) {
+ const proto = Object.getPrototypeOf(value);
+ return !proto || proto.isPrototypeOf(Object);
+}
+function stringify(value) {
+ if (isPrimitive(value)) {
+ return String(value);
+ }
+ if (isPureObject(value) || Array.isArray(value)) {
+ return JSON.stringify(value);
+ }
+ if (typeof value.toJSON === "function") {
+ return stringify(value.toJSON());
+ }
+ throw new Error("[unstorage] Cannot stringify value!");
+}
+function checkBufferSupport() {
+ if (typeof Buffer === void 0) {
+ throw new TypeError("[unstorage] Buffer is not supported!");
+ }
+}
+const BASE64_PREFIX = "base64:";
+function serializeRaw(value) {
+ if (typeof value === "string") {
+ return value;
+ }
+ checkBufferSupport();
+ const base64 = Buffer.from(value).toString("base64");
+ return BASE64_PREFIX + base64;
+}
+function deserializeRaw(value) {
+ if (typeof value !== "string") {
+ return value;
+ }
+ if (!value.startsWith(BASE64_PREFIX)) {
+ return value;
+ }
+ checkBufferSupport();
+ return Buffer.from(value.slice(BASE64_PREFIX.length), "base64");
+}
+
+const storageKeyProperties = [
+ "hasItem",
+ "getItem",
+ "getItemRaw",
+ "setItem",
+ "setItemRaw",
+ "removeItem",
+ "getMeta",
+ "setMeta",
+ "removeMeta",
+ "getKeys",
+ "clear",
+ "mount",
+ "unmount"
+];
+function prefixStorage(storage, base) {
+ base = normalizeBaseKey(base);
+ if (!base) {
+ return storage;
+ }
+ const nsStorage = { ...storage };
+ for (const property of storageKeyProperties) {
+ nsStorage[property] = (key = "", ...args) => (
+ // @ts-ignore
+ storage[property](base + key, ...args)
+ );
+ }
+ nsStorage.getKeys = (key = "", ...arguments_) => storage.getKeys(base + key, ...arguments_).then((keys) => keys.map((key2) => key2.slice(base.length)));
+ return nsStorage;
+}
+function normalizeKey$1(key) {
+ if (!key) {
+ return "";
+ }
+ return key.split("?")[0].replace(/[/\\]/g, ":").replace(/:+/g, ":").replace(/^:|:$/g, "");
+}
+function joinKeys(...keys) {
+ return normalizeKey$1(keys.join(":"));
+}
+function normalizeBaseKey(base) {
+ base = normalizeKey$1(base);
+ return base ? base + ":" : "";
+}
+
+function defineDriver$1(factory) {
+ return factory;
+}
+
+const DRIVER_NAME$1 = "memory";
+const memory = defineDriver$1(() => {
+ const data = /* @__PURE__ */ new Map();
+ return {
+ name: DRIVER_NAME$1,
+ options: {},
+ hasItem(key) {
+ return data.has(key);
+ },
+ getItem(key) {
+ return data.get(key) ?? null;
+ },
+ getItemRaw(key) {
+ return data.get(key) ?? null;
+ },
+ setItem(key, value) {
+ data.set(key, value);
+ },
+ setItemRaw(key, value) {
+ data.set(key, value);
+ },
+ removeItem(key) {
+ data.delete(key);
+ },
+ getKeys() {
+ return Array.from(data.keys());
+ },
+ clear() {
+ data.clear();
+ },
+ dispose() {
+ data.clear();
+ }
+ };
+});
+
+function createStorage(options = {}) {
+ const context = {
+ mounts: { "": options.driver || memory() },
+ mountpoints: [""],
+ watching: false,
+ watchListeners: [],
+ unwatch: {}
+ };
+ const getMount = (key) => {
+ for (const base of context.mountpoints) {
+ if (key.startsWith(base)) {
+ return {
+ base,
+ relativeKey: key.slice(base.length),
+ driver: context.mounts[base]
+ };
+ }
+ }
+ return {
+ base: "",
+ relativeKey: key,
+ driver: context.mounts[""]
+ };
+ };
+ const getMounts = (base, includeParent) => {
+ return context.mountpoints.filter(
+ (mountpoint) => mountpoint.startsWith(base) || includeParent && base.startsWith(mountpoint)
+ ).map((mountpoint) => ({
+ relativeBase: base.length > mountpoint.length ? base.slice(mountpoint.length) : void 0,
+ mountpoint,
+ driver: context.mounts[mountpoint]
+ }));
+ };
+ const onChange = (event, key) => {
+ if (!context.watching) {
+ return;
+ }
+ key = normalizeKey$1(key);
+ for (const listener of context.watchListeners) {
+ listener(event, key);
+ }
+ };
+ const startWatch = async () => {
+ if (context.watching) {
+ return;
+ }
+ context.watching = true;
+ for (const mountpoint in context.mounts) {
+ context.unwatch[mountpoint] = await watch(
+ context.mounts[mountpoint],
+ onChange,
+ mountpoint
+ );
+ }
+ };
+ const stopWatch = async () => {
+ if (!context.watching) {
+ return;
+ }
+ for (const mountpoint in context.unwatch) {
+ await context.unwatch[mountpoint]();
+ }
+ context.unwatch = {};
+ context.watching = false;
+ };
+ const runBatch = (items, commonOptions, cb) => {
+ const batches = /* @__PURE__ */ new Map();
+ const getBatch = (mount) => {
+ let batch = batches.get(mount.base);
+ if (!batch) {
+ batch = {
+ driver: mount.driver,
+ base: mount.base,
+ items: []
+ };
+ batches.set(mount.base, batch);
+ }
+ return batch;
+ };
+ for (const item of items) {
+ const isStringItem = typeof item === "string";
+ const key = normalizeKey$1(isStringItem ? item : item.key);
+ const value = isStringItem ? void 0 : item.value;
+ const options2 = isStringItem || !item.options ? commonOptions : { ...commonOptions, ...item.options };
+ const mount = getMount(key);
+ getBatch(mount).items.push({
+ key,
+ value,
+ relativeKey: mount.relativeKey,
+ options: options2
+ });
+ }
+ return Promise.all([...batches.values()].map((batch) => cb(batch))).then(
+ (r) => r.flat()
+ );
+ };
+ const storage = {
+ // Item
+ hasItem(key, opts = {}) {
+ key = normalizeKey$1(key);
+ const { relativeKey, driver } = getMount(key);
+ return asyncCall(driver.hasItem, relativeKey, opts);
+ },
+ getItem(key, opts = {}) {
+ key = normalizeKey$1(key);
+ const { relativeKey, driver } = getMount(key);
+ return asyncCall(driver.getItem, relativeKey, opts).then(
+ (value) => destr(value)
+ );
+ },
+ getItems(items, commonOptions) {
+ return runBatch(items, commonOptions, (batch) => {
+ if (batch.driver.getItems) {
+ return asyncCall(
+ batch.driver.getItems,
+ batch.items.map((item) => ({
+ key: item.relativeKey,
+ options: item.options
+ })),
+ commonOptions
+ ).then(
+ (r) => r.map((item) => ({
+ key: joinKeys(batch.base, item.key),
+ value: destr(item.value)
+ }))
+ );
+ }
+ return Promise.all(
+ batch.items.map((item) => {
+ return asyncCall(
+ batch.driver.getItem,
+ item.relativeKey,
+ item.options
+ ).then((value) => ({
+ key: item.key,
+ value: destr(value)
+ }));
+ })
+ );
+ });
+ },
+ getItemRaw(key, opts = {}) {
+ key = normalizeKey$1(key);
+ const { relativeKey, driver } = getMount(key);
+ if (driver.getItemRaw) {
+ return asyncCall(driver.getItemRaw, relativeKey, opts);
+ }
+ return asyncCall(driver.getItem, relativeKey, opts).then(
+ (value) => deserializeRaw(value)
+ );
+ },
+ async setItem(key, value, opts = {}) {
+ if (value === void 0) {
+ return storage.removeItem(key);
+ }
+ key = normalizeKey$1(key);
+ const { relativeKey, driver } = getMount(key);
+ if (!driver.setItem) {
+ return;
+ }
+ await asyncCall(driver.setItem, relativeKey, stringify(value), opts);
+ if (!driver.watch) {
+ onChange("update", key);
+ }
+ },
+ async setItems(items, commonOptions) {
+ await runBatch(items, commonOptions, async (batch) => {
+ if (batch.driver.setItems) {
+ await asyncCall(
+ batch.driver.setItems,
+ batch.items.map((item) => ({
+ key: item.relativeKey,
+ value: stringify(item.value),
+ options: item.options
+ })),
+ commonOptions
+ );
+ }
+ if (!batch.driver.setItem) {
+ return;
+ }
+ await Promise.all(
+ batch.items.map((item) => {
+ return asyncCall(
+ batch.driver.setItem,
+ item.relativeKey,
+ stringify(item.value),
+ item.options
+ );
+ })
+ );
+ });
+ },
+ async setItemRaw(key, value, opts = {}) {
+ if (value === void 0) {
+ return storage.removeItem(key, opts);
+ }
+ key = normalizeKey$1(key);
+ const { relativeKey, driver } = getMount(key);
+ if (driver.setItemRaw) {
+ await asyncCall(driver.setItemRaw, relativeKey, value, opts);
+ } else if (driver.setItem) {
+ await asyncCall(driver.setItem, relativeKey, serializeRaw(value), opts);
+ } else {
+ return;
+ }
+ if (!driver.watch) {
+ onChange("update", key);
+ }
+ },
+ async removeItem(key, opts = {}) {
+ if (typeof opts === "boolean") {
+ opts = { removeMeta: opts };
+ }
+ key = normalizeKey$1(key);
+ const { relativeKey, driver } = getMount(key);
+ if (!driver.removeItem) {
+ return;
+ }
+ await asyncCall(driver.removeItem, relativeKey, opts);
+ if (opts.removeMeta || opts.removeMata) {
+ await asyncCall(driver.removeItem, relativeKey + "$", opts);
+ }
+ if (!driver.watch) {
+ onChange("remove", key);
+ }
+ },
+ // Meta
+ async getMeta(key, opts = {}) {
+ if (typeof opts === "boolean") {
+ opts = { nativeOnly: opts };
+ }
+ key = normalizeKey$1(key);
+ const { relativeKey, driver } = getMount(key);
+ const meta = /* @__PURE__ */ Object.create(null);
+ if (driver.getMeta) {
+ Object.assign(meta, await asyncCall(driver.getMeta, relativeKey, opts));
+ }
+ if (!opts.nativeOnly) {
+ const value = await asyncCall(
+ driver.getItem,
+ relativeKey + "$",
+ opts
+ ).then((value_) => destr(value_));
+ if (value && typeof value === "object") {
+ if (typeof value.atime === "string") {
+ value.atime = new Date(value.atime);
+ }
+ if (typeof value.mtime === "string") {
+ value.mtime = new Date(value.mtime);
+ }
+ Object.assign(meta, value);
+ }
+ }
+ return meta;
+ },
+ setMeta(key, value, opts = {}) {
+ return this.setItem(key + "$", value, opts);
+ },
+ removeMeta(key, opts = {}) {
+ return this.removeItem(key + "$", opts);
+ },
+ // Keys
+ async getKeys(base, opts = {}) {
+ base = normalizeBaseKey(base);
+ const mounts = getMounts(base, true);
+ let maskedMounts = [];
+ const allKeys = [];
+ for (const mount of mounts) {
+ const rawKeys = await asyncCall(
+ mount.driver.getKeys,
+ mount.relativeBase,
+ opts
+ );
+ const keys = rawKeys.map((key) => mount.mountpoint + normalizeKey$1(key)).filter((key) => !maskedMounts.some((p) => key.startsWith(p)));
+ allKeys.push(...keys);
+ maskedMounts = [
+ mount.mountpoint,
+ ...maskedMounts.filter((p) => !p.startsWith(mount.mountpoint))
+ ];
+ }
+ return base ? allKeys.filter((key) => key.startsWith(base) && !key.endsWith("$")) : allKeys.filter((key) => !key.endsWith("$"));
+ },
+ // Utils
+ async clear(base, opts = {}) {
+ base = normalizeBaseKey(base);
+ await Promise.all(
+ getMounts(base, false).map(async (m) => {
+ if (m.driver.clear) {
+ return asyncCall(m.driver.clear, m.relativeBase, opts);
+ }
+ if (m.driver.removeItem) {
+ const keys = await m.driver.getKeys(m.relativeBase || "", opts);
+ return Promise.all(
+ keys.map((key) => m.driver.removeItem(key, opts))
+ );
+ }
+ })
+ );
+ },
+ async dispose() {
+ await Promise.all(
+ Object.values(context.mounts).map((driver) => dispose(driver))
+ );
+ },
+ async watch(callback) {
+ await startWatch();
+ context.watchListeners.push(callback);
+ return async () => {
+ context.watchListeners = context.watchListeners.filter(
+ (listener) => listener !== callback
+ );
+ if (context.watchListeners.length === 0) {
+ await stopWatch();
+ }
+ };
+ },
+ async unwatch() {
+ context.watchListeners = [];
+ await stopWatch();
+ },
+ // Mount
+ mount(base, driver) {
+ base = normalizeBaseKey(base);
+ if (base && context.mounts[base]) {
+ throw new Error(`already mounted at ${base}`);
+ }
+ if (base) {
+ context.mountpoints.push(base);
+ context.mountpoints.sort((a, b) => b.length - a.length);
+ }
+ context.mounts[base] = driver;
+ if (context.watching) {
+ Promise.resolve(watch(driver, onChange, base)).then((unwatcher) => {
+ context.unwatch[base] = unwatcher;
+ }).catch(console.error);
+ }
+ return storage;
+ },
+ async unmount(base, _dispose = true) {
+ base = normalizeBaseKey(base);
+ if (!base || !context.mounts[base]) {
+ return;
+ }
+ if (context.watching && base in context.unwatch) {
+ context.unwatch[base]();
+ delete context.unwatch[base];
+ }
+ if (_dispose) {
+ await dispose(context.mounts[base]);
+ }
+ context.mountpoints = context.mountpoints.filter((key) => key !== base);
+ delete context.mounts[base];
+ },
+ getMount(key = "") {
+ key = normalizeKey$1(key) + ":";
+ const m = getMount(key);
+ return {
+ driver: m.driver,
+ base: m.base
+ };
+ },
+ getMounts(base = "", opts = {}) {
+ base = normalizeKey$1(base);
+ const mounts = getMounts(base, opts.parents);
+ return mounts.map((m) => ({
+ driver: m.driver,
+ base: m.mountpoint
+ }));
+ }
+ };
+ return storage;
+}
+function watch(driver, onChange, base) {
+ return driver.watch ? driver.watch((event, key) => onChange(event, base + key)) : () => {
+ };
+}
+async function dispose(driver) {
+ if (typeof driver.dispose === "function") {
+ await asyncCall(driver.dispose);
+ }
+}
+
+const _assets = {
+
+};
+
+const normalizeKey = function normalizeKey(key) {
+ if (!key) {
+ return "";
+ }
+ return key.split("?")[0].replace(/[/\\]/g, ":").replace(/:+/g, ":").replace(/^:|:$/g, "");
+};
+
+const assets$1 = {
+ getKeys() {
+ return Promise.resolve(Object.keys(_assets))
+ },
+ hasItem (id) {
+ id = normalizeKey(id);
+ return Promise.resolve(id in _assets)
+ },
+ getItem (id) {
+ id = normalizeKey(id);
+ return Promise.resolve(_assets[id] ? _assets[id].import() : null)
+ },
+ getMeta (id) {
+ id = normalizeKey(id);
+ return Promise.resolve(_assets[id] ? _assets[id].meta : {})
+ }
+};
+
+function defineDriver(factory) {
+ return factory;
+}
+function createError(driver, message, opts) {
+ const err = new Error(`[unstorage] [${driver}] ${message}`, opts);
+ return err;
+}
+function createRequiredError(driver, name) {
+ if (Array.isArray(name)) {
+ return createError(
+ driver,
+ `Missing some of the required options ${name.map((n) => "`" + n + "`").join(", ")}`
+ );
+ }
+ return createError(driver, `Missing required option \`${name}\`.`);
+}
+
+function ignoreNotfound(err) {
+ return err.code === "ENOENT" || err.code === "EISDIR" ? null : err;
+}
+function ignoreExists(err) {
+ return err.code === "EEXIST" ? null : err;
+}
+async function writeFile(path, data, encoding) {
+ await ensuredir(dirname$1(path));
+ return promises.writeFile(path, data, encoding);
+}
+function readFile(path, encoding) {
+ return promises.readFile(path, encoding).catch(ignoreNotfound);
+}
+function unlink(path) {
+ return promises.unlink(path).catch(ignoreNotfound);
+}
+function readdir(dir) {
+ return promises.readdir(dir, { withFileTypes: true }).catch(ignoreNotfound).then((r) => r || []);
+}
+async function ensuredir(dir) {
+ if (existsSync(dir)) {
+ return;
+ }
+ await ensuredir(dirname$1(dir)).catch(ignoreExists);
+ await promises.mkdir(dir).catch(ignoreExists);
+}
+async function readdirRecursive(dir, ignore) {
+ if (ignore && ignore(dir)) {
+ return [];
+ }
+ const entries = await readdir(dir);
+ const files = [];
+ await Promise.all(
+ entries.map(async (entry) => {
+ const entryPath = resolve$1(dir, entry.name);
+ if (entry.isDirectory()) {
+ const dirFiles = await readdirRecursive(entryPath, ignore);
+ files.push(...dirFiles.map((f) => entry.name + "/" + f));
+ } else {
+ if (!(ignore && ignore(entry.name))) {
+ files.push(entry.name);
+ }
+ }
+ })
+ );
+ return files;
+}
+async function rmRecursive(dir) {
+ const entries = await readdir(dir);
+ await Promise.all(
+ entries.map((entry) => {
+ const entryPath = resolve$1(dir, entry.name);
+ if (entry.isDirectory()) {
+ return rmRecursive(entryPath).then(() => promises.rmdir(entryPath));
+ } else {
+ return promises.unlink(entryPath);
+ }
+ })
+ );
+}
+
+const PATH_TRAVERSE_RE = /\.\.\:|\.\.$/;
+const DRIVER_NAME = "fs-lite";
+const unstorage_47drivers_47fs_45lite = defineDriver((opts = {}) => {
+ if (!opts.base) {
+ throw createRequiredError(DRIVER_NAME, "base");
+ }
+ opts.base = resolve$1(opts.base);
+ const r = (key) => {
+ if (PATH_TRAVERSE_RE.test(key)) {
+ throw createError(
+ DRIVER_NAME,
+ `Invalid key: ${JSON.stringify(key)}. It should not contain .. segments`
+ );
+ }
+ const resolved = join(opts.base, key.replace(/:/g, "/"));
+ return resolved;
+ };
+ return {
+ name: DRIVER_NAME,
+ options: opts,
+ hasItem(key) {
+ return existsSync(r(key));
+ },
+ getItem(key) {
+ return readFile(r(key), "utf8");
+ },
+ getItemRaw(key) {
+ return readFile(r(key));
+ },
+ async getMeta(key) {
+ const { atime, mtime, size, birthtime, ctime } = await promises.stat(r(key)).catch(() => ({}));
+ return { atime, mtime, size, birthtime, ctime };
+ },
+ setItem(key, value) {
+ if (opts.readOnly) {
+ return;
+ }
+ return writeFile(r(key), value, "utf8");
+ },
+ setItemRaw(key, value) {
+ if (opts.readOnly) {
+ return;
+ }
+ return writeFile(r(key), value);
+ },
+ removeItem(key) {
+ if (opts.readOnly) {
+ return;
+ }
+ return unlink(r(key));
+ },
+ getKeys() {
+ return readdirRecursive(r("."), opts.ignore);
+ },
+ async clear() {
+ if (opts.readOnly || opts.noClear) {
+ return;
+ }
+ await rmRecursive(r("."));
+ }
+ };
+});
+
+const storage = createStorage({});
+
+storage.mount('/assets', assets$1);
+
+storage.mount('data', unstorage_47drivers_47fs_45lite({"driver":"fsLite","base":"E:\\工作文件\\寄托\\SynologyDrive\\寄托\\PC问答打包\\questions-answers\\.data\\kv"}));
+
+function useStorage(base = "") {
+ return base ? prefixStorage(storage, base) : storage;
+}
+
+const defaultCacheOptions = {
+ name: "_",
+ base: "/cache",
+ swr: true,
+ maxAge: 1
+};
+function defineCachedFunction(fn, opts = {}) {
+ opts = { ...defaultCacheOptions, ...opts };
+ const pending = {};
+ const group = opts.group || "nitro/functions";
+ const name = opts.name || fn.name || "_";
+ const integrity = opts.integrity || hash([fn, opts]);
+ const validate = opts.validate || ((entry) => entry.value !== void 0);
+ async function get(key, resolver, shouldInvalidateCache, event) {
+ const cacheKey = [opts.base, group, name, key + ".json"].filter(Boolean).join(":").replace(/:\/$/, ":index");
+ const entry = await useStorage().getItem(cacheKey) || {};
+ const ttl = (opts.maxAge ?? opts.maxAge ?? 0) * 1e3;
+ if (ttl) {
+ entry.expires = Date.now() + ttl;
+ }
+ const expired = shouldInvalidateCache || entry.integrity !== integrity || ttl && Date.now() - (entry.mtime || 0) > ttl || validate(entry) === false;
+ const _resolve = async () => {
+ const isPending = pending[key];
+ if (!isPending) {
+ if (entry.value !== void 0 && (opts.staleMaxAge || 0) >= 0 && opts.swr === false) {
+ entry.value = void 0;
+ entry.integrity = void 0;
+ entry.mtime = void 0;
+ entry.expires = void 0;
+ }
+ pending[key] = Promise.resolve(resolver());
+ }
+ try {
+ entry.value = await pending[key];
+ } catch (error) {
+ if (!isPending) {
+ delete pending[key];
+ }
+ throw error;
+ }
+ if (!isPending) {
+ entry.mtime = Date.now();
+ entry.integrity = integrity;
+ delete pending[key];
+ if (validate(entry) !== false) {
+ const promise = useStorage().setItem(cacheKey, entry).catch((error) => {
+ console.error(`[nitro] [cache] Cache write error.`, error);
+ useNitroApp().captureError(error, { event, tags: ["cache"] });
+ });
+ if (event && event.waitUntil) {
+ event.waitUntil(promise);
+ }
+ }
+ }
+ };
+ const _resolvePromise = expired ? _resolve() : Promise.resolve();
+ if (entry.value === void 0) {
+ await _resolvePromise;
+ } else if (expired && event && event.waitUntil) {
+ event.waitUntil(_resolvePromise);
+ }
+ if (opts.swr && validate(entry) !== false) {
+ _resolvePromise.catch((error) => {
+ console.error(`[nitro] [cache] SWR handler error.`, error);
+ useNitroApp().captureError(error, { event, tags: ["cache"] });
+ });
+ return entry;
+ }
+ return _resolvePromise.then(() => entry);
+ }
+ return async (...args) => {
+ const shouldBypassCache = opts.shouldBypassCache?.(...args);
+ if (shouldBypassCache) {
+ return fn(...args);
+ }
+ const key = await (opts.getKey || getKey)(...args);
+ const shouldInvalidateCache = opts.shouldInvalidateCache?.(...args);
+ const entry = await get(
+ key,
+ () => fn(...args),
+ shouldInvalidateCache,
+ args[0] && isEvent(args[0]) ? args[0] : void 0
+ );
+ let value = entry.value;
+ if (opts.transform) {
+ value = await opts.transform(entry, ...args) || value;
+ }
+ return value;
+ };
+}
+const cachedFunction = defineCachedFunction;
+function getKey(...args) {
+ return args.length > 0 ? hash(args, {}) : "";
+}
+function escapeKey(key) {
+ return String(key).replace(/\W/g, "");
+}
+function defineCachedEventHandler(handler, opts = defaultCacheOptions) {
+ const variableHeaderNames = (opts.varies || []).filter(Boolean).map((h) => h.toLowerCase()).sort();
+ const _opts = {
+ ...opts,
+ getKey: async (event) => {
+ const customKey = await opts.getKey?.(event);
+ if (customKey) {
+ return escapeKey(customKey);
+ }
+ const _path = event.node.req.originalUrl || event.node.req.url || event.path;
+ const _pathname = escapeKey(decodeURI(parseURL(_path).pathname)).slice(0, 16) || "index";
+ const _hashedPath = `${_pathname}.${hash(_path)}`;
+ const _headers = variableHeaderNames.map((header) => [header, event.node.req.headers[header]]).map(([name, value]) => `${escapeKey(name)}.${hash(value)}`);
+ return [_hashedPath, ..._headers].join(":");
+ },
+ validate: (entry) => {
+ if (!entry.value) {
+ return false;
+ }
+ if (entry.value.code >= 400) {
+ return false;
+ }
+ if (entry.value.body === void 0) {
+ return false;
+ }
+ if (entry.value.headers.etag === "undefined" || entry.value.headers["last-modified"] === "undefined") {
+ return false;
+ }
+ return true;
+ },
+ group: opts.group || "nitro/handlers",
+ integrity: opts.integrity || hash([handler, opts])
+ };
+ const _cachedHandler = cachedFunction(
+ async (incomingEvent) => {
+ const variableHeaders = {};
+ for (const header of variableHeaderNames) {
+ variableHeaders[header] = incomingEvent.node.req.headers[header];
+ }
+ const reqProxy = cloneWithProxy(incomingEvent.node.req, {
+ headers: variableHeaders
+ });
+ const resHeaders = {};
+ let _resSendBody;
+ const resProxy = cloneWithProxy(incomingEvent.node.res, {
+ statusCode: 200,
+ writableEnded: false,
+ writableFinished: false,
+ headersSent: false,
+ closed: false,
+ getHeader(name) {
+ return resHeaders[name];
+ },
+ setHeader(name, value) {
+ resHeaders[name] = value;
+ return this;
+ },
+ getHeaderNames() {
+ return Object.keys(resHeaders);
+ },
+ hasHeader(name) {
+ return name in resHeaders;
+ },
+ removeHeader(name) {
+ delete resHeaders[name];
+ },
+ getHeaders() {
+ return resHeaders;
+ },
+ end(chunk, arg2, arg3) {
+ if (typeof chunk === "string") {
+ _resSendBody = chunk;
+ }
+ if (typeof arg2 === "function") {
+ arg2();
+ }
+ if (typeof arg3 === "function") {
+ arg3();
+ }
+ return this;
+ },
+ write(chunk, arg2, arg3) {
+ if (typeof chunk === "string") {
+ _resSendBody = chunk;
+ }
+ if (typeof arg2 === "function") {
+ arg2();
+ }
+ if (typeof arg3 === "function") {
+ arg3();
+ }
+ return this;
+ },
+ writeHead(statusCode, headers2) {
+ this.statusCode = statusCode;
+ if (headers2) {
+ for (const header in headers2) {
+ this.setHeader(header, headers2[header]);
+ }
+ }
+ return this;
+ }
+ });
+ const event = createEvent(reqProxy, resProxy);
+ event.context = incomingEvent.context;
+ const body = await handler(event) || _resSendBody;
+ const headers = event.node.res.getHeaders();
+ headers.etag = String(
+ headers.Etag || headers.etag || `W/"${hash(body)}"`
+ );
+ headers["last-modified"] = String(
+ headers["Last-Modified"] || headers["last-modified"] || (/* @__PURE__ */ new Date()).toUTCString()
+ );
+ const cacheControl = [];
+ if (opts.swr) {
+ if (opts.maxAge) {
+ cacheControl.push(`s-maxage=${opts.maxAge}`);
+ }
+ if (opts.staleMaxAge) {
+ cacheControl.push(`stale-while-revalidate=${opts.staleMaxAge}`);
+ } else {
+ cacheControl.push("stale-while-revalidate");
+ }
+ } else if (opts.maxAge) {
+ cacheControl.push(`max-age=${opts.maxAge}`);
+ }
+ if (cacheControl.length > 0) {
+ headers["cache-control"] = cacheControl.join(", ");
+ }
+ const cacheEntry = {
+ code: event.node.res.statusCode,
+ headers,
+ body
+ };
+ return cacheEntry;
+ },
+ _opts
+ );
+ return defineEventHandler(async (event) => {
+ if (opts.headersOnly) {
+ if (handleCacheHeaders(event, { maxAge: opts.maxAge })) {
+ return;
+ }
+ return handler(event);
+ }
+ const response = await _cachedHandler(event);
+ if (event.node.res.headersSent || event.node.res.writableEnded) {
+ return response.body;
+ }
+ if (handleCacheHeaders(event, {
+ modifiedTime: new Date(response.headers["last-modified"]),
+ etag: response.headers.etag,
+ maxAge: opts.maxAge
+ })) {
+ return;
+ }
+ event.node.res.statusCode = response.code;
+ for (const name in response.headers) {
+ const value = response.headers[name];
+ if (name === "set-cookie") {
+ event.node.res.appendHeader(
+ name,
+ splitCookiesString(value)
+ );
+ } else {
+ event.node.res.setHeader(name, value);
+ }
+ }
+ return response.body;
+ });
+}
+function cloneWithProxy(obj, overrides) {
+ return new Proxy(obj, {
+ get(target, property, receiver) {
+ if (property in overrides) {
+ return overrides[property];
+ }
+ return Reflect.get(target, property, receiver);
+ },
+ set(target, property, value, receiver) {
+ if (property in overrides) {
+ overrides[property] = value;
+ return true;
+ }
+ return Reflect.set(target, property, value, receiver);
+ }
+ });
+}
+const cachedEventHandler = defineCachedEventHandler;
+
+function hasReqHeader(event, name, includes) {
+ const value = getRequestHeader(event, name);
+ return value && typeof value === "string" && value.toLowerCase().includes(includes);
+}
+function isJsonRequest(event) {
+ if (hasReqHeader(event, "accept", "text/html")) {
+ return false;
+ }
+ return hasReqHeader(event, "accept", "application/json") || hasReqHeader(event, "user-agent", "curl/") || hasReqHeader(event, "user-agent", "httpie/") || hasReqHeader(event, "sec-fetch-mode", "cors") || event.path.startsWith("/api/") || event.path.endsWith(".json");
+}
+function normalizeError(error) {
+ const cwd = typeof process.cwd === "function" ? process.cwd() : "/";
+ const stack = (error.stack || "").split("\n").splice(1).filter((line) => line.includes("at ")).map((line) => {
+ const text = line.replace(cwd + "/", "./").replace("webpack:/", "").replace("file://", "").trim();
+ return {
+ text,
+ internal: line.includes("node_modules") && !line.includes(".cache") || line.includes("internal") || line.includes("new Promise")
+ };
+ });
+ const statusCode = error.statusCode || 500;
+ const statusMessage = error.statusMessage ?? (statusCode === 404 ? "Not Found" : "");
+ const message = error.message || error.toString();
+ return {
+ stack,
+ statusCode,
+ statusMessage,
+ message
+ };
+}
+function _captureError(error, type) {
+ console.error(`[nitro] [${type}]`, error);
+ useNitroApp().captureError(error, { tags: [type] });
+}
+function trapUnhandledNodeErrors() {
+ process.on(
+ "unhandledRejection",
+ (error) => _captureError(error, "unhandledRejection")
+ );
+ process.on(
+ "uncaughtException",
+ (error) => _captureError(error, "uncaughtException")
+ );
+}
+function joinHeaders(value) {
+ return Array.isArray(value) ? value.join(", ") : String(value);
+}
+function normalizeFetchResponse(response) {
+ if (!response.headers.has("set-cookie")) {
+ return response;
+ }
+ return new Response(response.body, {
+ status: response.status,
+ statusText: response.statusText,
+ headers: normalizeCookieHeaders(response.headers)
+ });
+}
+function normalizeCookieHeader(header = "") {
+ return splitCookiesString(joinHeaders(header));
+}
+function normalizeCookieHeaders(headers) {
+ const outgoingHeaders = new Headers();
+ for (const [name, header] of headers) {
+ if (name === "set-cookie") {
+ for (const cookie of normalizeCookieHeader(header)) {
+ outgoingHeaders.append("set-cookie", cookie);
+ }
+ } else {
+ outgoingHeaders.set(name, joinHeaders(header));
+ }
+ }
+ return outgoingHeaders;
+}
+
+const config = useRuntimeConfig();
+const _routeRulesMatcher = toRouteMatcher(
+ createRouter$1({ routes: config.nitro.routeRules })
+);
+function createRouteRulesHandler(ctx) {
+ return eventHandler((event) => {
+ const routeRules = getRouteRules(event);
+ if (routeRules.headers) {
+ setHeaders(event, routeRules.headers);
+ }
+ if (routeRules.redirect) {
+ return sendRedirect(
+ event,
+ routeRules.redirect.to,
+ routeRules.redirect.statusCode
+ );
+ }
+ if (routeRules.proxy) {
+ let target = routeRules.proxy.to;
+ if (target.endsWith("/**")) {
+ let targetPath = event.path;
+ const strpBase = routeRules.proxy._proxyStripBase;
+ if (strpBase) {
+ targetPath = withoutBase(targetPath, strpBase);
+ }
+ target = joinURL(target.slice(0, -3), targetPath);
+ } else if (event.path.includes("?")) {
+ const query = getQuery$1(event.path);
+ target = withQuery(target, query);
+ }
+ return proxyRequest(event, target, {
+ fetch: ctx.localFetch,
+ ...routeRules.proxy
+ });
+ }
+ });
+}
+function getRouteRules(event) {
+ event.context._nitro = event.context._nitro || {};
+ if (!event.context._nitro.routeRules) {
+ event.context._nitro.routeRules = getRouteRulesForPath(
+ withoutBase(event.path.split("?")[0], useRuntimeConfig().app.baseURL)
+ );
+ }
+ return event.context._nitro.routeRules;
+}
+function getRouteRulesForPath(path) {
+ return defu({}, ..._routeRulesMatcher.matchAll(path).reverse());
+}
+
+const plugins = [
+
+];
+
+const errorHandler = (async function errorhandler(error, event) {
+ const { stack, statusCode, statusMessage, message } = normalizeError(error);
+ const errorObject = {
+ url: event.path,
+ statusCode,
+ statusMessage,
+ message,
+ stack: "",
+ data: error.data
+ };
+ if (error.unhandled || error.fatal) {
+ const tags = [
+ "[nuxt]",
+ "[request error]",
+ error.unhandled && "[unhandled]",
+ error.fatal && "[fatal]",
+ Number(errorObject.statusCode) !== 200 && `[${errorObject.statusCode}]`
+ ].filter(Boolean).join(" ");
+ console.error(tags, errorObject.message + "\n" + stack.map((l) => " " + l.text).join(" \n"));
+ }
+ if (event.handled) {
+ return;
+ }
+ setResponseStatus(event, errorObject.statusCode !== 200 && errorObject.statusCode || 500, errorObject.statusMessage);
+ if (isJsonRequest(event)) {
+ setResponseHeader(event, "Content-Type", "application/json");
+ return send(event, JSON.stringify(errorObject));
+ }
+ const isErrorPage = event.path.startsWith("/__nuxt_error");
+ const res = !isErrorPage ? await useNitroApp().localFetch(withQuery(joinURL(useRuntimeConfig().app.baseURL, "/__nuxt_error"), errorObject), {
+ headers: getRequestHeaders(event),
+ redirect: "manual"
+ }).catch(() => null) : null;
+ if (!res) {
+ const { template } = await import('../error-500.mjs');
+ if (event.handled) {
+ return;
+ }
+ setResponseHeader(event, "Content-Type", "text/html;charset=UTF-8");
+ return send(event, template(errorObject));
+ }
+ const html = await res.text();
+ if (event.handled) {
+ return;
+ }
+ for (const [header, value] of res.headers.entries()) {
+ setResponseHeader(event, header, value);
+ }
+ setResponseStatus(event, res.status && res.status !== 200 ? res.status : void 0, res.statusText);
+ return send(event, html);
+});
+
+const assets = {
+ "/favicon.ico": {
+ "type": "image/vnd.microsoft.icon",
+ "etag": "\"8be-ny/AuTW5JYo7/wKERUbLq+/v+kI\"",
+ "mtime": "2023-12-05T02:50:15.324Z",
+ "size": 2238,
+ "path": "../public/favicon.ico"
+ },
+ "/_nuxt/add-icon.0b0b5313.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"d67-gajxuGcy6aHIeWAbO0RazX03p90\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 3431,
+ "path": "../public/_nuxt/add-icon.0b0b5313.svg"
+ },
+ "/_nuxt/arrows-icon.271dd0d3.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"5a0-yAit7q5lcKJMd35iOMMifZv2uno\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 1440,
+ "path": "../public/_nuxt/arrows-icon.271dd0d3.svg"
+ },
+ "/_nuxt/close-icon.86743366.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"2d4-QYrulZl33jopLCT37UdJfnzXOVg\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 724,
+ "path": "../public/_nuxt/close-icon.86743366.svg"
+ },
+ "/_nuxt/comment-icon-gray.2c8779f9.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"816-HEGvNjvS0TeA/3uJweilvZfCqlk\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 2070,
+ "path": "../public/_nuxt/comment-icon-gray.2c8779f9.svg"
+ },
+ "/_nuxt/delete-icon.4d386dce.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"17fe-RGKa0+MaUqOqlbPlXlig67fGkaY\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 6142,
+ "path": "../public/_nuxt/delete-icon.4d386dce.svg"
+ },
+ "/_nuxt/dot-gray.86cdd7b5.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"2af-sBMsuPZbsh28jzlFWO9lVYMVDk8\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 687,
+ "path": "../public/_nuxt/dot-gray.86cdd7b5.svg"
+ },
+ "/_nuxt/dot-yellow.4b5e135b.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"2af-6L7YsWhGTHBB6NqQztB/l2OFRfE\"",
+ "mtime": "2023-12-07T03:11:19.783Z",
+ "size": 687,
+ "path": "../public/_nuxt/dot-yellow.4b5e135b.svg"
+ },
+ "/_nuxt/dot.1026a040.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"217-dx6xqUT4D9pCoKc6nr20aXeJQXQ\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 535,
+ "path": "../public/_nuxt/dot.1026a040.svg"
+ },
+ "/_nuxt/edit-icon-white.29b27582.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"8be-EnEF3CQI46JkMNAXbPf3H6T7pzU\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 2238,
+ "path": "../public/_nuxt/edit-icon-white.29b27582.svg"
+ },
+ "/_nuxt/empty-icon.24a01ae2.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"d028-Our2UxxUiciRSduORd8JZCt5Prw\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 53288,
+ "path": "../public/_nuxt/empty-icon.24a01ae2.svg"
+ },
+ "/_nuxt/entry.dcd752c1.js": {
+ "type": "application/javascript",
+ "etag": "\"35d98-J3YPIaGWhdpQaRdTFGoq3Ix+/bA\"",
+ "mtime": "2023-12-07T03:11:19.786Z",
+ "size": 220568,
+ "path": "../public/_nuxt/entry.dcd752c1.js"
+ },
+ "/_nuxt/entry.e8059532.css": {
+ "type": "text/css; charset=utf-8",
+ "etag": "\"a3bc-NP6Y9Ebbj3v/Iv5EWxRM716U4PQ\"",
+ "mtime": "2023-12-07T03:11:19.782Z",
+ "size": 41916,
+ "path": "../public/_nuxt/entry.e8059532.css"
+ },
+ "/_nuxt/error-404.7fc72018.css": {
+ "type": "text/css; charset=utf-8",
+ "etag": "\"e2e-iNt1cqPQ0WDudfCTZVQd31BeRGs\"",
+ "mtime": "2023-12-07T03:11:19.785Z",
+ "size": 3630,
+ "path": "../public/_nuxt/error-404.7fc72018.css"
+ },
+ "/_nuxt/error-404.f82bfbab.js": {
+ "type": "application/javascript",
+ "etag": "\"18de-s0U425e5PHpc+jzA9WxO283kn5Q\"",
+ "mtime": "2023-12-07T03:11:19.785Z",
+ "size": 6366,
+ "path": "../public/_nuxt/error-404.f82bfbab.js"
+ },
+ "/_nuxt/error-500.38081b51.js": {
+ "type": "application/javascript",
+ "etag": "\"756-5g/SuB7y3JV46kZnxEzOdPLXigo\"",
+ "mtime": "2023-12-07T03:11:19.785Z",
+ "size": 1878,
+ "path": "../public/_nuxt/error-500.38081b51.js"
+ },
+ "/_nuxt/error-500.c5df6088.css": {
+ "type": "text/css; charset=utf-8",
+ "etag": "\"79e-ByRo+49BgcevWdRjJy3CMx2IA5k\"",
+ "mtime": "2023-12-07T03:11:19.785Z",
+ "size": 1950,
+ "path": "../public/_nuxt/error-500.c5df6088.css"
+ },
+ "/_nuxt/issue-bj.44adad8c.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"926-lK6rrraYIC+9Yxyy0subzOK8XpE\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 2342,
+ "path": "../public/_nuxt/issue-bj.44adad8c.svg"
+ },
+ "/_nuxt/logo.6622f82d.png": {
+ "type": "image/png",
+ "etag": "\"843f-FSXGFGigIHmtzjdcQzuMz/a7E+o\"",
+ "mtime": "2023-12-07T03:11:19.783Z",
+ "size": 33855,
+ "path": "../public/_nuxt/logo.6622f82d.png"
+ },
+ "/_nuxt/menu-icon-gray.d61f02b1.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"6de-kmXhltPHfF4W1gmV7wT4aZCZ6gg\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 1758,
+ "path": "../public/_nuxt/menu-icon-gray.d61f02b1.svg"
+ },
+ "/_nuxt/mini-code.71ebcc53.png": {
+ "type": "image/png",
+ "etag": "\"27ef-bwkVF55+sU0FBZ7eCqai2Zd0ZQs\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 10223,
+ "path": "../public/_nuxt/mini-code.71ebcc53.png"
+ },
+ "/_nuxt/QRCode-icon.a105d5fc.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"9c1-qGg9jZ5wmHJGzh2A00nHIGWHMh4\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 2497,
+ "path": "../public/_nuxt/QRCode-icon.a105d5fc.svg"
+ },
+ "/_nuxt/tick-no.179037b3.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"1ea-YISAWqJD56jxoQT8N812fDJfkMw\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 490,
+ "path": "../public/_nuxt/tick-no.179037b3.svg"
+ },
+ "/_nuxt/tick-option.e092d22f.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"29a-UVjuq3WHs6mhu1KGQ7gQmJH2Bc4\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 666,
+ "path": "../public/_nuxt/tick-option.e092d22f.svg"
+ },
+ "/_nuxt/tick-orange.233abc69.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"60a-VrP9K+TQp6JbNcrU5k1Dor/Kq/E\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 1546,
+ "path": "../public/_nuxt/tick-orange.233abc69.svg"
+ },
+ "/_nuxt/title.98892974.png": {
+ "type": "image/png",
+ "etag": "\"1723-0OwkVass/2nFB99dRT4w0sPUvI0\"",
+ "mtime": "2023-12-07T03:11:19.784Z",
+ "size": 5923,
+ "path": "../public/_nuxt/title.98892974.png"
+ },
+ "/img/add-icon.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"d67-gajxuGcy6aHIeWAbO0RazX03p90\"",
+ "mtime": "2023-11-13T04:02:34.940Z",
+ "size": 3431,
+ "path": "../public/img/add-icon.svg"
+ },
+ "/img/arrow-circular-gray.png": {
+ "type": "image/png",
+ "etag": "\"899-X5UlqUglGviYCrFQ2MNfdXWyhAk\"",
+ "mtime": "2023-11-17T07:51:55.904Z",
+ "size": 2201,
+ "path": "../public/img/arrow-circular-gray.png"
+ },
+ "/img/arrows-icon.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"5a0-yAit7q5lcKJMd35iOMMifZv2uno\"",
+ "mtime": "2023-11-14T03:47:58.900Z",
+ "size": 1440,
+ "path": "../public/img/arrows-icon.svg"
+ },
+ "/img/close-icon.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"2d4-QYrulZl33jopLCT37UdJfnzXOVg\"",
+ "mtime": "2023-11-15T10:58:59.914Z",
+ "size": 724,
+ "path": "../public/img/close-icon.svg"
+ },
+ "/img/collect-icon-colours.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"7ab-av9D1DgxgD5cvY5wd30haD7c1q0\"",
+ "mtime": "2023-11-17T09:37:22.277Z",
+ "size": 1963,
+ "path": "../public/img/collect-icon-colours.svg"
+ },
+ "/img/collect-icon.png": {
+ "type": "image/png",
+ "etag": "\"529-cGcSQeqK60ZOse2fqmQpwbhl8Oo\"",
+ "mtime": "2023-11-16T02:40:06.648Z",
+ "size": 1321,
+ "path": "../public/img/collect-icon.png"
+ },
+ "/img/comment-icon-gray.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"816-HEGvNjvS0TeA/3uJweilvZfCqlk\"",
+ "mtime": "2023-11-17T07:13:59.820Z",
+ "size": 2070,
+ "path": "../public/img/comment-icon-gray.svg"
+ },
+ "/img/comment-icon.png": {
+ "type": "image/png",
+ "etag": "\"41b-KMhi2XJxQNYy8FHs4wWCQGW73P8\"",
+ "mtime": "2023-11-16T03:34:57.052Z",
+ "size": 1051,
+ "path": "../public/img/comment-icon.png"
+ },
+ "/img/cross-circle-black.png": {
+ "type": "image/png",
+ "etag": "\"5e2-97mnvudIyYkLoBgpjwz92gXtzac\"",
+ "mtime": "2023-11-29T06:43:55.492Z",
+ "size": 1506,
+ "path": "../public/img/cross-circle-black.png"
+ },
+ "/img/cross-circle-icon.png": {
+ "type": "image/png",
+ "etag": "\"4a5-+tDlFiJJ5XuCD3q1Ij04BR977Yw\"",
+ "mtime": "2023-11-24T08:59:05.191Z",
+ "size": 1189,
+ "path": "../public/img/cross-circle-icon.png"
+ },
+ "/img/cross-icon.png": {
+ "type": "image/png",
+ "etag": "\"739-BT9ocJMXmhK+G6eBeZTKrZd2s2I\"",
+ "mtime": "2023-11-14T04:20:00.798Z",
+ "size": 1849,
+ "path": "../public/img/cross-icon.png"
+ },
+ "/img/delete-icon.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"17fe-RGKa0+MaUqOqlbPlXlig67fGkaY\"",
+ "mtime": "2023-11-14T02:23:59.086Z",
+ "size": 6142,
+ "path": "../public/img/delete-icon.svg"
+ },
+ "/img/dot-gray.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"2af-sBMsuPZbsh28jzlFWO9lVYMVDk8\"",
+ "mtime": "2023-11-13T10:14:39.043Z",
+ "size": 687,
+ "path": "../public/img/dot-gray.svg"
+ },
+ "/img/dot-yellow.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"2af-6L7YsWhGTHBB6NqQztB/l2OFRfE\"",
+ "mtime": "2023-11-13T10:14:58.596Z",
+ "size": 687,
+ "path": "../public/img/dot-yellow.svg"
+ },
+ "/img/dot.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"217-dx6xqUT4D9pCoKc6nr20aXeJQXQ\"",
+ "mtime": "2023-11-13T08:19:23.501Z",
+ "size": 535,
+ "path": "../public/img/dot.svg"
+ },
+ "/img/edit-icon-white.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"8be-EnEF3CQI46JkMNAXbPf3H6T7pzU\"",
+ "mtime": "2023-11-16T06:14:25.317Z",
+ "size": 2238,
+ "path": "../public/img/edit-icon-white.svg"
+ },
+ "/img/edit-icon.png": {
+ "type": "image/png",
+ "etag": "\"4a0-5vrCGU+988jGMXRITlRLsuYBv7I\"",
+ "mtime": "2023-11-14T04:06:21.289Z",
+ "size": 1184,
+ "path": "../public/img/edit-icon.png"
+ },
+ "/img/empty-icon.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"d028-Our2UxxUiciRSduORd8JZCt5Prw\"",
+ "mtime": "2023-11-13T09:45:37.672Z",
+ "size": 53288,
+ "path": "../public/img/empty-icon.svg"
+ },
+ "/img/give-sweep.png": {
+ "type": "image/png",
+ "etag": "\"2ef-W1aqnS1Lo5qGRQBA2UuxdC85lgc\"",
+ "mtime": "2023-11-16T04:30:16.264Z",
+ "size": 751,
+ "path": "../public/img/give-sweep.png"
+ },
+ "/img/hot-icon.png": {
+ "type": "image/png",
+ "etag": "\"78e-IB3K/cwKZyn+X+iPGDkW3T5Sfw4\"",
+ "mtime": "2023-11-28T09:12:20.214Z",
+ "size": 1934,
+ "path": "../public/img/hot-icon.png"
+ },
+ "/img/input-icon.png": {
+ "type": "image/png",
+ "etag": "\"783-UOMnRrj5T4WVSSuFh5qL4tPCzuM\"",
+ "mtime": "2023-11-13T04:02:17.650Z",
+ "size": 1923,
+ "path": "../public/img/input-icon.png"
+ },
+ "/img/issue-bj.png": {
+ "type": "image/png",
+ "etag": "\"91b-VAMH4irBJymMOQblcngOaq2iufU\"",
+ "mtime": "2023-11-27T06:57:08.573Z",
+ "size": 2331,
+ "path": "../public/img/issue-bj.png"
+ },
+ "/img/issue-bj.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"926-lK6rrraYIC+9Yxyy0subzOK8XpE\"",
+ "mtime": "2023-11-14T07:42:02.619Z",
+ "size": 2342,
+ "path": "../public/img/issue-bj.svg"
+ },
+ "/img/like-icon-colours.png": {
+ "type": "image/png",
+ "etag": "\"475-Dir7PdTEqwVV0TQc6Jiy9eK18sI\"",
+ "mtime": "2023-11-17T10:03:44.118Z",
+ "size": 1141,
+ "path": "../public/img/like-icon-colours.png"
+ },
+ "/img/like-icon-gray.png": {
+ "type": "image/png",
+ "etag": "\"5ac-el2AZW1iXXgBB4NRELjyMyXs6PA\"",
+ "mtime": "2023-11-17T07:14:18.420Z",
+ "size": 1452,
+ "path": "../public/img/like-icon-gray.png"
+ },
+ "/img/like-icon.png": {
+ "type": "image/png",
+ "etag": "\"586-b3HgSOe1sA4VUtS92mhe+ds2vRg\"",
+ "mtime": "2023-11-16T03:34:42.163Z",
+ "size": 1414,
+ "path": "../public/img/like-icon.png"
+ },
+ "/img/logo.png": {
+ "type": "image/png",
+ "etag": "\"843f-FSXGFGigIHmtzjdcQzuMz/a7E+o\"",
+ "mtime": "2023-11-28T08:27:33.849Z",
+ "size": 33855,
+ "path": "../public/img/logo.png"
+ },
+ "/img/menu-icon-gray.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"6de-kmXhltPHfF4W1gmV7wT4aZCZ6gg\"",
+ "mtime": "2023-11-17T07:15:03.963Z",
+ "size": 1758,
+ "path": "../public/img/menu-icon-gray.svg"
+ },
+ "/img/mini-code.png": {
+ "type": "image/png",
+ "etag": "\"27ef-bwkVF55+sU0FBZ7eCqai2Zd0ZQs\"",
+ "mtime": "2023-11-17T06:35:15.759Z",
+ "size": 10223,
+ "path": "../public/img/mini-code.png"
+ },
+ "/img/offer-mini-QRcode.png": {
+ "type": "image/png",
+ "etag": "\"2e86c-UrFFa4HC4Xmj7uAND0oWEWGpSMo\"",
+ "mtime": "2023-11-16T04:29:39.700Z",
+ "size": 190572,
+ "path": "../public/img/offer-mini-QRcode.png"
+ },
+ "/img/QRCode-icon.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"9c1-qGg9jZ5wmHJGzh2A00nHIGWHMh4\"",
+ "mtime": "2023-11-16T04:07:29.687Z",
+ "size": 2497,
+ "path": "../public/img/QRCode-icon.svg"
+ },
+ "/img/tick-no.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"1ea-YISAWqJD56jxoQT8N812fDJfkMw\"",
+ "mtime": "2023-12-06T03:11:50.571Z",
+ "size": 490,
+ "path": "../public/img/tick-no.svg"
+ },
+ "/img/tick-option.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"29a-UVjuq3WHs6mhu1KGQ7gQmJH2Bc4\"",
+ "mtime": "2023-12-06T03:12:07.098Z",
+ "size": 666,
+ "path": "../public/img/tick-option.svg"
+ },
+ "/img/tick-orange.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"60a-VrP9K+TQp6JbNcrU5k1Dor/Kq/E\"",
+ "mtime": "2023-11-14T03:56:28.549Z",
+ "size": 1546,
+ "path": "../public/img/tick-orange.svg"
+ },
+ "/img/title.png": {
+ "type": "image/png",
+ "etag": "\"1723-0OwkVass/2nFB99dRT4w0sPUvI0\"",
+ "mtime": "2023-05-23T08:44:21.531Z",
+ "size": 5923,
+ "path": "../public/img/title.png"
+ },
+ "/img/transmit-icon.png": {
+ "type": "image/png",
+ "etag": "\"43b-93Mc6wfSlULSQyK3koaHIAgmA/M\"",
+ "mtime": "2023-11-16T02:40:40.071Z",
+ "size": 1083,
+ "path": "../public/img/transmit-icon.png"
+ },
+ "/img/triangle-icon.svg": {
+ "type": "image/svg+xml",
+ "etag": "\"446-ylQ81DOJ3joSbsS9atyrW6pZsBY\"",
+ "mtime": "2023-11-24T06:35:05.018Z",
+ "size": 1094,
+ "path": "../public/img/triangle-icon.svg"
+ },
+ "/img/u4494.png": {
+ "type": "image/png",
+ "etag": "\"32953-V8gLsKbtJlW9uiqwKxaNa5nmUWc\"",
+ "mtime": "2023-11-29T09:32:00.290Z",
+ "size": 207187,
+ "path": "../public/img/u4494.png"
+ },
+ "/_nuxt/builds/latest.json": {
+ "type": "application/json",
+ "etag": "\"47-hbvbbQSeUc3WJyoeIXFpUgK0mdQ\"",
+ "mtime": "2023-12-07T03:11:20.957Z",
+ "size": 71,
+ "path": "../public/_nuxt/builds/latest.json"
+ },
+ "/_nuxt/builds/meta/ee485d75-6a9c-4aef-aba3-31320668b72f.json": {
+ "type": "application/json",
+ "etag": "\"8b-dDEPYNPDht/ncZadGrJbzR7xy1A\"",
+ "mtime": "2023-12-07T03:11:20.957Z",
+ "size": 139,
+ "path": "../public/_nuxt/builds/meta/ee485d75-6a9c-4aef-aba3-31320668b72f.json"
+ }
+};
+
+function normalizeWindowsPath(input = "") {
+ if (!input || !input.includes("\\")) {
+ return input;
+ }
+ return input.replace(/\\/g, "/");
+}
+const _IS_ABSOLUTE_RE = /^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/;
+const _DRIVE_LETTER_RE = /^[A-Za-z]:$/;
+function cwd() {
+ if (typeof process !== "undefined") {
+ return process.cwd().replace(/\\/g, "/");
+ }
+ return "/";
+}
+const resolve = function(...arguments_) {
+ arguments_ = arguments_.map((argument) => normalizeWindowsPath(argument));
+ let resolvedPath = "";
+ let resolvedAbsolute = false;
+ for (let index = arguments_.length - 1; index >= -1 && !resolvedAbsolute; index--) {
+ const path = index >= 0 ? arguments_[index] : cwd();
+ if (!path || path.length === 0) {
+ continue;
+ }
+ resolvedPath = `${path}/${resolvedPath}`;
+ resolvedAbsolute = isAbsolute(path);
+ }
+ resolvedPath = normalizeString(resolvedPath, !resolvedAbsolute);
+ if (resolvedAbsolute && !isAbsolute(resolvedPath)) {
+ return `/${resolvedPath}`;
+ }
+ return resolvedPath.length > 0 ? resolvedPath : ".";
+};
+function normalizeString(path, allowAboveRoot) {
+ let res = "";
+ let lastSegmentLength = 0;
+ let lastSlash = -1;
+ let dots = 0;
+ let char = null;
+ for (let index = 0; index <= path.length; ++index) {
+ if (index < path.length) {
+ char = path[index];
+ } else if (char === "/") {
+ break;
+ } else {
+ char = "/";
+ }
+ if (char === "/") {
+ if (lastSlash === index - 1 || dots === 1) ; else if (dots === 2) {
+ if (res.length < 2 || lastSegmentLength !== 2 || res[res.length - 1] !== "." || res[res.length - 2] !== ".") {
+ if (res.length > 2) {
+ const lastSlashIndex = res.lastIndexOf("/");
+ if (lastSlashIndex === -1) {
+ res = "";
+ lastSegmentLength = 0;
+ } else {
+ res = res.slice(0, lastSlashIndex);
+ lastSegmentLength = res.length - 1 - res.lastIndexOf("/");
+ }
+ lastSlash = index;
+ dots = 0;
+ continue;
+ } else if (res.length > 0) {
+ res = "";
+ lastSegmentLength = 0;
+ lastSlash = index;
+ dots = 0;
+ continue;
+ }
+ }
+ if (allowAboveRoot) {
+ res += res.length > 0 ? "/.." : "..";
+ lastSegmentLength = 2;
+ }
+ } else {
+ if (res.length > 0) {
+ res += `/${path.slice(lastSlash + 1, index)}`;
+ } else {
+ res = path.slice(lastSlash + 1, index);
+ }
+ lastSegmentLength = index - lastSlash - 1;
+ }
+ lastSlash = index;
+ dots = 0;
+ } else if (char === "." && dots !== -1) {
+ ++dots;
+ } else {
+ dots = -1;
+ }
+ }
+ return res;
+}
+const isAbsolute = function(p) {
+ return _IS_ABSOLUTE_RE.test(p);
+};
+const dirname = function(p) {
+ const segments = normalizeWindowsPath(p).replace(/\/$/, "").split("/").slice(0, -1);
+ if (segments.length === 1 && _DRIVE_LETTER_RE.test(segments[0])) {
+ segments[0] += "/";
+ }
+ return segments.join("/") || (isAbsolute(p) ? "/" : ".");
+};
+
+function readAsset (id) {
+ const serverDir = dirname(fileURLToPath(globalThis._importMeta_.url));
+ return promises$1.readFile(resolve(serverDir, assets[id].path))
+}
+
+const publicAssetBases = {"/_nuxt/builds/meta":{"maxAge":31536000},"/_nuxt/builds":{"maxAge":1},"/_nuxt":{"maxAge":31536000}};
+
+function isPublicAssetURL(id = '') {
+ if (assets[id]) {
+ return true
+ }
+ for (const base in publicAssetBases) {
+ if (id.startsWith(base)) { return true }
+ }
+ return false
+}
+
+function getAsset (id) {
+ return assets[id]
+}
+
+const METHODS = /* @__PURE__ */ new Set(["HEAD", "GET"]);
+const EncodingMap = { gzip: ".gz", br: ".br" };
+const _f4b49z = eventHandler((event) => {
+ if (event.method && !METHODS.has(event.method)) {
+ return;
+ }
+ let id = decodePath(
+ withLeadingSlash(withoutTrailingSlash(parseURL(event.path).pathname))
+ );
+ let asset;
+ const encodingHeader = String(
+ getRequestHeader(event, "accept-encoding") || ""
+ );
+ const encodings = [
+ ...encodingHeader.split(",").map((e) => EncodingMap[e.trim()]).filter(Boolean).sort(),
+ ""
+ ];
+ if (encodings.length > 1) {
+ setResponseHeader(event, "Vary", "Accept-Encoding");
+ }
+ for (const encoding of encodings) {
+ for (const _id of [id + encoding, joinURL(id, "index.html" + encoding)]) {
+ const _asset = getAsset(_id);
+ if (_asset) {
+ asset = _asset;
+ id = _id;
+ break;
+ }
+ }
+ }
+ if (!asset) {
+ if (isPublicAssetURL(id)) {
+ removeResponseHeader(event, "Cache-Control");
+ throw createError$1({
+ statusMessage: "Cannot find static asset " + id,
+ statusCode: 404
+ });
+ }
+ return;
+ }
+ const ifNotMatch = getRequestHeader(event, "if-none-match") === asset.etag;
+ if (ifNotMatch) {
+ setResponseStatus(event, 304, "Not Modified");
+ return "";
+ }
+ const ifModifiedSinceH = getRequestHeader(event, "if-modified-since");
+ const mtimeDate = new Date(asset.mtime);
+ if (ifModifiedSinceH && asset.mtime && new Date(ifModifiedSinceH) >= mtimeDate) {
+ setResponseStatus(event, 304, "Not Modified");
+ return "";
+ }
+ if (asset.type && !getResponseHeader(event, "Content-Type")) {
+ setResponseHeader(event, "Content-Type", asset.type);
+ }
+ if (asset.etag && !getResponseHeader(event, "ETag")) {
+ setResponseHeader(event, "ETag", asset.etag);
+ }
+ if (asset.mtime && !getResponseHeader(event, "Last-Modified")) {
+ setResponseHeader(event, "Last-Modified", mtimeDate.toUTCString());
+ }
+ if (asset.encoding && !getResponseHeader(event, "Content-Encoding")) {
+ setResponseHeader(event, "Content-Encoding", asset.encoding);
+ }
+ if (asset.size > 0 && !getResponseHeader(event, "Content-Length")) {
+ setResponseHeader(event, "Content-Length", asset.size);
+ }
+ return readAsset(id);
+});
+
+const _lazy_cLgNnx = () => import('../handlers/renderer.mjs');
+
+const handlers = [
+ { route: '', handler: _f4b49z, lazy: false, middleware: true, method: undefined },
+ { route: '/__nuxt_error', handler: _lazy_cLgNnx, lazy: true, middleware: false, method: undefined },
+ { route: '/**', handler: _lazy_cLgNnx, lazy: true, middleware: false, method: undefined }
+];
+
+function createNitroApp() {
+ const config = useRuntimeConfig();
+ const hooks = createHooks();
+ const captureError = (error, context = {}) => {
+ const promise = hooks.callHookParallel("error", error, context).catch((_err) => {
+ console.error("Error while capturing another error", _err);
+ });
+ if (context.event && isEvent(context.event)) {
+ const errors = context.event.context.nitro?.errors;
+ if (errors) {
+ errors.push({ error, context });
+ }
+ if (context.event.waitUntil) {
+ context.event.waitUntil(promise);
+ }
+ }
+ };
+ const h3App = createApp({
+ debug: destr(false),
+ onError: (error, event) => {
+ captureError(error, { event, tags: ["request"] });
+ return errorHandler(error, event);
+ },
+ onRequest: async (event) => {
+ await nitroApp.hooks.callHook("request", event).catch((error) => {
+ captureError(error, { event, tags: ["request"] });
+ });
+ },
+ onBeforeResponse: async (event, response) => {
+ await nitroApp.hooks.callHook("beforeResponse", event, response).catch((error) => {
+ captureError(error, { event, tags: ["request", "response"] });
+ });
+ },
+ onAfterResponse: async (event, response) => {
+ await nitroApp.hooks.callHook("afterResponse", event, response).catch((error) => {
+ captureError(error, { event, tags: ["request", "response"] });
+ });
+ }
+ });
+ const router = createRouter({
+ preemptive: true
+ });
+ const localCall = createCall(toNodeListener(h3App));
+ const _localFetch = createFetch(localCall, globalThis.fetch);
+ const localFetch = (input, init) => _localFetch(input, init).then(
+ (response) => normalizeFetchResponse(response)
+ );
+ const $fetch = createFetch$1({
+ fetch: localFetch,
+ Headers: Headers$1,
+ defaults: { baseURL: config.app.baseURL }
+ });
+ globalThis.$fetch = $fetch;
+ h3App.use(createRouteRulesHandler({ localFetch }));
+ h3App.use(
+ eventHandler((event) => {
+ event.context.nitro = event.context.nitro || { errors: [] };
+ const envContext = event.node.req?.__unenv__;
+ if (envContext) {
+ Object.assign(event.context, envContext);
+ }
+ event.fetch = (req, init) => fetchWithEvent(event, req, init, { fetch: localFetch });
+ event.$fetch = (req, init) => fetchWithEvent(event, req, init, {
+ fetch: $fetch
+ });
+ event.waitUntil = (promise) => {
+ if (!event.context.nitro._waitUntilPromises) {
+ event.context.nitro._waitUntilPromises = [];
+ }
+ event.context.nitro._waitUntilPromises.push(promise);
+ if (envContext?.waitUntil) {
+ envContext.waitUntil(promise);
+ }
+ };
+ event.captureError = (error, context) => {
+ captureError(error, { event, ...context });
+ };
+ })
+ );
+ for (const h of handlers) {
+ let handler = h.lazy ? lazyEventHandler(h.handler) : h.handler;
+ if (h.middleware || !h.route) {
+ const middlewareBase = (config.app.baseURL + (h.route || "/")).replace(
+ /\/+/g,
+ "/"
+ );
+ h3App.use(middlewareBase, handler);
+ } else {
+ const routeRules = getRouteRulesForPath(
+ h.route.replace(/:\w+|\*\*/g, "_")
+ );
+ if (routeRules.cache) {
+ handler = cachedEventHandler(handler, {
+ group: "nitro/routes",
+ ...routeRules.cache
+ });
+ }
+ router.use(h.route, handler, h.method);
+ }
+ }
+ h3App.use(config.app.baseURL, router.handler);
+ const app = {
+ hooks,
+ h3App,
+ router,
+ localCall,
+ localFetch,
+ captureError
+ };
+ for (const plugin of plugins) {
+ try {
+ plugin(app);
+ } catch (err) {
+ captureError(err, { tags: ["plugin"] });
+ throw err;
+ }
+ }
+ return app;
+}
+const nitroApp = createNitroApp();
+const useNitroApp = () => nitroApp;
+
+const debug = (...args) => {
+};
+function GracefulShutdown(server, opts) {
+ opts = opts || {};
+ const options = Object.assign(
+ {
+ signals: "SIGINT SIGTERM",
+ timeout: 3e4,
+ development: false,
+ forceExit: true,
+ onShutdown: (signal) => Promise.resolve(signal),
+ preShutdown: (signal) => Promise.resolve(signal)
+ },
+ opts
+ );
+ let isShuttingDown = false;
+ const connections = {};
+ let connectionCounter = 0;
+ const secureConnections = {};
+ let secureConnectionCounter = 0;
+ let failed = false;
+ let finalRun = false;
+ function onceFactory() {
+ let called = false;
+ return (emitter, events, callback) => {
+ function call() {
+ if (!called) {
+ called = true;
+ return Reflect.apply(callback, this, arguments);
+ }
+ }
+ for (const e of events) {
+ emitter.on(e, call);
+ }
+ };
+ }
+ const signals = options.signals.split(" ").map((s) => s.trim()).filter((s) => s.length > 0);
+ const once = onceFactory();
+ once(process, signals, (signal) => {
+ shutdown(signal).then(() => {
+ if (options.forceExit) {
+ process.exit(failed ? 1 : 0);
+ }
+ }).catch((err) => {
+ process.exit(1);
+ });
+ });
+ function isFunction(functionToCheck) {
+ const getType = Object.prototype.toString.call(functionToCheck);
+ return /^\[object\s([A-Za-z]+)?Function]$/.test(getType);
+ }
+ function destroy(socket, force = false) {
+ if (socket._isIdle && isShuttingDown || force) {
+ socket.destroy();
+ if (socket.server instanceof http.Server) {
+ delete connections[socket._connectionId];
+ } else {
+ delete secureConnections[socket._connectionId];
+ }
+ }
+ }
+ function destroyAllConnections(force = false) {
+ for (const key of Object.keys(connections)) {
+ const socket = connections[key];
+ const serverResponse = socket._httpMessage;
+ if (serverResponse && !force) {
+ if (!serverResponse.headersSent) {
+ serverResponse.setHeader("connection", "close");
+ }
+ } else {
+ destroy(socket);
+ }
+ }
+ for (const key of Object.keys(secureConnections)) {
+ const socket = secureConnections[key];
+ const serverResponse = socket._httpMessage;
+ if (serverResponse && !force) {
+ if (!serverResponse.headersSent) {
+ serverResponse.setHeader("connection", "close");
+ }
+ } else {
+ destroy(socket);
+ }
+ }
+ }
+ server.on("request", function(req, res) {
+ req.socket._isIdle = false;
+ if (isShuttingDown && !res.headersSent) {
+ res.setHeader("connection", "close");
+ }
+ res.on("finish", function() {
+ req.socket._isIdle = true;
+ destroy(req.socket);
+ });
+ });
+ server.on("connection", function(socket) {
+ if (isShuttingDown) {
+ socket.destroy();
+ } else {
+ const id = connectionCounter++;
+ socket._isIdle = true;
+ socket._connectionId = id;
+ connections[id] = socket;
+ socket.once("close", () => {
+ delete connections[socket._connectionId];
+ });
+ }
+ });
+ server.on("secureConnection", (socket) => {
+ if (isShuttingDown) {
+ socket.destroy();
+ } else {
+ const id = secureConnectionCounter++;
+ socket._isIdle = true;
+ socket._connectionId = id;
+ secureConnections[id] = socket;
+ socket.once("close", () => {
+ delete secureConnections[socket._connectionId];
+ });
+ }
+ });
+ process.on("close", function() {
+ });
+ function shutdown(sig) {
+ function cleanupHttp() {
+ destroyAllConnections();
+ return new Promise((resolve, reject) => {
+ server.close((err) => {
+ if (err) {
+ return reject(err);
+ }
+ return resolve(true);
+ });
+ });
+ }
+ if (options.development) {
+ return process.exit(0);
+ }
+ function finalHandler() {
+ if (!finalRun) {
+ finalRun = true;
+ if (options.finally && isFunction(options.finally)) {
+ options.finally();
+ }
+ }
+ return Promise.resolve();
+ }
+ function waitForReadyToShutDown(totalNumInterval) {
+ if (totalNumInterval === 0) {
+ debug(
+ `Could not close connections in time (${options.timeout}ms), will forcefully shut down`
+ );
+ return Promise.resolve(true);
+ }
+ const allConnectionsClosed = Object.keys(connections).length === 0 && Object.keys(secureConnections).length === 0;
+ if (allConnectionsClosed) {
+ return Promise.resolve(false);
+ }
+ return new Promise((resolve) => {
+ setTimeout(() => {
+ resolve(waitForReadyToShutDown(totalNumInterval - 1));
+ }, 250);
+ });
+ }
+ if (isShuttingDown) {
+ return Promise.resolve();
+ }
+ return options.preShutdown(sig).then(() => {
+ isShuttingDown = true;
+ cleanupHttp();
+ }).then(() => {
+ const pollIterations = options.timeout ? Math.round(options.timeout / 250) : 0;
+ return waitForReadyToShutDown(pollIterations);
+ }).then((force) => {
+ if (force) {
+ destroyAllConnections(force);
+ }
+ return options.onShutdown(sig);
+ }).then(finalHandler).catch((err) => {
+ const errString = typeof err === "string" ? err : JSON.stringify(err);
+ failed = true;
+ throw errString;
+ });
+ }
+ function shutdownManual() {
+ return shutdown("manual");
+ }
+ return shutdownManual;
+}
+
+function getGracefulShutdownConfig() {
+ return {
+ disabled: !!process.env.NITRO_SHUTDOWN_DISABLED,
+ signals: (process.env.NITRO_SHUTDOWN_SIGNALS || "SIGTERM SIGINT").split(" ").map((s) => s.trim()),
+ timeout: Number.parseInt(process.env.NITRO_SHUTDOWN_TIMEOUT, 10) || 3e4,
+ forceExit: !process.env.NITRO_SHUTDOWN_NO_FORCE_EXIT
+ };
+}
+function setupGracefulShutdown(listener, nitroApp) {
+ const shutdownConfig = getGracefulShutdownConfig();
+ if (shutdownConfig.disabled) {
+ return;
+ }
+ GracefulShutdown(listener, {
+ signals: shutdownConfig.signals.join(" "),
+ timeout: shutdownConfig.timeout,
+ forceExit: shutdownConfig.forceExit,
+ onShutdown: async () => {
+ await new Promise((resolve) => {
+ const timeout = setTimeout(() => {
+ console.warn("Graceful shutdown timeout, force exiting...");
+ resolve();
+ }, shutdownConfig.timeout);
+ nitroApp.hooks.callHook("close").catch((err) => {
+ console.error(err);
+ }).finally(() => {
+ clearTimeout(timeout);
+ resolve();
+ });
+ });
+ }
+ });
+}
+
+const cert = process.env.NITRO_SSL_CERT;
+const key = process.env.NITRO_SSL_KEY;
+const server = cert && key ? new Server({ key, cert }, toNodeListener(nitroApp.h3App)) : new Server$1(toNodeListener(nitroApp.h3App));
+const port = destr(process.env.NITRO_PORT || process.env.PORT) || 3e3;
+const host = process.env.NITRO_HOST || process.env.HOST;
+const path = process.env.NITRO_UNIX_SOCKET;
+const listener = server.listen(path ? { path } : { port, host }, (err) => {
+ if (err) {
+ console.error(err);
+ process.exit(1);
+ }
+ const protocol = cert && key ? "https" : "http";
+ const addressInfo = listener.address();
+ if (typeof addressInfo === "string") {
+ console.log(`Listening on unix socket ${addressInfo}`);
+ return;
+ }
+ const baseURL = (useRuntimeConfig().app.baseURL || "").replace(/\/$/, "");
+ const url = `${protocol}://${addressInfo.family === "IPv6" ? `[${addressInfo.address}]` : addressInfo.address}:${addressInfo.port}${baseURL}`;
+ console.log(`Listening on ${url}`);
+});
+trapUnhandledNodeErrors();
+setupGracefulShutdown(listener, nitroApp);
+const nodeServer = {};
+
+export { $fetch as $, send as a, setResponseStatus as b, setResponseHeaders as c, useRuntimeConfig as d, eventHandler as e, getQuery as f, getResponseStatus as g, createError$1 as h, getRouteRules as i, joinURL as j, getResponseStatusText as k, hasProtocol as l, isScriptProtocol as m, sanitizeStatusCode as n, createHooks as o, parseURL as p, isEqual as q, stringifyParsedURL as r, setResponseHeader as s, stringifyQuery as t, useNitroApp as u, parseQuery as v, withQuery as w, withTrailingSlash as x, withoutTrailingSlash as y, nodeServer as z };
+//# sourceMappingURL=node-server.mjs.map
diff --git a/.output/server/chunks/nitro/node-server.mjs.map b/.output/server/chunks/nitro/node-server.mjs.map
new file mode 100644
index 0000000..888b2ec
--- /dev/null
+++ b/.output/server/chunks/nitro/node-server.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"node-server.mjs","sources":["../../../../node_modules/destr/dist/index.mjs","../../../../node_modules/ufo/dist/index.mjs","../../../../node_modules/radix3/dist/index.mjs","../../../../node_modules/defu/dist/defu.mjs","../../../../node_modules/unenv/runtime/_internal/utils.mjs","../../../../node_modules/unenv/runtime/node/events/_events.mjs","../../../../node_modules/unenv/runtime/node/events/index.mjs","../../../../node_modules/unenv/runtime/node/stream/readable.mjs","../../../../node_modules/unenv/runtime/node/stream/writable.mjs","../../../../node_modules/unenv/runtime/node/stream/duplex.mjs","../../../../node_modules/unenv/runtime/node/net/socket.mjs","../../../../node_modules/unenv/runtime/node/http/_request.mjs","../../../../node_modules/unenv/runtime/node/http/_response.mjs","../../../../node_modules/h3/dist/index.mjs","../../../../node_modules/node-fetch-native/dist/native.mjs","../../../../node_modules/ofetch/dist/shared/ofetch.00501375.mjs","../../../../node_modules/ofetch/dist/node.mjs","../../../../node_modules/unenv/runtime/fetch/call.mjs","../../../../node_modules/unenv/runtime/fetch/index.mjs","../../../../node_modules/hookable/dist/index.mjs","../../../../node_modules/scule/dist/index.mjs","../../../../node_modules/klona/dist/index.mjs","../../../../node_modules/nitropack/dist/runtime/config.mjs","../../../../node_modules/ohash/dist/index.mjs","../../../../node_modules/unstorage/dist/shared/unstorage.8581f561.mjs","../../../../node_modules/unstorage/dist/index.mjs","../../../../node_modules/unstorage/drivers/utils/index.mjs","../../../../node_modules/unstorage/drivers/utils/node-fs.mjs","../../../../node_modules/unstorage/drivers/fs-lite.mjs","../../../../node_modules/nitropack/dist/runtime/storage.mjs","../../../../node_modules/nitropack/dist/runtime/cache.mjs","../../../../node_modules/nitropack/dist/runtime/utils.mjs","../../../../node_modules/nitropack/dist/runtime/route-rules.mjs","../../../../node_modules/nuxt/dist/core/runtime/nitro/error.js","../../../../node_modules/pathe/dist/shared/pathe.92c04245.mjs","../../../../node_modules/nitropack/dist/runtime/static.mjs","../../../../node_modules/nitropack/dist/runtime/app.mjs","../../../../node_modules/nitropack/dist/runtime/lib/http-graceful-shutdown.mjs","../../../../node_modules/nitropack/dist/runtime/shutdown.mjs","../../../../node_modules/nitropack/dist/runtime/entries/node-server.mjs"],"sourcesContent":null,"names":["getQuery","createRouter","EventEmitter","_EventEmitter","createError","nullBodyResponses","createFetch","nodeFetch","Headers","Headers$1","AbortController$1","_inlineAppConfig","normalizeKey","defineDriver","DRIVER_NAME","dirname","fsPromises","resolve","fsp","createRadixRouter","createLocalFetch","gracefulShutdown","HttpsServer","HttpServer"],"mappings":"","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39]}
\ No newline at end of file
diff --git a/.output/server/chunks/rollup/_virtual_spa-template.mjs b/.output/server/chunks/rollup/_virtual_spa-template.mjs
new file mode 100644
index 0000000..7ade71c
--- /dev/null
+++ b/.output/server/chunks/rollup/_virtual_spa-template.mjs
@@ -0,0 +1,4 @@
+const template = "";
+
+export { template };
+//# sourceMappingURL=_virtual_spa-template.mjs.map
diff --git a/.output/server/chunks/rollup/_virtual_spa-template.mjs.map b/.output/server/chunks/rollup/_virtual_spa-template.mjs.map
new file mode 100644
index 0000000..4ab708b
--- /dev/null
+++ b/.output/server/chunks/rollup/_virtual_spa-template.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"_virtual_spa-template.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":";;;;"}
\ No newline at end of file
diff --git a/.output/server/index.mjs b/.output/server/index.mjs
new file mode 100644
index 0000000..2e7254d
--- /dev/null
+++ b/.output/server/index.mjs
@@ -0,0 +1,8 @@
+globalThis._importMeta_={url:import.meta.url,env:process.env};import 'node:http';
+import 'node:https';
+export { z as default } from './chunks/nitro/node-server.mjs';
+import 'fs';
+import 'path';
+import 'node:fs';
+import 'node:url';
+//# sourceMappingURL=index.mjs.map
diff --git a/.output/server/index.mjs.map b/.output/server/index.mjs.map
new file mode 100644
index 0000000..52e8828
--- /dev/null
+++ b/.output/server/index.mjs.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":";;;;;;"}
\ No newline at end of file
diff --git a/.output/server/package.json b/.output/server/package.json
new file mode 100644
index 0000000..bb29225
--- /dev/null
+++ b/.output/server/package.json
@@ -0,0 +1,40 @@
+{
+ "name": "nuxt-app-prod",
+ "version": "0.0.0",
+ "type": "module",
+ "private": true,
+ "dependencies": {
+ "@babel/parser": "7.23.5",
+ "@unhead/dom": "1.8.8",
+ "@unhead/shared": "1.8.8",
+ "@unhead/ssr": "1.8.8",
+ "@vue/compiler-core": "3.3.9",
+ "@vue/compiler-dom": "3.3.9",
+ "@vue/compiler-ssr": "3.3.9",
+ "@vue/reactivity": "3.3.9",
+ "@vue/runtime-core": "3.3.9",
+ "@vue/runtime-dom": "3.3.9",
+ "@vue/server-renderer": "3.3.9",
+ "@vue/shared": "3.3.9",
+ "asynckit": "0.4.0",
+ "axios": "1.6.2",
+ "combined-stream": "1.0.8",
+ "debug": "4.3.4",
+ "delayed-stream": "1.0.0",
+ "devalue": "4.3.2",
+ "estree-walker": "2.0.2",
+ "follow-redirects": "1.15.3",
+ "form-data": "4.0.0",
+ "hookable": "5.5.3",
+ "mime-db": "1.52.0",
+ "mime-types": "2.1.35",
+ "ms": "2.1.2",
+ "proxy-from-env": "1.1.0",
+ "source-map-js": "1.0.2",
+ "supports-color": "9.4.0",
+ "ufo": "1.3.2",
+ "unhead": "1.8.8",
+ "vue": "3.3.9",
+ "vue-bundle-renderer": "2.0.0"
+ }
+}
\ No newline at end of file
diff --git a/app.vue b/app.vue
index d89b0a8..6b1e3d2 100644
--- a/app.vue
+++ b/app.vue
@@ -142,6 +142,7 @@
转发
+
转发网页版
@@ -170,7 +171,6 @@
共 {{ detailsInfo["answers"] }} 个回答
-
A
@@ -209,6 +209,7 @@

转发
+
转发网页版
@@ -341,7 +342,6 @@
-
@@ -856,7 +856,7 @@ export default {
const getDetails = (uniqid, index, isOpenAnswer) => {
if (detailLoading.value) return
detailLoading.value = true
- uniqid = "fubm5CnD05qj" // 标记一下 8yr1m1fOH5CS
+ // uniqid = "fubm5CnD05qj" // 标记一下 8yr1m1fOH5CS
detailsInfo.value = {}
answerList.value = []
@@ -864,7 +864,10 @@ export default {
$ajax("/api/details", {uniqid})
.then(res => {
- if (res.code != 200) return
+ if (res.code != 200) {
+ type.value = "list"
+ return
+ }
let data = res.data
detailsInfo.value = data["info"] || {}
@@ -2034,6 +2037,7 @@ export default {
}
return {
+ handleInputYou,
openListIAnswer,
isListEmptyState,
cutYourAnswerAnonymous,
diff --git a/index.css b/index.css
index 05d6e67..090a63f 100644
--- a/index.css
+++ b/index.css
@@ -992,6 +992,15 @@ body::-webkit-scrollbar {
padding: 40px 35px 42px;
z-index: 3;
}
+#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .cross-icon {
+ width: 22px;
+ height: 22px;
+ position: absolute;
+ top: 6px;
+ right: 6px;
+ cursor: pointer;
+ padding: 6px;
+}
#answer-app .main .details-area-box .details-box .operate-box .operate-list .operate-item.operate-transmit .transmit-box .transmit-title {
font-weight: 650;
font-size: 16px;
diff --git a/index.less b/index.less
index 019a387..ff8eef7 100644
--- a/index.less
+++ b/index.less
@@ -1239,16 +1239,8 @@ body {
z-index: 10;
}
- // .transmit-box {
- // display: flex;
-
- // }
- // }
-
.transmit-box {
- // display: none;
width: 628px;
- // height: 300px;
border: 1px solid rgba(235, 235, 235, 1);
border-radius: 10px;
-moz-box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.117647058823529);
@@ -1263,6 +1255,16 @@ body {
padding: 40px 35px 42px;
z-index: 3;
+ .cross-icon {
+ width: 22px;
+ height: 22px;
+ position: absolute;
+ top: 6px;
+ right: 6px;
+ cursor: pointer;
+ padding: 6px;
+ }
+
.transmit-title {
font-weight: 650;
font-size: 16px;