coding-tool-x 3.6.4 → 3.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/web/assets/{Analytics-BTmqXkR-.js → Analytics-CcGKjDkP.js} +1 -1
  2. package/dist/web/assets/{ConfigTemplates-z3w0kyNl.js → ConfigTemplates-DPOa1w5D.js} +1 -1
  3. package/dist/web/assets/{Home-DU-NVre0.js → Home-BP1LxGtp.js} +1 -1
  4. package/dist/web/assets/{PluginManager-44r9LaWV.js → PluginManager-BVbHUdey.js} +1 -1
  5. package/dist/web/assets/{ProjectList-DW_MEKRy.js → ProjectList-BQrz2FKo.js} +1 -1
  6. package/dist/web/assets/SessionList-CRGer64T.js +1 -0
  7. package/dist/web/assets/{SkillManager-DnzRfF_o.js → SkillManager-BhJKtWYM.js} +1 -1
  8. package/dist/web/assets/{WorkspaceManager-BuRpVJRU.js → WorkspaceManager-pc6tpF3m.js} +1 -1
  9. package/dist/web/assets/{icons-U50_Cfbe.js → icons-QFXzEgqM.js} +1 -1
  10. package/dist/web/assets/index-0isNzXNY.css +1 -0
  11. package/dist/web/assets/index-BsdIJwLf.js +2 -0
  12. package/dist/web/assets/{naive-ui-Cjh6GLto.js → naive-ui-DM897mIP.js} +1 -1
  13. package/dist/web/assets/{vendors--KP7Ux0s.js → vendors-DQA4Hw9v.js} +1 -1
  14. package/dist/web/assets/{vue-vendor-C5aMkRmm.js → vue-vendor-B5RqjEjQ.js} +1 -1
  15. package/dist/web/index.html +6 -6
  16. package/package.json +1 -1
  17. package/src/commands/daemon.js +13 -4
  18. package/src/config/paths.js +1 -0
  19. package/src/server/api/channels.js +4 -2
  20. package/src/server/api/codex-channels.js +3 -1
  21. package/src/server/api/codex-sessions.js +24 -1
  22. package/src/server/api/gemini-channels.js +4 -2
  23. package/src/server/api/opencode-channels.js +4 -2
  24. package/src/server/services/channel-balance.js +172 -14
  25. package/src/server/services/gemini-channels.js +8 -0
  26. package/src/server/services/opencode-channels.js +6 -0
  27. package/dist/web/assets/SessionList-B8upyqsp.js +0 -1
  28. package/dist/web/assets/index-BkLQex1R.css +0 -1
  29. package/dist/web/assets/index-gIbIMdSO.js +0 -2
@@ -1,4 +1,4 @@
1
- import{g as t,a as e,c as n}from"./markdown-BNJfEgCA.js";import{S as r}from"./vue-vendor-C5aMkRmm.js";function o(t,e){return function(){return t.apply(e,arguments)}}const{toString:i}=Object.prototype,{getPrototypeOf:a}=Object,{iterator:s,toStringTag:c}=Symbol,l=(t=>e=>{const n=i.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),u=t=>(t=t.toLowerCase(),e=>l(e)===t),f=t=>e=>typeof e===t,{isArray:d}=Array,p=f("undefined");function h(t){return null!==t&&!p(t)&&null!==t.constructor&&!p(t.constructor)&&v(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const g=u("ArrayBuffer");const m=f("string"),v=f("function"),b=f("number"),y=t=>null!==t&&"object"==typeof t,w=t=>{if("object"!==l(t))return!1;const e=a(t);return!(null!==e&&e!==Object.prototype&&null!==Object.getPrototypeOf(e)||c in t||s in t)},E=u("Date"),S=u("File"),x=u("Blob"),O=u("FileList");const _="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},T=void 0!==_.FormData?_.FormData:void 0,A=u("URLSearchParams"),[C,D,R,P]=["ReadableStream","Request","Response","Headers"].map(u);function j(t,e,{allOwnKeys:n=!1}={}){if(null==t)return;let r,o;if("object"!=typeof t&&(t=[t]),d(t))for(r=0,o=t.length;r<o;r++)e.call(null,t[r],r,t);else{if(h(t))return;const o=n?Object.getOwnPropertyNames(t):Object.keys(t),i=o.length;let a;for(r=0;r<i;r++)a=o[r],e.call(null,t[a],a,t)}}function N(t,e){if(h(t))return null;e=e.toLowerCase();const n=Object.keys(t);let r,o=n.length;for(;o-- >0;)if(r=n[o],e===r.toLowerCase())return r;return null}const I="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,M=t=>!p(t)&&t!==I;const k=(t=>e=>t&&e instanceof t)("undefined"!=typeof Uint8Array&&a(Uint8Array)),L=u("HTMLFormElement"),F=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),U=u("RegExp"),B=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),r={};j(n,(n,o)=>{let i;!1!==(i=e(n,o,t))&&(r[o]=i||n)}),Object.defineProperties(t,r)};const q=u("AsyncFunction"),$=(H="function"==typeof setImmediate,X=v(I.postMessage),H?setImmediate:X?(V=`axios@${Math.random()}`,W=[],I.addEventListener("message",({source:t,data:e})=>{t===I&&e===V&&W.length&&W.shift()()},!1),t=>{W.push(t),I.postMessage(V,"*")}):t=>setTimeout(t));var H,X,V,W;const z="undefined"!=typeof queueMicrotask?queueMicrotask.bind(I):"undefined"!=typeof process&&process.nextTick||$,K={isArray:d,isArrayBuffer:g,isBuffer:h,isFormData:t=>{let e;return t&&(T&&t instanceof T||v(t.append)&&("formdata"===(e=l(t))||"object"===e&&v(t.toString)&&"[object FormData]"===t.toString()))},isArrayBufferView:function(t){let e;return e="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&g(t.buffer),e},isString:m,isNumber:b,isBoolean:t=>!0===t||!1===t,isObject:y,isPlainObject:w,isEmptyObject:t=>{if(!y(t)||h(t))return!1;try{return 0===Object.keys(t).length&&Object.getPrototypeOf(t)===Object.prototype}catch(e){return!1}},isReadableStream:C,isRequest:D,isResponse:R,isHeaders:P,isUndefined:p,isDate:E,isFile:S,isReactNativeBlob:t=>!(!t||void 0===t.uri),isReactNative:t=>t&&void 0!==t.getParts,isBlob:x,isRegExp:U,isFunction:v,isStream:t=>y(t)&&v(t.pipe),isURLSearchParams:A,isTypedArray:k,isFileList:O,forEach:j,merge:function t(){const{caseless:e,skipUndefined:n}=M(this)&&this||{},r={},o=(o,i)=>{if("__proto__"===i||"constructor"===i||"prototype"===i)return;const a=e&&N(r,i)||i;w(r[a])&&w(o)?r[a]=t(r[a],o):w(o)?r[a]=t({},o):d(o)?r[a]=o.slice():n&&p(o)||(r[a]=o)};for(let i=0,a=arguments.length;i<a;i++)arguments[i]&&j(arguments[i],o);return r},extend:(t,e,n,{allOwnKeys:r}={})=>(j(e,(e,r)=>{n&&v(e)?Object.defineProperty(t,r,{value:o(e,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(t,r,{value:e,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),t),trim:t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:t=>(65279===t.charCodeAt(0)&&(t=t.slice(1)),t),inherits:(t,e,n,r)=>{t.prototype=Object.create(e.prototype,r),Object.defineProperty(t.prototype,"constructor",{value:t,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},toFlatObject:(t,e,n,r)=>{let o,i,s;const c={};if(e=e||{},null==t)return e;do{for(o=Object.getOwnPropertyNames(t),i=o.length;i-- >0;)s=o[i],r&&!r(s,t,e)||c[s]||(e[s]=t[s],c[s]=!0);t=!1!==n&&a(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},kindOf:l,kindOfTest:u,endsWith:(t,e,n)=>{t=String(t),(void 0===n||n>t.length)&&(n=t.length),n-=e.length;const r=t.indexOf(e,n);return-1!==r&&r===n},toArray:t=>{if(!t)return null;if(d(t))return t;let e=t.length;if(!b(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},forEachEntry:(t,e)=>{const n=(t&&t[s]).call(t);let r;for(;(r=n.next())&&!r.done;){const n=r.value;e.call(t,n[0],n[1])}},matchAll:(t,e)=>{let n;const r=[];for(;null!==(n=t.exec(e));)r.push(n);return r},isHTMLForm:L,hasOwnProperty:F,hasOwnProp:F,reduceDescriptors:B,freezeMethods:t=>{B(t,(e,n)=>{if(v(t)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=t[n];v(r)&&(e.enumerable=!1,"writable"in e?e.writable=!1:e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))})},toObjectSet:(t,e)=>{const n={},r=t=>{t.forEach(t=>{n[t]=!0})};return d(t)?r(t):r(String(t).split(e)),n},toCamelCase:t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,e,n){return e.toUpperCase()+n}),noop:()=>{},toFiniteNumber:(t,e)=>null!=t&&Number.isFinite(t=+t)?t:e,findKey:N,global:I,isContextDefined:M,isSpecCompliantForm:function(t){return!!(t&&v(t.append)&&"FormData"===t[c]&&t[s])},toJSONObject:t=>{const e=new Array(10),n=(t,r)=>{if(y(t)){if(e.indexOf(t)>=0)return;if(h(t))return t;if(!("toJSON"in t)){e[r]=t;const o=d(t)?[]:{};return j(t,(t,e)=>{const i=n(t,r+1);!p(i)&&(o[e]=i)}),e[r]=void 0,o}}return t};return n(t,0)},isAsyncFn:q,isThenable:t=>t&&(y(t)||v(t))&&v(t.then)&&v(t.catch),setImmediate:$,asap:z,isIterable:t=>null!=t&&v(t[s])};let Y=class t extends Error{static from(e,n,r,o,i,a){const s=new t(e.message,n||e.code,r,o,i);return s.cause=e,s.name=e.name,null!=e.status&&null==s.status&&(s.status=e.status),a&&Object.assign(s,a),s}constructor(t,e,n,r,o){super(t),Object.defineProperty(this,"message",{value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o,this.status=o.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:K.toJSONObject(this.config),code:this.code,status:this.status}}};Y.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",Y.ERR_BAD_OPTION="ERR_BAD_OPTION",Y.ECONNABORTED="ECONNABORTED",Y.ETIMEDOUT="ETIMEDOUT",Y.ERR_NETWORK="ERR_NETWORK",Y.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",Y.ERR_DEPRECATED="ERR_DEPRECATED",Y.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",Y.ERR_BAD_REQUEST="ERR_BAD_REQUEST",Y.ERR_CANCELED="ERR_CANCELED",Y.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",Y.ERR_INVALID_URL="ERR_INVALID_URL";function G(t){return K.isPlainObject(t)||K.isArray(t)}function J(t){return K.endsWith(t,"[]")?t.slice(0,-2):t}function Q(t,e,n){return t?t.concat(e).map(function(t,e){return t=J(t),!n&&e?"["+t+"]":t}).join(n?".":""):e}const Z=K.toFlatObject(K,{},null,function(t){return/^is[A-Z]/.test(t)});function tt(t,e,n){if(!K.isObject(t))throw new TypeError("target must be an object");e=e||new FormData;const r=(n=K.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(t,e){return!K.isUndefined(e[t])})).metaTokens,o=n.visitor||l,i=n.dots,a=n.indexes,s=(n.Blob||"undefined"!=typeof Blob&&Blob)&&K.isSpecCompliantForm(e);if(!K.isFunction(o))throw new TypeError("visitor must be a function");function c(t){if(null===t)return"";if(K.isDate(t))return t.toISOString();if(K.isBoolean(t))return t.toString();if(!s&&K.isBlob(t))throw new Y("Blob is not supported. Use a Buffer instead.");return K.isArrayBuffer(t)||K.isTypedArray(t)?s&&"function"==typeof Blob?new Blob([t]):Buffer.from(t):t}function l(t,n,o){let s=t;if(K.isReactNative(e)&&K.isReactNativeBlob(t))return e.append(Q(o,n,i),c(t)),!1;if(t&&!o&&"object"==typeof t)if(K.endsWith(n,"{}"))n=r?n:n.slice(0,-2),t=JSON.stringify(t);else if(K.isArray(t)&&function(t){return K.isArray(t)&&!t.some(G)}(t)||(K.isFileList(t)||K.endsWith(n,"[]"))&&(s=K.toArray(t)))return n=J(n),s.forEach(function(t,r){!K.isUndefined(t)&&null!==t&&e.append(!0===a?Q([n],r,i):null===a?n:n+"[]",c(t))}),!1;return!!G(t)||(e.append(Q(o,n,i),c(t)),!1)}const u=[],f=Object.assign(Z,{defaultVisitor:l,convertValue:c,isVisitable:G});if(!K.isObject(t))throw new TypeError("data must be an object");return function t(n,r){if(!K.isUndefined(n)){if(-1!==u.indexOf(n))throw Error("Circular reference detected in "+r.join("."));u.push(n),K.forEach(n,function(n,i){!0===(!(K.isUndefined(n)||null===n)&&o.call(e,n,K.isString(i)?i.trim():i,r,f))&&t(n,r?r.concat(i):[i])}),u.pop()}}(t),e}function et(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(t){return e[t]})}function nt(t,e){this._pairs=[],t&&tt(t,this,e)}const rt=nt.prototype;function ot(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function it(t,e,n){if(!e)return t;const r=n&&n.encode||ot,o=K.isFunction(n)?{serialize:n}:n,i=o&&o.serialize;let a;if(a=i?i(e,o):K.isURLSearchParams(e)?e.toString():new nt(e,o).toString(r),a){const e=t.indexOf("#");-1!==e&&(t=t.slice(0,e)),t+=(-1===t.indexOf("?")?"?":"&")+a}return t}rt.append=function(t,e){this._pairs.push([t,e])},rt.toString=function(t){const e=t?function(e){return t.call(this,e,et)}:et;return this._pairs.map(function(t){return e(t[0])+"="+e(t[1])},"").join("&")};class at{constructor(){this.handlers=[]}use(t,e,n){return this.handlers.push({fulfilled:t,rejected:e,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){K.forEach(this.handlers,function(e){null!==e&&t(e)})}}const st={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},ct={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:nt,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},lt="undefined"!=typeof window&&"undefined"!=typeof document,ut="object"==typeof navigator&&navigator||void 0,ft=lt&&(!ut||["ReactNative","NativeScript","NS"].indexOf(ut.product)<0),dt="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,pt=lt&&window.location.href||"http://localhost",ht={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:lt,hasStandardBrowserEnv:ft,hasStandardBrowserWebWorkerEnv:dt,navigator:ut,origin:pt},Symbol.toStringTag,{value:"Module"})),...ct};function gt(t){function e(t,n,r,o){let i=t[o++];if("__proto__"===i)return!0;const a=Number.isFinite(+i),s=o>=t.length;if(i=!i&&K.isArray(r)?r.length:i,s)return K.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!a;r[i]&&K.isObject(r[i])||(r[i]=[]);return e(t,n,r[i],o)&&K.isArray(r[i])&&(r[i]=function(t){const e={},n=Object.keys(t);let r;const o=n.length;let i;for(r=0;r<o;r++)i=n[r],e[i]=t[i];return e}(r[i])),!a}if(K.isFormData(t)&&K.isFunction(t.entries)){const n={};return K.forEachEntry(t,(t,r)=>{e(function(t){return K.matchAll(/\w+|\[(\w*)]/g,t).map(t=>"[]"===t[0]?"":t[1]||t[0])}(t),r,n,0)}),n}return null}const mt={transitional:st,adapter:["xhr","http","fetch"],transformRequest:[function(t,e){const n=e.getContentType()||"",r=n.indexOf("application/json")>-1,o=K.isObject(t);o&&K.isHTMLForm(t)&&(t=new FormData(t));if(K.isFormData(t))return r?JSON.stringify(gt(t)):t;if(K.isArrayBuffer(t)||K.isBuffer(t)||K.isStream(t)||K.isFile(t)||K.isBlob(t)||K.isReadableStream(t))return t;if(K.isArrayBufferView(t))return t.buffer;if(K.isURLSearchParams(t))return e.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let i;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(t,e){return tt(t,new ht.classes.URLSearchParams,{visitor:function(t,e,n,r){return ht.isNode&&K.isBuffer(t)?(this.append(e,t.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)},...e})}(t,this.formSerializer).toString();if((i=K.isFileList(t))||n.indexOf("multipart/form-data")>-1){const e=this.env&&this.env.FormData;return tt(i?{"files[]":t}:t,e&&new e,this.formSerializer)}}return o||r?(e.setContentType("application/json",!1),function(t,e,n){if(K.isString(t))try{return(e||JSON.parse)(t),K.trim(t)}catch(r){if("SyntaxError"!==r.name)throw r}return(n||JSON.stringify)(t)}(t)):t}],transformResponse:[function(t){const e=this.transitional||mt.transitional,n=e&&e.forcedJSONParsing,r="json"===this.responseType;if(K.isResponse(t)||K.isReadableStream(t))return t;if(t&&K.isString(t)&&(n&&!this.responseType||r)){const n=!(e&&e.silentJSONParsing)&&r;try{return JSON.parse(t,this.parseReviver)}catch(o){if(n){if("SyntaxError"===o.name)throw Y.from(o,Y.ERR_BAD_RESPONSE,this,null,this.response);throw o}}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ht.classes.FormData,Blob:ht.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};K.forEach(["delete","get","head","post","put","patch"],t=>{mt.headers[t]={}});const vt=K.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),bt=Symbol("internals");function yt(t){return t&&String(t).trim().toLowerCase()}function wt(t){return!1===t||null==t?t:K.isArray(t)?t.map(wt):String(t)}function Et(t,e,n,r,o){return K.isFunction(r)?r.call(this,e,n):(o&&(e=n),K.isString(e)?K.isString(r)?-1!==e.indexOf(r):K.isRegExp(r)?r.test(e):void 0:void 0)}let St=class{constructor(t){t&&this.set(t)}set(t,e,n){const r=this;function o(t,e,n){const o=yt(e);if(!o)throw new Error("header name must be a non-empty string");const i=K.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||e]=wt(t))}const i=(t,e)=>K.forEach(t,(t,n)=>o(t,n,e));if(K.isPlainObject(t)||t instanceof this.constructor)i(t,e);else if(K.isString(t)&&(t=t.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim()))i((t=>{const e={};let n,r,o;return t&&t.split("\n").forEach(function(t){o=t.indexOf(":"),n=t.substring(0,o).trim().toLowerCase(),r=t.substring(o+1).trim(),!n||e[n]&&vt[n]||("set-cookie"===n?e[n]?e[n].push(r):e[n]=[r]:e[n]=e[n]?e[n]+", "+r:r)}),e})(t),e);else if(K.isObject(t)&&K.isIterable(t)){let n,r,o={};for(const e of t){if(!K.isArray(e))throw TypeError("Object iterator must return a key-value pair");o[r=e[0]]=(n=o[r])?K.isArray(n)?[...n,e[1]]:[n,e[1]]:e[1]}i(o,e)}else null!=t&&o(e,t,n);return this}get(t,e){if(t=yt(t)){const n=K.findKey(this,t);if(n){const t=this[n];if(!e)return t;if(!0===e)return function(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(t);)e[r[1]]=r[2];return e}(t);if(K.isFunction(e))return e.call(this,t,n);if(K.isRegExp(e))return e.exec(t);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,e){if(t=yt(t)){const n=K.findKey(this,t);return!(!n||void 0===this[n]||e&&!Et(0,this[n],n,e))}return!1}delete(t,e){const n=this;let r=!1;function o(t){if(t=yt(t)){const o=K.findKey(n,t);!o||e&&!Et(0,n[o],o,e)||(delete n[o],r=!0)}}return K.isArray(t)?t.forEach(o):o(t),r}clear(t){const e=Object.keys(this);let n=e.length,r=!1;for(;n--;){const o=e[n];t&&!Et(0,this[o],o,t,!0)||(delete this[o],r=!0)}return r}normalize(t){const e=this,n={};return K.forEach(this,(r,o)=>{const i=K.findKey(n,o);if(i)return e[i]=wt(r),void delete e[o];const a=t?function(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,e,n)=>e.toUpperCase()+n)}(o):String(o).trim();a!==o&&delete e[o],e[a]=wt(r),n[a]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const e=Object.create(null);return K.forEach(this,(n,r)=>{null!=n&&!1!==n&&(e[r]=t&&K.isArray(n)?n.join(", "):n)}),e}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,e])=>t+": "+e).join("\n")}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...e){const n=new this(t);return e.forEach(t=>n.set(t)),n}static accessor(t){const e=(this[bt]=this[bt]={accessors:{}}).accessors,n=this.prototype;function r(t){const r=yt(t);e[r]||(!function(t,e){const n=K.toCamelCase(" "+e);["get","set","has"].forEach(r=>{Object.defineProperty(t,r+n,{value:function(t,n,o){return this[r].call(this,e,t,n,o)},configurable:!0})})}(n,t),e[r]=!0)}return K.isArray(t)?t.forEach(r):r(t),this}};function xt(t,e){const n=this||mt,r=e||n,o=St.from(r.headers);let i=r.data;return K.forEach(t,function(t){i=t.call(n,i,o.normalize(),e?e.status:void 0)}),o.normalize(),i}function Ot(t){return!(!t||!t.__CANCEL__)}St.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),K.reduceDescriptors(St.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(t){this[n]=t}}}),K.freezeMethods(St);let _t=class extends Y{constructor(t,e,n){super(null==t?"canceled":t,Y.ERR_CANCELED,e,n),this.name="CanceledError",this.__CANCEL__=!0}};function Tt(t,e,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?e(new Y("Request failed with status code "+n.status,[Y.ERR_BAD_REQUEST,Y.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):t(n)}const At=(t,e,n=3)=>{let r=0;const o=function(t,e){t=t||10;const n=new Array(t),r=new Array(t);let o,i=0,a=0;return e=void 0!==e?e:1e3,function(s){const c=Date.now(),l=r[a];o||(o=c),n[i]=s,r[i]=c;let u=a,f=0;for(;u!==i;)f+=n[u++],u%=t;if(i=(i+1)%t,i===a&&(a=(a+1)%t),c-o<e)return;const d=l&&c-l;return d?Math.round(1e3*f/d):void 0}}(50,250);return function(t,e){let n,r,o=0,i=1e3/e;const a=(e,i=Date.now())=>{o=i,n=null,r&&(clearTimeout(r),r=null),t(...e)};return[(...t)=>{const e=Date.now(),s=e-o;s>=i?a(t,e):(n=t,r||(r=setTimeout(()=>{r=null,a(n)},i-s)))},()=>n&&a(n)]}(n=>{const i=n.loaded,a=n.lengthComputable?n.total:void 0,s=i-r,c=o(s);r=i;t({loaded:i,total:a,progress:a?i/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&i<=a?(a-i)/c:void 0,event:n,lengthComputable:null!=a,[e?"download":"upload"]:!0})},n)},Ct=(t,e)=>{const n=null!=t;return[r=>e[0]({lengthComputable:n,total:t,loaded:r}),e[1]]},Dt=t=>(...e)=>K.asap(()=>t(...e)),Rt=ht.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,ht.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(ht.origin),ht.navigator&&/(msie|trident)/i.test(ht.navigator.userAgent)):()=>!0,Pt=ht.hasStandardBrowserEnv?{write(t,e,n,r,o,i,a){if("undefined"==typeof document)return;const s=[`${t}=${encodeURIComponent(e)}`];K.isNumber(n)&&s.push(`expires=${new Date(n).toUTCString()}`),K.isString(r)&&s.push(`path=${r}`),K.isString(o)&&s.push(`domain=${o}`),!0===i&&s.push("secure"),K.isString(a)&&s.push(`SameSite=${a}`),document.cookie=s.join("; ")},read(t){if("undefined"==typeof document)return null;const e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read:()=>null,remove(){}};function jt(t,e,n){let r=!("string"==typeof(o=e)&&/^([a-z][a-z\d+\-.]*:)?\/\//i.test(o));var o;return t&&(r||0==n)?function(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}(t,e):e}const Nt=t=>t instanceof St?{...t}:t;function It(t,e){e=e||{};const n={};function r(t,e,n,r){return K.isPlainObject(t)&&K.isPlainObject(e)?K.merge.call({caseless:r},t,e):K.isPlainObject(e)?K.merge({},e):K.isArray(e)?e.slice():e}function o(t,e,n,o){return K.isUndefined(e)?K.isUndefined(t)?void 0:r(void 0,t,0,o):r(t,e,0,o)}function i(t,e){if(!K.isUndefined(e))return r(void 0,e)}function a(t,e){return K.isUndefined(e)?K.isUndefined(t)?void 0:r(void 0,t):r(void 0,e)}function s(n,o,i){return i in e?r(n,o):i in t?r(void 0,n):void 0}const c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(t,e,n)=>o(Nt(t),Nt(e),0,!0)};return K.forEach(Object.keys({...t,...e}),function(r){if("__proto__"===r||"constructor"===r||"prototype"===r)return;const i=K.hasOwnProp(c,r)?c[r]:o,a=i(t[r],e[r],r);K.isUndefined(a)&&i!==s||(n[r]=a)}),n}const Mt=t=>{const e=It({},t);let{data:n,withXSRFToken:r,xsrfHeaderName:o,xsrfCookieName:i,headers:a,auth:s}=e;if(e.headers=a=St.from(a),e.url=it(jt(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),s&&a.set("Authorization","Basic "+btoa((s.username||"")+":"+(s.password?unescape(encodeURIComponent(s.password)):""))),K.isFormData(n))if(ht.hasStandardBrowserEnv||ht.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(K.isFunction(n.getHeaders)){const t=n.getHeaders(),e=["content-type","content-length"];Object.entries(t).forEach(([t,n])=>{e.includes(t.toLowerCase())&&a.set(t,n)})}if(ht.hasStandardBrowserEnv&&(r&&K.isFunction(r)&&(r=r(e)),r||!1!==r&&Rt(e.url))){const t=o&&i&&Pt.read(i);t&&a.set(o,t)}return e},kt="undefined"!=typeof XMLHttpRequest&&function(t){return new Promise(function(e,n){const r=Mt(t);let o=r.data;const i=St.from(r.headers).normalize();let a,s,c,l,u,{responseType:f,onUploadProgress:d,onDownloadProgress:p}=r;function h(){l&&l(),u&&u(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let g=new XMLHttpRequest;function m(){if(!g)return;const r=St.from("getAllResponseHeaders"in g&&g.getAllResponseHeaders());Tt(function(t){e(t),h()},function(t){n(t),h()},{data:f&&"text"!==f&&"json"!==f?g.response:g.responseText,status:g.status,statusText:g.statusText,headers:r,config:t,request:g}),g=null}g.open(r.method.toUpperCase(),r.url,!0),g.timeout=r.timeout,"onloadend"in g?g.onloadend=m:g.onreadystatechange=function(){g&&4===g.readyState&&(0!==g.status||g.responseURL&&0===g.responseURL.indexOf("file:"))&&setTimeout(m)},g.onabort=function(){g&&(n(new Y("Request aborted",Y.ECONNABORTED,t,g)),g=null)},g.onerror=function(e){const r=e&&e.message?e.message:"Network Error",o=new Y(r,Y.ERR_NETWORK,t,g);o.event=e||null,n(o),g=null},g.ontimeout=function(){let e=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const o=r.transitional||st;r.timeoutErrorMessage&&(e=r.timeoutErrorMessage),n(new Y(e,o.clarifyTimeoutError?Y.ETIMEDOUT:Y.ECONNABORTED,t,g)),g=null},void 0===o&&i.setContentType(null),"setRequestHeader"in g&&K.forEach(i.toJSON(),function(t,e){g.setRequestHeader(e,t)}),K.isUndefined(r.withCredentials)||(g.withCredentials=!!r.withCredentials),f&&"json"!==f&&(g.responseType=r.responseType),p&&([c,u]=At(p,!0),g.addEventListener("progress",c)),d&&g.upload&&([s,l]=At(d),g.upload.addEventListener("progress",s),g.upload.addEventListener("loadend",l)),(r.cancelToken||r.signal)&&(a=e=>{g&&(n(!e||e.type?new _t(null,t,g):e),g.abort(),g=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const v=function(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}(r.url);v&&-1===ht.protocols.indexOf(v)?n(new Y("Unsupported protocol "+v+":",Y.ERR_BAD_REQUEST,t)):g.send(o||null)})},Lt=(t,e)=>{const{length:n}=t=t?t.filter(Boolean):[];if(e||n){let n,r=new AbortController;const o=function(t){if(!n){n=!0,a();const e=t instanceof Error?t:this.reason;r.abort(e instanceof Y?e:new _t(e instanceof Error?e.message:e))}};let i=e&&setTimeout(()=>{i=null,o(new Y(`timeout of ${e}ms exceeded`,Y.ETIMEDOUT))},e);const a=()=>{t&&(i&&clearTimeout(i),i=null,t.forEach(t=>{t.unsubscribe?t.unsubscribe(o):t.removeEventListener("abort",o)}),t=null)};t.forEach(t=>t.addEventListener("abort",o));const{signal:s}=r;return s.unsubscribe=()=>K.asap(a),s}},Ft=function*(t,e){let n=t.byteLength;if(n<e)return void(yield t);let r,o=0;for(;o<n;)r=o+e,yield t.slice(o,r),o=r},Ut=async function*(t){if(t[Symbol.asyncIterator])return void(yield*t);const e=t.getReader();try{for(;;){const{done:t,value:n}=await e.read();if(t)break;yield n}}finally{await e.cancel()}},Bt=(t,e,n,r)=>{const o=async function*(t,e){for await(const n of Ut(t))yield*Ft(n,e)}(t,e);let i,a=0,s=t=>{i||(i=!0,r&&r(t))};return new ReadableStream({async pull(t){try{const{done:e,value:r}=await o.next();if(e)return s(),void t.close();let i=r.byteLength;if(n){let t=a+=i;n(t)}t.enqueue(new Uint8Array(r))}catch(e){throw s(e),e}},cancel:t=>(s(t),o.return())},{highWaterMark:2})},{isFunction:qt}=K,$t=(({Request:t,Response:e})=>({Request:t,Response:e}))(K.global),{ReadableStream:Ht,TextEncoder:Xt}=K.global,Vt=(t,...e)=>{try{return!!t(...e)}catch(n){return!1}},Wt=t=>{t=K.merge.call({skipUndefined:!0},$t,t);const{fetch:e,Request:n,Response:r}=t,o=e?qt(e):"function"==typeof fetch,i=qt(n),a=qt(r);if(!o)return!1;const s=o&&qt(Ht),c=o&&("function"==typeof Xt?(t=>e=>t.encode(e))(new Xt):async t=>new Uint8Array(await new n(t).arrayBuffer())),l=i&&s&&Vt(()=>{let t=!1;const e=new n(ht.origin,{body:new Ht,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type");return t&&!e}),u=a&&s&&Vt(()=>K.isReadableStream(new r("").body)),f={stream:u&&(t=>t.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!f[t]&&(f[t]=(e,n)=>{let r=e&&e[t];if(r)return r.call(e);throw new Y(`Response type '${t}' is not supported`,Y.ERR_NOT_SUPPORT,n)})});const d=async(t,e)=>{const r=K.toFiniteNumber(t.getContentLength());return null==r?(async t=>{if(null==t)return 0;if(K.isBlob(t))return t.size;if(K.isSpecCompliantForm(t)){const e=new n(ht.origin,{method:"POST",body:t});return(await e.arrayBuffer()).byteLength}return K.isArrayBufferView(t)||K.isArrayBuffer(t)?t.byteLength:(K.isURLSearchParams(t)&&(t+=""),K.isString(t)?(await c(t)).byteLength:void 0)})(e):r};return async t=>{let{url:o,method:a,data:s,signal:c,cancelToken:p,timeout:h,onDownloadProgress:g,onUploadProgress:m,responseType:v,headers:b,withCredentials:y="same-origin",fetchOptions:w}=Mt(t),E=e||fetch;v=v?(v+"").toLowerCase():"text";let S=Lt([c,p&&p.toAbortSignal()],h),x=null;const O=S&&S.unsubscribe&&(()=>{S.unsubscribe()});let _;try{if(m&&l&&"get"!==a&&"head"!==a&&0!==(_=await d(b,s))){let t,e=new n(o,{method:"POST",body:s,duplex:"half"});if(K.isFormData(s)&&(t=e.headers.get("content-type"))&&b.setContentType(t),e.body){const[t,n]=Ct(_,At(Dt(m)));s=Bt(e.body,65536,t,n)}}K.isString(y)||(y=y?"include":"omit");const e=i&&"credentials"in n.prototype,c={...w,signal:S,method:a.toUpperCase(),headers:b.normalize().toJSON(),body:s,duplex:"half",credentials:e?y:void 0};x=i&&new n(o,c);let p=await(i?E(x,w):E(o,c));const h=u&&("stream"===v||"response"===v);if(u&&(g||h&&O)){const t={};["status","statusText","headers"].forEach(e=>{t[e]=p[e]});const e=K.toFiniteNumber(p.headers.get("content-length")),[n,o]=g&&Ct(e,At(Dt(g),!0))||[];p=new r(Bt(p.body,65536,n,()=>{o&&o(),O&&O()}),t)}v=v||"text";let T=await f[K.findKey(f,v)||"text"](p,t);return!h&&O&&O(),await new Promise((e,n)=>{Tt(e,n,{data:T,headers:St.from(p.headers),status:p.status,statusText:p.statusText,config:t,request:x})})}catch(T){if(O&&O(),T&&"TypeError"===T.name&&/Load failed|fetch/i.test(T.message))throw Object.assign(new Y("Network Error",Y.ERR_NETWORK,t,x,T&&T.response),{cause:T.cause||T});throw Y.from(T,T&&T.code,t,x,T&&T.response)}}},zt=new Map,Kt=t=>{let e=t&&t.env||{};const{fetch:n,Request:r,Response:o}=e,i=[r,o,n];let a,s,c=i.length,l=zt;for(;c--;)a=i[c],s=l.get(a),void 0===s&&l.set(a,s=c?new Map:Wt(e)),l=s;return s};Kt();const Yt={http:null,xhr:kt,fetch:{get:Kt}};K.forEach(Yt,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch(n){}Object.defineProperty(t,"adapterName",{value:e})}});const Gt=t=>`- ${t}`,Jt=t=>K.isFunction(t)||null===t||!1===t;const Qt={getAdapter:function(t,e){t=K.isArray(t)?t:[t];const{length:n}=t;let r,o;const i={};for(let a=0;a<n;a++){let n;if(r=t[a],o=r,!Jt(r)&&(o=Yt[(n=String(r)).toLowerCase()],void 0===o))throw new Y(`Unknown adapter '${n}'`);if(o&&(K.isFunction(o)||(o=o.get(e))))break;i[n||"#"+a]=o}if(!o){const t=Object.entries(i).map(([t,e])=>`adapter ${t} `+(!1===e?"is not supported by the environment":"is not available in the build"));let e=n?t.length>1?"since :\n"+t.map(Gt).join("\n"):" "+Gt(t[0]):"as no adapter specified";throw new Y("There is no suitable adapter to dispatch the request "+e,"ERR_NOT_SUPPORT")}return o},adapters:Yt};function Zt(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new _t(null,t)}function te(t){Zt(t),t.headers=St.from(t.headers),t.data=xt.call(t,t.transformRequest),-1!==["post","put","patch"].indexOf(t.method)&&t.headers.setContentType("application/x-www-form-urlencoded",!1);return Qt.getAdapter(t.adapter||mt.adapter,t)(t).then(function(e){return Zt(t),e.data=xt.call(t,t.transformResponse,e),e.headers=St.from(e.headers),e},function(e){return Ot(e)||(Zt(t),e&&e.response&&(e.response.data=xt.call(t,t.transformResponse,e.response),e.response.headers=St.from(e.response.headers))),Promise.reject(e)})}const ee="1.13.6",ne={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{ne[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});const re={};ne.transitional=function(t,e,n){return(r,o,i)=>{if(!1===t)throw new Y(function(t,e){return"[Axios v"+ee+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}(o," has been removed"+(e?" in "+e:"")),Y.ERR_DEPRECATED);return e&&!re[o]&&(re[o]=!0),!t||t(r,o,i)}},ne.spelling=function(t){return(t,e)=>!0};const oe={assertOptions:function(t,e,n){if("object"!=typeof t)throw new Y("options must be an object",Y.ERR_BAD_OPTION_VALUE);const r=Object.keys(t);let o=r.length;for(;o-- >0;){const i=r[o],a=e[i];if(a){const e=t[i],n=void 0===e||a(e,i,t);if(!0!==n)throw new Y("option "+i+" must be "+n,Y.ERR_BAD_OPTION_VALUE);continue}if(!0!==n)throw new Y("Unknown option "+i,Y.ERR_BAD_OPTION)}},validators:ne},ie=oe.validators;let ae=class{constructor(t){this.defaults=t||{},this.interceptors={request:new at,response:new at}}async request(t,e){try{return await this._request(t,e)}catch(n){if(n instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const e=t.stack?t.stack.replace(/^.+\n/,""):"";try{n.stack?e&&!String(n.stack).endsWith(e.replace(/^.+\n.+\n/,""))&&(n.stack+="\n"+e):n.stack=e}catch(r){}}throw n}}_request(t,e){"string"==typeof t?(e=e||{}).url=t:e=t||{},e=It(this.defaults,e);const{transitional:n,paramsSerializer:r,headers:o}=e;void 0!==n&&oe.assertOptions(n,{silentJSONParsing:ie.transitional(ie.boolean),forcedJSONParsing:ie.transitional(ie.boolean),clarifyTimeoutError:ie.transitional(ie.boolean),legacyInterceptorReqResOrdering:ie.transitional(ie.boolean)},!1),null!=r&&(K.isFunction(r)?e.paramsSerializer={serialize:r}:oe.assertOptions(r,{encode:ie.function,serialize:ie.function},!0)),void 0!==e.allowAbsoluteUrls||(void 0!==this.defaults.allowAbsoluteUrls?e.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:e.allowAbsoluteUrls=!0),oe.assertOptions(e,{baseUrl:ie.spelling("baseURL"),withXsrfToken:ie.spelling("withXSRFToken")},!0),e.method=(e.method||this.defaults.method||"get").toLowerCase();let i=o&&K.merge(o.common,o[e.method]);o&&K.forEach(["delete","get","head","post","put","patch","common"],t=>{delete o[t]}),e.headers=St.concat(i,o);const a=[];let s=!0;this.interceptors.request.forEach(function(t){if("function"==typeof t.runWhen&&!1===t.runWhen(e))return;s=s&&t.synchronous;const n=e.transitional||st;n&&n.legacyInterceptorReqResOrdering?a.unshift(t.fulfilled,t.rejected):a.push(t.fulfilled,t.rejected)});const c=[];let l;this.interceptors.response.forEach(function(t){c.push(t.fulfilled,t.rejected)});let u,f=0;if(!s){const t=[te.bind(this),void 0];for(t.unshift(...a),t.push(...c),u=t.length,l=Promise.resolve(e);f<u;)l=l.then(t[f++],t[f++]);return l}u=a.length;let d=e;for(;f<u;){const t=a[f++],e=a[f++];try{d=t(d)}catch(p){e.call(this,p);break}}try{l=te.call(this,d)}catch(p){return Promise.reject(p)}for(f=0,u=c.length;f<u;)l=l.then(c[f++],c[f++]);return l}getUri(t){return it(jt((t=It(this.defaults,t)).baseURL,t.url,t.allowAbsoluteUrls),t.params,t.paramsSerializer)}};K.forEach(["delete","get","head","options"],function(t){ae.prototype[t]=function(e,n){return this.request(It(n||{},{method:t,url:e,data:(n||{}).data}))}}),K.forEach(["post","put","patch"],function(t){function e(e){return function(n,r,o){return this.request(It(o||{},{method:t,headers:e?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}ae.prototype[t]=e(),ae.prototype[t+"Form"]=e(!0)});const se={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,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(se).forEach(([t,e])=>{se[e]=t});const ce=function t(e){const n=new ae(e),r=o(ae.prototype.request,n);return K.extend(r,ae.prototype,n,{allOwnKeys:!0}),K.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return t(It(e,n))},r}(mt);ce.Axios=ae,ce.CanceledError=_t,ce.CancelToken=class t{constructor(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");let e;this.promise=new Promise(function(t){e=t});const n=this;this.promise.then(t=>{if(!n._listeners)return;let e=n._listeners.length;for(;e-- >0;)n._listeners[e](t);n._listeners=null}),this.promise.then=t=>{let e;const r=new Promise(t=>{n.subscribe(t),e=t}).then(t);return r.cancel=function(){n.unsubscribe(e)},r},t(function(t,r,o){n.reason||(n.reason=new _t(t,r,o),e(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){this.reason?t(this.reason):this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const e=this._listeners.indexOf(t);-1!==e&&this._listeners.splice(e,1)}toAbortSignal(){const t=new AbortController,e=e=>{t.abort(e)};return this.subscribe(e),t.signal.unsubscribe=()=>this.unsubscribe(e),t.signal}static source(){let e;return{token:new t(function(t){e=t}),cancel:e}}},ce.isCancel=Ot,ce.VERSION=ee,ce.toFormData=tt,ce.AxiosError=Y,ce.Cancel=ce.CanceledError,ce.all=function(t){return Promise.all(t)},ce.spread=function(t){return function(e){return t.apply(null,e)}},ce.isAxiosError=function(t){return K.isObject(t)&&!0===t.isAxiosError},ce.mergeConfig=It,ce.AxiosHeaders=St,ce.formToJSON=t=>gt(K.isHTMLForm(t)?new FormData(t):t),ce.getAdapter=Qt.getAdapter,ce.HttpStatusCode=se,ce.default=ce;const{Axios:le,AxiosError:ue,CanceledError:fe,isCancel:de,CancelToken:pe,VERSION:he,all:ge,Cancel:me,isAxiosError:ve,spread:be,toFormData:ye,AxiosHeaders:we,HttpStatusCode:Ee,formToJSON:Se,getAdapter:xe,mergeConfig:Oe}=ce;var _e={exports:{}};
1
+ import{g as t,a as e,c as n}from"./markdown-BNJfEgCA.js";import{S as r}from"./vue-vendor-B5RqjEjQ.js";function o(t,e){return function(){return t.apply(e,arguments)}}const{toString:i}=Object.prototype,{getPrototypeOf:a}=Object,{iterator:s,toStringTag:c}=Symbol,l=(t=>e=>{const n=i.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),u=t=>(t=t.toLowerCase(),e=>l(e)===t),f=t=>e=>typeof e===t,{isArray:d}=Array,p=f("undefined");function h(t){return null!==t&&!p(t)&&null!==t.constructor&&!p(t.constructor)&&v(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const g=u("ArrayBuffer");const m=f("string"),v=f("function"),b=f("number"),y=t=>null!==t&&"object"==typeof t,w=t=>{if("object"!==l(t))return!1;const e=a(t);return!(null!==e&&e!==Object.prototype&&null!==Object.getPrototypeOf(e)||c in t||s in t)},E=u("Date"),S=u("File"),x=u("Blob"),O=u("FileList");const _="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},T=void 0!==_.FormData?_.FormData:void 0,A=u("URLSearchParams"),[C,D,R,P]=["ReadableStream","Request","Response","Headers"].map(u);function j(t,e,{allOwnKeys:n=!1}={}){if(null==t)return;let r,o;if("object"!=typeof t&&(t=[t]),d(t))for(r=0,o=t.length;r<o;r++)e.call(null,t[r],r,t);else{if(h(t))return;const o=n?Object.getOwnPropertyNames(t):Object.keys(t),i=o.length;let a;for(r=0;r<i;r++)a=o[r],e.call(null,t[a],a,t)}}function N(t,e){if(h(t))return null;e=e.toLowerCase();const n=Object.keys(t);let r,o=n.length;for(;o-- >0;)if(r=n[o],e===r.toLowerCase())return r;return null}const I="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,M=t=>!p(t)&&t!==I;const k=(t=>e=>t&&e instanceof t)("undefined"!=typeof Uint8Array&&a(Uint8Array)),L=u("HTMLFormElement"),F=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),U=u("RegExp"),B=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),r={};j(n,(n,o)=>{let i;!1!==(i=e(n,o,t))&&(r[o]=i||n)}),Object.defineProperties(t,r)};const q=u("AsyncFunction"),$=(H="function"==typeof setImmediate,X=v(I.postMessage),H?setImmediate:X?(V=`axios@${Math.random()}`,W=[],I.addEventListener("message",({source:t,data:e})=>{t===I&&e===V&&W.length&&W.shift()()},!1),t=>{W.push(t),I.postMessage(V,"*")}):t=>setTimeout(t));var H,X,V,W;const z="undefined"!=typeof queueMicrotask?queueMicrotask.bind(I):"undefined"!=typeof process&&process.nextTick||$,K={isArray:d,isArrayBuffer:g,isBuffer:h,isFormData:t=>{let e;return t&&(T&&t instanceof T||v(t.append)&&("formdata"===(e=l(t))||"object"===e&&v(t.toString)&&"[object FormData]"===t.toString()))},isArrayBufferView:function(t){let e;return e="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&g(t.buffer),e},isString:m,isNumber:b,isBoolean:t=>!0===t||!1===t,isObject:y,isPlainObject:w,isEmptyObject:t=>{if(!y(t)||h(t))return!1;try{return 0===Object.keys(t).length&&Object.getPrototypeOf(t)===Object.prototype}catch(e){return!1}},isReadableStream:C,isRequest:D,isResponse:R,isHeaders:P,isUndefined:p,isDate:E,isFile:S,isReactNativeBlob:t=>!(!t||void 0===t.uri),isReactNative:t=>t&&void 0!==t.getParts,isBlob:x,isRegExp:U,isFunction:v,isStream:t=>y(t)&&v(t.pipe),isURLSearchParams:A,isTypedArray:k,isFileList:O,forEach:j,merge:function t(){const{caseless:e,skipUndefined:n}=M(this)&&this||{},r={},o=(o,i)=>{if("__proto__"===i||"constructor"===i||"prototype"===i)return;const a=e&&N(r,i)||i;w(r[a])&&w(o)?r[a]=t(r[a],o):w(o)?r[a]=t({},o):d(o)?r[a]=o.slice():n&&p(o)||(r[a]=o)};for(let i=0,a=arguments.length;i<a;i++)arguments[i]&&j(arguments[i],o);return r},extend:(t,e,n,{allOwnKeys:r}={})=>(j(e,(e,r)=>{n&&v(e)?Object.defineProperty(t,r,{value:o(e,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(t,r,{value:e,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),t),trim:t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:t=>(65279===t.charCodeAt(0)&&(t=t.slice(1)),t),inherits:(t,e,n,r)=>{t.prototype=Object.create(e.prototype,r),Object.defineProperty(t.prototype,"constructor",{value:t,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},toFlatObject:(t,e,n,r)=>{let o,i,s;const c={};if(e=e||{},null==t)return e;do{for(o=Object.getOwnPropertyNames(t),i=o.length;i-- >0;)s=o[i],r&&!r(s,t,e)||c[s]||(e[s]=t[s],c[s]=!0);t=!1!==n&&a(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},kindOf:l,kindOfTest:u,endsWith:(t,e,n)=>{t=String(t),(void 0===n||n>t.length)&&(n=t.length),n-=e.length;const r=t.indexOf(e,n);return-1!==r&&r===n},toArray:t=>{if(!t)return null;if(d(t))return t;let e=t.length;if(!b(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},forEachEntry:(t,e)=>{const n=(t&&t[s]).call(t);let r;for(;(r=n.next())&&!r.done;){const n=r.value;e.call(t,n[0],n[1])}},matchAll:(t,e)=>{let n;const r=[];for(;null!==(n=t.exec(e));)r.push(n);return r},isHTMLForm:L,hasOwnProperty:F,hasOwnProp:F,reduceDescriptors:B,freezeMethods:t=>{B(t,(e,n)=>{if(v(t)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=t[n];v(r)&&(e.enumerable=!1,"writable"in e?e.writable=!1:e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))})},toObjectSet:(t,e)=>{const n={},r=t=>{t.forEach(t=>{n[t]=!0})};return d(t)?r(t):r(String(t).split(e)),n},toCamelCase:t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,e,n){return e.toUpperCase()+n}),noop:()=>{},toFiniteNumber:(t,e)=>null!=t&&Number.isFinite(t=+t)?t:e,findKey:N,global:I,isContextDefined:M,isSpecCompliantForm:function(t){return!!(t&&v(t.append)&&"FormData"===t[c]&&t[s])},toJSONObject:t=>{const e=new Array(10),n=(t,r)=>{if(y(t)){if(e.indexOf(t)>=0)return;if(h(t))return t;if(!("toJSON"in t)){e[r]=t;const o=d(t)?[]:{};return j(t,(t,e)=>{const i=n(t,r+1);!p(i)&&(o[e]=i)}),e[r]=void 0,o}}return t};return n(t,0)},isAsyncFn:q,isThenable:t=>t&&(y(t)||v(t))&&v(t.then)&&v(t.catch),setImmediate:$,asap:z,isIterable:t=>null!=t&&v(t[s])};let Y=class t extends Error{static from(e,n,r,o,i,a){const s=new t(e.message,n||e.code,r,o,i);return s.cause=e,s.name=e.name,null!=e.status&&null==s.status&&(s.status=e.status),a&&Object.assign(s,a),s}constructor(t,e,n,r,o){super(t),Object.defineProperty(this,"message",{value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o,this.status=o.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:K.toJSONObject(this.config),code:this.code,status:this.status}}};Y.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",Y.ERR_BAD_OPTION="ERR_BAD_OPTION",Y.ECONNABORTED="ECONNABORTED",Y.ETIMEDOUT="ETIMEDOUT",Y.ERR_NETWORK="ERR_NETWORK",Y.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",Y.ERR_DEPRECATED="ERR_DEPRECATED",Y.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",Y.ERR_BAD_REQUEST="ERR_BAD_REQUEST",Y.ERR_CANCELED="ERR_CANCELED",Y.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",Y.ERR_INVALID_URL="ERR_INVALID_URL";function G(t){return K.isPlainObject(t)||K.isArray(t)}function J(t){return K.endsWith(t,"[]")?t.slice(0,-2):t}function Q(t,e,n){return t?t.concat(e).map(function(t,e){return t=J(t),!n&&e?"["+t+"]":t}).join(n?".":""):e}const Z=K.toFlatObject(K,{},null,function(t){return/^is[A-Z]/.test(t)});function tt(t,e,n){if(!K.isObject(t))throw new TypeError("target must be an object");e=e||new FormData;const r=(n=K.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(t,e){return!K.isUndefined(e[t])})).metaTokens,o=n.visitor||l,i=n.dots,a=n.indexes,s=(n.Blob||"undefined"!=typeof Blob&&Blob)&&K.isSpecCompliantForm(e);if(!K.isFunction(o))throw new TypeError("visitor must be a function");function c(t){if(null===t)return"";if(K.isDate(t))return t.toISOString();if(K.isBoolean(t))return t.toString();if(!s&&K.isBlob(t))throw new Y("Blob is not supported. Use a Buffer instead.");return K.isArrayBuffer(t)||K.isTypedArray(t)?s&&"function"==typeof Blob?new Blob([t]):Buffer.from(t):t}function l(t,n,o){let s=t;if(K.isReactNative(e)&&K.isReactNativeBlob(t))return e.append(Q(o,n,i),c(t)),!1;if(t&&!o&&"object"==typeof t)if(K.endsWith(n,"{}"))n=r?n:n.slice(0,-2),t=JSON.stringify(t);else if(K.isArray(t)&&function(t){return K.isArray(t)&&!t.some(G)}(t)||(K.isFileList(t)||K.endsWith(n,"[]"))&&(s=K.toArray(t)))return n=J(n),s.forEach(function(t,r){!K.isUndefined(t)&&null!==t&&e.append(!0===a?Q([n],r,i):null===a?n:n+"[]",c(t))}),!1;return!!G(t)||(e.append(Q(o,n,i),c(t)),!1)}const u=[],f=Object.assign(Z,{defaultVisitor:l,convertValue:c,isVisitable:G});if(!K.isObject(t))throw new TypeError("data must be an object");return function t(n,r){if(!K.isUndefined(n)){if(-1!==u.indexOf(n))throw Error("Circular reference detected in "+r.join("."));u.push(n),K.forEach(n,function(n,i){!0===(!(K.isUndefined(n)||null===n)&&o.call(e,n,K.isString(i)?i.trim():i,r,f))&&t(n,r?r.concat(i):[i])}),u.pop()}}(t),e}function et(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(t){return e[t]})}function nt(t,e){this._pairs=[],t&&tt(t,this,e)}const rt=nt.prototype;function ot(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function it(t,e,n){if(!e)return t;const r=n&&n.encode||ot,o=K.isFunction(n)?{serialize:n}:n,i=o&&o.serialize;let a;if(a=i?i(e,o):K.isURLSearchParams(e)?e.toString():new nt(e,o).toString(r),a){const e=t.indexOf("#");-1!==e&&(t=t.slice(0,e)),t+=(-1===t.indexOf("?")?"?":"&")+a}return t}rt.append=function(t,e){this._pairs.push([t,e])},rt.toString=function(t){const e=t?function(e){return t.call(this,e,et)}:et;return this._pairs.map(function(t){return e(t[0])+"="+e(t[1])},"").join("&")};class at{constructor(){this.handlers=[]}use(t,e,n){return this.handlers.push({fulfilled:t,rejected:e,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){K.forEach(this.handlers,function(e){null!==e&&t(e)})}}const st={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},ct={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:nt,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},lt="undefined"!=typeof window&&"undefined"!=typeof document,ut="object"==typeof navigator&&navigator||void 0,ft=lt&&(!ut||["ReactNative","NativeScript","NS"].indexOf(ut.product)<0),dt="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,pt=lt&&window.location.href||"http://localhost",ht={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:lt,hasStandardBrowserEnv:ft,hasStandardBrowserWebWorkerEnv:dt,navigator:ut,origin:pt},Symbol.toStringTag,{value:"Module"})),...ct};function gt(t){function e(t,n,r,o){let i=t[o++];if("__proto__"===i)return!0;const a=Number.isFinite(+i),s=o>=t.length;if(i=!i&&K.isArray(r)?r.length:i,s)return K.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!a;r[i]&&K.isObject(r[i])||(r[i]=[]);return e(t,n,r[i],o)&&K.isArray(r[i])&&(r[i]=function(t){const e={},n=Object.keys(t);let r;const o=n.length;let i;for(r=0;r<o;r++)i=n[r],e[i]=t[i];return e}(r[i])),!a}if(K.isFormData(t)&&K.isFunction(t.entries)){const n={};return K.forEachEntry(t,(t,r)=>{e(function(t){return K.matchAll(/\w+|\[(\w*)]/g,t).map(t=>"[]"===t[0]?"":t[1]||t[0])}(t),r,n,0)}),n}return null}const mt={transitional:st,adapter:["xhr","http","fetch"],transformRequest:[function(t,e){const n=e.getContentType()||"",r=n.indexOf("application/json")>-1,o=K.isObject(t);o&&K.isHTMLForm(t)&&(t=new FormData(t));if(K.isFormData(t))return r?JSON.stringify(gt(t)):t;if(K.isArrayBuffer(t)||K.isBuffer(t)||K.isStream(t)||K.isFile(t)||K.isBlob(t)||K.isReadableStream(t))return t;if(K.isArrayBufferView(t))return t.buffer;if(K.isURLSearchParams(t))return e.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let i;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(t,e){return tt(t,new ht.classes.URLSearchParams,{visitor:function(t,e,n,r){return ht.isNode&&K.isBuffer(t)?(this.append(e,t.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)},...e})}(t,this.formSerializer).toString();if((i=K.isFileList(t))||n.indexOf("multipart/form-data")>-1){const e=this.env&&this.env.FormData;return tt(i?{"files[]":t}:t,e&&new e,this.formSerializer)}}return o||r?(e.setContentType("application/json",!1),function(t,e,n){if(K.isString(t))try{return(e||JSON.parse)(t),K.trim(t)}catch(r){if("SyntaxError"!==r.name)throw r}return(n||JSON.stringify)(t)}(t)):t}],transformResponse:[function(t){const e=this.transitional||mt.transitional,n=e&&e.forcedJSONParsing,r="json"===this.responseType;if(K.isResponse(t)||K.isReadableStream(t))return t;if(t&&K.isString(t)&&(n&&!this.responseType||r)){const n=!(e&&e.silentJSONParsing)&&r;try{return JSON.parse(t,this.parseReviver)}catch(o){if(n){if("SyntaxError"===o.name)throw Y.from(o,Y.ERR_BAD_RESPONSE,this,null,this.response);throw o}}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ht.classes.FormData,Blob:ht.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};K.forEach(["delete","get","head","post","put","patch"],t=>{mt.headers[t]={}});const vt=K.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),bt=Symbol("internals");function yt(t){return t&&String(t).trim().toLowerCase()}function wt(t){return!1===t||null==t?t:K.isArray(t)?t.map(wt):String(t)}function Et(t,e,n,r,o){return K.isFunction(r)?r.call(this,e,n):(o&&(e=n),K.isString(e)?K.isString(r)?-1!==e.indexOf(r):K.isRegExp(r)?r.test(e):void 0:void 0)}let St=class{constructor(t){t&&this.set(t)}set(t,e,n){const r=this;function o(t,e,n){const o=yt(e);if(!o)throw new Error("header name must be a non-empty string");const i=K.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||e]=wt(t))}const i=(t,e)=>K.forEach(t,(t,n)=>o(t,n,e));if(K.isPlainObject(t)||t instanceof this.constructor)i(t,e);else if(K.isString(t)&&(t=t.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim()))i((t=>{const e={};let n,r,o;return t&&t.split("\n").forEach(function(t){o=t.indexOf(":"),n=t.substring(0,o).trim().toLowerCase(),r=t.substring(o+1).trim(),!n||e[n]&&vt[n]||("set-cookie"===n?e[n]?e[n].push(r):e[n]=[r]:e[n]=e[n]?e[n]+", "+r:r)}),e})(t),e);else if(K.isObject(t)&&K.isIterable(t)){let n,r,o={};for(const e of t){if(!K.isArray(e))throw TypeError("Object iterator must return a key-value pair");o[r=e[0]]=(n=o[r])?K.isArray(n)?[...n,e[1]]:[n,e[1]]:e[1]}i(o,e)}else null!=t&&o(e,t,n);return this}get(t,e){if(t=yt(t)){const n=K.findKey(this,t);if(n){const t=this[n];if(!e)return t;if(!0===e)return function(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(t);)e[r[1]]=r[2];return e}(t);if(K.isFunction(e))return e.call(this,t,n);if(K.isRegExp(e))return e.exec(t);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,e){if(t=yt(t)){const n=K.findKey(this,t);return!(!n||void 0===this[n]||e&&!Et(0,this[n],n,e))}return!1}delete(t,e){const n=this;let r=!1;function o(t){if(t=yt(t)){const o=K.findKey(n,t);!o||e&&!Et(0,n[o],o,e)||(delete n[o],r=!0)}}return K.isArray(t)?t.forEach(o):o(t),r}clear(t){const e=Object.keys(this);let n=e.length,r=!1;for(;n--;){const o=e[n];t&&!Et(0,this[o],o,t,!0)||(delete this[o],r=!0)}return r}normalize(t){const e=this,n={};return K.forEach(this,(r,o)=>{const i=K.findKey(n,o);if(i)return e[i]=wt(r),void delete e[o];const a=t?function(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,e,n)=>e.toUpperCase()+n)}(o):String(o).trim();a!==o&&delete e[o],e[a]=wt(r),n[a]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const e=Object.create(null);return K.forEach(this,(n,r)=>{null!=n&&!1!==n&&(e[r]=t&&K.isArray(n)?n.join(", "):n)}),e}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,e])=>t+": "+e).join("\n")}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...e){const n=new this(t);return e.forEach(t=>n.set(t)),n}static accessor(t){const e=(this[bt]=this[bt]={accessors:{}}).accessors,n=this.prototype;function r(t){const r=yt(t);e[r]||(!function(t,e){const n=K.toCamelCase(" "+e);["get","set","has"].forEach(r=>{Object.defineProperty(t,r+n,{value:function(t,n,o){return this[r].call(this,e,t,n,o)},configurable:!0})})}(n,t),e[r]=!0)}return K.isArray(t)?t.forEach(r):r(t),this}};function xt(t,e){const n=this||mt,r=e||n,o=St.from(r.headers);let i=r.data;return K.forEach(t,function(t){i=t.call(n,i,o.normalize(),e?e.status:void 0)}),o.normalize(),i}function Ot(t){return!(!t||!t.__CANCEL__)}St.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),K.reduceDescriptors(St.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(t){this[n]=t}}}),K.freezeMethods(St);let _t=class extends Y{constructor(t,e,n){super(null==t?"canceled":t,Y.ERR_CANCELED,e,n),this.name="CanceledError",this.__CANCEL__=!0}};function Tt(t,e,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?e(new Y("Request failed with status code "+n.status,[Y.ERR_BAD_REQUEST,Y.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):t(n)}const At=(t,e,n=3)=>{let r=0;const o=function(t,e){t=t||10;const n=new Array(t),r=new Array(t);let o,i=0,a=0;return e=void 0!==e?e:1e3,function(s){const c=Date.now(),l=r[a];o||(o=c),n[i]=s,r[i]=c;let u=a,f=0;for(;u!==i;)f+=n[u++],u%=t;if(i=(i+1)%t,i===a&&(a=(a+1)%t),c-o<e)return;const d=l&&c-l;return d?Math.round(1e3*f/d):void 0}}(50,250);return function(t,e){let n,r,o=0,i=1e3/e;const a=(e,i=Date.now())=>{o=i,n=null,r&&(clearTimeout(r),r=null),t(...e)};return[(...t)=>{const e=Date.now(),s=e-o;s>=i?a(t,e):(n=t,r||(r=setTimeout(()=>{r=null,a(n)},i-s)))},()=>n&&a(n)]}(n=>{const i=n.loaded,a=n.lengthComputable?n.total:void 0,s=i-r,c=o(s);r=i;t({loaded:i,total:a,progress:a?i/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&i<=a?(a-i)/c:void 0,event:n,lengthComputable:null!=a,[e?"download":"upload"]:!0})},n)},Ct=(t,e)=>{const n=null!=t;return[r=>e[0]({lengthComputable:n,total:t,loaded:r}),e[1]]},Dt=t=>(...e)=>K.asap(()=>t(...e)),Rt=ht.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,ht.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(ht.origin),ht.navigator&&/(msie|trident)/i.test(ht.navigator.userAgent)):()=>!0,Pt=ht.hasStandardBrowserEnv?{write(t,e,n,r,o,i,a){if("undefined"==typeof document)return;const s=[`${t}=${encodeURIComponent(e)}`];K.isNumber(n)&&s.push(`expires=${new Date(n).toUTCString()}`),K.isString(r)&&s.push(`path=${r}`),K.isString(o)&&s.push(`domain=${o}`),!0===i&&s.push("secure"),K.isString(a)&&s.push(`SameSite=${a}`),document.cookie=s.join("; ")},read(t){if("undefined"==typeof document)return null;const e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read:()=>null,remove(){}};function jt(t,e,n){let r=!("string"==typeof(o=e)&&/^([a-z][a-z\d+\-.]*:)?\/\//i.test(o));var o;return t&&(r||0==n)?function(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}(t,e):e}const Nt=t=>t instanceof St?{...t}:t;function It(t,e){e=e||{};const n={};function r(t,e,n,r){return K.isPlainObject(t)&&K.isPlainObject(e)?K.merge.call({caseless:r},t,e):K.isPlainObject(e)?K.merge({},e):K.isArray(e)?e.slice():e}function o(t,e,n,o){return K.isUndefined(e)?K.isUndefined(t)?void 0:r(void 0,t,0,o):r(t,e,0,o)}function i(t,e){if(!K.isUndefined(e))return r(void 0,e)}function a(t,e){return K.isUndefined(e)?K.isUndefined(t)?void 0:r(void 0,t):r(void 0,e)}function s(n,o,i){return i in e?r(n,o):i in t?r(void 0,n):void 0}const c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(t,e,n)=>o(Nt(t),Nt(e),0,!0)};return K.forEach(Object.keys({...t,...e}),function(r){if("__proto__"===r||"constructor"===r||"prototype"===r)return;const i=K.hasOwnProp(c,r)?c[r]:o,a=i(t[r],e[r],r);K.isUndefined(a)&&i!==s||(n[r]=a)}),n}const Mt=t=>{const e=It({},t);let{data:n,withXSRFToken:r,xsrfHeaderName:o,xsrfCookieName:i,headers:a,auth:s}=e;if(e.headers=a=St.from(a),e.url=it(jt(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),s&&a.set("Authorization","Basic "+btoa((s.username||"")+":"+(s.password?unescape(encodeURIComponent(s.password)):""))),K.isFormData(n))if(ht.hasStandardBrowserEnv||ht.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(K.isFunction(n.getHeaders)){const t=n.getHeaders(),e=["content-type","content-length"];Object.entries(t).forEach(([t,n])=>{e.includes(t.toLowerCase())&&a.set(t,n)})}if(ht.hasStandardBrowserEnv&&(r&&K.isFunction(r)&&(r=r(e)),r||!1!==r&&Rt(e.url))){const t=o&&i&&Pt.read(i);t&&a.set(o,t)}return e},kt="undefined"!=typeof XMLHttpRequest&&function(t){return new Promise(function(e,n){const r=Mt(t);let o=r.data;const i=St.from(r.headers).normalize();let a,s,c,l,u,{responseType:f,onUploadProgress:d,onDownloadProgress:p}=r;function h(){l&&l(),u&&u(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let g=new XMLHttpRequest;function m(){if(!g)return;const r=St.from("getAllResponseHeaders"in g&&g.getAllResponseHeaders());Tt(function(t){e(t),h()},function(t){n(t),h()},{data:f&&"text"!==f&&"json"!==f?g.response:g.responseText,status:g.status,statusText:g.statusText,headers:r,config:t,request:g}),g=null}g.open(r.method.toUpperCase(),r.url,!0),g.timeout=r.timeout,"onloadend"in g?g.onloadend=m:g.onreadystatechange=function(){g&&4===g.readyState&&(0!==g.status||g.responseURL&&0===g.responseURL.indexOf("file:"))&&setTimeout(m)},g.onabort=function(){g&&(n(new Y("Request aborted",Y.ECONNABORTED,t,g)),g=null)},g.onerror=function(e){const r=e&&e.message?e.message:"Network Error",o=new Y(r,Y.ERR_NETWORK,t,g);o.event=e||null,n(o),g=null},g.ontimeout=function(){let e=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const o=r.transitional||st;r.timeoutErrorMessage&&(e=r.timeoutErrorMessage),n(new Y(e,o.clarifyTimeoutError?Y.ETIMEDOUT:Y.ECONNABORTED,t,g)),g=null},void 0===o&&i.setContentType(null),"setRequestHeader"in g&&K.forEach(i.toJSON(),function(t,e){g.setRequestHeader(e,t)}),K.isUndefined(r.withCredentials)||(g.withCredentials=!!r.withCredentials),f&&"json"!==f&&(g.responseType=r.responseType),p&&([c,u]=At(p,!0),g.addEventListener("progress",c)),d&&g.upload&&([s,l]=At(d),g.upload.addEventListener("progress",s),g.upload.addEventListener("loadend",l)),(r.cancelToken||r.signal)&&(a=e=>{g&&(n(!e||e.type?new _t(null,t,g):e),g.abort(),g=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const v=function(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}(r.url);v&&-1===ht.protocols.indexOf(v)?n(new Y("Unsupported protocol "+v+":",Y.ERR_BAD_REQUEST,t)):g.send(o||null)})},Lt=(t,e)=>{const{length:n}=t=t?t.filter(Boolean):[];if(e||n){let n,r=new AbortController;const o=function(t){if(!n){n=!0,a();const e=t instanceof Error?t:this.reason;r.abort(e instanceof Y?e:new _t(e instanceof Error?e.message:e))}};let i=e&&setTimeout(()=>{i=null,o(new Y(`timeout of ${e}ms exceeded`,Y.ETIMEDOUT))},e);const a=()=>{t&&(i&&clearTimeout(i),i=null,t.forEach(t=>{t.unsubscribe?t.unsubscribe(o):t.removeEventListener("abort",o)}),t=null)};t.forEach(t=>t.addEventListener("abort",o));const{signal:s}=r;return s.unsubscribe=()=>K.asap(a),s}},Ft=function*(t,e){let n=t.byteLength;if(n<e)return void(yield t);let r,o=0;for(;o<n;)r=o+e,yield t.slice(o,r),o=r},Ut=async function*(t){if(t[Symbol.asyncIterator])return void(yield*t);const e=t.getReader();try{for(;;){const{done:t,value:n}=await e.read();if(t)break;yield n}}finally{await e.cancel()}},Bt=(t,e,n,r)=>{const o=async function*(t,e){for await(const n of Ut(t))yield*Ft(n,e)}(t,e);let i,a=0,s=t=>{i||(i=!0,r&&r(t))};return new ReadableStream({async pull(t){try{const{done:e,value:r}=await o.next();if(e)return s(),void t.close();let i=r.byteLength;if(n){let t=a+=i;n(t)}t.enqueue(new Uint8Array(r))}catch(e){throw s(e),e}},cancel:t=>(s(t),o.return())},{highWaterMark:2})},{isFunction:qt}=K,$t=(({Request:t,Response:e})=>({Request:t,Response:e}))(K.global),{ReadableStream:Ht,TextEncoder:Xt}=K.global,Vt=(t,...e)=>{try{return!!t(...e)}catch(n){return!1}},Wt=t=>{t=K.merge.call({skipUndefined:!0},$t,t);const{fetch:e,Request:n,Response:r}=t,o=e?qt(e):"function"==typeof fetch,i=qt(n),a=qt(r);if(!o)return!1;const s=o&&qt(Ht),c=o&&("function"==typeof Xt?(t=>e=>t.encode(e))(new Xt):async t=>new Uint8Array(await new n(t).arrayBuffer())),l=i&&s&&Vt(()=>{let t=!1;const e=new n(ht.origin,{body:new Ht,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type");return t&&!e}),u=a&&s&&Vt(()=>K.isReadableStream(new r("").body)),f={stream:u&&(t=>t.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!f[t]&&(f[t]=(e,n)=>{let r=e&&e[t];if(r)return r.call(e);throw new Y(`Response type '${t}' is not supported`,Y.ERR_NOT_SUPPORT,n)})});const d=async(t,e)=>{const r=K.toFiniteNumber(t.getContentLength());return null==r?(async t=>{if(null==t)return 0;if(K.isBlob(t))return t.size;if(K.isSpecCompliantForm(t)){const e=new n(ht.origin,{method:"POST",body:t});return(await e.arrayBuffer()).byteLength}return K.isArrayBufferView(t)||K.isArrayBuffer(t)?t.byteLength:(K.isURLSearchParams(t)&&(t+=""),K.isString(t)?(await c(t)).byteLength:void 0)})(e):r};return async t=>{let{url:o,method:a,data:s,signal:c,cancelToken:p,timeout:h,onDownloadProgress:g,onUploadProgress:m,responseType:v,headers:b,withCredentials:y="same-origin",fetchOptions:w}=Mt(t),E=e||fetch;v=v?(v+"").toLowerCase():"text";let S=Lt([c,p&&p.toAbortSignal()],h),x=null;const O=S&&S.unsubscribe&&(()=>{S.unsubscribe()});let _;try{if(m&&l&&"get"!==a&&"head"!==a&&0!==(_=await d(b,s))){let t,e=new n(o,{method:"POST",body:s,duplex:"half"});if(K.isFormData(s)&&(t=e.headers.get("content-type"))&&b.setContentType(t),e.body){const[t,n]=Ct(_,At(Dt(m)));s=Bt(e.body,65536,t,n)}}K.isString(y)||(y=y?"include":"omit");const e=i&&"credentials"in n.prototype,c={...w,signal:S,method:a.toUpperCase(),headers:b.normalize().toJSON(),body:s,duplex:"half",credentials:e?y:void 0};x=i&&new n(o,c);let p=await(i?E(x,w):E(o,c));const h=u&&("stream"===v||"response"===v);if(u&&(g||h&&O)){const t={};["status","statusText","headers"].forEach(e=>{t[e]=p[e]});const e=K.toFiniteNumber(p.headers.get("content-length")),[n,o]=g&&Ct(e,At(Dt(g),!0))||[];p=new r(Bt(p.body,65536,n,()=>{o&&o(),O&&O()}),t)}v=v||"text";let T=await f[K.findKey(f,v)||"text"](p,t);return!h&&O&&O(),await new Promise((e,n)=>{Tt(e,n,{data:T,headers:St.from(p.headers),status:p.status,statusText:p.statusText,config:t,request:x})})}catch(T){if(O&&O(),T&&"TypeError"===T.name&&/Load failed|fetch/i.test(T.message))throw Object.assign(new Y("Network Error",Y.ERR_NETWORK,t,x,T&&T.response),{cause:T.cause||T});throw Y.from(T,T&&T.code,t,x,T&&T.response)}}},zt=new Map,Kt=t=>{let e=t&&t.env||{};const{fetch:n,Request:r,Response:o}=e,i=[r,o,n];let a,s,c=i.length,l=zt;for(;c--;)a=i[c],s=l.get(a),void 0===s&&l.set(a,s=c?new Map:Wt(e)),l=s;return s};Kt();const Yt={http:null,xhr:kt,fetch:{get:Kt}};K.forEach(Yt,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch(n){}Object.defineProperty(t,"adapterName",{value:e})}});const Gt=t=>`- ${t}`,Jt=t=>K.isFunction(t)||null===t||!1===t;const Qt={getAdapter:function(t,e){t=K.isArray(t)?t:[t];const{length:n}=t;let r,o;const i={};for(let a=0;a<n;a++){let n;if(r=t[a],o=r,!Jt(r)&&(o=Yt[(n=String(r)).toLowerCase()],void 0===o))throw new Y(`Unknown adapter '${n}'`);if(o&&(K.isFunction(o)||(o=o.get(e))))break;i[n||"#"+a]=o}if(!o){const t=Object.entries(i).map(([t,e])=>`adapter ${t} `+(!1===e?"is not supported by the environment":"is not available in the build"));let e=n?t.length>1?"since :\n"+t.map(Gt).join("\n"):" "+Gt(t[0]):"as no adapter specified";throw new Y("There is no suitable adapter to dispatch the request "+e,"ERR_NOT_SUPPORT")}return o},adapters:Yt};function Zt(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new _t(null,t)}function te(t){Zt(t),t.headers=St.from(t.headers),t.data=xt.call(t,t.transformRequest),-1!==["post","put","patch"].indexOf(t.method)&&t.headers.setContentType("application/x-www-form-urlencoded",!1);return Qt.getAdapter(t.adapter||mt.adapter,t)(t).then(function(e){return Zt(t),e.data=xt.call(t,t.transformResponse,e),e.headers=St.from(e.headers),e},function(e){return Ot(e)||(Zt(t),e&&e.response&&(e.response.data=xt.call(t,t.transformResponse,e.response),e.response.headers=St.from(e.response.headers))),Promise.reject(e)})}const ee="1.13.6",ne={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{ne[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});const re={};ne.transitional=function(t,e,n){return(r,o,i)=>{if(!1===t)throw new Y(function(t,e){return"[Axios v"+ee+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}(o," has been removed"+(e?" in "+e:"")),Y.ERR_DEPRECATED);return e&&!re[o]&&(re[o]=!0),!t||t(r,o,i)}},ne.spelling=function(t){return(t,e)=>!0};const oe={assertOptions:function(t,e,n){if("object"!=typeof t)throw new Y("options must be an object",Y.ERR_BAD_OPTION_VALUE);const r=Object.keys(t);let o=r.length;for(;o-- >0;){const i=r[o],a=e[i];if(a){const e=t[i],n=void 0===e||a(e,i,t);if(!0!==n)throw new Y("option "+i+" must be "+n,Y.ERR_BAD_OPTION_VALUE);continue}if(!0!==n)throw new Y("Unknown option "+i,Y.ERR_BAD_OPTION)}},validators:ne},ie=oe.validators;let ae=class{constructor(t){this.defaults=t||{},this.interceptors={request:new at,response:new at}}async request(t,e){try{return await this._request(t,e)}catch(n){if(n instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const e=t.stack?t.stack.replace(/^.+\n/,""):"";try{n.stack?e&&!String(n.stack).endsWith(e.replace(/^.+\n.+\n/,""))&&(n.stack+="\n"+e):n.stack=e}catch(r){}}throw n}}_request(t,e){"string"==typeof t?(e=e||{}).url=t:e=t||{},e=It(this.defaults,e);const{transitional:n,paramsSerializer:r,headers:o}=e;void 0!==n&&oe.assertOptions(n,{silentJSONParsing:ie.transitional(ie.boolean),forcedJSONParsing:ie.transitional(ie.boolean),clarifyTimeoutError:ie.transitional(ie.boolean),legacyInterceptorReqResOrdering:ie.transitional(ie.boolean)},!1),null!=r&&(K.isFunction(r)?e.paramsSerializer={serialize:r}:oe.assertOptions(r,{encode:ie.function,serialize:ie.function},!0)),void 0!==e.allowAbsoluteUrls||(void 0!==this.defaults.allowAbsoluteUrls?e.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:e.allowAbsoluteUrls=!0),oe.assertOptions(e,{baseUrl:ie.spelling("baseURL"),withXsrfToken:ie.spelling("withXSRFToken")},!0),e.method=(e.method||this.defaults.method||"get").toLowerCase();let i=o&&K.merge(o.common,o[e.method]);o&&K.forEach(["delete","get","head","post","put","patch","common"],t=>{delete o[t]}),e.headers=St.concat(i,o);const a=[];let s=!0;this.interceptors.request.forEach(function(t){if("function"==typeof t.runWhen&&!1===t.runWhen(e))return;s=s&&t.synchronous;const n=e.transitional||st;n&&n.legacyInterceptorReqResOrdering?a.unshift(t.fulfilled,t.rejected):a.push(t.fulfilled,t.rejected)});const c=[];let l;this.interceptors.response.forEach(function(t){c.push(t.fulfilled,t.rejected)});let u,f=0;if(!s){const t=[te.bind(this),void 0];for(t.unshift(...a),t.push(...c),u=t.length,l=Promise.resolve(e);f<u;)l=l.then(t[f++],t[f++]);return l}u=a.length;let d=e;for(;f<u;){const t=a[f++],e=a[f++];try{d=t(d)}catch(p){e.call(this,p);break}}try{l=te.call(this,d)}catch(p){return Promise.reject(p)}for(f=0,u=c.length;f<u;)l=l.then(c[f++],c[f++]);return l}getUri(t){return it(jt((t=It(this.defaults,t)).baseURL,t.url,t.allowAbsoluteUrls),t.params,t.paramsSerializer)}};K.forEach(["delete","get","head","options"],function(t){ae.prototype[t]=function(e,n){return this.request(It(n||{},{method:t,url:e,data:(n||{}).data}))}}),K.forEach(["post","put","patch"],function(t){function e(e){return function(n,r,o){return this.request(It(o||{},{method:t,headers:e?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}ae.prototype[t]=e(),ae.prototype[t+"Form"]=e(!0)});const se={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,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(se).forEach(([t,e])=>{se[e]=t});const ce=function t(e){const n=new ae(e),r=o(ae.prototype.request,n);return K.extend(r,ae.prototype,n,{allOwnKeys:!0}),K.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return t(It(e,n))},r}(mt);ce.Axios=ae,ce.CanceledError=_t,ce.CancelToken=class t{constructor(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");let e;this.promise=new Promise(function(t){e=t});const n=this;this.promise.then(t=>{if(!n._listeners)return;let e=n._listeners.length;for(;e-- >0;)n._listeners[e](t);n._listeners=null}),this.promise.then=t=>{let e;const r=new Promise(t=>{n.subscribe(t),e=t}).then(t);return r.cancel=function(){n.unsubscribe(e)},r},t(function(t,r,o){n.reason||(n.reason=new _t(t,r,o),e(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){this.reason?t(this.reason):this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const e=this._listeners.indexOf(t);-1!==e&&this._listeners.splice(e,1)}toAbortSignal(){const t=new AbortController,e=e=>{t.abort(e)};return this.subscribe(e),t.signal.unsubscribe=()=>this.unsubscribe(e),t.signal}static source(){let e;return{token:new t(function(t){e=t}),cancel:e}}},ce.isCancel=Ot,ce.VERSION=ee,ce.toFormData=tt,ce.AxiosError=Y,ce.Cancel=ce.CanceledError,ce.all=function(t){return Promise.all(t)},ce.spread=function(t){return function(e){return t.apply(null,e)}},ce.isAxiosError=function(t){return K.isObject(t)&&!0===t.isAxiosError},ce.mergeConfig=It,ce.AxiosHeaders=St,ce.formToJSON=t=>gt(K.isHTMLForm(t)?new FormData(t):t),ce.getAdapter=Qt.getAdapter,ce.HttpStatusCode=se,ce.default=ce;const{Axios:le,AxiosError:ue,CanceledError:fe,isCancel:de,CancelToken:pe,VERSION:he,all:ge,Cancel:me,isAxiosError:ve,spread:be,toFormData:ye,AxiosHeaders:we,HttpStatusCode:Ee,formToJSON:Se,getAdapter:xe,mergeConfig:Oe}=ce;var _e={exports:{}};
2
2
  /**!
3
3
  * Sortable 1.14.0
4
4
  * @author RubaXa <trash@rubaxa.org>
@@ -42,4 +42,4 @@ let rc;const sc=e=>rc=e,ic=Symbol();function lc(e){return e&&"object"==typeof e&
42
42
  * vue-router v4.6.3
43
43
  * (c) 2025 Eduardo San Martin Morote
44
44
  * @license MIT
45
- */(e,t);n=Oa(o.reverse(),"beforeRouteLeave",e,t);for(const s of o)s.leaveGuards.forEach(o=>{n.push(ka(o,e,t))});const c=y.bind(null,e,t);return n.push(c),M(n).then(()=>{n=[];for(const o of s.list())n.push(ka(o,e,t));return n.push(c),M(n)}).then(()=>{n=Oa(r,"beforeRouteUpdate",e,t);for(const o of r)o.updateGuards.forEach(o=>{n.push(ka(o,e,t))});return n.push(c),M(n)}).then(()=>{n=[];for(const o of l)if(o.beforeEnter)if(Rc(o.beforeEnter))for(const r of o.beforeEnter)n.push(ka(r,e,t));else n.push(ka(o.beforeEnter,e,t));return n.push(c),M(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Oa(l,"beforeRouteEnter",e,t,b),n.push(c),M(n))).then(()=>{n=[];for(const o of i.list())n.push(ka(o,e,t));return n.push(c),M(n)}).catch(e=>_a(e,ga.NAVIGATION_CANCELLED)?e:Promise.reject(e))}function S(e,t,n){l.list().forEach(o=>b(()=>o(e,t,n)))}function C(e,t,n,o,s){const i=g(e,t);if(i)return i;const l=t===ra,a=wc?history.state:{};n&&(o||l?r.replace(e.fullPath,Tc({scroll:l&&a&&a.scroll},s)):r.push(e.fullPath,s)),c.value=e,N(e,t,n,l),R()}let x;function w(){x||(x=r.listen((e,t,n)=>{if(!L.listening)return;const o=d(e),s=v(o,L.currentRoute.value);if(s)return void _(Tc(s,{replace:!0,force:!0}),o).catch(Oc);a=o;const i=c.value;var l,u;wc&&(l=pa(i.fullPath,n.delta),u=ua(),da.set(l,u)),E(o,i).catch(e=>_a(e,ga.NAVIGATION_ABORTED|ga.NAVIGATION_CANCELLED)?e:_a(e,ga.NAVIGATION_GUARD_REDIRECT)?(_(Tc(h(e.to),{force:!0}),o).then(e=>{_a(e,ga.NAVIGATION_ABORTED|ga.NAVIGATION_DUPLICATED)&&!n.delta&&n.type===sa.pop&&r.go(-1,!1)}).catch(Oc),Promise.reject()):(n.delta&&r.go(-n.delta,!1),O(e,o,i))).then(e=>{(e=e||C(o,i,!1))&&(n.delta&&!_a(e,ga.NAVIGATION_CANCELLED)?r.go(-n.delta,!1):n.type===sa.pop&&_a(e,ga.NAVIGATION_ABORTED|ga.NAVIGATION_DUPLICATED)&&r.go(-1,!1)),S(o,i,e)}).catch(Oc)}))}let A,T=Ta(),k=Ta();function O(e,t,n){R(e);const o=k.list();return o.length&&o.forEach(o=>o(e,t,n)),Promise.reject(e)}function R(e){return A||(A=!e,w(),T.list().forEach(([t,n])=>e?n(e):t()),T.reset()),e}function N(t,n,o,r){const{scrollBehavior:s}=e;if(!wc||!s)return Promise.resolve();const i=!o&&function(e){const t=da.get(e);return da.delete(e),t}(pa(t.fullPath,0))||(r||!o)&&history.state&&history.state.scroll||null;return an().then(()=>s(t,n,i)).then(e=>e&&fa(e)).catch(e=>O(e,t,n))}const P=e=>r.go(e);let I;const D=new Set,L={currentRoute:c,listening:!0,addRoute:function(e,n){let o,r;return ha(e)?(o=t.getRecordMatcher(e),r=n):r=e,t.addRoute(r,o)},removeRoute:function(e){const n=t.getRecordMatcher(e);n&&t.removeRoute(n)},clearRoutes:t.clearRoutes,hasRoute:function(e){return!!t.getRecordMatcher(e)},getRoutes:function(){return t.getRoutes().map(e=>e.record)},resolve:d,options:e,push:m,replace:function(e){return m(Tc(h(e),{replace:!0}))},go:P,back:()=>P(-1),forward:()=>P(1),beforeEach:s.add,beforeResolve:i.add,afterEach:l.add,onError:k.add,isReady:function(){return A&&c.value!==ra?Promise.resolve():new Promise((e,t)=>{T.add([e,t])})},install(e){e.component("RouterLink",tu),e.component("RouterView",su),e.config.globalProperties.$router=L,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>Dt(c)}),wc&&!I&&c.value===ra&&(I=!0,m(r.location).catch(e=>{}));const t={};for(const o in ra)Object.defineProperty(t,o,{get:()=>c.value[o],enumerable:!0});e.provide(xa,L),e.provide(wa,vt(t)),e.provide(Aa,c);const n=e.unmount;D.add(e),e.unmount=function(){D.delete(e),D.size<1&&(a=ra,x&&x(),x=null,c.value=ra,I=!1,A=!1),n()}}};function M(e){return e.reduce((e,t)=>e.then(()=>b(t)),Promise.resolve())}return L}function lu(){return mr(xa)}function cu(e){return mr(wa)}const au=e(oc);export{Z as $,Nt as A,Gr as B,ms as C,Oi as D,El as E,hs as F,Wi as G,Ds as H,gs as I,At as J,No as K,K as L,Zl as M,Dt as N,xt as O,wt as P,jt as Q,B as R,au as S,Dn as T,iu as U,Ia as V,Fs as W,Ps as X,As as Y,Sn as Z,Hl as _,Ns as a,$o as a0,Cc as a1,Ho as a2,jo as a3,xc as a4,cu as a5,Wl as a6,Fo as a7,lu as a8,uc as a9,Ot as aa,Ms as b,ws as c,Xn as d,_t as e,ai as f,qs as g,To as h,Ro as i,Ao as j,mt as k,mr as l,_o as m,yo as n,bs as o,Ls as p,gr as q,Rt as r,Cn as s,ui as t,$t as u,an as v,Kr as w,Go as x,Bs as y,Ts as z};
45
+ */(e,t);n=Oa(o.reverse(),"beforeRouteLeave",e,t);for(const s of o)s.leaveGuards.forEach(o=>{n.push(ka(o,e,t))});const c=y.bind(null,e,t);return n.push(c),M(n).then(()=>{n=[];for(const o of s.list())n.push(ka(o,e,t));return n.push(c),M(n)}).then(()=>{n=Oa(r,"beforeRouteUpdate",e,t);for(const o of r)o.updateGuards.forEach(o=>{n.push(ka(o,e,t))});return n.push(c),M(n)}).then(()=>{n=[];for(const o of l)if(o.beforeEnter)if(Rc(o.beforeEnter))for(const r of o.beforeEnter)n.push(ka(r,e,t));else n.push(ka(o.beforeEnter,e,t));return n.push(c),M(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Oa(l,"beforeRouteEnter",e,t,b),n.push(c),M(n))).then(()=>{n=[];for(const o of i.list())n.push(ka(o,e,t));return n.push(c),M(n)}).catch(e=>_a(e,ga.NAVIGATION_CANCELLED)?e:Promise.reject(e))}function S(e,t,n){l.list().forEach(o=>b(()=>o(e,t,n)))}function C(e,t,n,o,s){const i=g(e,t);if(i)return i;const l=t===ra,a=wc?history.state:{};n&&(o||l?r.replace(e.fullPath,Tc({scroll:l&&a&&a.scroll},s)):r.push(e.fullPath,s)),c.value=e,N(e,t,n,l),R()}let x;function w(){x||(x=r.listen((e,t,n)=>{if(!L.listening)return;const o=d(e),s=v(o,L.currentRoute.value);if(s)return void _(Tc(s,{replace:!0,force:!0}),o).catch(Oc);a=o;const i=c.value;var l,u;wc&&(l=pa(i.fullPath,n.delta),u=ua(),da.set(l,u)),E(o,i).catch(e=>_a(e,ga.NAVIGATION_ABORTED|ga.NAVIGATION_CANCELLED)?e:_a(e,ga.NAVIGATION_GUARD_REDIRECT)?(_(Tc(h(e.to),{force:!0}),o).then(e=>{_a(e,ga.NAVIGATION_ABORTED|ga.NAVIGATION_DUPLICATED)&&!n.delta&&n.type===sa.pop&&r.go(-1,!1)}).catch(Oc),Promise.reject()):(n.delta&&r.go(-n.delta,!1),O(e,o,i))).then(e=>{(e=e||C(o,i,!1))&&(n.delta&&!_a(e,ga.NAVIGATION_CANCELLED)?r.go(-n.delta,!1):n.type===sa.pop&&_a(e,ga.NAVIGATION_ABORTED|ga.NAVIGATION_DUPLICATED)&&r.go(-1,!1)),S(o,i,e)}).catch(Oc)}))}let A,T=Ta(),k=Ta();function O(e,t,n){R(e);const o=k.list();return o.length&&o.forEach(o=>o(e,t,n)),Promise.reject(e)}function R(e){return A||(A=!e,w(),T.list().forEach(([t,n])=>e?n(e):t()),T.reset()),e}function N(t,n,o,r){const{scrollBehavior:s}=e;if(!wc||!s)return Promise.resolve();const i=!o&&function(e){const t=da.get(e);return da.delete(e),t}(pa(t.fullPath,0))||(r||!o)&&history.state&&history.state.scroll||null;return an().then(()=>s(t,n,i)).then(e=>e&&fa(e)).catch(e=>O(e,t,n))}const P=e=>r.go(e);let I;const D=new Set,L={currentRoute:c,listening:!0,addRoute:function(e,n){let o,r;return ha(e)?(o=t.getRecordMatcher(e),r=n):r=e,t.addRoute(r,o)},removeRoute:function(e){const n=t.getRecordMatcher(e);n&&t.removeRoute(n)},clearRoutes:t.clearRoutes,hasRoute:function(e){return!!t.getRecordMatcher(e)},getRoutes:function(){return t.getRoutes().map(e=>e.record)},resolve:d,options:e,push:m,replace:function(e){return m(Tc(h(e),{replace:!0}))},go:P,back:()=>P(-1),forward:()=>P(1),beforeEach:s.add,beforeResolve:i.add,afterEach:l.add,onError:k.add,isReady:function(){return A&&c.value!==ra?Promise.resolve():new Promise((e,t)=>{T.add([e,t])})},install(e){e.component("RouterLink",tu),e.component("RouterView",su),e.config.globalProperties.$router=L,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>Dt(c)}),wc&&!I&&c.value===ra&&(I=!0,m(r.location).catch(e=>{}));const t={};for(const o in ra)Object.defineProperty(t,o,{get:()=>c.value[o],enumerable:!0});e.provide(xa,L),e.provide(wa,vt(t)),e.provide(Aa,c);const n=e.unmount;D.add(e),e.unmount=function(){D.delete(e),D.size<1&&(a=ra,x&&x(),x=null,c.value=ra,I=!1,A=!1),n()}}};function M(e){return e.reduce((e,t)=>e.then(()=>b(t)),Promise.resolve())}return L}function lu(){return mr(xa)}function cu(e){return mr(wa)}const au=e(oc);export{$o as $,Nt as A,Gr as B,ms as C,Oi as D,El as E,hs as F,Wi as G,Ds as H,gs as I,At as J,No as K,K as L,Zl as M,Dt as N,xt as O,wt as P,jt as Q,B as R,au as S,Dn as T,iu as U,Ia as V,Fs as W,Ps as X,Sn as Y,Hl as Z,Z as _,Ns as a,As as a0,Cc as a1,Ho as a2,jo as a3,xc as a4,cu as a5,Wl as a6,Fo as a7,lu as a8,uc as a9,Ot as aa,Ms as b,ws as c,Xn as d,_t as e,ai as f,qs as g,To as h,Ro as i,Ao as j,mt as k,mr as l,_o as m,yo as n,bs as o,Ls as p,gr as q,Rt as r,Cn as s,ui as t,$t as u,an as v,Kr as w,Go as x,Bs as y,Ts as z};
@@ -5,14 +5,14 @@
5
5
  <link rel="icon" href="/favicon.ico">
6
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
7
  <title>coding-tool-x · AI 编程工作台</title>
8
- <script type="module" crossorigin src="/assets/index-gIbIMdSO.js"></script>
8
+ <script type="module" crossorigin src="/assets/index-BsdIJwLf.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/assets/markdown-BNJfEgCA.js">
10
- <link rel="modulepreload" crossorigin href="/assets/vue-vendor-C5aMkRmm.js">
11
- <link rel="modulepreload" crossorigin href="/assets/naive-ui-Cjh6GLto.js">
12
- <link rel="modulepreload" crossorigin href="/assets/icons-U50_Cfbe.js">
13
- <link rel="modulepreload" crossorigin href="/assets/vendors--KP7Ux0s.js">
10
+ <link rel="modulepreload" crossorigin href="/assets/vue-vendor-B5RqjEjQ.js">
11
+ <link rel="modulepreload" crossorigin href="/assets/naive-ui-DM897mIP.js">
12
+ <link rel="modulepreload" crossorigin href="/assets/icons-QFXzEgqM.js">
13
+ <link rel="modulepreload" crossorigin href="/assets/vendors-DQA4Hw9v.js">
14
14
  <link rel="stylesheet" crossorigin href="/assets/markdown-BfC0goYb.css">
15
- <link rel="stylesheet" crossorigin href="/assets/index-BkLQex1R.css">
15
+ <link rel="stylesheet" crossorigin href="/assets/index-0isNzXNY.css">
16
16
  </head>
17
17
  <body>
18
18
  <div id="app"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "coding-tool-x",
3
- "version": "3.6.4",
3
+ "version": "3.6.6",
4
4
  "description": "Vibe Coding 增强工作助手 - 智能会话管理、动态渠道切换、全局搜索、实时监控",
5
5
  "main": "src/index.js",
6
6
  "bin": {
@@ -181,7 +181,10 @@ function updatePM2Daemon() {
181
181
  });
182
182
  }
183
183
 
184
- function dumpPM2State(timeoutMs = 2000) {
184
+ function dumpPM2State(options = {}) {
185
+ const timeoutMs = options.timeoutMs || 2000;
186
+ const force = options.force === true;
187
+
185
188
  return new Promise((resolve) => {
186
189
  let settled = false;
187
190
  const timer = setTimeout(() => {
@@ -192,7 +195,7 @@ function dumpPM2State(timeoutMs = 2000) {
192
195
  resolve({ timedOut: true, err: null });
193
196
  }, timeoutMs);
194
197
 
195
- pm2.dump((err) => {
198
+ pm2.dump(force, (err) => {
196
199
  if (settled) {
197
200
  return;
198
201
  }
@@ -206,7 +209,10 @@ function dumpPM2State(timeoutMs = 2000) {
206
209
  async function finalizePM2Session(options = {}) {
207
210
  const shouldPersist = options.persist === true;
208
211
  if (shouldPersist) {
209
- const result = await dumpPM2State(options.timeoutMs);
212
+ const result = await dumpPM2State({
213
+ timeoutMs: options.timeoutMs,
214
+ force: options.force === true
215
+ });
210
216
  if (result.err) {
211
217
  console.log(chalk.yellow(`[WARN] 保存 PM2 状态失败: ${result.err.message}`));
212
218
  } else if (result.timedOut) {
@@ -593,7 +599,10 @@ async function handleStop() {
593
599
  const stopResult = await stopAllManagedInstances(existing, config);
594
600
  printStopResult(stopResult);
595
601
 
596
- await finalizePM2Session({ persist: true });
602
+ await finalizePM2Session({
603
+ persist: stopResult.hadPM2Process,
604
+ force: true
605
+ });
597
606
  } catch (error) {
598
607
  console.error(chalk.red('停止失败:'), error.message);
599
608
  disconnectPM2();
@@ -431,6 +431,7 @@ const PATHS = {
431
431
  sessionCache: path.join(CACHE_DIR, 'session-cache.json'),
432
432
  sessionHasCache: path.join(CACHE_DIR, 'session-has-cache.json'),
433
433
  channelModels: path.join(CACHE_DIR, 'channel-models.json'),
434
+ channelBalanceStrategies: path.join(CACHE_DIR, 'channel-balance-strategies.json'),
434
435
  envBackups: path.join(BACKUPS_DIR, 'env'),
435
436
  proxyRuntime: {
436
437
  claude: path.join(RUNTIME_DIR, 'claude-proxy.json'),
@@ -109,7 +109,8 @@ router.post('/', (req, res) => {
109
109
  speedTestModel,
110
110
  gatewaySourceType,
111
111
  targetApi,
112
- balanceToken
112
+ balanceToken,
113
+ balanceUserId
113
114
  } = req.body;
114
115
 
115
116
  if (!name || !baseUrl) {
@@ -131,7 +132,8 @@ router.post('/', (req, res) => {
131
132
  speedTestModel: speedTestModel || null,
132
133
  gatewaySourceType,
133
134
  targetApi,
134
- balanceToken: balanceToken || ''
135
+ balanceToken: balanceToken || '',
136
+ balanceUserId: balanceUserId || null
135
137
  });
136
138
  res.json({ channel });
137
139
  broadcastSchedulerState('claude', getSchedulerState('claude'));
@@ -142,7 +142,8 @@ module.exports = (config) => {
142
142
  speedTestModel,
143
143
  presetId,
144
144
  gatewaySourceType,
145
- balanceToken
145
+ balanceToken,
146
+ balanceUserId
146
147
  } = req.body;
147
148
 
148
149
  if (!name || !providerKey || !baseUrl) {
@@ -169,6 +170,7 @@ module.exports = (config) => {
169
170
  presetId: presetId || null,
170
171
  gatewaySourceType,
171
172
  balanceToken: balanceToken || '',
173
+ balanceUserId: balanceUserId || null,
172
174
  requiresOpenaiAuth: false
173
175
  });
174
176
  res.json(channel);
@@ -39,6 +39,29 @@ function normalizeForkOptions(body = {}) {
39
39
  };
40
40
  }
41
41
 
42
+ function withUserAnchorContext(paginatedMessages, sortedMessages) {
43
+ if (paginatedMessages.length === 0 || paginatedMessages.some(message => message.type === 'user')) {
44
+ return paginatedMessages;
45
+ }
46
+
47
+ const userAnchor = sortedMessages.find(message => message.type === 'user' && message.userMessageNumber);
48
+ if (!userAnchor) {
49
+ return paginatedMessages;
50
+ }
51
+
52
+ return [
53
+ ...paginatedMessages,
54
+ {
55
+ type: 'user',
56
+ content: '',
57
+ timestamp: userAnchor.timestamp || null,
58
+ model: null,
59
+ userMessageNumber: userAnchor.userMessageNumber,
60
+ anchorOnly: true
61
+ }
62
+ ];
63
+ }
64
+
42
65
  module.exports = (config) => {
43
66
  // ============================================
44
67
  // 静态路由必须放在参数路由之前
@@ -389,7 +412,7 @@ module.exports = (config) => {
389
412
  const totalMessages = messages.length;
390
413
  const start = (pageNum - 1) * limitNum;
391
414
  const end = start + limitNum;
392
- const paginatedMessages = messages.slice(start, end);
415
+ const paginatedMessages = withUserAnchorContext(messages.slice(start, end), messages);
393
416
 
394
417
  res.json({
395
418
  messages: paginatedMessages,
@@ -123,7 +123,8 @@ module.exports = (config) => {
123
123
  speedTestModel,
124
124
  presetId,
125
125
  gatewaySourceType,
126
- balanceToken
126
+ balanceToken,
127
+ balanceUserId
127
128
  } = req.body;
128
129
 
129
130
  if (!name || !baseUrl) {
@@ -143,7 +144,8 @@ module.exports = (config) => {
143
144
  speedTestModel: speedTestModel || null,
144
145
  presetId: presetId || null,
145
146
  gatewaySourceType,
146
- balanceToken: balanceToken || ''
147
+ balanceToken: balanceToken || '',
148
+ balanceUserId: balanceUserId || null
147
149
  });
148
150
  res.json(channel);
149
151
  broadcastSchedulerState('gemini', getSchedulerState('gemini'));
@@ -262,7 +262,8 @@ module.exports = (config) => {
262
262
  speedTestModel,
263
263
  presetId,
264
264
  websiteUrl,
265
- balanceToken
265
+ balanceToken,
266
+ balanceUserId
266
267
  } = req.body;
267
268
 
268
269
  if (!name || !baseUrl) {
@@ -284,7 +285,8 @@ module.exports = (config) => {
284
285
  speedTestModel: speedTestModel || null,
285
286
  presetId,
286
287
  websiteUrl,
287
- balanceToken: balanceToken || ''
288
+ balanceToken: balanceToken || '',
289
+ balanceUserId: balanceUserId || null
288
290
  });
289
291
 
290
292
  res.json(channel);