diff --git a/App.vue b/App.vue
index 51e97e5..26cbfa2 100644
--- a/App.vue
+++ b/App.vue
@@ -1,15 +1,10 @@
\r\n\r\n","import App from './App'\r\n\r\n// #ifndef VUE3\r\nimport Vue from 'vue'\r\nimport './uni.promisify.adaptor'\r\nVue.config.productionTip = false\r\nApp.mpType = 'app'\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()\r\n// #endif\r\n\r\n// #ifdef VUE3\r\nimport { createSSRApp } from 'vue'\r\nexport function createApp() {\r\n const app = createSSRApp(App)\r\n return {\r\n app\r\n }\r\n}\r\n// #endif"],"names":["uni","createSSRApp","App"],"mappings":";;;;;;;;;;;;;;;;;;;AAiBA,MAAe,YAAA;AAAA,EACb,OAAO;AACE,WAAA;AAAA,MACL,MAAM,CAAC;AAAA,MACP,SAAS;AAAA,MACT,UAAU,CAAC;AAAA,IAAA;AAAA,EAEf;AAAA,EACA,OAAO,QAAQ;AACbA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,OAAO,IAAI;AAAA,MAClB;AAAA,IAAA,CACD;AACDA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,UAAU,IAAI;AAAA,MACrB;AAAA,IAAA,CACD;AACDA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,WAAW,IAAI;AAAA,MACtB;AAAA,IAAA,CACD;AACD,QAAI,KAAK,SAAS;AAChB,eAAS,KAAK,SAAS,OAAO,KAAK,KAAK,YAAY,KAAK,OAAO;AAAA,IAClE;AAAA,EACF;AAAA,EACA,UAAU;AACD,WAAA;AAAA,MACL,SAAS;AAAA,QACP,UAAU;AAAA,MACZ;AAAA,IAAA;AAAA,EAEJ;AACF;ACxCO,SAAS,YAAY;AAC1B,QAAM,MAAMC,cAAY,aAACC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACD;AACH;;;"}
\ No newline at end of file
+{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["\r\n\r\n","import App from './App'\r\n\r\n// #ifndef VUE3\r\nimport Vue from 'vue'\r\nimport './uni.promisify.adaptor'\r\nVue.config.productionTip = false\r\nApp.mpType = 'app'\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()\r\n// #endif\r\n\r\n// #ifdef VUE3\r\nimport { createSSRApp } from 'vue'\r\nexport function createApp() {\r\n const app = createSSRApp(App)\r\n return {\r\n app\r\n }\r\n}\r\n// #endif"],"names":["uni","createSSRApp","App"],"mappings":";;;;;;;;;;;;;;;;;;;AAYA,MAAe,YAAA;AAAA,EACb,OAAO;AACE,WAAA;AAAA,MACL,MAAM,CAAC;AAAA,MACP,SAAS;AAAA,MACT,UAAU,CAAC;AAAA,IAAA;AAAA,EAEf;AAAA,EACA,OAAO,QAAQ;AACbA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,OAAO,IAAI;AAAA,MAClB;AAAA,IAAA,CACD;AACDA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,UAAU,IAAI;AAAA,MACrB;AAAA,IAAA,CACD;AACDA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,WAAW,IAAI;AAAA,MACtB;AAAA,IAAA,CACD;AACD,QAAI,KAAK,SAAS;AAChB,eAAS,KAAK,SAAS,OAAO,KAAK,KAAK,YAAY,KAAK,OAAO;AAAA,IAClE;AAAA,EACF;AAAA,EACA,UAAU;AACD,WAAA;AAAA,MACL,SAAS;AAAA,QACP,UAAU;AAAA,MACZ;AAAA,IAAA;AAAA,EAEJ;AACF;ACnCO,SAAS,YAAY;AAC1B,QAAM,MAAMC,cAAY,aAACC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACD;AACH;;;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
index c25b54b..fd079b4 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
@@ -1 +1 @@
-{"version":3,"file":"vendor.js","sources":["../../HBuilderX/plugins/uniapp-cli-vite/node_modules/@vue/shared/dist/shared.esm-bundler.js","../../HBuilderX/plugins/uniapp-cli-vite/node_modules/@dcloudio/uni-i18n/dist/uni-i18n.es.js","../../HBuilderX/plugins/uniapp-cli-vite/node_modules/@dcloudio/uni-shared/dist/uni-shared.es.js","../../HBuilderX/plugins/uniapp-cli-vite/node_modules/@dcloudio/uni-mp-vue/dist/vue.runtime.esm.js","../../HBuilderX/plugins/uniapp-cli-vite/node_modules/@dcloudio/uni-mp-weixin/dist/uni.api.esm.js","../../HBuilderX/plugins/uniapp-cli-vite/node_modules/@dcloudio/uni-console/dist/mp.esm.js","../../HBuilderX/plugins/uniapp-cli-vite/node_modules/@dcloudio/uni-mp-weixin/dist/uni.mp.esm.js","node_modules/@tencentcloud/chat/index.js","node_modules/tim-upload-plugin/index.js","node_modules/tim-profanity-filter-plugin/index.js","node_modules/@tencentcloud/tui-core/index.js","node_modules/@tencentcloud/chat-uikit-engine/index.js","node_modules/@tencentcloud/universal-api/index.js","../../HBuilderX/plugins/uniapp-cli-vite/node_modules/@dcloudio/uni-app/dist/uni-app.es.js","node_modules/dayjs/dayjs.min.js","node_modules/dayjs/plugin/localeData.js","node_modules/dayjs/plugin/isSameOrAfter.js","node_modules/dayjs/plugin/isSameOrBefore.js","node_modules/dayjs/locale/zh-cn.js","node_modules/@vue/composition-api/dist/vue-composition-api.mjs","node_modules/marked/lib/marked.esm.js"],"sourcesContent":["/**\n* @vue/shared v3.4.21\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\nfunction makeMap(str, expectsLowerCase) {\n const set = new Set(str.split(\",\"));\n return expectsLowerCase ? (val) => set.has(val.toLowerCase()) : (val) => set.has(val);\n}\n\nconst EMPTY_OBJ = !!(process.env.NODE_ENV !== \"production\") ? Object.freeze({}) : {};\nconst EMPTY_ARR = !!(process.env.NODE_ENV !== \"production\") ? Object.freeze([]) : [];\nconst NOOP = () => {\n};\nconst NO = () => false;\nconst isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter\n(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97);\nconst isModelListener = (key) => key.startsWith(\"onUpdate:\");\nconst extend = Object.assign;\nconst remove = (arr, el) => {\n const i = arr.indexOf(el);\n if (i > -1) {\n arr.splice(i, 1);\n }\n};\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\nconst isArray = Array.isArray;\nconst isMap = (val) => toTypeString(val) === \"[object Map]\";\nconst isSet = (val) => toTypeString(val) === \"[object Set]\";\nconst isDate = (val) => toTypeString(val) === \"[object Date]\";\nconst isRegExp = (val) => toTypeString(val) === \"[object RegExp]\";\nconst isFunction = (val) => typeof val === \"function\";\nconst isString = (val) => typeof val === \"string\";\nconst isSymbol = (val) => typeof val === \"symbol\";\nconst isObject = (val) => val !== null && typeof val === \"object\";\nconst isPromise = (val) => {\n return (isObject(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch);\n};\nconst objectToString = Object.prototype.toString;\nconst toTypeString = (value) => objectToString.call(value);\nconst toRawType = (value) => {\n return toTypeString(value).slice(8, -1);\n};\nconst isPlainObject = (val) => toTypeString(val) === \"[object Object]\";\nconst isIntegerKey = (key) => isString(key) && key !== \"NaN\" && key[0] !== \"-\" && \"\" + parseInt(key, 10) === key;\nconst isReservedProp = /* @__PURE__ */ makeMap(\n // the leading comma is intentional so empty string \"\" is also included\n \",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted\"\n);\nconst isBuiltInDirective = /* @__PURE__ */ makeMap(\n \"bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo\"\n);\nconst cacheStringFunction = (fn) => {\n const cache = /* @__PURE__ */ Object.create(null);\n return (str) => {\n const hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n};\nconst camelizeRE = /-(\\w)/g;\nconst camelize = cacheStringFunction((str) => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : \"\");\n});\nconst hyphenateRE = /\\B([A-Z])/g;\nconst hyphenate = cacheStringFunction(\n (str) => str.replace(hyphenateRE, \"-$1\").toLowerCase()\n);\nconst capitalize = cacheStringFunction((str) => {\n return str.charAt(0).toUpperCase() + str.slice(1);\n});\nconst toHandlerKey = cacheStringFunction((str) => {\n const s = str ? `on${capitalize(str)}` : ``;\n return s;\n});\nconst hasChanged = (value, oldValue) => !Object.is(value, oldValue);\nconst invokeArrayFns = (fns, arg) => {\n for (let i = 0; i < fns.length; i++) {\n fns[i](arg);\n }\n};\nconst def = (obj, key, value) => {\n Object.defineProperty(obj, key, {\n configurable: true,\n enumerable: false,\n value\n });\n};\nconst looseToNumber = (val) => {\n const n = parseFloat(val);\n return isNaN(n) ? val : n;\n};\nconst toNumber = (val) => {\n const n = isString(val) ? Number(val) : NaN;\n return isNaN(n) ? val : n;\n};\nlet _globalThis;\nconst getGlobalThis = () => {\n return _globalThis || (_globalThis = typeof globalThis !== \"undefined\" ? globalThis : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : typeof global !== \"undefined\" ? global : {});\n};\nconst identRE = /^[_$a-zA-Z\\xA0-\\uFFFF][_$a-zA-Z0-9\\xA0-\\uFFFF]*$/;\nfunction genPropsAccessExp(name) {\n return identRE.test(name) ? `__props.${name}` : `__props[${JSON.stringify(name)}]`;\n}\n\nconst PatchFlags = {\n \"TEXT\": 1,\n \"1\": \"TEXT\",\n \"CLASS\": 2,\n \"2\": \"CLASS\",\n \"STYLE\": 4,\n \"4\": \"STYLE\",\n \"PROPS\": 8,\n \"8\": \"PROPS\",\n \"FULL_PROPS\": 16,\n \"16\": \"FULL_PROPS\",\n \"NEED_HYDRATION\": 32,\n \"32\": \"NEED_HYDRATION\",\n \"STABLE_FRAGMENT\": 64,\n \"64\": \"STABLE_FRAGMENT\",\n \"KEYED_FRAGMENT\": 128,\n \"128\": \"KEYED_FRAGMENT\",\n \"UNKEYED_FRAGMENT\": 256,\n \"256\": \"UNKEYED_FRAGMENT\",\n \"NEED_PATCH\": 512,\n \"512\": \"NEED_PATCH\",\n \"DYNAMIC_SLOTS\": 1024,\n \"1024\": \"DYNAMIC_SLOTS\",\n \"DEV_ROOT_FRAGMENT\": 2048,\n \"2048\": \"DEV_ROOT_FRAGMENT\",\n \"HOISTED\": -1,\n \"-1\": \"HOISTED\",\n \"BAIL\": -2,\n \"-2\": \"BAIL\"\n};\nconst PatchFlagNames = {\n [1]: `TEXT`,\n [2]: `CLASS`,\n [4]: `STYLE`,\n [8]: `PROPS`,\n [16]: `FULL_PROPS`,\n [32]: `NEED_HYDRATION`,\n [64]: `STABLE_FRAGMENT`,\n [128]: `KEYED_FRAGMENT`,\n [256]: `UNKEYED_FRAGMENT`,\n [512]: `NEED_PATCH`,\n [1024]: `DYNAMIC_SLOTS`,\n [2048]: `DEV_ROOT_FRAGMENT`,\n [-1]: `HOISTED`,\n [-2]: `BAIL`\n};\n\nconst ShapeFlags = {\n \"ELEMENT\": 1,\n \"1\": \"ELEMENT\",\n \"FUNCTIONAL_COMPONENT\": 2,\n \"2\": \"FUNCTIONAL_COMPONENT\",\n \"STATEFUL_COMPONENT\": 4,\n \"4\": \"STATEFUL_COMPONENT\",\n \"TEXT_CHILDREN\": 8,\n \"8\": \"TEXT_CHILDREN\",\n \"ARRAY_CHILDREN\": 16,\n \"16\": \"ARRAY_CHILDREN\",\n \"SLOTS_CHILDREN\": 32,\n \"32\": \"SLOTS_CHILDREN\",\n \"TELEPORT\": 64,\n \"64\": \"TELEPORT\",\n \"SUSPENSE\": 128,\n \"128\": \"SUSPENSE\",\n \"COMPONENT_SHOULD_KEEP_ALIVE\": 256,\n \"256\": \"COMPONENT_SHOULD_KEEP_ALIVE\",\n \"COMPONENT_KEPT_ALIVE\": 512,\n \"512\": \"COMPONENT_KEPT_ALIVE\",\n \"COMPONENT\": 6,\n \"6\": \"COMPONENT\"\n};\n\nconst SlotFlags = {\n \"STABLE\": 1,\n \"1\": \"STABLE\",\n \"DYNAMIC\": 2,\n \"2\": \"DYNAMIC\",\n \"FORWARDED\": 3,\n \"3\": \"FORWARDED\"\n};\nconst slotFlagsText = {\n [1]: \"STABLE\",\n [2]: \"DYNAMIC\",\n [3]: \"FORWARDED\"\n};\n\nconst GLOBALS_ALLOWED = \"Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error\";\nconst isGloballyAllowed = /* @__PURE__ */ makeMap(GLOBALS_ALLOWED);\nconst isGloballyWhitelisted = isGloballyAllowed;\n\nconst range = 2;\nfunction generateCodeFrame(source, start = 0, end = source.length) {\n let lines = source.split(/(\\r?\\n)/);\n const newlineSequences = lines.filter((_, idx) => idx % 2 === 1);\n lines = lines.filter((_, idx) => idx % 2 === 0);\n let count = 0;\n const res = [];\n for (let i = 0; i < lines.length; i++) {\n count += lines[i].length + (newlineSequences[i] && newlineSequences[i].length || 0);\n if (count >= start) {\n for (let j = i - range; j <= i + range || end > count; j++) {\n if (j < 0 || j >= lines.length)\n continue;\n const line = j + 1;\n res.push(\n `${line}${\" \".repeat(Math.max(3 - String(line).length, 0))}| ${lines[j]}`\n );\n const lineLength = lines[j].length;\n const newLineSeqLength = newlineSequences[j] && newlineSequences[j].length || 0;\n if (j === i) {\n const pad = start - (count - (lineLength + newLineSeqLength));\n const length = Math.max(\n 1,\n end > count ? lineLength - pad : end - start\n );\n res.push(` | ` + \" \".repeat(pad) + \"^\".repeat(length));\n } else if (j > i) {\n if (end > count) {\n const length = Math.max(Math.min(end - count, lineLength), 1);\n res.push(` | ` + \"^\".repeat(length));\n }\n count += lineLength + newLineSeqLength;\n }\n }\n break;\n }\n }\n return res.join(\"\\n\");\n}\n\nfunction normalizeStyle(value) {\n if (isArray(value)) {\n const res = {};\n for (let i = 0; i < value.length; i++) {\n const item = value[i];\n const normalized = isString(item) ? parseStringStyle(item) : normalizeStyle(item);\n if (normalized) {\n for (const key in normalized) {\n res[key] = normalized[key];\n }\n }\n }\n return res;\n } else if (isString(value) || isObject(value)) {\n return value;\n }\n}\nconst listDelimiterRE = /;(?![^(]*\\))/g;\nconst propertyDelimiterRE = /:([^]+)/;\nconst styleCommentRE = /\\/\\*[^]*?\\*\\//g;\nfunction parseStringStyle(cssText) {\n const ret = {};\n cssText.replace(styleCommentRE, \"\").split(listDelimiterRE).forEach((item) => {\n if (item) {\n const tmp = item.split(propertyDelimiterRE);\n tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return ret;\n}\nfunction stringifyStyle(styles) {\n let ret = \"\";\n if (!styles || isString(styles)) {\n return ret;\n }\n for (const key in styles) {\n const value = styles[key];\n const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);\n if (isString(value) || typeof value === \"number\") {\n ret += `${normalizedKey}:${value};`;\n }\n }\n return ret;\n}\nfunction normalizeClass(value) {\n let res = \"\";\n if (isString(value)) {\n res = value;\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n const normalized = normalizeClass(value[i]);\n if (normalized) {\n res += normalized + \" \";\n }\n }\n } else if (isObject(value)) {\n for (const name in value) {\n if (value[name]) {\n res += name + \" \";\n }\n }\n }\n return res.trim();\n}\nfunction normalizeProps(props) {\n if (!props)\n return null;\n let { class: klass, style } = props;\n if (klass && !isString(klass)) {\n props.class = normalizeClass(klass);\n }\n if (style) {\n props.style = normalizeStyle(style);\n }\n return props;\n}\n\nconst HTML_TAGS = \"html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot\";\nconst SVG_TAGS = \"svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,mesh,meshgradient,meshpatch,meshrow,metadata,mpath,path,pattern,polygon,polyline,radialGradient,rect,set,solidcolor,stop,switch,symbol,text,textPath,title,tspan,unknown,use,view\";\nconst MATH_TAGS = \"annotation,annotation-xml,maction,maligngroup,malignmark,math,menclose,merror,mfenced,mfrac,mfraction,mglyph,mi,mlabeledtr,mlongdiv,mmultiscripts,mn,mo,mover,mpadded,mphantom,mprescripts,mroot,mrow,ms,mscarries,mscarry,msgroup,msline,mspace,msqrt,msrow,mstack,mstyle,msub,msubsup,msup,mtable,mtd,mtext,mtr,munder,munderover,none,semantics\";\nconst VOID_TAGS = \"area,base,br,col,embed,hr,img,input,link,meta,param,source,track,wbr\";\nconst isHTMLTag = /* @__PURE__ */ makeMap(HTML_TAGS);\nconst isSVGTag = /* @__PURE__ */ makeMap(SVG_TAGS);\nconst isMathMLTag = /* @__PURE__ */ makeMap(MATH_TAGS);\nconst isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS);\n\nconst specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;\nconst isSpecialBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs);\nconst isBooleanAttr = /* @__PURE__ */ makeMap(\n specialBooleanAttrs + `,async,autofocus,autoplay,controls,default,defer,disabled,hidden,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected`\n);\nfunction includeBooleanAttr(value) {\n return !!value || value === \"\";\n}\nconst unsafeAttrCharRE = /[>/=\"'\\u0009\\u000a\\u000c\\u0020]/;\nconst attrValidationCache = {};\nfunction isSSRSafeAttrName(name) {\n if (attrValidationCache.hasOwnProperty(name)) {\n return attrValidationCache[name];\n }\n const isUnsafe = unsafeAttrCharRE.test(name);\n if (isUnsafe) {\n console.error(`unsafe attribute name: ${name}`);\n }\n return attrValidationCache[name] = !isUnsafe;\n}\nconst propsToAttrMap = {\n acceptCharset: \"accept-charset\",\n className: \"class\",\n htmlFor: \"for\",\n httpEquiv: \"http-equiv\"\n};\nconst isKnownHtmlAttr = /* @__PURE__ */ makeMap(\n `accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap`\n);\nconst isKnownSvgAttr = /* @__PURE__ */ makeMap(\n `xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan`\n);\nfunction isRenderableAttrValue(value) {\n if (value == null) {\n return false;\n }\n const type = typeof value;\n return type === \"string\" || type === \"number\" || type === \"boolean\";\n}\n\nconst escapeRE = /[\"'&<>]/;\nfunction escapeHtml(string) {\n const str = \"\" + string;\n const match = escapeRE.exec(str);\n if (!match) {\n return str;\n }\n let html = \"\";\n let escaped;\n let index;\n let lastIndex = 0;\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34:\n escaped = \""\";\n break;\n case 38:\n escaped = \"&\";\n break;\n case 39:\n escaped = \"'\";\n break;\n case 60:\n escaped = \"<\";\n break;\n case 62:\n escaped = \">\";\n break;\n default:\n continue;\n }\n if (lastIndex !== index) {\n html += str.slice(lastIndex, index);\n }\n lastIndex = index + 1;\n html += escaped;\n }\n return lastIndex !== index ? html + str.slice(lastIndex, index) : html;\n}\nconst commentStripRE = /^-?>||--!>| looseEqual(item, val));\n}\n\nconst toDisplayString = (val) => {\n return isString(val) ? val : val == null ? \"\" : isArray(val) || isObject(val) && (val.toString === objectToString || !isFunction(val.toString)) ? JSON.stringify(val, replacer, 2) : String(val);\n};\nconst replacer = (_key, val) => {\n if (val && val.__v_isRef) {\n return replacer(_key, val.value);\n } else if (isMap(val)) {\n return {\n [`Map(${val.size})`]: [...val.entries()].reduce(\n (entries, [key, val2], i) => {\n entries[stringifySymbol(key, i) + \" =>\"] = val2;\n return entries;\n },\n {}\n )\n };\n } else if (isSet(val)) {\n return {\n [`Set(${val.size})`]: [...val.values()].map((v) => stringifySymbol(v))\n };\n } else if (isSymbol(val)) {\n return stringifySymbol(val);\n } else if (isObject(val) && !isArray(val) && !isPlainObject(val)) {\n return String(val);\n }\n return val;\n};\nconst stringifySymbol = (v, i = \"\") => {\n var _a;\n return isSymbol(v) ? `Symbol(${(_a = v.description) != null ? _a : i})` : v;\n};\n\nexport { EMPTY_ARR, EMPTY_OBJ, NO, NOOP, PatchFlagNames, PatchFlags, ShapeFlags, SlotFlags, camelize, capitalize, def, escapeHtml, escapeHtmlComment, extend, genPropsAccessExp, generateCodeFrame, getGlobalThis, hasChanged, hasOwn, hyphenate, includeBooleanAttr, invokeArrayFns, isArray, isBooleanAttr, isBuiltInDirective, isDate, isFunction, isGloballyAllowed, isGloballyWhitelisted, isHTMLTag, isIntegerKey, isKnownHtmlAttr, isKnownSvgAttr, isMap, isMathMLTag, isModelListener, isObject, isOn, isPlainObject, isPromise, isRegExp, isRenderableAttrValue, isReservedProp, isSSRSafeAttrName, isSVGTag, isSet, isSpecialBooleanAttr, isString, isSymbol, isVoidTag, looseEqual, looseIndexOf, looseToNumber, makeMap, normalizeClass, normalizeProps, normalizeStyle, objectToString, parseStringStyle, propsToAttrMap, remove, slotFlagsText, stringifyStyle, toDisplayString, toHandlerKey, toNumber, toRawType, toTypeString };\n","const isObject = (val) => val !== null && typeof val === 'object';\nconst defaultDelimiters = ['{', '}'];\nclass BaseFormatter {\n constructor() {\n this._caches = Object.create(null);\n }\n interpolate(message, values, delimiters = defaultDelimiters) {\n if (!values) {\n return [message];\n }\n let tokens = this._caches[message];\n if (!tokens) {\n tokens = parse(message, delimiters);\n this._caches[message] = tokens;\n }\n return compile(tokens, values);\n }\n}\nconst RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\nconst RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\nfunction parse(format, [startDelimiter, endDelimiter]) {\n const tokens = [];\n let position = 0;\n let text = '';\n while (position < format.length) {\n let char = format[position++];\n if (char === startDelimiter) {\n if (text) {\n tokens.push({ type: 'text', value: text });\n }\n text = '';\n let sub = '';\n char = format[position++];\n while (char !== undefined && char !== endDelimiter) {\n sub += char;\n char = format[position++];\n }\n const isClosed = char === endDelimiter;\n const type = RE_TOKEN_LIST_VALUE.test(sub)\n ? 'list'\n : isClosed && RE_TOKEN_NAMED_VALUE.test(sub)\n ? 'named'\n : 'unknown';\n tokens.push({ value: sub, type });\n }\n // else if (char === '%') {\n // // when found rails i18n syntax, skip text capture\n // if (format[position] !== '{') {\n // text += char\n // }\n // }\n else {\n text += char;\n }\n }\n text && tokens.push({ type: 'text', value: text });\n return tokens;\n}\nfunction compile(tokens, values) {\n const compiled = [];\n let index = 0;\n const mode = Array.isArray(values)\n ? 'list'\n : isObject(values)\n ? 'named'\n : 'unknown';\n if (mode === 'unknown') {\n return compiled;\n }\n while (index < tokens.length) {\n const token = tokens[index];\n switch (token.type) {\n case 'text':\n compiled.push(token.value);\n break;\n case 'list':\n compiled.push(values[parseInt(token.value, 10)]);\n break;\n case 'named':\n if (mode === 'named') {\n compiled.push(values[token.value]);\n }\n else {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`Type of token '${token.type}' and format of value '${mode}' don't match!`);\n }\n }\n break;\n case 'unknown':\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`Detect 'unknown' type of token!`);\n }\n break;\n }\n index++;\n }\n return compiled;\n}\n\nconst LOCALE_ZH_HANS = 'zh-Hans';\nconst LOCALE_ZH_HANT = 'zh-Hant';\nconst LOCALE_EN = 'en';\nconst LOCALE_FR = 'fr';\nconst LOCALE_ES = 'es';\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\nconst defaultFormatter = new BaseFormatter();\nfunction include(str, parts) {\n return !!parts.find((part) => str.indexOf(part) !== -1);\n}\nfunction startsWith(str, parts) {\n return parts.find((part) => str.indexOf(part) === 0);\n}\nfunction normalizeLocale(locale, messages) {\n if (!locale) {\n return;\n }\n locale = locale.trim().replace(/_/g, '-');\n if (messages && messages[locale]) {\n return locale;\n }\n locale = locale.toLowerCase();\n if (locale === 'chinese') {\n // 支付宝\n return LOCALE_ZH_HANS;\n }\n if (locale.indexOf('zh') === 0) {\n if (locale.indexOf('-hans') > -1) {\n return LOCALE_ZH_HANS;\n }\n if (locale.indexOf('-hant') > -1) {\n return LOCALE_ZH_HANT;\n }\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\n return LOCALE_ZH_HANT;\n }\n return LOCALE_ZH_HANS;\n }\n let locales = [LOCALE_EN, LOCALE_FR, LOCALE_ES];\n if (messages && Object.keys(messages).length > 0) {\n locales = Object.keys(messages);\n }\n const lang = startsWith(locale, locales);\n if (lang) {\n return lang;\n }\n}\nclass I18n {\n constructor({ locale, fallbackLocale, messages, watcher, formater, }) {\n this.locale = LOCALE_EN;\n this.fallbackLocale = LOCALE_EN;\n this.message = {};\n this.messages = {};\n this.watchers = [];\n if (fallbackLocale) {\n this.fallbackLocale = fallbackLocale;\n }\n this.formater = formater || defaultFormatter;\n this.messages = messages || {};\n this.setLocale(locale || LOCALE_EN);\n if (watcher) {\n this.watchLocale(watcher);\n }\n }\n setLocale(locale) {\n const oldLocale = this.locale;\n this.locale = normalizeLocale(locale, this.messages) || this.fallbackLocale;\n if (!this.messages[this.locale]) {\n // 可能初始化时不存在\n this.messages[this.locale] = {};\n }\n this.message = this.messages[this.locale];\n // 仅发生变化时,通知\n if (oldLocale !== this.locale) {\n this.watchers.forEach((watcher) => {\n watcher(this.locale, oldLocale);\n });\n }\n }\n getLocale() {\n return this.locale;\n }\n watchLocale(fn) {\n const index = this.watchers.push(fn) - 1;\n return () => {\n this.watchers.splice(index, 1);\n };\n }\n add(locale, message, override = true) {\n const curMessages = this.messages[locale];\n if (curMessages) {\n if (override) {\n Object.assign(curMessages, message);\n }\n else {\n Object.keys(message).forEach((key) => {\n if (!hasOwn(curMessages, key)) {\n curMessages[key] = message[key];\n }\n });\n }\n }\n else {\n this.messages[locale] = message;\n }\n }\n f(message, values, delimiters) {\n return this.formater.interpolate(message, values, delimiters).join('');\n }\n t(key, locale, values) {\n let message = this.message;\n if (typeof locale === 'string') {\n locale = normalizeLocale(locale, this.messages);\n locale && (message = this.messages[locale]);\n }\n else {\n values = locale;\n }\n if (!hasOwn(message, key)) {\n console.warn(`Cannot translate the value of keypath ${key}. Use the value of keypath as default.`);\n return key;\n }\n return this.formater.interpolate(message[key], values).join('');\n }\n}\n\nfunction watchAppLocale(appVm, i18n) {\n // 需要保证 watch 的触发在组件渲染之前\n if (appVm.$watchLocale) {\n // vue2\n appVm.$watchLocale((newLocale) => {\n i18n.setLocale(newLocale);\n });\n }\n else {\n appVm.$watch(() => appVm.$locale, (newLocale) => {\n i18n.setLocale(newLocale);\n });\n }\n}\nfunction getDefaultLocale() {\n if (typeof uni !== 'undefined' && uni.getLocale) {\n return uni.getLocale();\n }\n // 小程序平台,uni 和 uni-i18n 互相引用,导致访问不到 uni,故在 global 上挂了 getLocale\n if (typeof global !== 'undefined' && global.getLocale) {\n return global.getLocale();\n }\n return LOCALE_EN;\n}\nfunction initVueI18n(locale, messages = {}, fallbackLocale, watcher) {\n // 兼容旧版本入参\n if (typeof locale !== 'string') {\n // ;[locale, messages] = [\n // messages as unknown as string,\n // locale as unknown as LocaleMessages,\n // ]\n // 暂不使用数组解构,uts编译器暂未支持。\n const options = [\n messages,\n locale,\n ];\n locale = options[0];\n messages = options[1];\n }\n if (typeof locale !== 'string') {\n // 因为小程序平台,uni-i18n 和 uni 互相引用,导致此时访问 uni 时,为 undefined\n locale = getDefaultLocale();\n }\n if (typeof fallbackLocale !== 'string') {\n fallbackLocale =\n (typeof __uniConfig !== 'undefined' && __uniConfig.fallbackLocale) ||\n LOCALE_EN;\n }\n const i18n = new I18n({\n locale,\n fallbackLocale,\n messages,\n watcher,\n });\n let t = (key, values) => {\n if (typeof getApp !== 'function') {\n // app view\n /* eslint-disable no-func-assign */\n t = function (key, values) {\n return i18n.t(key, values);\n };\n }\n else {\n let isWatchedAppLocale = false;\n t = function (key, values) {\n const appVm = getApp().$vm;\n // 可能$vm还不存在,比如在支付宝小程序中,组件定义较早,在props的default里使用了t()函数(如uni-goods-nav),此时app还未初始化\n // options: {\n // \ttype: Array,\n // \tdefault () {\n // \t\treturn [{\n // \t\t\ticon: 'shop',\n // \t\t\ttext: t(\"uni-goods-nav.options.shop\"),\n // \t\t}, {\n // \t\t\ticon: 'cart',\n // \t\t\ttext: t(\"uni-goods-nav.options.cart\")\n // \t\t}]\n // \t}\n // },\n if (appVm) {\n // 触发响应式\n appVm.$locale;\n if (!isWatchedAppLocale) {\n isWatchedAppLocale = true;\n watchAppLocale(appVm, i18n);\n }\n }\n return i18n.t(key, values);\n };\n }\n return t(key, values);\n };\n return {\n i18n,\n f(message, values, delimiters) {\n return i18n.f(message, values, delimiters);\n },\n t(key, values) {\n return t(key, values);\n },\n add(locale, message, override = true) {\n return i18n.add(locale, message, override);\n },\n watch(fn) {\n return i18n.watchLocale(fn);\n },\n getLocale() {\n return i18n.getLocale();\n },\n setLocale(newLocale) {\n return i18n.setLocale(newLocale);\n },\n };\n}\n\nconst isString = (val) => typeof val === 'string';\nlet formater;\nfunction hasI18nJson(jsonObj, delimiters) {\n if (!formater) {\n formater = new BaseFormatter();\n }\n return walkJsonObj(jsonObj, (jsonObj, key) => {\n const value = jsonObj[key];\n if (isString(value)) {\n if (isI18nStr(value, delimiters)) {\n return true;\n }\n }\n else {\n return hasI18nJson(value, delimiters);\n }\n });\n}\nfunction parseI18nJson(jsonObj, values, delimiters) {\n if (!formater) {\n formater = new BaseFormatter();\n }\n walkJsonObj(jsonObj, (jsonObj, key) => {\n const value = jsonObj[key];\n if (isString(value)) {\n if (isI18nStr(value, delimiters)) {\n jsonObj[key] = compileStr(value, values, delimiters);\n }\n }\n else {\n parseI18nJson(value, values, delimiters);\n }\n });\n return jsonObj;\n}\nfunction compileI18nJsonStr(jsonStr, { locale, locales, delimiters, }) {\n if (!isI18nStr(jsonStr, delimiters)) {\n return jsonStr;\n }\n if (!formater) {\n formater = new BaseFormatter();\n }\n const localeValues = [];\n Object.keys(locales).forEach((name) => {\n if (name !== locale) {\n localeValues.push({\n locale: name,\n values: locales[name],\n });\n }\n });\n localeValues.unshift({ locale, values: locales[locale] });\n try {\n return JSON.stringify(compileJsonObj(JSON.parse(jsonStr), localeValues, delimiters), null, 2);\n }\n catch (e) { }\n return jsonStr;\n}\nfunction isI18nStr(value, delimiters) {\n return value.indexOf(delimiters[0]) > -1;\n}\nfunction compileStr(value, values, delimiters) {\n return formater.interpolate(value, values, delimiters).join('');\n}\nfunction compileValue(jsonObj, key, localeValues, delimiters) {\n const value = jsonObj[key];\n if (isString(value)) {\n // 存在国际化\n if (isI18nStr(value, delimiters)) {\n jsonObj[key] = compileStr(value, localeValues[0].values, delimiters);\n if (localeValues.length > 1) {\n // 格式化国际化语言\n const valueLocales = (jsonObj[key + 'Locales'] = {});\n localeValues.forEach((localValue) => {\n valueLocales[localValue.locale] = compileStr(value, localValue.values, delimiters);\n });\n }\n }\n }\n else {\n compileJsonObj(value, localeValues, delimiters);\n }\n}\nfunction compileJsonObj(jsonObj, localeValues, delimiters) {\n walkJsonObj(jsonObj, (jsonObj, key) => {\n compileValue(jsonObj, key, localeValues, delimiters);\n });\n return jsonObj;\n}\nfunction walkJsonObj(jsonObj, walk) {\n if (Array.isArray(jsonObj)) {\n for (let i = 0; i < jsonObj.length; i++) {\n if (walk(jsonObj, i)) {\n return true;\n }\n }\n }\n else if (isObject(jsonObj)) {\n for (const key in jsonObj) {\n if (walk(jsonObj, key)) {\n return true;\n }\n }\n }\n return false;\n}\n\nfunction resolveLocale(locales) {\n return (locale) => {\n if (!locale) {\n return locale;\n }\n locale = normalizeLocale(locale) || locale;\n return resolveLocaleChain(locale).find((locale) => locales.indexOf(locale) > -1);\n };\n}\nfunction resolveLocaleChain(locale) {\n const chain = [];\n const tokens = locale.split('-');\n while (tokens.length) {\n chain.push(tokens.join('-'));\n tokens.pop();\n }\n return chain;\n}\n\nexport { BaseFormatter as Formatter, I18n, LOCALE_EN, LOCALE_ES, LOCALE_FR, LOCALE_ZH_HANS, LOCALE_ZH_HANT, compileI18nJsonStr, hasI18nJson, initVueI18n, isI18nStr, isString, normalizeLocale, parseI18nJson, resolveLocale };\n","import { isHTMLTag, isSVGTag, isVoidTag, isString, isFunction, isPlainObject, hyphenate, camelize, normalizeStyle as normalizeStyle$1, parseStringStyle, isArray, normalizeClass as normalizeClass$1, extend, capitalize } from '@vue/shared';\n\nconst BUILT_IN_TAG_NAMES = [\n 'ad',\n 'ad-content-page',\n 'ad-draw',\n 'audio',\n 'button',\n 'camera',\n 'canvas',\n 'checkbox',\n 'checkbox-group',\n 'cover-image',\n 'cover-view',\n 'editor',\n 'form',\n 'functional-page-navigator',\n 'icon',\n 'image',\n 'input',\n 'label',\n 'live-player',\n 'live-pusher',\n 'map',\n 'movable-area',\n 'movable-view',\n 'navigator',\n 'official-account',\n 'open-data',\n 'picker',\n 'picker-view',\n 'picker-view-column',\n 'progress',\n 'radio',\n 'radio-group',\n 'rich-text',\n 'scroll-view',\n 'slider',\n 'swiper',\n 'swiper-item',\n 'switch',\n 'text',\n 'textarea',\n 'video',\n 'view',\n 'web-view',\n 'location-picker',\n 'location-view',\n];\nconst BUILT_IN_TAGS = BUILT_IN_TAG_NAMES.map((tag) => 'uni-' + tag);\nconst TAGS = [\n 'app',\n 'layout',\n 'content',\n 'main',\n 'top-window',\n 'left-window',\n 'right-window',\n 'tabbar',\n 'page',\n 'page-head',\n 'page-wrapper',\n 'page-body',\n 'page-refresh',\n 'actionsheet',\n 'modal',\n 'toast',\n 'resize-sensor',\n 'shadow-root',\n].map((tag) => 'uni-' + tag);\nconst NVUE_BUILT_IN_TAGS = [\n 'svg',\n 'view',\n 'a',\n 'div',\n 'img',\n 'image',\n 'text',\n 'span',\n 'input',\n 'textarea',\n 'spinner',\n 'select',\n // slider 被自定义 u-slider 替代\n // 'slider',\n 'slider-neighbor',\n 'indicator',\n 'canvas',\n 'list',\n 'cell',\n 'header',\n 'loading',\n 'loading-indicator',\n 'refresh',\n 'scrollable',\n 'scroller',\n 'video',\n 'web',\n 'embed',\n 'tabbar',\n 'tabheader',\n 'datepicker',\n 'timepicker',\n 'marquee',\n 'countdown',\n 'dc-switch',\n 'waterfall',\n 'richtext',\n 'recycle-list',\n 'u-scalable',\n 'barcode',\n 'gcanvas',\n];\nconst UVUE_BUILT_IN_TAGS = [\n 'ad',\n 'ad-content-page',\n 'ad-draw',\n 'native-view',\n 'loading-indicator',\n 'list-view',\n 'list-item',\n 'swiper',\n 'swiper-item',\n 'rich-text',\n 'sticky-view',\n 'sticky-header',\n 'sticky-section',\n // 自定义\n 'uni-slider',\n // 原生实现\n 'button',\n 'nested-scroll-header',\n 'nested-scroll-body',\n 'waterflow',\n 'flow-item',\n 'share-element',\n 'cover-view',\n 'cover-image',\n];\nconst UVUE_WEB_BUILT_IN_TAGS = [\n 'list-view',\n 'list-item',\n 'sticky-section',\n 'sticky-header',\n 'cloud-db-element',\n].map((tag) => 'uni-' + tag);\nconst UVUE_IOS_BUILT_IN_TAGS = [\n 'scroll-view',\n 'web-view',\n 'slider',\n 'form',\n 'switch',\n];\nconst UVUE_HARMONY_BUILT_IN_TAGS = [\n // TODO 列出完整列表\n ...BUILT_IN_TAG_NAMES,\n 'volume-panel',\n];\nconst NVUE_U_BUILT_IN_TAGS = [\n 'u-text',\n 'u-image',\n 'u-input',\n 'u-textarea',\n 'u-video',\n 'u-web-view',\n 'u-slider',\n 'u-ad',\n 'u-ad-draw',\n 'u-rich-text',\n];\nconst UNI_UI_CONFLICT_TAGS = ['list-item'].map((tag) => 'uni-' + tag);\nfunction isBuiltInComponent(tag) {\n if (UNI_UI_CONFLICT_TAGS.indexOf(tag) !== -1) {\n return false;\n }\n // h5 平台会被转换为 v-uni-\n const realTag = 'uni-' + tag.replace('v-uni-', '');\n // TODO 区分x和非x\n return (BUILT_IN_TAGS.indexOf(realTag) !== -1 ||\n UVUE_WEB_BUILT_IN_TAGS.indexOf(realTag) !== -1);\n}\nfunction isH5CustomElement(tag, isX = false) {\n if (isX && UVUE_WEB_BUILT_IN_TAGS.indexOf(tag) !== -1) {\n return true;\n }\n return TAGS.indexOf(tag) !== -1 || BUILT_IN_TAGS.indexOf(tag) !== -1;\n}\nfunction isUniXElement(name) {\n return /^I?Uni.*Element(?:Impl)?$/.test(name);\n}\nfunction isH5NativeTag(tag) {\n return (tag !== 'head' &&\n (isHTMLTag(tag) || isSVGTag(tag)) &&\n !isBuiltInComponent(tag));\n}\nfunction isAppNativeTag(tag) {\n return isHTMLTag(tag) || isSVGTag(tag) || isBuiltInComponent(tag);\n}\nconst NVUE_CUSTOM_COMPONENTS = [\n 'ad',\n 'ad-draw',\n 'button',\n 'checkbox-group',\n 'checkbox',\n 'form',\n 'icon',\n 'label',\n 'movable-area',\n 'movable-view',\n 'navigator',\n 'picker',\n 'progress',\n 'radio-group',\n 'radio',\n 'rich-text',\n 'swiper-item',\n 'swiper',\n 'switch',\n 'slider',\n 'picker-view',\n 'picker-view-column',\n];\n// 内置的easycom组件\nconst UVUE_BUILT_IN_EASY_COMPONENTS = ['map', 'camera'];\nfunction isAppUVueBuiltInEasyComponent(tag) {\n return UVUE_BUILT_IN_EASY_COMPONENTS.includes(tag);\n}\n// 主要是指前端实现的组件列表\nconst UVUE_CUSTOM_COMPONENTS = [\n ...NVUE_CUSTOM_COMPONENTS,\n ...UVUE_BUILT_IN_EASY_COMPONENTS,\n];\nfunction isAppUVueNativeTag(tag) {\n // 前端实现的内置组件都会注册一个根组件\n if (tag.startsWith('uni-') && tag.endsWith('-element')) {\n return true;\n }\n if (UVUE_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n if (UVUE_CUSTOM_COMPONENTS.includes(tag)) {\n return false;\n }\n if (isBuiltInComponent(tag)) {\n return true;\n }\n // u-text,u-video...\n if (NVUE_U_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n return false;\n}\nfunction isAppIOSUVueNativeTag(tag) {\n // 前端实现的内置组件都会注册一个根组件\n if (tag.startsWith('uni-') && tag.endsWith('-element')) {\n return true;\n }\n if (NVUE_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n if (UVUE_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n if (UVUE_IOS_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n return false;\n}\nfunction isAppHarmonyUVueNativeTag(tag) {\n // video 目前是easycom实现的\n if (tag === 'video' || tag === 'map') {\n return false;\n }\n // 前端实现的内置组件都会注册一个根组件\n if (tag.startsWith('uni-') && tag.endsWith('-element')) {\n return true;\n }\n if (NVUE_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n if (UVUE_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n if (UVUE_HARMONY_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n return false;\n}\nfunction isAppNVueNativeTag(tag) {\n if (NVUE_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n if (NVUE_CUSTOM_COMPONENTS.includes(tag)) {\n return false;\n }\n if (isBuiltInComponent(tag)) {\n return true;\n }\n // u-text,u-video...\n if (NVUE_U_BUILT_IN_TAGS.includes(tag)) {\n return true;\n }\n return false;\n}\nfunction isMiniProgramNativeTag(tag) {\n return isBuiltInComponent(tag);\n}\nfunction isMiniProgramUVueNativeTag(tag) {\n // 小程序平台内置的自定义元素,会被转换为 view\n if (tag.startsWith('uni-') && tag.endsWith('-element')) {\n return true;\n }\n return isBuiltInComponent(tag);\n}\nfunction createIsCustomElement(tags = []) {\n return function isCustomElement(tag) {\n return tags.includes(tag);\n };\n}\nfunction isComponentTag(tag) {\n return tag[0].toLowerCase() + tag.slice(1) === 'component';\n}\nconst COMPONENT_SELECTOR_PREFIX = 'uni-';\nconst COMPONENT_PREFIX = 'v-' + COMPONENT_SELECTOR_PREFIX;\n// TODO 是否还存在其他需要特殊处理的 void 标签?\nconst APP_VOID_TAGS = ['textarea'];\nfunction isAppVoidTag(tag) {\n return APP_VOID_TAGS.includes(tag) || isVoidTag(tag);\n}\n\nconst LINEFEED = '\\n';\nconst NAVBAR_HEIGHT = 44;\nconst TABBAR_HEIGHT = 50;\nconst ON_REACH_BOTTOM_DISTANCE = 50;\nconst RESPONSIVE_MIN_WIDTH = 768;\nconst UNI_STORAGE_LOCALE = 'UNI_LOCALE';\n// quickapp-webview 不能使用 default 作为插槽名称\nconst SLOT_DEFAULT_NAME = 'd';\nconst COMPONENT_NAME_PREFIX = 'VUni';\nconst I18N_JSON_DELIMITERS = ['%', '%'];\nconst PRIMARY_COLOR = '#007aff';\nconst SELECTED_COLOR = '#0062cc'; // 选中的颜色,如选项卡默认的选中颜色\nconst BACKGROUND_COLOR = '#f7f7f7'; // 背景色,如标题栏默认背景色\nconst UNI_SSR = '__uniSSR';\nconst UNI_SSR_TITLE = 'title';\nconst UNI_SSR_STORE = 'store';\nconst UNI_SSR_DATA = 'data';\nconst UNI_SSR_GLOBAL_DATA = 'globalData';\nconst SCHEME_RE = /^([a-z-]+:)?\\/\\//i;\nconst DATA_RE = /^data:.*,.*/;\nconst WEB_INVOKE_APPSERVICE = 'WEB_INVOKE_APPSERVICE';\nconst WXS_PROTOCOL = 'wxs://';\nconst JSON_PROTOCOL = 'json://';\nconst WXS_MODULES = 'wxsModules';\nconst RENDERJS_MODULES = 'renderjsModules';\n// lifecycle\n// App and Page\nconst ON_SHOW = 'onShow';\nconst ON_HIDE = 'onHide';\n//App\nconst ON_LAUNCH = 'onLaunch';\nconst ON_ERROR = 'onError';\nconst ON_THEME_CHANGE = 'onThemeChange';\nconst OFF_THEME_CHANGE = 'offThemeChange';\nconst ON_HOST_THEME_CHANGE = 'onHostThemeChange';\nconst OFF_HOST_THEME_CHANGE = 'offHostThemeChange';\nconst ON_KEYBOARD_HEIGHT_CHANGE = 'onKeyboardHeightChange';\nconst ON_PAGE_NOT_FOUND = 'onPageNotFound';\nconst ON_UNHANDLE_REJECTION = 'onUnhandledRejection';\nconst ON_EXIT = 'onExit';\n//Page\nconst ON_LOAD = 'onLoad';\nconst ON_READY = 'onReady';\nconst ON_UNLOAD = 'onUnload';\n// 百度特有\nconst ON_INIT = 'onInit';\n// 微信特有\nconst ON_SAVE_EXIT_STATE = 'onSaveExitState';\nconst ON_RESIZE = 'onResize';\nconst ON_BACK_PRESS = 'onBackPress';\nconst ON_PAGE_SCROLL = 'onPageScroll';\nconst ON_TAB_ITEM_TAP = 'onTabItemTap';\nconst ON_REACH_BOTTOM = 'onReachBottom';\nconst ON_PULL_DOWN_REFRESH = 'onPullDownRefresh';\nconst ON_SHARE_TIMELINE = 'onShareTimeline';\nconst ON_SHARE_CHAT = 'onShareChat'; // xhs-share\nconst ON_ADD_TO_FAVORITES = 'onAddToFavorites';\nconst ON_SHARE_APP_MESSAGE = 'onShareAppMessage';\n// navigationBar\nconst ON_NAVIGATION_BAR_BUTTON_TAP = 'onNavigationBarButtonTap';\nconst ON_NAVIGATION_BAR_CHANGE = 'onNavigationBarChange';\nconst ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED = 'onNavigationBarSearchInputClicked';\nconst ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED = 'onNavigationBarSearchInputChanged';\nconst ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED = 'onNavigationBarSearchInputConfirmed';\nconst ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED = 'onNavigationBarSearchInputFocusChanged';\n// framework\nconst ON_APP_ENTER_FOREGROUND = 'onAppEnterForeground';\nconst ON_APP_ENTER_BACKGROUND = 'onAppEnterBackground';\nconst ON_WEB_INVOKE_APP_SERVICE = 'onWebInvokeAppService';\nconst ON_WXS_INVOKE_CALL_METHOD = 'onWxsInvokeCallMethod';\n// mergeVirtualHostAttributes\nconst VIRTUAL_HOST_STYLE = 'virtualHostStyle';\nconst VIRTUAL_HOST_CLASS = 'virtualHostClass';\nconst VIRTUAL_HOST_HIDDEN = 'virtualHostHidden';\nconst VIRTUAL_HOST_ID = 'virtualHostId';\n\nfunction cache(fn) {\n const cache = Object.create(null);\n return (str) => {\n const hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n}\nfunction cacheStringFunction(fn) {\n return cache(fn);\n}\nfunction getLen(str = '') {\n return ('' + str).replace(/[^\\x00-\\xff]/g, '**').length;\n}\nfunction hasLeadingSlash(str) {\n return str.indexOf('/') === 0;\n}\nfunction addLeadingSlash(str) {\n return hasLeadingSlash(str) ? str : '/' + str;\n}\nfunction removeLeadingSlash(str) {\n return hasLeadingSlash(str) ? str.slice(1) : str;\n}\nconst invokeArrayFns = (fns, arg) => {\n let ret;\n for (let i = 0; i < fns.length; i++) {\n ret = fns[i](arg);\n }\n return ret;\n};\nfunction updateElementStyle(element, styles) {\n for (const attrName in styles) {\n element.style[attrName] = styles[attrName];\n }\n}\nfunction once(fn, ctx = null) {\n let res;\n return ((...args) => {\n if (fn) {\n res = fn.apply(ctx, args);\n fn = null;\n }\n return res;\n });\n}\nconst sanitise = (val) => (val && JSON.parse(JSON.stringify(val))) || val;\nconst _completeValue = (value) => (value > 9 ? value : '0' + value);\nfunction formatDateTime({ date = new Date(), mode = 'date' }) {\n if (mode === 'time') {\n return (_completeValue(date.getHours()) + ':' + _completeValue(date.getMinutes()));\n }\n else {\n return (date.getFullYear() +\n '-' +\n _completeValue(date.getMonth() + 1) +\n '-' +\n _completeValue(date.getDate()));\n }\n}\nfunction callOptions(options, data) {\n options = options || {};\n if (isString(data)) {\n data = {\n errMsg: data,\n };\n }\n if (/:ok$/.test(data.errMsg)) {\n if (isFunction(options.success)) {\n options.success(data);\n }\n }\n else {\n if (isFunction(options.fail)) {\n options.fail(data);\n }\n }\n if (isFunction(options.complete)) {\n options.complete(data);\n }\n}\nfunction getValueByDataPath(obj, path) {\n if (!isString(path)) {\n return;\n }\n path = path.replace(/\\[(\\d+)\\]/g, '.$1');\n const parts = path.split('.');\n let key = parts[0];\n if (!obj) {\n obj = {};\n }\n if (parts.length === 1) {\n return obj[key];\n }\n return getValueByDataPath(obj[key], parts.slice(1).join('.'));\n}\nfunction sortObject(obj) {\n let sortObj = {};\n if (isPlainObject(obj)) {\n Object.keys(obj)\n .sort()\n .forEach((key) => {\n const _key = key;\n sortObj[_key] = obj[_key];\n });\n }\n return !Object.keys(sortObj) ? obj : sortObj;\n}\nfunction getGlobalOnce() {\n if (typeof globalThis !== 'undefined') {\n return globalThis;\n }\n // worker\n if (typeof self !== 'undefined') {\n return self;\n }\n // browser\n if (typeof window !== 'undefined') {\n return window;\n }\n // nodejs\n // if (typeof global !== 'undefined') {\n // return global\n // }\n function g() {\n return this;\n }\n if (typeof g() !== 'undefined') {\n return g();\n }\n return (function () {\n return new Function('return this')();\n })();\n}\nlet g = undefined;\nfunction getGlobal() {\n if (g) {\n return g;\n }\n g = getGlobalOnce();\n return g;\n}\n\nfunction isComponentInternalInstance(vm) {\n return !!vm.appContext;\n}\nfunction resolveComponentInstance(instance) {\n return (instance &&\n (isComponentInternalInstance(instance) ? instance.proxy : instance));\n}\nfunction resolveOwnerVm(vm) {\n if (!vm) {\n return;\n }\n let componentName = vm.type.name;\n while (componentName && isBuiltInComponent(hyphenate(componentName))) {\n // ownerInstance 内置组件需要使用父 vm\n vm = vm.parent;\n componentName = vm.type.name;\n }\n return vm.proxy;\n}\nfunction isElement(el) {\n // Element\n return el.nodeType === 1;\n}\nfunction resolveOwnerEl(instance, multi = false) {\n const { vnode } = instance;\n if (isElement(vnode.el)) {\n return multi ? (vnode.el ? [vnode.el] : []) : vnode.el;\n }\n const { subTree } = instance;\n // ShapeFlags.ARRAY_CHILDREN = 1<<4\n if (subTree.shapeFlag & 16) {\n const elemVNodes = subTree.children.filter((vnode) => vnode.el && isElement(vnode.el));\n if (elemVNodes.length > 0) {\n if (multi) {\n return elemVNodes.map((node) => node.el);\n }\n return elemVNodes[0].el;\n }\n }\n return multi ? (vnode.el ? [vnode.el] : []) : vnode.el;\n}\nfunction dynamicSlotName(name) {\n return name === 'default' ? SLOT_DEFAULT_NAME : name;\n}\nconst customizeRE = /:/g;\nfunction customizeEvent(str) {\n return camelize(str.replace(customizeRE, '-'));\n}\nfunction normalizeStyle(value) {\n const g = getGlobal();\n if (g && g.UTSJSONObject && value instanceof g.UTSJSONObject) {\n const styleObject = {};\n g.UTSJSONObject.keys(value).forEach((key) => {\n styleObject[key] = value[key];\n });\n return normalizeStyle$1(styleObject);\n }\n else if (value instanceof Map) {\n const styleObject = {};\n value.forEach((value, key) => {\n styleObject[key] = value;\n });\n return normalizeStyle$1(styleObject);\n }\n else if (isString(value)) {\n return parseStringStyle(value);\n }\n else if (isArray(value)) {\n const res = {};\n for (let i = 0; i < value.length; i++) {\n const item = value[i];\n const normalized = isString(item)\n ? parseStringStyle(item)\n : normalizeStyle(item);\n if (normalized) {\n for (const key in normalized) {\n res[key] = normalized[key];\n }\n }\n }\n return res;\n }\n else {\n return normalizeStyle$1(value);\n }\n}\nfunction normalizeClass(value) {\n let res = '';\n const g = getGlobal();\n if (g && g.UTSJSONObject && value instanceof g.UTSJSONObject) {\n g.UTSJSONObject.keys(value).forEach((key) => {\n if (value[key]) {\n res += key + ' ';\n }\n });\n }\n else if (value instanceof Map) {\n value.forEach((value, key) => {\n if (value) {\n res += key + ' ';\n }\n });\n }\n else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n const normalized = normalizeClass(value[i]);\n if (normalized) {\n res += normalized + ' ';\n }\n }\n }\n else {\n res = normalizeClass$1(value);\n }\n return res.trim();\n}\nfunction normalizeProps(props) {\n if (!props)\n return null;\n let { class: klass, style } = props;\n if (klass && !isString(klass)) {\n props.class = normalizeClass(klass);\n }\n if (style) {\n props.style = normalizeStyle(style);\n }\n return props;\n}\n\nlet lastLogTime = 0;\nfunction formatLog(module, ...args) {\n const now = Date.now();\n const diff = lastLogTime ? now - lastLogTime : 0;\n lastLogTime = now;\n return `[${now}][${diff}ms][${module}]:${args\n .map((arg) => JSON.stringify(arg))\n .join(' ')}`;\n}\n\nfunction formatKey(key) {\n return camelize(key.substring(5));\n}\n// question/139181,增加副作用,避免 initCustomDataset 在 build 下被 tree-shaking\nconst initCustomDatasetOnce = /*#__PURE__*/ once((isBuiltInElement) => {\n isBuiltInElement =\n isBuiltInElement || ((el) => el.tagName.startsWith('UNI-'));\n const prototype = HTMLElement.prototype;\n const setAttribute = prototype.setAttribute;\n prototype.setAttribute = function (key, value) {\n if (key.startsWith('data-') && isBuiltInElement(this)) {\n const dataset = this.__uniDataset ||\n (this.__uniDataset = {});\n dataset[formatKey(key)] = value;\n }\n setAttribute.call(this, key, value);\n };\n const removeAttribute = prototype.removeAttribute;\n prototype.removeAttribute = function (key) {\n if (this.__uniDataset &&\n key.startsWith('data-') &&\n isBuiltInElement(this)) {\n delete this.__uniDataset[formatKey(key)];\n }\n removeAttribute.call(this, key);\n };\n});\nfunction getCustomDataset(el) {\n return extend({}, el.dataset, el.__uniDataset);\n}\n\nconst unitRE = new RegExp(`\"[^\"]+\"|'[^']+'|url\\\\([^)]+\\\\)|(\\\\d*\\\\.?\\\\d+)[r|u]px`, 'g');\nfunction toFixed(number, precision) {\n const multiplier = Math.pow(10, precision + 1);\n const wholeNumber = Math.floor(number * multiplier);\n return (Math.round(wholeNumber / 10) * 10) / multiplier;\n}\nconst defaultRpx2Unit = {\n unit: 'rem',\n unitRatio: 10 / 320,\n unitPrecision: 5,\n};\nconst defaultMiniProgramRpx2Unit = {\n unit: 'rpx',\n unitRatio: 1,\n unitPrecision: 1,\n};\nconst defaultNVueRpx2Unit = defaultMiniProgramRpx2Unit;\nfunction createRpx2Unit(unit, unitRatio, unitPrecision) {\n // ignore: rpxCalcIncludeWidth\n return (val) => val.replace(unitRE, (m, $1) => {\n if (!$1) {\n return m;\n }\n if (unitRatio === 1) {\n return `${$1}${unit}`;\n }\n const value = toFixed(parseFloat($1) * unitRatio, unitPrecision);\n return value === 0 ? '0' : `${value}${unit}`;\n });\n}\n\nfunction passive(passive) {\n return { passive };\n}\nfunction normalizeDataset(el) {\n // TODO\n return JSON.parse(JSON.stringify(el.dataset || {}));\n}\nfunction normalizeTarget(el) {\n const { id, offsetTop, offsetLeft } = el;\n return {\n id,\n dataset: getCustomDataset(el),\n offsetTop,\n offsetLeft,\n };\n}\nfunction addFont(family, source, desc) {\n const fonts = document.fonts;\n if (fonts) {\n const fontFace = new FontFace(family, source, desc);\n return fontFace.load().then(() => {\n fonts.add && fonts.add(fontFace);\n });\n }\n return new Promise((resolve) => {\n const style = document.createElement('style');\n const values = [];\n if (desc) {\n const { style, weight, stretch, unicodeRange, variant, featureSettings } = desc;\n style && values.push(`font-style:${style}`);\n weight && values.push(`font-weight:${weight}`);\n stretch && values.push(`font-stretch:${stretch}`);\n unicodeRange && values.push(`unicode-range:${unicodeRange}`);\n variant && values.push(`font-variant:${variant}`);\n featureSettings && values.push(`font-feature-settings:${featureSettings}`);\n }\n style.innerText = `@font-face{font-family:\"${family}\";src:${source};${values.join(';')}}`;\n document.head.appendChild(style);\n resolve();\n });\n}\nfunction scrollTo(scrollTop, duration, isH5) {\n if (isString(scrollTop)) {\n const el = document.querySelector(scrollTop);\n if (el) {\n const { top } = el.getBoundingClientRect();\n scrollTop = top + window.pageYOffset;\n // 如果存在,减去 高度\n const pageHeader = document.querySelector('uni-page-head');\n if (pageHeader) {\n scrollTop -= pageHeader.offsetHeight;\n }\n }\n }\n if (scrollTop < 0) {\n scrollTop = 0;\n }\n const documentElement = document.documentElement;\n const { clientHeight, scrollHeight } = documentElement;\n scrollTop = Math.min(scrollTop, scrollHeight - clientHeight);\n if (duration === 0) {\n // 部分浏览器(比如微信)中 scrollTop 的值需要通过 document.body 来控制\n documentElement.scrollTop = document.body.scrollTop = scrollTop;\n return;\n }\n if (window.scrollY === scrollTop) {\n return;\n }\n const scrollTo = (duration) => {\n if (duration <= 0) {\n window.scrollTo(0, scrollTop);\n return;\n }\n const distaince = scrollTop - window.scrollY;\n requestAnimationFrame(function () {\n window.scrollTo(0, window.scrollY + (distaince / duration) * 10);\n scrollTo(duration - 10);\n });\n };\n scrollTo(duration);\n}\n\nconst encode = encodeURIComponent;\nfunction stringifyQuery(obj, encodeStr = encode) {\n const res = obj\n ? Object.keys(obj)\n .map((key) => {\n let val = obj[key];\n if (typeof val === undefined || val === null) {\n val = '';\n }\n else if (isPlainObject(val)) {\n val = JSON.stringify(val);\n }\n return encodeStr(key) + '=' + encodeStr(val);\n })\n .filter((x) => x.length > 0)\n .join('&')\n : null;\n return res ? `?${res}` : '';\n}\n/**\n * Decode text using `decodeURIComponent`. Returns the original text if it\n * fails.\n *\n * @param text - string to decode\n * @returns decoded string\n */\nfunction decode(text) {\n try {\n return decodeURIComponent('' + text);\n }\n catch (err) { }\n return '' + text;\n}\nfunction decodedQuery(query = {}) {\n const decodedQuery = {};\n Object.keys(query).forEach((name) => {\n try {\n decodedQuery[name] = decode(query[name]);\n }\n catch (e) {\n decodedQuery[name] = query[name];\n }\n });\n return decodedQuery;\n}\nconst PLUS_RE = /\\+/g; // %2B\n/**\n * https://github.com/vuejs/vue-router-next/blob/master/src/query.ts\n * @internal\n *\n * @param search - search string to parse\n * @returns a query object\n */\nfunction parseQuery(search) {\n const query = {};\n // avoid creating an object with an empty key and empty value\n // because of split('&')\n if (search === '' || search === '?')\n return query;\n const hasLeadingIM = search[0] === '?';\n const searchParams = (hasLeadingIM ? search.slice(1) : search).split('&');\n for (let i = 0; i < searchParams.length; ++i) {\n // pre decode the + into space\n const searchParam = searchParams[i].replace(PLUS_RE, ' ');\n // allow the = character\n let eqPos = searchParam.indexOf('=');\n let key = decode(eqPos < 0 ? searchParam : searchParam.slice(0, eqPos));\n let value = eqPos < 0 ? null : decode(searchParam.slice(eqPos + 1));\n if (key in query) {\n // an extra variable for ts types\n let currentValue = query[key];\n if (!isArray(currentValue)) {\n currentValue = query[key] = [currentValue];\n }\n currentValue.push(value);\n }\n else {\n query[key] = value;\n }\n }\n return query;\n}\n\nfunction parseUrl(url) {\n const [path, querystring] = url.split('?', 2);\n return {\n path,\n query: parseQuery(querystring || ''),\n };\n}\n\nfunction parseNVueDataset(attr) {\n const dataset = {};\n if (attr) {\n Object.keys(attr).forEach((key) => {\n if (key.indexOf('data-') === 0) {\n dataset[key.replace('data-', '')] = attr[key];\n }\n });\n }\n return dataset;\n}\n\nfunction plusReady(callback) {\n if (!isFunction(callback)) {\n return;\n }\n if (window.plus) {\n return callback();\n }\n document.addEventListener('plusready', callback);\n}\n\nclass DOMException extends Error {\n constructor(message) {\n super(message);\n this.name = 'DOMException';\n }\n}\n\nfunction normalizeEventType(type, options) {\n if (options) {\n if (options.capture) {\n type += 'Capture';\n }\n if (options.once) {\n type += 'Once';\n }\n if (options.passive) {\n type += 'Passive';\n }\n }\n return `on${capitalize(camelize(type))}`;\n}\nclass UniEvent {\n constructor(type, opts) {\n this.defaultPrevented = false;\n this.timeStamp = Date.now();\n this._stop = false;\n this._end = false;\n this.type = type;\n this.bubbles = !!opts.bubbles;\n this.cancelable = !!opts.cancelable;\n }\n preventDefault() {\n this.defaultPrevented = true;\n }\n stopImmediatePropagation() {\n this._end = this._stop = true;\n }\n stopPropagation() {\n this._stop = true;\n }\n}\nfunction createUniEvent(evt) {\n if (evt instanceof UniEvent) {\n return evt;\n }\n const [type] = parseEventName(evt.type);\n const uniEvent = new UniEvent(type, {\n bubbles: false,\n cancelable: false,\n });\n extend(uniEvent, evt);\n return uniEvent;\n}\nclass UniEventTarget {\n constructor() {\n this.listeners = Object.create(null);\n }\n dispatchEvent(evt) {\n const listeners = this.listeners[evt.type];\n if (!listeners) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error(formatLog('dispatchEvent', this.nodeId), evt.type, 'not found');\n }\n return false;\n }\n // 格式化事件类型\n const event = createUniEvent(evt);\n const len = listeners.length;\n for (let i = 0; i < len; i++) {\n listeners[i].call(this, event);\n if (event._end) {\n break;\n }\n }\n return event.cancelable && event.defaultPrevented;\n }\n addEventListener(type, listener, options) {\n type = normalizeEventType(type, options);\n (this.listeners[type] || (this.listeners[type] = [])).push(listener);\n }\n removeEventListener(type, callback, options) {\n type = normalizeEventType(type, options);\n const listeners = this.listeners[type];\n if (!listeners) {\n return;\n }\n const index = listeners.indexOf(callback);\n if (index > -1) {\n listeners.splice(index, 1);\n }\n }\n}\nconst optionsModifierRE = /(?:Once|Passive|Capture)$/;\nfunction parseEventName(name) {\n let options;\n if (optionsModifierRE.test(name)) {\n options = {};\n let m;\n while ((m = name.match(optionsModifierRE))) {\n name = name.slice(0, name.length - m[0].length);\n options[m[0].toLowerCase()] = true;\n }\n }\n return [hyphenate(name.slice(2)), options];\n}\n\nconst EventModifierFlags = /*#__PURE__*/ (() => {\n return {\n stop: 1,\n prevent: 1 << 1,\n self: 1 << 2,\n };\n})();\nfunction encodeModifier(modifiers) {\n let flag = 0;\n if (modifiers.includes('stop')) {\n flag |= EventModifierFlags.stop;\n }\n if (modifiers.includes('prevent')) {\n flag |= EventModifierFlags.prevent;\n }\n if (modifiers.includes('self')) {\n flag |= EventModifierFlags.self;\n }\n return flag;\n}\n\nconst NODE_TYPE_PAGE = 0;\nconst NODE_TYPE_ELEMENT = 1;\nconst NODE_TYPE_TEXT = 3;\nconst NODE_TYPE_COMMENT = 8;\nfunction sibling(node, type) {\n const { parentNode } = node;\n if (!parentNode) {\n return null;\n }\n const { childNodes } = parentNode;\n return childNodes[childNodes.indexOf(node) + (type === 'n' ? 1 : -1)] || null;\n}\nfunction removeNode(node) {\n const { parentNode } = node;\n if (parentNode) {\n const { childNodes } = parentNode;\n const index = childNodes.indexOf(node);\n if (index > -1) {\n node.parentNode = null;\n childNodes.splice(index, 1);\n }\n }\n}\nfunction checkNodeId(node) {\n if (!node.nodeId && node.pageNode) {\n node.nodeId = node.pageNode.genId();\n }\n}\n// 为优化性能,各平台不使用proxy来实现node的操作拦截,而是直接通过pageNode定制\nclass UniNode extends UniEventTarget {\n constructor(nodeType, nodeName, container) {\n super();\n this.pageNode = null;\n this.parentNode = null;\n this._text = null;\n if (container) {\n const { pageNode } = container;\n if (pageNode) {\n this.pageNode = pageNode;\n this.nodeId = pageNode.genId();\n !pageNode.isUnmounted && pageNode.onCreate(this, nodeName);\n }\n }\n this.nodeType = nodeType;\n this.nodeName = nodeName;\n this.childNodes = [];\n }\n get firstChild() {\n return this.childNodes[0] || null;\n }\n get lastChild() {\n const { childNodes } = this;\n const length = childNodes.length;\n return length ? childNodes[length - 1] : null;\n }\n get nextSibling() {\n return sibling(this, 'n');\n }\n get nodeValue() {\n return null;\n }\n set nodeValue(_val) { }\n get textContent() {\n return this._text || '';\n }\n set textContent(text) {\n this._text = text;\n if (this.pageNode && !this.pageNode.isUnmounted) {\n this.pageNode.onTextContent(this, text);\n }\n }\n get parentElement() {\n const { parentNode } = this;\n if (parentNode && parentNode.nodeType === NODE_TYPE_ELEMENT) {\n return parentNode;\n }\n return null;\n }\n get previousSibling() {\n return sibling(this, 'p');\n }\n appendChild(newChild) {\n return this.insertBefore(newChild, null);\n }\n cloneNode(deep) {\n const cloned = extend(Object.create(Object.getPrototypeOf(this)), this);\n const { attributes } = cloned;\n if (attributes) {\n cloned.attributes = extend({}, attributes);\n }\n if (deep) {\n cloned.childNodes = cloned.childNodes.map((childNode) => childNode.cloneNode(true));\n }\n return cloned;\n }\n insertBefore(newChild, refChild) {\n // 先从现在的父节点移除(注意:不能触发onRemoveChild,否则会生成先remove该 id,再 insert)\n removeNode(newChild);\n newChild.pageNode = this.pageNode;\n newChild.parentNode = this;\n checkNodeId(newChild);\n const { childNodes } = this;\n if (refChild) {\n const index = childNodes.indexOf(refChild);\n if (index === -1) {\n throw new DOMException(`Failed to execute 'insertBefore' on 'Node': The node before which the new node is to be inserted is not a child of this node.`);\n }\n childNodes.splice(index, 0, newChild);\n }\n else {\n childNodes.push(newChild);\n }\n return this.pageNode && !this.pageNode.isUnmounted\n ? this.pageNode.onInsertBefore(this, newChild, refChild)\n : newChild;\n }\n removeChild(oldChild) {\n const { childNodes } = this;\n const index = childNodes.indexOf(oldChild);\n if (index === -1) {\n throw new DOMException(`Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node.`);\n }\n oldChild.parentNode = null;\n childNodes.splice(index, 1);\n return this.pageNode && !this.pageNode.isUnmounted\n ? this.pageNode.onRemoveChild(oldChild)\n : oldChild;\n }\n}\nconst ATTR_CLASS = 'class';\nconst ATTR_STYLE = 'style';\nconst ATTR_INNER_HTML = 'innerHTML';\nconst ATTR_TEXT_CONTENT = 'textContent';\nconst ATTR_V_SHOW = '.vShow';\nconst ATTR_V_OWNER_ID = '.vOwnerId';\nconst ATTR_V_RENDERJS = '.vRenderjs';\nconst ATTR_CHANGE_PREFIX = 'change:';\nclass UniBaseNode extends UniNode {\n constructor(nodeType, nodeName, container) {\n super(nodeType, nodeName, container);\n this.attributes = Object.create(null);\n this.style = null;\n this.vShow = null;\n this._html = null;\n }\n get className() {\n return (this.attributes[ATTR_CLASS] || '');\n }\n set className(val) {\n this.setAttribute(ATTR_CLASS, val);\n }\n get innerHTML() {\n return '';\n }\n set innerHTML(html) {\n this._html = html;\n }\n addEventListener(type, listener, options) {\n super.addEventListener(type, listener, options);\n if (this.pageNode && !this.pageNode.isUnmounted) {\n if (listener.wxsEvent) {\n this.pageNode.onAddWxsEvent(this, normalizeEventType(type, options), listener.wxsEvent, encodeModifier(listener.modifiers || []));\n }\n else {\n this.pageNode.onAddEvent(this, normalizeEventType(type, options), encodeModifier(listener.modifiers || []));\n }\n }\n }\n removeEventListener(type, callback, options) {\n super.removeEventListener(type, callback, options);\n if (this.pageNode && !this.pageNode.isUnmounted) {\n this.pageNode.onRemoveEvent(this, normalizeEventType(type, options));\n }\n }\n getAttribute(qualifiedName) {\n if (qualifiedName === ATTR_STYLE) {\n return this.style;\n }\n return this.attributes[qualifiedName];\n }\n removeAttribute(qualifiedName) {\n if (qualifiedName == ATTR_STYLE) {\n this.style = null;\n }\n else {\n delete this.attributes[qualifiedName];\n }\n if (this.pageNode && !this.pageNode.isUnmounted) {\n this.pageNode.onRemoveAttribute(this, qualifiedName);\n }\n }\n setAttribute(qualifiedName, value) {\n if (qualifiedName === ATTR_STYLE) {\n this.style = value;\n }\n else {\n this.attributes[qualifiedName] = value;\n }\n if (this.pageNode && !this.pageNode.isUnmounted) {\n this.pageNode.onSetAttribute(this, qualifiedName, value);\n }\n }\n toJSON({ attr, normalize, } = {}) {\n const { attributes, style, listeners, _text } = this;\n const res = {};\n if (Object.keys(attributes).length) {\n res.a = normalize ? normalize(attributes) : attributes;\n }\n const events = Object.keys(listeners);\n if (events.length) {\n let w = undefined;\n const e = {};\n events.forEach((name) => {\n const handlers = listeners[name];\n if (handlers.length) {\n // 可能存在多个 handler 且不同 modifiers 吗?\n const { wxsEvent, modifiers } = handlers[0];\n const modifier = encodeModifier(modifiers || []);\n if (!wxsEvent) {\n e[name] = modifier;\n }\n else {\n if (!w) {\n w = {};\n }\n w[name] = [normalize ? normalize(wxsEvent) : wxsEvent, modifier];\n }\n }\n });\n res.e = normalize ? normalize(e, false) : e;\n if (w) {\n res.w = normalize ? normalize(w, false) : w;\n }\n }\n if (style !== null) {\n res.s = normalize ? normalize(style) : style;\n }\n if (!attr) {\n res.i = this.nodeId;\n res.n = this.nodeName;\n }\n if (_text !== null) {\n res.t = normalize ? normalize(_text) : _text;\n }\n return res;\n }\n}\n\nclass UniCommentNode extends UniNode {\n constructor(text, container) {\n super(NODE_TYPE_COMMENT, '#comment', container);\n this._text = (process.env.NODE_ENV !== 'production') ? text : '';\n }\n toJSON(opts = {}) {\n // 暂时不传递 text 到 view 层,没啥意义,节省点数据量\n return opts.attr\n ? {}\n : {\n i: this.nodeId,\n };\n // return opts.attr\n // ? { t: this._text as string }\n // : {\n // i: this.nodeId!,\n // t: this._text as string,\n // }\n }\n}\n\nclass UniElement extends UniBaseNode {\n constructor(nodeName, container) {\n super(NODE_TYPE_ELEMENT, nodeName.toUpperCase(), container);\n this.tagName = this.nodeName;\n }\n}\nclass UniInputElement extends UniElement {\n get value() {\n return this.getAttribute('value');\n }\n set value(val) {\n this.setAttribute('value', val);\n }\n}\nclass UniTextAreaElement extends UniInputElement {\n}\n\nclass UniTextNode extends UniBaseNode {\n constructor(text, container) {\n super(NODE_TYPE_TEXT, '#text', container);\n this._text = text;\n }\n get nodeValue() {\n return this._text || '';\n }\n set nodeValue(text) {\n this._text = text;\n if (this.pageNode && !this.pageNode.isUnmounted) {\n this.pageNode.onNodeValue(this, text);\n }\n }\n}\n\nconst forcePatchProps = {\n AD: ['data'],\n 'AD-DRAW': ['data'],\n 'LIVE-PLAYER': ['picture-in-picture-mode'],\n MAP: [\n 'markers',\n 'polyline',\n 'circles',\n 'controls',\n 'include-points',\n 'polygons',\n ],\n PICKER: ['range', 'value'],\n 'PICKER-VIEW': ['value'],\n 'RICH-TEXT': ['nodes'],\n VIDEO: ['danmu-list', 'header'],\n 'WEB-VIEW': ['webview-styles'],\n};\nconst forcePatchPropKeys = ['animation'];\n\nconst forcePatchProp = (el, key) => {\n if (forcePatchPropKeys.indexOf(key) > -1) {\n return true;\n }\n const keys = forcePatchProps[el.nodeName];\n if (keys && keys.indexOf(key) > -1) {\n return true;\n }\n return false;\n};\n\nconst ACTION_TYPE_PAGE_CREATE = 1;\nconst ACTION_TYPE_PAGE_CREATED = 2;\nconst ACTION_TYPE_CREATE = 3;\nconst ACTION_TYPE_INSERT = 4;\nconst ACTION_TYPE_REMOVE = 5;\nconst ACTION_TYPE_SET_ATTRIBUTE = 6;\nconst ACTION_TYPE_REMOVE_ATTRIBUTE = 7;\nconst ACTION_TYPE_ADD_EVENT = 8;\nconst ACTION_TYPE_REMOVE_EVENT = 9;\nconst ACTION_TYPE_SET_TEXT = 10;\nconst ACTION_TYPE_ADD_WXS_EVENT = 12;\nconst ACTION_TYPE_PAGE_SCROLL = 15;\nconst ACTION_TYPE_EVENT = 20;\n\n/**\n * 需要手动传入 timer,主要是解决 App 平台的定制 timer\n */\nfunction debounce(fn, delay, { clearTimeout, setTimeout }) {\n let timeout;\n const newFn = function () {\n clearTimeout(timeout);\n const timerFn = () => fn.apply(this, arguments);\n timeout = setTimeout(timerFn, delay);\n };\n newFn.cancel = function () {\n clearTimeout(timeout);\n };\n return newFn;\n}\n\nclass EventChannel {\n constructor(id, events) {\n this.id = id;\n this.listener = {};\n this.emitCache = [];\n if (events) {\n Object.keys(events).forEach((name) => {\n this.on(name, events[name]);\n });\n }\n }\n emit(eventName, ...args) {\n const fns = this.listener[eventName];\n if (!fns) {\n return this.emitCache.push({\n eventName,\n args,\n });\n }\n fns.forEach((opt) => {\n opt.fn.apply(opt.fn, args);\n });\n this.listener[eventName] = fns.filter((opt) => opt.type !== 'once');\n }\n on(eventName, fn) {\n this._addListener(eventName, 'on', fn);\n this._clearCache(eventName);\n }\n once(eventName, fn) {\n this._addListener(eventName, 'once', fn);\n this._clearCache(eventName);\n }\n off(eventName, fn) {\n const fns = this.listener[eventName];\n if (!fns) {\n return;\n }\n if (fn) {\n for (let i = 0; i < fns.length;) {\n if (fns[i].fn === fn) {\n fns.splice(i, 1);\n i--;\n }\n i++;\n }\n }\n else {\n delete this.listener[eventName];\n }\n }\n _clearCache(eventName) {\n for (let index = 0; index < this.emitCache.length; index++) {\n const cache = this.emitCache[index];\n const _name = eventName\n ? cache.eventName === eventName\n ? eventName\n : null\n : cache.eventName;\n if (!_name)\n continue;\n const location = this.emit.apply(this, [_name, ...cache.args]);\n if (typeof location === 'number') {\n this.emitCache.pop();\n continue;\n }\n this.emitCache.splice(index, 1);\n index--;\n }\n }\n _addListener(eventName, type, fn) {\n (this.listener[eventName] || (this.listener[eventName] = [])).push({\n fn,\n type,\n });\n }\n}\n\nconst PAGE_HOOKS = [\n ON_INIT,\n ON_LOAD,\n ON_SHOW,\n ON_HIDE,\n ON_UNLOAD,\n ON_BACK_PRESS,\n ON_PAGE_SCROLL,\n ON_TAB_ITEM_TAP,\n ON_REACH_BOTTOM,\n ON_PULL_DOWN_REFRESH,\n ON_SHARE_TIMELINE,\n ON_SHARE_APP_MESSAGE,\n ON_SHARE_CHAT,\n ON_ADD_TO_FAVORITES,\n ON_SAVE_EXIT_STATE,\n ON_NAVIGATION_BAR_BUTTON_TAP,\n ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED,\n ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED,\n ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED,\n ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED,\n];\nfunction isRootImmediateHook(name) {\n const PAGE_SYNC_HOOKS = [ON_LOAD, ON_SHOW];\n return PAGE_SYNC_HOOKS.indexOf(name) > -1;\n}\n// isRootImmediateHookX deprecated\nfunction isRootHook(name) {\n return PAGE_HOOKS.indexOf(name) > -1;\n}\nconst UniLifecycleHooks = [\n ON_SHOW,\n ON_HIDE,\n ON_LAUNCH,\n ON_ERROR,\n ON_THEME_CHANGE,\n ON_PAGE_NOT_FOUND,\n ON_UNHANDLE_REJECTION,\n ON_EXIT,\n ON_INIT,\n ON_LOAD,\n ON_READY,\n ON_UNLOAD,\n ON_RESIZE,\n ON_BACK_PRESS,\n ON_PAGE_SCROLL,\n ON_TAB_ITEM_TAP,\n ON_REACH_BOTTOM,\n ON_PULL_DOWN_REFRESH,\n ON_SHARE_TIMELINE,\n ON_ADD_TO_FAVORITES,\n ON_SHARE_APP_MESSAGE,\n ON_SHARE_CHAT,\n ON_SAVE_EXIT_STATE,\n ON_NAVIGATION_BAR_BUTTON_TAP,\n ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED,\n ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED,\n ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED,\n ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED,\n];\nconst MINI_PROGRAM_PAGE_RUNTIME_HOOKS = /*#__PURE__*/ (() => {\n return {\n onPageScroll: 1,\n onShareAppMessage: 1 << 1,\n onShareTimeline: 1 << 2,\n };\n})();\nfunction isUniLifecycleHook(name, value, checkType = true) {\n // 检查类型\n if (checkType && !isFunction(value)) {\n return false;\n }\n if (UniLifecycleHooks.indexOf(name) > -1) {\n // 已预定义\n return true;\n }\n else if (name.indexOf('on') === 0) {\n // 以 on 开头\n return true;\n }\n return false;\n}\n\nlet vueApp;\nconst createVueAppHooks = [];\n/**\n * 提供 createApp 的回调事件,方便三方插件接收 App 对象,处理挂靠全局 mixin 之类的逻辑\n */\nfunction onCreateVueApp(hook) {\n // TODO 每个 nvue 页面都会触发\n if (vueApp) {\n return hook(vueApp);\n }\n createVueAppHooks.push(hook);\n}\nfunction invokeCreateVueAppHook(app) {\n vueApp = app;\n createVueAppHooks.forEach((hook) => hook(app));\n}\nconst invokeCreateErrorHandler = once((app, createErrorHandler) => {\n // 不再判断开发者是否监听了onError,直接返回 createErrorHandler,内部 errorHandler 会调用开发者自定义的 errorHandler,以及判断开发者是否监听了onError\n return createErrorHandler(app);\n});\n\nconst E = function () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n};\nE.prototype = {\n _id: 1,\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx,\n _id: this._id,\n });\n return this._id++;\n },\n once: function (name, callback, ctx) {\n var self = this;\n function listener() {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n }\n listener._ = callback;\n return this.on(name, listener, ctx);\n },\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n return this;\n },\n off: function (name, event) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n if (evts && event) {\n for (var i = evts.length - 1; i >= 0; i--) {\n if (evts[i].fn === event ||\n evts[i].fn._ === event ||\n evts[i]._id === event) {\n evts.splice(i, 1);\n break;\n }\n }\n liveEvents = evts;\n }\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n liveEvents.length ? (e[name] = liveEvents) : delete e[name];\n return this;\n },\n};\nvar E$1 = E;\n\nconst borderStyles = {\n black: 'rgba(0,0,0,0.4)',\n white: 'rgba(255,255,255,0.4)',\n};\nfunction normalizeTabBarStyles(borderStyle) {\n if (borderStyle && borderStyle in borderStyles) {\n return borderStyles[borderStyle];\n }\n return borderStyle;\n}\nfunction normalizeTitleColor(titleColor) {\n return titleColor === 'black' ? '#000000' : '#ffffff';\n}\nfunction resolveStringStyleItem(modeStyle, styleItem, key) {\n if (isString(styleItem) && styleItem.startsWith('@')) {\n const _key = styleItem.replace('@', '');\n let _styleItem = modeStyle[_key] || styleItem;\n switch (key) {\n case 'titleColor':\n _styleItem = normalizeTitleColor(_styleItem);\n break;\n case 'borderStyle':\n _styleItem = normalizeTabBarStyles(_styleItem);\n break;\n }\n return _styleItem;\n }\n return styleItem;\n}\nfunction normalizeStyles(pageStyle, themeConfig = {}, mode = 'light') {\n const modeStyle = themeConfig[mode];\n const styles = {};\n if (typeof modeStyle === 'undefined' || !pageStyle)\n return pageStyle;\n Object.keys(pageStyle).forEach((key) => {\n const styleItem = pageStyle[key]; // Object Array String\n const parseStyleItem = () => {\n if (isPlainObject(styleItem))\n return normalizeStyles(styleItem, themeConfig, mode);\n if (isArray(styleItem))\n return styleItem.map((item) => {\n if (isPlainObject(item))\n return normalizeStyles(item, themeConfig, mode);\n return resolveStringStyleItem(modeStyle, item);\n });\n return resolveStringStyleItem(modeStyle, styleItem, key);\n };\n styles[key] = parseStyleItem();\n });\n return styles;\n}\n\nfunction getEnvLocale() {\n const { env } = process;\n const lang = env.LC_ALL || env.LC_MESSAGES || env.LANG || env.LANGUAGE;\n return (lang && lang.replace(/[.:].*/, '')) || 'en';\n}\n\nconst isStringIntegerKey = (key) => typeof key === 'string' &&\n key !== 'NaN' &&\n key[0] !== '-' &&\n '' + parseInt(key, 10) === key;\nconst isNumberIntegerKey = (key) => typeof key === 'number' &&\n !isNaN(key) &&\n key >= 0 &&\n parseInt(key + '', 10) === key;\n/**\n * 用于替代@vue/shared的isIntegerKey,原始方法在鸿蒙arkts中会引发bug。根本原因是arkts的数组的key是数字而不是字符串。\n * 目前这个方法使用的地方都和数组有关,切记不能挪作他用。\n * @param key\n * @returns\n */\nconst isIntegerKey = (key) => isNumberIntegerKey(key) || isStringIntegerKey(key);\n\nexport { ACTION_TYPE_ADD_EVENT, ACTION_TYPE_ADD_WXS_EVENT, ACTION_TYPE_CREATE, ACTION_TYPE_EVENT, ACTION_TYPE_INSERT, ACTION_TYPE_PAGE_CREATE, ACTION_TYPE_PAGE_CREATED, ACTION_TYPE_PAGE_SCROLL, ACTION_TYPE_REMOVE, ACTION_TYPE_REMOVE_ATTRIBUTE, ACTION_TYPE_REMOVE_EVENT, ACTION_TYPE_SET_ATTRIBUTE, ACTION_TYPE_SET_TEXT, ATTR_CHANGE_PREFIX, ATTR_CLASS, ATTR_INNER_HTML, ATTR_STYLE, ATTR_TEXT_CONTENT, ATTR_V_OWNER_ID, ATTR_V_RENDERJS, ATTR_V_SHOW, BACKGROUND_COLOR, BUILT_IN_TAGS, BUILT_IN_TAG_NAMES, COMPONENT_NAME_PREFIX, COMPONENT_PREFIX, COMPONENT_SELECTOR_PREFIX, DATA_RE, E$1 as Emitter, EventChannel, EventModifierFlags, I18N_JSON_DELIMITERS, JSON_PROTOCOL, LINEFEED, MINI_PROGRAM_PAGE_RUNTIME_HOOKS, NAVBAR_HEIGHT, NODE_TYPE_COMMENT, NODE_TYPE_ELEMENT, NODE_TYPE_PAGE, NODE_TYPE_TEXT, NVUE_BUILT_IN_TAGS, NVUE_U_BUILT_IN_TAGS, OFF_HOST_THEME_CHANGE, OFF_THEME_CHANGE, ON_ADD_TO_FAVORITES, ON_APP_ENTER_BACKGROUND, ON_APP_ENTER_FOREGROUND, ON_BACK_PRESS, ON_ERROR, ON_EXIT, ON_HIDE, ON_HOST_THEME_CHANGE, ON_INIT, ON_KEYBOARD_HEIGHT_CHANGE, ON_LAUNCH, ON_LOAD, ON_NAVIGATION_BAR_BUTTON_TAP, ON_NAVIGATION_BAR_CHANGE, ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED, ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED, ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED, ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED, ON_PAGE_NOT_FOUND, ON_PAGE_SCROLL, ON_PULL_DOWN_REFRESH, ON_REACH_BOTTOM, ON_REACH_BOTTOM_DISTANCE, ON_READY, ON_RESIZE, ON_SAVE_EXIT_STATE, ON_SHARE_APP_MESSAGE, ON_SHARE_CHAT, ON_SHARE_TIMELINE, ON_SHOW, ON_TAB_ITEM_TAP, ON_THEME_CHANGE, ON_UNHANDLE_REJECTION, ON_UNLOAD, ON_WEB_INVOKE_APP_SERVICE, ON_WXS_INVOKE_CALL_METHOD, PLUS_RE, PRIMARY_COLOR, RENDERJS_MODULES, RESPONSIVE_MIN_WIDTH, SCHEME_RE, SELECTED_COLOR, SLOT_DEFAULT_NAME, TABBAR_HEIGHT, TAGS, UNI_SSR, UNI_SSR_DATA, UNI_SSR_GLOBAL_DATA, UNI_SSR_STORE, UNI_SSR_TITLE, UNI_STORAGE_LOCALE, UNI_UI_CONFLICT_TAGS, UVUE_BUILT_IN_TAGS, UVUE_HARMONY_BUILT_IN_TAGS, UVUE_IOS_BUILT_IN_TAGS, UVUE_WEB_BUILT_IN_TAGS, UniBaseNode, UniCommentNode, UniElement, UniEvent, UniInputElement, UniLifecycleHooks, UniNode, UniTextAreaElement, UniTextNode, VIRTUAL_HOST_CLASS, VIRTUAL_HOST_HIDDEN, VIRTUAL_HOST_ID, VIRTUAL_HOST_STYLE, WEB_INVOKE_APPSERVICE, WXS_MODULES, WXS_PROTOCOL, addFont, addLeadingSlash, borderStyles, cache, cacheStringFunction, callOptions, createIsCustomElement, createRpx2Unit, createUniEvent, customizeEvent, debounce, decode, decodedQuery, defaultMiniProgramRpx2Unit, defaultNVueRpx2Unit, defaultRpx2Unit, dynamicSlotName, forcePatchProp, formatDateTime, formatLog, getCustomDataset, getEnvLocale, getGlobal, getLen, getValueByDataPath, initCustomDatasetOnce, invokeArrayFns, invokeCreateErrorHandler, invokeCreateVueAppHook, isAppHarmonyUVueNativeTag, isAppIOSUVueNativeTag, isAppNVueNativeTag, isAppNativeTag, isAppUVueBuiltInEasyComponent, isAppUVueNativeTag, isAppVoidTag, isBuiltInComponent, isComponentInternalInstance, isComponentTag, isH5CustomElement, isH5NativeTag, isIntegerKey, isMiniProgramNativeTag, isMiniProgramUVueNativeTag, isRootHook, isRootImmediateHook, isUniLifecycleHook, isUniXElement, normalizeClass, normalizeDataset, normalizeEventType, normalizeProps, normalizeStyle, normalizeStyles, normalizeTabBarStyles, normalizeTarget, normalizeTitleColor, onCreateVueApp, once, parseEventName, parseNVueDataset, parseQuery, parseUrl, passive, plusReady, removeLeadingSlash, resolveComponentInstance, resolveOwnerEl, resolveOwnerVm, sanitise, scrollTo, sortObject, stringifyQuery, updateElementStyle };\n","import { isRootHook, getValueByDataPath, isUniLifecycleHook, ON_ERROR, UniLifecycleHooks, invokeCreateErrorHandler, dynamicSlotName } from '@dcloudio/uni-shared';\nimport { NOOP, extend, isSymbol, isObject, def, hasChanged, isFunction, isArray, isPromise, camelize, capitalize, EMPTY_OBJ, remove, toHandlerKey, hasOwn, hyphenate, isReservedProp, toRawType, isString, normalizeClass, normalizeStyle, isOn, toTypeString, isMap, isIntegerKey, isSet, isPlainObject, makeMap, invokeArrayFns, isBuiltInDirective, looseToNumber, NO, EMPTY_ARR, isModelListener, toNumber, toDisplayString } from '@vue/shared';\nexport { EMPTY_OBJ, camelize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey } from '@vue/shared';\n\n/**\n* @dcloudio/uni-mp-vue v3.4.21\n* (c) 2018-present Yuxi (Evan) You and Vue contributors\n* @license MIT\n**/\n\nfunction warn$2(msg, ...args) {\n console.warn(`[Vue warn] ${msg}`, ...args);\n}\n\nlet activeEffectScope;\nclass EffectScope {\n constructor(detached = false) {\n this.detached = detached;\n /**\n * @internal\n */\n this._active = true;\n /**\n * @internal\n */\n this.effects = [];\n /**\n * @internal\n */\n this.cleanups = [];\n this.parent = activeEffectScope;\n if (!detached && activeEffectScope) {\n this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(\n this\n ) - 1;\n }\n }\n get active() {\n return this._active;\n }\n run(fn) {\n if (this._active) {\n const currentEffectScope = activeEffectScope;\n try {\n activeEffectScope = this;\n return fn();\n } finally {\n activeEffectScope = currentEffectScope;\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$2(`cannot run an inactive effect scope.`);\n }\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n on() {\n activeEffectScope = this;\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n off() {\n activeEffectScope = this.parent;\n }\n stop(fromParent) {\n if (this._active) {\n let i, l;\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].stop();\n }\n for (i = 0, l = this.cleanups.length; i < l; i++) {\n this.cleanups[i]();\n }\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].stop(true);\n }\n }\n if (!this.detached && this.parent && !fromParent) {\n const last = this.parent.scopes.pop();\n if (last && last !== this) {\n this.parent.scopes[this.index] = last;\n last.index = this.index;\n }\n }\n this.parent = void 0;\n this._active = false;\n }\n }\n}\nfunction effectScope(detached) {\n return new EffectScope(detached);\n}\nfunction recordEffectScope(effect, scope = activeEffectScope) {\n if (scope && scope.active) {\n scope.effects.push(effect);\n }\n}\nfunction getCurrentScope() {\n return activeEffectScope;\n}\nfunction onScopeDispose(fn) {\n if (activeEffectScope) {\n activeEffectScope.cleanups.push(fn);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$2(\n `onScopeDispose() is called when there is no active effect scope to be associated with.`\n );\n }\n}\n\nlet activeEffect;\nclass ReactiveEffect {\n constructor(fn, trigger, scheduler, scope) {\n this.fn = fn;\n this.trigger = trigger;\n this.scheduler = scheduler;\n this.active = true;\n this.deps = [];\n /**\n * @internal\n */\n this._dirtyLevel = 4;\n /**\n * @internal\n */\n this._trackId = 0;\n /**\n * @internal\n */\n this._runnings = 0;\n /**\n * @internal\n */\n this._shouldSchedule = false;\n /**\n * @internal\n */\n this._depsLength = 0;\n recordEffectScope(this, scope);\n }\n get dirty() {\n if (this._dirtyLevel === 2 || this._dirtyLevel === 3) {\n this._dirtyLevel = 1;\n pauseTracking();\n for (let i = 0; i < this._depsLength; i++) {\n const dep = this.deps[i];\n if (dep.computed) {\n triggerComputed(dep.computed);\n if (this._dirtyLevel >= 4) {\n break;\n }\n }\n }\n if (this._dirtyLevel === 1) {\n this._dirtyLevel = 0;\n }\n resetTracking();\n }\n return this._dirtyLevel >= 4;\n }\n set dirty(v) {\n this._dirtyLevel = v ? 4 : 0;\n }\n run() {\n this._dirtyLevel = 0;\n if (!this.active) {\n return this.fn();\n }\n let lastShouldTrack = shouldTrack;\n let lastEffect = activeEffect;\n try {\n shouldTrack = true;\n activeEffect = this;\n this._runnings++;\n preCleanupEffect(this);\n return this.fn();\n } finally {\n postCleanupEffect(this);\n this._runnings--;\n activeEffect = lastEffect;\n shouldTrack = lastShouldTrack;\n }\n }\n stop() {\n var _a;\n if (this.active) {\n preCleanupEffect(this);\n postCleanupEffect(this);\n (_a = this.onStop) == null ? void 0 : _a.call(this);\n this.active = false;\n }\n }\n}\nfunction triggerComputed(computed) {\n return computed.value;\n}\nfunction preCleanupEffect(effect2) {\n effect2._trackId++;\n effect2._depsLength = 0;\n}\nfunction postCleanupEffect(effect2) {\n if (effect2.deps.length > effect2._depsLength) {\n for (let i = effect2._depsLength; i < effect2.deps.length; i++) {\n cleanupDepEffect(effect2.deps[i], effect2);\n }\n effect2.deps.length = effect2._depsLength;\n }\n}\nfunction cleanupDepEffect(dep, effect2) {\n const trackId = dep.get(effect2);\n if (trackId !== void 0 && effect2._trackId !== trackId) {\n dep.delete(effect2);\n if (dep.size === 0) {\n dep.cleanup();\n }\n }\n}\nfunction effect(fn, options) {\n if (fn.effect instanceof ReactiveEffect) {\n fn = fn.effect.fn;\n }\n const _effect = new ReactiveEffect(fn, NOOP, () => {\n if (_effect.dirty) {\n _effect.run();\n }\n });\n if (options) {\n extend(_effect, options);\n if (options.scope)\n recordEffectScope(_effect, options.scope);\n }\n if (!options || !options.lazy) {\n _effect.run();\n }\n const runner = _effect.run.bind(_effect);\n runner.effect = _effect;\n return runner;\n}\nfunction stop(runner) {\n runner.effect.stop();\n}\nlet shouldTrack = true;\nlet pauseScheduleStack = 0;\nconst trackStack = [];\nfunction pauseTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = false;\n}\nfunction resetTracking() {\n const last = trackStack.pop();\n shouldTrack = last === void 0 ? true : last;\n}\nfunction pauseScheduling() {\n pauseScheduleStack++;\n}\nfunction resetScheduling() {\n pauseScheduleStack--;\n while (!pauseScheduleStack && queueEffectSchedulers.length) {\n queueEffectSchedulers.shift()();\n }\n}\nfunction trackEffect(effect2, dep, debuggerEventExtraInfo) {\n var _a;\n if (dep.get(effect2) !== effect2._trackId) {\n dep.set(effect2, effect2._trackId);\n const oldDep = effect2.deps[effect2._depsLength];\n if (oldDep !== dep) {\n if (oldDep) {\n cleanupDepEffect(oldDep, effect2);\n }\n effect2.deps[effect2._depsLength++] = dep;\n } else {\n effect2._depsLength++;\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n (_a = effect2.onTrack) == null ? void 0 : _a.call(effect2, extend({ effect: effect2 }, debuggerEventExtraInfo));\n }\n }\n}\nconst queueEffectSchedulers = [];\nfunction triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {\n var _a;\n pauseScheduling();\n for (const effect2 of dep.keys()) {\n let tracking;\n if (effect2._dirtyLevel < dirtyLevel && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {\n effect2._shouldSchedule || (effect2._shouldSchedule = effect2._dirtyLevel === 0);\n effect2._dirtyLevel = dirtyLevel;\n }\n if (effect2._shouldSchedule && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n (_a = effect2.onTrigger) == null ? void 0 : _a.call(effect2, extend({ effect: effect2 }, debuggerEventExtraInfo));\n }\n effect2.trigger();\n if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 2) {\n effect2._shouldSchedule = false;\n if (effect2.scheduler) {\n queueEffectSchedulers.push(effect2.scheduler);\n }\n }\n }\n }\n resetScheduling();\n}\n\nconst createDep = (cleanup, computed) => {\n const dep = /* @__PURE__ */ new Map();\n dep.cleanup = cleanup;\n dep.computed = computed;\n return dep;\n};\n\nconst targetMap = /* @__PURE__ */ new WeakMap();\nconst ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== \"production\") ? \"iterate\" : \"\");\nconst MAP_KEY_ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== \"production\") ? \"Map key iterate\" : \"\");\nfunction track(target, type, key) {\n if (shouldTrack && activeEffect) {\n let depsMap = targetMap.get(target);\n if (!depsMap) {\n targetMap.set(target, depsMap = /* @__PURE__ */ new Map());\n }\n let dep = depsMap.get(key);\n if (!dep) {\n depsMap.set(key, dep = createDep(() => depsMap.delete(key)));\n }\n trackEffect(\n activeEffect,\n dep,\n !!(process.env.NODE_ENV !== \"production\") ? {\n target,\n type,\n key\n } : void 0\n );\n }\n}\nfunction trigger(target, type, key, newValue, oldValue, oldTarget) {\n const depsMap = targetMap.get(target);\n if (!depsMap) {\n return;\n }\n let deps = [];\n if (type === \"clear\") {\n deps = [...depsMap.values()];\n } else if (key === \"length\" && isArray(target)) {\n const newLength = Number(newValue);\n depsMap.forEach((dep, key2) => {\n if (key2 === \"length\" || !isSymbol(key2) && key2 >= newLength) {\n deps.push(dep);\n }\n });\n } else {\n if (key !== void 0) {\n deps.push(depsMap.get(key));\n }\n switch (type) {\n case \"add\":\n if (!isArray(target)) {\n deps.push(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n } else if (isIntegerKey(key)) {\n deps.push(depsMap.get(\"length\"));\n }\n break;\n case \"delete\":\n if (!isArray(target)) {\n deps.push(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n }\n break;\n case \"set\":\n if (isMap(target)) {\n deps.push(depsMap.get(ITERATE_KEY));\n }\n break;\n }\n }\n pauseScheduling();\n for (const dep of deps) {\n if (dep) {\n triggerEffects(\n dep,\n 4,\n !!(process.env.NODE_ENV !== \"production\") ? {\n target,\n type,\n key,\n newValue,\n oldValue,\n oldTarget\n } : void 0\n );\n }\n }\n resetScheduling();\n}\nfunction getDepFromReactive(object, key) {\n var _a;\n return (_a = targetMap.get(object)) == null ? void 0 : _a.get(key);\n}\n\nconst isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);\nconst builtInSymbols = new Set(\n /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== \"arguments\" && key !== \"caller\").map((key) => Symbol[key]).filter(isSymbol)\n);\nconst arrayInstrumentations = /* @__PURE__ */ createArrayInstrumentations();\nfunction createArrayInstrumentations() {\n const instrumentations = {};\n [\"includes\", \"indexOf\", \"lastIndexOf\"].forEach((key) => {\n instrumentations[key] = function(...args) {\n const arr = toRaw(this);\n for (let i = 0, l = this.length; i < l; i++) {\n track(arr, \"get\", i + \"\");\n }\n const res = arr[key](...args);\n if (res === -1 || res === false) {\n return arr[key](...args.map(toRaw));\n } else {\n return res;\n }\n };\n });\n [\"push\", \"pop\", \"shift\", \"unshift\", \"splice\"].forEach((key) => {\n instrumentations[key] = function(...args) {\n pauseTracking();\n pauseScheduling();\n const res = toRaw(this)[key].apply(this, args);\n resetScheduling();\n resetTracking();\n return res;\n };\n });\n return instrumentations;\n}\nfunction hasOwnProperty(key) {\n const obj = toRaw(this);\n track(obj, \"has\", key);\n return obj.hasOwnProperty(key);\n}\nclass BaseReactiveHandler {\n constructor(_isReadonly = false, _isShallow = false) {\n this._isReadonly = _isReadonly;\n this._isShallow = _isShallow;\n }\n get(target, key, receiver) {\n const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow;\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_isShallow\") {\n return isShallow2;\n } else if (key === \"__v_raw\") {\n if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype\n // this means the reciever is a user proxy of the reactive proxy\n Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) {\n return target;\n }\n return;\n }\n const targetIsArray = isArray(target);\n if (!isReadonly2) {\n if (targetIsArray && hasOwn(arrayInstrumentations, key)) {\n return Reflect.get(arrayInstrumentations, key, receiver);\n }\n if (key === \"hasOwnProperty\") {\n return hasOwnProperty;\n }\n }\n const res = Reflect.get(target, key, receiver);\n if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {\n return res;\n }\n if (!isReadonly2) {\n track(target, \"get\", key);\n }\n if (isShallow2) {\n return res;\n }\n if (isRef(res)) {\n return targetIsArray && isIntegerKey(key) ? res : res.value;\n }\n if (isObject(res)) {\n return isReadonly2 ? readonly(res) : reactive(res);\n }\n return res;\n }\n}\nclass MutableReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(false, isShallow2);\n }\n set(target, key, value, receiver) {\n let oldValue = target[key];\n if (!this._isShallow) {\n const isOldValueReadonly = isReadonly(oldValue);\n if (!isShallow(value) && !isReadonly(value)) {\n oldValue = toRaw(oldValue);\n value = toRaw(value);\n }\n if (!isArray(target) && isRef(oldValue) && !isRef(value)) {\n if (isOldValueReadonly) {\n return false;\n } else {\n oldValue.value = value;\n return true;\n }\n }\n }\n const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key);\n const result = Reflect.set(target, key, value, receiver);\n if (target === toRaw(receiver)) {\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n }\n return result;\n }\n deleteProperty(target, key) {\n const hadKey = hasOwn(target, key);\n const oldValue = target[key];\n const result = Reflect.deleteProperty(target, key);\n if (result && hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n }\n has(target, key) {\n const result = Reflect.has(target, key);\n if (!isSymbol(key) || !builtInSymbols.has(key)) {\n track(target, \"has\", key);\n }\n return result;\n }\n ownKeys(target) {\n track(\n target,\n \"iterate\",\n isArray(target) ? \"length\" : ITERATE_KEY\n );\n return Reflect.ownKeys(target);\n }\n}\nclass ReadonlyReactiveHandler extends BaseReactiveHandler {\n constructor(isShallow2 = false) {\n super(true, isShallow2);\n }\n set(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$2(\n `Set operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n deleteProperty(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$2(\n `Delete operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n}\nconst mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler();\nconst readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler();\nconst shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(\n true\n);\nconst shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true);\n\nconst toShallow = (value) => value;\nconst getProto = (v) => Reflect.getPrototypeOf(v);\nfunction get(target, key, isReadonly = false, isShallow = false) {\n target = target[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"get\", key);\n }\n track(rawTarget, \"get\", rawKey);\n }\n const { has: has2 } = getProto(rawTarget);\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\n if (has2.call(rawTarget, key)) {\n return wrap(target.get(key));\n } else if (has2.call(rawTarget, rawKey)) {\n return wrap(target.get(rawKey));\n } else if (target !== rawTarget) {\n target.get(key);\n }\n}\nfunction has(key, isReadonly = false) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly) {\n if (hasChanged(key, rawKey)) {\n track(rawTarget, \"has\", key);\n }\n track(rawTarget, \"has\", rawKey);\n }\n return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);\n}\nfunction size(target, isReadonly = false) {\n target = target[\"__v_raw\"];\n !isReadonly && track(toRaw(target), \"iterate\", ITERATE_KEY);\n return Reflect.get(target, \"size\", target);\n}\nfunction add(value) {\n value = toRaw(value);\n const target = toRaw(this);\n const proto = getProto(target);\n const hadKey = proto.has.call(target, value);\n if (!hadKey) {\n target.add(value);\n trigger(target, \"add\", value, value);\n }\n return this;\n}\nfunction set$1(key, value) {\n value = toRaw(value);\n const target = toRaw(this);\n const { has: has2, get: get2 } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2.call(target, key);\n target.set(key, value);\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n return this;\n}\nfunction deleteEntry(key) {\n const target = toRaw(this);\n const { has: has2, get: get2 } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2 ? get2.call(target, key) : void 0;\n const result = target.delete(key);\n if (hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n}\nfunction clear() {\n const target = toRaw(this);\n const hadItems = target.size !== 0;\n const oldTarget = !!(process.env.NODE_ENV !== \"production\") ? isMap(target) ? new Map(target) : new Set(target) : void 0;\n const result = target.clear();\n if (hadItems) {\n trigger(target, \"clear\", void 0, void 0, oldTarget);\n }\n return result;\n}\nfunction createForEach(isReadonly, isShallow) {\n return function forEach(callback, thisArg) {\n const observed = this;\n const target = observed[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\n !isReadonly && track(rawTarget, \"iterate\", ITERATE_KEY);\n return target.forEach((value, key) => {\n return callback.call(thisArg, wrap(value), wrap(key), observed);\n });\n };\n}\nfunction createIterableMethod(method, isReadonly, isShallow) {\n return function(...args) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const targetIsMap = isMap(rawTarget);\n const isPair = method === \"entries\" || method === Symbol.iterator && targetIsMap;\n const isKeyOnly = method === \"keys\" && targetIsMap;\n const innerIterator = target[method](...args);\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\n !isReadonly && track(\n rawTarget,\n \"iterate\",\n isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY\n );\n return {\n // iterator protocol\n next() {\n const { value, done } = innerIterator.next();\n return done ? { value, done } : {\n value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),\n done\n };\n },\n // iterable protocol\n [Symbol.iterator]() {\n return this;\n }\n };\n };\n}\nfunction createReadonlyMethod(type) {\n return function(...args) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const key = args[0] ? `on key \"${args[0]}\" ` : ``;\n warn$2(\n `${capitalize(type)} operation ${key}failed: target is readonly.`,\n toRaw(this)\n );\n }\n return type === \"delete\" ? false : type === \"clear\" ? void 0 : this;\n };\n}\nfunction createInstrumentations() {\n const mutableInstrumentations2 = {\n get(key) {\n return get(this, key);\n },\n get size() {\n return size(this);\n },\n has,\n add,\n set: set$1,\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, false)\n };\n const shallowInstrumentations2 = {\n get(key) {\n return get(this, key, false, true);\n },\n get size() {\n return size(this);\n },\n has,\n add,\n set: set$1,\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, true)\n };\n const readonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, false)\n };\n const shallowReadonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, true)\n };\n const iteratorMethods = [\n \"keys\",\n \"values\",\n \"entries\",\n Symbol.iterator\n ];\n iteratorMethods.forEach((method) => {\n mutableInstrumentations2[method] = createIterableMethod(method, false, false);\n readonlyInstrumentations2[method] = createIterableMethod(method, true, false);\n shallowInstrumentations2[method] = createIterableMethod(method, false, true);\n shallowReadonlyInstrumentations2[method] = createIterableMethod(\n method,\n true,\n true\n );\n });\n return [\n mutableInstrumentations2,\n readonlyInstrumentations2,\n shallowInstrumentations2,\n shallowReadonlyInstrumentations2\n ];\n}\nconst [\n mutableInstrumentations,\n readonlyInstrumentations,\n shallowInstrumentations,\n shallowReadonlyInstrumentations\n] = /* @__PURE__ */ createInstrumentations();\nfunction createInstrumentationGetter(isReadonly, shallow) {\n const instrumentations = shallow ? isReadonly ? shallowReadonlyInstrumentations : shallowInstrumentations : isReadonly ? readonlyInstrumentations : mutableInstrumentations;\n return (target, key, receiver) => {\n if (key === \"__v_isReactive\") {\n return !isReadonly;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly;\n } else if (key === \"__v_raw\") {\n return target;\n }\n return Reflect.get(\n hasOwn(instrumentations, key) && key in target ? instrumentations : target,\n key,\n receiver\n );\n };\n}\nconst mutableCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, false)\n};\nconst shallowCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, true)\n};\nconst readonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, false)\n};\nconst shallowReadonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, true)\n};\nfunction checkIdentityKeys(target, has2, key) {\n const rawKey = toRaw(key);\n if (rawKey !== key && has2.call(target, rawKey)) {\n const type = toRawType(target);\n warn$2(\n `Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`\n );\n }\n}\n\nconst reactiveMap = /* @__PURE__ */ new WeakMap();\nconst shallowReactiveMap = /* @__PURE__ */ new WeakMap();\nconst readonlyMap = /* @__PURE__ */ new WeakMap();\nconst shallowReadonlyMap = /* @__PURE__ */ new WeakMap();\nfunction targetTypeMap(rawType) {\n switch (rawType) {\n case \"Object\":\n case \"Array\":\n return 1 /* COMMON */;\n case \"Map\":\n case \"Set\":\n case \"WeakMap\":\n case \"WeakSet\":\n return 2 /* COLLECTION */;\n default:\n return 0 /* INVALID */;\n }\n}\nfunction getTargetType(value) {\n return value[\"__v_skip\"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));\n}\nfunction reactive(target) {\n if (isReadonly(target)) {\n return target;\n }\n return createReactiveObject(\n target,\n false,\n mutableHandlers,\n mutableCollectionHandlers,\n reactiveMap\n );\n}\nfunction shallowReactive(target) {\n return createReactiveObject(\n target,\n false,\n shallowReactiveHandlers,\n shallowCollectionHandlers,\n shallowReactiveMap\n );\n}\nfunction readonly(target) {\n return createReactiveObject(\n target,\n true,\n readonlyHandlers,\n readonlyCollectionHandlers,\n readonlyMap\n );\n}\nfunction shallowReadonly(target) {\n return createReactiveObject(\n target,\n true,\n shallowReadonlyHandlers,\n shallowReadonlyCollectionHandlers,\n shallowReadonlyMap\n );\n}\nfunction createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) {\n if (!isObject(target)) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$2(`value cannot be made reactive: ${String(target)}`);\n }\n return target;\n }\n if (target[\"__v_raw\"] && !(isReadonly2 && target[\"__v_isReactive\"])) {\n return target;\n }\n const existingProxy = proxyMap.get(target);\n if (existingProxy) {\n return existingProxy;\n }\n const targetType = getTargetType(target);\n if (targetType === 0 /* INVALID */) {\n return target;\n }\n const proxy = new Proxy(\n target,\n targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers\n );\n proxyMap.set(target, proxy);\n return proxy;\n}\nfunction isReactive(value) {\n if (isReadonly(value)) {\n return isReactive(value[\"__v_raw\"]);\n }\n return !!(value && value[\"__v_isReactive\"]);\n}\nfunction isReadonly(value) {\n return !!(value && value[\"__v_isReadonly\"]);\n}\nfunction isShallow(value) {\n return !!(value && value[\"__v_isShallow\"]);\n}\nfunction isProxy(value) {\n return isReactive(value) || isReadonly(value);\n}\nfunction toRaw(observed) {\n const raw = observed && observed[\"__v_raw\"];\n return raw ? toRaw(raw) : observed;\n}\nfunction markRaw(value) {\n if (Object.isExtensible(value)) {\n def(value, \"__v_skip\", true);\n }\n return value;\n}\nconst toReactive = (value) => isObject(value) ? reactive(value) : value;\nconst toReadonly = (value) => isObject(value) ? readonly(value) : value;\n\nconst COMPUTED_SIDE_EFFECT_WARN = `Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free`;\nclass ComputedRefImpl {\n constructor(getter, _setter, isReadonly, isSSR) {\n this.getter = getter;\n this._setter = _setter;\n this.dep = void 0;\n this.__v_isRef = true;\n this[\"__v_isReadonly\"] = false;\n this.effect = new ReactiveEffect(\n () => getter(this._value),\n () => triggerRefValue(\n this,\n this.effect._dirtyLevel === 2 ? 2 : 3\n )\n );\n this.effect.computed = this;\n this.effect.active = this._cacheable = !isSSR;\n this[\"__v_isReadonly\"] = isReadonly;\n }\n get value() {\n const self = toRaw(this);\n if ((!self._cacheable || self.effect.dirty) && hasChanged(self._value, self._value = self.effect.run())) {\n triggerRefValue(self, 4);\n }\n trackRefValue(self);\n if (self.effect._dirtyLevel >= 2) {\n if (!!(process.env.NODE_ENV !== \"production\") && this._warnRecursive) {\n warn$2(COMPUTED_SIDE_EFFECT_WARN, `\n\ngetter: `, this.getter);\n }\n triggerRefValue(self, 2);\n }\n return self._value;\n }\n set value(newValue) {\n this._setter(newValue);\n }\n // #region polyfill _dirty for backward compatibility third party code for Vue <= 3.3.x\n get _dirty() {\n return this.effect.dirty;\n }\n set _dirty(v) {\n this.effect.dirty = v;\n }\n // #endregion\n}\nfunction computed$1(getterOrOptions, debugOptions, isSSR = false) {\n let getter;\n let setter;\n const onlyGetter = isFunction(getterOrOptions);\n if (onlyGetter) {\n getter = getterOrOptions;\n setter = !!(process.env.NODE_ENV !== \"production\") ? () => {\n warn$2(\"Write operation failed: computed value is readonly\");\n } : NOOP;\n } else {\n getter = getterOrOptions.get;\n setter = getterOrOptions.set;\n }\n const cRef = new ComputedRefImpl(getter, setter, onlyGetter || !setter, isSSR);\n if (!!(process.env.NODE_ENV !== \"production\") && debugOptions && !isSSR) {\n cRef.effect.onTrack = debugOptions.onTrack;\n cRef.effect.onTrigger = debugOptions.onTrigger;\n }\n return cRef;\n}\n\nfunction trackRefValue(ref2) {\n var _a;\n if (shouldTrack && activeEffect) {\n ref2 = toRaw(ref2);\n trackEffect(\n activeEffect,\n (_a = ref2.dep) != null ? _a : ref2.dep = createDep(\n () => ref2.dep = void 0,\n ref2 instanceof ComputedRefImpl ? ref2 : void 0\n ),\n !!(process.env.NODE_ENV !== \"production\") ? {\n target: ref2,\n type: \"get\",\n key: \"value\"\n } : void 0\n );\n }\n}\nfunction triggerRefValue(ref2, dirtyLevel = 4, newVal) {\n ref2 = toRaw(ref2);\n const dep = ref2.dep;\n if (dep) {\n triggerEffects(\n dep,\n dirtyLevel,\n !!(process.env.NODE_ENV !== \"production\") ? {\n target: ref2,\n type: \"set\",\n key: \"value\",\n newValue: newVal\n } : void 0\n );\n }\n}\nfunction isRef(r) {\n return !!(r && r.__v_isRef === true);\n}\nfunction ref(value) {\n return createRef(value, false);\n}\nfunction shallowRef(value) {\n return createRef(value, true);\n}\nfunction createRef(rawValue, shallow) {\n if (isRef(rawValue)) {\n return rawValue;\n }\n return new RefImpl(rawValue, shallow);\n}\nclass RefImpl {\n constructor(value, __v_isShallow) {\n this.__v_isShallow = __v_isShallow;\n this.dep = void 0;\n this.__v_isRef = true;\n this._rawValue = __v_isShallow ? value : toRaw(value);\n this._value = __v_isShallow ? value : toReactive(value);\n }\n get value() {\n trackRefValue(this);\n return this._value;\n }\n set value(newVal) {\n const useDirectValue = this.__v_isShallow || isShallow(newVal) || isReadonly(newVal);\n newVal = useDirectValue ? newVal : toRaw(newVal);\n if (hasChanged(newVal, this._rawValue)) {\n this._rawValue = newVal;\n this._value = useDirectValue ? newVal : toReactive(newVal);\n triggerRefValue(this, 4, newVal);\n }\n }\n}\nfunction triggerRef(ref2) {\n triggerRefValue(ref2, 4, !!(process.env.NODE_ENV !== \"production\") ? ref2.value : void 0);\n}\nfunction unref(ref2) {\n return isRef(ref2) ? ref2.value : ref2;\n}\nfunction toValue(source) {\n return isFunction(source) ? source() : unref(source);\n}\nconst shallowUnwrapHandlers = {\n get: (target, key, receiver) => unref(Reflect.get(target, key, receiver)),\n set: (target, key, value, receiver) => {\n const oldValue = target[key];\n if (isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n return true;\n } else {\n return Reflect.set(target, key, value, receiver);\n }\n }\n};\nfunction proxyRefs(objectWithRefs) {\n return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);\n}\nclass CustomRefImpl {\n constructor(factory) {\n this.dep = void 0;\n this.__v_isRef = true;\n const { get, set } = factory(\n () => trackRefValue(this),\n () => triggerRefValue(this)\n );\n this._get = get;\n this._set = set;\n }\n get value() {\n return this._get();\n }\n set value(newVal) {\n this._set(newVal);\n }\n}\nfunction customRef(factory) {\n return new CustomRefImpl(factory);\n}\nfunction toRefs(object) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isProxy(object)) {\n warn$2(`toRefs() expects a reactive object but received a plain one.`);\n }\n const ret = isArray(object) ? new Array(object.length) : {};\n for (const key in object) {\n ret[key] = propertyToRef(object, key);\n }\n return ret;\n}\nclass ObjectRefImpl {\n constructor(_object, _key, _defaultValue) {\n this._object = _object;\n this._key = _key;\n this._defaultValue = _defaultValue;\n this.__v_isRef = true;\n }\n get value() {\n const val = this._object[this._key];\n return val === void 0 ? this._defaultValue : val;\n }\n set value(newVal) {\n this._object[this._key] = newVal;\n }\n get dep() {\n return getDepFromReactive(toRaw(this._object), this._key);\n }\n}\nclass GetterRefImpl {\n constructor(_getter) {\n this._getter = _getter;\n this.__v_isRef = true;\n this.__v_isReadonly = true;\n }\n get value() {\n return this._getter();\n }\n}\nfunction toRef(source, key, defaultValue) {\n if (isRef(source)) {\n return source;\n } else if (isFunction(source)) {\n return new GetterRefImpl(source);\n } else if (isObject(source) && arguments.length > 1) {\n return propertyToRef(source, key, defaultValue);\n } else {\n return ref(source);\n }\n}\nfunction propertyToRef(source, key, defaultValue) {\n const val = source[key];\n return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue);\n}\n\nconst stack = [];\nfunction pushWarningContext(vnode) {\n stack.push(vnode);\n}\nfunction popWarningContext() {\n stack.pop();\n}\nfunction warn$1(msg, ...args) {\n pauseTracking();\n const instance = stack.length ? stack[stack.length - 1].component : null;\n const appWarnHandler = instance && instance.appContext.config.warnHandler;\n const trace = getComponentTrace();\n if (appWarnHandler) {\n callWithErrorHandling(\n appWarnHandler,\n instance,\n 11,\n [\n msg + args.map((a) => {\n var _a, _b;\n return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a);\n }).join(\"\"),\n instance && instance.proxy,\n trace.map(\n ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`\n ).join(\"\\n\"),\n trace\n ]\n );\n } else {\n const warnArgs = [`[Vue warn]: ${msg}`, ...args];\n if (trace.length && // avoid spamming console during tests\n true) {\n warnArgs.push(`\n`, ...formatTrace(trace));\n }\n console.warn(...warnArgs);\n }\n resetTracking();\n}\nfunction getComponentTrace() {\n let currentVNode = stack[stack.length - 1];\n if (!currentVNode) {\n return [];\n }\n const normalizedStack = [];\n while (currentVNode) {\n const last = normalizedStack[0];\n if (last && last.vnode === currentVNode) {\n last.recurseCount++;\n } else {\n normalizedStack.push({\n vnode: currentVNode,\n recurseCount: 0\n });\n }\n const parentInstance = currentVNode.component && currentVNode.component.parent;\n currentVNode = parentInstance && parentInstance.vnode;\n }\n return normalizedStack;\n}\nfunction formatTrace(trace) {\n const logs = [];\n trace.forEach((entry, i) => {\n logs.push(...i === 0 ? [] : [`\n`], ...formatTraceEntry(entry));\n });\n return logs;\n}\nfunction formatTraceEntry({ vnode, recurseCount }) {\n const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;\n const isRoot = vnode.component ? vnode.component.parent == null : false;\n const open = ` at <${formatComponentName(\n vnode.component,\n vnode.type,\n isRoot\n )}`;\n const close = `>` + postfix;\n return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close];\n}\nfunction formatProps(props) {\n const res = [];\n const keys = Object.keys(props);\n keys.slice(0, 3).forEach((key) => {\n res.push(...formatProp(key, props[key]));\n });\n if (keys.length > 3) {\n res.push(` ...`);\n }\n return res;\n}\nfunction formatProp(key, value, raw) {\n if (isString(value)) {\n value = JSON.stringify(value);\n return raw ? value : [`${key}=${value}`];\n } else if (typeof value === \"number\" || typeof value === \"boolean\" || value == null) {\n return raw ? value : [`${key}=${value}`];\n } else if (isRef(value)) {\n value = formatProp(key, toRaw(value.value), true);\n return raw ? value : [`${key}=Ref<`, value, `>`];\n } else if (isFunction(value)) {\n return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];\n } else {\n value = toRaw(value);\n return raw ? value : [`${key}=`, value];\n }\n}\n\nconst ErrorTypeStrings = {\n [\"sp\"]: \"serverPrefetch hook\",\n [\"bc\"]: \"beforeCreate hook\",\n [\"c\"]: \"created hook\",\n [\"bm\"]: \"beforeMount hook\",\n [\"m\"]: \"mounted hook\",\n [\"bu\"]: \"beforeUpdate hook\",\n [\"u\"]: \"updated\",\n [\"bum\"]: \"beforeUnmount hook\",\n [\"um\"]: \"unmounted hook\",\n [\"a\"]: \"activated hook\",\n [\"da\"]: \"deactivated hook\",\n [\"ec\"]: \"errorCaptured hook\",\n [\"rtc\"]: \"renderTracked hook\",\n [\"rtg\"]: \"renderTriggered hook\",\n [0]: \"setup function\",\n [1]: \"render function\",\n [2]: \"watcher getter\",\n [3]: \"watcher callback\",\n [4]: \"watcher cleanup function\",\n [5]: \"native event handler\",\n [6]: \"component event handler\",\n [7]: \"vnode hook\",\n [8]: \"directive hook\",\n [9]: \"transition hook\",\n [10]: \"app errorHandler\",\n [11]: \"app warnHandler\",\n [12]: \"ref function\",\n [13]: \"async component loader\",\n [14]: \"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core .\"\n};\nfunction callWithErrorHandling(fn, instance, type, args) {\n try {\n return args ? fn(...args) : fn();\n } catch (err) {\n handleError(err, instance, type);\n }\n}\nfunction callWithAsyncErrorHandling(fn, instance, type, args) {\n if (isFunction(fn)) {\n const res = callWithErrorHandling(fn, instance, type, args);\n if (res && isPromise(res)) {\n res.catch((err) => {\n handleError(err, instance, type);\n });\n }\n return res;\n }\n const values = [];\n for (let i = 0; i < fn.length; i++) {\n values.push(callWithAsyncErrorHandling(fn[i], instance, type, args));\n }\n return values;\n}\nfunction handleError(err, instance, type, throwInDev = true) {\n const contextVNode = instance ? instance.vnode : null;\n if (instance) {\n let cur = instance.parent;\n const exposedInstance = instance.proxy;\n const errorInfo = !!(process.env.NODE_ENV !== \"production\") ? ErrorTypeStrings[type] || type : `https://vuejs.org/error-reference/#runtime-${type}`;\n while (cur) {\n const errorCapturedHooks = cur.ec;\n if (errorCapturedHooks) {\n for (let i = 0; i < errorCapturedHooks.length; i++) {\n if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) {\n return;\n }\n }\n }\n cur = cur.parent;\n }\n const appErrorHandler = instance.appContext.config.errorHandler;\n if (appErrorHandler) {\n callWithErrorHandling(\n appErrorHandler,\n null,\n 10,\n [err, exposedInstance, errorInfo]\n );\n return;\n }\n }\n logError(err, type, contextVNode, throwInDev);\n}\nfunction logError(err, type, contextVNode, throwInDev = true) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const info = ErrorTypeStrings[type] || type;\n if (contextVNode) {\n pushWarningContext(contextVNode);\n }\n warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`);\n if (contextVNode) {\n popWarningContext();\n }\n if (throwInDev) {\n console.error(err);\n } else {\n console.error(err);\n }\n } else {\n console.error(err);\n }\n}\n\nlet isFlushing = false;\nlet isFlushPending = false;\nconst queue = [];\nlet flushIndex = 0;\nconst pendingPostFlushCbs = [];\nlet activePostFlushCbs = null;\nlet postFlushIndex = 0;\nconst resolvedPromise = /* @__PURE__ */ Promise.resolve();\nlet currentFlushPromise = null;\nconst RECURSION_LIMIT = 100;\nfunction nextTick$1(fn) {\n const p = currentFlushPromise || resolvedPromise;\n return fn ? p.then(this ? fn.bind(this) : fn) : p;\n}\nfunction findInsertionIndex(id) {\n let start = flushIndex + 1;\n let end = queue.length;\n while (start < end) {\n const middle = start + end >>> 1;\n const middleJob = queue[middle];\n const middleJobId = getId(middleJob);\n if (middleJobId < id || middleJobId === id && middleJob.pre) {\n start = middle + 1;\n } else {\n end = middle;\n }\n }\n return start;\n}\nfunction queueJob(job) {\n if (!queue.length || !queue.includes(\n job,\n isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex\n )) {\n if (job.id == null) {\n queue.push(job);\n } else {\n queue.splice(findInsertionIndex(job.id), 0, job);\n }\n queueFlush();\n }\n}\nfunction queueFlush() {\n if (!isFlushing && !isFlushPending) {\n isFlushPending = true;\n currentFlushPromise = resolvedPromise.then(flushJobs);\n }\n}\nfunction hasQueueJob(job) {\n return queue.indexOf(job) > -1;\n}\nfunction invalidateJob(job) {\n const i = queue.indexOf(job);\n if (i > flushIndex) {\n queue.splice(i, 1);\n }\n}\nfunction queuePostFlushCb(cb) {\n if (!isArray(cb)) {\n if (!activePostFlushCbs || !activePostFlushCbs.includes(\n cb,\n cb.allowRecurse ? postFlushIndex + 1 : postFlushIndex\n )) {\n pendingPostFlushCbs.push(cb);\n }\n } else {\n pendingPostFlushCbs.push(...cb);\n }\n queueFlush();\n}\nfunction flushPreFlushCbs(instance, seen, i = isFlushing ? flushIndex + 1 : 0) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (; i < queue.length; i++) {\n const cb = queue[i];\n if (cb && cb.pre) {\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, cb)) {\n continue;\n }\n queue.splice(i, 1);\n i--;\n cb();\n }\n }\n}\nfunction flushPostFlushCbs(seen) {\n if (pendingPostFlushCbs.length) {\n const deduped = [...new Set(pendingPostFlushCbs)].sort(\n (a, b) => getId(a) - getId(b)\n );\n pendingPostFlushCbs.length = 0;\n if (activePostFlushCbs) {\n activePostFlushCbs.push(...deduped);\n return;\n }\n activePostFlushCbs = deduped;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {\n continue;\n }\n activePostFlushCbs[postFlushIndex]();\n }\n activePostFlushCbs = null;\n postFlushIndex = 0;\n }\n}\nconst getId = (job) => job.id == null ? Infinity : job.id;\nconst comparator = (a, b) => {\n const diff = getId(a) - getId(b);\n if (diff === 0) {\n if (a.pre && !b.pre)\n return -1;\n if (b.pre && !a.pre)\n return 1;\n }\n return diff;\n};\nfunction flushJobs(seen) {\n isFlushPending = false;\n isFlushing = true;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n queue.sort(comparator);\n const check = !!(process.env.NODE_ENV !== \"production\") ? (job) => checkRecursiveUpdates(seen, job) : NOOP;\n try {\n for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {\n const job = queue[flushIndex];\n if (job && job.active !== false) {\n if (!!(process.env.NODE_ENV !== \"production\") && check(job)) {\n continue;\n }\n callWithErrorHandling(job, null, 14);\n }\n }\n } finally {\n flushIndex = 0;\n queue.length = 0;\n flushPostFlushCbs(seen);\n isFlushing = false;\n currentFlushPromise = null;\n if (queue.length || pendingPostFlushCbs.length) {\n flushJobs(seen);\n }\n }\n}\nfunction checkRecursiveUpdates(seen, fn) {\n if (!seen.has(fn)) {\n seen.set(fn, 1);\n } else {\n const count = seen.get(fn);\n if (count > RECURSION_LIMIT) {\n const instance = fn.ownerInstance;\n const componentName = instance && getComponentName(instance.type);\n handleError(\n `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,\n null,\n 10\n );\n return true;\n } else {\n seen.set(fn, count + 1);\n }\n }\n}\n\nlet devtools;\nlet buffer = [];\nlet devtoolsNotInstalled = false;\nfunction emit$1(event, ...args) {\n if (devtools) {\n devtools.emit(event, ...args);\n } else if (!devtoolsNotInstalled) {\n buffer.push({ event, args });\n }\n}\nfunction setDevtoolsHook(hook, target) {\n var _a, _b;\n devtools = hook;\n if (devtools) {\n devtools.enabled = true;\n buffer.forEach(({ event, args }) => devtools.emit(event, ...args));\n buffer = [];\n } else if (\n // handle late devtools injection - only do this if we are in an actual\n // browser environment to avoid the timer handle stalling test runner exit\n // (#4815)\n typeof window !== \"undefined\" && // some envs mock window but not fully\n window.HTMLElement && // also exclude jsdom\n !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes(\"jsdom\"))\n ) {\n const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || [];\n replay.push((newHook) => {\n setDevtoolsHook(newHook, target);\n });\n setTimeout(() => {\n if (!devtools) {\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;\n devtoolsNotInstalled = true;\n buffer = [];\n }\n }, 3e3);\n } else {\n devtoolsNotInstalled = true;\n buffer = [];\n }\n}\nfunction devtoolsInitApp(app, version) {\n emit$1(\"app:init\" /* APP_INIT */, app, version, {\n Fragment,\n Text,\n Comment,\n Static\n });\n}\nconst devtoolsComponentAdded = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:added\" /* COMPONENT_ADDED */\n);\nconst devtoolsComponentUpdated = /* @__PURE__ */ createDevtoolsComponentHook(\"component:updated\" /* COMPONENT_UPDATED */);\nconst _devtoolsComponentRemoved = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:removed\" /* COMPONENT_REMOVED */\n);\nconst devtoolsComponentRemoved = (component) => {\n if (devtools && typeof devtools.cleanupBuffer === \"function\" && // remove the component if it wasn't buffered\n !devtools.cleanupBuffer(component)) {\n _devtoolsComponentRemoved(component);\n }\n};\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction createDevtoolsComponentHook(hook) {\n return (component) => {\n emit$1(\n hook,\n component.appContext.app,\n component.uid,\n // fixed by xxxxxx\n // 为 0 是 App,无 parent 是 Page 指向 App\n component.uid === 0 ? void 0 : component.parent ? component.parent.uid : 0,\n component\n );\n };\n}\nconst devtoolsPerfStart = /* @__PURE__ */ createDevtoolsPerformanceHook(\n \"perf:start\" /* PERFORMANCE_START */\n);\nconst devtoolsPerfEnd = /* @__PURE__ */ createDevtoolsPerformanceHook(\n \"perf:end\" /* PERFORMANCE_END */\n);\nfunction createDevtoolsPerformanceHook(hook) {\n return (component, type, time) => {\n emit$1(hook, component.appContext.app, component.uid, component, type, time);\n };\n}\nfunction devtoolsComponentEmit(component, event, params) {\n emit$1(\n \"component:emit\" /* COMPONENT_EMIT */,\n component.appContext.app,\n component,\n event,\n params\n );\n}\n\nfunction emit(instance, event, ...rawArgs) {\n if (instance.isUnmounted)\n return;\n const props = instance.vnode.props || EMPTY_OBJ;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const {\n emitsOptions,\n propsOptions: [propsOptions]\n } = instance;\n if (emitsOptions) {\n if (!(event in emitsOptions) && true) {\n if (!propsOptions || !(toHandlerKey(event) in propsOptions)) {\n warn$1(\n `Component emitted event \"${event}\" but it is neither declared in the emits option nor as an \"${toHandlerKey(event)}\" prop.`\n );\n }\n } else {\n const validator = emitsOptions[event];\n if (isFunction(validator)) {\n const isValid = validator(...rawArgs);\n if (!isValid) {\n warn$1(\n `Invalid event arguments: event validation failed for event \"${event}\".`\n );\n }\n }\n }\n }\n }\n let args = rawArgs;\n const isModelListener = event.startsWith(\"update:\");\n const modelArg = isModelListener && event.slice(7);\n if (modelArg && modelArg in props) {\n const modifiersKey = `${modelArg === \"modelValue\" ? \"model\" : modelArg}Modifiers`;\n const { number, trim } = props[modifiersKey] || EMPTY_OBJ;\n if (trim) {\n args = rawArgs.map((a) => isString(a) ? a.trim() : a);\n }\n if (number) {\n args = rawArgs.map(looseToNumber);\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentEmit(instance, event, args);\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {\n warn$1(\n `Event \"${lowerCaseEvent}\" is emitted in component ${formatComponentName(\n instance,\n instance.type\n )} but the handler is registered for \"${event}\". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use \"${hyphenate(\n event\n )}\" instead of \"${event}\".`\n );\n }\n }\n let handlerName;\n let handler = props[handlerName = toHandlerKey(event)] || // also try camelCase event handler (#2249)\n props[handlerName = toHandlerKey(camelize(event))];\n if (!handler && isModelListener) {\n handler = props[handlerName = toHandlerKey(hyphenate(event))];\n }\n if (handler) {\n callWithAsyncErrorHandling(\n handler,\n instance,\n 6,\n args\n );\n }\n const onceHandler = props[handlerName + `Once`];\n if (onceHandler) {\n if (!instance.emitted) {\n instance.emitted = {};\n } else if (instance.emitted[handlerName]) {\n return;\n }\n instance.emitted[handlerName] = true;\n callWithAsyncErrorHandling(\n onceHandler,\n instance,\n 6,\n args\n );\n }\n}\nfunction normalizeEmitsOptions(comp, appContext, asMixin = false) {\n const cache = appContext.emitsCache;\n const cached = cache.get(comp);\n if (cached !== void 0) {\n return cached;\n }\n const raw = comp.emits;\n let normalized = {};\n let hasExtends = false;\n if (__VUE_OPTIONS_API__ && !isFunction(comp)) {\n const extendEmits = (raw2) => {\n const normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true);\n if (normalizedFromExtend) {\n hasExtends = true;\n extend(normalized, normalizedFromExtend);\n }\n };\n if (!asMixin && appContext.mixins.length) {\n appContext.mixins.forEach(extendEmits);\n }\n if (comp.extends) {\n extendEmits(comp.extends);\n }\n if (comp.mixins) {\n comp.mixins.forEach(extendEmits);\n }\n }\n if (!raw && !hasExtends) {\n if (isObject(comp)) {\n cache.set(comp, null);\n }\n return null;\n }\n if (isArray(raw)) {\n raw.forEach((key) => normalized[key] = null);\n } else {\n extend(normalized, raw);\n }\n if (isObject(comp)) {\n cache.set(comp, normalized);\n }\n return normalized;\n}\nfunction isEmitListener(options, key) {\n if (!options || !isOn(key)) {\n return false;\n }\n key = key.slice(2).replace(/Once$/, \"\");\n return hasOwn(options, key[0].toLowerCase() + key.slice(1)) || hasOwn(options, hyphenate(key)) || hasOwn(options, key);\n}\n\nlet currentRenderingInstance = null;\nlet currentScopeId = null;\nfunction setCurrentRenderingInstance(instance) {\n const prev = currentRenderingInstance;\n currentRenderingInstance = instance;\n currentScopeId = instance && instance.type.__scopeId || null;\n return prev;\n}\nconst withScopeId = (_id) => withCtx;\nfunction withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) {\n if (!ctx)\n return fn;\n if (fn._n) {\n return fn;\n }\n const renderFnWithContext = (...args) => {\n if (renderFnWithContext._d) {\n setBlockTracking(-1);\n }\n const prevInstance = setCurrentRenderingInstance(ctx);\n let res;\n try {\n res = fn(...args);\n } finally {\n setCurrentRenderingInstance(prevInstance);\n if (renderFnWithContext._d) {\n setBlockTracking(1);\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentUpdated(ctx);\n }\n return res;\n };\n renderFnWithContext._n = true;\n renderFnWithContext._c = true;\n renderFnWithContext._d = true;\n return renderFnWithContext;\n}\n\nfunction markAttrsAccessed() {\n}\n\nconst COMPONENTS = \"components\";\nconst DIRECTIVES = \"directives\";\nfunction resolveComponent(name, maybeSelfReference) {\n return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;\n}\nconst NULL_DYNAMIC_COMPONENT = Symbol.for(\"v-ndc\");\nfunction resolveDirective(name) {\n return resolveAsset(DIRECTIVES, name);\n}\nfunction resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) {\n const instance = currentRenderingInstance || currentInstance;\n if (instance) {\n const Component = instance.type;\n if (type === COMPONENTS) {\n const selfName = getComponentName(\n Component,\n false\n );\n if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) {\n return Component;\n }\n }\n const res = (\n // local registration\n // check instance[type] first which is resolved for options API\n resolve(instance[type] || Component[type], name) || // global registration\n resolve(instance.appContext[type], name)\n );\n if (!res && maybeSelfReference) {\n return Component;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && warnMissing && !res) {\n const extra = type === COMPONENTS ? `\nIf this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.` : ``;\n warn$1(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);\n }\n return res;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `resolve${capitalize(type.slice(0, -1))} can only be used in render() or setup().`\n );\n }\n}\nfunction resolve(registry, name) {\n return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]);\n}\n\nconst ssrContextKey = Symbol.for(\"v-scx\");\nconst useSSRContext = () => {\n {\n const ctx = inject(ssrContextKey);\n if (!ctx) {\n !!(process.env.NODE_ENV !== \"production\") && warn$1(\n `Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build.`\n );\n }\n return ctx;\n }\n};\n\nfunction watchEffect(effect, options) {\n return doWatch(effect, null, options);\n}\nfunction watchPostEffect(effect, options) {\n return doWatch(\n effect,\n null,\n !!(process.env.NODE_ENV !== \"production\") ? extend({}, options, { flush: \"post\" }) : { flush: \"post\" }\n );\n}\nfunction watchSyncEffect(effect, options) {\n return doWatch(\n effect,\n null,\n !!(process.env.NODE_ENV !== \"production\") ? extend({}, options, { flush: \"sync\" }) : { flush: \"sync\" }\n );\n}\nconst INITIAL_WATCHER_VALUE = {};\nfunction watch(source, cb, options) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isFunction(cb)) {\n warn$1(\n `\\`watch(fn, options?)\\` signature has been moved to a separate API. Use \\`watchEffect(fn, options?)\\` instead. \\`watch\\` now only supports \\`watch(source, cb, options?) signature.`\n );\n }\n return doWatch(source, cb, options);\n}\nfunction doWatch(source, cb, {\n immediate,\n deep,\n flush,\n once,\n onTrack,\n onTrigger\n} = EMPTY_OBJ) {\n if (cb && once) {\n const _cb = cb;\n cb = (...args) => {\n _cb(...args);\n unwatch();\n };\n }\n if (!!(process.env.NODE_ENV !== \"production\") && deep !== void 0 && typeof deep === \"number\") {\n warn$1(\n `watch() \"deep\" option with number value will be used as watch depth in future versions. Please use a boolean instead to avoid potential breakage.`\n );\n }\n if (!!(process.env.NODE_ENV !== \"production\") && !cb) {\n if (immediate !== void 0) {\n warn$1(\n `watch() \"immediate\" option is only respected when using the watch(source, callback, options?) signature.`\n );\n }\n if (deep !== void 0) {\n warn$1(\n `watch() \"deep\" option is only respected when using the watch(source, callback, options?) signature.`\n );\n }\n if (once !== void 0) {\n warn$1(\n `watch() \"once\" option is only respected when using the watch(source, callback, options?) signature.`\n );\n }\n }\n const warnInvalidSource = (s) => {\n warn$1(\n `Invalid watch source: `,\n s,\n `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`\n );\n };\n const instance = currentInstance;\n const reactiveGetter = (source2) => deep === true ? source2 : (\n // for deep: false, only traverse root-level properties\n traverse(source2, deep === false ? 1 : void 0)\n );\n let getter;\n let forceTrigger = false;\n let isMultiSource = false;\n if (isRef(source)) {\n getter = () => source.value;\n forceTrigger = isShallow(source);\n } else if (isReactive(source)) {\n getter = () => reactiveGetter(source);\n forceTrigger = true;\n } else if (isArray(source)) {\n isMultiSource = true;\n forceTrigger = source.some((s) => isReactive(s) || isShallow(s));\n getter = () => source.map((s) => {\n if (isRef(s)) {\n return s.value;\n } else if (isReactive(s)) {\n return reactiveGetter(s);\n } else if (isFunction(s)) {\n return callWithErrorHandling(s, instance, 2);\n } else {\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(s);\n }\n });\n } else if (isFunction(source)) {\n if (cb) {\n getter = () => callWithErrorHandling(source, instance, 2);\n } else {\n getter = () => {\n if (cleanup) {\n cleanup();\n }\n return callWithAsyncErrorHandling(\n source,\n instance,\n 3,\n [onCleanup]\n );\n };\n }\n } else {\n getter = NOOP;\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(source);\n }\n if (cb && deep) {\n const baseGetter = getter;\n getter = () => traverse(baseGetter());\n }\n let cleanup;\n let onCleanup = (fn) => {\n cleanup = effect.onStop = () => {\n callWithErrorHandling(fn, instance, 4);\n cleanup = effect.onStop = void 0;\n };\n };\n let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;\n const job = () => {\n if (!effect.active || !effect.dirty) {\n return;\n }\n if (cb) {\n const newValue = effect.run();\n if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue)) || false) {\n if (cleanup) {\n cleanup();\n }\n callWithAsyncErrorHandling(cb, instance, 3, [\n newValue,\n // pass undefined as the old value when it's changed for the first time\n oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue,\n onCleanup\n ]);\n oldValue = newValue;\n }\n } else {\n effect.run();\n }\n };\n job.allowRecurse = !!cb;\n let scheduler;\n if (flush === \"sync\") {\n scheduler = job;\n } else if (flush === \"post\") {\n scheduler = () => queuePostRenderEffect$1(job, instance && instance.suspense);\n } else {\n job.pre = true;\n if (instance)\n job.id = instance.uid;\n scheduler = () => queueJob(job);\n }\n const effect = new ReactiveEffect(getter, NOOP, scheduler);\n const scope = getCurrentScope();\n const unwatch = () => {\n effect.stop();\n if (scope) {\n remove(scope.effects, effect);\n }\n };\n if (!!(process.env.NODE_ENV !== \"production\")) {\n effect.onTrack = onTrack;\n effect.onTrigger = onTrigger;\n }\n if (cb) {\n if (immediate) {\n job();\n } else {\n oldValue = effect.run();\n }\n } else if (flush === \"post\") {\n queuePostRenderEffect$1(\n effect.run.bind(effect),\n instance && instance.suspense\n );\n } else {\n effect.run();\n }\n return unwatch;\n}\nfunction instanceWatch(source, value, options) {\n const publicThis = this.proxy;\n const getter = isString(source) ? source.includes(\".\") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis);\n let cb;\n if (isFunction(value)) {\n cb = value;\n } else {\n cb = value.handler;\n options = value;\n }\n const reset = setCurrentInstance(this);\n const res = doWatch(getter, cb.bind(publicThis), options);\n reset();\n return res;\n}\nfunction createPathGetter(ctx, path) {\n const segments = path.split(\".\");\n return () => {\n let cur = ctx;\n for (let i = 0; i < segments.length && cur; i++) {\n cur = cur[segments[i]];\n }\n return cur;\n };\n}\nfunction traverse(value, depth, currentDepth = 0, seen) {\n if (!isObject(value) || value[\"__v_skip\"]) {\n return value;\n }\n if (depth && depth > 0) {\n if (currentDepth >= depth) {\n return value;\n }\n currentDepth++;\n }\n seen = seen || /* @__PURE__ */ new Set();\n if (seen.has(value)) {\n return value;\n }\n seen.add(value);\n if (isRef(value)) {\n traverse(value.value, depth, currentDepth, seen);\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n traverse(value[i], depth, currentDepth, seen);\n }\n } else if (isSet(value) || isMap(value)) {\n value.forEach((v) => {\n traverse(v, depth, currentDepth, seen);\n });\n } else if (isPlainObject(value)) {\n for (const key in value) {\n traverse(value[key], depth, currentDepth, seen);\n }\n }\n return value;\n}\n\nfunction validateDirectiveName(name) {\n if (isBuiltInDirective(name)) {\n warn$1(\"Do not use built-in directive ids as custom directive id: \" + name);\n }\n}\nfunction withDirectives(vnode, directives) {\n if (currentRenderingInstance === null) {\n !!(process.env.NODE_ENV !== \"production\") && warn$1(`withDirectives can only be used inside render functions.`);\n return vnode;\n }\n const instance = getExposeProxy(currentRenderingInstance) || currentRenderingInstance.proxy;\n const bindings = vnode.dirs || (vnode.dirs = []);\n for (let i = 0; i < directives.length; i++) {\n let [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i];\n if (dir) {\n if (isFunction(dir)) {\n dir = {\n mounted: dir,\n updated: dir\n };\n }\n if (dir.deep) {\n traverse(value);\n }\n bindings.push({\n dir,\n instance,\n value,\n oldValue: void 0,\n arg,\n modifiers\n });\n }\n }\n return vnode;\n}\n\nfunction createAppContext() {\n return {\n app: null,\n config: {\n isNativeTag: NO,\n performance: false,\n globalProperties: {},\n optionMergeStrategies: {},\n errorHandler: void 0,\n warnHandler: void 0,\n compilerOptions: {}\n },\n mixins: [],\n components: {},\n directives: {},\n provides: /* @__PURE__ */ Object.create(null),\n optionsCache: /* @__PURE__ */ new WeakMap(),\n propsCache: /* @__PURE__ */ new WeakMap(),\n emitsCache: /* @__PURE__ */ new WeakMap()\n };\n}\nlet uid$1 = 0;\nfunction createAppAPI(render, hydrate) {\n return function createApp(rootComponent, rootProps = null) {\n if (!isFunction(rootComponent)) {\n rootComponent = extend({}, rootComponent);\n }\n if (rootProps != null && !isObject(rootProps)) {\n !!(process.env.NODE_ENV !== \"production\") && warn$1(`root props passed to app.mount() must be an object.`);\n rootProps = null;\n }\n const context = createAppContext();\n const installedPlugins = /* @__PURE__ */ new WeakSet();\n const app = context.app = {\n _uid: uid$1++,\n _component: rootComponent,\n _props: rootProps,\n _container: null,\n _context: context,\n _instance: null,\n version,\n get config() {\n return context.config;\n },\n set config(v) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `app.config cannot be replaced. Modify individual options instead.`\n );\n }\n },\n use(plugin, ...options) {\n if (installedPlugins.has(plugin)) {\n !!(process.env.NODE_ENV !== \"production\") && warn$1(`Plugin has already been applied to target app.`);\n } else if (plugin && isFunction(plugin.install)) {\n installedPlugins.add(plugin);\n plugin.install(app, ...options);\n } else if (isFunction(plugin)) {\n installedPlugins.add(plugin);\n plugin(app, ...options);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n `A plugin must either be a function or an object with an \"install\" function.`\n );\n }\n return app;\n },\n mixin(mixin) {\n if (__VUE_OPTIONS_API__) {\n if (!context.mixins.includes(mixin)) {\n context.mixins.push(mixin);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\n \"Mixin has already been applied to target app\" + (mixin.name ? `: ${mixin.name}` : \"\")\n );\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(\"Mixins are only available in builds supporting Options API\");\n }\n return app;\n },\n component(name, component) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n validateComponentName(name, context.config);\n }\n if (!component) {\n return context.components[name];\n }\n if (!!(process.env.NODE_ENV !== \"production\") && context.components[name]) {\n warn$1(`Component \"${name}\" has already been registered in target app.`);\n }\n context.components[name] = component;\n return app;\n },\n directive(name, directive) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n validateDirectiveName(name);\n }\n if (!directive) {\n return context.directives[name];\n }\n if (!!(process.env.NODE_ENV !== \"production\") && context.directives[name]) {\n warn$1(`Directive \"${name}\" has already been registered in target app.`);\n }\n context.directives[name] = directive;\n return app;\n },\n // fixed by xxxxxx\n mount() {\n },\n // fixed by xxxxxx\n unmount() {\n },\n provide(key, value) {\n if (!!(process.env.NODE_ENV !== \"production\") && key in context.provides) {\n warn$1(\n `App already provides property with key \"${String(key)}\". It will be overwritten with the new value.`\n );\n }\n context.provides[key] = value;\n return app;\n },\n runWithContext(fn) {\n const lastApp = currentApp;\n currentApp = app;\n try {\n return fn();\n } finally {\n currentApp = lastApp;\n }\n }\n };\n return app;\n };\n}\nlet currentApp = null;\n\nfunction provide(key, value) {\n if (!currentInstance) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(`provide() can only be used inside setup().`);\n }\n } else {\n let provides = currentInstance.provides;\n const parentProvides = currentInstance.parent && currentInstance.parent.provides;\n if (parentProvides === provides) {\n provides = currentInstance.provides = Object.create(parentProvides);\n }\n provides[key] = value;\n if (currentInstance.type.mpType === \"app\") {\n currentInstance.appContext.app.provide(key, value);\n }\n }\n}\nfunction inject(key, defaultValue, treatDefaultAsFactory = false) {\n const instance = currentInstance || currentRenderingInstance;\n if (instance || currentApp) {\n const provides = instance ? instance.parent == null ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : currentApp._context.provides;\n if (provides && key in provides) {\n return provides[key];\n } else if (arguments.length > 1) {\n return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(`injection \"${String(key)}\" not found.`);\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn$1(`inject() can only be used inside setup() or functional components.`);\n }\n}\nfunction hasInjectionContext() {\n return !!(currentInstance || currentRenderingInstance || currentApp);\n}\n\n/*! #__NO_SIDE_EFFECTS__ */\n// @__NO_SIDE_EFFECTS__\nfunction defineComponent(options, extraOptions) {\n return isFunction(options) ? (\n // #8326: extend call and options.name access are considered side-effects\n // by Rollup, so we have to wrap it in a pure-annotated IIFE.\n /* @__PURE__ */ (() => extend({ name: options.name }, extraOptions, { setup: options }))()\n ) : options;\n}\n\nconst isKeepAlive = (vnode) => vnode.type.__isKeepAlive;\nfunction onActivated(hook, target) {\n registerKeepAliveHook(hook, \"a\", target);\n}\nfunction onDeactivated(hook, target) {\n registerKeepAliveHook(hook, \"da\", target);\n}\nfunction registerKeepAliveHook(hook, type, target = currentInstance) {\n const wrappedHook = hook.__wdc || (hook.__wdc = () => {\n let current = target;\n while (current) {\n if (current.isDeactivated) {\n return;\n }\n current = current.parent;\n }\n return hook();\n });\n injectHook(type, wrappedHook, target);\n if (target) {\n let current = target.parent;\n while (current && current.parent) {\n if (isKeepAlive(current.parent.vnode)) {\n injectToKeepAliveRoot(wrappedHook, type, target, current);\n }\n current = current.parent;\n }\n }\n}\nfunction injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {\n const injected = injectHook(\n type,\n hook,\n keepAliveRoot,\n true\n /* prepend */\n );\n onUnmounted(() => {\n remove(keepAliveRoot[type], injected);\n }, target);\n}\n\nfunction injectHook(type, hook, target = currentInstance, prepend = false) {\n if (target) {\n if (isRootHook(type)) {\n target = target.root;\n }\n const hooks = target[type] || (target[type] = []);\n const wrappedHook = hook.__weh || (hook.__weh = (...args) => {\n if (target.isUnmounted) {\n return;\n }\n pauseTracking();\n const reset = setCurrentInstance(target);\n const res = callWithAsyncErrorHandling(hook, target, type, args);\n reset();\n resetTracking();\n return res;\n });\n if (prepend) {\n hooks.unshift(wrappedHook);\n } else {\n hooks.push(wrappedHook);\n }\n return wrappedHook;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n const apiName = toHandlerKey(\n (ErrorTypeStrings[type] || type.replace(/^on/, \"\")).replace(/ hook$/, \"\")\n );\n warn$1(\n `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().` + (``)\n );\n }\n}\nconst createHook = (lifecycle) => (hook, target = currentInstance) => (\n // post-create lifecycle registrations are noops during SSR (except for serverPrefetch)\n (!isInSSRComponentSetup || lifecycle === \"sp\") && injectHook(lifecycle, (...args) => hook(...args), target)\n);\nconst onBeforeMount = createHook(\"bm\");\nconst onMounted = createHook(\"m\");\nconst onBeforeUpdate = createHook(\"bu\");\nconst onUpdated = createHook(\"u\");\nconst onBeforeUnmount = createHook(\"bum\");\nconst onUnmounted = createHook(\"um\");\nconst onServerPrefetch = createHook(\"sp\");\nconst onRenderTriggered = createHook(\n \"rtg\"\n);\nconst onRenderTracked = createHook(\n \"rtc\"\n);\nfunction onErrorCaptured(hook, target = currentInstance) {\n injectHook(\"ec\", hook, target);\n}\n\nfunction toHandlers(obj, preserveCaseIfNecessary) {\n const ret = {};\n if (!!(process.env.NODE_ENV !== \"production\") && !isObject(obj)) {\n warn$1(`v-on with no argument expects an object value.`);\n return ret;\n }\n for (const key in obj) {\n ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key];\n }\n return ret;\n}\n\nconst getPublicInstance = (i) => {\n if (!i)\n return null;\n if (isStatefulComponent(i))\n return getExposeProxy(i) || i.proxy;\n return getPublicInstance(i.parent);\n};\nconst publicPropertiesMap = (\n // Move PURE marker to new line to workaround compiler discarding it\n // due to type annotation\n /* @__PURE__ */ extend(/* @__PURE__ */ Object.create(null), {\n $: (i) => i,\n // fixed by xxxxxx vue-i18n 在 dev 模式,访问了 $el,故模拟一个假的\n // $el: i => i.vnode.el,\n $el: (i) => i.__$el || (i.__$el = {}),\n $data: (i) => i.data,\n $props: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.props) : i.props,\n $attrs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.attrs) : i.attrs,\n $slots: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.slots) : i.slots,\n $refs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.refs) : i.refs,\n $parent: (i) => getPublicInstance(i.parent),\n $root: (i) => getPublicInstance(i.root),\n $emit: (i) => i.emit,\n $options: (i) => __VUE_OPTIONS_API__ ? resolveMergedOptions(i) : i.type,\n $forceUpdate: (i) => i.f || (i.f = () => {\n i.effect.dirty = true;\n queueJob(i.update);\n }),\n // $nextTick: i => i.n || (i.n = nextTick.bind(i.proxy!)),// fixed by xxxxxx\n $watch: (i) => __VUE_OPTIONS_API__ ? instanceWatch.bind(i) : NOOP\n })\n);\nconst isReservedPrefix = (key) => key === \"_\" || key === \"$\";\nconst hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key);\nconst PublicInstanceProxyHandlers = {\n get({ _: instance }, key) {\n const { ctx, setupState, data, props, accessCache, type, appContext } = instance;\n if (!!(process.env.NODE_ENV !== \"production\") && key === \"__isVue\") {\n return true;\n }\n let normalizedProps;\n if (key[0] !== \"$\") {\n const n = accessCache[key];\n if (n !== void 0) {\n switch (n) {\n case 1 /* SETUP */:\n return setupState[key];\n case 2 /* DATA */:\n return data[key];\n case 4 /* CONTEXT */:\n return ctx[key];\n case 3 /* PROPS */:\n return props[key];\n }\n } else if (hasSetupBinding(setupState, key)) {\n accessCache[key] = 1 /* SETUP */;\n return setupState[key];\n } else if (data !== EMPTY_OBJ && hasOwn(data, key)) {\n accessCache[key] = 2 /* DATA */;\n return data[key];\n } else if (\n // only cache other properties when instance has declared (thus stable)\n // props\n (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key)\n ) {\n accessCache[key] = 3 /* PROPS */;\n return props[key];\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (!__VUE_OPTIONS_API__ || shouldCacheAccess) {\n accessCache[key] = 0 /* OTHER */;\n }\n }\n const publicGetter = publicPropertiesMap[key];\n let cssModule, globalProperties;\n if (publicGetter) {\n if (key === \"$attrs\") {\n track(instance, \"get\", key);\n !!(process.env.NODE_ENV !== \"production\") && markAttrsAccessed();\n } else if (!!(process.env.NODE_ENV !== \"production\") && key === \"$slots\") {\n track(instance, \"get\", key);\n }\n return publicGetter(instance);\n } else if (\n // css module (injected by vue-loader)\n (cssModule = type.__cssModules) && (cssModule = cssModule[key])\n ) {\n return cssModule;\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (\n // global properties\n globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key)\n ) {\n {\n return globalProperties[key];\n }\n } else if (!!(process.env.NODE_ENV !== \"production\") && currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading\n // to infinite warning loop\n key.indexOf(\"__v\") !== 0)) {\n if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) {\n warn$1(\n `Property ${JSON.stringify(\n key\n )} must be accessed via $data because it starts with a reserved character (\"$\" or \"_\") and is not proxied on the render context.`\n );\n } else if (instance === currentRenderingInstance) {\n warn$1(\n `Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.`\n );\n }\n }\n },\n set({ _: instance }, key, value) {\n const { data, setupState, ctx } = instance;\n if (hasSetupBinding(setupState, key)) {\n setupState[key] = value;\n return true;\n } else if (!!(process.env.NODE_ENV !== \"production\") && setupState.__isScriptSetup && hasOwn(setupState, key)) {\n warn$1(`Cannot mutate \r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/Home/Home.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni"],"mappings":";;;AAmBA,MAAO,gBAAe,MAAW;AACjC,MAAO,gBAAe,MAAW;AACjC,MAAO,cAAa,MAAW;AAC/B,eAAe,MAAW;AAC1B,MAAK,YAAU;AAAA,EACb,QAAQ,CAAC,SAAS;AAAA,EAClB,OAAO;AACL,WAAO;EACR;AAAA,EACD,SAAS;AAAA,EAER;AAAA,EACD,SAAS;AAAA,IACP,kBAAiB;AACfA,oBAAAA,MAAY,MAAA,OAAA,6BAAAA,cAAG,KAAA;AACf,WAAK,QAAQ,WAAW,gBAAe,EAAG;AAC1CA,oBAAAA,MAAI,WAAW,EAAE,KAAK,sBAAsB;AAAA,IAC9C;AAAA,EACD;AAAA,EACD,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACH;;;;;;;;;;;;;;;;;;;;AC3CA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
+{"version":3,"file":"Home.js","sources":["pages/Home/Home.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvSG9tZS9Ib21lLnZ1ZQ"],"sourcesContent":["\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/Home/Home.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni"],"mappings":";;;AAmBA,MAAO,gBAAe,MAAW;AACjC,MAAO,gBAAe,MAAW;AACjC,MAAO,cAAa,MAAW;AAC/B,eAAe,MAAW;AAC1B,MAAK,YAAU;AAAA,EACb,QAAQ,CAAC,SAAS;AAAA,EAClB,OAAO;AACL,WAAO;EACR;AAAA,EACD,SAAS;AAAA,EAER;AAAA,EACD,SAAS;AAAA,IACP,kBAAiB;AACf,WAAK,QAAQ,WAAW,gBAAe,EAAG;AAC1CA,oBAAAA,MAAI,WAAW,EAAE,KAAK,sBAAsB;AAAA,IAC9C;AAAA,EACD;AAAA,EACD,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACH;;;;;;;;;;;;;;;;;;;;AC1CA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/Mine/Mine.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/Mine/Mine.js.map
index 23f1c2e..c455ea2 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/Mine/Mine.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/Mine/Mine.js.map
@@ -1 +1 @@
-{"version":3,"file":"Mine.js","sources":["pages/Mine/Mine.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvTWluZS9NaW5lLnZ1ZQ"],"sourcesContent":["\r\n \r\n \r\n \r\n \r\n {{ userinfo.nickName }}\r\n \r\n \r\n\t \r\n\t \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/Mine/Mine.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni"],"mappings":";;;AAoBA,eAAe,MAAW;AAC1B,MAAK,YAAU;AAAA,EACb,OAAO;AACL,WAAO;AAAA,MACL,UAAU,CAAE;AAAA;EAEf;AAAA,EACD,SAAS;AACVA,kBAAAA,MAAI,WAAW;AAAA,MACV,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,WAAW,IAAI;AACpBA,sBAAY,MAAA,MAAA,OAAA,6BAAA,KAAK,QAAQ;AAAA,MAC1B;AAAA,IACH,CAAC;AAAA,EACF;AAAA,EACD,SAAS;AAAA,IACP,YAAY;AACdA,oBAAAA,MAAI,WAAW;AAAA,QACd,KAAK;AAAA,MACN,CAAC;AAAA,IACD;AAAA,EACC;AAAA,EACD,YAAY;AAAA,IACV;AAAA,EACD;AACH;;;;;;;;;;;;;;;;;;AC7CA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
+{"version":3,"file":"Mine.js","sources":["pages/Mine/Mine.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvTWluZS9NaW5lLnZ1ZQ"],"sourcesContent":["\r\n \r\n \r\n \r\n \r\n {{ userinfo.nickName }}\r\n \r\n \r\n\t \r\n\t \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/Mine/Mine.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni"],"mappings":";;;AAoBA,eAAe,MAAW;AAC1B,MAAK,YAAU;AAAA,EACb,OAAO;AACL,WAAO;AAAA,MACL,UAAU,CAAE;AAAA;EAEf;AAAA,EACD,SAAS;AACVA,kBAAAA,MAAI,WAAW;AAAA,MACV,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,WAAW,IAAI;AAAA,MACrB;AAAA,IACH,CAAC;AAAA,EACF;AAAA,EACD,SAAS;AAAA,IACP,YAAY;AACdA,oBAAAA,MAAI,WAAW;AAAA,QACd,KAAK;AAAA,MACN,CAAC;AAAA,IACD;AAAA,EACC;AAAA,EACD,YAAY;AAAA,IACV;AAAA,EACD;AACH;;;;;;;;;;;;;;;;;;AC5CA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/Setting/Setting.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/Setting/Setting.js.map
index 9bffb78..db3fd7c 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/Setting/Setting.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/Setting/Setting.js.map
@@ -1 +1 @@
-{"version":3,"file":"Setting.js","sources":["pages/Setting/Setting.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvU2V0dGluZy9TZXR0aW5nLnZ1ZQ"],"sourcesContent":["\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/Setting/Setting.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","request"],"mappings":";;;AAkBA,MAAK,YAAU;AAAA,EACb,QAAQ,CAAC,SAAS;AAAA,EAClB,OAAO;AACL,WAAO;AAAA,MACL,UAAS;AAAA,MACT,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,MAAM,CAAE;AAAA,MACR,SAAS;AAAA;EAEZ;AAAA,EACD,OAAO,QAAQ;AACbA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,KAAK,IAAI,KAAK;AACnB,aAAK,OAAO,IAAI,KAAK;AACrB,aAAK,WAAW,IAAI,KAAK;AAAA,MAC1B;AAAA,IACH,CAAC;AACDA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,UAAU,IAAI;AAAA,MACpB;AAAA,IACH,CAAC;AAAA,EACF;AAAA,EACD,SAAS;AAAA;AAAA,IAEP,UAAU,GAAG;AACX,WAAK,OAAO,EAAE,OAAO;AAAA,IACtB;AAAA;AAAA,IAED,MAAM,SAAS,GAAG;AAChB,YAAM,EAAE,UAAQ,IAAM,EAAE;AACxB,WAAK,WAAW;AAAA,IACjB;AAAA;AAAA,IAED,MAAM,QAAQ,GAAG;AACfA,oBAAAA,MAAI,YAAY;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,MACR,CAAC;AACDA,oBAAY,MAAA,MAAA,OAAA,mCAAA,YAAY,KAAK,QAAQ;AACrCA,0EAAY,QAAQ,KAAK,IAAI;AAC7BA,oBAAY,MAAA,MAAA,OAAA,mCAAA,MAAM,KAAK,EAAE;AACzBA,oBAAA,MAAA,MAAA,OAAA,mCAAY,WAAW,KAAK,OAAO;AAEnC,YAAM,MAAM,MAAMC,2BAAQ;AAAA,QACxB,KAAK;AAAA,QACL,QAAQ;AAAA,QACR,MAAM;AAAA,UACJ,IAAI,KAAK;AAAA,UACT,YAAY,KAAK;AAAA,UACjB,UAAU,KAAK;AAAA,UACf,SAAS,KAAK;AAAA,QACf;AAAA,QACD,UAAU;AAAA,MACZ,CAAC;AACDD,oBAAA,MAAA,MAAA,OAAA,mCAAY,OAAO,GAAG;AACtB,UAAI,IAAI,SAAS,KAAK;AACpBA,sBAAAA,MAAI,UAAU;AAAA,UACZ,OAAO;AAAA,UACP,MAAM;AAAA,QACR,CAAC;AACDA,sBAAY,MAAA,MAAA,OAAA,mCAAA,QAAQ,IAAI,IAAI;AAC5BA,sBAAG,MAAC,eAAe,YAAY,IAAI,KAAK,IAAI;AAC5CA,sBAAG,MAAC,YAAW;AAEfA,sBAAAA,MAAI,aAAa;AAAA,UACb,OAAO;AAAA,QACX,CAAC;AAAA,aAEI;AACLA,sBAAAA,MAAI,UAAU;AAAA,UACZ,OAAO;AAAA,UACP,MAAM;AAAA,QACR,CAAC;AAAA,MACH;AAAA,IACD;AAAA,EACF;AACH;;;;;;;;;;AClGA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
+{"version":3,"file":"Setting.js","sources":["pages/Setting/Setting.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvU2V0dGluZy9TZXR0aW5nLnZ1ZQ"],"sourcesContent":["\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/Setting/Setting.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","postFile","generateFileName","request"],"mappings":";;;;;AAoBA,MAAK,YAAU;AAAA,EACb,QAAQ,CAAC,SAAS;AAAA,EAClB,OAAO;AACL,WAAO;AAAA,MACL,UAAS;AAAA,MACT,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,MAAM,CAAE;AAAA,MACR,SAAS;AAAA;EAEZ;AAAA,EACD,OAAO,QAAQ;AACbA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,KAAK,IAAI,KAAK;AACnB,aAAK,OAAO,IAAI,KAAK;AACrB,aAAK,WAAW,IAAI,KAAK;AAAA,MAC1B;AAAA,IACH,CAAC;AACDA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,UAAU,IAAI;AAAA,MACpB;AAAA,IACH,CAAC;AAAA,EACF;AAAA,EACD,SAAS;AAAA;AAAA,IAEP,UAAU,GAAG;AACX,WAAK,OAAO,EAAE,OAAO;AAAA,IACtB;AAAA;AAAA,IAED,MAAM,SAAS,GAAG;AAChB,YAAM,EAAE,UAAQ,IAAM,EAAE;AACxB,WAAK,WAAW;AAAA,IACjB;AAAA;AAAA,IAED,MAAM,QAAQ,GAAG;AACfA,oBAAAA,MAAI,YAAY;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,MACR,CAAC;AAEDC,qCAAS;AAAA,QACL,MAAM,KAAK;AAAA,QACX,MAAKC,4BAAAA,iBAAkB;AAAA,MACzB,CAAC,EAAE,KAAK,CAAC,QAAQ;AACf,aAAK,WAAW;AAAA,MAClB,CAAC,EAAE,MAAM,CAAC,QAAQ;AAChBF,sBAAAA,sDAAY,GAAG;AAAA,MACjB,CAAC;AAED,UAAG,KAAK,UAAS;AACnB,cAAM,MAAM,MAAMG,2BAAQ;AAAA,UACxB,KAAK;AAAA,UACL,QAAQ;AAAA,UACR,MAAM;AAAA,YACJ,IAAI,KAAK;AAAA,YACT,YAAY,KAAK;AAAA,YACjB,UAAU,KAAK;AAAA,YACf,SAAS,KAAK,QAAQ;AAAA,UACvB;AAAA,UACD,UAAU;AAAA,QACZ,CAAC;AACD,YAAI,IAAI,SAAS,KAAK;AACpBH,wBAAAA,MAAI,UAAU;AAAA,YACZ,OAAO;AAAA,YACP,MAAM;AAAA,UACR,CAAC;AACDA,wBAAG,MAAC,eAAe,YAAY,IAAI,KAAK,IAAI;AAC5CA,wBAAG,MAAC,YAAW;AAEfA,wBAAAA,MAAI,aAAa;AAAA,YACb,OAAO;AAAA,UACX,CAAC;AAAA,eAEI;AACLA,wBAAAA,MAAI,UAAU;AAAA,YACZ,OAAO;AAAA,YACP,MAAM;AAAA,UACR,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACC;AAAA,EACF;AACH;;;;;;;;;;ACzGA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/UserInformation/UserInformation.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/UserInformation/UserInformation.js.map
index 1f42651..a312f86 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/UserInformation/UserInformation.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/UserInformation/UserInformation.js.map
@@ -1 +1 @@
-{"version":3,"file":"UserInformation.js","sources":["pages/UserInformation/UserInformation.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvVXNlckluZm9ybWF0aW9uL1VzZXJJbmZvcm1hdGlvbi52dWU"],"sourcesContent":["\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/UserInformation/UserInformation.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","request"],"mappings":";;;AAkBA,MAAK,YAAU;AAAA,EACb,QAAQ,CAAC,SAAS;AAAA,EAClB,OAAO;AACL,WAAO;AAAA,MACL,UACE;AAAA,MACF,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,MAAM,CAAE;AAAA,MACR,SAAS;AAAA;EAEZ;AAAA,EACD,OAAO,QAAQ;AACbA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,KAAK,IAAI,KAAK;AAAA,MACpB;AAAA,IACH,CAAC;AACDA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,UAAU,IAAI;AAAA,MACpB;AAAA,IACH,CAAC;AAAA,EAGF;AAAA,EACD,SAAS;AAAA;AAAA,IAEP,UAAU,GAAG;AACX,WAAK,OAAO,EAAE,OAAO;AAAA,IACtB;AAAA;AAAA,IAED,MAAM,SAAS,GAAG;AAChB,YAAM,EAAE,UAAQ,IAAM,EAAE;AACxB,WAAK,WAAW;AAAA,IACjB;AAAA;AAAA,IAED,MAAM,QAAQ,GAAG;AACfA,oBAAAA,MAAI,YAAY;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,MACR,CAAC;AACC,YAAM,EAAE,KAAK,IAAI,MAAMA,cAAAA,MAAI,MAAM;AAAA,QAC/B,UAAU;AAAA,QACV,eAAe;AAAA,MACjB,CAAC;AACDA,oBAAY,MAAA,MAAA,OAAA,mDAAA,QAAQ,IAAI;AACxBA,oBAAY,MAAA,MAAA,OAAA,mDAAA,QAAQ,KAAK,IAAI;AAC7BA,oBAAA,MAAA,MAAA,OAAA,mDAAY,QAAQ,KAAK,QAAQ;AACjCA,oBAAA,MAAA,MAAA,OAAA,mDAAY,QAAQ,KAAK,EAAE;AAC3BA,oBAAA,MAAA,MAAA,OAAA,mDAAY,QAAQ,KAAK,OAAO;AAChC,YAAM,MAAM,MAAMC,2BAAQ;AAAA,QACxB,KAAK;AAAA,QACL,QAAQ;AAAA,QACR,MAAM;AAAA,UACJ,IAAI,KAAK;AAAA,UACT,YAAY,KAAK;AAAA,UACjB,UAAU,KAAK;AAAA,UACf;AAAA,UACA,SAAS,KAAK;AAAA,QACf;AAAA,QACD,UAAU;AAAA,MACZ,CAAC;AACDD,0FAAY,OAAO,GAAG;AACtB,UAAI,IAAI,SAAS,KAAK;AACpBA,sBAAAA,MAAI,UAAU;AAAA,UACZ,OAAO;AAAA,UACP,MAAM;AAAA,QACR,CAAC;AACDA,sBAAA,MAAA,MAAA,OAAA,mDAAY,QAAQ,IAAI,IAAI;AAC5BA,sBAAG,MAAC,eAAe,YAAY,IAAI,KAAK,IAAI;AAC5CA,sBAAG,MAAC,YAAW;AAGfA,sBAAAA,MAAI,SAAS;AAAA,UACX,KAAK,KAAK,QAAQ,YAAY;AAAA;AAAA,QAChC,CAAC;AAAA,aAEI;AACLA,sBAAAA,MAAI,UAAU;AAAA,UACZ,OAAO;AAAA,UACP,MAAM;AAAA,QACR,CAAC;AAAA,MACH;AAAA,IACH;AAAA,EACF;AACH;;;;;;;;;;ACzGA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
+{"version":3,"file":"UserInformation.js","sources":["pages/UserInformation/UserInformation.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvVXNlckluZm9ybWF0aW9uL1VzZXJJbmZvcm1hdGlvbi52dWU"],"sourcesContent":["\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/UserInformation/UserInformation.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","postFile","generateFileName","request"],"mappings":";;;;;AAoBA,MAAK,YAAU;AAAA,EACb,QAAQ,CAAC,SAAS;AAAA,EAClB,OAAO;AACL,WAAO;AAAA,MACL,UACE;AAAA,MACF,MAAM;AAAA,MACN,IAAI;AAAA,MACJ,MAAM,CAAE;AAAA,MACR,SAAS;AAAA;EAEZ;AAAA,EACD,OAAO,QAAQ;AACbA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,KAAK,IAAI,KAAK;AAAA,MACpB;AAAA,IACH,CAAC;AACDA,kBAAAA,MAAI,WAAW;AAAA,MACb,KAAK;AAAA,MACL,SAAS,CAAC,QAAQ;AAChB,aAAK,UAAU,IAAI;AAAA,MACpB;AAAA,IACH,CAAC;AAAA,EAGF;AAAA,EACD,SAAS;AAAA;AAAA,IAEP,UAAU,GAAG;AACX,WAAK,OAAO,EAAE,OAAO;AAAA,IACtB;AAAA;AAAA,IAED,MAAM,SAAS,GAAG;AAChB,YAAM,EAAE,UAAQ,IAAM,EAAE;AACxB,WAAK,WAAW;AAAA,IACjB;AAAA;AAAA,IAED,MAAM,QAAQ,GAAG;AACfA,oBAAAA,MAAI,YAAY;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,MACR,CAAC;AACC,YAAM,EAAE,KAAK,IAAI,MAAMA,cAAAA,MAAI,MAAM;AAAA,QAC/B,UAAU;AAAA,QACV,eAAe;AAAA,MACjB,CAAC;AAEDC,qCAAS;AAAA,QACP,MAAM,KAAK;AAAA,QACX,MAAKC,4BAAAA,iBAAkB;AAAA,MACzB,CAAC,EAAE,KAAK,CAAC,QAAQ;AACf,aAAK,WAAW;AAAA,MAClB,CAAC,EAAE,MAAM,CAAC,QAAQ;AAChBF,sBAAAA,sEAAY,GAAG;AAAA,MACjB,CAAC;AAED,UAAI,KAAK,UAAU;AACjB,cAAM,MAAM,MAAMG,2BAAQ;AAAA,UAC1B,KAAK;AAAA,UACL,QAAQ;AAAA,UACR,MAAM;AAAA,YACJ,IAAI,KAAK;AAAA,YACT,YAAY,KAAK;AAAA,YACjB,UAAU,KAAK;AAAA,YACf;AAAA,YACA,SAAS,KAAK,QAAQ;AAAA,UACvB;AAAA,UACD,UAAU;AAAA,QACZ,CAAC;AACD,YAAI,IAAI,SAAS,KAAK;AACpBH,wBAAAA,MAAI,UAAU;AAAA,YACZ,OAAO;AAAA,YACP,MAAM;AAAA,UACR,CAAC;AACDA,wBAAG,MAAC,eAAe,YAAY,IAAI,KAAK,IAAI;AAC5CA,wBAAG,MAAC,YAAW;AAGfA,wBAAAA,MAAI,SAAS;AAAA,YACX,KAAK,KAAK,QAAQ,YAAY;AAAA;AAAA,UAChC,CAAC;AAAA,eAEI;AACLA,wBAAAA,MAAI,UAAU;AAAA,YACZ,OAAO;AAAA,YACP,MAAM;AAAA,UACR,CAAC;AAAA,QACH;AAAA,aACK;AACHA,sBAAAA,MAAI,UAAU;AAAA,UACZ,OAAO;AAAA,UACP,MAAM;AAAA,QACR,CAAC;AAAA,MACH;AAAA,IAIH;AAAA,EACF;AACH;;;;;;;;;;ACxHA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/login.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/login.js.map
index ab68e66..ffbf56d 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/login.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/login.js.map
@@ -1 +1 @@
-{"version":3,"file":"login.js","sources":["pages/login/login.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvbG9naW4vbG9naW4udnVl"],"sourcesContent":["\r\n \r\n \r\n {{ userInfo.nickName }}\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/login/login.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","request","userSig","genTestUserSig","TUIlogin"],"mappings":";;;;;AAeA,MAAK,YAAU;AAAA,EACb,QAAQ,CAAC,SAAS;AAAA,EAClB,OAAO;AACL,WAAO;AAAA,MACL,UAAU,CAAE;AAAA,MACZ,MAAM,CAAE;AAAA;EAEX;AAAA,EACD,SAAS;AACPA,kBAAAA,MAAI,YAAY;AAAA,MACd,UAAU;AAAA,MACV,SAAS,CAAC,QAAQ;AAChB,aAAK,WAAW,IAAI;AAAA,MACrB;AAAA,IACH,CAAC;AAAA,EACF;AAAA,EACD,SAAS;AAAA;AAAA,IAEP,MAAM,eAAe,GAAG;AACtBA,oBAAAA,MAAI,YAAY;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,MACR,CAAC;AACC,YAAM,MAAM,MAAMC,2BAAQ;AAAA,QACxB,KAAK;AAAA,QACL,QAAQ;AAAA,QACR,MAAM;AAAA,UACJ,MAAM,EAAE,OAAO;AAAA,QAChB;AAAA,QACD,UAAU;AAAA,MACZ,CAAC;AACDD,oBAAY,MAAA,MAAA,OAAA,+BAAA,SAAS,GAAG;AACxB,WAAK,OAAO;AACZ,UAAI,KAAK,KAAK,SAAS,KAAK;AAC1B,YAAI,KAAK,KAAK,KAAK,YAAY;AAC7B,gBAAM,WAAW,OAAO,KAAK,KAAK,KAAK,SAAS,KAAK;AACrD,gBAAM,SAAQ;AACd,gBAAM,EAAC,SAAAE,SAAO,IAAIC,oDAAe;AAAA,YAC/B,UAAW;AAAA,YACX,WAAU,KAAK,KAAK,KAAK,SAAS;AAAA,YAClC;AAAA,WACD;AACDH,wBAAG,MAAC,eAAe,YAAY,KAAK,KAAK,KAAK,QAAQ;AACtDA,8BAAI,eAAe,WAAWE,QAAO;AACrCF,wBAAG,MAAC,eAAe,YAAY,KAAK,KAAK,KAAK,IAAI;AAClDA,wBAAAA,MAAI,SAAS;AAAA,YACX,KAAK;AAAA,UACP,CAAC;AAAA,eACI;AACLA,wBAAG,MAAC,eAAe,YAAY,KAAK,KAAK,KAAK,IAAI;AAClDA,wBAAG,MAAC,YAAW;AACfI,8BAAAA,SAAS,KAAK,KAAK,KAAK,SAAS,OAAO,KAAK,KAAK,KAAK,KAAK,YAAY,OAAO;AAE/EJ,wBAAAA,MAAI,SAAS;AAAA,YACb,KAAK,KAAK,QAAQ,YAAY;AAAA;AAAA,UAChC,CAAC;AAAA,QACD;AAAA,aACK;AACLA,sBAAAA,MAAI,UAAU;AAAA,UACZ,OAAO;AAAA,UACP,MAAM;AAAA,QACR,CAAC;AAAA,MACH;AAAA,IACH;AAAA,EACF;AACH;;;;;;;;;AC/EA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
+{"version":3,"file":"login.js","sources":["pages/login/login.vue","../../HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvbG9naW4vbG9naW4udnVl"],"sourcesContent":["\r\n \r\n \r\n {{ userInfo.nickName }}\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/项目/tk-mini-program/pages/login/login.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","request","genTestUserSig","TUIlogin"],"mappings":";;;;;AAeA,MAAK,YAAU;AAAA,EACb,QAAQ,CAAC,SAAS;AAAA,EAClB,OAAO;AACL,WAAO;AAAA,MACL,UAAU,CAAE;AAAA,MACZ,MAAM,CAAE;AAAA,MACR,SAAS;AAAA;EAEZ;AAAA,EACD,SAAS;AACPA,kBAAAA,MAAI,YAAY;AAAA,MACd,UAAU;AAAA,MACV,SAAS,CAAC,QAAQ;AAChB,aAAK,WAAW,IAAI;AAAA,MACrB;AAAA,IACH,CAAC;AAAA,EACF;AAAA,EACD,SAAS;AAAA;AAAA,IAEP,MAAM,eAAe,GAAG;AACtBA,oBAAAA,MAAI,YAAY;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,MACR,CAAC;AACC,YAAM,MAAM,MAAMC,2BAAQ;AAAA,QACxB,KAAK;AAAA,QACL,QAAQ;AAAA,QACR,MAAM;AAAA,UACJ,MAAM,EAAE,OAAO;AAAA,QAChB;AAAA,QACD,UAAU;AAAA,MACZ,CAAC;AACD,WAAK,OAAO;AACZ,YAAM,WAAW,OAAO,KAAK,KAAK,KAAK,SAAS,KAAK;AACjD,YAAM,SAAQ;AACd,WAAK,UAAUC,oDAAe;AAAA,QAC5B,UAAW;AAAA,QACX,WAAU,KAAK,KAAK,KAAK,SAAS;AAAA,QAClC;AAAA,OACD;AACDF,oBAAG,MAAC,eAAe,YAAY,KAAK,KAAK,KAAK,QAAQ;AACtDA,oBAAAA,MAAI,eAAe,WAAW,KAAK,OAAO;AAC1CA,oBAAG,MAAC,eAAe,YAAY,KAAK,KAAK,KAAK,IAAI;AACtD,UAAI,KAAK,KAAK,SAAS,KAAK;AAC1B,YAAI,KAAK,KAAK,KAAK,YAAY;AAC7BA,wBAAAA,MAAI,SAAS;AAAA,YACX,KAAK;AAAA,UACP,CAAC;AAAA,eACI;AACLA,wBAAG,MAAC,eAAe,YAAY,KAAK,KAAK,KAAK,IAAI;AAClDA,wBAAG,MAAC,YAAW;AACfG,8BAAAA,SAAS,KAAK,KAAK,KAAK,SAAS,OAAO,KAAK,KAAK,KAAK,KAAK,IAAG,KAAK,QAAQ,OAAO;AAEnFH,wBAAAA,MAAI,SAAS;AAAA,YACb,KAAK,KAAK,QAAQ,YAAY;AAAA;AAAA,UAChC,CAAC;AAAA,QACD;AAAA,aACK;AACLA,sBAAAA,MAAI,UAAU;AAAA,UACZ,OAAO;AAAA,UACP,MAAM;AAAA,QACR,CAAC;AAAA,MACH;AAAA,IACH;AAAA,EACF;AACH;;;;;;;;;AC/EA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/mp-weixin/common/vendor.js b/unpackage/dist/dev/mp-weixin/common/vendor.js
index 63b74d9..5e62599 100644
--- a/unpackage/dist/dev/mp-weixin/common/vendor.js
+++ b/unpackage/dist/dev/mp-weixin/common/vendor.js
@@ -6,7 +6,7 @@
**/
function makeMap(str, expectsLowerCase) {
const set2 = new Set(str.split(","));
- return expectsLowerCase ? (val) => set2.has(val.toLowerCase()) : (val) => set2.has(val);
+ return expectsLowerCase ? (val2) => set2.has(val2.toLowerCase()) : (val2) => set2.has(val2);
}
const EMPTY_OBJ$1 = Object.freeze({});
const EMPTY_ARR = Object.freeze([]);
@@ -24,23 +24,23 @@ const remove = (arr, el) => {
}
};
const hasOwnProperty$1 = Object.prototype.hasOwnProperty;
-const hasOwn$1 = (val, key) => hasOwnProperty$1.call(val, key);
+const hasOwn$1 = (val2, key) => hasOwnProperty$1.call(val2, key);
const isArray$1 = Array.isArray;
-const isMap$1 = (val) => toTypeString$1(val) === "[object Map]";
-const isSet$1 = (val) => toTypeString$1(val) === "[object Set]";
-const isFunction$1 = (val) => typeof val === "function";
-const isString = (val) => typeof val === "string";
-const isSymbol = (val) => typeof val === "symbol";
-const isObject$1 = (val) => val !== null && typeof val === "object";
-const isPromise = (val) => {
- return (isObject$1(val) || isFunction$1(val)) && isFunction$1(val.then) && isFunction$1(val.catch);
+const isMap$1 = (val2) => toTypeString$1(val2) === "[object Map]";
+const isSet$1 = (val2) => toTypeString$1(val2) === "[object Set]";
+const isFunction$1 = (val2) => typeof val2 === "function";
+const isString = (val2) => typeof val2 === "string";
+const isSymbol = (val2) => typeof val2 === "symbol";
+const isObject$1 = (val2) => val2 !== null && typeof val2 === "object";
+const isPromise = (val2) => {
+ return (isObject$1(val2) || isFunction$1(val2)) && isFunction$1(val2.then) && isFunction$1(val2.catch);
};
const objectToString$1 = Object.prototype.toString;
const toTypeString$1 = (value) => objectToString$1.call(value);
const toRawType = (value) => {
return toTypeString$1(value).slice(8, -1);
};
-const isPlainObject$1 = (val) => toTypeString$1(val) === "[object Object]";
+const isPlainObject$1 = (val2) => toTypeString$1(val2) === "[object Object]";
const isIntegerKey = (key) => isString(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key;
const isReservedProp = /* @__PURE__ */ makeMap(
// the leading comma is intentional so empty string "" is also included
@@ -84,13 +84,13 @@ const def$1 = (obj, key, value) => {
value
});
};
-const looseToNumber = (val) => {
- const n2 = parseFloat(val);
- return isNaN(n2) ? val : n2;
+const looseToNumber = (val2) => {
+ const n2 = parseFloat(val2);
+ return isNaN(n2) ? val2 : n2;
};
-const toNumber = (val) => {
- const n2 = isString(val) ? Number(val) : NaN;
- return isNaN(n2) ? val : n2;
+const toNumber = (val2) => {
+ const n2 = isString(val2) ? Number(val2) : NaN;
+ return isNaN(n2) ? val2 : n2;
};
function normalizeStyle(value) {
if (isArray$1(value)) {
@@ -154,32 +154,32 @@ function normalizeProps(props) {
}
return props;
}
-const toDisplayString = (val) => {
- return isString(val) ? val : val == null ? "" : isArray$1(val) || isObject$1(val) && (val.toString === objectToString$1 || !isFunction$1(val.toString)) ? JSON.stringify(val, replacer, 2) : String(val);
+const toDisplayString = (val2) => {
+ return isString(val2) ? val2 : val2 == null ? "" : isArray$1(val2) || isObject$1(val2) && (val2.toString === objectToString$1 || !isFunction$1(val2.toString)) ? JSON.stringify(val2, replacer, 2) : String(val2);
};
-const replacer = (_key, val) => {
- if (val && val.__v_isRef) {
- return replacer(_key, val.value);
- } else if (isMap$1(val)) {
+const replacer = (_key, val2) => {
+ if (val2 && val2.__v_isRef) {
+ return replacer(_key, val2.value);
+ } else if (isMap$1(val2)) {
return {
- [`Map(${val.size})`]: [...val.entries()].reduce(
- (entries, [key, val2], i3) => {
- entries[stringifySymbol(key, i3) + " =>"] = val2;
+ [`Map(${val2.size})`]: [...val2.entries()].reduce(
+ (entries, [key, val22], i3) => {
+ entries[stringifySymbol(key, i3) + " =>"] = val22;
return entries;
},
{}
)
};
- } else if (isSet$1(val)) {
+ } else if (isSet$1(val2)) {
return {
- [`Set(${val.size})`]: [...val.values()].map((v3) => stringifySymbol(v3))
+ [`Set(${val2.size})`]: [...val2.values()].map((v3) => stringifySymbol(v3))
};
- } else if (isSymbol(val)) {
- return stringifySymbol(val);
- } else if (isObject$1(val) && !isArray$1(val) && !isPlainObject$1(val)) {
- return String(val);
+ } else if (isSymbol(val2)) {
+ return stringifySymbol(val2);
+ } else if (isObject$1(val2) && !isArray$1(val2) && !isPlainObject$1(val2)) {
+ return String(val2);
}
- return val;
+ return val2;
};
const stringifySymbol = (v3, i3 = "") => {
var _a;
@@ -320,13 +320,13 @@ function customizeEvent(str) {
const encode = encodeURIComponent;
function stringifyQuery(obj, encodeStr = encode) {
const res = obj ? Object.keys(obj).map((key) => {
- let val = obj[key];
- if (typeof val === void 0 || val === null) {
- val = "";
- } else if (isPlainObject$1(val)) {
- val = JSON.stringify(val);
+ let val2 = obj[key];
+ if (typeof val2 === void 0 || val2 === null) {
+ val2 = "";
+ } else if (isPlainObject$1(val2)) {
+ val2 = JSON.stringify(val2);
}
- return encodeStr(key) + "=" + encodeStr(val);
+ return encodeStr(key) + "=" + encodeStr(val2);
}).filter((x2) => x2.length > 0).join("&") : null;
return res ? `?${res}` : "";
}
@@ -1608,8 +1608,8 @@ class ObjectRefImpl {
this.__v_isRef = true;
}
get value() {
- const val = this._object[this._key];
- return val === void 0 ? this._defaultValue : val;
+ const val2 = this._object[this._key];
+ return val2 === void 0 ? this._defaultValue : val2;
}
set value(newVal) {
this._object[this._key] = newVal;
@@ -1640,8 +1640,8 @@ function toRef$1(source, key, defaultValue) {
}
}
function propertyToRef(source, key, defaultValue) {
- const val = source[key];
- return isRef$1(val) ? val : new ObjectRefImpl(source, key, defaultValue);
+ const val2 = source[key];
+ return isRef$1(val2) ? val2 : new ObjectRefImpl(source, key, defaultValue);
}
const stack = [];
function pushWarningContext(vnode) {
@@ -3448,7 +3448,7 @@ function applyOptions$1(instance) {
expose.forEach((key) => {
Object.defineProperty(exposed, key, {
get: () => publicThis[key],
- set: (val) => publicThis[key] = val
+ set: (val2) => publicThis[key] = val2
});
});
} else if (!instance.exposed) {
@@ -5379,8 +5379,8 @@ function initHooks$1(options, instance, publicThis) {
function applyOptions$2(options, instance, publicThis) {
initHooks$1(options, instance, publicThis);
}
-function set$2(target, key, val) {
- return target[key] = val;
+function set$2(target, key, val2) {
+ return target[key] = val2;
}
function $callMethod(method, ...args) {
const fn = this[method];
@@ -5812,7 +5812,7 @@ const c$3 = (str) => camelize(str);
const e$2 = (target, ...sources) => extend(target, ...sources);
const h$3 = (str) => hyphenate(str);
const n$2 = (value) => normalizeClass(value);
-const t$2 = (val) => toDisplayString(val);
+const t$2 = (val2) => toDisplayString(val2);
const p$3 = (props) => renderProps(props);
const sr = (ref2, id, opts) => setRef(ref2, id, opts);
const m$2 = (fn, modifiers, isComponent = false) => withModelModifiers(fn, modifiers, isComponent);
@@ -7770,7 +7770,7 @@ function isConsoleWritable() {
function initRuntimeSocketService() {
const hosts = "192.168.0.107,127.0.0.1";
const port = "8090";
- const id = "mp-weixin_lBK7e6";
+ const id = "mp-weixin_d28YCI";
const lazy = typeof swan !== "undefined";
let restoreError = lazy ? () => {
} : initOnError();
@@ -7846,8 +7846,8 @@ function initMiniProgramGlobalFlag() {
initRuntimeSocketService();
const _export_sfc = (sfc, props) => {
const target = sfc.__vccOpts || sfc;
- for (const [key, val] of props) {
- target[key] = val;
+ for (const [key, val2] of props) {
+ target[key] = val2;
}
return target;
};
@@ -20915,6 +20915,4452 @@ let v$2 = class v {
};
index.__f__("log", "at node_modules/@tencentcloud/tui-core/index.js:1", "TUICore.VERSION:2.4.0");
const R$1 = v$2.getInstance(), A$2 = N$1.getInstance(R$1);
+var cosWxSdkV5_min = { exports: {} };
+(function(module2, exports2) {
+ !function(e2, t2) {
+ module2.exports = t2();
+ }(window, function() {
+ return function(e2) {
+ var t2 = {};
+ function n2(i3) {
+ if (t2[i3])
+ return t2[i3].exports;
+ var o2 = t2[i3] = { i: i3, l: false, exports: {} };
+ return e2[i3].call(o2.exports, o2, o2.exports, n2), o2.l = true, o2.exports;
+ }
+ return n2.m = e2, n2.c = t2, n2.d = function(e3, t3, i3) {
+ n2.o(e3, t3) || Object.defineProperty(e3, t3, { enumerable: true, get: i3 });
+ }, n2.r = function(e3) {
+ "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e3, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e3, "__esModule", { value: true });
+ }, n2.t = function(e3, t3) {
+ if (1 & t3 && (e3 = n2(e3)), 8 & t3)
+ return e3;
+ if (4 & t3 && "object" == typeof e3 && e3 && e3.__esModule)
+ return e3;
+ var i3 = /* @__PURE__ */ Object.create(null);
+ if (n2.r(i3), Object.defineProperty(i3, "default", { enumerable: true, value: e3 }), 2 & t3 && "string" != typeof e3)
+ for (var o2 in e3)
+ n2.d(i3, o2, (function(t4) {
+ return e3[t4];
+ }).bind(null, o2));
+ return i3;
+ }, n2.n = function(e3) {
+ var t3 = e3 && e3.__esModule ? function() {
+ return e3.default;
+ } : function() {
+ return e3;
+ };
+ return n2.d(t3, "a", t3), t3;
+ }, n2.o = function(e3, t3) {
+ return Object.prototype.hasOwnProperty.call(e3, t3);
+ }, n2.p = "/Users/chrisftian/Documents/projects/cos-sdk/cos-wx-sdk-v5/dist", n2(n2.s = 8);
+ }([function(e2, t2, n2) {
+ function i3(e3, t3) {
+ var n3 = "undefined" != typeof Symbol && e3[Symbol.iterator] || e3["@@iterator"];
+ if (!n3) {
+ if (Array.isArray(e3) || (n3 = function(e4, t4) {
+ if (!e4)
+ return;
+ if ("string" == typeof e4)
+ return o2(e4, t4);
+ var n4 = Object.prototype.toString.call(e4).slice(8, -1);
+ "Object" === n4 && e4.constructor && (n4 = e4.constructor.name);
+ if ("Map" === n4 || "Set" === n4)
+ return Array.from(e4);
+ if ("Arguments" === n4 || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n4))
+ return o2(e4, t4);
+ }(e3)) || t3 && e3 && "number" == typeof e3.length) {
+ n3 && (e3 = n3);
+ var i4 = 0, a3 = function() {
+ };
+ return { s: a3, n: function() {
+ return i4 >= e3.length ? { done: true } : { done: false, value: e3[i4++] };
+ }, e: function(e4) {
+ throw e4;
+ }, f: a3 };
+ }
+ throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
+ }
+ var r4, s4 = true, c3 = false;
+ return { s: function() {
+ n3 = n3.call(e3);
+ }, n: function() {
+ var e4 = n3.next();
+ return s4 = e4.done, e4;
+ }, e: function(e4) {
+ c3 = true, r4 = e4;
+ }, f: function() {
+ try {
+ s4 || null == n3.return || n3.return();
+ } finally {
+ if (c3)
+ throw r4;
+ }
+ } };
+ }
+ function o2(e3, t3) {
+ (null == t3 || t3 > e3.length) && (t3 = e3.length);
+ for (var n3 = 0, i4 = new Array(t3); n3 < t3; n3++)
+ i4[n3] = e3[n3];
+ return i4;
+ }
+ function a2() {
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
+ a2 = function() {
+ return t3;
+ };
+ var e3, t3 = {}, n3 = Object.prototype, i4 = n3.hasOwnProperty, o3 = Object.defineProperty || function(e4, t4, n4) {
+ e4[t4] = n4.value;
+ }, r4 = "function" == typeof Symbol ? Symbol : {}, c3 = r4.iterator || "@@iterator", l3 = r4.asyncIterator || "@@asyncIterator", p4 = r4.toStringTag || "@@toStringTag";
+ function u3(e4, t4, n4) {
+ return Object.defineProperty(e4, t4, { value: n4, enumerable: true, configurable: true, writable: true }), e4[t4];
+ }
+ try {
+ u3({}, "");
+ } catch (e4) {
+ u3 = function(e5, t4, n4) {
+ return e5[t4] = n4;
+ };
+ }
+ function d3(e4, t4, n4, i5) {
+ var a3 = t4 && t4.prototype instanceof x3 ? t4 : x3, r5 = Object.create(a3.prototype), s4 = new j3(i5 || []);
+ return o3(r5, "_invoke", { value: A3(e4, n4, s4) }), r5;
+ }
+ function f3(e4, t4, n4) {
+ try {
+ return { type: "normal", arg: e4.call(t4, n4) };
+ } catch (e5) {
+ return { type: "throw", arg: e5 };
+ }
+ }
+ t3.wrap = d3;
+ var m3 = "suspendedStart", h3 = "suspendedYield", g3 = "executing", v4 = "completed", y3 = {};
+ function x3() {
+ }
+ function k3() {
+ }
+ function b3() {
+ }
+ var C3 = {};
+ u3(C3, c3, function() {
+ return this;
+ });
+ var S3 = Object.getPrototypeOf, w3 = S3 && S3(S3(I3([])));
+ w3 && w3 !== n3 && i4.call(w3, c3) && (C3 = w3);
+ var T3 = b3.prototype = x3.prototype = Object.create(C3);
+ function R3(e4) {
+ ["next", "throw", "return"].forEach(function(t4) {
+ u3(e4, t4, function(e5) {
+ return this._invoke(t4, e5);
+ });
+ });
+ }
+ function B3(e4, t4) {
+ function n4(o4, a4, r5, c4) {
+ var l4 = f3(e4[o4], e4, a4);
+ if ("throw" !== l4.type) {
+ var p5 = l4.arg, u4 = p5.value;
+ return u4 && "object" == s3(u4) && i4.call(u4, "__await") ? t4.resolve(u4.__await).then(function(e5) {
+ n4("next", e5, r5, c4);
+ }, function(e5) {
+ n4("throw", e5, r5, c4);
+ }) : t4.resolve(u4).then(function(e5) {
+ p5.value = e5, r5(p5);
+ }, function(e5) {
+ return n4("throw", e5, r5, c4);
+ });
+ }
+ c4(l4.arg);
+ }
+ var a3;
+ o3(this, "_invoke", { value: function(e5, i5) {
+ function o4() {
+ return new t4(function(t5, o5) {
+ n4(e5, i5, t5, o5);
+ });
+ }
+ return a3 = a3 ? a3.then(o4, o4) : o4();
+ } });
+ }
+ function A3(t4, n4, i5) {
+ var o4 = m3;
+ return function(a3, r5) {
+ if (o4 === g3)
+ throw Error("Generator is already running");
+ if (o4 === v4) {
+ if ("throw" === a3)
+ throw r5;
+ return { value: e3, done: true };
+ }
+ for (i5.method = a3, i5.arg = r5; ; ) {
+ var s4 = i5.delegate;
+ if (s4) {
+ var c4 = P3(s4, i5);
+ if (c4) {
+ if (c4 === y3)
+ continue;
+ return c4;
+ }
+ }
+ if ("next" === i5.method)
+ i5.sent = i5._sent = i5.arg;
+ else if ("throw" === i5.method) {
+ if (o4 === m3)
+ throw o4 = v4, i5.arg;
+ i5.dispatchException(i5.arg);
+ } else
+ "return" === i5.method && i5.abrupt("return", i5.arg);
+ o4 = g3;
+ var l4 = f3(t4, n4, i5);
+ if ("normal" === l4.type) {
+ if (o4 = i5.done ? v4 : h3, l4.arg === y3)
+ continue;
+ return { value: l4.arg, done: i5.done };
+ }
+ "throw" === l4.type && (o4 = v4, i5.method = "throw", i5.arg = l4.arg);
+ }
+ };
+ }
+ function P3(t4, n4) {
+ var i5 = n4.method, o4 = t4.iterator[i5];
+ if (o4 === e3)
+ return n4.delegate = null, "throw" === i5 && t4.iterator.return && (n4.method = "return", n4.arg = e3, P3(t4, n4), "throw" === n4.method) || "return" !== i5 && (n4.method = "throw", n4.arg = new TypeError("The iterator does not provide a '" + i5 + "' method")), y3;
+ var a3 = f3(o4, t4.iterator, n4.arg);
+ if ("throw" === a3.type)
+ return n4.method = "throw", n4.arg = a3.arg, n4.delegate = null, y3;
+ var r5 = a3.arg;
+ return r5 ? r5.done ? (n4[t4.resultName] = r5.value, n4.next = t4.nextLoc, "return" !== n4.method && (n4.method = "next", n4.arg = e3), n4.delegate = null, y3) : r5 : (n4.method = "throw", n4.arg = new TypeError("iterator result is not an object"), n4.delegate = null, y3);
+ }
+ function E3(e4) {
+ var t4 = { tryLoc: e4[0] };
+ 1 in e4 && (t4.catchLoc = e4[1]), 2 in e4 && (t4.finallyLoc = e4[2], t4.afterLoc = e4[3]), this.tryEntries.push(t4);
+ }
+ function O3(e4) {
+ var t4 = e4.completion || {};
+ t4.type = "normal", delete t4.arg, e4.completion = t4;
+ }
+ function j3(e4) {
+ this.tryEntries = [{ tryLoc: "root" }], e4.forEach(E3, this), this.reset(true);
+ }
+ function I3(t4) {
+ if (t4 || "" === t4) {
+ var n4 = t4[c3];
+ if (n4)
+ return n4.call(t4);
+ if ("function" == typeof t4.next)
+ return t4;
+ if (!isNaN(t4.length)) {
+ var o4 = -1, a3 = function n5() {
+ for (; ++o4 < t4.length; )
+ if (i4.call(t4, o4))
+ return n5.value = t4[o4], n5.done = false, n5;
+ return n5.value = e3, n5.done = true, n5;
+ };
+ return a3.next = a3;
+ }
+ }
+ throw new TypeError(s3(t4) + " is not iterable");
+ }
+ return k3.prototype = b3, o3(T3, "constructor", { value: b3, configurable: true }), o3(b3, "constructor", { value: k3, configurable: true }), k3.displayName = u3(b3, p4, "GeneratorFunction"), t3.isGeneratorFunction = function(e4) {
+ var t4 = "function" == typeof e4 && e4.constructor;
+ return !!t4 && (t4 === k3 || "GeneratorFunction" === (t4.displayName || t4.name));
+ }, t3.mark = function(e4) {
+ return Object.setPrototypeOf ? Object.setPrototypeOf(e4, b3) : (e4.__proto__ = b3, u3(e4, p4, "GeneratorFunction")), e4.prototype = Object.create(T3), e4;
+ }, t3.awrap = function(e4) {
+ return { __await: e4 };
+ }, R3(B3.prototype), u3(B3.prototype, l3, function() {
+ return this;
+ }), t3.AsyncIterator = B3, t3.async = function(e4, n4, i5, o4, a3) {
+ void 0 === a3 && (a3 = Promise);
+ var r5 = new B3(d3(e4, n4, i5, o4), a3);
+ return t3.isGeneratorFunction(n4) ? r5 : r5.next().then(function(e5) {
+ return e5.done ? e5.value : r5.next();
+ });
+ }, R3(T3), u3(T3, p4, "Generator"), u3(T3, c3, function() {
+ return this;
+ }), u3(T3, "toString", function() {
+ return "[object Generator]";
+ }), t3.keys = function(e4) {
+ var t4 = Object(e4), n4 = [];
+ for (var i5 in t4)
+ n4.push(i5);
+ return n4.reverse(), function e5() {
+ for (; n4.length; ) {
+ var i6 = n4.pop();
+ if (i6 in t4)
+ return e5.value = i6, e5.done = false, e5;
+ }
+ return e5.done = true, e5;
+ };
+ }, t3.values = I3, j3.prototype = { constructor: j3, reset: function(t4) {
+ if (this.prev = 0, this.next = 0, this.sent = this._sent = e3, this.done = false, this.delegate = null, this.method = "next", this.arg = e3, this.tryEntries.forEach(O3), !t4)
+ for (var n4 in this)
+ "t" === n4.charAt(0) && i4.call(this, n4) && !isNaN(+n4.slice(1)) && (this[n4] = e3);
+ }, stop: function() {
+ this.done = true;
+ var e4 = this.tryEntries[0].completion;
+ if ("throw" === e4.type)
+ throw e4.arg;
+ return this.rval;
+ }, dispatchException: function(t4) {
+ if (this.done)
+ throw t4;
+ var n4 = this;
+ function o4(i5, o5) {
+ return s4.type = "throw", s4.arg = t4, n4.next = i5, o5 && (n4.method = "next", n4.arg = e3), !!o5;
+ }
+ for (var a3 = this.tryEntries.length - 1; a3 >= 0; --a3) {
+ var r5 = this.tryEntries[a3], s4 = r5.completion;
+ if ("root" === r5.tryLoc)
+ return o4("end");
+ if (r5.tryLoc <= this.prev) {
+ var c4 = i4.call(r5, "catchLoc"), l4 = i4.call(r5, "finallyLoc");
+ if (c4 && l4) {
+ if (this.prev < r5.catchLoc)
+ return o4(r5.catchLoc, true);
+ if (this.prev < r5.finallyLoc)
+ return o4(r5.finallyLoc);
+ } else if (c4) {
+ if (this.prev < r5.catchLoc)
+ return o4(r5.catchLoc, true);
+ } else {
+ if (!l4)
+ throw Error("try statement without catch or finally");
+ if (this.prev < r5.finallyLoc)
+ return o4(r5.finallyLoc);
+ }
+ }
+ }
+ }, abrupt: function(e4, t4) {
+ for (var n4 = this.tryEntries.length - 1; n4 >= 0; --n4) {
+ var o4 = this.tryEntries[n4];
+ if (o4.tryLoc <= this.prev && i4.call(o4, "finallyLoc") && this.prev < o4.finallyLoc) {
+ var a3 = o4;
+ break;
+ }
+ }
+ a3 && ("break" === e4 || "continue" === e4) && a3.tryLoc <= t4 && t4 <= a3.finallyLoc && (a3 = null);
+ var r5 = a3 ? a3.completion : {};
+ return r5.type = e4, r5.arg = t4, a3 ? (this.method = "next", this.next = a3.finallyLoc, y3) : this.complete(r5);
+ }, complete: function(e4, t4) {
+ if ("throw" === e4.type)
+ throw e4.arg;
+ return "break" === e4.type || "continue" === e4.type ? this.next = e4.arg : "return" === e4.type ? (this.rval = this.arg = e4.arg, this.method = "return", this.next = "end") : "normal" === e4.type && t4 && (this.next = t4), y3;
+ }, finish: function(e4) {
+ for (var t4 = this.tryEntries.length - 1; t4 >= 0; --t4) {
+ var n4 = this.tryEntries[t4];
+ if (n4.finallyLoc === e4)
+ return this.complete(n4.completion, n4.afterLoc), O3(n4), y3;
+ }
+ }, catch: function(e4) {
+ for (var t4 = this.tryEntries.length - 1; t4 >= 0; --t4) {
+ var n4 = this.tryEntries[t4];
+ if (n4.tryLoc === e4) {
+ var i5 = n4.completion;
+ if ("throw" === i5.type) {
+ var o4 = i5.arg;
+ O3(n4);
+ }
+ return o4;
+ }
+ }
+ throw Error("illegal catch attempt");
+ }, delegateYield: function(t4, n4, i5) {
+ return this.delegate = { iterator: I3(t4), resultName: n4, nextLoc: i5 }, "next" === this.method && (this.arg = e3), y3;
+ } }, t3;
+ }
+ function r3(e3, t3, n3, i4, o3, a3, r4) {
+ try {
+ var s4 = e3[a3](r4), c3 = s4.value;
+ } catch (e4) {
+ return void n3(e4);
+ }
+ s4.done ? t3(c3) : Promise.resolve(c3).then(i4, o3);
+ }
+ function s3(e3) {
+ return s3 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e4) {
+ return typeof e4;
+ } : function(e4) {
+ return e4 && "function" == typeof Symbol && e4.constructor === Symbol && e4 !== Symbol.prototype ? "symbol" : typeof e4;
+ }, s3(e3);
+ }
+ var c2 = n2(10), l2 = n2(13), p3 = n2(14), u2 = p3.btoa, d2 = wx$1.getFileSystemManager(), f2 = n2(2), m2 = n2(15), h2 = m2.XMLParser, g2 = m2.XMLBuilder, v3 = new h2({ ignoreDeclaration: true, ignoreAttributes: true, parseTagValue: false, trimValues: false }), y2 = new g2(), x2 = function e3(t3) {
+ if (A2(t3))
+ for (var n3 in t3) {
+ var i4 = t3[n3];
+ "string" == typeof i4 ? "#text" === n3 && delete t3[n3] : Array.isArray(i4) ? i4.forEach(function(t4) {
+ e3(t4);
+ }) : A2(i4) && e3(i4);
+ }
+ };
+ function k2(e3) {
+ return encodeURIComponent(e3).replace(/!/g, "%21").replace(/'/g, "%27").replace(/\(/g, "%28").replace(/\)/g, "%29").replace(/\*/g, "%2A");
+ }
+ function b2(e3, t3) {
+ var n3 = [];
+ for (var i4 in e3)
+ e3.hasOwnProperty(i4) && n3.push(t3 ? k2(i4).toLowerCase() : i4);
+ return n3.sort(function(e4, t4) {
+ return (e4 = e4.toLowerCase()) === (t4 = t4.toLowerCase()) ? 0 : e4 > t4 ? 1 : -1;
+ });
+ }
+ var C2 = ["cache-control", "content-disposition", "content-encoding", "content-length", "content-md5", "content-type", "expect", "expires", "host", "if-match", "if-modified-since", "if-none-match", "if-unmodified-since", "origin", "range", "transfer-encoding", "pic-operations"], S2 = function() {
+ }, w2 = function(e3) {
+ var t3 = {};
+ for (var n3 in e3)
+ e3.hasOwnProperty(n3) && void 0 !== e3[n3] && null !== e3[n3] && (t3[n3] = e3[n3]);
+ return t3;
+ };
+ function T2(e3) {
+ return E2(e3, function(e4) {
+ return "object" === s3(e4) && null !== e4 ? T2(e4) : e4;
+ });
+ }
+ function R2(e3, t3) {
+ return P2(t3, function(n3, i4) {
+ e3[i4] = t3[i4];
+ }), e3;
+ }
+ function B2(e3) {
+ return e3 instanceof Array;
+ }
+ function A2(e3) {
+ return "[object Object]" === Object.prototype.toString.call(e3);
+ }
+ function P2(e3, t3) {
+ for (var n3 in e3)
+ e3.hasOwnProperty(n3) && t3(e3[n3], n3);
+ }
+ function E2(e3, t3) {
+ var n3 = B2(e3) ? [] : {};
+ for (var i4 in e3)
+ e3.hasOwnProperty(i4) && (n3[i4] = t3(e3[i4], i4));
+ return n3;
+ }
+ var O2 = function(e3, t3) {
+ if (t3 = R2({}, t3), "getAuth" !== e3 && "getV4Auth" !== e3 && "getObjectUrl" !== e3) {
+ var n3 = t3.Headers || {};
+ if (t3 && "object" === s3(t3)) {
+ !function() {
+ for (var e4 in t3)
+ t3.hasOwnProperty(e4) && e4.indexOf("x-cos-") > -1 && (n3[e4] = t3[e4]);
+ }();
+ U2.each({ "x-cos-mfa": "MFA", "Content-MD5": "ContentMD5", "Content-Length": "ContentLength", "Content-Type": "ContentType", Expect: "Expect", Expires: "Expires", "Cache-Control": "CacheControl", "Content-Disposition": "ContentDisposition", "Content-Encoding": "ContentEncoding", Range: "Range", "If-Modified-Since": "IfModifiedSince", "If-Unmodified-Since": "IfUnmodifiedSince", "If-Match": "IfMatch", "If-None-Match": "IfNoneMatch", "x-cos-copy-source": "CopySource", "x-cos-copy-source-Range": "CopySourceRange", "x-cos-metadata-directive": "MetadataDirective", "x-cos-copy-source-If-Modified-Since": "CopySourceIfModifiedSince", "x-cos-copy-source-If-Unmodified-Since": "CopySourceIfUnmodifiedSince", "x-cos-copy-source-If-Match": "CopySourceIfMatch", "x-cos-copy-source-If-None-Match": "CopySourceIfNoneMatch", "x-cos-acl": "ACL", "x-cos-grant-read": "GrantRead", "x-cos-grant-write": "GrantWrite", "x-cos-grant-full-control": "GrantFullControl", "x-cos-grant-read-acp": "GrantReadAcp", "x-cos-grant-write-acp": "GrantWriteAcp", "x-cos-storage-class": "StorageClass", "x-cos-traffic-limit": "TrafficLimit", "x-cos-mime-limit": "MimeLimit", "x-cos-forbid-overwrite": "ForbidOverwrite", "x-cos-server-side-encryption-customer-algorithm": "SSECustomerAlgorithm", "x-cos-server-side-encryption-customer-key": "SSECustomerKey", "x-cos-server-side-encryption-customer-key-MD5": "SSECustomerKeyMD5", "x-cos-server-side-encryption": "ServerSideEncryption", "x-cos-server-side-encryption-cos-kms-key-id": "SSEKMSKeyId", "x-cos-server-side-encryption-context": "SSEContext", "Pic-Operations": "PicOperations" }, function(e4, i4) {
+ void 0 !== t3[e4] && (n3[i4] = t3[e4]);
+ }), t3.Headers = w2(n3);
+ }
+ }
+ return t3;
+ }, j2 = function(e3) {
+ return new Promise(function(t3, n3) {
+ d2.readFile({ filePath: e3, success: function(e4) {
+ t3(e4.data);
+ }, fail: function(e4) {
+ n3((null == e4 ? void 0 : e4.errMsg) || "");
+ } });
+ });
+ }, I2 = function() {
+ var e3, t3 = (e3 = a2().mark(function e4(t4, n3, i4) {
+ return a2().wrap(function(e5) {
+ for (; ; )
+ switch (e5.prev = e5.next) {
+ case 0:
+ if ("postObject" !== t4) {
+ e5.next = 4;
+ break;
+ }
+ i4(), e5.next = 21;
+ break;
+ case 4:
+ if ("putObject" !== t4) {
+ e5.next = 20;
+ break;
+ }
+ if (void 0 !== n3.Body || !n3.FilePath) {
+ e5.next = 17;
+ break;
+ }
+ return e5.prev = 6, e5.next = 9, j2(n3.FilePath);
+ case 9:
+ n3.Body = e5.sent, e5.next = 17;
+ break;
+ case 12:
+ return e5.prev = 12, e5.t0 = e5.catch(6), n3.Body = void 0, i4({ error: "readFile error, ".concat(e5.t0) }), e5.abrupt("return");
+ case 17:
+ void 0 !== n3.Body ? (n3.ContentLength = n3.Body.byteLength, i4(null, n3.ContentLength)) : i4({ error: "missing param Body" }), e5.next = 21;
+ break;
+ case 20:
+ n3.FilePath ? d2.stat({ path: n3.FilePath, success: function(e6) {
+ var t5 = e6.stats;
+ n3.FileStat = t5, n3.FileStat.FilePath = n3.FilePath;
+ var o3 = t5.isDirectory() ? 0 : t5.size;
+ n3.ContentLength = o3 = o3 || 0, i4(null, o3);
+ }, fail: function(e6) {
+ i4(e6);
+ } }) : i4({ error: "missing param FilePath" });
+ case 21:
+ case "end":
+ return e5.stop();
+ }
+ }, e4, null, [[6, 12]]);
+ }), function() {
+ var t4 = this, n3 = arguments;
+ return new Promise(function(i4, o3) {
+ var a3 = e3.apply(t4, n3);
+ function s4(e4) {
+ r3(a3, i4, o3, s4, c3, "next", e4);
+ }
+ function c3(e4) {
+ r3(a3, i4, o3, s4, c3, "throw", e4);
+ }
+ s4(void 0);
+ });
+ });
+ return function(e4, n3, i4) {
+ return t3.apply(this, arguments);
+ };
+ }(), _2 = function(e3) {
+ return Date.now() + (e3 || 0);
+ }, N3 = function(e3, t3) {
+ if (!e3 || !t3)
+ return -1;
+ e3 = e3.split("."), t3 = t3.split(".");
+ for (var n3 = Math.max(e3.length, t3.length); e3.length < n3; )
+ e3.push("0");
+ for (; t3.length < n3; )
+ t3.push("0");
+ for (var i4 = 0; i4 < n3; i4++) {
+ var o3 = parseInt(e3[i4]), a3 = parseInt(t3[i4]);
+ if (o3 > a3)
+ return 1;
+ if (o3 < a3)
+ return -1;
+ }
+ return 0;
+ }, L2 = function() {
+ var e3 = {}, t3 = {};
+ wx$1.canIUse("getAppBaseInfo") && (e3 = wx$1.getAppBaseInfo() || {}), wx$1.canIUse("getDeviceInfo") && (t3 = wx$1.getDeviceInfo() || {});
+ var n3 = e3.SDKVersion, i4 = (t3.platform, N3(n3, "2.10.0") >= 0);
+ return function() {
+ return i4;
+ };
+ }(), U2 = { noop: S2, formatParams: O2, apiWrapper: function(e3, t3) {
+ return function(n3, i4) {
+ var o3, a3 = this;
+ if ("function" == typeof n3 && (i4 = n3, n3 = {}), n3 = O2(e3, n3), a3.options.EnableReporter)
+ if ("sliceUploadFile" === n3.calledBySdk || "sliceCopyFile" === n3.calledBySdk)
+ o3 = n3.tracker && n3.tracker.generateSubTracker({ apiName: e3 });
+ else if (["uploadFile", "uploadFiles"].includes(e3))
+ o3 = null;
+ else {
+ var r4 = 0;
+ n3.Body && (r4 = "string" == typeof n3.Body ? n3.Body.length : n3.Body.size || n3.Body.byteLength || 0);
+ var s4 = a3.options.UseAccelerate || "string" == typeof a3.options.Domain && a3.options.Domain.includes("accelerate.");
+ o3 = new f2({ Beacon: a3.options.BeaconReporter, clsReporter: a3.options.ClsReporter, bucket: n3.Bucket, region: n3.Region, apiName: e3, realApi: e3, accelerate: s4, fileKey: n3.Key, fileSize: r4, deepTracker: a3.options.DeepTracker, customId: a3.options.CustomId, delay: a3.options.TrackerDelay });
+ }
+ n3.tracker = o3;
+ var c3 = function(e4) {
+ return e4 && e4.headers && (e4.headers["x-ci-request-id"] && (e4.RequestId = e4.headers["x-ci-request-id"]), e4.headers["x-cos-request-id"] && (e4.RequestId = e4.headers["x-cos-request-id"]), e4.headers["x-cos-version-id"] && (e4.VersionId = e4.headers["x-cos-version-id"]), e4.headers["x-cos-delete-marker"] && (e4.DeleteMarker = e4.headers["x-cos-delete-marker"])), e4;
+ }, l3 = function(e4, t4) {
+ o3 && o3.report(e4, t4), i4 && i4(c3(e4), c3(t4));
+ }, p4 = function() {
+ if ("getService" !== e3 && "abortUploadTask" !== e3) {
+ var t4 = function(e4, t5) {
+ var n4 = t5.Bucket, i5 = t5.Region, o4 = t5.Key;
+ if (e4.indexOf("Bucket") > -1 || "deleteMultipleObject" === e4 || "multipartList" === e4 || "listObjectVersions" === e4) {
+ if (!n4)
+ return "Bucket";
+ if (!i5)
+ return "Region";
+ } else if (e4.indexOf("Object") > -1 || e4.indexOf("multipart") > -1 || "sliceUploadFile" === e4 || "abortUploadTask" === e4 || "uploadFile" === e4) {
+ if (!n4)
+ return "Bucket";
+ if (!i5)
+ return "Region";
+ if (!o4)
+ return "Key";
+ }
+ return false;
+ }(e3, n3);
+ if (t4)
+ return "missing param " + t4;
+ if (n3.Region) {
+ if (n3.Region.indexOf("cos.") > -1)
+ return 'param Region should not be start with "cos."';
+ if (!/^([a-z\d-]+)$/.test(n3.Region))
+ return "Region format error.";
+ !a3.options.CompatibilityMode && -1 === n3.Region.indexOf("-") && "yfb" !== n3.Region && "default" !== n3.Region && n3.Region;
+ }
+ if (n3.Bucket) {
+ if (!/^([a-z\d-]+)-(\d+)$/.test(n3.Bucket))
+ if (n3.AppId)
+ n3.Bucket = n3.Bucket + "-" + n3.AppId;
+ else {
+ if (!a3.options.AppId)
+ return 'Bucket should format as "test-1250000000".';
+ n3.Bucket = n3.Bucket + "-" + a3.options.AppId;
+ }
+ n3.AppId && delete n3.AppId;
+ }
+ n3.Key && "/" === n3.Key.substr(0, 1) && (n3.Key = n3.Key.substr(1));
+ }
+ }(), u3 = ["getAuth", "getObjectUrl"].includes(e3);
+ if (!u3 && !i4)
+ return new Promise(function(e4, o4) {
+ if (i4 = function(t4, n4) {
+ t4 ? o4(t4) : e4(n4);
+ }, p4)
+ return l3({ error: p4 });
+ t3.call(a3, n3, l3);
+ });
+ if (p4)
+ return l3({ error: p4 });
+ var d3 = t3.call(a3, n3, l3);
+ return u3 ? d3 : void 0;
+ };
+ }, xml2json: function(e3) {
+ var t3 = v3.parse(e3);
+ return x2(t3), t3;
+ }, json2xml: function(e3) {
+ return y2.build(e3);
+ }, md5: c2, clearKey: w2, fileSlice: function(e3, t3, n3, i4) {
+ e3 ? d2.readFile({ filePath: e3, position: t3, length: n3 - t3, success: function(e4) {
+ i4(e4.data);
+ }, fail: function() {
+ i4(null);
+ } }) : i4(null);
+ }, getBodyMd5: function(e3, t3, n3) {
+ n3 = n3 || S2, e3 && t3 && t3 instanceof ArrayBuffer ? U2.getFileMd5(t3, function(e4, t4) {
+ n3(t4);
+ }) : n3();
+ }, getFileMd5: function(e3, t3) {
+ var n3 = c2(e3);
+ return t3 && t3(n3), n3;
+ }, binaryBase64: function(e3) {
+ var t3, n3, i4, o3 = "";
+ for (t3 = 0, n3 = e3.length / 2; t3 < n3; t3++)
+ i4 = parseInt(e3[2 * t3] + e3[2 * t3 + 1], 16), o3 += String.fromCharCode(i4);
+ return u2(o3);
+ }, extend: R2, isArray: B2, isInArray: function(e3, t3) {
+ for (var n3 = false, i4 = 0; i4 < e3.length; i4++)
+ if (t3 === e3[i4]) {
+ n3 = true;
+ break;
+ }
+ return n3;
+ }, makeArray: function(e3) {
+ return B2(e3) ? e3 : [e3];
+ }, each: P2, map: E2, filter: function(e3, t3) {
+ var n3 = B2(e3), i4 = n3 ? [] : {};
+ for (var o3 in e3)
+ e3.hasOwnProperty(o3) && t3(e3[o3], o3) && (n3 ? i4.push(e3[o3]) : i4[o3] = e3[o3]);
+ return i4;
+ }, clone: T2, attr: function(e3, t3, n3) {
+ return e3 && t3 in e3 ? e3[t3] : n3;
+ }, uuid: function() {
+ var e3 = function() {
+ return (65536 * (1 + Math.random()) | 0).toString(16).substring(1);
+ };
+ return e3() + e3() + "-" + e3() + "-" + e3() + "-" + e3() + "-" + e3() + e3() + e3();
+ }, camSafeUrlEncode: k2, throttleOnProgress: function(e3, t3) {
+ var n3, i4, o3 = this, a3 = 0, r4 = 0, s4 = Date.now();
+ function c3() {
+ if (i4 = 0, t3 && "function" == typeof t3) {
+ n3 = Date.now();
+ var o4, c4 = Math.max(0, Math.round((r4 - a3) / ((n3 - s4) / 1e3) * 100) / 100) || 0;
+ o4 = 0 === r4 && 0 === e3 ? 1 : Math.floor(r4 / e3 * 100) / 100 || 0, s4 = n3, a3 = r4;
+ try {
+ t3({ loaded: r4, total: e3, speed: c4, percent: o4 });
+ } catch (e4) {
+ }
+ }
+ }
+ return function(t4, n4) {
+ if (t4 && (r4 = t4.loaded, e3 = t4.total), n4)
+ clearTimeout(i4), c3();
+ else {
+ if (i4)
+ return;
+ i4 = setTimeout(c3, o3.options.ProgressInterval);
+ }
+ };
+ }, getFileSize: I2, getFileSizeByPath: function(e3) {
+ return new Promise(function(t3, n3) {
+ d2.stat({ path: e3, success: function(e4) {
+ var n4 = e4.stats, i4 = n4.isDirectory() ? 0 : n4.size;
+ t3(i4);
+ }, fail: function(e4) {
+ n3((null == e4 ? void 0 : e4.errMsg) || "");
+ } });
+ });
+ }, getSkewTime: _2, obj2str: function(e3, t3) {
+ var n3, i4, o3, a3 = [], r4 = b2(e3);
+ for (n3 = 0; n3 < r4.length; n3++)
+ o3 = void 0 === e3[i4 = r4[n3]] || null === e3[i4] ? "" : "" + e3[i4], i4 = t3 ? k2(i4).toLowerCase() : k2(i4), o3 = k2(o3) || "", a3.push(i4 + "=" + o3);
+ return a3.join("&");
+ }, getAuth: function(e3) {
+ var t3, n3 = (e3 = e3 || {}).SecretId, i4 = e3.SecretKey, o3 = e3.KeyTime, a3 = (e3.method || e3.Method || "get").toLowerCase(), r4 = T2(e3.Query || e3.params || {}), s4 = function(e4) {
+ var t4 = {};
+ for (var n4 in e4) {
+ var i5 = n4.toLowerCase();
+ (i5.indexOf("x-cos-") > -1 || i5.indexOf("x-ci-") > -1 || C2.indexOf(i5) > -1) && (t4[n4] = e4[n4]);
+ }
+ return t4;
+ }(T2(e3.Headers || e3.headers || {})), c3 = e3.Key || "";
+ e3.UseRawKey ? t3 = e3.Pathname || e3.pathname || "/" + c3 : 0 !== (t3 = e3.Pathname || e3.pathname || c3).indexOf("/") && (t3 = "/" + t3);
+ var p4 = false !== e3.ForceSignHost;
+ if (!s4.Host && !s4.host && e3.Bucket && e3.Region && p4 && (s4.Host = e3.Bucket + ".cos." + e3.Region + ".myqcloud.com"), n3 && i4) {
+ var u3 = Math.round(_2(e3.SystemClockOffset) / 1e3) - 1, d3 = u3, f3 = e3.Expires || e3.expires;
+ d3 += void 0 === f3 ? 900 : 1 * f3 || 0;
+ var m3 = n3, h3 = o3 || u3 + ";" + d3, g3 = o3 || u3 + ";" + d3, v4 = b2(s4, true).join(";").toLowerCase(), y3 = b2(r4, true).join(";").toLowerCase(), x3 = l2.HmacSHA1(g3, i4).toString(), k3 = [a3, t3, U2.obj2str(r4, true), U2.obj2str(s4, true), ""].join("\n"), S3 = ["sha1", h3, l2.SHA1(k3).toString(), ""].join("\n");
+ return ["q-sign-algorithm=sha1", "q-ak=" + m3, "q-sign-time=" + h3, "q-key-time=" + g3, "q-header-list=" + v4, "q-url-param-list=" + y3, "q-signature=" + l2.HmacSHA1(S3, x3).toString()].join("&");
+ }
+ }, compareVersion: N3, canFileSlice: L2, isCIHost: function(e3) {
+ return /^https?:\/\/([^/]+\.)?ci\.[^/]+/.test(e3);
+ }, error: function(e3, t3) {
+ var n3 = e3;
+ return e3.message = e3.message || null, "string" == typeof t3 ? (e3.error = t3, e3.message = t3) : "object" === s3(t3) && null !== t3 && (R2(e3, t3), (t3.code || t3.name) && (e3.code = t3.code || t3.name), t3.message && (e3.message = t3.message), t3.stack && (e3.stack = t3.stack)), "function" == typeof Object.defineProperty && (Object.defineProperty(e3, "name", { writable: true, enumerable: false }), Object.defineProperty(e3, "message", { enumerable: true })), e3.name = t3 && t3.name || e3.name || e3.code || "Error", e3.code || (e3.code = e3.name), e3.error || (e3.error = T2(n3)), e3;
+ }, getSourceParams: function(e3) {
+ var t3 = this.options.CopySourceParser;
+ if (t3)
+ return t3(e3);
+ var n3 = e3.match(/^([^.]+-\d+)\.cos(v6|-cdc|-internal)?\.([^.]+)\.((myqcloud\.com)|(tencentcos\.cn))\/(.+)$/);
+ return n3 ? { Bucket: n3[1], Region: n3[3], Key: n3[7] } : null;
+ }, encodeBase64: function(e3, t3) {
+ var n3 = p3.encode(e3);
+ return t3 && (n3 = n3.replaceAll("+", "-").replaceAll("/", "_").replaceAll("=", "")), n3;
+ }, simplifyPath: function(e3) {
+ var t3, n3 = [], o3 = i3(e3.split("/"));
+ try {
+ for (o3.s(); !(t3 = o3.n()).done; ) {
+ var a3 = t3.value;
+ ".." === a3 ? n3.length && n3.pop() : a3.length && "." !== a3 && n3.push(a3);
+ }
+ } catch (e4) {
+ o3.e(e4);
+ } finally {
+ o3.f();
+ }
+ return "/" + n3.join("/");
+ }, arrayBufferToString: function(e3) {
+ return new TextDecoder("utf-8").decode(e3);
+ }, parseResBody: function(e3) {
+ var t3;
+ if (e3 && "string" == typeof e3) {
+ var n3 = e3.trim(), i4 = 0 === n3.indexOf("<"), o3 = 0 === n3.indexOf("{");
+ if (i4)
+ t3 = U2.xml2json(e3) || {};
+ else if (o3)
+ try {
+ var a3 = e3.replace(/\n/g, " "), r4 = JSON.parse(a3);
+ t3 = "[object Object]" === Object.prototype.toString.call(r4) ? r4 : e3;
+ } catch (n4) {
+ t3 = e3;
+ }
+ else
+ t3 = e3;
+ } else
+ t3 = e3 || {};
+ return t3;
+ } };
+ e2.exports = U2;
+ }, function(e2, t2, n2) {
+ const i3 = ":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD", o2 = "[" + i3 + "][" + (i3 + "\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040") + "]*", a2 = new RegExp("^" + o2 + "$");
+ t2.isExist = function(e3) {
+ return void 0 !== e3;
+ }, t2.isEmptyObject = function(e3) {
+ return 0 === Object.keys(e3).length;
+ }, t2.merge = function(e3, t3, n3) {
+ if (t3) {
+ const i4 = Object.keys(t3), o3 = i4.length;
+ for (let a3 = 0; a3 < o3; a3++)
+ e3[i4[a3]] = "strict" === n3 ? [t3[i4[a3]]] : t3[i4[a3]];
+ }
+ }, t2.getValue = function(e3) {
+ return t2.isExist(e3) ? e3 : "";
+ }, t2.isName = function(e3) {
+ const t3 = a2.exec(e3);
+ return !(null == t3);
+ }, t2.getAllMatches = function(e3, t3) {
+ const n3 = [];
+ let i4 = t3.exec(e3);
+ for (; i4; ) {
+ const o3 = [];
+ o3.startIndex = t3.lastIndex - i4[0].length;
+ const a3 = i4.length;
+ for (let e4 = 0; e4 < a3; e4++)
+ o3.push(i4[e4]);
+ n3.push(o3), i4 = t3.exec(e3);
+ }
+ return n3;
+ }, t2.nameRegexp = o2;
+ }, function(e2, t2, n2) {
+ function i3(e3) {
+ return i3 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e4) {
+ return typeof e4;
+ } : function(e4) {
+ return e4 && "function" == typeof Symbol && e4.constructor === Symbol && e4 !== Symbol.prototype ? "symbol" : typeof e4;
+ }, i3(e3);
+ }
+ function o2() {
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
+ o2 = function() {
+ return t3;
+ };
+ var e3, t3 = {}, n3 = Object.prototype, a3 = n3.hasOwnProperty, r4 = Object.defineProperty || function(e4, t4, n4) {
+ e4[t4] = n4.value;
+ }, s4 = "function" == typeof Symbol ? Symbol : {}, c3 = s4.iterator || "@@iterator", l3 = s4.asyncIterator || "@@asyncIterator", p4 = s4.toStringTag || "@@toStringTag";
+ function u3(e4, t4, n4) {
+ return Object.defineProperty(e4, t4, { value: n4, enumerable: true, configurable: true, writable: true }), e4[t4];
+ }
+ try {
+ u3({}, "");
+ } catch (e4) {
+ u3 = function(e5, t4, n4) {
+ return e5[t4] = n4;
+ };
+ }
+ function d3(e4, t4, n4, i4) {
+ var o3 = t4 && t4.prototype instanceof x3 ? t4 : x3, a4 = Object.create(o3.prototype), s5 = new j2(i4 || []);
+ return r4(a4, "_invoke", { value: A2(e4, n4, s5) }), a4;
+ }
+ function f3(e4, t4, n4) {
+ try {
+ return { type: "normal", arg: e4.call(t4, n4) };
+ } catch (e5) {
+ return { type: "throw", arg: e5 };
+ }
+ }
+ t3.wrap = d3;
+ var m3 = "suspendedStart", h3 = "suspendedYield", g3 = "executing", v4 = "completed", y3 = {};
+ function x3() {
+ }
+ function k2() {
+ }
+ function b2() {
+ }
+ var C2 = {};
+ u3(C2, c3, function() {
+ return this;
+ });
+ var S2 = Object.getPrototypeOf, w2 = S2 && S2(S2(I2([])));
+ w2 && w2 !== n3 && a3.call(w2, c3) && (C2 = w2);
+ var T2 = b2.prototype = x3.prototype = Object.create(C2);
+ function R2(e4) {
+ ["next", "throw", "return"].forEach(function(t4) {
+ u3(e4, t4, function(e5) {
+ return this._invoke(t4, e5);
+ });
+ });
+ }
+ function B2(e4, t4) {
+ function n4(o4, r5, s5, c4) {
+ var l4 = f3(e4[o4], e4, r5);
+ if ("throw" !== l4.type) {
+ var p5 = l4.arg, u4 = p5.value;
+ return u4 && "object" == i3(u4) && a3.call(u4, "__await") ? t4.resolve(u4.__await).then(function(e5) {
+ n4("next", e5, s5, c4);
+ }, function(e5) {
+ n4("throw", e5, s5, c4);
+ }) : t4.resolve(u4).then(function(e5) {
+ p5.value = e5, s5(p5);
+ }, function(e5) {
+ return n4("throw", e5, s5, c4);
+ });
+ }
+ c4(l4.arg);
+ }
+ var o3;
+ r4(this, "_invoke", { value: function(e5, i4) {
+ function a4() {
+ return new t4(function(t5, o4) {
+ n4(e5, i4, t5, o4);
+ });
+ }
+ return o3 = o3 ? o3.then(a4, a4) : a4();
+ } });
+ }
+ function A2(t4, n4, i4) {
+ var o3 = m3;
+ return function(a4, r5) {
+ if (o3 === g3)
+ throw Error("Generator is already running");
+ if (o3 === v4) {
+ if ("throw" === a4)
+ throw r5;
+ return { value: e3, done: true };
+ }
+ for (i4.method = a4, i4.arg = r5; ; ) {
+ var s5 = i4.delegate;
+ if (s5) {
+ var c4 = P2(s5, i4);
+ if (c4) {
+ if (c4 === y3)
+ continue;
+ return c4;
+ }
+ }
+ if ("next" === i4.method)
+ i4.sent = i4._sent = i4.arg;
+ else if ("throw" === i4.method) {
+ if (o3 === m3)
+ throw o3 = v4, i4.arg;
+ i4.dispatchException(i4.arg);
+ } else
+ "return" === i4.method && i4.abrupt("return", i4.arg);
+ o3 = g3;
+ var l4 = f3(t4, n4, i4);
+ if ("normal" === l4.type) {
+ if (o3 = i4.done ? v4 : h3, l4.arg === y3)
+ continue;
+ return { value: l4.arg, done: i4.done };
+ }
+ "throw" === l4.type && (o3 = v4, i4.method = "throw", i4.arg = l4.arg);
+ }
+ };
+ }
+ function P2(t4, n4) {
+ var i4 = n4.method, o3 = t4.iterator[i4];
+ if (o3 === e3)
+ return n4.delegate = null, "throw" === i4 && t4.iterator.return && (n4.method = "return", n4.arg = e3, P2(t4, n4), "throw" === n4.method) || "return" !== i4 && (n4.method = "throw", n4.arg = new TypeError("The iterator does not provide a '" + i4 + "' method")), y3;
+ var a4 = f3(o3, t4.iterator, n4.arg);
+ if ("throw" === a4.type)
+ return n4.method = "throw", n4.arg = a4.arg, n4.delegate = null, y3;
+ var r5 = a4.arg;
+ return r5 ? r5.done ? (n4[t4.resultName] = r5.value, n4.next = t4.nextLoc, "return" !== n4.method && (n4.method = "next", n4.arg = e3), n4.delegate = null, y3) : r5 : (n4.method = "throw", n4.arg = new TypeError("iterator result is not an object"), n4.delegate = null, y3);
+ }
+ function E2(e4) {
+ var t4 = { tryLoc: e4[0] };
+ 1 in e4 && (t4.catchLoc = e4[1]), 2 in e4 && (t4.finallyLoc = e4[2], t4.afterLoc = e4[3]), this.tryEntries.push(t4);
+ }
+ function O2(e4) {
+ var t4 = e4.completion || {};
+ t4.type = "normal", delete t4.arg, e4.completion = t4;
+ }
+ function j2(e4) {
+ this.tryEntries = [{ tryLoc: "root" }], e4.forEach(E2, this), this.reset(true);
+ }
+ function I2(t4) {
+ if (t4 || "" === t4) {
+ var n4 = t4[c3];
+ if (n4)
+ return n4.call(t4);
+ if ("function" == typeof t4.next)
+ return t4;
+ if (!isNaN(t4.length)) {
+ var o3 = -1, r5 = function n5() {
+ for (; ++o3 < t4.length; )
+ if (a3.call(t4, o3))
+ return n5.value = t4[o3], n5.done = false, n5;
+ return n5.value = e3, n5.done = true, n5;
+ };
+ return r5.next = r5;
+ }
+ }
+ throw new TypeError(i3(t4) + " is not iterable");
+ }
+ return k2.prototype = b2, r4(T2, "constructor", { value: b2, configurable: true }), r4(b2, "constructor", { value: k2, configurable: true }), k2.displayName = u3(b2, p4, "GeneratorFunction"), t3.isGeneratorFunction = function(e4) {
+ var t4 = "function" == typeof e4 && e4.constructor;
+ return !!t4 && (t4 === k2 || "GeneratorFunction" === (t4.displayName || t4.name));
+ }, t3.mark = function(e4) {
+ return Object.setPrototypeOf ? Object.setPrototypeOf(e4, b2) : (e4.__proto__ = b2, u3(e4, p4, "GeneratorFunction")), e4.prototype = Object.create(T2), e4;
+ }, t3.awrap = function(e4) {
+ return { __await: e4 };
+ }, R2(B2.prototype), u3(B2.prototype, l3, function() {
+ return this;
+ }), t3.AsyncIterator = B2, t3.async = function(e4, n4, i4, o3, a4) {
+ void 0 === a4 && (a4 = Promise);
+ var r5 = new B2(d3(e4, n4, i4, o3), a4);
+ return t3.isGeneratorFunction(n4) ? r5 : r5.next().then(function(e5) {
+ return e5.done ? e5.value : r5.next();
+ });
+ }, R2(T2), u3(T2, p4, "Generator"), u3(T2, c3, function() {
+ return this;
+ }), u3(T2, "toString", function() {
+ return "[object Generator]";
+ }), t3.keys = function(e4) {
+ var t4 = Object(e4), n4 = [];
+ for (var i4 in t4)
+ n4.push(i4);
+ return n4.reverse(), function e5() {
+ for (; n4.length; ) {
+ var i5 = n4.pop();
+ if (i5 in t4)
+ return e5.value = i5, e5.done = false, e5;
+ }
+ return e5.done = true, e5;
+ };
+ }, t3.values = I2, j2.prototype = { constructor: j2, reset: function(t4) {
+ if (this.prev = 0, this.next = 0, this.sent = this._sent = e3, this.done = false, this.delegate = null, this.method = "next", this.arg = e3, this.tryEntries.forEach(O2), !t4)
+ for (var n4 in this)
+ "t" === n4.charAt(0) && a3.call(this, n4) && !isNaN(+n4.slice(1)) && (this[n4] = e3);
+ }, stop: function() {
+ this.done = true;
+ var e4 = this.tryEntries[0].completion;
+ if ("throw" === e4.type)
+ throw e4.arg;
+ return this.rval;
+ }, dispatchException: function(t4) {
+ if (this.done)
+ throw t4;
+ var n4 = this;
+ function i4(i5, o4) {
+ return s5.type = "throw", s5.arg = t4, n4.next = i5, o4 && (n4.method = "next", n4.arg = e3), !!o4;
+ }
+ for (var o3 = this.tryEntries.length - 1; o3 >= 0; --o3) {
+ var r5 = this.tryEntries[o3], s5 = r5.completion;
+ if ("root" === r5.tryLoc)
+ return i4("end");
+ if (r5.tryLoc <= this.prev) {
+ var c4 = a3.call(r5, "catchLoc"), l4 = a3.call(r5, "finallyLoc");
+ if (c4 && l4) {
+ if (this.prev < r5.catchLoc)
+ return i4(r5.catchLoc, true);
+ if (this.prev < r5.finallyLoc)
+ return i4(r5.finallyLoc);
+ } else if (c4) {
+ if (this.prev < r5.catchLoc)
+ return i4(r5.catchLoc, true);
+ } else {
+ if (!l4)
+ throw Error("try statement without catch or finally");
+ if (this.prev < r5.finallyLoc)
+ return i4(r5.finallyLoc);
+ }
+ }
+ }
+ }, abrupt: function(e4, t4) {
+ for (var n4 = this.tryEntries.length - 1; n4 >= 0; --n4) {
+ var i4 = this.tryEntries[n4];
+ if (i4.tryLoc <= this.prev && a3.call(i4, "finallyLoc") && this.prev < i4.finallyLoc) {
+ var o3 = i4;
+ break;
+ }
+ }
+ o3 && ("break" === e4 || "continue" === e4) && o3.tryLoc <= t4 && t4 <= o3.finallyLoc && (o3 = null);
+ var r5 = o3 ? o3.completion : {};
+ return r5.type = e4, r5.arg = t4, o3 ? (this.method = "next", this.next = o3.finallyLoc, y3) : this.complete(r5);
+ }, complete: function(e4, t4) {
+ if ("throw" === e4.type)
+ throw e4.arg;
+ return "break" === e4.type || "continue" === e4.type ? this.next = e4.arg : "return" === e4.type ? (this.rval = this.arg = e4.arg, this.method = "return", this.next = "end") : "normal" === e4.type && t4 && (this.next = t4), y3;
+ }, finish: function(e4) {
+ for (var t4 = this.tryEntries.length - 1; t4 >= 0; --t4) {
+ var n4 = this.tryEntries[t4];
+ if (n4.finallyLoc === e4)
+ return this.complete(n4.completion, n4.afterLoc), O2(n4), y3;
+ }
+ }, catch: function(e4) {
+ for (var t4 = this.tryEntries.length - 1; t4 >= 0; --t4) {
+ var n4 = this.tryEntries[t4];
+ if (n4.tryLoc === e4) {
+ var i4 = n4.completion;
+ if ("throw" === i4.type) {
+ var o3 = i4.arg;
+ O2(n4);
+ }
+ return o3;
+ }
+ }
+ throw Error("illegal catch attempt");
+ }, delegateYield: function(t4, n4, i4) {
+ return this.delegate = { iterator: I2(t4), resultName: n4, nextLoc: i4 }, "next" === this.method && (this.arg = e3), y3;
+ } }, t3;
+ }
+ function a2(e3, t3, n3, i4, o3, a3, r4) {
+ try {
+ var s4 = e3[a3](r4), c3 = s4.value;
+ } catch (e4) {
+ return void n3(e4);
+ }
+ s4.done ? t3(c3) : Promise.resolve(c3).then(i4, o3);
+ }
+ function r3(e3) {
+ return function() {
+ var t3 = this, n3 = arguments;
+ return new Promise(function(i4, o3) {
+ var r4 = e3.apply(t3, n3);
+ function s4(e4) {
+ a2(r4, i4, o3, s4, c3, "next", e4);
+ }
+ function c3(e4) {
+ a2(r4, i4, o3, s4, c3, "throw", e4);
+ }
+ s4(void 0);
+ });
+ };
+ }
+ function s3(e3, t3, n3) {
+ return (t3 = l2(t3)) in e3 ? Object.defineProperty(e3, t3, { value: n3, enumerable: true, configurable: true, writable: true }) : e3[t3] = n3, e3;
+ }
+ function c2(e3, t3) {
+ for (var n3 = 0; n3 < t3.length; n3++) {
+ var i4 = t3[n3];
+ i4.enumerable = i4.enumerable || false, i4.configurable = true, "value" in i4 && (i4.writable = true), Object.defineProperty(e3, l2(i4.key), i4);
+ }
+ }
+ function l2(e3) {
+ var t3 = function(e4, t4) {
+ if ("object" != i3(e4) || !e4)
+ return e4;
+ var n3 = e4[Symbol.toPrimitive];
+ if (void 0 !== n3) {
+ var o3 = n3.call(e4, t4 || "default");
+ if ("object" != i3(o3))
+ return o3;
+ throw new TypeError("@@toPrimitive must return a primitive value.");
+ }
+ return ("string" === t4 ? String : Number)(e4);
+ }(e3, "string");
+ return "symbol" == i3(t3) ? t3 : t3 + "";
+ }
+ var p3 = n2(3), u2 = null, d2 = function(e3) {
+ return !e3 || e3 < 0 ? 0 : (e3 / 1e3).toFixed(3);
+ }, f2 = function() {
+ var e3 = function() {
+ return (65536 * (1 + Math.random()) | 0).toString(16).substring(1);
+ };
+ return e3() + e3() + "-" + e3() + "-" + e3() + "-" + e3() + "-" + e3() + e3() + e3();
+ }, m2 = function() {
+ return new Promise(function(e3) {
+ if (wx$1.canIUse("getNetworkType"))
+ try {
+ wx$1.getNetworkType({ success: function(t3) {
+ e3(t3.networkType);
+ } });
+ } catch (t3) {
+ e3("can_not_get_network_type");
+ }
+ else
+ e3("can_not_get_network_type");
+ });
+ }, h2 = function() {
+ var e3 = { devicePlatform: "can_not_get_system_info", wxVersion: "can_not_get_system_info", wxSystem: "can_not_get_system_info", wxSdkVersion: "can_not_get_system_info" }, t3 = {}, n3 = {};
+ wx$1.canIUse("getAppBaseInfo") && (t3 = wx$1.getAppBaseInfo() || {}), wx$1.canIUse("getDeviceInfo") && (n3 = wx$1.getDeviceInfo() || {});
+ var i4 = t3.SDKVersion || "can_not_get_system_info", o3 = t3.version || "can_not_get_system_info", a3 = n3.platform || "can_not_get_system_info", r4 = n3.system || "can_not_get_system_info";
+ return Object.assign(e3, { devicePlatform: a3, wxVersion: o3, wxSystem: r4, wxSdkVersion: i4 }), e3;
+ }, g2 = h2();
+ function v3(e3) {
+ return e3.replace(/([A-Z])/g, "_$1").toLowerCase();
+ }
+ function y2(e3) {
+ var t3, n3 = {}, i4 = ["sdkVersionName", "sdkVersionCode", "osName", "networkType", "requestName", "requestResult", "bucket", "region", "appid", "accelerate", "url", "host", "requestPath", "userAgent", "httpMethod", "httpSize", "httpSpeed", "httpTookTime", "httpMd5", "httpSign", "httpFullTime", "httpDomain", "partNumber", "httpRetryTimes", "customId", "traceId", "realApi"], o3 = [].concat(i4, ["errorNode", "errorCode", "errorName", "errorMessage", "errorRequestId", "errorHttpCode", "errorServiceName", "errorType", "fullError"]), a3 = "Success" === e3.requestResult ? i4 : o3;
+ for (var r4 in e3) {
+ if (a3.includes(r4))
+ n3[v3(r4)] = e3[r4];
+ }
+ return n3.request_name = e3.realApi ? (t3 = e3.realApi, ["putObject", "sliceUploadFile", "uploadFile", "uploadFiles"].includes(t3) ? "UploadTask" : "getObject" === t3 ? "DownloadTask" : ["putObjectCopy", "sliceCopyFile"].includes(t3) ? "CopyTask" : t3) : e3.requestName, n3;
+ }
+ var x2 = function() {
+ function e3(t4) {
+ var n4;
+ !function(e4, t5) {
+ if (!(e4 instanceof t5))
+ throw new TypeError("Cannot call a class as a function");
+ }(this, e3);
+ var i4 = t4.parent, o3 = t4.traceId, a4 = t4.bucket, r4 = t4.region, c3 = t4.apiName, l4 = t4.realApi, d3 = t4.httpMethod, m3 = t4.fileKey, h3 = t4.fileSize, v4 = t4.accelerate, y3 = t4.customId, x3 = t4.delay, k2 = t4.deepTracker, b2 = t4.Beacon, C2 = t4.clsReporter, S2 = a4 && a4.substr(a4.lastIndexOf("-") + 1) || "";
+ this.parent = i4, this.deepTracker = k2, this.delay = x3, C2 && !this.clsReporter && (this.clsReporter = C2), this.params = (s3(n4 = { sdkVersionName: "cos-wx-sdk-v5", sdkVersionCode: p3.version, osName: g2.devicePlatform, networkType: "", requestName: c3 || "", requestResult: "", realApi: l4, bucket: a4, region: r4, accelerate: v4, httpMethod: d3, url: "", host: "", httpDomain: "", requestPath: m3 || "", errorType: "", errorCode: "", errorName: "", errorMessage: "", errorRequestId: "", errorHttpCode: 0, errorServiceName: "", errorNode: "", httpTookTime: 0, httpSize: h3 || 0, httpMd5: 0, httpSign: 0, httpFullTime: 0, httpSpeed: 0, size: h3 || 0 }, "httpMd5", 0), s3(n4, "httpSign", 0), s3(n4, "httpFull", 0), s3(n4, "name", c3 || ""), s3(n4, "tookTime", 0), s3(n4, "md5StartTime", 0), s3(n4, "md5EndTime", 0), s3(n4, "signStartTime", 0), s3(n4, "signEndTime", 0), s3(n4, "httpStartTime", 0), s3(n4, "httpEndTime", 0), s3(n4, "startTime", (/* @__PURE__ */ new Date()).getTime()), s3(n4, "endTime", 0), s3(n4, "traceId", o3 || f2()), s3(n4, "appid", S2), s3(n4, "partNumber", 0), s3(n4, "httpRetryTimes", 0), s3(n4, "customId", y3 || ""), s3(n4, "partTime", 0), n4), b2 && (this.beacon = function(e4, t5) {
+ if (!u2) {
+ if ("function" != typeof e4)
+ throw new Error("Beacon not found");
+ u2 = new e4({ appkey: "0WEB05PY6MHRGK0U", versionCode: p3.version, channelID: "mp_sdk", openid: "openid", unionid: "unid", strictMode: false, delay: t5, sessionDuration: 6e4 });
+ }
+ return u2;
+ }(b2, x3));
+ }
+ var t3, n3, a3, l3;
+ return t3 = e3, n3 = [{ key: "formatResult", value: (l3 = r3(o2().mark(function e4(t4, n4) {
+ var i4, a4, r4, s4, c3, l4, p4, u3, f3, h3, g3, v4, y3, x3, k2, b2, C2, S2, w2, T2, R2, B2, A2, P2, E2, O2, j2;
+ return o2().wrap(function(e5) {
+ for (; ; )
+ switch (e5.prev = e5.next) {
+ case 0:
+ return h3 = (/* @__PURE__ */ new Date()).getTime(), e5.next = 3, m2();
+ case 3:
+ if (g3 = e5.sent, v4 = t4 ? (null == t4 || null === (i4 = t4.error) || void 0 === i4 || null === (a4 = i4.error) || void 0 === a4 ? void 0 : a4.Code) || "Error" : "", y3 = t4 && ((null == t4 || null === (r4 = t4.error) || void 0 === r4 || null === (s4 = r4.error) || void 0 === s4 ? void 0 : s4.Message) || (null == t4 || null === (c3 = t4.error) || void 0 === c3 ? void 0 : c3.error) || (null == t4 ? void 0 : t4.error)) || "", x3 = y3, k2 = t4 ? null == t4 || null === (l4 = t4.error) || void 0 === l4 ? void 0 : l4.statusCode : n4.statusCode, b2 = t4 ? null == t4 || null === (p4 = t4.error) || void 0 === p4 || null === (u3 = p4.error) || void 0 === u3 ? void 0 : u3.Resource : "", C2 = t4 ? (null == t4 || null === (f3 = t4.error) || void 0 === f3 ? void 0 : f3.RequestId) || "" : (null == n4 ? void 0 : n4.RequestId) || "", S2 = t4 ? C2 ? "Server" : "Client" : "", "getObject" === this.params.requestName && (this.params.httpSize = n4 ? n4.headers && n4.headers["content-length"] : 0), w2 = "sliceUploadFile" === this.params.realApi, T2 = "sliceCopyFile" === this.params.realApi, w2 || T2 ? (R2 = this.params.httpSize / 1024 / this.params.partTime, Object.assign(this.params, { httpSpeed: R2 < 0 ? 0 : R2.toFixed(3) })) : (B2 = h3 - this.params.startTime, A2 = this.params.httpEndTime - this.params.httpStartTime, P2 = this.params.httpSize / 1024 / (A2 / 1e3), E2 = this.params.md5EndTime - this.params.md5StartTime, O2 = this.params.signEndTime - this.params.signStartTime, this.parent && (this.parent.addParamValue("httpTookTime", d2(A2)), this.parent.addParamValue("httpFullTime", d2(B2)), this.parent.addParamValue("httpMd5", d2(E2)), this.parent.addParamValue("httpSign", d2(O2)), ["multipartUpload", "uploadPartCopy", "putObjectCopy"].includes(this.params.requestName) && this.parent.addParamValue("partTime", d2(A2))), Object.assign(this.params, { httpFullTime: d2(B2), httpMd5: d2(E2), httpSign: d2(O2), httpTookTime: d2(A2), httpSpeed: P2 < 0 ? 0 : P2.toFixed(3) })), Object.assign(this.params, { networkType: g3, requestResult: t4 ? "Failure" : "Success", errorType: S2, errorCode: v4, errorHttpCode: k2, errorName: x3, errorMessage: y3, errorServiceName: b2, errorRequestId: C2 }), !t4 || v4 && y3 || (this.params.fullError = t4 ? JSON.stringify(t4) : ""), "getObject" === this.params.name && (this.params.size = n4 ? n4.headers && n4.headers["content-length"] : -1), this.params.url) {
+ try {
+ j2 = /^http(s)?:\/\/(.*?)\//.exec(this.params.url), this.params.host = j2[2];
+ } catch (e6) {
+ this.params.host = this.params.url;
+ }
+ this.params.httpDomain = this.params.host;
+ }
+ case 19:
+ case "end":
+ return e5.stop();
+ }
+ }, e4, this);
+ })), function(e4, t4) {
+ return l3.apply(this, arguments);
+ }) }, { key: "report", value: (a3 = r3(o2().mark(function e4(t4, n4) {
+ var i4;
+ return o2().wrap(function(e5) {
+ for (; ; )
+ switch (e5.prev = e5.next) {
+ case 0:
+ if (this.beacon || this.clsReporter) {
+ e5.next = 2;
+ break;
+ }
+ return e5.abrupt("return");
+ case 2:
+ return e5.next = 4, this.formatResult(t4, n4);
+ case 4:
+ i4 = y2(this.params), this.beacon && this.sendEventsToBeacon(i4), this.clsReporter && this.sendEventsToCLS(i4);
+ case 7:
+ case "end":
+ return e5.stop();
+ }
+ }, e4, this);
+ })), function(e4, t4) {
+ return a3.apply(this, arguments);
+ }) }, { key: "setParams", value: function(e4) {
+ Object.assign(this.params, e4);
+ } }, { key: "addParamValue", value: function(e4, t4) {
+ this.params[e4] = (+this.params[e4] + +t4).toFixed(3);
+ } }, { key: "sendEventsToBeacon", value: function(e4) {
+ if ("sliceUploadFile" !== this.params.requestName && "sliceUploadFile" !== this.params.realApi || this.deepTracker) {
+ var t4 = "qcloud_track_cos_sdk";
+ 0 === this.delay ? this.beacon && this.beacon.onDirectUserAction(t4, e4) : this.beacon && this.beacon.onUserAction(t4, e4);
+ }
+ } }, { key: "sendEventsToCLS", value: function(e4) {
+ var t4 = !(0 !== this.delay);
+ this.clsReporter.log(e4, t4);
+ } }, { key: "generateSubTracker", value: function(t4) {
+ return Object.assign(t4, { parent: this, deepTracker: this.deepTracker, traceId: this.params.traceId, bucket: this.params.bucket, region: this.params.region, accelerate: this.params.accelerate, fileKey: this.params.requestPath, customId: this.params.customId, delay: this.params.delay, clsReporter: this.clsReporter }), new e3(t4);
+ } }], n3 && c2(t3.prototype, n3), Object.defineProperty(t3, "prototype", { writable: false }), e3;
+ }();
+ e2.exports = x2;
+ }, function(e2) {
+ e2.exports = JSON.parse('{"name":"cos-wx-sdk-v5","version":"1.8.0","description":"小程序 SDK for [腾讯云对象存储服务](https://cloud.tencent.com/product/cos)","main":"dist/cos-wx-sdk-v5.min.js","scripts":{"prettier":"prettier --write src demo/demo-sdk.js demo/test.js demo/ciDemo","dev":"cross-env NODE_ENV=development node build.js --mode=development","build":"cross-env NODE_ENV=production node build.js --mode=production","sts.js":"node server/sts.js","postinstall":"patch-package"},"repository":{"type":"git","url":"http://github.com/tencentyun/cos-wx-sdk-v5.git"},"author":"carsonxu","license":"ISC","dependencies":{"fast-xml-parser":"4.5.0","mime":"^2.4.6"},"devDependencies":{"@babel/core":"7.17.9","@babel/preset-env":"7.16.11","babel-loader":"8.2.5","body-parser":"^1.18.3","cross-env":"^7.0.3","express":"^4.17.1","patch-package":"^8.0.0","prettier":"^3.0.1","qcloud-cos-sts":"^3.0.2","terser-webpack-plugin":"4.2.3","webpack":"4.46.0","webpack-cli":"4.10.0"}}');
+ }, function(e2, t2, n2) {
+ const i3 = n2(1), o2 = { allowBooleanAttributes: false, unpairedTags: [] };
+ function a2(e3) {
+ return " " === e3 || " " === e3 || "\n" === e3 || "\r" === e3;
+ }
+ function r3(e3, t3) {
+ const n3 = t3;
+ for (; t3 < e3.length; t3++)
+ if ("?" != e3[t3] && " " != e3[t3])
+ ;
+ else {
+ const i4 = e3.substr(n3, t3 - n3);
+ if (t3 > 5 && "xml" === i4)
+ return m2("InvalidXml", "XML declaration allowed only at the start of the document.", g2(e3, t3));
+ if ("?" == e3[t3] && ">" == e3[t3 + 1]) {
+ t3++;
+ break;
+ }
+ }
+ return t3;
+ }
+ function s3(e3, t3) {
+ if (e3.length > t3 + 5 && "-" === e3[t3 + 1] && "-" === e3[t3 + 2]) {
+ for (t3 += 3; t3 < e3.length; t3++)
+ if ("-" === e3[t3] && "-" === e3[t3 + 1] && ">" === e3[t3 + 2]) {
+ t3 += 2;
+ break;
+ }
+ } else if (e3.length > t3 + 8 && "D" === e3[t3 + 1] && "O" === e3[t3 + 2] && "C" === e3[t3 + 3] && "T" === e3[t3 + 4] && "Y" === e3[t3 + 5] && "P" === e3[t3 + 6] && "E" === e3[t3 + 7]) {
+ let n3 = 1;
+ for (t3 += 8; t3 < e3.length; t3++)
+ if ("<" === e3[t3])
+ n3++;
+ else if (">" === e3[t3] && (n3--, 0 === n3))
+ break;
+ } else if (e3.length > t3 + 9 && "[" === e3[t3 + 1] && "C" === e3[t3 + 2] && "D" === e3[t3 + 3] && "A" === e3[t3 + 4] && "T" === e3[t3 + 5] && "A" === e3[t3 + 6] && "[" === e3[t3 + 7]) {
+ for (t3 += 8; t3 < e3.length; t3++)
+ if ("]" === e3[t3] && "]" === e3[t3 + 1] && ">" === e3[t3 + 2]) {
+ t3 += 2;
+ break;
+ }
+ }
+ return t3;
+ }
+ t2.validate = function(e3, t3) {
+ t3 = Object.assign({}, o2, t3);
+ const n3 = [];
+ let c3 = false, l3 = false;
+ "\uFEFF" === e3[0] && (e3 = e3.substr(1));
+ for (let o3 = 0; o3 < e3.length; o3++)
+ if ("<" === e3[o3] && "?" === e3[o3 + 1]) {
+ if (o3 += 2, o3 = r3(e3, o3), o3.err)
+ return o3;
+ } else {
+ if ("<" !== e3[o3]) {
+ if (a2(e3[o3]))
+ continue;
+ return m2("InvalidChar", "char '" + e3[o3] + "' is not expected.", g2(e3, o3));
+ }
+ {
+ let h3 = o3;
+ if (o3++, "!" === e3[o3]) {
+ o3 = s3(e3, o3);
+ continue;
+ }
+ {
+ let v4 = false;
+ "/" === e3[o3] && (v4 = true, o3++);
+ let y2 = "";
+ for (; o3 < e3.length && ">" !== e3[o3] && " " !== e3[o3] && " " !== e3[o3] && "\n" !== e3[o3] && "\r" !== e3[o3]; o3++)
+ y2 += e3[o3];
+ if (y2 = y2.trim(), "/" === y2[y2.length - 1] && (y2 = y2.substring(0, y2.length - 1), o3--), u3 = y2, !i3.isName(u3)) {
+ let t4;
+ return t4 = 0 === y2.trim().length ? "Invalid space after '<'." : "Tag '" + y2 + "' is an invalid name.", m2("InvalidTag", t4, g2(e3, o3));
+ }
+ const x2 = p3(e3, o3);
+ if (false === x2)
+ return m2("InvalidAttr", "Attributes for '" + y2 + "' have open quote.", g2(e3, o3));
+ let k2 = x2.value;
+ if (o3 = x2.index, "/" === k2[k2.length - 1]) {
+ const n4 = o3 - k2.length;
+ k2 = k2.substring(0, k2.length - 1);
+ const i4 = d2(k2, t3);
+ if (true !== i4)
+ return m2(i4.err.code, i4.err.msg, g2(e3, n4 + i4.err.line));
+ c3 = true;
+ } else if (v4) {
+ if (!x2.tagClosed)
+ return m2("InvalidTag", "Closing tag '" + y2 + "' doesn't have proper closing.", g2(e3, o3));
+ if (k2.trim().length > 0)
+ return m2("InvalidTag", "Closing tag '" + y2 + "' can't have attributes or invalid starting.", g2(e3, h3));
+ if (0 === n3.length)
+ return m2("InvalidTag", "Closing tag '" + y2 + "' has not been opened.", g2(e3, h3));
+ {
+ const t4 = n3.pop();
+ if (y2 !== t4.tagName) {
+ let n4 = g2(e3, t4.tagStartPos);
+ return m2("InvalidTag", "Expected closing tag '" + t4.tagName + "' (opened in line " + n4.line + ", col " + n4.col + ") instead of closing tag '" + y2 + "'.", g2(e3, h3));
+ }
+ 0 == n3.length && (l3 = true);
+ }
+ } else {
+ const i4 = d2(k2, t3);
+ if (true !== i4)
+ return m2(i4.err.code, i4.err.msg, g2(e3, o3 - k2.length + i4.err.line));
+ if (true === l3)
+ return m2("InvalidXml", "Multiple possible root nodes found.", g2(e3, o3));
+ -1 !== t3.unpairedTags.indexOf(y2) || n3.push({ tagName: y2, tagStartPos: h3 }), c3 = true;
+ }
+ for (o3++; o3 < e3.length; o3++)
+ if ("<" === e3[o3]) {
+ if ("!" === e3[o3 + 1]) {
+ o3++, o3 = s3(e3, o3);
+ continue;
+ }
+ if ("?" !== e3[o3 + 1])
+ break;
+ if (o3 = r3(e3, ++o3), o3.err)
+ return o3;
+ } else if ("&" === e3[o3]) {
+ const t4 = f2(e3, o3);
+ if (-1 == t4)
+ return m2("InvalidChar", "char '&' is not expected.", g2(e3, o3));
+ o3 = t4;
+ } else if (true === l3 && !a2(e3[o3]))
+ return m2("InvalidXml", "Extra text at the end", g2(e3, o3));
+ "<" === e3[o3] && o3--;
+ }
+ }
+ }
+ var u3;
+ return c3 ? 1 == n3.length ? m2("InvalidTag", "Unclosed tag '" + n3[0].tagName + "'.", g2(e3, n3[0].tagStartPos)) : !(n3.length > 0) || m2("InvalidXml", "Invalid '" + JSON.stringify(n3.map((e4) => e4.tagName), null, 4).replace(/\r?\n/g, "") + "' found.", { line: 1, col: 1 }) : m2("InvalidXml", "Start tag expected.", 1);
+ };
+ const c2 = '"', l2 = "'";
+ function p3(e3, t3) {
+ let n3 = "", i4 = "", o3 = false;
+ for (; t3 < e3.length; t3++) {
+ if (e3[t3] === c2 || e3[t3] === l2)
+ "" === i4 ? i4 = e3[t3] : i4 !== e3[t3] || (i4 = "");
+ else if (">" === e3[t3] && "" === i4) {
+ o3 = true;
+ break;
+ }
+ n3 += e3[t3];
+ }
+ return "" === i4 && { value: n3, index: t3, tagClosed: o3 };
+ }
+ const u2 = new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`, "g");
+ function d2(e3, t3) {
+ const n3 = i3.getAllMatches(e3, u2), o3 = {};
+ for (let e4 = 0; e4 < n3.length; e4++) {
+ if (0 === n3[e4][1].length)
+ return m2("InvalidAttr", "Attribute '" + n3[e4][2] + "' has no space in starting.", v3(n3[e4]));
+ if (void 0 !== n3[e4][3] && void 0 === n3[e4][4])
+ return m2("InvalidAttr", "Attribute '" + n3[e4][2] + "' is without value.", v3(n3[e4]));
+ if (void 0 === n3[e4][3] && !t3.allowBooleanAttributes)
+ return m2("InvalidAttr", "boolean attribute '" + n3[e4][2] + "' is not allowed.", v3(n3[e4]));
+ const i4 = n3[e4][2];
+ if (!h2(i4))
+ return m2("InvalidAttr", "Attribute '" + i4 + "' is an invalid name.", v3(n3[e4]));
+ if (o3.hasOwnProperty(i4))
+ return m2("InvalidAttr", "Attribute '" + i4 + "' is repeated.", v3(n3[e4]));
+ o3[i4] = 1;
+ }
+ return true;
+ }
+ function f2(e3, t3) {
+ if (";" === e3[++t3])
+ return -1;
+ if ("#" === e3[t3])
+ return function(e4, t4) {
+ let n4 = /\d/;
+ for ("x" === e4[t4] && (t4++, n4 = /[\da-fA-F]/); t4 < e4.length; t4++) {
+ if (";" === e4[t4])
+ return t4;
+ if (!e4[t4].match(n4))
+ break;
+ }
+ return -1;
+ }(e3, ++t3);
+ let n3 = 0;
+ for (; t3 < e3.length; t3++, n3++)
+ if (!(e3[t3].match(/\w/) && n3 < 20)) {
+ if (";" === e3[t3])
+ break;
+ return -1;
+ }
+ return t3;
+ }
+ function m2(e3, t3, n3) {
+ return { err: { code: e3, msg: t3, line: n3.line || n3, col: n3.col } };
+ }
+ function h2(e3) {
+ return i3.isName(e3);
+ }
+ function g2(e3, t3) {
+ const n3 = e3.substring(0, t3).split(/\r?\n/);
+ return { line: n3.length, col: n3[n3.length - 1].length + 1 };
+ }
+ function v3(e3) {
+ return e3.startIndex + e3[1].length;
+ }
+ }, function(e2, t2) {
+ e2.exports = function(e3) {
+ return "function" == typeof e3 ? e3 : Array.isArray(e3) ? (t3) => {
+ for (const n2 of e3) {
+ if ("string" == typeof n2 && t3 === n2)
+ return true;
+ if (n2 instanceof RegExp && n2.test(t3))
+ return true;
+ }
+ } : () => false;
+ };
+ }, function(e2, t2) {
+ var n2 = function(e3) {
+ var t3 = {}, n3 = function(e4) {
+ return !t3[e4] && (t3[e4] = []), t3[e4];
+ };
+ e3.on = function(e4, t4) {
+ n3(e4).push(t4);
+ }, e3.off = function(e4, t4) {
+ for (var i3 = n3(e4), o2 = i3.length - 1; o2 >= 0; o2--)
+ t4 === i3[o2] && i3.splice(o2, 1);
+ }, e3.emit = function(e4, t4) {
+ for (var i3 = n3(e4).map(function(e5) {
+ return e5;
+ }), o2 = 0; o2 < i3.length; o2++)
+ i3[o2](t4);
+ };
+ };
+ e2.exports.init = n2, e2.exports.EventProxy = function() {
+ n2(this);
+ };
+ }, function(e2, t2, n2) {
+ var i3, o2, a2 = n2(0), r3 = "cos_sdk_upload_cache", s3 = function() {
+ try {
+ i3.length ? wx$1.setStorageSync(r3, JSON.stringify(i3)) : wx$1.removeStorageSync(r3);
+ } catch (e3) {
+ }
+ }, c2 = function() {
+ if (!i3) {
+ i3 = function() {
+ try {
+ var e4 = JSON.parse(wx$1.getStorageSync(r3));
+ } catch (e5) {
+ }
+ return e4 || (e4 = []), e4;
+ }();
+ for (var e3 = false, t3 = Math.round(Date.now() / 1e3), n3 = i3.length - 1; n3 >= 0; n3--) {
+ var o3 = i3[n3][2];
+ (!o3 || o3 + 2592e3 < t3) && (i3.splice(n3, 1), e3 = true);
+ }
+ e3 && s3();
+ }
+ }, l2 = function() {
+ o2 || (o2 = setTimeout(function() {
+ s3(), o2 = null;
+ }, 400));
+ }, p3 = { using: {}, setUsing: function(e3) {
+ p3.using[e3] = true;
+ }, removeUsing: function(e3) {
+ delete p3.using[e3];
+ }, getFileId: function(e3, t3, n3, i4) {
+ return e3.FilePath && e3.size && e3.lastModifiedTime && t3 ? a2.md5([e3.FilePath].join("::")) + "-" + a2.md5([e3.size, e3.mode, e3.lastAccessedTime, e3.lastModifiedTime, t3, n3, i4].join("::")) : null;
+ }, getCopyFileId: function(e3, t3, n3, i4, o3) {
+ var r4 = t3["content-length"], s4 = t3.etag || "", c3 = t3["last-modified"];
+ return e3 && n3 ? a2.md5([e3, r4, s4, c3, n3, i4, o3].join("::")) : null;
+ }, getUploadIdList: function(e3) {
+ if (!e3)
+ return null;
+ c2();
+ for (var t3 = [], n3 = 0; n3 < i3.length; n3++)
+ i3[n3][0] === e3 && t3.push(i3[n3][1]);
+ return t3.length ? t3 : null;
+ }, saveUploadId: function(e3, t3, n3) {
+ if (c2(), e3) {
+ for (var o3 = e3.substr(0, e3.indexOf("-") + 1), a3 = i3.length - 1; a3 >= 0; a3--) {
+ var r4 = i3[a3];
+ (r4[0] === e3 && r4[1] === t3 || e3 !== r4[0] && 0 === r4[0].indexOf(o3)) && i3.splice(a3, 1);
+ }
+ i3.unshift([e3, t3, Math.round(Date.now() / 1e3)]), i3.length > n3 && i3.splice(n3), l2();
+ }
+ }, removeUploadId: function(e3) {
+ c2(), delete p3.using[e3];
+ for (var t3 = i3.length - 1; t3 >= 0; t3--)
+ i3[t3][1] === e3 && i3.splice(t3, 1);
+ l2();
+ } };
+ e2.exports = p3;
+ }, function(e2, t2, n2) {
+ var i3 = n2(9);
+ e2.exports = i3;
+ }, function(e2, t2, n2) {
+ var i3 = n2(0), o2 = n2(6), a2 = n2(25), r3 = n2(26), s3 = n2(32), c2 = n2(3), l2 = { SecretId: "", SecretKey: "", SecurityToken: "", StartTime: 0, ExpiredTime: 0, ChunkRetryTimes: 2, FileParallelLimit: 3, ChunkParallelLimit: 3, ChunkSize: 1048576, SliceSize: 1048576, CopyChunkParallelLimit: 20, CopyChunkSize: 10485760, CopySliceSize: 10485760, MaxPartNumber: 1e4, ProgressInterval: 1e3, UploadQueueSize: 1e4, Domain: "", ServiceDomain: "", Protocol: "", CompatibilityMode: false, ForcePathStyle: false, Timeout: 0, CorrectClockSkew: true, SystemClockOffset: 0, UploadCheckContentMd5: false, UploadAddMetaMd5: false, UploadIdCacheLimit: 50, UseAccelerate: false, ForceSignHost: true, HttpDNSServiceId: "", SimpleUploadMethod: "postObject", AutoSwitchHost: false, CopySourceParser: null, ObjectKeySimplifyCheck: true, DeepTracker: false, TrackerDelay: 5e3, CustomId: "", BeaconReporter: null, ClsReporter: null }, p3 = function(e3) {
+ if (this.options = i3.extend(i3.clone(l2), e3 || {}), this.options.FileParallelLimit = Math.max(1, this.options.FileParallelLimit), this.options.ChunkParallelLimit = Math.max(1, this.options.ChunkParallelLimit), this.options.ChunkRetryTimes = Math.max(0, this.options.ChunkRetryTimes), this.options.ChunkSize = Math.max(1048576, this.options.ChunkSize), this.options.CopyChunkParallelLimit = Math.max(1, this.options.CopyChunkParallelLimit), this.options.CopyChunkSize = Math.max(1048576, this.options.CopyChunkSize), this.options.CopySliceSize = Math.max(0, this.options.CopySliceSize), this.options.MaxPartNumber = Math.max(1024, Math.min(1e4, this.options.MaxPartNumber)), this.options.Timeout = Math.max(0, this.options.Timeout), this.options.EnableReporter = this.options.BeaconReporter || this.options.ClsReporter, this.options.AppId, this.options.SecretId && this.options.SecretId.indexOf(" "), this.options.SecretKey && this.options.SecretKey.indexOf(" "), this.options.ForcePathStyle)
+ throw new Error("ForcePathStyle is not supported");
+ o2.init(this), a2.init(this);
+ };
+ r3.init(p3, a2), s3.init(p3, a2), p3.util = { md5: i3.md5, xml2json: i3.xml2json, json2xml: i3.json2xml, encodeBase64: i3.encodeBase64 }, p3.getAuthorization = i3.getAuth, p3.version = c2.version, e2.exports = p3;
+ }, function(e2, t2, n2) {
+ (function(e3) {
+ var t3;
+ function i3(e4) {
+ return i3 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e5) {
+ return typeof e5;
+ } : function(e5) {
+ return e5 && "function" == typeof Symbol && e5.constructor === Symbol && e5 !== Symbol.prototype ? "symbol" : typeof e5;
+ }, i3(e4);
+ }
+ !function() {
+ var o2 = "input is invalid type", a2 = "object" === ("undefined" == typeof window ? "undefined" : i3(window)), r3 = a2 ? window : {};
+ r3.JS_MD5_NO_WINDOW && (a2 = false), !a2 && "object" === ("undefined" == typeof self ? "undefined" : i3(self)) && (r3 = self);
+ var s3, c2 = !r3.JS_MD5_NO_COMMON_JS && "object" === i3(e3) && e3.exports, l2 = n2(12), p3 = !r3.JS_MD5_NO_ARRAY_BUFFER && "undefined" != typeof ArrayBuffer, u2 = "0123456789abcdef".split(""), d2 = [128, 32768, 8388608, -2147483648], f2 = [0, 8, 16, 24], m2 = ["hex", "array", "digest", "buffer", "arrayBuffer", "base64"], h2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), g2 = [];
+ if (p3) {
+ var v3 = new ArrayBuffer(68);
+ s3 = new Uint8Array(v3), g2 = new Uint32Array(v3);
+ }
+ !r3.JS_MD5_NO_NODE_JS && Array.isArray || (Array.isArray = function(e4) {
+ return "[object Array]" === Object.prototype.toString.call(e4);
+ }), !p3 || !r3.JS_MD5_NO_ARRAY_BUFFER_IS_VIEW && ArrayBuffer.isView || (ArrayBuffer.isView = function(e4) {
+ return "object" === i3(e4) && e4.buffer && e4.buffer.constructor === ArrayBuffer;
+ });
+ var y2 = function(e4) {
+ return function(t4) {
+ return new x2(true).update(t4)[e4]();
+ };
+ };
+ function x2(e4) {
+ if (e4)
+ g2[0] = g2[16] = g2[1] = g2[2] = g2[3] = g2[4] = g2[5] = g2[6] = g2[7] = g2[8] = g2[9] = g2[10] = g2[11] = g2[12] = g2[13] = g2[14] = g2[15] = 0, this.blocks = g2, this.buffer8 = s3;
+ else if (p3) {
+ var t4 = new ArrayBuffer(68);
+ this.buffer8 = new Uint8Array(t4), this.blocks = new Uint32Array(t4);
+ } else
+ this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
+ this.h0 = this.h1 = this.h2 = this.h3 = this.start = this.bytes = this.hBytes = 0, this.finalized = this.hashed = false, this.first = true;
+ }
+ x2.prototype.update = function(e4) {
+ if (!this.finalized) {
+ var t4, n3 = i3(e4);
+ if ("string" !== n3) {
+ if ("object" !== n3)
+ throw o2;
+ if (null === e4)
+ throw o2;
+ if (!p3 || e4.constructor !== ArrayBuffer && "ArrayBuffer" !== e4.constructor.name) {
+ if (!(Array.isArray(e4) || p3 && ArrayBuffer.isView(e4)))
+ throw o2;
+ } else
+ e4 = new Uint8Array(e4);
+ t4 = true;
+ }
+ for (var a3, r4, s4 = 0, c3 = e4.length, l3 = this.blocks, u3 = this.buffer8; s4 < c3; ) {
+ if (this.hashed && (this.hashed = false, l3[0] = l3[16], l3[16] = l3[1] = l3[2] = l3[3] = l3[4] = l3[5] = l3[6] = l3[7] = l3[8] = l3[9] = l3[10] = l3[11] = l3[12] = l3[13] = l3[14] = l3[15] = 0), t4)
+ if (p3)
+ for (r4 = this.start; s4 < c3 && r4 < 64; ++s4)
+ u3[r4++] = e4[s4];
+ else
+ for (r4 = this.start; s4 < c3 && r4 < 64; ++s4)
+ l3[r4 >> 2] |= e4[s4] << f2[3 & r4++];
+ else if (p3)
+ for (r4 = this.start; s4 < c3 && r4 < 64; ++s4)
+ (a3 = e4.charCodeAt(s4)) < 128 ? u3[r4++] = a3 : a3 < 2048 ? (u3[r4++] = 192 | a3 >> 6, u3[r4++] = 128 | 63 & a3) : a3 < 55296 || a3 >= 57344 ? (u3[r4++] = 224 | a3 >> 12, u3[r4++] = 128 | a3 >> 6 & 63, u3[r4++] = 128 | 63 & a3) : (a3 = 65536 + ((1023 & a3) << 10 | 1023 & e4.charCodeAt(++s4)), u3[r4++] = 240 | a3 >> 18, u3[r4++] = 128 | a3 >> 12 & 63, u3[r4++] = 128 | a3 >> 6 & 63, u3[r4++] = 128 | 63 & a3);
+ else
+ for (r4 = this.start; s4 < c3 && r4 < 64; ++s4)
+ (a3 = e4.charCodeAt(s4)) < 128 ? l3[r4 >> 2] |= a3 << f2[3 & r4++] : a3 < 2048 ? (l3[r4 >> 2] |= (192 | a3 >> 6) << f2[3 & r4++], l3[r4 >> 2] |= (128 | 63 & a3) << f2[3 & r4++]) : a3 < 55296 || a3 >= 57344 ? (l3[r4 >> 2] |= (224 | a3 >> 12) << f2[3 & r4++], l3[r4 >> 2] |= (128 | a3 >> 6 & 63) << f2[3 & r4++], l3[r4 >> 2] |= (128 | 63 & a3) << f2[3 & r4++]) : (a3 = 65536 + ((1023 & a3) << 10 | 1023 & e4.charCodeAt(++s4)), l3[r4 >> 2] |= (240 | a3 >> 18) << f2[3 & r4++], l3[r4 >> 2] |= (128 | a3 >> 12 & 63) << f2[3 & r4++], l3[r4 >> 2] |= (128 | a3 >> 6 & 63) << f2[3 & r4++], l3[r4 >> 2] |= (128 | 63 & a3) << f2[3 & r4++]);
+ this.lastByteIndex = r4, this.bytes += r4 - this.start, r4 >= 64 ? (this.start = r4 - 64, this.hash(), this.hashed = true) : this.start = r4;
+ }
+ return this.bytes > 4294967295 && (this.hBytes += this.bytes / 4294967296 << 0, this.bytes = this.bytes % 4294967296), this;
+ }
+ }, x2.prototype.finalize = function() {
+ if (!this.finalized) {
+ this.finalized = true;
+ var e4 = this.blocks, t4 = this.lastByteIndex;
+ e4[t4 >> 2] |= d2[3 & t4], t4 >= 56 && (this.hashed || this.hash(), e4[0] = e4[16], e4[16] = e4[1] = e4[2] = e4[3] = e4[4] = e4[5] = e4[6] = e4[7] = e4[8] = e4[9] = e4[10] = e4[11] = e4[12] = e4[13] = e4[14] = e4[15] = 0), e4[14] = this.bytes << 3, e4[15] = this.hBytes << 3 | this.bytes >>> 29, this.hash();
+ }
+ }, x2.prototype.hash = function() {
+ var e4, t4, n3, i4, o3, a3, r4 = this.blocks;
+ this.first ? t4 = ((t4 = ((e4 = ((e4 = r4[0] - 680876937) << 7 | e4 >>> 25) - 271733879 << 0) ^ (n3 = ((n3 = (-271733879 ^ (i4 = ((i4 = (-1732584194 ^ 2004318071 & e4) + r4[1] - 117830708) << 12 | i4 >>> 20) + e4 << 0) & (-271733879 ^ e4)) + r4[2] - 1126478375) << 17 | n3 >>> 15) + i4 << 0) & (i4 ^ e4)) + r4[3] - 1316259209) << 22 | t4 >>> 10) + n3 << 0 : (e4 = this.h0, t4 = this.h1, n3 = this.h2, t4 = ((t4 += ((e4 = ((e4 += ((i4 = this.h3) ^ t4 & (n3 ^ i4)) + r4[0] - 680876936) << 7 | e4 >>> 25) + t4 << 0) ^ (n3 = ((n3 += (t4 ^ (i4 = ((i4 += (n3 ^ e4 & (t4 ^ n3)) + r4[1] - 389564586) << 12 | i4 >>> 20) + e4 << 0) & (e4 ^ t4)) + r4[2] + 606105819) << 17 | n3 >>> 15) + i4 << 0) & (i4 ^ e4)) + r4[3] - 1044525330) << 22 | t4 >>> 10) + n3 << 0), t4 = ((t4 += ((e4 = ((e4 += (i4 ^ t4 & (n3 ^ i4)) + r4[4] - 176418897) << 7 | e4 >>> 25) + t4 << 0) ^ (n3 = ((n3 += (t4 ^ (i4 = ((i4 += (n3 ^ e4 & (t4 ^ n3)) + r4[5] + 1200080426) << 12 | i4 >>> 20) + e4 << 0) & (e4 ^ t4)) + r4[6] - 1473231341) << 17 | n3 >>> 15) + i4 << 0) & (i4 ^ e4)) + r4[7] - 45705983) << 22 | t4 >>> 10) + n3 << 0, t4 = ((t4 += ((e4 = ((e4 += (i4 ^ t4 & (n3 ^ i4)) + r4[8] + 1770035416) << 7 | e4 >>> 25) + t4 << 0) ^ (n3 = ((n3 += (t4 ^ (i4 = ((i4 += (n3 ^ e4 & (t4 ^ n3)) + r4[9] - 1958414417) << 12 | i4 >>> 20) + e4 << 0) & (e4 ^ t4)) + r4[10] - 42063) << 17 | n3 >>> 15) + i4 << 0) & (i4 ^ e4)) + r4[11] - 1990404162) << 22 | t4 >>> 10) + n3 << 0, t4 = ((t4 += ((e4 = ((e4 += (i4 ^ t4 & (n3 ^ i4)) + r4[12] + 1804603682) << 7 | e4 >>> 25) + t4 << 0) ^ (n3 = ((n3 += (t4 ^ (i4 = ((i4 += (n3 ^ e4 & (t4 ^ n3)) + r4[13] - 40341101) << 12 | i4 >>> 20) + e4 << 0) & (e4 ^ t4)) + r4[14] - 1502002290) << 17 | n3 >>> 15) + i4 << 0) & (i4 ^ e4)) + r4[15] + 1236535329) << 22 | t4 >>> 10) + n3 << 0, t4 = ((t4 += ((i4 = ((i4 += (t4 ^ n3 & ((e4 = ((e4 += (n3 ^ i4 & (t4 ^ n3)) + r4[1] - 165796510) << 5 | e4 >>> 27) + t4 << 0) ^ t4)) + r4[6] - 1069501632) << 9 | i4 >>> 23) + e4 << 0) ^ e4 & ((n3 = ((n3 += (e4 ^ t4 & (i4 ^ e4)) + r4[11] + 643717713) << 14 | n3 >>> 18) + i4 << 0) ^ i4)) + r4[0] - 373897302) << 20 | t4 >>> 12) + n3 << 0, t4 = ((t4 += ((i4 = ((i4 += (t4 ^ n3 & ((e4 = ((e4 += (n3 ^ i4 & (t4 ^ n3)) + r4[5] - 701558691) << 5 | e4 >>> 27) + t4 << 0) ^ t4)) + r4[10] + 38016083) << 9 | i4 >>> 23) + e4 << 0) ^ e4 & ((n3 = ((n3 += (e4 ^ t4 & (i4 ^ e4)) + r4[15] - 660478335) << 14 | n3 >>> 18) + i4 << 0) ^ i4)) + r4[4] - 405537848) << 20 | t4 >>> 12) + n3 << 0, t4 = ((t4 += ((i4 = ((i4 += (t4 ^ n3 & ((e4 = ((e4 += (n3 ^ i4 & (t4 ^ n3)) + r4[9] + 568446438) << 5 | e4 >>> 27) + t4 << 0) ^ t4)) + r4[14] - 1019803690) << 9 | i4 >>> 23) + e4 << 0) ^ e4 & ((n3 = ((n3 += (e4 ^ t4 & (i4 ^ e4)) + r4[3] - 187363961) << 14 | n3 >>> 18) + i4 << 0) ^ i4)) + r4[8] + 1163531501) << 20 | t4 >>> 12) + n3 << 0, t4 = ((t4 += ((i4 = ((i4 += (t4 ^ n3 & ((e4 = ((e4 += (n3 ^ i4 & (t4 ^ n3)) + r4[13] - 1444681467) << 5 | e4 >>> 27) + t4 << 0) ^ t4)) + r4[2] - 51403784) << 9 | i4 >>> 23) + e4 << 0) ^ e4 & ((n3 = ((n3 += (e4 ^ t4 & (i4 ^ e4)) + r4[7] + 1735328473) << 14 | n3 >>> 18) + i4 << 0) ^ i4)) + r4[12] - 1926607734) << 20 | t4 >>> 12) + n3 << 0, t4 = ((t4 += ((a3 = (i4 = ((i4 += ((o3 = t4 ^ n3) ^ (e4 = ((e4 += (o3 ^ i4) + r4[5] - 378558) << 4 | e4 >>> 28) + t4 << 0)) + r4[8] - 2022574463) << 11 | i4 >>> 21) + e4 << 0) ^ e4) ^ (n3 = ((n3 += (a3 ^ t4) + r4[11] + 1839030562) << 16 | n3 >>> 16) + i4 << 0)) + r4[14] - 35309556) << 23 | t4 >>> 9) + n3 << 0, t4 = ((t4 += ((a3 = (i4 = ((i4 += ((o3 = t4 ^ n3) ^ (e4 = ((e4 += (o3 ^ i4) + r4[1] - 1530992060) << 4 | e4 >>> 28) + t4 << 0)) + r4[4] + 1272893353) << 11 | i4 >>> 21) + e4 << 0) ^ e4) ^ (n3 = ((n3 += (a3 ^ t4) + r4[7] - 155497632) << 16 | n3 >>> 16) + i4 << 0)) + r4[10] - 1094730640) << 23 | t4 >>> 9) + n3 << 0, t4 = ((t4 += ((a3 = (i4 = ((i4 += ((o3 = t4 ^ n3) ^ (e4 = ((e4 += (o3 ^ i4) + r4[13] + 681279174) << 4 | e4 >>> 28) + t4 << 0)) + r4[0] - 358537222) << 11 | i4 >>> 21) + e4 << 0) ^ e4) ^ (n3 = ((n3 += (a3 ^ t4) + r4[3] - 722521979) << 16 | n3 >>> 16) + i4 << 0)) + r4[6] + 76029189) << 23 | t4 >>> 9) + n3 << 0, t4 = ((t4 += ((a3 = (i4 = ((i4 += ((o3 = t4 ^ n3) ^ (e4 = ((e4 += (o3 ^ i4) + r4[9] - 640364487) << 4 | e4 >>> 28) + t4 << 0)) + r4[12] - 421815835) << 11 | i4 >>> 21) + e4 << 0) ^ e4) ^ (n3 = ((n3 += (a3 ^ t4) + r4[15] + 530742520) << 16 | n3 >>> 16) + i4 << 0)) + r4[2] - 995338651) << 23 | t4 >>> 9) + n3 << 0, t4 = ((t4 += ((i4 = ((i4 += (t4 ^ ((e4 = ((e4 += (n3 ^ (t4 | ~i4)) + r4[0] - 198630844) << 6 | e4 >>> 26) + t4 << 0) | ~n3)) + r4[7] + 1126891415) << 10 | i4 >>> 22) + e4 << 0) ^ ((n3 = ((n3 += (e4 ^ (i4 | ~t4)) + r4[14] - 1416354905) << 15 | n3 >>> 17) + i4 << 0) | ~e4)) + r4[5] - 57434055) << 21 | t4 >>> 11) + n3 << 0, t4 = ((t4 += ((i4 = ((i4 += (t4 ^ ((e4 = ((e4 += (n3 ^ (t4 | ~i4)) + r4[12] + 1700485571) << 6 | e4 >>> 26) + t4 << 0) | ~n3)) + r4[3] - 1894986606) << 10 | i4 >>> 22) + e4 << 0) ^ ((n3 = ((n3 += (e4 ^ (i4 | ~t4)) + r4[10] - 1051523) << 15 | n3 >>> 17) + i4 << 0) | ~e4)) + r4[1] - 2054922799) << 21 | t4 >>> 11) + n3 << 0, t4 = ((t4 += ((i4 = ((i4 += (t4 ^ ((e4 = ((e4 += (n3 ^ (t4 | ~i4)) + r4[8] + 1873313359) << 6 | e4 >>> 26) + t4 << 0) | ~n3)) + r4[15] - 30611744) << 10 | i4 >>> 22) + e4 << 0) ^ ((n3 = ((n3 += (e4 ^ (i4 | ~t4)) + r4[6] - 1560198380) << 15 | n3 >>> 17) + i4 << 0) | ~e4)) + r4[13] + 1309151649) << 21 | t4 >>> 11) + n3 << 0, t4 = ((t4 += ((i4 = ((i4 += (t4 ^ ((e4 = ((e4 += (n3 ^ (t4 | ~i4)) + r4[4] - 145523070) << 6 | e4 >>> 26) + t4 << 0) | ~n3)) + r4[11] - 1120210379) << 10 | i4 >>> 22) + e4 << 0) ^ ((n3 = ((n3 += (e4 ^ (i4 | ~t4)) + r4[2] + 718787259) << 15 | n3 >>> 17) + i4 << 0) | ~e4)) + r4[9] - 343485551) << 21 | t4 >>> 11) + n3 << 0, this.first ? (this.h0 = e4 + 1732584193 << 0, this.h1 = t4 - 271733879 << 0, this.h2 = n3 - 1732584194 << 0, this.h3 = i4 + 271733878 << 0, this.first = false) : (this.h0 = this.h0 + e4 << 0, this.h1 = this.h1 + t4 << 0, this.h2 = this.h2 + n3 << 0, this.h3 = this.h3 + i4 << 0);
+ }, x2.prototype.hex = function() {
+ this.finalize();
+ var e4 = this.h0, t4 = this.h1, n3 = this.h2, i4 = this.h3;
+ return u2[e4 >> 4 & 15] + u2[15 & e4] + u2[e4 >> 12 & 15] + u2[e4 >> 8 & 15] + u2[e4 >> 20 & 15] + u2[e4 >> 16 & 15] + u2[e4 >> 28 & 15] + u2[e4 >> 24 & 15] + u2[t4 >> 4 & 15] + u2[15 & t4] + u2[t4 >> 12 & 15] + u2[t4 >> 8 & 15] + u2[t4 >> 20 & 15] + u2[t4 >> 16 & 15] + u2[t4 >> 28 & 15] + u2[t4 >> 24 & 15] + u2[n3 >> 4 & 15] + u2[15 & n3] + u2[n3 >> 12 & 15] + u2[n3 >> 8 & 15] + u2[n3 >> 20 & 15] + u2[n3 >> 16 & 15] + u2[n3 >> 28 & 15] + u2[n3 >> 24 & 15] + u2[i4 >> 4 & 15] + u2[15 & i4] + u2[i4 >> 12 & 15] + u2[i4 >> 8 & 15] + u2[i4 >> 20 & 15] + u2[i4 >> 16 & 15] + u2[i4 >> 28 & 15] + u2[i4 >> 24 & 15];
+ }, x2.prototype.toString = x2.prototype.hex, x2.prototype.digest = function() {
+ this.finalize();
+ var e4 = this.h0, t4 = this.h1, n3 = this.h2, i4 = this.h3;
+ return [255 & e4, e4 >> 8 & 255, e4 >> 16 & 255, e4 >> 24 & 255, 255 & t4, t4 >> 8 & 255, t4 >> 16 & 255, t4 >> 24 & 255, 255 & n3, n3 >> 8 & 255, n3 >> 16 & 255, n3 >> 24 & 255, 255 & i4, i4 >> 8 & 255, i4 >> 16 & 255, i4 >> 24 & 255];
+ }, x2.prototype.array = x2.prototype.digest, x2.prototype.arrayBuffer = function() {
+ this.finalize();
+ var e4 = new ArrayBuffer(16), t4 = new Uint32Array(e4);
+ return t4[0] = this.h0, t4[1] = this.h1, t4[2] = this.h2, t4[3] = this.h3, e4;
+ }, x2.prototype.buffer = x2.prototype.arrayBuffer, x2.prototype.base64 = function() {
+ for (var e4, t4, n3, i4 = "", o3 = this.array(), a3 = 0; a3 < 15; )
+ e4 = o3[a3++], t4 = o3[a3++], n3 = o3[a3++], i4 += h2[e4 >>> 2] + h2[63 & (e4 << 4 | t4 >>> 4)] + h2[63 & (t4 << 2 | n3 >>> 6)] + h2[63 & n3];
+ return e4 = o3[a3], i4 += h2[e4 >>> 2] + h2[e4 << 4 & 63] + "==";
+ };
+ var k2 = function() {
+ var e4 = y2("hex");
+ e4.getCtx = e4.create = function() {
+ return new x2();
+ }, e4.update = function(t5) {
+ return e4.create().update(t5);
+ };
+ for (var t4 = 0; t4 < m2.length; ++t4) {
+ var n3 = m2[t4];
+ e4[n3] = y2(n3);
+ }
+ return e4;
+ }();
+ c2 ? e3.exports = k2 : (r3.md5 = k2, l2 && (void 0 === (t3 = (function() {
+ return k2;
+ }).call(k2, n2, k2, e3)) || (e3.exports = t3)));
+ }();
+ }).call(this, n2(11)(e2));
+ }, function(e2, t2) {
+ e2.exports = function(e3) {
+ return e3.webpackPolyfill || (e3.deprecate = function() {
+ }, e3.paths = [], e3.children || (e3.children = []), Object.defineProperty(e3, "loaded", { enumerable: true, get: function() {
+ return e3.l;
+ } }), Object.defineProperty(e3, "id", { enumerable: true, get: function() {
+ return e3.i;
+ } }), e3.webpackPolyfill = 1), e3;
+ };
+ }, function(e2, t2) {
+ (function(t3) {
+ e2.exports = t3;
+ }).call(this, {});
+ }, function(e2, t2) {
+ var n2, i3, o2, a2, r3, s3, c2, l2 = l2 || function(e3, t3) {
+ var n3 = {}, i4 = n3.lib = {}, o3 = function() {
+ }, a3 = i4.Base = { extend: function(e4) {
+ o3.prototype = this;
+ var t4 = new o3();
+ return e4 && t4.mixIn(e4), t4.hasOwnProperty("init") || (t4.init = function() {
+ t4.$super.init.apply(this, arguments);
+ }), t4.init.prototype = t4, t4.$super = this, t4;
+ }, create: function() {
+ var e4 = this.extend();
+ return e4.init.apply(e4, arguments), e4;
+ }, init: function() {
+ }, mixIn: function(e4) {
+ for (var t4 in e4)
+ e4.hasOwnProperty(t4) && (this[t4] = e4[t4]);
+ e4.hasOwnProperty("toString") && (this.toString = e4.toString);
+ }, clone: function() {
+ return this.init.prototype.extend(this);
+ } }, r4 = i4.WordArray = a3.extend({ init: function(e4, t4) {
+ e4 = this.words = e4 || [], this.sigBytes = null != t4 ? t4 : 4 * e4.length;
+ }, toString: function(e4) {
+ return (e4 || c3).stringify(this);
+ }, concat: function(e4) {
+ var t4 = this.words, n4 = e4.words, i5 = this.sigBytes;
+ if (e4 = e4.sigBytes, this.clamp(), i5 % 4)
+ for (var o4 = 0; o4 < e4; o4++)
+ t4[i5 + o4 >>> 2] |= (n4[o4 >>> 2] >>> 24 - o4 % 4 * 8 & 255) << 24 - (i5 + o4) % 4 * 8;
+ else if (65535 < n4.length)
+ for (o4 = 0; o4 < e4; o4 += 4)
+ t4[i5 + o4 >>> 2] = n4[o4 >>> 2];
+ else
+ t4.push.apply(t4, n4);
+ return this.sigBytes += e4, this;
+ }, clamp: function() {
+ var t4 = this.words, n4 = this.sigBytes;
+ t4[n4 >>> 2] &= 4294967295 << 32 - n4 % 4 * 8, t4.length = e3.ceil(n4 / 4);
+ }, clone: function() {
+ var e4 = a3.clone.call(this);
+ return e4.words = this.words.slice(0), e4;
+ }, random: function(t4) {
+ for (var n4 = [], i5 = 0; i5 < t4; i5 += 4)
+ n4.push(4294967296 * e3.random() | 0);
+ return new r4.init(n4, t4);
+ } }), s4 = n3.enc = {}, c3 = s4.Hex = { stringify: function(e4) {
+ var t4 = e4.words;
+ e4 = e4.sigBytes;
+ for (var n4 = [], i5 = 0; i5 < e4; i5++) {
+ var o4 = t4[i5 >>> 2] >>> 24 - i5 % 4 * 8 & 255;
+ n4.push((o4 >>> 4).toString(16)), n4.push((15 & o4).toString(16));
+ }
+ return n4.join("");
+ }, parse: function(e4) {
+ for (var t4 = e4.length, n4 = [], i5 = 0; i5 < t4; i5 += 2)
+ n4[i5 >>> 3] |= parseInt(e4.substr(i5, 2), 16) << 24 - i5 % 8 * 4;
+ return new r4.init(n4, t4 / 2);
+ } }, l3 = s4.Latin1 = { stringify: function(e4) {
+ var t4 = e4.words;
+ e4 = e4.sigBytes;
+ for (var n4 = [], i5 = 0; i5 < e4; i5++)
+ n4.push(String.fromCharCode(t4[i5 >>> 2] >>> 24 - i5 % 4 * 8 & 255));
+ return n4.join("");
+ }, parse: function(e4) {
+ for (var t4 = e4.length, n4 = [], i5 = 0; i5 < t4; i5++)
+ n4[i5 >>> 2] |= (255 & e4.charCodeAt(i5)) << 24 - i5 % 4 * 8;
+ return new r4.init(n4, t4);
+ } }, p3 = s4.Utf8 = { stringify: function(e4) {
+ try {
+ return decodeURIComponent(escape(l3.stringify(e4)));
+ } catch (e5) {
+ throw Error("Malformed UTF-8 data");
+ }
+ }, parse: function(e4) {
+ return l3.parse(unescape(encodeURIComponent(e4)));
+ } }, u2 = i4.BufferedBlockAlgorithm = a3.extend({ reset: function() {
+ this._data = new r4.init(), this._nDataBytes = 0;
+ }, _append: function(e4) {
+ "string" == typeof e4 && (e4 = p3.parse(e4)), this._data.concat(e4), this._nDataBytes += e4.sigBytes;
+ }, _process: function(t4) {
+ var n4 = this._data, i5 = n4.words, o4 = n4.sigBytes, a4 = this.blockSize, s5 = o4 / (4 * a4);
+ if (t4 = (s5 = t4 ? e3.ceil(s5) : e3.max((0 | s5) - this._minBufferSize, 0)) * a4, o4 = e3.min(4 * t4, o4), t4) {
+ for (var c4 = 0; c4 < t4; c4 += a4)
+ this._doProcessBlock(i5, c4);
+ c4 = i5.splice(0, t4), n4.sigBytes -= o4;
+ }
+ return new r4.init(c4, o4);
+ }, clone: function() {
+ var e4 = a3.clone.call(this);
+ return e4._data = this._data.clone(), e4;
+ }, _minBufferSize: 0 });
+ i4.Hasher = u2.extend({ cfg: a3.extend(), init: function(e4) {
+ this.cfg = this.cfg.extend(e4), this.reset();
+ }, reset: function() {
+ u2.reset.call(this), this._doReset();
+ }, update: function(e4) {
+ return this._append(e4), this._process(), this;
+ }, finalize: function(e4) {
+ return e4 && this._append(e4), this._doFinalize();
+ }, blockSize: 16, _createHelper: function(e4) {
+ return function(t4, n4) {
+ return new e4.init(n4).finalize(t4);
+ };
+ }, _createHmacHelper: function(e4) {
+ return function(t4, n4) {
+ return new d2.HMAC.init(e4, n4).finalize(t4);
+ };
+ } });
+ var d2 = n3.algo = {};
+ return n3;
+ }(Math);
+ i3 = (r3 = (n2 = l2).lib).WordArray, o2 = r3.Hasher, a2 = [], r3 = n2.algo.SHA1 = o2.extend({ _doReset: function() {
+ this._hash = new i3.init([1732584193, 4023233417, 2562383102, 271733878, 3285377520]);
+ }, _doProcessBlock: function(e3, t3) {
+ for (var n3 = this._hash.words, i4 = n3[0], o3 = n3[1], r4 = n3[2], s4 = n3[3], c3 = n3[4], l3 = 0; 80 > l3; l3++) {
+ if (16 > l3)
+ a2[l3] = 0 | e3[t3 + l3];
+ else {
+ var p3 = a2[l3 - 3] ^ a2[l3 - 8] ^ a2[l3 - 14] ^ a2[l3 - 16];
+ a2[l3] = p3 << 1 | p3 >>> 31;
+ }
+ p3 = (i4 << 5 | i4 >>> 27) + c3 + a2[l3], p3 = 20 > l3 ? p3 + (1518500249 + (o3 & r4 | ~o3 & s4)) : 40 > l3 ? p3 + (1859775393 + (o3 ^ r4 ^ s4)) : 60 > l3 ? p3 + ((o3 & r4 | o3 & s4 | r4 & s4) - 1894007588) : p3 + ((o3 ^ r4 ^ s4) - 899497514), c3 = s4, s4 = r4, r4 = o3 << 30 | o3 >>> 2, o3 = i4, i4 = p3;
+ }
+ n3[0] = n3[0] + i4 | 0, n3[1] = n3[1] + o3 | 0, n3[2] = n3[2] + r4 | 0, n3[3] = n3[3] + s4 | 0, n3[4] = n3[4] + c3 | 0;
+ }, _doFinalize: function() {
+ var e3 = this._data, t3 = e3.words, n3 = 8 * this._nDataBytes, i4 = 8 * e3.sigBytes;
+ return t3[i4 >>> 5] |= 128 << 24 - i4 % 32, t3[14 + (i4 + 64 >>> 9 << 4)] = Math.floor(n3 / 4294967296), t3[15 + (i4 + 64 >>> 9 << 4)] = n3, e3.sigBytes = 4 * t3.length, this._process(), this._hash;
+ }, clone: function() {
+ var e3 = o2.clone.call(this);
+ return e3._hash = this._hash.clone(), e3;
+ } }), n2.SHA1 = o2._createHelper(r3), n2.HmacSHA1 = o2._createHmacHelper(r3), function() {
+ var e3 = l2, t3 = e3.enc.Utf8;
+ e3.algo.HMAC = e3.lib.Base.extend({ init: function(e4, n3) {
+ e4 = this._hasher = new e4.init(), "string" == typeof n3 && (n3 = t3.parse(n3));
+ var i4 = e4.blockSize, o3 = 4 * i4;
+ n3.sigBytes > o3 && (n3 = e4.finalize(n3)), n3.clamp();
+ for (var a3 = this._oKey = n3.clone(), r4 = this._iKey = n3.clone(), s4 = a3.words, c3 = r4.words, l3 = 0; l3 < i4; l3++)
+ s4[l3] ^= 1549556828, c3[l3] ^= 909522486;
+ a3.sigBytes = r4.sigBytes = o3, this.reset();
+ }, reset: function() {
+ var e4 = this._hasher;
+ e4.reset(), e4.update(this._iKey);
+ }, update: function(e4) {
+ return this._hasher.update(e4), this;
+ }, finalize: function(e4) {
+ var t4 = this._hasher;
+ return e4 = t4.finalize(e4), t4.reset(), t4.finalize(this._oKey.clone().concat(e4));
+ } });
+ }(), c2 = (s3 = l2).lib.WordArray, s3.enc.Base64 = { stringify: function(e3) {
+ var t3 = e3.words, n3 = e3.sigBytes, i4 = this._map;
+ e3.clamp();
+ for (var o3 = [], a3 = 0; a3 < n3; a3 += 3)
+ for (var r4 = (t3[a3 >>> 2] >>> 24 - a3 % 4 * 8 & 255) << 16 | (t3[a3 + 1 >>> 2] >>> 24 - (a3 + 1) % 4 * 8 & 255) << 8 | t3[a3 + 2 >>> 2] >>> 24 - (a3 + 2) % 4 * 8 & 255, s4 = 0; s4 < 4 && a3 + 0.75 * s4 < n3; s4++)
+ o3.push(i4.charAt(r4 >>> 6 * (3 - s4) & 63));
+ var c3 = i4.charAt(64);
+ if (c3)
+ for (; o3.length % 4; )
+ o3.push(c3);
+ return o3.join("");
+ }, parse: function(e3) {
+ var t3 = e3.length, n3 = this._map, i4 = n3.charAt(64);
+ if (i4) {
+ var o3 = e3.indexOf(i4);
+ -1 != o3 && (t3 = o3);
+ }
+ for (var a3 = [], r4 = 0, s4 = 0; s4 < t3; s4++)
+ if (s4 % 4) {
+ var l3 = n3.indexOf(e3.charAt(s4 - 1)) << s4 % 4 * 2, p3 = n3.indexOf(e3.charAt(s4)) >>> 6 - s4 % 4 * 2;
+ a3[r4 >>> 2] |= (l3 | p3) << 24 - r4 % 4 * 8, r4++;
+ }
+ return c2.create(a3, r4);
+ }, _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" }, e2.exports = l2;
+ }, function(e2, t2) {
+ var n2 = function(e3) {
+ var t3 = (e3 = e3 || {}).Base64, n3 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", i3 = function(e4) {
+ for (var t4 = {}, n4 = 0, i4 = e4.length; n4 < i4; n4++)
+ t4[e4.charAt(n4)] = n4;
+ return t4;
+ }(n3), o2 = String.fromCharCode, a2 = function(e4) {
+ if (e4.length < 2)
+ return (t4 = e4.charCodeAt(0)) < 128 ? e4 : t4 < 2048 ? o2(192 | t4 >>> 6) + o2(128 | 63 & t4) : o2(224 | t4 >>> 12 & 15) + o2(128 | t4 >>> 6 & 63) + o2(128 | 63 & t4);
+ var t4 = 65536 + 1024 * (e4.charCodeAt(0) - 55296) + (e4.charCodeAt(1) - 56320);
+ return o2(240 | t4 >>> 18 & 7) + o2(128 | t4 >>> 12 & 63) + o2(128 | t4 >>> 6 & 63) + o2(128 | 63 & t4);
+ }, r3 = /[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g, s3 = function(e4) {
+ return e4.replace(r3, a2);
+ }, c2 = function(e4) {
+ var t4 = [0, 2, 1][e4.length % 3], i4 = e4.charCodeAt(0) << 16 | (e4.length > 1 ? e4.charCodeAt(1) : 0) << 8 | (e4.length > 2 ? e4.charCodeAt(2) : 0);
+ return [n3.charAt(i4 >>> 18), n3.charAt(i4 >>> 12 & 63), t4 >= 2 ? "=" : n3.charAt(i4 >>> 6 & 63), t4 >= 1 ? "=" : n3.charAt(63 & i4)].join("");
+ }, l2 = e3.btoa ? function(t4) {
+ return e3.btoa(t4);
+ } : function(e4) {
+ return e4.replace(/[\s\S]{1,3}/g, c2);
+ }, p3 = function(e4) {
+ return l2(s3(e4));
+ }, u2 = function(e4, t4) {
+ return t4 ? p3(String(e4)).replace(/[+\/]/g, function(e5) {
+ return "+" == e5 ? "-" : "_";
+ }).replace(/=/g, "") : p3(String(e4));
+ }, d2 = new RegExp(["[À-ß][-¿]", "[à-ï][-¿]{2}", "[ð-÷][-¿]{3}"].join("|"), "g"), f2 = function(e4) {
+ switch (e4.length) {
+ case 4:
+ var t4 = ((7 & e4.charCodeAt(0)) << 18 | (63 & e4.charCodeAt(1)) << 12 | (63 & e4.charCodeAt(2)) << 6 | 63 & e4.charCodeAt(3)) - 65536;
+ return o2(55296 + (t4 >>> 10)) + o2(56320 + (1023 & t4));
+ case 3:
+ return o2((15 & e4.charCodeAt(0)) << 12 | (63 & e4.charCodeAt(1)) << 6 | 63 & e4.charCodeAt(2));
+ default:
+ return o2((31 & e4.charCodeAt(0)) << 6 | 63 & e4.charCodeAt(1));
+ }
+ }, m2 = function(e4) {
+ return e4.replace(d2, f2);
+ }, h2 = function(e4) {
+ var t4 = e4.length, n4 = t4 % 4, a3 = (t4 > 0 ? i3[e4.charAt(0)] << 18 : 0) | (t4 > 1 ? i3[e4.charAt(1)] << 12 : 0) | (t4 > 2 ? i3[e4.charAt(2)] << 6 : 0) | (t4 > 3 ? i3[e4.charAt(3)] : 0), r4 = [o2(a3 >>> 16), o2(a3 >>> 8 & 255), o2(255 & a3)];
+ return r4.length -= [0, 0, 2, 1][n4], r4.join("");
+ }, g2 = e3.atob ? function(t4) {
+ return e3.atob(t4);
+ } : function(e4) {
+ return e4.replace(/[\s\S]{1,4}/g, h2);
+ }, v3 = function(e4) {
+ return m2(g2(e4));
+ }, y2 = function(e4) {
+ return v3(String(e4).replace(/[-_]/g, function(e5) {
+ return "-" == e5 ? "+" : "/";
+ }).replace(/[^A-Za-z0-9\+\/]/g, ""));
+ };
+ return { VERSION: "2.1.9", atob: g2, btoa: l2, fromBase64: y2, toBase64: u2, utob: s3, encode: u2, encodeURI: function(e4) {
+ return u2(e4, true);
+ }, btou: m2, decode: y2, noConflict: function() {
+ var n4 = e3.Base64;
+ return e3.Base64 = t3, n4;
+ } };
+ }();
+ e2.exports = n2;
+ }, function(e2, t2, n2) {
+ const i3 = n2(4), o2 = n2(16), a2 = n2(23);
+ e2.exports = { XMLParser: o2, XMLValidator: i3, XMLBuilder: a2 };
+ }, function(e2, t2, n2) {
+ const { buildOptions: i3 } = n2(17), o2 = n2(18), { prettify: a2 } = n2(22), r3 = n2(4);
+ e2.exports = class {
+ constructor(e3) {
+ this.externalEntities = {}, this.options = i3(e3);
+ }
+ parse(e3, t3) {
+ if ("string" == typeof e3)
+ ;
+ else {
+ if (!e3.toString)
+ throw new Error("XML data is accepted in String or Bytes[] form.");
+ e3 = e3.toString();
+ }
+ if (t3) {
+ true === t3 && (t3 = {});
+ const n4 = r3.validate(e3, t3);
+ if (true !== n4)
+ throw Error(`${n4.err.msg}:${n4.err.line}:${n4.err.col}`);
+ }
+ const n3 = new o2(this.options);
+ n3.addExternalEntities(this.externalEntities);
+ const i4 = n3.parseXml(e3);
+ return this.options.preserveOrder || void 0 === i4 ? i4 : a2(i4, this.options);
+ }
+ addEntity(e3, t3) {
+ if (-1 !== t3.indexOf("&"))
+ throw new Error("Entity value can't have '&'");
+ if (-1 !== e3.indexOf("&") || -1 !== e3.indexOf(";"))
+ throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '
'");
+ if ("&" === t3)
+ throw new Error("An entity with value '&' is not permitted");
+ this.externalEntities[e3] = t3;
+ }
+ };
+ }, function(e2, t2) {
+ const n2 = { preserveOrder: false, attributeNamePrefix: "@_", attributesGroupName: false, textNodeName: "#text", ignoreAttributes: true, removeNSPrefix: false, allowBooleanAttributes: false, parseTagValue: true, parseAttributeValue: false, trimValues: true, cdataPropName: false, numberParseOptions: { hex: true, leadingZeros: true, eNotation: true }, tagValueProcessor: function(e3, t3) {
+ return t3;
+ }, attributeValueProcessor: function(e3, t3) {
+ return t3;
+ }, stopNodes: [], alwaysCreateTextNode: false, isArray: () => false, commentPropName: false, unpairedTags: [], processEntities: true, htmlEntities: false, ignoreDeclaration: false, ignorePiTags: false, transformTagName: false, transformAttributeName: false, updateTag: function(e3, t3, n3) {
+ return e3;
+ } };
+ t2.buildOptions = function(e3) {
+ return Object.assign({}, n2, e3);
+ }, t2.defaultOptions = n2;
+ }, function(e2, t2, n2) {
+ const i3 = n2(1), o2 = n2(19), a2 = n2(20), r3 = n2(21), s3 = n2(5);
+ function c2(e3) {
+ const t3 = Object.keys(e3);
+ for (let n3 = 0; n3 < t3.length; n3++) {
+ const i4 = t3[n3];
+ this.lastEntities[i4] = { regex: new RegExp("&" + i4 + ";", "g"), val: e3[i4] };
+ }
+ }
+ function l2(e3, t3, n3, i4, o3, a3, r4) {
+ if (void 0 !== e3 && (this.options.trimValues && !i4 && (e3 = e3.trim()), e3.length > 0)) {
+ r4 || (e3 = this.replaceEntitiesValue(e3));
+ const i5 = this.options.tagValueProcessor(t3, e3, n3, o3, a3);
+ if (null == i5)
+ return e3;
+ if (typeof i5 != typeof e3 || i5 !== e3)
+ return i5;
+ if (this.options.trimValues)
+ return b2(e3, this.options.parseTagValue, this.options.numberParseOptions);
+ return e3.trim() === e3 ? b2(e3, this.options.parseTagValue, this.options.numberParseOptions) : e3;
+ }
+ }
+ function p3(e3) {
+ if (this.options.removeNSPrefix) {
+ const t3 = e3.split(":"), n3 = "/" === e3.charAt(0) ? "/" : "";
+ if ("xmlns" === t3[0])
+ return "";
+ 2 === t3.length && (e3 = n3 + t3[1]);
+ }
+ return e3;
+ }
+ const u2 = new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`, "gm");
+ function d2(e3, t3, n3) {
+ if (true !== this.options.ignoreAttributes && "string" == typeof e3) {
+ const n4 = i3.getAllMatches(e3, u2), o3 = n4.length, a3 = {};
+ for (let e4 = 0; e4 < o3; e4++) {
+ const i4 = this.resolveNameSpace(n4[e4][1]);
+ if (this.ignoreAttributesFn(i4, t3))
+ continue;
+ let o4 = n4[e4][4], r4 = this.options.attributeNamePrefix + i4;
+ if (i4.length)
+ if (this.options.transformAttributeName && (r4 = this.options.transformAttributeName(r4)), "__proto__" === r4 && (r4 = "#__proto__"), void 0 !== o4) {
+ this.options.trimValues && (o4 = o4.trim()), o4 = this.replaceEntitiesValue(o4);
+ const e5 = this.options.attributeValueProcessor(i4, o4, t3);
+ a3[r4] = null == e5 ? o4 : typeof e5 != typeof o4 || e5 !== o4 ? e5 : b2(o4, this.options.parseAttributeValue, this.options.numberParseOptions);
+ } else
+ this.options.allowBooleanAttributes && (a3[r4] = true);
+ }
+ if (!Object.keys(a3).length)
+ return;
+ if (this.options.attributesGroupName) {
+ const e4 = {};
+ return e4[this.options.attributesGroupName] = a3, e4;
+ }
+ return a3;
+ }
+ }
+ const f2 = function(e3) {
+ const t3 = new o2("!xml");
+ let n3 = t3, i4 = "", r4 = "";
+ for (let s4 = 0; s4 < e3.length; s4++) {
+ if ("<" === e3[s4])
+ if ("/" === e3[s4 + 1]) {
+ const t4 = y2(e3, ">", s4, "Closing Tag is not closed.");
+ let o3 = e3.substring(s4 + 2, t4).trim();
+ if (this.options.removeNSPrefix) {
+ const e4 = o3.indexOf(":");
+ -1 !== e4 && (o3 = o3.substr(e4 + 1));
+ }
+ this.options.transformTagName && (o3 = this.options.transformTagName(o3)), n3 && (i4 = this.saveTextToParentTag(i4, n3, r4));
+ const a3 = r4.substring(r4.lastIndexOf(".") + 1);
+ if (o3 && -1 !== this.options.unpairedTags.indexOf(o3))
+ throw new Error(`Unpaired tag can not be used as closing tag: ${o3}>`);
+ let c3 = 0;
+ a3 && -1 !== this.options.unpairedTags.indexOf(a3) ? (c3 = r4.lastIndexOf(".", r4.lastIndexOf(".") - 1), this.tagsNodeStack.pop()) : c3 = r4.lastIndexOf("."), r4 = r4.substring(0, c3), n3 = this.tagsNodeStack.pop(), i4 = "", s4 = t4;
+ } else if ("?" === e3[s4 + 1]) {
+ let t4 = x2(e3, s4, false, "?>");
+ if (!t4)
+ throw new Error("Pi Tag is not closed.");
+ if (i4 = this.saveTextToParentTag(i4, n3, r4), this.options.ignoreDeclaration && "?xml" === t4.tagName || this.options.ignorePiTags)
+ ;
+ else {
+ const e4 = new o2(t4.tagName);
+ e4.add(this.options.textNodeName, ""), t4.tagName !== t4.tagExp && t4.attrExpPresent && (e4[":@"] = this.buildAttributesMap(t4.tagExp, r4, t4.tagName)), this.addChild(n3, e4, r4);
+ }
+ s4 = t4.closeIndex + 1;
+ } else if ("!--" === e3.substr(s4 + 1, 3)) {
+ const t4 = y2(e3, "-->", s4 + 4, "Comment is not closed.");
+ if (this.options.commentPropName) {
+ const o3 = e3.substring(s4 + 4, t4 - 2);
+ i4 = this.saveTextToParentTag(i4, n3, r4), n3.add(this.options.commentPropName, [{ [this.options.textNodeName]: o3 }]);
+ }
+ s4 = t4;
+ } else if ("!D" === e3.substr(s4 + 1, 2)) {
+ const t4 = a2(e3, s4);
+ this.docTypeEntities = t4.entities, s4 = t4.i;
+ } else if ("![" === e3.substr(s4 + 1, 2)) {
+ const t4 = y2(e3, "]]>", s4, "CDATA is not closed.") - 2, o3 = e3.substring(s4 + 9, t4);
+ i4 = this.saveTextToParentTag(i4, n3, r4);
+ let a3 = this.parseTextData(o3, n3.tagname, r4, true, false, true, true);
+ null == a3 && (a3 = ""), this.options.cdataPropName ? n3.add(this.options.cdataPropName, [{ [this.options.textNodeName]: o3 }]) : n3.add(this.options.textNodeName, a3), s4 = t4 + 2;
+ } else {
+ let a3 = x2(e3, s4, this.options.removeNSPrefix), c3 = a3.tagName;
+ const l3 = a3.rawTagName;
+ let p4 = a3.tagExp, u3 = a3.attrExpPresent, d3 = a3.closeIndex;
+ this.options.transformTagName && (c3 = this.options.transformTagName(c3)), n3 && i4 && "!xml" !== n3.tagname && (i4 = this.saveTextToParentTag(i4, n3, r4, false));
+ const f3 = n3;
+ if (f3 && -1 !== this.options.unpairedTags.indexOf(f3.tagname) && (n3 = this.tagsNodeStack.pop(), r4 = r4.substring(0, r4.lastIndexOf("."))), c3 !== t3.tagname && (r4 += r4 ? "." + c3 : c3), this.isItStopNode(this.options.stopNodes, r4, c3)) {
+ let t4 = "";
+ if (p4.length > 0 && p4.lastIndexOf("/") === p4.length - 1)
+ "/" === c3[c3.length - 1] ? (c3 = c3.substr(0, c3.length - 1), r4 = r4.substr(0, r4.length - 1), p4 = c3) : p4 = p4.substr(0, p4.length - 1), s4 = a3.closeIndex;
+ else if (-1 !== this.options.unpairedTags.indexOf(c3))
+ s4 = a3.closeIndex;
+ else {
+ const n4 = this.readStopNodeData(e3, l3, d3 + 1);
+ if (!n4)
+ throw new Error(`Unexpected end of ${l3}`);
+ s4 = n4.i, t4 = n4.tagContent;
+ }
+ const i5 = new o2(c3);
+ c3 !== p4 && u3 && (i5[":@"] = this.buildAttributesMap(p4, r4, c3)), t4 && (t4 = this.parseTextData(t4, c3, r4, true, u3, true, true)), r4 = r4.substr(0, r4.lastIndexOf(".")), i5.add(this.options.textNodeName, t4), this.addChild(n3, i5, r4);
+ } else {
+ if (p4.length > 0 && p4.lastIndexOf("/") === p4.length - 1) {
+ "/" === c3[c3.length - 1] ? (c3 = c3.substr(0, c3.length - 1), r4 = r4.substr(0, r4.length - 1), p4 = c3) : p4 = p4.substr(0, p4.length - 1), this.options.transformTagName && (c3 = this.options.transformTagName(c3));
+ const e4 = new o2(c3);
+ c3 !== p4 && u3 && (e4[":@"] = this.buildAttributesMap(p4, r4, c3)), this.addChild(n3, e4, r4), r4 = r4.substr(0, r4.lastIndexOf("."));
+ } else {
+ const e4 = new o2(c3);
+ this.tagsNodeStack.push(n3), c3 !== p4 && u3 && (e4[":@"] = this.buildAttributesMap(p4, r4, c3)), this.addChild(n3, e4, r4), n3 = e4;
+ }
+ i4 = "", s4 = d3;
+ }
+ }
+ else
+ i4 += e3[s4];
+ }
+ return t3.child;
+ };
+ function m2(e3, t3, n3) {
+ const i4 = this.options.updateTag(t3.tagname, n3, t3[":@"]);
+ false === i4 || ("string" == typeof i4 ? (t3.tagname = i4, e3.addChild(t3)) : e3.addChild(t3));
+ }
+ const h2 = function(e3) {
+ if (this.options.processEntities) {
+ for (let t3 in this.docTypeEntities) {
+ const n3 = this.docTypeEntities[t3];
+ e3 = e3.replace(n3.regx, n3.val);
+ }
+ for (let t3 in this.lastEntities) {
+ const n3 = this.lastEntities[t3];
+ e3 = e3.replace(n3.regex, n3.val);
+ }
+ if (this.options.htmlEntities)
+ for (let t3 in this.htmlEntities) {
+ const n3 = this.htmlEntities[t3];
+ e3 = e3.replace(n3.regex, n3.val);
+ }
+ e3 = e3.replace(this.ampEntity.regex, this.ampEntity.val);
+ }
+ return e3;
+ };
+ function g2(e3, t3, n3, i4) {
+ return e3 && (void 0 === i4 && (i4 = 0 === Object.keys(t3.child).length), void 0 !== (e3 = this.parseTextData(e3, t3.tagname, n3, false, !!t3[":@"] && 0 !== Object.keys(t3[":@"]).length, i4)) && "" !== e3 && t3.add(this.options.textNodeName, e3), e3 = ""), e3;
+ }
+ function v3(e3, t3, n3) {
+ const i4 = "*." + n3;
+ for (const n4 in e3) {
+ const o3 = e3[n4];
+ if (i4 === o3 || t3 === o3)
+ return true;
+ }
+ return false;
+ }
+ function y2(e3, t3, n3, i4) {
+ const o3 = e3.indexOf(t3, n3);
+ if (-1 === o3)
+ throw new Error(i4);
+ return o3 + t3.length - 1;
+ }
+ function x2(e3, t3, n3, i4 = ">") {
+ const o3 = function(e4, t4, n4 = ">") {
+ let i5, o4 = "";
+ for (let a4 = t4; a4 < e4.length; a4++) {
+ let t5 = e4[a4];
+ if (i5)
+ t5 === i5 && (i5 = "");
+ else if ('"' === t5 || "'" === t5)
+ i5 = t5;
+ else if (t5 === n4[0]) {
+ if (!n4[1])
+ return { data: o4, index: a4 };
+ if (e4[a4 + 1] === n4[1])
+ return { data: o4, index: a4 };
+ } else
+ " " === t5 && (t5 = " ");
+ o4 += t5;
+ }
+ }(e3, t3 + 1, i4);
+ if (!o3)
+ return;
+ let a3 = o3.data;
+ const r4 = o3.index, s4 = a3.search(/\s/);
+ let c3 = a3, l3 = true;
+ -1 !== s4 && (c3 = a3.substring(0, s4), a3 = a3.substring(s4 + 1).trimStart());
+ const p4 = c3;
+ if (n3) {
+ const e4 = c3.indexOf(":");
+ -1 !== e4 && (c3 = c3.substr(e4 + 1), l3 = c3 !== o3.data.substr(e4 + 1));
+ }
+ return { tagName: c3, tagExp: a3, closeIndex: r4, attrExpPresent: l3, rawTagName: p4 };
+ }
+ function k2(e3, t3, n3) {
+ const i4 = n3;
+ let o3 = 1;
+ for (; n3 < e3.length; n3++)
+ if ("<" === e3[n3])
+ if ("/" === e3[n3 + 1]) {
+ const a3 = y2(e3, ">", n3, `${t3} is not closed`);
+ if (e3.substring(n3 + 2, a3).trim() === t3 && (o3--, 0 === o3))
+ return { tagContent: e3.substring(i4, n3), i: a3 };
+ n3 = a3;
+ } else if ("?" === e3[n3 + 1]) {
+ n3 = y2(e3, "?>", n3 + 1, "StopNode is not closed.");
+ } else if ("!--" === e3.substr(n3 + 1, 3)) {
+ n3 = y2(e3, "-->", n3 + 3, "StopNode is not closed.");
+ } else if ("![" === e3.substr(n3 + 1, 2)) {
+ n3 = y2(e3, "]]>", n3, "StopNode is not closed.") - 2;
+ } else {
+ const i5 = x2(e3, n3, ">");
+ if (i5) {
+ (i5 && i5.tagName) === t3 && "/" !== i5.tagExp[i5.tagExp.length - 1] && o3++, n3 = i5.closeIndex;
+ }
+ }
+ }
+ function b2(e3, t3, n3) {
+ if (t3 && "string" == typeof e3) {
+ const t4 = e3.trim();
+ return "true" === t4 || "false" !== t4 && r3(e3, n3);
+ }
+ return i3.isExist(e3) ? e3 : "";
+ }
+ e2.exports = class {
+ constructor(e3) {
+ this.options = e3, this.currentNode = null, this.tagsNodeStack = [], this.docTypeEntities = {}, this.lastEntities = { apos: { regex: /&(apos|#39|#x27);/g, val: "'" }, gt: { regex: /&(gt|#62|#x3E);/g, val: ">" }, lt: { regex: /&(lt|#60|#x3C);/g, val: "<" }, quot: { regex: /&(quot|#34|#x22);/g, val: '"' } }, this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: "&" }, this.htmlEntities = { space: { regex: /&(nbsp|#160);/g, val: " " }, cent: { regex: /&(cent|#162);/g, val: "¢" }, pound: { regex: /&(pound|#163);/g, val: "£" }, yen: { regex: /&(yen|#165);/g, val: "¥" }, euro: { regex: /&(euro|#8364);/g, val: "€" }, copyright: { regex: /&(copy|#169);/g, val: "©" }, reg: { regex: /&(reg|#174);/g, val: "®" }, inr: { regex: /&(inr|#8377);/g, val: "₹" }, num_dec: { regex: /([0-9]{1,7});/g, val: (e4, t3) => String.fromCharCode(Number.parseInt(t3, 10)) }, num_hex: { regex: /([0-9a-fA-F]{1,6});/g, val: (e4, t3) => String.fromCharCode(Number.parseInt(t3, 16)) } }, this.addExternalEntities = c2, this.parseXml = f2, this.parseTextData = l2, this.resolveNameSpace = p3, this.buildAttributesMap = d2, this.isItStopNode = v3, this.replaceEntitiesValue = h2, this.readStopNodeData = k2, this.saveTextToParentTag = g2, this.addChild = m2, this.ignoreAttributesFn = s3(this.options.ignoreAttributes);
+ }
+ };
+ }, function(e2, t2, n2) {
+ e2.exports = class {
+ constructor(e3) {
+ this.tagname = e3, this.child = [], this[":@"] = {};
+ }
+ add(e3, t3) {
+ "__proto__" === e3 && (e3 = "#__proto__"), this.child.push({ [e3]: t3 });
+ }
+ addChild(e3) {
+ "__proto__" === e3.tagname && (e3.tagname = "#__proto__"), e3[":@"] && Object.keys(e3[":@"]).length > 0 ? this.child.push({ [e3.tagname]: e3.child, ":@": e3[":@"] }) : this.child.push({ [e3.tagname]: e3.child });
+ }
+ };
+ }, function(e2, t2, n2) {
+ const i3 = n2(1);
+ function o2(e3, t3) {
+ let n3 = "";
+ for (; t3 < e3.length && "'" !== e3[t3] && '"' !== e3[t3]; t3++)
+ n3 += e3[t3];
+ if (n3 = n3.trim(), -1 !== n3.indexOf(" "))
+ throw new Error("External entites are not supported");
+ const i4 = e3[t3++];
+ let o3 = "";
+ for (; t3 < e3.length && e3[t3] !== i4; t3++)
+ o3 += e3[t3];
+ return [n3, o3, t3];
+ }
+ function a2(e3, t3) {
+ return "!" === e3[t3 + 1] && "-" === e3[t3 + 2] && "-" === e3[t3 + 3];
+ }
+ function r3(e3, t3) {
+ return "!" === e3[t3 + 1] && "E" === e3[t3 + 2] && "N" === e3[t3 + 3] && "T" === e3[t3 + 4] && "I" === e3[t3 + 5] && "T" === e3[t3 + 6] && "Y" === e3[t3 + 7];
+ }
+ function s3(e3, t3) {
+ return "!" === e3[t3 + 1] && "E" === e3[t3 + 2] && "L" === e3[t3 + 3] && "E" === e3[t3 + 4] && "M" === e3[t3 + 5] && "E" === e3[t3 + 6] && "N" === e3[t3 + 7] && "T" === e3[t3 + 8];
+ }
+ function c2(e3, t3) {
+ return "!" === e3[t3 + 1] && "A" === e3[t3 + 2] && "T" === e3[t3 + 3] && "T" === e3[t3 + 4] && "L" === e3[t3 + 5] && "I" === e3[t3 + 6] && "S" === e3[t3 + 7] && "T" === e3[t3 + 8];
+ }
+ function l2(e3, t3) {
+ return "!" === e3[t3 + 1] && "N" === e3[t3 + 2] && "O" === e3[t3 + 3] && "T" === e3[t3 + 4] && "A" === e3[t3 + 5] && "T" === e3[t3 + 6] && "I" === e3[t3 + 7] && "O" === e3[t3 + 8] && "N" === e3[t3 + 9];
+ }
+ function p3(e3) {
+ if (i3.isName(e3))
+ return e3;
+ throw new Error(`Invalid entity name ${e3}`);
+ }
+ e2.exports = function(e3, t3) {
+ const n3 = {};
+ if ("O" !== e3[t3 + 3] || "C" !== e3[t3 + 4] || "T" !== e3[t3 + 5] || "Y" !== e3[t3 + 6] || "P" !== e3[t3 + 7] || "E" !== e3[t3 + 8])
+ throw new Error("Invalid Tag instead of DOCTYPE");
+ {
+ t3 += 9;
+ let i4 = 1, u2 = false, d2 = false, f2 = "";
+ for (; t3 < e3.length; t3++)
+ if ("<" !== e3[t3] || d2)
+ if (">" === e3[t3]) {
+ if (d2 ? "-" === e3[t3 - 1] && "-" === e3[t3 - 2] && (d2 = false, i4--) : i4--, 0 === i4)
+ break;
+ } else
+ "[" === e3[t3] ? u2 = true : f2 += e3[t3];
+ else {
+ if (u2 && r3(e3, t3))
+ t3 += 7, [entityName, val, t3] = o2(e3, t3 + 1), -1 === val.indexOf("&") && (n3[p3(entityName)] = { regx: RegExp(`&${entityName};`, "g"), val });
+ else if (u2 && s3(e3, t3))
+ t3 += 8;
+ else if (u2 && c2(e3, t3))
+ t3 += 8;
+ else if (u2 && l2(e3, t3))
+ t3 += 9;
+ else {
+ if (!a2)
+ throw new Error("Invalid DOCTYPE");
+ d2 = true;
+ }
+ i4++, f2 = "";
+ }
+ if (0 !== i4)
+ throw new Error("Unclosed DOCTYPE");
+ }
+ return { entities: n3, i: t3 };
+ };
+ }, function(e2, t2) {
+ const n2 = /^[-+]?0x[a-fA-F0-9]+$/, i3 = /^([\-\+])?(0*)(\.[0-9]+([eE]\-?[0-9]+)?|[0-9]+(\.[0-9]+([eE]\-?[0-9]+)?)?)$/;
+ !Number.parseInt && window.parseInt && (Number.parseInt = window.parseInt), !Number.parseFloat && window.parseFloat && (Number.parseFloat = window.parseFloat);
+ const o2 = { hex: true, leadingZeros: true, decimalPoint: ".", eNotation: true };
+ e2.exports = function(e3, t3 = {}) {
+ if (t3 = Object.assign({}, o2, t3), !e3 || "string" != typeof e3)
+ return e3;
+ let a2 = e3.trim();
+ if (void 0 !== t3.skipLike && t3.skipLike.test(a2))
+ return e3;
+ if (t3.hex && n2.test(a2))
+ return Number.parseInt(a2, 16);
+ {
+ const n3 = i3.exec(a2);
+ if (n3) {
+ const i4 = n3[1], o3 = n3[2];
+ let r3 = function(e4) {
+ if (e4 && -1 !== e4.indexOf("."))
+ return "." === (e4 = e4.replace(/0+$/, "")) ? e4 = "0" : "." === e4[0] ? e4 = "0" + e4 : "." === e4[e4.length - 1] && (e4 = e4.substr(0, e4.length - 1)), e4;
+ return e4;
+ }(n3[3]);
+ const s3 = n3[4] || n3[6];
+ if (!t3.leadingZeros && o3.length > 0 && i4 && "." !== a2[2])
+ return e3;
+ if (!t3.leadingZeros && o3.length > 0 && !i4 && "." !== a2[1])
+ return e3;
+ {
+ const n4 = Number(a2), c2 = "" + n4;
+ return -1 !== c2.search(/[eE]/) || s3 ? t3.eNotation ? n4 : e3 : -1 !== a2.indexOf(".") ? "0" === c2 && "" === r3 || c2 === r3 || i4 && c2 === "-" + r3 ? n4 : e3 : o3 ? r3 === c2 || i4 + r3 === c2 ? n4 : e3 : a2 === c2 || a2 === i4 + c2 ? n4 : e3;
+ }
+ }
+ return e3;
+ }
+ };
+ }, function(e2, t2, n2) {
+ function i3(e3, t3, n3) {
+ let s3;
+ const c2 = {};
+ for (let l2 = 0; l2 < e3.length; l2++) {
+ const p3 = e3[l2], u2 = o2(p3);
+ let d2 = "";
+ if (d2 = void 0 === n3 ? u2 : n3 + "." + u2, u2 === t3.textNodeName)
+ void 0 === s3 ? s3 = p3[u2] : s3 += "" + p3[u2];
+ else {
+ if (void 0 === u2)
+ continue;
+ if (p3[u2]) {
+ let e4 = i3(p3[u2], t3, d2);
+ const n4 = r3(e4, t3);
+ p3[":@"] ? a2(e4, p3[":@"], d2, t3) : 1 !== Object.keys(e4).length || void 0 === e4[t3.textNodeName] || t3.alwaysCreateTextNode ? 0 === Object.keys(e4).length && (t3.alwaysCreateTextNode ? e4[t3.textNodeName] = "" : e4 = "") : e4 = e4[t3.textNodeName], void 0 !== c2[u2] && c2.hasOwnProperty(u2) ? (Array.isArray(c2[u2]) || (c2[u2] = [c2[u2]]), c2[u2].push(e4)) : t3.isArray(u2, d2, n4) ? c2[u2] = [e4] : c2[u2] = e4;
+ }
+ }
+ }
+ return "string" == typeof s3 ? s3.length > 0 && (c2[t3.textNodeName] = s3) : void 0 !== s3 && (c2[t3.textNodeName] = s3), c2;
+ }
+ function o2(e3) {
+ const t3 = Object.keys(e3);
+ for (let e4 = 0; e4 < t3.length; e4++) {
+ const n3 = t3[e4];
+ if (":@" !== n3)
+ return n3;
+ }
+ }
+ function a2(e3, t3, n3, i4) {
+ if (t3) {
+ const o3 = Object.keys(t3), a3 = o3.length;
+ for (let r4 = 0; r4 < a3; r4++) {
+ const a4 = o3[r4];
+ i4.isArray(a4, n3 + "." + a4, true, true) ? e3[a4] = [t3[a4]] : e3[a4] = t3[a4];
+ }
+ }
+ }
+ function r3(e3, t3) {
+ const { textNodeName: n3 } = t3, i4 = Object.keys(e3).length;
+ return 0 === i4 || !(1 !== i4 || !e3[n3] && "boolean" != typeof e3[n3] && 0 !== e3[n3]);
+ }
+ t2.prettify = function(e3, t3) {
+ return i3(e3, t3);
+ };
+ }, function(e2, t2, n2) {
+ const i3 = n2(24), o2 = n2(5), a2 = { attributeNamePrefix: "@_", attributesGroupName: false, textNodeName: "#text", ignoreAttributes: true, cdataPropName: false, format: false, indentBy: " ", suppressEmptyNode: false, suppressUnpairedNode: true, suppressBooleanAttributes: true, tagValueProcessor: function(e3, t3) {
+ return t3;
+ }, attributeValueProcessor: function(e3, t3) {
+ return t3;
+ }, preserveOrder: false, commentPropName: false, unpairedTags: [], entities: [{ regex: new RegExp("&", "g"), val: "&" }, { regex: new RegExp(">", "g"), val: ">" }, { regex: new RegExp("<", "g"), val: "<" }, { regex: new RegExp("'", "g"), val: "'" }, { regex: new RegExp('"', "g"), val: """ }], processEntities: true, stopNodes: [], oneListGroup: false };
+ function r3(e3) {
+ this.options = Object.assign({}, a2, e3), true === this.options.ignoreAttributes || this.options.attributesGroupName ? this.isAttribute = function() {
+ return false;
+ } : (this.ignoreAttributesFn = o2(this.options.ignoreAttributes), this.attrPrefixLen = this.options.attributeNamePrefix.length, this.isAttribute = l2), this.processTextOrObjNode = s3, this.options.format ? (this.indentate = c2, this.tagEndChar = ">\n", this.newLine = "\n") : (this.indentate = function() {
+ return "";
+ }, this.tagEndChar = ">", this.newLine = "");
+ }
+ function s3(e3, t3, n3, i4) {
+ const o3 = this.j2x(e3, n3 + 1, i4.concat(t3));
+ return void 0 !== e3[this.options.textNodeName] && 1 === Object.keys(e3).length ? this.buildTextValNode(e3[this.options.textNodeName], t3, o3.attrStr, n3) : this.buildObjectNode(o3.val, t3, o3.attrStr, n3);
+ }
+ function c2(e3) {
+ return this.options.indentBy.repeat(e3);
+ }
+ function l2(e3) {
+ return !(!e3.startsWith(this.options.attributeNamePrefix) || e3 === this.options.textNodeName) && e3.substr(this.attrPrefixLen);
+ }
+ r3.prototype.build = function(e3) {
+ return this.options.preserveOrder ? i3(e3, this.options) : (Array.isArray(e3) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1 && (e3 = { [this.options.arrayNodeName]: e3 }), this.j2x(e3, 0, []).val);
+ }, r3.prototype.j2x = function(e3, t3, n3) {
+ let i4 = "", o3 = "";
+ const a3 = n3.join(".");
+ for (let r4 in e3)
+ if (Object.prototype.hasOwnProperty.call(e3, r4))
+ if (void 0 === e3[r4])
+ this.isAttribute(r4) && (o3 += "");
+ else if (null === e3[r4])
+ this.isAttribute(r4) ? o3 += "" : "?" === r4[0] ? o3 += this.indentate(t3) + "<" + r4 + "?" + this.tagEndChar : o3 += this.indentate(t3) + "<" + r4 + "/" + this.tagEndChar;
+ else if (e3[r4] instanceof Date)
+ o3 += this.buildTextValNode(e3[r4], r4, "", t3);
+ else if ("object" != typeof e3[r4]) {
+ const n4 = this.isAttribute(r4);
+ if (n4 && !this.ignoreAttributesFn(n4, a3))
+ i4 += this.buildAttrPairStr(n4, "" + e3[r4]);
+ else if (!n4)
+ if (r4 === this.options.textNodeName) {
+ let t4 = this.options.tagValueProcessor(r4, "" + e3[r4]);
+ o3 += this.replaceEntitiesValue(t4);
+ } else
+ o3 += this.buildTextValNode(e3[r4], r4, "", t3);
+ } else if (Array.isArray(e3[r4])) {
+ const i5 = e3[r4].length;
+ let a4 = "", s4 = "";
+ for (let c3 = 0; c3 < i5; c3++) {
+ const i6 = e3[r4][c3];
+ if (void 0 === i6)
+ ;
+ else if (null === i6)
+ "?" === r4[0] ? o3 += this.indentate(t3) + "<" + r4 + "?" + this.tagEndChar : o3 += this.indentate(t3) + "<" + r4 + "/" + this.tagEndChar;
+ else if ("object" == typeof i6)
+ if (this.options.oneListGroup) {
+ const e4 = this.j2x(i6, t3 + 1, n3.concat(r4));
+ a4 += e4.val, this.options.attributesGroupName && i6.hasOwnProperty(this.options.attributesGroupName) && (s4 += e4.attrStr);
+ } else
+ a4 += this.processTextOrObjNode(i6, r4, t3, n3);
+ else if (this.options.oneListGroup) {
+ let e4 = this.options.tagValueProcessor(r4, i6);
+ e4 = this.replaceEntitiesValue(e4), a4 += e4;
+ } else
+ a4 += this.buildTextValNode(i6, r4, "", t3);
+ }
+ this.options.oneListGroup && (a4 = this.buildObjectNode(a4, r4, s4, t3)), o3 += a4;
+ } else if (this.options.attributesGroupName && r4 === this.options.attributesGroupName) {
+ const t4 = Object.keys(e3[r4]), n4 = t4.length;
+ for (let o4 = 0; o4 < n4; o4++)
+ i4 += this.buildAttrPairStr(t4[o4], "" + e3[r4][t4[o4]]);
+ } else
+ o3 += this.processTextOrObjNode(e3[r4], r4, t3, n3);
+ return { attrStr: i4, val: o3 };
+ }, r3.prototype.buildAttrPairStr = function(e3, t3) {
+ return t3 = this.options.attributeValueProcessor(e3, "" + t3), t3 = this.replaceEntitiesValue(t3), this.options.suppressBooleanAttributes && "true" === t3 ? " " + e3 : " " + e3 + '="' + t3 + '"';
+ }, r3.prototype.buildObjectNode = function(e3, t3, n3, i4) {
+ if ("" === e3)
+ return "?" === t3[0] ? this.indentate(i4) + "<" + t3 + n3 + "?" + this.tagEndChar : this.indentate(i4) + "<" + t3 + n3 + this.closeTag(t3) + this.tagEndChar;
+ {
+ let o3 = "" + t3 + this.tagEndChar, a3 = "";
+ return "?" === t3[0] && (a3 = "?", o3 = ""), !n3 && "" !== n3 || -1 !== e3.indexOf("<") ? false !== this.options.commentPropName && t3 === this.options.commentPropName && 0 === a3.length ? this.indentate(i4) + `` + this.newLine : this.indentate(i4) + "<" + t3 + n3 + a3 + this.tagEndChar + e3 + this.indentate(i4) + o3 : this.indentate(i4) + "<" + t3 + n3 + a3 + ">" + e3 + o3;
+ }
+ }, r3.prototype.closeTag = function(e3) {
+ let t3 = "";
+ return -1 !== this.options.unpairedTags.indexOf(e3) ? this.options.suppressUnpairedNode || (t3 = "/") : t3 = this.options.suppressEmptyNode ? "/" : `>${e3}`, t3;
+ }, r3.prototype.buildTextValNode = function(e3, t3, n3, i4) {
+ if (false !== this.options.cdataPropName && t3 === this.options.cdataPropName)
+ return this.indentate(i4) + `` + this.newLine;
+ if (false !== this.options.commentPropName && t3 === this.options.commentPropName)
+ return this.indentate(i4) + `` + this.newLine;
+ if ("?" === t3[0])
+ return this.indentate(i4) + "<" + t3 + n3 + "?" + this.tagEndChar;
+ {
+ let o3 = this.options.tagValueProcessor(t3, e3);
+ return o3 = this.replaceEntitiesValue(o3), "" === o3 ? this.indentate(i4) + "<" + t3 + n3 + this.closeTag(t3) + this.tagEndChar : this.indentate(i4) + "<" + t3 + n3 + ">" + o3 + "" + t3 + this.tagEndChar;
+ }
+ }, r3.prototype.replaceEntitiesValue = function(e3) {
+ if (e3 && e3.length > 0 && this.options.processEntities)
+ for (let t3 = 0; t3 < this.options.entities.length; t3++) {
+ const n3 = this.options.entities[t3];
+ e3 = e3.replace(n3.regex, n3.val);
+ }
+ return e3;
+ }, e2.exports = r3;
+ }, function(e2, t2) {
+ function n2(e3, t3, s3, c2) {
+ let l2 = "", p3 = false;
+ for (let u2 = 0; u2 < e3.length; u2++) {
+ const d2 = e3[u2], f2 = i3(d2);
+ if (void 0 === f2)
+ continue;
+ let m2 = "";
+ if (m2 = 0 === s3.length ? f2 : `${s3}.${f2}`, f2 === t3.textNodeName) {
+ let e4 = d2[f2];
+ a2(m2, t3) || (e4 = t3.tagValueProcessor(f2, e4), e4 = r3(e4, t3)), p3 && (l2 += c2), l2 += e4, p3 = false;
+ continue;
+ }
+ if (f2 === t3.cdataPropName) {
+ p3 && (l2 += c2), l2 += ``, p3 = false;
+ continue;
+ }
+ if (f2 === t3.commentPropName) {
+ l2 += c2 + ``, p3 = true;
+ continue;
+ }
+ if ("?" === f2[0]) {
+ const e4 = o2(d2[":@"], t3), n3 = "?xml" === f2 ? "" : c2;
+ let i4 = d2[f2][0][t3.textNodeName];
+ i4 = 0 !== i4.length ? " " + i4 : "", l2 += n3 + `<${f2}${i4}${e4}?>`, p3 = true;
+ continue;
+ }
+ let h2 = c2;
+ "" !== h2 && (h2 += t3.indentBy);
+ const g2 = c2 + `<${f2}${o2(d2[":@"], t3)}`, v3 = n2(d2[f2], t3, m2, h2);
+ -1 !== t3.unpairedTags.indexOf(f2) ? t3.suppressUnpairedNode ? l2 += g2 + ">" : l2 += g2 + "/>" : v3 && 0 !== v3.length || !t3.suppressEmptyNode ? v3 && v3.endsWith(">") ? l2 += g2 + `>${v3}${c2}${f2}>` : (l2 += g2 + ">", v3 && "" !== c2 && (v3.includes("/>") || v3.includes("")) ? l2 += c2 + t3.indentBy + v3 + c2 : l2 += v3, l2 += `${f2}>`) : l2 += g2 + "/>", p3 = true;
+ }
+ return l2;
+ }
+ function i3(e3) {
+ const t3 = Object.keys(e3);
+ for (let n3 = 0; n3 < t3.length; n3++) {
+ const i4 = t3[n3];
+ if (e3.hasOwnProperty(i4) && ":@" !== i4)
+ return i4;
+ }
+ }
+ function o2(e3, t3) {
+ let n3 = "";
+ if (e3 && !t3.ignoreAttributes)
+ for (let i4 in e3) {
+ if (!e3.hasOwnProperty(i4))
+ continue;
+ let o3 = t3.attributeValueProcessor(i4, e3[i4]);
+ o3 = r3(o3, t3), true === o3 && t3.suppressBooleanAttributes ? n3 += ` ${i4.substr(t3.attributeNamePrefix.length)}` : n3 += ` ${i4.substr(t3.attributeNamePrefix.length)}="${o3}"`;
+ }
+ return n3;
+ }
+ function a2(e3, t3) {
+ let n3 = (e3 = e3.substr(0, e3.length - t3.textNodeName.length - 1)).substr(e3.lastIndexOf(".") + 1);
+ for (let i4 in t3.stopNodes)
+ if (t3.stopNodes[i4] === e3 || t3.stopNodes[i4] === "*." + n3)
+ return true;
+ return false;
+ }
+ function r3(e3, t3) {
+ if (e3 && e3.length > 0 && t3.processEntities)
+ for (let n3 = 0; n3 < t3.entities.length; n3++) {
+ const i4 = t3.entities[n3];
+ e3 = e3.replace(i4.regex, i4.val);
+ }
+ return e3;
+ }
+ e2.exports = function(e3, t3) {
+ let i4 = "";
+ return t3.format && t3.indentBy.length > 0 && (i4 = "\n"), n2(e3, t3, "", i4);
+ };
+ }, function(e2, t2, n2) {
+ var i3 = n2(7), o2 = n2(0), a2 = {};
+ e2.exports.transferToTaskMethod = function(e3, t3) {
+ a2[t3] = e3[t3], e3[t3] = function(e4, n3) {
+ e4.SkipTask ? a2[t3].call(this, e4, n3) : this._addTask(t3, e4, n3);
+ };
+ }, e2.exports.init = function(e3) {
+ var t3, n3, r3 = [], s3 = {}, c2 = 0, l2 = 0, p3 = function(e4) {
+ var t4 = { id: e4.id, Bucket: e4.Bucket, Region: e4.Region, Key: e4.Key, FilePath: e4.FilePath, state: e4.state, loaded: e4.loaded, size: e4.size, speed: e4.speed, percent: e4.percent, hashPercent: e4.hashPercent, error: e4.error };
+ return e4.FilePath && (t4.FilePath = e4.FilePath), t4;
+ }, u2 = (n3 = function() {
+ t3 = 0, e3.emit("task-list-update", { list: o2.map(r3, p3) }), e3.emit("list-update", { list: o2.map(r3, p3) });
+ }, function() {
+ t3 || (t3 = setTimeout(n3));
+ }), d2 = function() {
+ if (!(r3.length <= e3.options.UploadQueueSize)) {
+ for (var t4 = 0; t4 < l2 && t4 < r3.length && r3.length > e3.options.UploadQueueSize; ) {
+ var n4 = "waiting" === r3[t4].state || "checking" === r3[t4].state || "uploading" === r3[t4].state;
+ r3[t4] && n4 ? t4++ : (s3[r3[t4].id] && delete s3[r3[t4].id], r3.splice(t4, 1), l2--);
+ }
+ u2();
+ }
+ }, f2 = function t4() {
+ if (!(c2 >= e3.options.FileParallelLimit)) {
+ for (; r3[l2] && "waiting" !== r3[l2].state; )
+ l2++;
+ if (!(l2 >= r3.length)) {
+ var n4 = r3[l2];
+ l2++, c2++, n4.state = "checking", n4.params.onTaskStart && n4.params.onTaskStart(p3(n4)), !n4.params.UploadData && (n4.params.UploadData = {});
+ var i4 = o2.formatParams(n4.api, n4.params);
+ a2[n4.api].call(e3, i4, function(i5, o3) {
+ e3._isRunningTask(n4.id) && ("checking" !== n4.state && "uploading" !== n4.state || (n4.state = i5 ? "error" : "success", i5 && (n4.error = i5), c2--, u2(), t4(), n4.callback && n4.callback(i5, o3), "success" === n4.state && (n4.params && (delete n4.params.UploadData, delete n4.params.Body, delete n4.params), delete n4.callback)), d2());
+ }), u2(), setTimeout(t4);
+ }
+ }
+ }, m2 = function(t4, n4) {
+ var o3 = s3[t4];
+ if (o3) {
+ var a3 = o3 && "waiting" === o3.state, r4 = o3 && ("checking" === o3.state || "uploading" === o3.state);
+ if ("canceled" === n4 && "canceled" !== o3.state || "paused" === n4 && a3 || "paused" === n4 && r4) {
+ if ("paused" === n4 && o3.params.Body && "function" == typeof o3.params.Body.pipe)
+ return;
+ o3.state = n4, e3.emit("inner-kill-task", { TaskId: t4, toState: n4 });
+ try {
+ var l3 = o3 && o3.params && o3.params.UploadData.UploadId;
+ } catch (e4) {
+ }
+ "canceled" === n4 && l3 && i3.removeUsing(l3), u2(), r4 && (c2--, f2()), "canceled" === n4 && (o3.params && (delete o3.params.UploadData, delete o3.params.Body, delete o3.params), delete o3.callback);
+ }
+ d2();
+ }
+ };
+ e3._addTasks = function(t4) {
+ o2.each(t4, function(t5) {
+ e3._addTask(t5.api, t5.params, t5.callback, true);
+ }), u2();
+ }, e3._addTask = function(t4, n4, i4, a3) {
+ var c3 = "postObject" === e3.options.SimpleUploadMethod ? "postObject" : "putObject";
+ "sliceUploadFile" !== t4 || o2.canFileSlice() || (t4 = c3), n4 = o2.formatParams(t4, n4);
+ var l3 = o2.uuid();
+ n4.TaskId = l3, n4.onTaskReady && n4.onTaskReady(l3);
+ var p4 = { params: n4, callback: i4, api: t4, index: r3.length, id: l3, Bucket: n4.Bucket, Region: n4.Region, Key: n4.Key, FilePath: n4.FilePath || "", state: "waiting", loaded: 0, size: 0, speed: 0, percent: 0, hashPercent: 0, error: null }, m3 = n4.onHashProgress;
+ n4.onHashProgress = function(t5) {
+ e3._isRunningTask(p4.id) && (p4.hashPercent = t5.percent, m3 && m3(t5), u2());
+ };
+ var h2 = n4.onProgress;
+ return n4.onProgress = function(t5) {
+ e3._isRunningTask(p4.id) && ("checking" === p4.state && (p4.state = "uploading"), p4.loaded = t5.loaded, p4.size = t5.total, p4.speed = t5.speed, p4.percent = t5.percent, h2 && h2(t5), u2());
+ }, o2.getFileSize(t4, n4, function(e4, t5) {
+ e4 ? i4(e4) : (s3[l3] = p4, r3.push(p4), p4.size = t5, !a3 && u2(), f2(), d2());
+ }), l3;
+ }, e3._isRunningTask = function(e4) {
+ var t4 = s3[e4];
+ return !(!t4 || "checking" !== t4.state && "uploading" !== t4.state);
+ }, e3.getTaskList = function() {
+ return o2.map(r3, p3);
+ }, e3.cancelTask = function(e4) {
+ m2(e4, "canceled");
+ }, e3.pauseTask = function(e4) {
+ m2(e4, "paused");
+ }, e3.restartTask = function(e4) {
+ var t4 = s3[e4];
+ !t4 || "paused" !== t4.state && "error" !== t4.state || (t4.state = "waiting", u2(), l2 = Math.min(l2, t4.index), f2());
+ }, e3.isUploadRunning = function() {
+ return c2 || l2 < r3.length;
+ };
+ };
+ }, function(e2, t2, n2) {
+ var i3 = n2(27), o2 = n2(0), a2 = n2(28);
+ function r3(e3) {
+ var t3 = { GrantFullControl: [], GrantWrite: [], GrantRead: [], GrantReadAcp: [], GrantWriteAcp: [], ACL: "" }, n3 = { FULL_CONTROL: "GrantFullControl", WRITE: "GrantWrite", READ: "GrantRead", READ_ACP: "GrantReadAcp", WRITE_ACP: "GrantWriteAcp" }, i4 = (e3 && e3.AccessControlList || {}).Grant;
+ i4 && (i4 = o2.isArray(i4) ? i4 : [i4]);
+ var a3 = { READ: 0, WRITE: 0, FULL_CONTROL: 0 };
+ return i4 && i4.length && o2.each(i4, function(i5) {
+ "qcs::cam::anyone:anyone" === i5.Grantee.ID || "http://cam.qcloud.com/groups/global/AllUsers" === i5.Grantee.URI ? a3[i5.Permission] = 1 : i5.Grantee.ID !== e3.Owner.ID && t3[n3[i5.Permission]].push('id="' + i5.Grantee.ID + '"');
+ }), a3.FULL_CONTROL || a3.WRITE && a3.READ ? t3.ACL = "public-read-write" : a3.READ ? t3.ACL = "public-read" : t3.ACL = "private", o2.each(n3, function(e4) {
+ t3[e4] = s3(t3[e4].join(","));
+ }), t3;
+ }
+ function s3(e3) {
+ var t3, n3, i4 = e3.split(","), o3 = {};
+ for (t3 = 0; t3 < i4.length; )
+ o3[n3 = i4[t3].trim()] ? i4.splice(t3, 1) : (o3[n3] = true, i4[t3] = n3, t3++);
+ return i4.join(",");
+ }
+ function c2(e3) {
+ var t3 = e3.bucket, n3 = t3.substr(0, t3.lastIndexOf("-")), i4 = t3.substr(t3.lastIndexOf("-") + 1), a3 = e3.domain, r4 = e3.region, s4 = e3.object;
+ a3 || (a3 = ["cn-south", "cn-south-2", "cn-north", "cn-east", "cn-southwest", "sg"].indexOf(r4) > -1 ? "{Region}.myqcloud.com" : "cos.{Region}.myqcloud.com", e3.ForcePathStyle || (a3 = "{Bucket}." + a3)), a3 = (a3 = a3.replace(/\{\{AppId\}\}/gi, i4).replace(/\{\{Bucket\}\}/gi, n3).replace(/\{\{Region\}\}/gi, r4).replace(/\{\{.*?\}\}/gi, "")).replace(/\{AppId\}/gi, i4).replace(/\{BucketName\}/gi, n3).replace(/\{Bucket\}/gi, t3).replace(/\{Region\}/gi, r4).replace(/\{.*?\}/gi, ""), /^[a-zA-Z]+:\/\//.test(a3) || (a3 = "https://" + a3), "/" === a3.slice(-1) && (a3 = a3.slice(0, -1));
+ var c3 = a3;
+ return e3.ForcePathStyle && (c3 += "/" + t3), c3 += "/", s4 && (c3 += o2.camSafeUrlEncode(s4).replace(/%2F/g, "/")), e3.isLocation && (c3 = c3.replace(/^https?:\/\//, "")), c3;
+ }
+ var l2 = function(e3) {
+ if (!e3.Bucket || !e3.Region)
+ return "";
+ var t3 = void 0 === e3.UseAccelerate ? this.options.UseAccelerate : e3.UseAccelerate;
+ return (e3.Url || c2({ ForcePathStyle: this.options.ForcePathStyle, protocol: this.options.Protocol, domain: this.options.Domain, bucket: e3.Bucket, region: t3 ? "accelerate" : e3.Region })).replace(/^https?:\/\/([^/]+)(\/.*)?$/, "$1");
+ };
+ function p3(e3, t3) {
+ var n3 = o2.clone(e3.Headers), i4 = "";
+ o2.each(n3, function(e4, t4) {
+ ("" === e4 || ["content-type", "cache-control"].indexOf(t4.toLowerCase()) > -1) && delete n3[t4], "host" === t4.toLowerCase() && (i4 = e4);
+ });
+ var a3 = false !== e3.ForceSignHost;
+ !i4 && e3.SignHost && a3 && (n3.Host = e3.SignHost);
+ var r4 = false, s4 = function(e4, n4) {
+ r4 || (r4 = true, n4 && n4.XCosSecurityToken && !n4.SecurityToken && ((n4 = o2.clone(n4)).SecurityToken = n4.XCosSecurityToken, delete n4.XCosSecurityToken), t3 && t3(e4, n4));
+ }, c3 = this, l3 = e3.Bucket || "", p4 = e3.Region || "", u3 = "name/cos:PostObject" !== e3.Action && e3.Key ? e3.Key : "";
+ c3.options.ForcePathStyle && l3 && (u3 = l3 + "/" + u3);
+ var d3 = "/" + u3, f3 = {}, m3 = e3.Scope;
+ if (!m3) {
+ var h3 = e3.Action || "", g2 = e3.ResourceKey || e3.Key || "";
+ m3 = e3.Scope || [{ action: h3, bucket: l3, region: p4, prefix: g2 }];
+ }
+ var v3 = o2.md5(JSON.stringify(m3));
+ c3._StsCache = c3._StsCache || [], function() {
+ var e4, t4;
+ for (e4 = c3._StsCache.length - 1; e4 >= 0; e4--) {
+ t4 = c3._StsCache[e4];
+ var n4 = Math.round(o2.getSkewTime(c3.options.SystemClockOffset) / 1e3) + 30;
+ if (t4.StartTime && n4 < t4.StartTime || n4 >= t4.ExpiredTime)
+ c3._StsCache.splice(e4, 1);
+ else if (!t4.ScopeLimit || t4.ScopeLimit && t4.ScopeKey === v3) {
+ f3 = t4;
+ break;
+ }
+ }
+ }();
+ var y2 = function() {
+ var t4 = "";
+ f3.StartTime && e3.Expires ? t4 = f3.StartTime + ";" + (f3.StartTime + 1 * e3.Expires) : f3.StartTime && f3.ExpiredTime && (t4 = f3.StartTime + ";" + f3.ExpiredTime);
+ var i5 = { Authorization: o2.getAuth({ SecretId: f3.TmpSecretId, SecretKey: f3.TmpSecretKey, Method: e3.Method, Pathname: d3, Query: e3.Query, Headers: n3, Expires: e3.Expires, SystemClockOffset: c3.options.SystemClockOffset, KeyTime: t4, ForceSignHost: a3 }), SecurityToken: f3.SecurityToken || f3.XCosSecurityToken || "", Token: f3.Token || "", ClientIP: f3.ClientIP || "", ClientUA: f3.ClientUA || "", SignFrom: "client" };
+ s4(null, i5);
+ }, x2 = function(e4) {
+ if (e4.Authorization) {
+ var t4 = false, n4 = e4.Authorization;
+ if (n4)
+ if (n4.indexOf(" ") > -1)
+ t4 = false;
+ else if (n4.indexOf("q-sign-algorithm=") > -1 && n4.indexOf("q-ak=") > -1 && n4.indexOf("q-sign-time=") > -1 && n4.indexOf("q-key-time=") > -1 && n4.indexOf("q-url-param-list=") > -1)
+ t4 = true;
+ else
+ try {
+ (n4 = atob(n4)).indexOf("a=") > -1 && n4.indexOf("k=") > -1 && n4.indexOf("t=") > -1 && n4.indexOf("r=") > -1 && n4.indexOf("b=") > -1 && (t4 = true);
+ } catch (e5) {
+ }
+ if (!t4)
+ return o2.error(new Error("getAuthorization callback params format error"));
+ } else {
+ if (!e4.TmpSecretId)
+ return o2.error(new Error('getAuthorization callback params missing "TmpSecretId"'));
+ if (!e4.TmpSecretKey)
+ return o2.error(new Error('getAuthorization callback params missing "TmpSecretKey"'));
+ if (!e4.SecurityToken && !e4.XCosSecurityToken)
+ return o2.error(new Error('getAuthorization callback params missing "SecurityToken"'));
+ if (!e4.ExpiredTime)
+ return o2.error(new Error('getAuthorization callback params missing "ExpiredTime"'));
+ if (e4.ExpiredTime && 10 !== e4.ExpiredTime.toString().length)
+ return o2.error(new Error('getAuthorization callback params "ExpiredTime" should be 10 digits'));
+ if (e4.StartTime && 10 !== e4.StartTime.toString().length)
+ return o2.error(new Error('getAuthorization callback params "StartTime" should be 10 StartTime'));
+ }
+ return false;
+ };
+ if (f3.ExpiredTime && f3.ExpiredTime - o2.getSkewTime(c3.options.SystemClockOffset) / 1e3 > 60)
+ y2();
+ else if (c3.options.getAuthorization)
+ c3.options.getAuthorization.call(c3, { Bucket: l3, Region: p4, Method: e3.Method, Key: u3, Pathname: d3, Query: e3.Query, Headers: n3, Scope: m3, SystemClockOffset: c3.options.SystemClockOffset, ForceSignHost: a3 }, function(e4) {
+ "string" == typeof e4 && (e4 = { Authorization: e4 });
+ var t4 = x2(e4);
+ if (t4)
+ return s4(t4);
+ e4.Authorization ? s4(null, e4) : ((f3 = e4 || {}).Scope = m3, f3.ScopeKey = v3, c3._StsCache.push(f3), y2());
+ });
+ else {
+ if (!c3.options.getSTS)
+ return function() {
+ var t4 = "";
+ if (c3.options.StartTime && e3.Expires) {
+ if (10 !== c3.options.StartTime.toString().length)
+ return s4(o2.error(new Error('params "StartTime" should be 10 digits')));
+ t4 = c3.options.StartTime + ";" + (c3.options.StartTime + 1 * e3.Expires);
+ } else if (c3.options.StartTime && c3.options.ExpiredTime) {
+ if (10 !== c3.options.StartTime.toString().length)
+ return s4(o2.error(new Error('params "StartTime" should be 10 digits')));
+ if (10 !== c3.options.ExpiredTime.toString().length)
+ return s4(o2.error(new Error('params "ExpiredTime" should be 10 digits')));
+ t4 = c3.options.StartTime + ";" + 1 * c3.options.ExpiredTime;
+ }
+ var i5 = { Authorization: o2.getAuth({ SecretId: e3.SecretId || c3.options.SecretId, SecretKey: e3.SecretKey || c3.options.SecretKey, Method: e3.Method, Pathname: d3, Query: e3.Query, Headers: n3, Expires: e3.Expires, KeyTime: t4, SystemClockOffset: c3.options.SystemClockOffset, ForceSignHost: a3 }), SecurityToken: c3.options.SecurityToken || c3.options.XCosSecurityToken, SignFrom: "client" };
+ return s4(null, i5), i5;
+ }();
+ c3.options.getSTS.call(c3, { Bucket: l3, Region: p4 }, function(e4) {
+ (f3 = e4 || {}).Scope = m3, f3.ScopeKey = v3, f3.TmpSecretId || (f3.TmpSecretId = f3.SecretId), f3.TmpSecretKey || (f3.TmpSecretKey = f3.SecretKey);
+ var t4 = x2(f3);
+ if (t4)
+ return s4(t4);
+ c3._StsCache.push(f3), y2();
+ });
+ }
+ return "";
+ }
+ function u2(e3) {
+ var t3 = this, n3 = false, i4 = false, a3 = false, r4 = e3.headers && (e3.headers.date || e3.headers.Date) || e3.error && e3.error.ServerTime;
+ try {
+ var s4 = e3.error.Code, c3 = e3.error.Message;
+ ("RequestTimeTooSkewed" === s4 || "AccessDenied" === s4 && "Request has expired" === c3) && (a3 = true);
+ } catch (e4) {
+ }
+ if (e3) {
+ if (a3 && r4) {
+ var l3 = Date.parse(r4);
+ this.options.CorrectClockSkew && Math.abs(o2.getSkewTime(this.options.SystemClockOffset) - l3) >= 3e4 && (this.options.SystemClockOffset = l3 - Date.now(), n3 = true);
+ } else {
+ if (5 === Math.floor(e3.statusCode / 100))
+ return { canRetry: true, networkError: false };
+ if ("timeout" === e3.message)
+ return { canRetry: true, networkError: t3.options.AutoSwitchHost };
+ }
+ if (e3.statusCode) {
+ var p4 = Math.floor(e3.statusCode / 100), u3 = (null == e3 ? void 0 : e3.headers) && (null == e3 ? void 0 : e3.headers["x-cos-request-id"]);
+ [3, 4, 5].includes(p4) && !u3 && (n3 = t3.options.AutoSwitchHost, i4 = true);
+ } else
+ n3 = true, i4 = t3.options.AutoSwitchHost;
+ }
+ return { canRetry: n3, networkError: i4 };
+ }
+ function d2(e3) {
+ var t3 = e3.requestUrl, n3 = e3.clientCalcSign, i4 = e3.networkError;
+ if (!this.options.AutoSwitchHost)
+ return false;
+ if (!t3)
+ return false;
+ if (!n3)
+ return false;
+ if (!i4)
+ return false;
+ return /^https?:\/\/[^\/]*\.cos\.[^\/]*\.myqcloud\.com(\/.*)?$/.test(t3) && !/^https?:\/\/[^\/]*\.cos\.accelerate\.myqcloud\.com(\/.*)?$/.test(t3);
+ }
+ function f2(e3, t3) {
+ var n3 = this;
+ !e3.headers && (e3.headers = {}), !e3.qs && (e3.qs = {}), e3.VersionId && (e3.qs.versionId = e3.VersionId), e3.qs = o2.clearKey(e3.qs), e3.headers && (e3.headers = o2.clearKey(e3.headers)), e3.qs && (e3.qs = o2.clearKey(e3.qs));
+ var i4 = o2.clone(e3.qs);
+ e3.action && (i4[e3.action] = "");
+ var a3 = e3.url || e3.Url, r4 = e3.SignHost || l2.call(this, { Bucket: e3.Bucket, Region: e3.Region, Url: a3 }), s4 = e3.tracker;
+ !function o3(a4) {
+ var c3 = n3.options.SystemClockOffset;
+ e3.SwitchHost && (r4 = r4.replace(/myqcloud.com/, "tencentcos.cn")), s4 && s4.setParams({ signStartTime: (/* @__PURE__ */ new Date()).getTime(), httpRetryTimes: a4 - 1 }), p3.call(n3, { Bucket: e3.Bucket || "", Region: e3.Region || "", Method: e3.method, Key: e3.Key, Query: i4, Headers: e3.headers, SignHost: r4, Action: e3.Action, ResourceKey: e3.ResourceKey, Scope: e3.Scope, ForceSignHost: n3.options.ForceSignHost }, function(i5, r5) {
+ i5 ? t3(i5) : (s4 && s4.setParams({ signEndTime: (/* @__PURE__ */ new Date()).getTime(), httpStartTime: (/* @__PURE__ */ new Date()).getTime() }), e3.AuthData = r5, m2.call(n3, e3, function(i6, l3) {
+ var p4 = false, f3 = false;
+ if (i6) {
+ var m3 = u2.call(n3, i6);
+ p4 = m3.canRetry || c3 !== n3.options.SystemClockOffset, f3 = m3.networkError;
+ }
+ if (s4 && s4.setParams({ httpEndTime: (/* @__PURE__ */ new Date()).getTime() }), i6 && a4 < 4 && p4) {
+ e3.headers && (delete e3.headers.Authorization, delete e3.headers.token, delete e3.headers.clientIP, delete e3.headers.clientUA, e3.headers["x-cos-security-token"] && delete e3.headers["x-cos-security-token"], e3.headers["x-ci-security-token"] && delete e3.headers["x-ci-security-token"]);
+ var h3 = d2.call(n3, { requestUrl: (null == i6 ? void 0 : i6.url) || "", clientCalcSign: "client" === (null == r5 ? void 0 : r5.SignFrom), networkError: f3 });
+ e3.SwitchHost = h3, e3.headers["x-cos-sdk-retry"] = "true", o3(a4 + 1);
+ } else
+ t3(i6, l3);
+ }));
+ });
+ }(1);
+ }
+ function m2(e3, t3) {
+ var n3 = this, a3 = e3.TaskId;
+ if (!a3 || n3._isRunningTask(a3)) {
+ var r4 = e3.Bucket, s4 = e3.Region, l3 = e3.Key, p4 = e3.method || "GET", u3 = e3.url || e3.Url, d3 = e3.body, f3 = e3.json, m3 = e3.rawBody, h3 = e3.dataType, g2 = n3.options.HttpDNSServiceId;
+ n3.options.UseAccelerate && (s4 = "accelerate"), u3 = u3 || c2({ ForcePathStyle: n3.options.ForcePathStyle, protocol: n3.options.Protocol, domain: n3.options.Domain, bucket: r4, region: s4, object: l3 }), e3.SwitchHost && (u3 = u3.replace(/myqcloud.com/, "tencentcos.cn"));
+ var v3 = l3 ? u3 : "";
+ e3.action && (u3 = u3 + "?" + e3.action), e3.qsStr && (u3 = u3.indexOf("?") > -1 ? u3 + "&" + e3.qsStr : u3 + "?" + e3.qsStr);
+ var y2 = { method: p4, url: u3, headers: e3.headers, qs: e3.qs, filePath: e3.filePath, body: d3, json: f3, httpDNSServiceId: g2, dataType: h3 }, x2 = "x-cos-security-token";
+ o2.isCIHost(u3) && (x2 = "x-ci-security-token"), y2.headers.Authorization = e3.AuthData.Authorization, e3.AuthData.Token && (y2.headers.token = e3.AuthData.Token), e3.AuthData.ClientIP && (y2.headers.clientIP = e3.AuthData.ClientIP), e3.AuthData.ClientUA && (y2.headers.clientUA = e3.AuthData.ClientUA), e3.AuthData.SecurityToken && (y2.headers[x2] = e3.AuthData.SecurityToken), y2.headers && (y2.headers = o2.clearKey(y2.headers)), y2 = o2.clearKey(y2), e3.onProgress && "function" == typeof e3.onProgress && (y2.onProgress = function(t4) {
+ if (!a3 || n3._isRunningTask(a3)) {
+ var i4 = t4 ? t4.loaded : 0;
+ e3.onProgress({ loaded: i4, total: t4.total });
+ }
+ }), this.options.Timeout && (y2.timeout = this.options.Timeout), n3.options.ForcePathStyle && (y2.pathStyle = n3.options.ForcePathStyle), n3.emit("before-send", y2);
+ var k2, b2 = y2.url.includes("accelerate."), C2 = y2.qs ? Object.keys(y2.qs).map(function(e4) {
+ return "".concat(e4, "=").concat(y2.qs[e4]);
+ }).join("&") : "", S2 = C2 ? y2.url + "?" + C2 : y2.url;
+ if (e3.tracker)
+ e3.tracker.setParams({ url: S2, httpMethod: y2.method, accelerate: b2, httpSize: (null === (k2 = y2.body) || void 0 === k2 ? void 0 : k2.size) || 0 }), e3.tracker.parent && !e3.tracker.parent.params.url && e3.tracker.parent.setParams({ url: v3, accelerate: b2 });
+ var w2 = i3(y2, function(e4, i4, r5) {
+ if ("abort" !== e4) {
+ var s5, c3 = function(e5, r6) {
+ if (a3 && n3.off("inner-kill-task", T2), !s5) {
+ s5 = true;
+ var c4 = {};
+ i4 && i4.statusCode && (c4.statusCode = i4.statusCode), i4 && i4.headers && (c4.headers = i4.headers), e5 ? (y2.url && (c4.url = y2.url), y2.method && (c4.method = y2.method), e5 = o2.extend(e5 || {}, c4), t3(e5, null)) : (r6 = o2.extend(r6 || {}, c4), t3(null, r6)), w2 = null;
+ }
+ };
+ if (e4)
+ c3({ error: e4 });
+ else {
+ var l4 = i4.statusCode, p5 = 2 === Math.floor(l4 / 100);
+ if (m3) {
+ if (p5)
+ return c3(null, { body: r5 });
+ if (r5 instanceof ArrayBuffer) {
+ var u4 = o2.arrayBufferToString(r5), d4 = o2.parseResBody(u4);
+ return c3({ error: d4.Error || d4 });
+ }
+ }
+ var f4 = o2.parseResBody(r5);
+ p5 ? f4.Error ? c3({ error: f4.Error }) : c3(null, f4) : c3({ error: f4.Error || f4 });
+ }
+ }
+ }), T2 = function e4(t4) {
+ t4.TaskId === a3 && (w2 && w2.abort && w2.abort(), n3.off("inner-kill-task", e4));
+ };
+ a3 && n3.on("inner-kill-task", T2);
+ }
+ }
+ var h2 = { getService: function(e3, t3) {
+ "function" == typeof e3 && (t3 = e3, e3 = {});
+ var n3 = "https:", i4 = this.options.ServiceDomain, a3 = e3.Region;
+ i4 ? (i4 = i4.replace(/\{\{Region\}\}/gi, a3 || "").replace(/\{\{.*?\}\}/gi, ""), /^[a-zA-Z]+:\/\//.test(i4) || (i4 = n3 + "//" + i4), "/" === i4.slice(-1) && (i4 = i4.slice(0, -1))) : i4 = a3 ? n3 + "//cos." + a3 + ".myqcloud.com" : n3 + "//service.cos.myqcloud.com";
+ i4.replace(/^https?:\/\/([^/]+)(\/.*)?$/, "$1"), f2.call(this, { Action: "name/cos:GetService", url: i4, method: "GET", headers: e3.Headers, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ var i5 = n4 && n4.ListAllMyBucketsResult && n4.ListAllMyBucketsResult.Buckets && n4.ListAllMyBucketsResult.Buckets.Bucket || [];
+ i5 = o2.isArray(i5) ? i5 : [i5];
+ var a4 = n4 && n4.ListAllMyBucketsResult && n4.ListAllMyBucketsResult.Owner || {};
+ t3(null, { Buckets: i5, Owner: a4, statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, putBucket: function(e3, t3) {
+ var n3 = this, i4 = "";
+ if (e3.BucketAZConfig) {
+ var a3 = { BucketAZConfig: e3.BucketAZConfig };
+ i4 = o2.json2xml({ CreateBucketConfiguration: a3 });
+ }
+ f2.call(this, { Action: "name/cos:PutBucket", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, body: i4, tracker: e3.tracker }, function(i5, o3) {
+ if (i5)
+ return t3(i5);
+ var a4 = c2({ protocol: n3.options.Protocol, domain: n3.options.Domain, bucket: e3.Bucket, region: e3.Region, isLocation: true });
+ t3(null, { Location: a4, statusCode: o3.statusCode, headers: o3.headers });
+ });
+ }, headBucket: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:HeadBucket", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, method: "HEAD", tracker: e3.tracker }, function(e4, n3) {
+ t3(e4, n3);
+ });
+ }, getBucket: function(e3, t3) {
+ var n3 = {};
+ n3.prefix = e3.Prefix || "", n3.delimiter = e3.Delimiter, n3.marker = e3.Marker, n3["max-keys"] = e3.MaxKeys, n3["encoding-type"] = e3.EncodingType, f2.call(this, { Action: "name/cos:GetBucket", ResourceKey: n3.prefix, method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, qs: n3, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ var i4 = n4.ListBucketResult || {}, a3 = i4.Contents || [], r4 = i4.CommonPrefixes || [];
+ a3 = o2.isArray(a3) ? a3 : [a3], r4 = o2.isArray(r4) ? r4 : [r4];
+ var s4 = o2.clone(i4);
+ o2.extend(s4, { Contents: a3, CommonPrefixes: r4, statusCode: n4.statusCode, headers: n4.headers }), t3(null, s4);
+ });
+ }, deleteBucket: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucket", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, method: "DELETE", tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketAcl: function(e3, t3) {
+ var n3 = e3.Headers, i4 = "";
+ if (e3.AccessControlPolicy) {
+ var a3 = o2.clone(e3.AccessControlPolicy || {}), r4 = a3.Grants || a3.Grant;
+ r4 = o2.isArray(r4) ? r4 : [r4], delete a3.Grant, delete a3.Grants, a3.AccessControlList = { Grant: r4 }, i4 = o2.json2xml({ AccessControlPolicy: a3 }), n3["Content-Type"] = "application/xml", n3["Content-MD5"] = o2.binaryBase64(o2.md5(i4));
+ }
+ o2.each(n3, function(e4, t4) {
+ 0 === t4.indexOf("x-cos-grant-") && (n3[t4] = s3(n3[t4]));
+ }), f2.call(this, { Action: "name/cos:PutBucketACL", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, headers: n3, action: "acl", body: i4, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getBucketAcl: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketACL", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "acl", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return t3(e4);
+ var i4 = n3.AccessControlPolicy || {}, a3 = i4.Owner || {}, s4 = i4.AccessControlList.Grant || [];
+ s4 = o2.isArray(s4) ? s4 : [s4];
+ var c3 = r3(i4);
+ n3.headers && n3.headers["x-cos-acl"] && (c3.ACL = n3.headers["x-cos-acl"]), c3 = o2.extend(c3, { Owner: a3, Grants: s4, statusCode: n3.statusCode, headers: n3.headers }), t3(null, c3);
+ });
+ }, putBucketCors: function(e3, t3) {
+ var n3 = (e3.CORSConfiguration || {}).CORSRules || e3.CORSRules || [];
+ n3 = o2.clone(o2.isArray(n3) ? n3 : [n3]), o2.each(n3, function(e4) {
+ o2.each(["AllowedOrigin", "AllowedHeader", "AllowedMethod", "ExposeHeader"], function(t4) {
+ var n4 = t4 + "s", i5 = e4[n4] || e4[t4] || [];
+ delete e4[n4], e4[t4] = o2.isArray(i5) ? i5 : [i5];
+ });
+ });
+ var i4 = { CORSRule: n3 };
+ e3.ResponseVary && (i4.ResponseVary = e3.ResponseVary);
+ var a3 = o2.json2xml({ CORSConfiguration: i4 }), r4 = e3.Headers;
+ r4["Content-Type"] = "application/xml", r4["Content-MD5"] = o2.binaryBase64(o2.md5(a3)), f2.call(this, { Action: "name/cos:PutBucketCORS", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: a3, action: "cors", headers: r4, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getBucketCors: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketCORS", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "cors", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ if (404 === e4.statusCode && e4.error && "NoSuchCORSConfiguration" === e4.error.Code) {
+ var i4 = { CORSRules: [], statusCode: e4.statusCode };
+ e4.headers && (i4.headers = e4.headers), t3(null, i4);
+ } else
+ t3(e4);
+ else {
+ var a3 = n3.CORSConfiguration || {}, r4 = a3.CORSRules || a3.CORSRule || [];
+ r4 = o2.clone(o2.isArray(r4) ? r4 : [r4]);
+ var s4 = a3.ResponseVary;
+ o2.each(r4, function(e5) {
+ o2.each(["AllowedOrigin", "AllowedHeader", "AllowedMethod", "ExposeHeader"], function(t4) {
+ var n4 = t4 + "s", i5 = e5[n4] || e5[t4] || [];
+ delete e5[t4], e5[n4] = o2.isArray(i5) ? i5 : [i5];
+ });
+ }), t3(null, { CORSRules: r4, ResponseVary: s4, statusCode: n3.statusCode, headers: n3.headers });
+ }
+ });
+ }, deleteBucketCors: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucketCORS", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "cors", tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode || e4.statusCode, headers: n3.headers });
+ });
+ }, getBucketLocation: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketLocation", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "location", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return t3(e4);
+ t3(null, n3);
+ });
+ }, getBucketPolicy: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketPolicy", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "policy", rawBody: true, tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return e4.statusCode && 403 === e4.statusCode ? t3({ ErrorStatus: "Access Denied" }) : e4.statusCode && 405 === e4.statusCode ? t3({ ErrorStatus: "Method Not Allowed" }) : e4.statusCode && 404 === e4.statusCode ? t3({ ErrorStatus: "Policy Not Found" }) : t3(e4);
+ var i4 = {};
+ try {
+ i4 = JSON.parse(n3.body);
+ } catch (e5) {
+ }
+ t3(null, { Policy: i4, statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketPolicy: function(e3, t3) {
+ var n3 = e3.Policy, i4 = n3;
+ try {
+ "string" == typeof n3 ? n3 = JSON.parse(i4) : i4 = JSON.stringify(n3);
+ } catch (e4) {
+ t3({ error: "Policy format error" });
+ }
+ var a3 = e3.Headers;
+ a3["Content-Type"] = "application/json", a3["Content-MD5"] = o2.binaryBase64(o2.md5(i4)), f2.call(this, { Action: "name/cos:PutBucketPolicy", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, action: "policy", body: i4, headers: a3, json: true, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, deleteBucketPolicy: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucketPolicy", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "policy", tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode || e4.statusCode, headers: n3.headers });
+ });
+ }, putBucketTagging: function(e3, t3) {
+ var n3 = e3.Tagging || {}, i4 = n3.TagSet || n3.Tags || e3.Tags || [];
+ i4 = o2.clone(o2.isArray(i4) ? i4 : [i4]);
+ var a3 = o2.json2xml({ Tagging: { TagSet: { Tag: i4 } } }), r4 = e3.Headers;
+ r4["Content-Type"] = "application/xml", r4["Content-MD5"] = o2.binaryBase64(o2.md5(a3)), f2.call(this, { Action: "name/cos:PutBucketTagging", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: a3, action: "tagging", headers: r4, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getBucketTagging: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketTagging", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "tagging", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ if (404 !== e4.statusCode || !e4.error || "Not Found" !== e4.error && "NoSuchTagSet" !== e4.error.Code)
+ t3(e4);
+ else {
+ var i4 = { Tags: [], statusCode: e4.statusCode };
+ e4.headers && (i4.headers = e4.headers), t3(null, i4);
+ }
+ else {
+ var a3 = [];
+ try {
+ a3 = n3.Tagging.TagSet.Tag || [];
+ } catch (e5) {
+ }
+ a3 = o2.clone(o2.isArray(a3) ? a3 : [a3]), t3(null, { Tags: a3, statusCode: n3.statusCode, headers: n3.headers });
+ }
+ });
+ }, deleteBucketTagging: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucketTagging", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "tagging", tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketLifecycle: function(e3, t3) {
+ var n3 = (e3.LifecycleConfiguration || {}).Rules || e3.Rules || [];
+ n3 = o2.clone(n3);
+ var i4 = o2.json2xml({ LifecycleConfiguration: { Rule: n3 } }), a3 = e3.Headers;
+ a3["Content-Type"] = "application/xml", a3["Content-MD5"] = o2.binaryBase64(o2.md5(i4)), f2.call(this, { Action: "name/cos:PutBucketLifecycle", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: i4, action: "lifecycle", headers: a3, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getBucketLifecycle: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketLifecycle", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "lifecycle", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ if (404 === e4.statusCode && e4.error && "NoSuchLifecycleConfiguration" === e4.error.Code) {
+ var i4 = { Rules: [], statusCode: e4.statusCode };
+ e4.headers && (i4.headers = e4.headers), t3(null, i4);
+ } else
+ t3(e4);
+ else {
+ var a3 = [];
+ try {
+ a3 = n3.LifecycleConfiguration.Rule || [];
+ } catch (e5) {
+ }
+ a3 = o2.clone(o2.isArray(a3) ? a3 : [a3]), t3(null, { Rules: a3, statusCode: n3.statusCode, headers: n3.headers });
+ }
+ });
+ }, deleteBucketLifecycle: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucketLifecycle", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "lifecycle", tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketVersioning: function(e3, t3) {
+ if (e3.VersioningConfiguration) {
+ var n3 = e3.VersioningConfiguration || {}, i4 = o2.json2xml({ VersioningConfiguration: n3 }), a3 = e3.Headers;
+ a3["Content-Type"] = "application/xml", a3["Content-MD5"] = o2.binaryBase64(o2.md5(i4)), f2.call(this, { Action: "name/cos:PutBucketVersioning", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: i4, action: "versioning", headers: a3, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ } else
+ t3({ error: "missing param VersioningConfiguration" });
+ }, getBucketVersioning: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketVersioning", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "versioning", tracker: e3.tracker }, function(e4, n3) {
+ e4 || !n3.VersioningConfiguration && (n3.VersioningConfiguration = {}), t3(e4, n3);
+ });
+ }, putBucketReplication: function(e3, t3) {
+ var n3 = o2.clone(e3.ReplicationConfiguration), i4 = o2.json2xml({ ReplicationConfiguration: n3 });
+ i4 = (i4 = i4.replace(/<(\/?)Rules>/gi, "<$1Rule>")).replace(/<(\/?)Tags>/gi, "<$1Tag>");
+ var a3 = e3.Headers;
+ a3["Content-Type"] = "application/xml", a3["Content-MD5"] = o2.binaryBase64(o2.md5(i4)), f2.call(this, { Action: "name/cos:PutBucketReplication", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: i4, action: "replication", headers: a3, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getBucketReplication: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketReplication", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "replication", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ if (404 !== e4.statusCode || !e4.error || "Not Found" !== e4.error && "ReplicationConfigurationnotFoundError" !== e4.error.Code)
+ t3(e4);
+ else {
+ var i4 = { ReplicationConfiguration: { Rules: [] }, statusCode: e4.statusCode };
+ e4.headers && (i4.headers = e4.headers), t3(null, i4);
+ }
+ else
+ e4 || !n3.ReplicationConfiguration && (n3.ReplicationConfiguration = {}), n3.ReplicationConfiguration.Rule && (n3.ReplicationConfiguration.Rules = n3.ReplicationConfiguration.Rule, delete n3.ReplicationConfiguration.Rule), t3(e4, n3);
+ });
+ }, deleteBucketReplication: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucketReplication", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "replication", tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketWebsite: function(e3, t3) {
+ if (e3.WebsiteConfiguration) {
+ var n3 = o2.clone(e3.WebsiteConfiguration || {}), i4 = n3.RoutingRules || n3.RoutingRule || [];
+ i4 = o2.isArray(i4) ? i4 : [i4], delete n3.RoutingRule, delete n3.RoutingRules, i4.length && (n3.RoutingRules = { RoutingRule: i4 });
+ var a3 = o2.json2xml({ WebsiteConfiguration: n3 }), r4 = e3.Headers;
+ r4["Content-Type"] = "application/xml", r4["Content-MD5"] = o2.binaryBase64(o2.md5(a3)), f2.call(this, { Action: "name/cos:PutBucketWebsite", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: a3, action: "website", headers: r4, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ } else
+ t3({ error: "missing param WebsiteConfiguration" });
+ }, getBucketWebsite: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketWebsite", method: "GET", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: e3.Headers, action: "website", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ if (404 === e4.statusCode && "NoSuchWebsiteConfiguration" === e4.error.Code) {
+ var i4 = { WebsiteConfiguration: {}, statusCode: e4.statusCode };
+ e4.headers && (i4.headers = e4.headers), t3(null, i4);
+ } else
+ t3(e4);
+ else {
+ var a3 = n3.WebsiteConfiguration || {};
+ if (a3.RoutingRules) {
+ var r4 = o2.clone(a3.RoutingRules.RoutingRule || []);
+ r4 = o2.makeArray(r4), a3.RoutingRules = r4;
+ }
+ t3(null, { WebsiteConfiguration: a3, statusCode: n3.statusCode, headers: n3.headers });
+ }
+ });
+ }, deleteBucketWebsite: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucketWebsite", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "website", tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketReferer: function(e3, t3) {
+ if (e3.RefererConfiguration) {
+ var n3 = o2.clone(e3.RefererConfiguration || {}), i4 = n3.DomainList || {}, a3 = i4.Domains || i4.Domain || [];
+ (a3 = o2.isArray(a3) ? a3 : [a3]).length && (n3.DomainList = { Domain: a3 });
+ var r4 = o2.json2xml({ RefererConfiguration: n3 }), s4 = e3.Headers;
+ s4["Content-Type"] = "application/xml", s4["Content-MD5"] = o2.binaryBase64(o2.md5(r4)), f2.call(this, { Action: "name/cos:PutBucketReferer", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: r4, action: "referer", headers: s4, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ } else
+ t3({ error: "missing param RefererConfiguration" });
+ }, getBucketReferer: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketReferer", method: "GET", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: e3.Headers, action: "referer", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ if (404 === e4.statusCode && "NoSuchRefererConfiguration" === e4.error.Code) {
+ var i4 = { WebsiteConfiguration: {}, statusCode: e4.statusCode };
+ e4.headers && (i4.headers = e4.headers), t3(null, i4);
+ } else
+ t3(e4);
+ else {
+ var a3 = n3.RefererConfiguration || {};
+ if (a3.DomainList) {
+ var r4 = o2.makeArray(a3.DomainList.Domain || []);
+ a3.DomainList = { Domains: r4 };
+ }
+ t3(null, { RefererConfiguration: a3, statusCode: n3.statusCode, headers: n3.headers });
+ }
+ });
+ }, putBucketDomain: function(e3, t3) {
+ var n3 = (e3.DomainConfiguration || {}).DomainRule || e3.DomainRule || [];
+ n3 = o2.clone(n3);
+ var i4 = o2.json2xml({ DomainConfiguration: { DomainRule: n3 } }), a3 = e3.Headers;
+ a3["Content-Type"] = "application/xml", a3["Content-MD5"] = o2.binaryBase64(o2.md5(i4)), f2.call(this, { Action: "name/cos:PutBucketDomain", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: i4, action: "domain", headers: a3, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getBucketDomain: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketDomain", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "domain", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return t3(e4);
+ var i4 = [];
+ try {
+ i4 = n3.DomainConfiguration.DomainRule || [];
+ } catch (e5) {
+ }
+ i4 = o2.clone(o2.isArray(i4) ? i4 : [i4]), t3(null, { DomainRule: i4, statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, deleteBucketDomain: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucketDomain", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "domain", tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketOrigin: function(e3, t3) {
+ var n3 = (e3.OriginConfiguration || {}).OriginRule || e3.OriginRule || [];
+ n3 = o2.clone(n3);
+ var i4 = o2.json2xml({ OriginConfiguration: { OriginRule: n3 } }), a3 = e3.Headers;
+ a3["Content-Type"] = "application/xml", a3["Content-MD5"] = o2.binaryBase64(o2.md5(i4)), f2.call(this, { Action: "name/cos:PutBucketOrigin", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: i4, action: "origin", headers: a3, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getBucketOrigin: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketOrigin", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "origin", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return t3(e4);
+ var i4 = [];
+ try {
+ i4 = n3.OriginConfiguration.OriginRule || [];
+ } catch (e5) {
+ }
+ i4 = o2.clone(o2.isArray(i4) ? i4 : [i4]), t3(null, { OriginRule: i4, statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, deleteBucketOrigin: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucketOrigin", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "origin", tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketLogging: function(e3, t3) {
+ var n3 = o2.json2xml({ BucketLoggingStatus: e3.BucketLoggingStatus || "" }), i4 = e3.Headers;
+ i4["Content-Type"] = "application/xml", i4["Content-MD5"] = o2.binaryBase64(o2.md5(n3)), f2.call(this, { Action: "name/cos:PutBucketLogging", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: n3, action: "logging", headers: i4, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getBucketLogging: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketLogging", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "logging", tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return t3(e4);
+ delete n3.BucketLoggingStatus._xmlns, t3(null, { BucketLoggingStatus: n3.BucketLoggingStatus, statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketInventory: function(e3, t3) {
+ var n3 = o2.clone(e3.InventoryConfiguration);
+ if (n3.OptionalFields) {
+ var i4 = n3.OptionalFields || [];
+ n3.OptionalFields = { Field: i4 };
+ }
+ if (n3.Destination && n3.Destination.COSBucketDestination && n3.Destination.COSBucketDestination.Encryption) {
+ var a3 = n3.Destination.COSBucketDestination.Encryption;
+ Object.keys(a3).indexOf("SSECOS") > -1 && (a3["SSE-COS"] = a3.SSECOS, delete a3.SSECOS);
+ }
+ var r4 = o2.json2xml({ InventoryConfiguration: n3 }), s4 = e3.Headers;
+ s4["Content-Type"] = "application/xml", s4["Content-MD5"] = o2.binaryBase64(o2.md5(r4)), f2.call(this, { Action: "name/cos:PutBucketInventory", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: r4, action: "inventory", qs: { id: e3.Id }, headers: s4, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getBucketInventory: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:GetBucketInventory", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "inventory", qs: { id: e3.Id }, tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return t3(e4);
+ var i4 = n3.InventoryConfiguration;
+ if (i4 && i4.OptionalFields && i4.OptionalFields.Field) {
+ var a3 = i4.OptionalFields.Field;
+ o2.isArray(a3) || (a3 = [a3]), i4.OptionalFields = a3;
+ }
+ if (i4.Destination && i4.Destination.COSBucketDestination && i4.Destination.COSBucketDestination.Encryption) {
+ var r4 = i4.Destination.COSBucketDestination.Encryption;
+ Object.keys(r4).indexOf("SSE-COS") > -1 && (r4.SSECOS = r4["SSE-COS"], delete r4["SSE-COS"]);
+ }
+ t3(null, { InventoryConfiguration: i4, statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, listBucketInventory: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:ListBucketInventory", method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "inventory", qs: { "continuation-token": e3.ContinuationToken }, tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return t3(e4);
+ var i4 = n3.ListInventoryConfigurationResult, a3 = i4.InventoryConfiguration || [];
+ a3 = o2.isArray(a3) ? a3 : [a3], delete i4.InventoryConfiguration, o2.each(a3, function(e5) {
+ if (e5 && e5.OptionalFields && e5.OptionalFields.Field) {
+ var t4 = e5.OptionalFields.Field;
+ o2.isArray(t4) || (t4 = [t4]), e5.OptionalFields = t4;
+ }
+ if (e5.Destination && e5.Destination.COSBucketDestination && e5.Destination.COSBucketDestination.Encryption) {
+ var n4 = e5.Destination.COSBucketDestination.Encryption;
+ Object.keys(n4).indexOf("SSE-COS") > -1 && (n4.SSECOS = n4["SSE-COS"], delete n4["SSE-COS"]);
+ }
+ }), i4.InventoryConfigurations = a3, o2.extend(i4, { statusCode: n3.statusCode, headers: n3.headers }), t3(null, i4);
+ });
+ }, deleteBucketInventory: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteBucketInventory", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "inventory", qs: { id: e3.Id }, tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, putBucketAccelerate: function(e3, t3) {
+ if (e3.AccelerateConfiguration) {
+ var n3 = { AccelerateConfiguration: e3.AccelerateConfiguration || {} }, i4 = o2.json2xml(n3), a3 = { "Content-Type": "application/xml" };
+ a3["Content-MD5"] = o2.binaryBase64(o2.md5(i4)), f2.call(this, { Interface: "putBucketAccelerate", Action: "name/cos:PutBucketAccelerate", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, body: i4, action: "accelerate", headers: a3, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ } else
+ t3({ error: "missing param AccelerateConfiguration" });
+ }, getBucketAccelerate: function(e3, t3) {
+ f2.call(this, { Interface: "getBucketAccelerate", Action: "name/cos:GetBucketAccelerate", method: "GET", Bucket: e3.Bucket, Region: e3.Region, action: "accelerate", tracker: e3.tracker }, function(e4, n3) {
+ e4 || !n3.AccelerateConfiguration && (n3.AccelerateConfiguration = {}), t3(e4, n3);
+ });
+ }, getObject: function(e3, t3) {
+ if (this.options.ObjectKeySimplifyCheck && "/" === o2.simplifyPath(e3.Key))
+ return void t3(o2.error(new Error("The Getobject Key is illegal")));
+ var n3 = e3.Query || {}, i4 = e3.QueryString || "", a3 = e3.tracker;
+ a3 && a3.setParams({ signStartTime: (/* @__PURE__ */ new Date()).getTime() }), n3["response-content-type"] = e3.ResponseContentType, n3["response-content-language"] = e3.ResponseContentLanguage, n3["response-expires"] = e3.ResponseExpires, n3["response-cache-control"] = e3.ResponseCacheControl, n3["response-content-disposition"] = e3.ResponseContentDisposition, n3["response-content-encoding"] = e3.ResponseContentEncoding, f2.call(this, { Action: "name/cos:GetObject", method: "GET", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, VersionId: e3.VersionId, headers: e3.Headers, qs: n3, qsStr: i4, rawBody: true, dataType: e3.DataType, tracker: a3 }, function(n4, i5) {
+ if (n4) {
+ var a4 = n4.statusCode;
+ return e3.Headers["If-Modified-Since"] && a4 && 304 === a4 ? t3(null, { NotModified: true }) : t3(n4);
+ }
+ t3(null, { Body: i5.body, ETag: o2.attr(i5.headers, "etag", ""), statusCode: i5.statusCode, headers: i5.headers });
+ });
+ }, headObject: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:HeadObject", method: "HEAD", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, VersionId: e3.VersionId, headers: e3.Headers, tracker: e3.tracker }, function(n3, i4) {
+ if (n3) {
+ var a3 = n3.statusCode;
+ return e3.Headers["If-Modified-Since"] && a3 && 304 === a3 ? t3(null, { NotModified: true, statusCode: a3 }) : t3(n3);
+ }
+ i4.ETag = o2.attr(i4.headers, "etag", ""), t3(null, i4);
+ });
+ }, listObjectVersions: function(e3, t3) {
+ var n3 = {};
+ n3.prefix = e3.Prefix || "", n3.delimiter = e3.Delimiter, n3["key-marker"] = e3.KeyMarker, n3["version-id-marker"] = e3.VersionIdMarker, n3["max-keys"] = e3.MaxKeys, n3["encoding-type"] = e3.EncodingType, f2.call(this, { Action: "name/cos:GetBucketObjectVersions", ResourceKey: n3.prefix, method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, qs: n3, action: "versions", tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ var i4 = n4.ListVersionsResult || {}, a3 = i4.DeleteMarker || [];
+ a3 = o2.isArray(a3) ? a3 : [a3];
+ var r4 = i4.Version || [];
+ r4 = o2.isArray(r4) ? r4 : [r4];
+ var s4 = o2.clone(i4);
+ delete s4.DeleteMarker, delete s4.Version, o2.extend(s4, { DeleteMarkers: a3, Versions: r4, statusCode: n4.statusCode, headers: n4.headers }), t3(null, s4);
+ });
+ }, putObject: function(e3, t3) {
+ var n3 = this, i4 = e3.ContentLength, r4 = o2.throttleOnProgress.call(n3, i4, e3.onProgress), s4 = e3.Headers;
+ s4["Cache-Control"] || s4["cache-control"] || (s4["Cache-Control"] = ""), s4["Content-Type"] || s4["content-type"] || (s4["Content-Type"] = a2.getType(e3.Key) || "application/octet-stream");
+ var l3 = e3.UploadAddMetaMd5 || n3.options.UploadAddMetaMd5 || n3.options.UploadCheckContentMd5, p4 = e3.tracker;
+ l3 && p4 && p4.setParams({ md5StartTime: (/* @__PURE__ */ new Date()).getTime() }), o2.getBodyMd5(l3, e3.Body, function(a3) {
+ a3 && (p4 && p4.setParams({ md5EndTime: (/* @__PURE__ */ new Date()).getTime() }), n3.options.UploadCheckContentMd5 && (s4["Content-MD5"] = o2.binaryBase64(a3)), (e3.UploadAddMetaMd5 || n3.options.UploadAddMetaMd5) && (s4["x-cos-meta-md5"] = a3)), void 0 !== e3.ContentLength && (s4["Content-Length"] = e3.ContentLength), r4(null, true), f2.call(n3, { Action: "name/cos:PutObject", TaskId: e3.TaskId, method: "PUT", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: e3.Headers, qs: e3.Query, body: e3.Body, onProgress: r4, tracker: p4 }, function(a4, s5) {
+ if (a4)
+ return r4(null, true), t3(a4);
+ r4({ loaded: i4, total: i4 }, true);
+ var l4 = c2({ ForcePathStyle: n3.options.ForcePathStyle, protocol: n3.options.Protocol, domain: n3.options.Domain, bucket: e3.Bucket, region: n3.options.UseAccelerate ? "accelerate" : e3.Region, object: e3.Key });
+ l4 = l4.substr(l4.indexOf("://") + 3), s5.Location = l4, s5.ETag = o2.attr(s5.headers, "etag", ""), t3(null, s5);
+ });
+ });
+ }, postObject: function(e3, t3) {
+ var n3 = this, i4 = {}, a3 = e3.FilePath;
+ if (a3) {
+ for (var r4 in i4["Cache-Control"] = e3.CacheControl, i4["Content-Disposition"] = e3.ContentDisposition, i4["Content-Encoding"] = e3.ContentEncoding, i4["Content-MD5"] = e3.ContentMD5, i4["Content-Length"] = e3.ContentLength, i4["Content-Type"] = e3.ContentType, i4.Expect = e3.Expect, i4.Expires = e3.Expires, i4["x-cos-acl"] = e3.ACL, i4["x-cos-grant-read"] = e3.GrantRead, i4["x-cos-grant-write"] = e3.GrantWrite, i4["x-cos-grant-full-control"] = e3.GrantFullControl, i4["x-cos-storage-class"] = e3.StorageClass, i4["x-cos-mime-limit"] = e3.MimeLimit, i4["x-cos-traffic-limit"] = e3.TrafficLimit, i4["x-cos-forbid-overwrite"] = e3.ForbidOverwrite, i4["x-cos-server-side-encryption-customer-algorithm"] = e3.SSECustomerAlgorithm, i4["x-cos-server-side-encryption-customer-key"] = e3.SSECustomerKey, i4["x-cos-server-side-encryption-customer-key-MD5"] = e3.SSECustomerKeyMD5, i4["x-cos-server-side-encryption"] = e3.ServerSideEncryption, i4["x-cos-server-side-encryption-cos-kms-key-id"] = e3.SSEKMSKeyId, i4["x-cos-server-side-encryption-context"] = e3.SSEContext, delete i4["Content-Length"], delete i4["content-length"], e3)
+ r4.indexOf("x-cos-meta-") > -1 && (i4[r4] = e3[r4]);
+ var s4 = o2.throttleOnProgress.call(n3, i4["Content-Length"], e3.onProgress);
+ f2.call(this, { Action: "name/cos:PostObject", method: "POST", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: i4, qs: e3.Query, filePath: a3, TaskId: e3.TaskId, onProgress: s4, tracker: e3.tracker }, function(i5, o3) {
+ if (s4(null, true), i5)
+ return t3(i5);
+ if (o3 && o3.headers) {
+ var r5 = o3.headers, l3 = r5.etag || r5.Etag || r5.ETag || "", p4 = a3.substr(a3.lastIndexOf("/") + 1), u3 = c2({ ForcePathStyle: n3.options.ForcePathStyle, protocol: n3.options.Protocol, domain: n3.options.Domain, bucket: e3.Bucket, region: e3.Region, object: e3.Key.replace(/\$\{filename\}/g, p4), isLocation: true });
+ return t3(null, { Location: u3, statusCode: o3.statusCode, headers: r5, ETag: l3 });
+ }
+ t3(null, o3);
+ });
+ } else
+ t3({ error: "missing param FilePath" });
+ }, deleteObject: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:DeleteObject", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: e3.Headers, VersionId: e3.VersionId, tracker: e3.tracker }, function(e4, n3) {
+ if (e4) {
+ var i4 = e4.statusCode;
+ return i4 && 204 === i4 ? t3(null, { statusCode: i4 }) : i4 && 404 === i4 ? t3(null, { BucketNotFound: true, statusCode: i4 }) : t3(e4);
+ }
+ t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, getObjectAcl: function(e3, t3) {
+ var n3 = {};
+ e3.VersionId && (n3.versionId = e3.VersionId), f2.call(this, { Action: "name/cos:GetObjectACL", method: "GET", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: e3.Headers, qs: n3, action: "acl", tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ var i4 = n4.AccessControlPolicy || {}, a3 = i4.Owner || {}, s4 = i4.AccessControlList && i4.AccessControlList.Grant || [];
+ s4 = o2.isArray(s4) ? s4 : [s4];
+ var c3 = r3(i4);
+ n4.headers && n4.headers["x-cos-acl"] && (c3.ACL = n4.headers["x-cos-acl"]), c3 = o2.extend(c3, { Owner: a3, Grants: s4, statusCode: n4.statusCode, headers: n4.headers }), t3(null, c3);
+ });
+ }, putObjectAcl: function(e3, t3) {
+ var n3 = e3.Headers, i4 = "";
+ if (e3.AccessControlPolicy) {
+ var a3 = o2.clone(e3.AccessControlPolicy || {}), r4 = a3.Grants || a3.Grant;
+ r4 = o2.isArray(r4) ? r4 : [r4], delete a3.Grant, delete a3.Grants, a3.AccessControlList = { Grant: r4 }, i4 = o2.json2xml({ AccessControlPolicy: a3 }), n3["Content-Type"] = "application/xml", n3["Content-MD5"] = o2.binaryBase64(o2.md5(i4));
+ }
+ o2.each(n3, function(e4, t4) {
+ 0 === t4.indexOf("x-cos-grant-") && (n3[t4] = s3(n3[t4]));
+ }), f2.call(this, { Action: "name/cos:PutObjectACL", method: "PUT", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, action: "acl", headers: n3, body: i4, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, optionsObject: function(e3, t3) {
+ var n3 = e3.Headers;
+ n3.Origin = e3.Origin, n3["Access-Control-Request-Method"] = e3.AccessControlRequestMethod, n3["Access-Control-Request-Headers"] = e3.AccessControlRequestHeaders, f2.call(this, { Action: "name/cos:OptionsObject", method: "OPTIONS", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: n3, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return e4.statusCode && 403 === e4.statusCode ? t3(null, { OptionsForbidden: true, statusCode: e4.statusCode }) : t3(e4);
+ var i4 = n4.headers || {};
+ t3(null, { AccessControlAllowOrigin: i4["access-control-allow-origin"], AccessControlAllowMethods: i4["access-control-allow-methods"], AccessControlAllowHeaders: i4["access-control-allow-headers"], AccessControlExposeHeaders: i4["access-control-expose-headers"], AccessControlMaxAge: i4["access-control-max-age"], statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, putObjectCopy: function(e3, t3) {
+ var n3 = e3.Headers;
+ !n3["Cache-Control"] && n3["cache-control"] && (n3["Cache-Control"] = "");
+ var i4 = e3.CopySource || "", a3 = o2.getSourceParams.call(this, i4);
+ if (a3) {
+ var r4 = a3.Bucket, s4 = a3.Region, c3 = decodeURIComponent(a3.Key);
+ f2.call(this, { Scope: [{ action: "name/cos:GetObject", bucket: r4, region: s4, prefix: c3 }, { action: "name/cos:PutObject", bucket: e3.Bucket, region: e3.Region, prefix: e3.Key }], method: "PUT", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, VersionId: e3.VersionId, headers: e3.Headers, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ var i5 = o2.clone(n4.CopyObjectResult || {});
+ o2.extend(i5, { statusCode: n4.statusCode, headers: n4.headers }), t3(null, i5);
+ });
+ } else
+ t3({ error: "CopySource format error" });
+ }, deleteMultipleObject: function(e3, t3) {
+ var n3 = e3.Objects || [], i4 = e3.Quiet;
+ n3 = o2.isArray(n3) ? n3 : [n3];
+ var a3 = o2.json2xml({ Delete: { Object: n3, Quiet: i4 || false } }), r4 = e3.Headers;
+ r4["Content-Type"] = "application/xml", r4["Content-MD5"] = o2.binaryBase64(o2.md5(a3));
+ var s4 = o2.map(n3, function(t4) {
+ return { action: "name/cos:DeleteObject", bucket: e3.Bucket, region: e3.Region, prefix: t4.Key };
+ });
+ f2.call(this, { Scope: s4, method: "POST", Bucket: e3.Bucket, Region: e3.Region, body: a3, action: "delete", headers: r4, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ var i5 = n4.DeleteResult || {}, a4 = i5.Deleted || [], r5 = i5.Error || [];
+ a4 = o2.isArray(a4) ? a4 : [a4], r5 = o2.isArray(r5) ? r5 : [r5];
+ var s5 = o2.clone(i5);
+ o2.extend(s5, { Error: r5, Deleted: a4, statusCode: n4.statusCode, headers: n4.headers }), t3(null, s5);
+ });
+ }, restoreObject: function(e3, t3) {
+ var n3 = e3.Headers;
+ if (e3.RestoreRequest) {
+ var i4 = e3.RestoreRequest || {}, a3 = o2.json2xml({ RestoreRequest: i4 });
+ n3["Content-Type"] = "application/xml", n3["Content-MD5"] = o2.binaryBase64(o2.md5(a3)), f2.call(this, { Action: "name/cos:RestoreObject", method: "POST", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, VersionId: e3.VersionId, body: a3, action: "restore", headers: n3, tracker: e3.tracker }, function(e4, n4) {
+ t3(e4, n4);
+ });
+ } else
+ t3({ error: "missing param RestoreRequest" });
+ }, putObjectTagging: function(e3, t3) {
+ var n3 = e3.Tagging || {}, i4 = n3.TagSet || n3.Tags || e3.Tags || [];
+ i4 = o2.clone(o2.isArray(i4) ? i4 : [i4]);
+ var a3 = o2.json2xml({ Tagging: { TagSet: { Tag: i4 } } }), r4 = e3.Headers;
+ r4["Content-Type"] = "application/xml", r4["Content-MD5"] = o2.binaryBase64(o2.md5(a3)), f2.call(this, { Interface: "putObjectTagging", Action: "name/cos:PutObjectTagging", method: "PUT", Bucket: e3.Bucket, Key: e3.Key, Region: e3.Region, body: a3, action: "tagging", headers: r4, VersionId: e3.VersionId, tracker: e3.tracker }, function(e4, n4) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, getObjectTagging: function(e3, t3) {
+ f2.call(this, { Interface: "getObjectTagging", Action: "name/cos:GetObjectTagging", method: "GET", Key: e3.Key, Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, action: "tagging", VersionId: e3.VersionId, tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ if (404 !== e4.statusCode || !e4.error || "Not Found" !== e4.error && "NoSuchTagSet" !== e4.error.Code)
+ t3(e4);
+ else {
+ var i4 = { Tags: [], statusCode: e4.statusCode };
+ e4.headers && (i4.headers = e4.headers), t3(null, i4);
+ }
+ else {
+ var a3 = [];
+ try {
+ a3 = n3.Tagging.TagSet.Tag || [];
+ } catch (e5) {
+ }
+ a3 = o2.clone(o2.isArray(a3) ? a3 : [a3]), t3(null, { Tags: a3, statusCode: n3.statusCode, headers: n3.headers });
+ }
+ });
+ }, deleteObjectTagging: function(e3, t3) {
+ f2.call(this, { Interface: "deleteObjectTagging", Action: "name/cos:DeleteObjectTagging", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: e3.Headers, action: "tagging", VersionId: e3.VersionId, tracker: e3.tracker }, function(e4, n3) {
+ return e4 && 204 === e4.statusCode ? t3(null, { statusCode: e4.statusCode }) : e4 ? t3(e4) : void t3(null, { statusCode: n3.statusCode, headers: n3.headers });
+ });
+ }, appendObject: function(e3, t3) {
+ f2.call(this, { Action: "name/cos:AppendObject", method: "POST", Bucket: e3.Bucket, Region: e3.Region, action: "append", Key: e3.Key, body: e3.Body, qs: { position: e3.Position }, headers: e3.Headers, tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return t3(e4);
+ t3(null, n3);
+ });
+ }, uploadPartCopy: function(e3, t3) {
+ var n3 = e3.CopySource || "", i4 = o2.getSourceParams.call(this, n3);
+ if (i4) {
+ var a3 = i4.Bucket, r4 = i4.Region, s4 = decodeURIComponent(i4.Key);
+ f2.call(this, { Scope: [{ action: "name/cos:GetObject", bucket: a3, region: r4, prefix: s4 }, { action: "name/cos:PutObject", bucket: e3.Bucket, region: e3.Region, prefix: e3.Key }], method: "PUT", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, VersionId: e3.VersionId, qs: { partNumber: e3.PartNumber, uploadId: e3.UploadId }, headers: e3.Headers, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ var i5 = o2.clone(n4.CopyPartResult || {});
+ o2.extend(i5, { statusCode: n4.statusCode, headers: n4.headers }), t3(null, i5);
+ });
+ } else
+ t3({ error: "CopySource format error" });
+ }, multipartInit: function(e3, t3) {
+ var n3 = e3.Headers, i4 = e3.tracker;
+ n3["Cache-Control"] || n3["cache-control"] || (n3["Cache-Control"] = ""), n3["Content-Type"] || n3["content-type"] || (n3["Content-Type"] = a2.getType(e3.Key) || "application/octet-stream"), f2.call(this, { Action: "name/cos:InitiateMultipartUpload", method: "POST", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, action: "uploads", headers: e3.Headers, qs: e3.Query, tracker: i4 }, function(e4, n4) {
+ return e4 ? (i4 && i4.parent && i4.parent.setParams({ errorNode: "multipartInit" }), t3(e4)) : (n4 = o2.clone(n4 || {})) && n4.InitiateMultipartUploadResult ? t3(null, o2.extend(n4.InitiateMultipartUploadResult, { statusCode: n4.statusCode, headers: n4.headers })) : void t3(null, n4);
+ });
+ }, multipartUpload: function(e3, t3) {
+ var n3 = this;
+ o2.getFileSize("multipartUpload", e3, function() {
+ var i4 = e3.tracker, a3 = n3.options.UploadCheckContentMd5;
+ a3 && i4 && i4.setParams({ md5StartTime: (/* @__PURE__ */ new Date()).getTime() }), o2.getBodyMd5(a3, e3.Body, function(r4) {
+ r4 && (e3.Headers["Content-MD5"] = o2.binaryBase64(r4), a3 && i4 && i4.setParams({ md5EndTime: (/* @__PURE__ */ new Date()).getTime() })), i4 && i4.setParams({ partNumber: e3.PartNumber }), f2.call(n3, { Action: "name/cos:UploadPart", TaskId: e3.TaskId, method: "PUT", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, qs: { partNumber: e3.PartNumber, uploadId: e3.UploadId }, headers: e3.Headers, onProgress: e3.onProgress, body: e3.Body || null, tracker: i4 }, function(e4, n4) {
+ if (e4)
+ return i4 && i4.parent && i4.parent.setParams({ errorNode: "multipartUpload" }), t3(e4);
+ t3(null, { ETag: o2.attr(n4.headers, "etag", {}), statusCode: n4.statusCode, headers: n4.headers });
+ });
+ });
+ });
+ }, multipartComplete: function(e3, t3) {
+ for (var n3 = this, i4 = e3.UploadId, a3 = e3.Parts, r4 = e3.tracker, s4 = 0, l3 = a3.length; s4 < l3; s4++)
+ 0 !== a3[s4].ETag.indexOf('"') && (a3[s4].ETag = '"' + a3[s4].ETag + '"');
+ var p4 = o2.json2xml({ CompleteMultipartUpload: { Part: a3 } }), u3 = e3.Headers;
+ u3["Content-Type"] = "application/xml", u3["Content-MD5"] = o2.binaryBase64(o2.md5(p4)), f2.call(this, { Action: "name/cos:CompleteMultipartUpload", method: "POST", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, qs: { uploadId: i4 }, body: p4, headers: u3, tracker: r4 }, function(i5, a4) {
+ if (i5)
+ return r4 && r4.parent && r4.parent.setParams({ errorNode: "multipartComplete" }), t3(i5);
+ var s5 = c2({ ForcePathStyle: n3.options.ForcePathStyle, protocol: n3.options.Protocol, domain: n3.options.Domain, bucket: e3.Bucket, region: n3.options.UseAccelerate ? "accelerate" : e3.Region, object: e3.Key, isLocation: true }), l4 = a4.CompleteMultipartUploadResult || {}, p5 = o2.extend(l4, { Location: s5, statusCode: a4.statusCode, headers: a4.headers });
+ t3(null, p5);
+ });
+ }, multipartList: function(e3, t3) {
+ var n3 = {};
+ n3.delimiter = e3.Delimiter, n3["encoding-type"] = e3.EncodingType, n3.prefix = e3.Prefix || "", n3["max-uploads"] = e3.MaxUploads, n3["key-marker"] = e3.KeyMarker, n3["upload-id-marker"] = e3.UploadIdMarker, n3 = o2.clearKey(n3);
+ var i4 = e3.tracker;
+ i4 && i4.setParams({ signStartTime: (/* @__PURE__ */ new Date()).getTime() }), f2.call(this, { Action: "name/cos:ListMultipartUploads", ResourceKey: n3.prefix, method: "GET", Bucket: e3.Bucket, Region: e3.Region, headers: e3.Headers, qs: n3, action: "uploads", tracker: i4 }, function(e4, n4) {
+ if (e4)
+ return i4 && i4.parent && i4.parent.setParams({ errorNode: "multipartList" }), t3(e4);
+ if (n4 && n4.ListMultipartUploadsResult) {
+ var a3 = n4.ListMultipartUploadsResult.Upload || [], r4 = n4.ListMultipartUploadsResult.CommonPrefixes || [];
+ r4 = o2.isArray(r4) ? r4 : [r4], a3 = o2.isArray(a3) ? a3 : [a3], n4.ListMultipartUploadsResult.Upload = a3, n4.ListMultipartUploadsResult.CommonPrefixes = r4;
+ }
+ var s4 = o2.clone(n4.ListMultipartUploadsResult || {});
+ o2.extend(s4, { statusCode: n4.statusCode, headers: n4.headers }), t3(null, s4);
+ });
+ }, multipartListPart: function(e3, t3) {
+ var n3 = {}, i4 = e3.tracker;
+ n3.uploadId = e3.UploadId, n3["encoding-type"] = e3.EncodingType, n3["max-parts"] = e3.MaxParts, n3["part-number-marker"] = e3.PartNumberMarker, f2.call(this, { Action: "name/cos:ListParts", method: "GET", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: e3.Headers, qs: n3, tracker: i4 }, function(e4, n4) {
+ if (e4)
+ return i4 && i4.parent && i4.parent.setParams({ errorNode: "multipartListPart" }), t3(e4);
+ var a3 = n4.ListPartsResult || {}, r4 = a3.Part || [];
+ r4 = o2.isArray(r4) ? r4 : [r4], a3.Part = r4;
+ var s4 = o2.clone(a3);
+ o2.extend(s4, { statusCode: n4.statusCode, headers: n4.headers }), t3(null, s4);
+ });
+ }, multipartAbort: function(e3, t3) {
+ var n3 = {};
+ n3.uploadId = e3.UploadId, f2.call(this, { Action: "name/cos:AbortMultipartUpload", method: "DELETE", Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, headers: e3.Headers, qs: n3, tracker: e3.tracker }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ t3(null, { statusCode: n4.statusCode, headers: n4.headers });
+ });
+ }, request: function(e3, t3) {
+ f2.call(this, { method: e3.Method, Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, action: e3.Action, headers: e3.Headers, qs: e3.Query, body: e3.Body, Url: e3.Url, rawBody: e3.RawBody, dataType: e3.DataType, tracker: e3.tracker }, function(e4, n3) {
+ if (e4)
+ return t3(e4);
+ n3 && n3.body && (n3.Body = n3.body, delete n3.body), t3(e4, n3);
+ });
+ }, getObjectUrl: function(e3, t3) {
+ var n3 = this, i4 = void 0 === e3.UseAccelerate ? n3.options.UseAccelerate : e3.UseAccelerate, a3 = c2({ ForcePathStyle: n3.options.ForcePathStyle, protocol: e3.Protocol || n3.options.Protocol, domain: e3.Domain || n3.options.Domain, bucket: e3.Bucket, region: i4 ? "accelerate" : e3.Region, object: e3.Key }), r4 = "";
+ e3.Query && (r4 += o2.obj2str(e3.Query)), e3.QueryString && (r4 += (r4 ? "&" : "") + e3.QueryString);
+ var s4 = a3;
+ if (void 0 !== e3.Sign && !e3.Sign)
+ return r4 && (s4 += "?" + r4), t3(null, { Url: s4 }), s4;
+ var u3 = l2.call(this, { Bucket: e3.Bucket, Region: e3.Region, UseAccelerate: e3.UseAccelerate, Url: a3 }), d3 = p3.call(this, { Action: "PUT" === (e3.Method || "").toUpperCase() ? "name/cos:PutObject" : "name/cos:GetObject", Bucket: e3.Bucket || "", Region: e3.Region || "", Method: e3.Method || "get", Key: e3.Key, Expires: e3.Expires, Headers: e3.Headers, Query: e3.Query, SignHost: u3, ForceSignHost: false !== e3.ForceSignHost && n3.options.ForceSignHost }, function(e4, n4) {
+ if (t3)
+ if (e4)
+ t3(e4);
+ else {
+ var i5 = a3;
+ i5 += "?" + (n4.Authorization.indexOf("q-signature") > -1 ? function(e5) {
+ var t4 = e5.match(/q-url-param-list.*?(?=&)/g)[0], n5 = "q-url-param-list=" + encodeURIComponent(t4.replace(/q-url-param-list=/, "")).toLowerCase(), i6 = new RegExp(t4, "g");
+ return e5.replace(i6, n5);
+ }(n4.Authorization) : "sign=" + encodeURIComponent(n4.Authorization)), n4.SecurityToken && (i5 += "&x-cos-security-token=" + n4.SecurityToken), n4.ClientIP && (i5 += "&clientIP=" + n4.ClientIP), n4.ClientUA && (i5 += "&clientUA=" + n4.ClientUA), n4.Token && (i5 += "&token=" + n4.Token), r4 && (i5 += "&" + r4), setTimeout(function() {
+ t3(null, { Url: i5 });
+ });
+ }
+ });
+ return d3 ? (s4 += "?" + d3.Authorization + (d3.SecurityToken ? "&x-cos-security-token=" + d3.SecurityToken : ""), r4 && (s4 += "&" + r4)) : r4 && (s4 += "?" + r4), s4;
+ }, getAuth: function(e3) {
+ return o2.getAuth({ SecretId: e3.SecretId || this.options.SecretId || "", SecretKey: e3.SecretKey || this.options.SecretKey || "", Bucket: e3.Bucket, Region: e3.Region, Method: e3.Method, Key: e3.Key, Query: e3.Query, Headers: e3.Headers, Expires: e3.Expires, SystemClockOffset: this.options.SystemClockOffset });
+ } };
+ e2.exports.init = function(e3, t3) {
+ t3.transferToTaskMethod(h2, "postObject"), t3.transferToTaskMethod(h2, "putObject"), o2.each(h2, function(t4, n3) {
+ e3.prototype[n3] = o2.apiWrapper(n3, t4);
+ });
+ };
+ }, function(e2, t2) {
+ function n2(e3) {
+ return encodeURIComponent(e3).replace(/!/g, "%21").replace(/'/g, "%27").replace(/\(/g, "%28").replace(/\)/g, "%29").replace(/\*/g, "%2A");
+ }
+ var i3 = function(e3, t3) {
+ var i4, o2, a2, r3 = [], s3 = function(e4, t4) {
+ var i5 = [];
+ for (var o3 in e4)
+ e4.hasOwnProperty(o3) && i5.push(t4 ? n2(o3).toLowerCase() : o3);
+ return i5.sort(function(e5, t5) {
+ return (e5 = e5.toLowerCase()) === (t5 = t5.toLowerCase()) ? 0 : e5 > t5 ? 1 : -1;
+ });
+ }(e3);
+ for (i4 = 0; i4 < s3.length; i4++)
+ a2 = void 0 === e3[o2 = s3[i4]] || null === e3[o2] ? "" : "" + e3[o2], o2 = t3 ? n2(o2).toLowerCase() : n2(o2), a2 = n2(a2) || "", r3.push(o2 + "=" + a2);
+ return r3.join("&");
+ };
+ e2.exports = function(e3, t3) {
+ var n3, o2 = e3.filePath, a2 = e3.headers || {}, r3 = e3.url || e3.Url, s3 = e3.method, c2 = e3.onProgress, l2 = e3.httpDNSServiceId, p3 = function(e4, n4) {
+ var i4 = n4.header, o3 = {};
+ if (i4)
+ for (var a3 in i4)
+ i4.hasOwnProperty(a3) && (o3[a3.toLowerCase()] = i4[a3]);
+ t3(e4, { statusCode: n4.statusCode, headers: o3 }, n4.data);
+ };
+ if (o2) {
+ var u2, d2 = r3.match(/^(https?:\/\/[^/]+\/)([^/]*\/?)(.*)$/);
+ e3.pathStyle ? (u2 = decodeURIComponent(d2[3] || ""), r3 = d2[1] + d2[2]) : (u2 = decodeURIComponent(d2[2] + d2[3] || ""), r3 = d2[1]);
+ var f2 = { key: u2, success_action_status: 200, Signature: a2.Authorization }, m2 = ["Cache-Control", "Content-Type", "Content-Disposition", "Content-Encoding", "Expires", "x-cos-storage-class", "x-cos-security-token", "x-ci-security-token"];
+ for (var h2 in e3.headers)
+ e3.headers.hasOwnProperty(h2) && (h2.indexOf("x-cos-meta-") > -1 || m2.indexOf(h2) > -1) && (f2[h2] = e3.headers[h2]);
+ a2["x-cos-acl"] && (f2.acl = a2["x-cos-acl"]), !f2["Content-Type"] && (f2["Content-Type"] = ""), (n3 = wx$1.uploadFile({ url: r3, method: s3, name: "file", header: a2, filePath: o2, formData: f2, timeout: e3.timeout, success: function(e4) {
+ p3(null, e4);
+ }, fail: function(e4) {
+ p3(e4.errMsg, e4);
+ } })).onProgressUpdate(function(e4) {
+ c2 && c2({ loaded: e4.totalBytesSent, total: e4.totalBytesExpectedToSend, progress: e4.progress / 100 });
+ });
+ } else {
+ var g2 = e3.qs && i3(e3.qs) || "";
+ g2 && (r3 += (r3.indexOf("?") > -1 ? "&" : "?") + g2), a2["Content-Length"] && delete a2["Content-Length"];
+ var v3 = { url: r3, method: s3, header: a2, dataType: "text", data: e3.body, responseType: e3.dataType || "text", timeout: e3.timeout, redirect: "manual", success: function(e4) {
+ p3(null, e4);
+ }, fail: function(e4) {
+ p3(e4.errMsg, e4);
+ } };
+ l2 && Object.assign(v3, { enableHttpDNS: true, httpDNSServiceId: l2 }), n3 = wx$1.request(v3);
+ }
+ return n3;
+ };
+ }, function(e2, t2, n2) {
+ let i3 = n2(29);
+ e2.exports = new i3(n2(30), n2(31));
+ }, function(e2, t2, n2) {
+ function i3() {
+ this._types = /* @__PURE__ */ Object.create(null), this._extensions = /* @__PURE__ */ Object.create(null);
+ for (let e3 = 0; e3 < arguments.length; e3++)
+ this.define(arguments[e3]);
+ this.define = this.define.bind(this), this.getType = this.getType.bind(this), this.getExtension = this.getExtension.bind(this);
+ }
+ i3.prototype.define = function(e3, t3) {
+ for (let n3 in e3) {
+ let i4 = e3[n3].map(function(e4) {
+ return e4.toLowerCase();
+ });
+ n3 = n3.toLowerCase();
+ for (let e4 = 0; e4 < i4.length; e4++) {
+ const o2 = i4[e4];
+ if ("*" !== o2[0]) {
+ if (!t3 && o2 in this._types)
+ throw new Error('Attempt to change mapping for "' + o2 + '" extension from "' + this._types[o2] + '" to "' + n3 + '". Pass `force=true` to allow this, otherwise remove "' + o2 + '" from the list of extensions for "' + n3 + '".');
+ this._types[o2] = n3;
+ }
+ }
+ if (t3 || !this._extensions[n3]) {
+ const e4 = i4[0];
+ this._extensions[n3] = "*" !== e4[0] ? e4 : e4.substr(1);
+ }
+ }
+ }, i3.prototype.getType = function(e3) {
+ let t3 = (e3 = String(e3)).replace(/^.*[/\\]/, "").toLowerCase(), n3 = t3.replace(/^.*\./, "").toLowerCase(), i4 = t3.length < e3.length;
+ return (n3.length < t3.length - 1 || !i4) && this._types[n3] || null;
+ }, i3.prototype.getExtension = function(e3) {
+ return (e3 = /^\s*([^;\s]*)/.test(e3) && RegExp.$1) && this._extensions[e3.toLowerCase()] || null;
+ }, e2.exports = i3;
+ }, function(e2, t2) {
+ e2.exports = { "application/andrew-inset": ["ez"], "application/applixware": ["aw"], "application/atom+xml": ["atom"], "application/atomcat+xml": ["atomcat"], "application/atomdeleted+xml": ["atomdeleted"], "application/atomsvc+xml": ["atomsvc"], "application/atsc-dwd+xml": ["dwd"], "application/atsc-held+xml": ["held"], "application/atsc-rsat+xml": ["rsat"], "application/bdoc": ["bdoc"], "application/calendar+xml": ["xcs"], "application/ccxml+xml": ["ccxml"], "application/cdfx+xml": ["cdfx"], "application/cdmi-capability": ["cdmia"], "application/cdmi-container": ["cdmic"], "application/cdmi-domain": ["cdmid"], "application/cdmi-object": ["cdmio"], "application/cdmi-queue": ["cdmiq"], "application/cu-seeme": ["cu"], "application/dash+xml": ["mpd"], "application/davmount+xml": ["davmount"], "application/docbook+xml": ["dbk"], "application/dssc+der": ["dssc"], "application/dssc+xml": ["xdssc"], "application/ecmascript": ["es", "ecma"], "application/emma+xml": ["emma"], "application/emotionml+xml": ["emotionml"], "application/epub+zip": ["epub"], "application/exi": ["exi"], "application/express": ["exp"], "application/fdt+xml": ["fdt"], "application/font-tdpfr": ["pfr"], "application/geo+json": ["geojson"], "application/gml+xml": ["gml"], "application/gpx+xml": ["gpx"], "application/gxf": ["gxf"], "application/gzip": ["gz"], "application/hjson": ["hjson"], "application/hyperstudio": ["stk"], "application/inkml+xml": ["ink", "inkml"], "application/ipfix": ["ipfix"], "application/its+xml": ["its"], "application/java-archive": ["jar", "war", "ear"], "application/java-serialized-object": ["ser"], "application/java-vm": ["class"], "application/javascript": ["js", "mjs"], "application/json": ["json", "map"], "application/json5": ["json5"], "application/jsonml+json": ["jsonml"], "application/ld+json": ["jsonld"], "application/lgr+xml": ["lgr"], "application/lost+xml": ["lostxml"], "application/mac-binhex40": ["hqx"], "application/mac-compactpro": ["cpt"], "application/mads+xml": ["mads"], "application/manifest+json": ["webmanifest"], "application/marc": ["mrc"], "application/marcxml+xml": ["mrcx"], "application/mathematica": ["ma", "nb", "mb"], "application/mathml+xml": ["mathml"], "application/mbox": ["mbox"], "application/mediaservercontrol+xml": ["mscml"], "application/metalink+xml": ["metalink"], "application/metalink4+xml": ["meta4"], "application/mets+xml": ["mets"], "application/mmt-aei+xml": ["maei"], "application/mmt-usd+xml": ["musd"], "application/mods+xml": ["mods"], "application/mp21": ["m21", "mp21"], "application/mp4": ["mp4s", "m4p"], "application/msword": ["doc", "dot"], "application/mxf": ["mxf"], "application/n-quads": ["nq"], "application/n-triples": ["nt"], "application/node": ["cjs"], "application/octet-stream": ["bin", "dms", "lrf", "mar", "so", "dist", "distz", "pkg", "bpk", "dump", "elc", "deploy", "exe", "dll", "deb", "dmg", "iso", "img", "msi", "msp", "msm", "buffer"], "application/oda": ["oda"], "application/oebps-package+xml": ["opf"], "application/ogg": ["ogx"], "application/omdoc+xml": ["omdoc"], "application/onenote": ["onetoc", "onetoc2", "onetmp", "onepkg"], "application/oxps": ["oxps"], "application/p2p-overlay+xml": ["relo"], "application/patch-ops-error+xml": ["xer"], "application/pdf": ["pdf"], "application/pgp-encrypted": ["pgp"], "application/pgp-signature": ["asc", "sig"], "application/pics-rules": ["prf"], "application/pkcs10": ["p10"], "application/pkcs7-mime": ["p7m", "p7c"], "application/pkcs7-signature": ["p7s"], "application/pkcs8": ["p8"], "application/pkix-attr-cert": ["ac"], "application/pkix-cert": ["cer"], "application/pkix-crl": ["crl"], "application/pkix-pkipath": ["pkipath"], "application/pkixcmp": ["pki"], "application/pls+xml": ["pls"], "application/postscript": ["ai", "eps", "ps"], "application/provenance+xml": ["provx"], "application/pskc+xml": ["pskcxml"], "application/raml+yaml": ["raml"], "application/rdf+xml": ["rdf", "owl"], "application/reginfo+xml": ["rif"], "application/relax-ng-compact-syntax": ["rnc"], "application/resource-lists+xml": ["rl"], "application/resource-lists-diff+xml": ["rld"], "application/rls-services+xml": ["rs"], "application/route-apd+xml": ["rapd"], "application/route-s-tsid+xml": ["sls"], "application/route-usd+xml": ["rusd"], "application/rpki-ghostbusters": ["gbr"], "application/rpki-manifest": ["mft"], "application/rpki-roa": ["roa"], "application/rsd+xml": ["rsd"], "application/rss+xml": ["rss"], "application/rtf": ["rtf"], "application/sbml+xml": ["sbml"], "application/scvp-cv-request": ["scq"], "application/scvp-cv-response": ["scs"], "application/scvp-vp-request": ["spq"], "application/scvp-vp-response": ["spp"], "application/sdp": ["sdp"], "application/senml+xml": ["senmlx"], "application/sensml+xml": ["sensmlx"], "application/set-payment-initiation": ["setpay"], "application/set-registration-initiation": ["setreg"], "application/shf+xml": ["shf"], "application/sieve": ["siv", "sieve"], "application/smil+xml": ["smi", "smil"], "application/sparql-query": ["rq"], "application/sparql-results+xml": ["srx"], "application/srgs": ["gram"], "application/srgs+xml": ["grxml"], "application/sru+xml": ["sru"], "application/ssdl+xml": ["ssdl"], "application/ssml+xml": ["ssml"], "application/swid+xml": ["swidtag"], "application/tei+xml": ["tei", "teicorpus"], "application/thraud+xml": ["tfi"], "application/timestamped-data": ["tsd"], "application/toml": ["toml"], "application/trig": ["trig"], "application/ttml+xml": ["ttml"], "application/ubjson": ["ubj"], "application/urc-ressheet+xml": ["rsheet"], "application/urc-targetdesc+xml": ["td"], "application/voicexml+xml": ["vxml"], "application/wasm": ["wasm"], "application/widget": ["wgt"], "application/winhlp": ["hlp"], "application/wsdl+xml": ["wsdl"], "application/wspolicy+xml": ["wspolicy"], "application/xaml+xml": ["xaml"], "application/xcap-att+xml": ["xav"], "application/xcap-caps+xml": ["xca"], "application/xcap-diff+xml": ["xdf"], "application/xcap-el+xml": ["xel"], "application/xcap-ns+xml": ["xns"], "application/xenc+xml": ["xenc"], "application/xhtml+xml": ["xhtml", "xht"], "application/xliff+xml": ["xlf"], "application/xml": ["xml", "xsl", "xsd", "rng"], "application/xml-dtd": ["dtd"], "application/xop+xml": ["xop"], "application/xproc+xml": ["xpl"], "application/xslt+xml": ["*xsl", "xslt"], "application/xspf+xml": ["xspf"], "application/xv+xml": ["mxml", "xhvml", "xvml", "xvm"], "application/yang": ["yang"], "application/yin+xml": ["yin"], "application/zip": ["zip"], "audio/3gpp": ["*3gpp"], "audio/adpcm": ["adp"], "audio/amr": ["amr"], "audio/basic": ["au", "snd"], "audio/midi": ["mid", "midi", "kar", "rmi"], "audio/mobile-xmf": ["mxmf"], "audio/mp3": ["*mp3"], "audio/mp4": ["m4a", "mp4a"], "audio/mpeg": ["mpga", "mp2", "mp2a", "mp3", "m2a", "m3a"], "audio/ogg": ["oga", "ogg", "spx", "opus"], "audio/s3m": ["s3m"], "audio/silk": ["sil"], "audio/wav": ["wav"], "audio/wave": ["*wav"], "audio/webm": ["weba"], "audio/xm": ["xm"], "font/collection": ["ttc"], "font/otf": ["otf"], "font/ttf": ["ttf"], "font/woff": ["woff"], "font/woff2": ["woff2"], "image/aces": ["exr"], "image/apng": ["apng"], "image/avif": ["avif"], "image/bmp": ["bmp"], "image/cgm": ["cgm"], "image/dicom-rle": ["drle"], "image/emf": ["emf"], "image/fits": ["fits"], "image/g3fax": ["g3"], "image/gif": ["gif"], "image/heic": ["heic"], "image/heic-sequence": ["heics"], "image/heif": ["heif"], "image/heif-sequence": ["heifs"], "image/hej2k": ["hej2"], "image/hsj2": ["hsj2"], "image/ief": ["ief"], "image/jls": ["jls"], "image/jp2": ["jp2", "jpg2"], "image/jpeg": ["jpeg", "jpg", "jpe"], "image/jph": ["jph"], "image/jphc": ["jhc"], "image/jpm": ["jpm"], "image/jpx": ["jpx", "jpf"], "image/jxr": ["jxr"], "image/jxra": ["jxra"], "image/jxrs": ["jxrs"], "image/jxs": ["jxs"], "image/jxsc": ["jxsc"], "image/jxsi": ["jxsi"], "image/jxss": ["jxss"], "image/ktx": ["ktx"], "image/ktx2": ["ktx2"], "image/png": ["png"], "image/sgi": ["sgi"], "image/svg+xml": ["svg", "svgz"], "image/t38": ["t38"], "image/tiff": ["tif", "tiff"], "image/tiff-fx": ["tfx"], "image/webp": ["webp"], "image/wmf": ["wmf"], "message/disposition-notification": ["disposition-notification"], "message/global": ["u8msg"], "message/global-delivery-status": ["u8dsn"], "message/global-disposition-notification": ["u8mdn"], "message/global-headers": ["u8hdr"], "message/rfc822": ["eml", "mime"], "model/3mf": ["3mf"], "model/gltf+json": ["gltf"], "model/gltf-binary": ["glb"], "model/iges": ["igs", "iges"], "model/mesh": ["msh", "mesh", "silo"], "model/mtl": ["mtl"], "model/obj": ["obj"], "model/step+xml": ["stpx"], "model/step+zip": ["stpz"], "model/step-xml+zip": ["stpxz"], "model/stl": ["stl"], "model/vrml": ["wrl", "vrml"], "model/x3d+binary": ["*x3db", "x3dbz"], "model/x3d+fastinfoset": ["x3db"], "model/x3d+vrml": ["*x3dv", "x3dvz"], "model/x3d+xml": ["x3d", "x3dz"], "model/x3d-vrml": ["x3dv"], "text/cache-manifest": ["appcache", "manifest"], "text/calendar": ["ics", "ifb"], "text/coffeescript": ["coffee", "litcoffee"], "text/css": ["css"], "text/csv": ["csv"], "text/html": ["html", "htm", "shtml"], "text/jade": ["jade"], "text/jsx": ["jsx"], "text/less": ["less"], "text/markdown": ["markdown", "md"], "text/mathml": ["mml"], "text/mdx": ["mdx"], "text/n3": ["n3"], "text/plain": ["txt", "text", "conf", "def", "list", "log", "in", "ini"], "text/richtext": ["rtx"], "text/rtf": ["*rtf"], "text/sgml": ["sgml", "sgm"], "text/shex": ["shex"], "text/slim": ["slim", "slm"], "text/spdx": ["spdx"], "text/stylus": ["stylus", "styl"], "text/tab-separated-values": ["tsv"], "text/troff": ["t", "tr", "roff", "man", "me", "ms"], "text/turtle": ["ttl"], "text/uri-list": ["uri", "uris", "urls"], "text/vcard": ["vcard"], "text/vtt": ["vtt"], "text/xml": ["*xml"], "text/yaml": ["yaml", "yml"], "video/3gpp": ["3gp", "3gpp"], "video/3gpp2": ["3g2"], "video/h261": ["h261"], "video/h263": ["h263"], "video/h264": ["h264"], "video/iso.segment": ["m4s"], "video/jpeg": ["jpgv"], "video/jpm": ["*jpm", "jpgm"], "video/mj2": ["mj2", "mjp2"], "video/mp2t": ["ts"], "video/mp4": ["mp4", "mp4v", "mpg4"], "video/mpeg": ["mpeg", "mpg", "mpe", "m1v", "m2v"], "video/ogg": ["ogv"], "video/quicktime": ["qt", "mov"], "video/webm": ["webm"] };
+ }, function(e2, t2) {
+ e2.exports = { "application/prs.cww": ["cww"], "application/vnd.1000minds.decision-model+xml": ["1km"], "application/vnd.3gpp.pic-bw-large": ["plb"], "application/vnd.3gpp.pic-bw-small": ["psb"], "application/vnd.3gpp.pic-bw-var": ["pvb"], "application/vnd.3gpp2.tcap": ["tcap"], "application/vnd.3m.post-it-notes": ["pwn"], "application/vnd.accpac.simply.aso": ["aso"], "application/vnd.accpac.simply.imp": ["imp"], "application/vnd.acucobol": ["acu"], "application/vnd.acucorp": ["atc", "acutc"], "application/vnd.adobe.air-application-installer-package+zip": ["air"], "application/vnd.adobe.formscentral.fcdt": ["fcdt"], "application/vnd.adobe.fxp": ["fxp", "fxpl"], "application/vnd.adobe.xdp+xml": ["xdp"], "application/vnd.adobe.xfdf": ["xfdf"], "application/vnd.ahead.space": ["ahead"], "application/vnd.airzip.filesecure.azf": ["azf"], "application/vnd.airzip.filesecure.azs": ["azs"], "application/vnd.amazon.ebook": ["azw"], "application/vnd.americandynamics.acc": ["acc"], "application/vnd.amiga.ami": ["ami"], "application/vnd.android.package-archive": ["apk"], "application/vnd.anser-web-certificate-issue-initiation": ["cii"], "application/vnd.anser-web-funds-transfer-initiation": ["fti"], "application/vnd.antix.game-component": ["atx"], "application/vnd.apple.installer+xml": ["mpkg"], "application/vnd.apple.keynote": ["key"], "application/vnd.apple.mpegurl": ["m3u8"], "application/vnd.apple.numbers": ["numbers"], "application/vnd.apple.pages": ["pages"], "application/vnd.apple.pkpass": ["pkpass"], "application/vnd.aristanetworks.swi": ["swi"], "application/vnd.astraea-software.iota": ["iota"], "application/vnd.audiograph": ["aep"], "application/vnd.balsamiq.bmml+xml": ["bmml"], "application/vnd.blueice.multipass": ["mpm"], "application/vnd.bmi": ["bmi"], "application/vnd.businessobjects": ["rep"], "application/vnd.chemdraw+xml": ["cdxml"], "application/vnd.chipnuts.karaoke-mmd": ["mmd"], "application/vnd.cinderella": ["cdy"], "application/vnd.citationstyles.style+xml": ["csl"], "application/vnd.claymore": ["cla"], "application/vnd.cloanto.rp9": ["rp9"], "application/vnd.clonk.c4group": ["c4g", "c4d", "c4f", "c4p", "c4u"], "application/vnd.cluetrust.cartomobile-config": ["c11amc"], "application/vnd.cluetrust.cartomobile-config-pkg": ["c11amz"], "application/vnd.commonspace": ["csp"], "application/vnd.contact.cmsg": ["cdbcmsg"], "application/vnd.cosmocaller": ["cmc"], "application/vnd.crick.clicker": ["clkx"], "application/vnd.crick.clicker.keyboard": ["clkk"], "application/vnd.crick.clicker.palette": ["clkp"], "application/vnd.crick.clicker.template": ["clkt"], "application/vnd.crick.clicker.wordbank": ["clkw"], "application/vnd.criticaltools.wbs+xml": ["wbs"], "application/vnd.ctc-posml": ["pml"], "application/vnd.cups-ppd": ["ppd"], "application/vnd.curl.car": ["car"], "application/vnd.curl.pcurl": ["pcurl"], "application/vnd.dart": ["dart"], "application/vnd.data-vision.rdz": ["rdz"], "application/vnd.dbf": ["dbf"], "application/vnd.dece.data": ["uvf", "uvvf", "uvd", "uvvd"], "application/vnd.dece.ttml+xml": ["uvt", "uvvt"], "application/vnd.dece.unspecified": ["uvx", "uvvx"], "application/vnd.dece.zip": ["uvz", "uvvz"], "application/vnd.denovo.fcselayout-link": ["fe_launch"], "application/vnd.dna": ["dna"], "application/vnd.dolby.mlp": ["mlp"], "application/vnd.dpgraph": ["dpg"], "application/vnd.dreamfactory": ["dfac"], "application/vnd.ds-keypoint": ["kpxx"], "application/vnd.dvb.ait": ["ait"], "application/vnd.dvb.service": ["svc"], "application/vnd.dynageo": ["geo"], "application/vnd.ecowin.chart": ["mag"], "application/vnd.enliven": ["nml"], "application/vnd.epson.esf": ["esf"], "application/vnd.epson.msf": ["msf"], "application/vnd.epson.quickanime": ["qam"], "application/vnd.epson.salt": ["slt"], "application/vnd.epson.ssf": ["ssf"], "application/vnd.eszigno3+xml": ["es3", "et3"], "application/vnd.ezpix-album": ["ez2"], "application/vnd.ezpix-package": ["ez3"], "application/vnd.fdf": ["fdf"], "application/vnd.fdsn.mseed": ["mseed"], "application/vnd.fdsn.seed": ["seed", "dataless"], "application/vnd.flographit": ["gph"], "application/vnd.fluxtime.clip": ["ftc"], "application/vnd.framemaker": ["fm", "frame", "maker", "book"], "application/vnd.frogans.fnc": ["fnc"], "application/vnd.frogans.ltf": ["ltf"], "application/vnd.fsc.weblaunch": ["fsc"], "application/vnd.fujitsu.oasys": ["oas"], "application/vnd.fujitsu.oasys2": ["oa2"], "application/vnd.fujitsu.oasys3": ["oa3"], "application/vnd.fujitsu.oasysgp": ["fg5"], "application/vnd.fujitsu.oasysprs": ["bh2"], "application/vnd.fujixerox.ddd": ["ddd"], "application/vnd.fujixerox.docuworks": ["xdw"], "application/vnd.fujixerox.docuworks.binder": ["xbd"], "application/vnd.fuzzysheet": ["fzs"], "application/vnd.genomatix.tuxedo": ["txd"], "application/vnd.geogebra.file": ["ggb"], "application/vnd.geogebra.tool": ["ggt"], "application/vnd.geometry-explorer": ["gex", "gre"], "application/vnd.geonext": ["gxt"], "application/vnd.geoplan": ["g2w"], "application/vnd.geospace": ["g3w"], "application/vnd.gmx": ["gmx"], "application/vnd.google-apps.document": ["gdoc"], "application/vnd.google-apps.presentation": ["gslides"], "application/vnd.google-apps.spreadsheet": ["gsheet"], "application/vnd.google-earth.kml+xml": ["kml"], "application/vnd.google-earth.kmz": ["kmz"], "application/vnd.grafeq": ["gqf", "gqs"], "application/vnd.groove-account": ["gac"], "application/vnd.groove-help": ["ghf"], "application/vnd.groove-identity-message": ["gim"], "application/vnd.groove-injector": ["grv"], "application/vnd.groove-tool-message": ["gtm"], "application/vnd.groove-tool-template": ["tpl"], "application/vnd.groove-vcard": ["vcg"], "application/vnd.hal+xml": ["hal"], "application/vnd.handheld-entertainment+xml": ["zmm"], "application/vnd.hbci": ["hbci"], "application/vnd.hhe.lesson-player": ["les"], "application/vnd.hp-hpgl": ["hpgl"], "application/vnd.hp-hpid": ["hpid"], "application/vnd.hp-hps": ["hps"], "application/vnd.hp-jlyt": ["jlt"], "application/vnd.hp-pcl": ["pcl"], "application/vnd.hp-pclxl": ["pclxl"], "application/vnd.hydrostatix.sof-data": ["sfd-hdstx"], "application/vnd.ibm.minipay": ["mpy"], "application/vnd.ibm.modcap": ["afp", "listafp", "list3820"], "application/vnd.ibm.rights-management": ["irm"], "application/vnd.ibm.secure-container": ["sc"], "application/vnd.iccprofile": ["icc", "icm"], "application/vnd.igloader": ["igl"], "application/vnd.immervision-ivp": ["ivp"], "application/vnd.immervision-ivu": ["ivu"], "application/vnd.insors.igm": ["igm"], "application/vnd.intercon.formnet": ["xpw", "xpx"], "application/vnd.intergeo": ["i2g"], "application/vnd.intu.qbo": ["qbo"], "application/vnd.intu.qfx": ["qfx"], "application/vnd.ipunplugged.rcprofile": ["rcprofile"], "application/vnd.irepository.package+xml": ["irp"], "application/vnd.is-xpr": ["xpr"], "application/vnd.isac.fcs": ["fcs"], "application/vnd.jam": ["jam"], "application/vnd.jcp.javame.midlet-rms": ["rms"], "application/vnd.jisp": ["jisp"], "application/vnd.joost.joda-archive": ["joda"], "application/vnd.kahootz": ["ktz", "ktr"], "application/vnd.kde.karbon": ["karbon"], "application/vnd.kde.kchart": ["chrt"], "application/vnd.kde.kformula": ["kfo"], "application/vnd.kde.kivio": ["flw"], "application/vnd.kde.kontour": ["kon"], "application/vnd.kde.kpresenter": ["kpr", "kpt"], "application/vnd.kde.kspread": ["ksp"], "application/vnd.kde.kword": ["kwd", "kwt"], "application/vnd.kenameaapp": ["htke"], "application/vnd.kidspiration": ["kia"], "application/vnd.kinar": ["kne", "knp"], "application/vnd.koan": ["skp", "skd", "skt", "skm"], "application/vnd.kodak-descriptor": ["sse"], "application/vnd.las.las+xml": ["lasxml"], "application/vnd.llamagraphics.life-balance.desktop": ["lbd"], "application/vnd.llamagraphics.life-balance.exchange+xml": ["lbe"], "application/vnd.lotus-1-2-3": ["123"], "application/vnd.lotus-approach": ["apr"], "application/vnd.lotus-freelance": ["pre"], "application/vnd.lotus-notes": ["nsf"], "application/vnd.lotus-organizer": ["org"], "application/vnd.lotus-screencam": ["scm"], "application/vnd.lotus-wordpro": ["lwp"], "application/vnd.macports.portpkg": ["portpkg"], "application/vnd.mapbox-vector-tile": ["mvt"], "application/vnd.mcd": ["mcd"], "application/vnd.medcalcdata": ["mc1"], "application/vnd.mediastation.cdkey": ["cdkey"], "application/vnd.mfer": ["mwf"], "application/vnd.mfmp": ["mfm"], "application/vnd.micrografx.flo": ["flo"], "application/vnd.micrografx.igx": ["igx"], "application/vnd.mif": ["mif"], "application/vnd.mobius.daf": ["daf"], "application/vnd.mobius.dis": ["dis"], "application/vnd.mobius.mbk": ["mbk"], "application/vnd.mobius.mqy": ["mqy"], "application/vnd.mobius.msl": ["msl"], "application/vnd.mobius.plc": ["plc"], "application/vnd.mobius.txf": ["txf"], "application/vnd.mophun.application": ["mpn"], "application/vnd.mophun.certificate": ["mpc"], "application/vnd.mozilla.xul+xml": ["xul"], "application/vnd.ms-artgalry": ["cil"], "application/vnd.ms-cab-compressed": ["cab"], "application/vnd.ms-excel": ["xls", "xlm", "xla", "xlc", "xlt", "xlw"], "application/vnd.ms-excel.addin.macroenabled.12": ["xlam"], "application/vnd.ms-excel.sheet.binary.macroenabled.12": ["xlsb"], "application/vnd.ms-excel.sheet.macroenabled.12": ["xlsm"], "application/vnd.ms-excel.template.macroenabled.12": ["xltm"], "application/vnd.ms-fontobject": ["eot"], "application/vnd.ms-htmlhelp": ["chm"], "application/vnd.ms-ims": ["ims"], "application/vnd.ms-lrm": ["lrm"], "application/vnd.ms-officetheme": ["thmx"], "application/vnd.ms-outlook": ["msg"], "application/vnd.ms-pki.seccat": ["cat"], "application/vnd.ms-pki.stl": ["*stl"], "application/vnd.ms-powerpoint": ["ppt", "pps", "pot"], "application/vnd.ms-powerpoint.addin.macroenabled.12": ["ppam"], "application/vnd.ms-powerpoint.presentation.macroenabled.12": ["pptm"], "application/vnd.ms-powerpoint.slide.macroenabled.12": ["sldm"], "application/vnd.ms-powerpoint.slideshow.macroenabled.12": ["ppsm"], "application/vnd.ms-powerpoint.template.macroenabled.12": ["potm"], "application/vnd.ms-project": ["mpp", "mpt"], "application/vnd.ms-word.document.macroenabled.12": ["docm"], "application/vnd.ms-word.template.macroenabled.12": ["dotm"], "application/vnd.ms-works": ["wps", "wks", "wcm", "wdb"], "application/vnd.ms-wpl": ["wpl"], "application/vnd.ms-xpsdocument": ["xps"], "application/vnd.mseq": ["mseq"], "application/vnd.musician": ["mus"], "application/vnd.muvee.style": ["msty"], "application/vnd.mynfc": ["taglet"], "application/vnd.neurolanguage.nlu": ["nlu"], "application/vnd.nitf": ["ntf", "nitf"], "application/vnd.noblenet-directory": ["nnd"], "application/vnd.noblenet-sealer": ["nns"], "application/vnd.noblenet-web": ["nnw"], "application/vnd.nokia.n-gage.ac+xml": ["*ac"], "application/vnd.nokia.n-gage.data": ["ngdat"], "application/vnd.nokia.n-gage.symbian.install": ["n-gage"], "application/vnd.nokia.radio-preset": ["rpst"], "application/vnd.nokia.radio-presets": ["rpss"], "application/vnd.novadigm.edm": ["edm"], "application/vnd.novadigm.edx": ["edx"], "application/vnd.novadigm.ext": ["ext"], "application/vnd.oasis.opendocument.chart": ["odc"], "application/vnd.oasis.opendocument.chart-template": ["otc"], "application/vnd.oasis.opendocument.database": ["odb"], "application/vnd.oasis.opendocument.formula": ["odf"], "application/vnd.oasis.opendocument.formula-template": ["odft"], "application/vnd.oasis.opendocument.graphics": ["odg"], "application/vnd.oasis.opendocument.graphics-template": ["otg"], "application/vnd.oasis.opendocument.image": ["odi"], "application/vnd.oasis.opendocument.image-template": ["oti"], "application/vnd.oasis.opendocument.presentation": ["odp"], "application/vnd.oasis.opendocument.presentation-template": ["otp"], "application/vnd.oasis.opendocument.spreadsheet": ["ods"], "application/vnd.oasis.opendocument.spreadsheet-template": ["ots"], "application/vnd.oasis.opendocument.text": ["odt"], "application/vnd.oasis.opendocument.text-master": ["odm"], "application/vnd.oasis.opendocument.text-template": ["ott"], "application/vnd.oasis.opendocument.text-web": ["oth"], "application/vnd.olpc-sugar": ["xo"], "application/vnd.oma.dd2+xml": ["dd2"], "application/vnd.openblox.game+xml": ["obgx"], "application/vnd.openofficeorg.extension": ["oxt"], "application/vnd.openstreetmap.data+xml": ["osm"], "application/vnd.openxmlformats-officedocument.presentationml.presentation": ["pptx"], "application/vnd.openxmlformats-officedocument.presentationml.slide": ["sldx"], "application/vnd.openxmlformats-officedocument.presentationml.slideshow": ["ppsx"], "application/vnd.openxmlformats-officedocument.presentationml.template": ["potx"], "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": ["xlsx"], "application/vnd.openxmlformats-officedocument.spreadsheetml.template": ["xltx"], "application/vnd.openxmlformats-officedocument.wordprocessingml.document": ["docx"], "application/vnd.openxmlformats-officedocument.wordprocessingml.template": ["dotx"], "application/vnd.osgeo.mapguide.package": ["mgp"], "application/vnd.osgi.dp": ["dp"], "application/vnd.osgi.subsystem": ["esa"], "application/vnd.palm": ["pdb", "pqa", "oprc"], "application/vnd.pawaafile": ["paw"], "application/vnd.pg.format": ["str"], "application/vnd.pg.osasli": ["ei6"], "application/vnd.picsel": ["efif"], "application/vnd.pmi.widget": ["wg"], "application/vnd.pocketlearn": ["plf"], "application/vnd.powerbuilder6": ["pbd"], "application/vnd.previewsystems.box": ["box"], "application/vnd.proteus.magazine": ["mgz"], "application/vnd.publishare-delta-tree": ["qps"], "application/vnd.pvi.ptid1": ["ptid"], "application/vnd.quark.quarkxpress": ["qxd", "qxt", "qwd", "qwt", "qxl", "qxb"], "application/vnd.rar": ["rar"], "application/vnd.realvnc.bed": ["bed"], "application/vnd.recordare.musicxml": ["mxl"], "application/vnd.recordare.musicxml+xml": ["musicxml"], "application/vnd.rig.cryptonote": ["cryptonote"], "application/vnd.rim.cod": ["cod"], "application/vnd.rn-realmedia": ["rm"], "application/vnd.rn-realmedia-vbr": ["rmvb"], "application/vnd.route66.link66+xml": ["link66"], "application/vnd.sailingtracker.track": ["st"], "application/vnd.seemail": ["see"], "application/vnd.sema": ["sema"], "application/vnd.semd": ["semd"], "application/vnd.semf": ["semf"], "application/vnd.shana.informed.formdata": ["ifm"], "application/vnd.shana.informed.formtemplate": ["itp"], "application/vnd.shana.informed.interchange": ["iif"], "application/vnd.shana.informed.package": ["ipk"], "application/vnd.simtech-mindmapper": ["twd", "twds"], "application/vnd.smaf": ["mmf"], "application/vnd.smart.teacher": ["teacher"], "application/vnd.software602.filler.form+xml": ["fo"], "application/vnd.solent.sdkm+xml": ["sdkm", "sdkd"], "application/vnd.spotfire.dxp": ["dxp"], "application/vnd.spotfire.sfs": ["sfs"], "application/vnd.stardivision.calc": ["sdc"], "application/vnd.stardivision.draw": ["sda"], "application/vnd.stardivision.impress": ["sdd"], "application/vnd.stardivision.math": ["smf"], "application/vnd.stardivision.writer": ["sdw", "vor"], "application/vnd.stardivision.writer-global": ["sgl"], "application/vnd.stepmania.package": ["smzip"], "application/vnd.stepmania.stepchart": ["sm"], "application/vnd.sun.wadl+xml": ["wadl"], "application/vnd.sun.xml.calc": ["sxc"], "application/vnd.sun.xml.calc.template": ["stc"], "application/vnd.sun.xml.draw": ["sxd"], "application/vnd.sun.xml.draw.template": ["std"], "application/vnd.sun.xml.impress": ["sxi"], "application/vnd.sun.xml.impress.template": ["sti"], "application/vnd.sun.xml.math": ["sxm"], "application/vnd.sun.xml.writer": ["sxw"], "application/vnd.sun.xml.writer.global": ["sxg"], "application/vnd.sun.xml.writer.template": ["stw"], "application/vnd.sus-calendar": ["sus", "susp"], "application/vnd.svd": ["svd"], "application/vnd.symbian.install": ["sis", "sisx"], "application/vnd.syncml+xml": ["xsm"], "application/vnd.syncml.dm+wbxml": ["bdm"], "application/vnd.syncml.dm+xml": ["xdm"], "application/vnd.syncml.dmddf+xml": ["ddf"], "application/vnd.tao.intent-module-archive": ["tao"], "application/vnd.tcpdump.pcap": ["pcap", "cap", "dmp"], "application/vnd.tmobile-livetv": ["tmo"], "application/vnd.trid.tpt": ["tpt"], "application/vnd.triscape.mxs": ["mxs"], "application/vnd.trueapp": ["tra"], "application/vnd.ufdl": ["ufd", "ufdl"], "application/vnd.uiq.theme": ["utz"], "application/vnd.umajin": ["umj"], "application/vnd.unity": ["unityweb"], "application/vnd.uoml+xml": ["uoml"], "application/vnd.vcx": ["vcx"], "application/vnd.visio": ["vsd", "vst", "vss", "vsw"], "application/vnd.visionary": ["vis"], "application/vnd.vsf": ["vsf"], "application/vnd.wap.wbxml": ["wbxml"], "application/vnd.wap.wmlc": ["wmlc"], "application/vnd.wap.wmlscriptc": ["wmlsc"], "application/vnd.webturbo": ["wtb"], "application/vnd.wolfram.player": ["nbp"], "application/vnd.wordperfect": ["wpd"], "application/vnd.wqd": ["wqd"], "application/vnd.wt.stf": ["stf"], "application/vnd.xara": ["xar"], "application/vnd.xfdl": ["xfdl"], "application/vnd.yamaha.hv-dic": ["hvd"], "application/vnd.yamaha.hv-script": ["hvs"], "application/vnd.yamaha.hv-voice": ["hvp"], "application/vnd.yamaha.openscoreformat": ["osf"], "application/vnd.yamaha.openscoreformat.osfpvg+xml": ["osfpvg"], "application/vnd.yamaha.smaf-audio": ["saf"], "application/vnd.yamaha.smaf-phrase": ["spf"], "application/vnd.yellowriver-custom-menu": ["cmp"], "application/vnd.zul": ["zir", "zirz"], "application/vnd.zzazz.deck+xml": ["zaz"], "application/x-7z-compressed": ["7z"], "application/x-abiword": ["abw"], "application/x-ace-compressed": ["ace"], "application/x-apple-diskimage": ["*dmg"], "application/x-arj": ["arj"], "application/x-authorware-bin": ["aab", "x32", "u32", "vox"], "application/x-authorware-map": ["aam"], "application/x-authorware-seg": ["aas"], "application/x-bcpio": ["bcpio"], "application/x-bdoc": ["*bdoc"], "application/x-bittorrent": ["torrent"], "application/x-blorb": ["blb", "blorb"], "application/x-bzip": ["bz"], "application/x-bzip2": ["bz2", "boz"], "application/x-cbr": ["cbr", "cba", "cbt", "cbz", "cb7"], "application/x-cdlink": ["vcd"], "application/x-cfs-compressed": ["cfs"], "application/x-chat": ["chat"], "application/x-chess-pgn": ["pgn"], "application/x-chrome-extension": ["crx"], "application/x-cocoa": ["cco"], "application/x-conference": ["nsc"], "application/x-cpio": ["cpio"], "application/x-csh": ["csh"], "application/x-debian-package": ["*deb", "udeb"], "application/x-dgc-compressed": ["dgc"], "application/x-director": ["dir", "dcr", "dxr", "cst", "cct", "cxt", "w3d", "fgd", "swa"], "application/x-doom": ["wad"], "application/x-dtbncx+xml": ["ncx"], "application/x-dtbook+xml": ["dtb"], "application/x-dtbresource+xml": ["res"], "application/x-dvi": ["dvi"], "application/x-envoy": ["evy"], "application/x-eva": ["eva"], "application/x-font-bdf": ["bdf"], "application/x-font-ghostscript": ["gsf"], "application/x-font-linux-psf": ["psf"], "application/x-font-pcf": ["pcf"], "application/x-font-snf": ["snf"], "application/x-font-type1": ["pfa", "pfb", "pfm", "afm"], "application/x-freearc": ["arc"], "application/x-futuresplash": ["spl"], "application/x-gca-compressed": ["gca"], "application/x-glulx": ["ulx"], "application/x-gnumeric": ["gnumeric"], "application/x-gramps-xml": ["gramps"], "application/x-gtar": ["gtar"], "application/x-hdf": ["hdf"], "application/x-httpd-php": ["php"], "application/x-install-instructions": ["install"], "application/x-iso9660-image": ["*iso"], "application/x-iwork-keynote-sffkey": ["*key"], "application/x-iwork-numbers-sffnumbers": ["*numbers"], "application/x-iwork-pages-sffpages": ["*pages"], "application/x-java-archive-diff": ["jardiff"], "application/x-java-jnlp-file": ["jnlp"], "application/x-keepass2": ["kdbx"], "application/x-latex": ["latex"], "application/x-lua-bytecode": ["luac"], "application/x-lzh-compressed": ["lzh", "lha"], "application/x-makeself": ["run"], "application/x-mie": ["mie"], "application/x-mobipocket-ebook": ["prc", "mobi"], "application/x-ms-application": ["application"], "application/x-ms-shortcut": ["lnk"], "application/x-ms-wmd": ["wmd"], "application/x-ms-wmz": ["wmz"], "application/x-ms-xbap": ["xbap"], "application/x-msaccess": ["mdb"], "application/x-msbinder": ["obd"], "application/x-mscardfile": ["crd"], "application/x-msclip": ["clp"], "application/x-msdos-program": ["*exe"], "application/x-msdownload": ["*exe", "*dll", "com", "bat", "*msi"], "application/x-msmediaview": ["mvb", "m13", "m14"], "application/x-msmetafile": ["*wmf", "*wmz", "*emf", "emz"], "application/x-msmoney": ["mny"], "application/x-mspublisher": ["pub"], "application/x-msschedule": ["scd"], "application/x-msterminal": ["trm"], "application/x-mswrite": ["wri"], "application/x-netcdf": ["nc", "cdf"], "application/x-ns-proxy-autoconfig": ["pac"], "application/x-nzb": ["nzb"], "application/x-perl": ["pl", "pm"], "application/x-pilot": ["*prc", "*pdb"], "application/x-pkcs12": ["p12", "pfx"], "application/x-pkcs7-certificates": ["p7b", "spc"], "application/x-pkcs7-certreqresp": ["p7r"], "application/x-rar-compressed": ["*rar"], "application/x-redhat-package-manager": ["rpm"], "application/x-research-info-systems": ["ris"], "application/x-sea": ["sea"], "application/x-sh": ["sh"], "application/x-shar": ["shar"], "application/x-shockwave-flash": ["swf"], "application/x-silverlight-app": ["xap"], "application/x-sql": ["sql"], "application/x-stuffit": ["sit"], "application/x-stuffitx": ["sitx"], "application/x-subrip": ["srt"], "application/x-sv4cpio": ["sv4cpio"], "application/x-sv4crc": ["sv4crc"], "application/x-t3vm-image": ["t3"], "application/x-tads": ["gam"], "application/x-tar": ["tar"], "application/x-tcl": ["tcl", "tk"], "application/x-tex": ["tex"], "application/x-tex-tfm": ["tfm"], "application/x-texinfo": ["texinfo", "texi"], "application/x-tgif": ["*obj"], "application/x-ustar": ["ustar"], "application/x-virtualbox-hdd": ["hdd"], "application/x-virtualbox-ova": ["ova"], "application/x-virtualbox-ovf": ["ovf"], "application/x-virtualbox-vbox": ["vbox"], "application/x-virtualbox-vbox-extpack": ["vbox-extpack"], "application/x-virtualbox-vdi": ["vdi"], "application/x-virtualbox-vhd": ["vhd"], "application/x-virtualbox-vmdk": ["vmdk"], "application/x-wais-source": ["src"], "application/x-web-app-manifest+json": ["webapp"], "application/x-x509-ca-cert": ["der", "crt", "pem"], "application/x-xfig": ["fig"], "application/x-xliff+xml": ["*xlf"], "application/x-xpinstall": ["xpi"], "application/x-xz": ["xz"], "application/x-zmachine": ["z1", "z2", "z3", "z4", "z5", "z6", "z7", "z8"], "audio/vnd.dece.audio": ["uva", "uvva"], "audio/vnd.digital-winds": ["eol"], "audio/vnd.dra": ["dra"], "audio/vnd.dts": ["dts"], "audio/vnd.dts.hd": ["dtshd"], "audio/vnd.lucent.voice": ["lvp"], "audio/vnd.ms-playready.media.pya": ["pya"], "audio/vnd.nuera.ecelp4800": ["ecelp4800"], "audio/vnd.nuera.ecelp7470": ["ecelp7470"], "audio/vnd.nuera.ecelp9600": ["ecelp9600"], "audio/vnd.rip": ["rip"], "audio/x-aac": ["aac"], "audio/x-aiff": ["aif", "aiff", "aifc"], "audio/x-caf": ["caf"], "audio/x-flac": ["flac"], "audio/x-m4a": ["*m4a"], "audio/x-matroska": ["mka"], "audio/x-mpegurl": ["m3u"], "audio/x-ms-wax": ["wax"], "audio/x-ms-wma": ["wma"], "audio/x-pn-realaudio": ["ram", "ra"], "audio/x-pn-realaudio-plugin": ["rmp"], "audio/x-realaudio": ["*ra"], "audio/x-wav": ["*wav"], "chemical/x-cdx": ["cdx"], "chemical/x-cif": ["cif"], "chemical/x-cmdf": ["cmdf"], "chemical/x-cml": ["cml"], "chemical/x-csml": ["csml"], "chemical/x-xyz": ["xyz"], "image/prs.btif": ["btif"], "image/prs.pti": ["pti"], "image/vnd.adobe.photoshop": ["psd"], "image/vnd.airzip.accelerator.azv": ["azv"], "image/vnd.dece.graphic": ["uvi", "uvvi", "uvg", "uvvg"], "image/vnd.djvu": ["djvu", "djv"], "image/vnd.dvb.subtitle": ["*sub"], "image/vnd.dwg": ["dwg"], "image/vnd.dxf": ["dxf"], "image/vnd.fastbidsheet": ["fbs"], "image/vnd.fpx": ["fpx"], "image/vnd.fst": ["fst"], "image/vnd.fujixerox.edmics-mmr": ["mmr"], "image/vnd.fujixerox.edmics-rlc": ["rlc"], "image/vnd.microsoft.icon": ["ico"], "image/vnd.ms-dds": ["dds"], "image/vnd.ms-modi": ["mdi"], "image/vnd.ms-photo": ["wdp"], "image/vnd.net-fpx": ["npx"], "image/vnd.pco.b16": ["b16"], "image/vnd.tencent.tap": ["tap"], "image/vnd.valve.source.texture": ["vtf"], "image/vnd.wap.wbmp": ["wbmp"], "image/vnd.xiff": ["xif"], "image/vnd.zbrush.pcx": ["pcx"], "image/x-3ds": ["3ds"], "image/x-cmu-raster": ["ras"], "image/x-cmx": ["cmx"], "image/x-freehand": ["fh", "fhc", "fh4", "fh5", "fh7"], "image/x-icon": ["*ico"], "image/x-jng": ["jng"], "image/x-mrsid-image": ["sid"], "image/x-ms-bmp": ["*bmp"], "image/x-pcx": ["*pcx"], "image/x-pict": ["pic", "pct"], "image/x-portable-anymap": ["pnm"], "image/x-portable-bitmap": ["pbm"], "image/x-portable-graymap": ["pgm"], "image/x-portable-pixmap": ["ppm"], "image/x-rgb": ["rgb"], "image/x-tga": ["tga"], "image/x-xbitmap": ["xbm"], "image/x-xpixmap": ["xpm"], "image/x-xwindowdump": ["xwd"], "message/vnd.wfa.wsc": ["wsc"], "model/vnd.collada+xml": ["dae"], "model/vnd.dwf": ["dwf"], "model/vnd.gdl": ["gdl"], "model/vnd.gtw": ["gtw"], "model/vnd.mts": ["mts"], "model/vnd.opengex": ["ogex"], "model/vnd.parasolid.transmit.binary": ["x_b"], "model/vnd.parasolid.transmit.text": ["x_t"], "model/vnd.sap.vds": ["vds"], "model/vnd.usdz+zip": ["usdz"], "model/vnd.valve.source.compiled-map": ["bsp"], "model/vnd.vtu": ["vtu"], "text/prs.lines.tag": ["dsc"], "text/vnd.curl": ["curl"], "text/vnd.curl.dcurl": ["dcurl"], "text/vnd.curl.mcurl": ["mcurl"], "text/vnd.curl.scurl": ["scurl"], "text/vnd.dvb.subtitle": ["sub"], "text/vnd.fly": ["fly"], "text/vnd.fmi.flexstor": ["flx"], "text/vnd.graphviz": ["gv"], "text/vnd.in3d.3dml": ["3dml"], "text/vnd.in3d.spot": ["spot"], "text/vnd.sun.j2me.app-descriptor": ["jad"], "text/vnd.wap.wml": ["wml"], "text/vnd.wap.wmlscript": ["wmls"], "text/x-asm": ["s", "asm"], "text/x-c": ["c", "cc", "cxx", "cpp", "h", "hh", "dic"], "text/x-component": ["htc"], "text/x-fortran": ["f", "for", "f77", "f90"], "text/x-handlebars-template": ["hbs"], "text/x-java-source": ["java"], "text/x-lua": ["lua"], "text/x-markdown": ["mkd"], "text/x-nfo": ["nfo"], "text/x-opml": ["opml"], "text/x-org": ["*org"], "text/x-pascal": ["p", "pas"], "text/x-processing": ["pde"], "text/x-sass": ["sass"], "text/x-scss": ["scss"], "text/x-setext": ["etx"], "text/x-sfv": ["sfv"], "text/x-suse-ymp": ["ymp"], "text/x-uuencode": ["uu"], "text/x-vcalendar": ["vcs"], "text/x-vcard": ["vcf"], "video/vnd.dece.hd": ["uvh", "uvvh"], "video/vnd.dece.mobile": ["uvm", "uvvm"], "video/vnd.dece.pd": ["uvp", "uvvp"], "video/vnd.dece.sd": ["uvs", "uvvs"], "video/vnd.dece.video": ["uvv", "uvvv"], "video/vnd.dvb.file": ["dvb"], "video/vnd.fvt": ["fvt"], "video/vnd.mpegurl": ["mxu", "m4u"], "video/vnd.ms-playready.media.pyv": ["pyv"], "video/vnd.uvvu.mp4": ["uvu", "uvvu"], "video/vnd.vivo": ["viv"], "video/x-f4v": ["f4v"], "video/x-fli": ["fli"], "video/x-flv": ["flv"], "video/x-m4v": ["m4v"], "video/x-matroska": ["mkv", "mk3d", "mks"], "video/x-mng": ["mng"], "video/x-ms-asf": ["asf", "asx"], "video/x-ms-vob": ["vob"], "video/x-ms-wm": ["wm"], "video/x-ms-wmv": ["wmv"], "video/x-ms-wmx": ["wmx"], "video/x-ms-wvx": ["wvx"], "video/x-msvideo": ["avi"], "video/x-sgi-movie": ["movie"], "video/x-smv": ["smv"], "x-conference/x-cooltalk": ["ice"] };
+ }, function(e2, t2, n2) {
+ function i3() {
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
+ i3 = function() {
+ return t3;
+ };
+ var e3, t3 = {}, n3 = Object.prototype, a3 = n3.hasOwnProperty, r4 = Object.defineProperty || function(e4, t4, n4) {
+ e4[t4] = n4.value;
+ }, s4 = "function" == typeof Symbol ? Symbol : {}, c3 = s4.iterator || "@@iterator", l3 = s4.asyncIterator || "@@asyncIterator", p4 = s4.toStringTag || "@@toStringTag";
+ function u3(e4, t4, n4) {
+ return Object.defineProperty(e4, t4, { value: n4, enumerable: true, configurable: true, writable: true }), e4[t4];
+ }
+ try {
+ u3({}, "");
+ } catch (e4) {
+ u3 = function(e5, t4, n4) {
+ return e5[t4] = n4;
+ };
+ }
+ function d3(e4, t4, n4, i4) {
+ var o3 = t4 && t4.prototype instanceof x3 ? t4 : x3, a4 = Object.create(o3.prototype), s5 = new j2(i4 || []);
+ return r4(a4, "_invoke", { value: A2(e4, n4, s5) }), a4;
+ }
+ function f3(e4, t4, n4) {
+ try {
+ return { type: "normal", arg: e4.call(t4, n4) };
+ } catch (e5) {
+ return { type: "throw", arg: e5 };
+ }
+ }
+ t3.wrap = d3;
+ var m3 = "suspendedStart", h3 = "suspendedYield", g3 = "executing", v4 = "completed", y3 = {};
+ function x3() {
+ }
+ function k3() {
+ }
+ function b3() {
+ }
+ var C3 = {};
+ u3(C3, c3, function() {
+ return this;
+ });
+ var S2 = Object.getPrototypeOf, w2 = S2 && S2(S2(I2([])));
+ w2 && w2 !== n3 && a3.call(w2, c3) && (C3 = w2);
+ var T2 = b3.prototype = x3.prototype = Object.create(C3);
+ function R2(e4) {
+ ["next", "throw", "return"].forEach(function(t4) {
+ u3(e4, t4, function(e5) {
+ return this._invoke(t4, e5);
+ });
+ });
+ }
+ function B2(e4, t4) {
+ function n4(i5, r5, s5, c4) {
+ var l4 = f3(e4[i5], e4, r5);
+ if ("throw" !== l4.type) {
+ var p5 = l4.arg, u4 = p5.value;
+ return u4 && "object" == o2(u4) && a3.call(u4, "__await") ? t4.resolve(u4.__await).then(function(e5) {
+ n4("next", e5, s5, c4);
+ }, function(e5) {
+ n4("throw", e5, s5, c4);
+ }) : t4.resolve(u4).then(function(e5) {
+ p5.value = e5, s5(p5);
+ }, function(e5) {
+ return n4("throw", e5, s5, c4);
+ });
+ }
+ c4(l4.arg);
+ }
+ var i4;
+ r4(this, "_invoke", { value: function(e5, o3) {
+ function a4() {
+ return new t4(function(t5, i5) {
+ n4(e5, o3, t5, i5);
+ });
+ }
+ return i4 = i4 ? i4.then(a4, a4) : a4();
+ } });
+ }
+ function A2(t4, n4, i4) {
+ var o3 = m3;
+ return function(a4, r5) {
+ if (o3 === g3)
+ throw Error("Generator is already running");
+ if (o3 === v4) {
+ if ("throw" === a4)
+ throw r5;
+ return { value: e3, done: true };
+ }
+ for (i4.method = a4, i4.arg = r5; ; ) {
+ var s5 = i4.delegate;
+ if (s5) {
+ var c4 = P2(s5, i4);
+ if (c4) {
+ if (c4 === y3)
+ continue;
+ return c4;
+ }
+ }
+ if ("next" === i4.method)
+ i4.sent = i4._sent = i4.arg;
+ else if ("throw" === i4.method) {
+ if (o3 === m3)
+ throw o3 = v4, i4.arg;
+ i4.dispatchException(i4.arg);
+ } else
+ "return" === i4.method && i4.abrupt("return", i4.arg);
+ o3 = g3;
+ var l4 = f3(t4, n4, i4);
+ if ("normal" === l4.type) {
+ if (o3 = i4.done ? v4 : h3, l4.arg === y3)
+ continue;
+ return { value: l4.arg, done: i4.done };
+ }
+ "throw" === l4.type && (o3 = v4, i4.method = "throw", i4.arg = l4.arg);
+ }
+ };
+ }
+ function P2(t4, n4) {
+ var i4 = n4.method, o3 = t4.iterator[i4];
+ if (o3 === e3)
+ return n4.delegate = null, "throw" === i4 && t4.iterator.return && (n4.method = "return", n4.arg = e3, P2(t4, n4), "throw" === n4.method) || "return" !== i4 && (n4.method = "throw", n4.arg = new TypeError("The iterator does not provide a '" + i4 + "' method")), y3;
+ var a4 = f3(o3, t4.iterator, n4.arg);
+ if ("throw" === a4.type)
+ return n4.method = "throw", n4.arg = a4.arg, n4.delegate = null, y3;
+ var r5 = a4.arg;
+ return r5 ? r5.done ? (n4[t4.resultName] = r5.value, n4.next = t4.nextLoc, "return" !== n4.method && (n4.method = "next", n4.arg = e3), n4.delegate = null, y3) : r5 : (n4.method = "throw", n4.arg = new TypeError("iterator result is not an object"), n4.delegate = null, y3);
+ }
+ function E2(e4) {
+ var t4 = { tryLoc: e4[0] };
+ 1 in e4 && (t4.catchLoc = e4[1]), 2 in e4 && (t4.finallyLoc = e4[2], t4.afterLoc = e4[3]), this.tryEntries.push(t4);
+ }
+ function O2(e4) {
+ var t4 = e4.completion || {};
+ t4.type = "normal", delete t4.arg, e4.completion = t4;
+ }
+ function j2(e4) {
+ this.tryEntries = [{ tryLoc: "root" }], e4.forEach(E2, this), this.reset(true);
+ }
+ function I2(t4) {
+ if (t4 || "" === t4) {
+ var n4 = t4[c3];
+ if (n4)
+ return n4.call(t4);
+ if ("function" == typeof t4.next)
+ return t4;
+ if (!isNaN(t4.length)) {
+ var i4 = -1, r5 = function n5() {
+ for (; ++i4 < t4.length; )
+ if (a3.call(t4, i4))
+ return n5.value = t4[i4], n5.done = false, n5;
+ return n5.value = e3, n5.done = true, n5;
+ };
+ return r5.next = r5;
+ }
+ }
+ throw new TypeError(o2(t4) + " is not iterable");
+ }
+ return k3.prototype = b3, r4(T2, "constructor", { value: b3, configurable: true }), r4(b3, "constructor", { value: k3, configurable: true }), k3.displayName = u3(b3, p4, "GeneratorFunction"), t3.isGeneratorFunction = function(e4) {
+ var t4 = "function" == typeof e4 && e4.constructor;
+ return !!t4 && (t4 === k3 || "GeneratorFunction" === (t4.displayName || t4.name));
+ }, t3.mark = function(e4) {
+ return Object.setPrototypeOf ? Object.setPrototypeOf(e4, b3) : (e4.__proto__ = b3, u3(e4, p4, "GeneratorFunction")), e4.prototype = Object.create(T2), e4;
+ }, t3.awrap = function(e4) {
+ return { __await: e4 };
+ }, R2(B2.prototype), u3(B2.prototype, l3, function() {
+ return this;
+ }), t3.AsyncIterator = B2, t3.async = function(e4, n4, i4, o3, a4) {
+ void 0 === a4 && (a4 = Promise);
+ var r5 = new B2(d3(e4, n4, i4, o3), a4);
+ return t3.isGeneratorFunction(n4) ? r5 : r5.next().then(function(e5) {
+ return e5.done ? e5.value : r5.next();
+ });
+ }, R2(T2), u3(T2, p4, "Generator"), u3(T2, c3, function() {
+ return this;
+ }), u3(T2, "toString", function() {
+ return "[object Generator]";
+ }), t3.keys = function(e4) {
+ var t4 = Object(e4), n4 = [];
+ for (var i4 in t4)
+ n4.push(i4);
+ return n4.reverse(), function e5() {
+ for (; n4.length; ) {
+ var i5 = n4.pop();
+ if (i5 in t4)
+ return e5.value = i5, e5.done = false, e5;
+ }
+ return e5.done = true, e5;
+ };
+ }, t3.values = I2, j2.prototype = { constructor: j2, reset: function(t4) {
+ if (this.prev = 0, this.next = 0, this.sent = this._sent = e3, this.done = false, this.delegate = null, this.method = "next", this.arg = e3, this.tryEntries.forEach(O2), !t4)
+ for (var n4 in this)
+ "t" === n4.charAt(0) && a3.call(this, n4) && !isNaN(+n4.slice(1)) && (this[n4] = e3);
+ }, stop: function() {
+ this.done = true;
+ var e4 = this.tryEntries[0].completion;
+ if ("throw" === e4.type)
+ throw e4.arg;
+ return this.rval;
+ }, dispatchException: function(t4) {
+ if (this.done)
+ throw t4;
+ var n4 = this;
+ function i4(i5, o4) {
+ return s5.type = "throw", s5.arg = t4, n4.next = i5, o4 && (n4.method = "next", n4.arg = e3), !!o4;
+ }
+ for (var o3 = this.tryEntries.length - 1; o3 >= 0; --o3) {
+ var r5 = this.tryEntries[o3], s5 = r5.completion;
+ if ("root" === r5.tryLoc)
+ return i4("end");
+ if (r5.tryLoc <= this.prev) {
+ var c4 = a3.call(r5, "catchLoc"), l4 = a3.call(r5, "finallyLoc");
+ if (c4 && l4) {
+ if (this.prev < r5.catchLoc)
+ return i4(r5.catchLoc, true);
+ if (this.prev < r5.finallyLoc)
+ return i4(r5.finallyLoc);
+ } else if (c4) {
+ if (this.prev < r5.catchLoc)
+ return i4(r5.catchLoc, true);
+ } else {
+ if (!l4)
+ throw Error("try statement without catch or finally");
+ if (this.prev < r5.finallyLoc)
+ return i4(r5.finallyLoc);
+ }
+ }
+ }
+ }, abrupt: function(e4, t4) {
+ for (var n4 = this.tryEntries.length - 1; n4 >= 0; --n4) {
+ var i4 = this.tryEntries[n4];
+ if (i4.tryLoc <= this.prev && a3.call(i4, "finallyLoc") && this.prev < i4.finallyLoc) {
+ var o3 = i4;
+ break;
+ }
+ }
+ o3 && ("break" === e4 || "continue" === e4) && o3.tryLoc <= t4 && t4 <= o3.finallyLoc && (o3 = null);
+ var r5 = o3 ? o3.completion : {};
+ return r5.type = e4, r5.arg = t4, o3 ? (this.method = "next", this.next = o3.finallyLoc, y3) : this.complete(r5);
+ }, complete: function(e4, t4) {
+ if ("throw" === e4.type)
+ throw e4.arg;
+ return "break" === e4.type || "continue" === e4.type ? this.next = e4.arg : "return" === e4.type ? (this.rval = this.arg = e4.arg, this.method = "return", this.next = "end") : "normal" === e4.type && t4 && (this.next = t4), y3;
+ }, finish: function(e4) {
+ for (var t4 = this.tryEntries.length - 1; t4 >= 0; --t4) {
+ var n4 = this.tryEntries[t4];
+ if (n4.finallyLoc === e4)
+ return this.complete(n4.completion, n4.afterLoc), O2(n4), y3;
+ }
+ }, catch: function(e4) {
+ for (var t4 = this.tryEntries.length - 1; t4 >= 0; --t4) {
+ var n4 = this.tryEntries[t4];
+ if (n4.tryLoc === e4) {
+ var i4 = n4.completion;
+ if ("throw" === i4.type) {
+ var o3 = i4.arg;
+ O2(n4);
+ }
+ return o3;
+ }
+ }
+ throw Error("illegal catch attempt");
+ }, delegateYield: function(t4, n4, i4) {
+ return this.delegate = { iterator: I2(t4), resultName: n4, nextLoc: i4 }, "next" === this.method && (this.arg = e3), y3;
+ } }, t3;
+ }
+ function o2(e3) {
+ return o2 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e4) {
+ return typeof e4;
+ } : function(e4) {
+ return e4 && "function" == typeof Symbol && e4.constructor === Symbol && e4 !== Symbol.prototype ? "symbol" : typeof e4;
+ }, o2(e3);
+ }
+ function a2(e3, t3, n3, i4, o3, a3, r4) {
+ try {
+ var s4 = e3[a3](r4), c3 = s4.value;
+ } catch (e4) {
+ return void n3(e4);
+ }
+ s4.done ? t3(c3) : Promise.resolve(c3).then(i4, o3);
+ }
+ function r3(e3) {
+ return function() {
+ var t3 = this, n3 = arguments;
+ return new Promise(function(i4, o3) {
+ var r4 = e3.apply(t3, n3);
+ function s4(e4) {
+ a2(r4, i4, o3, s4, c3, "next", e4);
+ }
+ function c3(e4) {
+ a2(r4, i4, o3, s4, c3, "throw", e4);
+ }
+ s4(void 0);
+ });
+ };
+ }
+ var s3 = n2(7), c2 = n2(33), l2 = n2(6).EventProxy, p3 = n2(0), u2 = n2(2);
+ function d2(e3, t3) {
+ var n3 = e3.TaskId, i4 = e3.Bucket, o3 = e3.Region, a3 = e3.Key, r4 = e3.StorageClass, u3 = this, d3 = {}, h3 = e3.FileSize, g3 = e3.SliceSize, v4 = Math.ceil(h3 / g3), y3 = 0, x3 = p3.throttleOnProgress.call(u3, h3, e3.onHashProgress), k3 = function(t4, n4) {
+ var i5 = t4.length;
+ if (0 === i5)
+ return n4(null, true);
+ if (i5 > v4)
+ return n4(null, false);
+ if (i5 > 1 && Math.max(t4[0].Size, t4[1].Size) !== g3)
+ return n4(null, false);
+ !function o4(a4) {
+ if (a4 < i5) {
+ var r5 = t4[a4];
+ !function(t5, n5) {
+ var i6 = g3 * (t5 - 1), o5 = Math.min(i6 + g3, h3), a5 = o5 - i6;
+ d3[t5] ? n5(null, { PartNumber: t5, ETag: d3[t5], Size: a5 }) : p3.fileSlice(e3.FilePath, i6, o5, function(e4) {
+ try {
+ var i7 = p3.getFileMd5(e4);
+ } catch (e5) {
+ return n5(e5);
+ }
+ var o6 = '"' + i7 + '"';
+ d3[t5] = o6, y3 += a5, n5(null, { PartNumber: t5, ETag: o6, Size: a5 }), x3({ loaded: y3, total: h3 });
+ });
+ }(r5.PartNumber, function(e4, t5) {
+ t5 && t5.ETag === r5.ETag && t5.Size === r5.Size ? o4(a4 + 1) : n4(null, false);
+ });
+ } else
+ n4(null, true);
+ }(0);
+ }, b3 = new l2();
+ b3.on("error", function(e4) {
+ if (u3._isRunningTask(n3))
+ return t3(e4);
+ }), b3.on("upload_id_available", function(e4) {
+ var n4 = {}, i5 = [];
+ p3.each(e4.PartList, function(e5) {
+ n4[e5.PartNumber] = e5;
+ });
+ for (var o4 = 1; o4 <= v4; o4++) {
+ var a4 = n4[o4];
+ a4 ? (a4.PartNumber = o4, a4.Uploaded = true) : a4 = { PartNumber: o4, ETag: null, Uploaded: false }, i5.push(a4);
+ }
+ e4.PartList = i5, t3(null, e4);
+ }), b3.on("no_available_upload_id", function() {
+ if (u3._isRunningTask(n3)) {
+ var s4 = p3.extend({ Bucket: i4, Region: o3, Key: a3, Headers: p3.clone(e3.Headers), Query: p3.clone(e3.Query), StorageClass: r4, calledBySdk: "sliceUploadFile", tracker: e3.tracker }, e3);
+ u3.multipartInit(s4, function(e4, i5) {
+ if (u3._isRunningTask(n3)) {
+ if (e4)
+ return b3.emit("error", e4);
+ var o4 = i5.UploadId;
+ if (!o4)
+ return t3({ Message: "no upload id" });
+ b3.emit("upload_id_available", { UploadId: o4, PartList: [] });
+ }
+ });
+ }
+ }), b3.on("has_and_check_upload_id", function(t4) {
+ t4 = t4.reverse(), c2.eachLimit(t4, 1, function(t5, r5) {
+ u3._isRunningTask(n3) && (s3.using[t5] ? r5() : m2.call(u3, { Bucket: i4, Region: o3, Key: a3, UploadId: t5, tracker: e3.tracker }, function(e4, i5) {
+ if (u3._isRunningTask(n3)) {
+ if (e4)
+ return s3.removeUsing(t5), b3.emit("error", e4);
+ var o4 = i5.PartList;
+ o4.forEach(function(e5) {
+ e5.PartNumber *= 1, e5.Size *= 1, e5.ETag = e5.ETag || "";
+ }), k3(o4, function(e5, i6) {
+ if (u3._isRunningTask(n3))
+ return e5 ? b3.emit("error", e5) : void (i6 ? r5({ UploadId: t5, PartList: o4 }) : r5());
+ });
+ }
+ }));
+ }, function(e4) {
+ u3._isRunningTask(n3) && (x3(null, true), e4 && e4.UploadId ? b3.emit("upload_id_available", e4) : b3.emit("no_available_upload_id"));
+ });
+ }), b3.on("seek_local_avail_upload_id", function(t4) {
+ var r5 = s3.getFileId(e3.FileStat, e3.ChunkSize, i4, a3), c3 = s3.getUploadIdList(r5);
+ if (r5 && c3) {
+ !function r6(l3) {
+ if (l3 >= c3.length)
+ b3.emit("has_and_check_upload_id", t4);
+ else {
+ var d4 = c3[l3];
+ if (!p3.isInArray(t4, d4))
+ return s3.removeUploadId(d4), void r6(l3 + 1);
+ s3.using[d4] ? r6(l3 + 1) : m2.call(u3, { Bucket: i4, Region: o3, Key: a3, UploadId: d4, tracker: e3.tracker }, function(e4, t5) {
+ u3._isRunningTask(n3) && (e4 ? (s3.removeUploadId(d4), r6(l3 + 1)) : b3.emit("upload_id_available", { UploadId: d4, PartList: t5.PartList }));
+ });
+ }
+ }(0);
+ } else
+ b3.emit("has_and_check_upload_id", t4);
+ }), b3.on("get_remote_upload_id_list", function() {
+ f2.call(u3, { Bucket: i4, Region: o3, Key: a3, tracker: e3.tracker }, function(t4, o4) {
+ if (u3._isRunningTask(n3)) {
+ if (t4)
+ return b3.emit("error", t4);
+ var c3 = p3.filter(o4.UploadList, function(e4) {
+ return e4.Key === a3 && (!r4 || e4.StorageClass.toUpperCase() === r4.toUpperCase());
+ }).reverse().map(function(e4) {
+ return e4.UploadId || e4.UploadID;
+ });
+ if (c3.length)
+ b3.emit("seek_local_avail_upload_id", c3);
+ else {
+ var l3, d4 = s3.getFileId(e3.FileStat, e3.ChunkSize, i4, a3);
+ d4 && (l3 = s3.getUploadIdList(d4)) && p3.each(l3, function(e4) {
+ s3.removeUploadId(e4);
+ }), b3.emit("no_available_upload_id");
+ }
+ }
+ });
+ }), b3.emit("get_remote_upload_id_list");
+ }
+ function f2(e3, t3) {
+ var n3 = this, i4 = [], o3 = { Bucket: e3.Bucket, Region: e3.Region, Prefix: e3.Key, calledBySdk: e3.calledBySdk || "sliceUploadFile", tracker: e3.tracker };
+ !function e4() {
+ n3.multipartList(o3, function(n4, a3) {
+ if (n4)
+ return t3(n4);
+ i4.push.apply(i4, a3.Upload || []), "true" === a3.IsTruncated ? (o3.KeyMarker = a3.NextKeyMarker, o3.UploadIdMarker = a3.NextUploadIdMarker, e4()) : t3(null, { UploadList: i4 });
+ });
+ }();
+ }
+ function m2(e3, t3) {
+ var n3 = this, i4 = [], o3 = { Bucket: e3.Bucket, Region: e3.Region, Key: e3.Key, UploadId: e3.UploadId, calledBySdk: "sliceUploadFile", tracker: e3.tracker };
+ !function e4() {
+ n3.multipartListPart(o3, function(n4, a3) {
+ if (n4)
+ return t3(n4);
+ i4.push.apply(i4, a3.Part || []), "true" === a3.IsTruncated ? (o3.PartNumberMarker = a3.NextPartNumberMarker, e4()) : t3(null, { PartList: i4 });
+ });
+ }();
+ }
+ function h2(e3, t3) {
+ var n3 = this, i4 = e3.TaskId, o3 = e3.Bucket, a3 = e3.Region, r4 = e3.Key, s4 = e3.UploadData, l3 = e3.FileSize, u3 = e3.SliceSize, d3 = Math.min(e3.AsyncLimit || n3.options.ChunkParallelLimit || 1, 256), f3 = e3.FilePath, m3 = Math.ceil(l3 / u3), h3 = 0, v4 = e3.ServerSideEncryption, y3 = p3.filter(s4.PartList, function(e4) {
+ return e4.Uploaded && (h3 += e4.PartNumber >= m3 && l3 % u3 || u3), !e4.Uploaded;
+ }), x3 = e3.onProgress;
+ c2.eachLimit(y3, d3, function(t4, c3) {
+ if (n3._isRunningTask(i4)) {
+ var p4 = t4.PartNumber, d4 = Math.min(l3, t4.PartNumber * u3) - (t4.PartNumber - 1) * u3, m4 = 0;
+ g2.call(n3, { TaskId: i4, Bucket: o3, Region: a3, Key: r4, SliceSize: u3, FileSize: l3, PartNumber: p4, ServerSideEncryption: v4, FilePath: f3, UploadData: s4, onProgress: function(e4) {
+ h3 += e4.loaded - m4, m4 = e4.loaded, x3({ loaded: h3, total: l3 });
+ }, tracker: e3.tracker }, function(e4, o4) {
+ n3._isRunningTask(i4) && (e4 ? h3 -= m4 : (h3 += d4 - m4, t4.ETag = o4.ETag), x3({ loaded: h3, total: l3 }), c3(e4 || null, o4));
+ });
+ }
+ }, function(e4) {
+ if (n3._isRunningTask(i4))
+ return e4 ? t3(e4) : void t3(null, { UploadId: s4.UploadId, SliceList: s4.PartList });
+ });
+ }
+ function g2(e3, t3) {
+ var n3 = this, i4 = e3.TaskId, o3 = e3.Bucket, a3 = e3.Region, r4 = e3.Key, s4 = e3.FileSize, l3 = e3.FilePath, u3 = 1 * e3.PartNumber, d3 = e3.SliceSize, f3 = e3.ServerSideEncryption, m3 = e3.UploadData, h3 = n3.options.ChunkRetryTimes + 1, g3 = e3.Headers || {}, v4 = d3 * (u3 - 1), y3 = d3, x3 = v4 + d3;
+ x3 > s4 && (y3 = (x3 = s4) - v4);
+ var k3 = ["x-cos-traffic-limit", "x-cos-mime-limit"], b3 = {};
+ p3.each(g3, function(e4, t4) {
+ k3.indexOf(t4) > -1 && (b3[t4] = e4);
+ }), p3.fileSlice(l3, v4, x3, function(s5) {
+ var l4 = p3.getFileMd5(s5), d4 = l4 ? p3.binaryBase64(l4) : null, g4 = m3.PartList[u3 - 1];
+ c2.retry(h3, function(t4) {
+ n3._isRunningTask(i4) && n3.multipartUpload({ TaskId: i4, Bucket: o3, Region: a3, Key: r4, ContentLength: y3, PartNumber: u3, UploadId: m3.UploadId, ServerSideEncryption: f3, Body: s5, Headers: b3, onProgress: e3.onProgress, ContentMD5: d4, calledBySdk: "sliceUploadFile", tracker: e3.tracker }, function(e4, o4) {
+ if (n3._isRunningTask(i4))
+ return e4 ? t4(e4) : (g4.Uploaded = true, t4(null, o4));
+ });
+ }, function(e4, o4) {
+ if (n3._isRunningTask(i4))
+ return t3(e4, o4);
+ });
+ });
+ }
+ function v3(e3, t3) {
+ var n3 = e3.Bucket, i4 = e3.Region, o3 = e3.Key, a3 = e3.UploadId, r4 = e3.SliceList, s4 = this, l3 = this.options.ChunkRetryTimes + 1, p4 = r4.map(function(e4) {
+ return { PartNumber: e4.PartNumber, ETag: e4.ETag };
+ });
+ c2.retry(l3, function(t4) {
+ s4.multipartComplete({ Bucket: n3, Region: i4, Key: o3, UploadId: a3, Parts: p4, calledBySdk: "sliceUploadFile", Headers: e3.Headers || {}, tracker: e3.tracker }, t4);
+ }, function(e4, n4) {
+ t3(e4, n4);
+ });
+ }
+ function y2(e3, t3) {
+ var n3 = e3.Bucket, i4 = e3.Region, o3 = e3.Key, a3 = e3.AbortArray, r4 = e3.AsyncLimit || 1, s4 = this, l3 = 0, p4 = new Array(a3.length);
+ c2.eachLimit(a3, r4, function(t4, a4) {
+ var r5 = l3;
+ if (o3 && o3 !== t4.Key)
+ return p4[r5] = { error: { KeyNotMatch: true } }, void a4(null);
+ var c3 = t4.UploadId || t4.UploadID;
+ s4.multipartAbort({ Bucket: n3, Region: i4, Key: t4.Key, Headers: e3.Headers, UploadId: c3 }, function(e4) {
+ var o4 = { Bucket: n3, Region: i4, Key: t4.Key, UploadId: c3 };
+ p4[r5] = { error: e4, task: o4 }, a4(null);
+ }), l3++;
+ }, function(e4) {
+ if (e4)
+ return t3(e4);
+ for (var n4 = [], i5 = [], o4 = 0, a4 = p4.length; o4 < a4; o4++) {
+ var r5 = p4[o4];
+ r5.task && (r5.error ? i5.push(r5.task) : n4.push(r5.task));
+ }
+ return t3(null, { successList: n4, errorList: i5 });
+ });
+ }
+ function x2() {
+ return (x2 = r3(i3().mark(function e3(t3, n3) {
+ var a3, r4, s4, c3, l3, d3, f3, m3, h3, g3, v4, y3;
+ return i3().wrap(function(e4) {
+ for (; ; )
+ switch (e4.prev = e4.next) {
+ case 0:
+ return a3 = this, r4 = void 0 === t3.SliceSize ? a3.options.SliceSize : t3.SliceSize, s4 = [], e4.prev = 3, e4.next = 6, p3.getFileSizeByPath(t3.FilePath);
+ case 6:
+ c3 = e4.sent, e4.next = 13;
+ break;
+ case 9:
+ return e4.prev = 9, e4.t0 = e4.catch(3), n3({ error: e4.t0 }), e4.abrupt("return");
+ case 13:
+ l3 = { TaskId: "" }, a3.options.EnableReporter && (d3 = a3.options.UseAccelerate || "string" == typeof a3.options.Domain && a3.options.Domain.includes("accelerate."), f3 = c3 > r4 ? "sliceUploadFile" : "putObject", t3.tracker = new u2({ Beacon: a3.options.BeaconReporter, clsReporter: a3.options.ClsReporter, bucket: t3.Bucket, region: t3.Region, apiName: "uploadFile", realApi: f3, fileKey: t3.Key, fileSize: c3, accelerate: d3, deepTracker: a3.options.DeepTracker, customId: a3.options.CustomId, delay: a3.options.TrackerDelay })), p3.each(t3, function(e5, t4) {
+ "object" !== o2(e5) && "function" != typeof e5 && (l3[t4] = e5);
+ }), m3 = t3.onTaskReady, t3.onTaskReady = function(e5) {
+ l3.TaskId = e5, m3 && m3(e5);
+ }, h3 = t3.onFileFinish, g3 = function(e5, i4) {
+ t3.tracker && t3.tracker.report(e5, i4), h3 && h3(e5, i4, l3), n3 && n3(e5, i4);
+ }, v4 = "postObject" === a3.options.SimpleUploadMethod ? "postObject" : "putObject", y3 = c3 > r4 ? "sliceUploadFile" : v4, s4.push({ api: y3, params: t3, callback: g3 }), a3._addTasks(s4);
+ case 24:
+ case "end":
+ return e4.stop();
+ }
+ }, e3, this, [[3, 9]]);
+ }))).apply(this, arguments);
+ }
+ function k2() {
+ return k2 = r3(i3().mark(function e3(t3, n3) {
+ var a3, s4, c3, l3, d3, f3, m3, h3, g3, v4, y3;
+ return i3().wrap(function(e4) {
+ for (; ; )
+ switch (e4.prev = e4.next) {
+ case 0:
+ return a3 = this, s4 = void 0 === t3.SliceSize ? a3.options.SliceSize : t3.SliceSize, c3 = 0, l3 = 0, d3 = p3.throttleOnProgress.call(a3, l3, t3.onProgress), f3 = t3.files.length, m3 = t3.onFileFinish, h3 = Array(f3), g3 = function(e5, t4, i4) {
+ d3(null, true), m3 && m3(e5, t4, i4), h3[i4.Index] = { options: i4, error: e5, data: t4 }, --f3 <= 0 && n3 && n3(null, { files: h3 });
+ }, v4 = [], y3 = function() {
+ return t3.files.map(function(e5, t4) {
+ return new Promise(function() {
+ var n4 = r3(i3().mark(function n5(r4) {
+ var f4, m4, h4, y4, x3, k3, b3, C3, S2, w2, T2;
+ return i3().wrap(function(n6) {
+ for (; ; )
+ switch (n6.prev = n6.next) {
+ case 0:
+ return f4 = 0, n6.prev = 1, n6.next = 4, p3.getFileSizeByPath(e5.FilePath);
+ case 4:
+ f4 = n6.sent, n6.next = 9;
+ break;
+ case 7:
+ n6.prev = 7, n6.t0 = n6.catch(1);
+ case 9:
+ m4 = { Index: t4, TaskId: "" }, c3 += f4, a3.options.EnableReporter && (h4 = a3.options.UseAccelerate || "string" == typeof a3.options.Domain && a3.options.Domain.includes("accelerate."), y4 = f4 > s4 ? "sliceUploadFile" : "putObject", e5.tracker = new u2({ Beacon: a3.options.BeaconReporter, clsReporter: a3.options.ClsReporter, bucket: e5.Bucket, region: e5.Region, apiName: "uploadFiles", realApi: y4, fileKey: e5.Key, fileSize: f4, accelerate: h4, deepTracker: a3.options.DeepTracker, customId: a3.options.CustomId, delay: a3.options.TrackerDelay })), p3.each(e5, function(e6, t5) {
+ "object" !== o2(e6) && "function" != typeof e6 && (m4[t5] = e6);
+ }), x3 = e5.onTaskReady, e5.onTaskReady = function(e6) {
+ m4.TaskId = e6, x3 && x3(e6);
+ }, k3 = 0, b3 = e5.onProgress, e5.onProgress = function(e6) {
+ l3 = l3 - k3 + e6.loaded, k3 = e6.loaded, b3 && b3(e6), d3({ loaded: l3, total: c3 });
+ }, C3 = e5.onFileFinish, S2 = function(t5, n7) {
+ e5.tracker && e5.tracker.report(t5, n7), C3 && C3(t5, n7), g3 && g3(t5, n7, m4);
+ }, w2 = "postObject" === a3.options.SimpleUploadMethod ? "postObject" : "putObject", T2 = f4 > s4 ? "sliceUploadFile" : w2, v4.push({ api: T2, params: e5, callback: S2 }), r4(true);
+ case 24:
+ case "end":
+ return n6.stop();
+ }
+ }, n5, null, [[1, 7]]);
+ }));
+ return function(e6) {
+ return n4.apply(this, arguments);
+ };
+ }());
+ });
+ }, e4.next = 13, Promise.all(y3());
+ case 13:
+ a3._addTasks(v4);
+ case 14:
+ case "end":
+ return e4.stop();
+ }
+ }, e3, this);
+ })), k2.apply(this, arguments);
+ }
+ function b2(e3, t3) {
+ var n3 = e3.TaskId, i4 = e3.Bucket, o3 = e3.Region, a3 = e3.Key, r4 = e3.CopySource, s4 = e3.UploadId, l3 = 1 * e3.PartNumber, p4 = e3.CopySourceRange, u3 = this.options.ChunkRetryTimes + 1, d3 = this;
+ c2.retry(u3, function(t4) {
+ d3.uploadPartCopy({ TaskId: n3, Bucket: i4, Region: o3, Key: a3, CopySource: r4, UploadId: s4, PartNumber: l3, CopySourceRange: p4, onProgress: e3.onProgress, tracker: e3.tracker, calledBySdk: e3.calledBySdk }, function(e4, n4) {
+ t4(e4 || null, n4);
+ });
+ }, function(e4, n4) {
+ return t3(e4, n4);
+ });
+ }
+ var C2 = { sliceUploadFile: function(e3, t3) {
+ var n3 = this;
+ if (!p3.canFileSlice())
+ return e3.SkipTask = true, void ("postObject" === n3.options.SimpleUploadMethod ? n3.postObject(e3, t3) : n3.putObject(e3, t3));
+ var i4, o3, a3 = new l2(), r4 = e3.TaskId, c3 = e3.Bucket, u3 = e3.Region, f3 = e3.Key, m3 = e3.FilePath, g3 = e3.ChunkSize || e3.SliceSize || n3.options.ChunkSize, y3 = e3.AsyncLimit, x3 = e3.StorageClass, k3 = e3.ServerSideEncryption, b3 = e3.onHashProgress, C3 = e3.tracker;
+ C3 && C3.setParams({ chunkSize: g3 }), a3.on("error", function(i5) {
+ if (n3._isRunningTask(r4)) {
+ var o4 = { UploadId: e3.UploadData.UploadId || "", err: i5, error: i5 };
+ return t3(o4);
+ }
+ }), a3.on("upload_complete", function(n4) {
+ var i5 = p3.extend({ UploadId: e3.UploadData.UploadId || "" }, n4);
+ t3(null, i5);
+ }), a3.on("upload_slice_complete", function(t4) {
+ var l3 = {};
+ p3.each(e3.Headers, function(e4, t5) {
+ var n4 = t5.toLowerCase();
+ 0 !== n4.indexOf("x-cos-meta-") && "pic-operations" !== n4 || (l3[t5] = e4);
+ }), v3.call(n3, { Bucket: c3, Region: u3, Key: f3, UploadId: t4.UploadId, SliceList: t4.SliceList, Headers: l3, tracker: C3 }, function(e4, c4) {
+ if (n3._isRunningTask(r4)) {
+ if (s3.removeUsing(t4.UploadId), e4)
+ return o3(null, true), a3.emit("error", e4);
+ s3.removeUploadId(t4.UploadId), o3({ loaded: i4, total: i4 }, true), a3.emit("upload_complete", c4);
+ }
+ });
+ }), a3.on("get_upload_data_finish", function(t4) {
+ var l3 = s3.getFileId(e3.FileStat, e3.ChunkSize, c3, f3);
+ l3 && s3.saveUploadId(l3, t4.UploadId, n3.options.UploadIdCacheLimit), s3.setUsing(t4.UploadId), o3(null, true), h2.call(n3, { TaskId: r4, Bucket: c3, Region: u3, Key: f3, FilePath: m3, FileSize: i4, SliceSize: g3, AsyncLimit: y3, ServerSideEncryption: k3, UploadData: t4, onProgress: o3, tracker: C3 }, function(e4, t5) {
+ if (n3._isRunningTask(r4))
+ return e4 ? (o3(null, true), a3.emit("error", e4)) : void a3.emit("upload_slice_complete", t5);
+ });
+ }), a3.on("get_file_size_finish", function() {
+ if (o3 = p3.throttleOnProgress.call(n3, i4, e3.onProgress), e3.UploadData.UploadId)
+ a3.emit("get_upload_data_finish", e3.UploadData);
+ else {
+ var t4 = p3.extend({ TaskId: r4, Bucket: c3, Region: u3, Key: f3, Headers: e3.Headers, StorageClass: x3, FilePath: m3, FileSize: i4, SliceSize: g3, onHashProgress: b3, tracker: C3 }, e3);
+ t4.FileSize = i4, d2.call(n3, t4, function(t5, i5) {
+ if (n3._isRunningTask(r4)) {
+ if (t5)
+ return a3.emit("error", t5);
+ e3.UploadData.UploadId = i5.UploadId, e3.UploadData.PartList = i5.PartList, a3.emit("get_upload_data_finish", e3.UploadData);
+ }
+ });
+ }
+ }), i4 = e3.ContentLength, delete e3.ContentLength, !e3.Headers && (e3.Headers = {}), p3.each(e3.Headers, function(t4, n4) {
+ "content-length" === n4.toLowerCase() && delete e3.Headers[n4];
+ }), function() {
+ for (var t4 = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 5120], o4 = 1048576, a4 = 0; a4 < t4.length && !(i4 / (o4 = 1024 * t4[a4] * 1024) <= n3.options.MaxPartNumber); a4++)
+ ;
+ e3.ChunkSize = e3.SliceSize = g3 = Math.max(g3, o4);
+ }(), 0 === i4 ? (e3.Body = "", e3.ContentLength = 0, e3.SkipTask = true, n3.putObject(e3, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ t3(null, n4);
+ })) : a3.emit("get_file_size_finish");
+ }, abortUploadTask: function(e3, t3) {
+ var n3 = e3.Bucket, i4 = e3.Region, o3 = e3.Key, a3 = e3.UploadId, r4 = e3.Level || "task", s4 = e3.AsyncLimit, c3 = this, p4 = new l2();
+ if (p4.on("error", function(e4) {
+ return t3(e4);
+ }), p4.on("get_abort_array", function(a4) {
+ y2.call(c3, { Bucket: n3, Region: i4, Key: o3, Headers: e3.Headers, AsyncLimit: s4, AbortArray: a4 }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ t3(null, n4);
+ });
+ }), "bucket" === r4)
+ f2.call(c3, { Bucket: n3, Region: i4, calledBySdk: "abortUploadTask" }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ p4.emit("get_abort_array", n4.UploadList || []);
+ });
+ else if ("file" === r4) {
+ if (!o3)
+ return t3({ error: "abort_upload_task_no_key" });
+ f2.call(c3, { Bucket: n3, Region: i4, Key: o3, calledBySdk: "abortUploadTask" }, function(e4, n4) {
+ if (e4)
+ return t3(e4);
+ p4.emit("get_abort_array", n4.UploadList || []);
+ });
+ } else {
+ if ("task" !== r4)
+ return t3({ error: "abort_unknown_level" });
+ if (!a3)
+ return t3({ error: "abort_upload_task_no_id" });
+ if (!o3)
+ return t3({ error: "abort_upload_task_no_key" });
+ p4.emit("get_abort_array", [{ Key: o3, UploadId: a3 }]);
+ }
+ }, uploadFile: function(e3, t3) {
+ return x2.apply(this, arguments);
+ }, uploadFiles: function(e3, t3) {
+ return k2.apply(this, arguments);
+ }, sliceCopyFile: function(e3, t3) {
+ var n3 = new l2(), i4 = this, o3 = e3.Bucket, a3 = e3.Region, r4 = e3.Key, u3 = e3.CopySource, d3 = p3.getSourceParams.call(this, u3);
+ if (d3) {
+ var f3 = d3.Bucket, h3 = d3.Region, g3 = decodeURIComponent(d3.Key), v4 = void 0 === e3.CopySliceSize ? i4.options.CopySliceSize : e3.CopySliceSize;
+ v4 = Math.max(0, v4);
+ var y3, x3, k3 = e3.CopyChunkSize || this.options.CopyChunkSize, C3 = this.options.CopyChunkParallelLimit, S2 = this.options.ChunkRetryTimes + 1, w2 = 0, T2 = 0, R2 = {}, B2 = {}, A2 = {};
+ n3.on("copy_slice_complete", function(n4) {
+ p3.each(e3.Headers, function(e4, t4) {
+ 0 === t4.toLowerCase().indexOf("x-cos-meta-") && e4;
+ });
+ var u4 = p3.map(n4.PartList, function(e4) {
+ return { PartNumber: e4.PartNumber, ETag: e4.ETag };
+ });
+ c2.retry(S2, function(t4) {
+ i4.multipartComplete({ Bucket: o3, Region: a3, Key: r4, UploadId: n4.UploadId, Parts: u4, tracker: e3.tracker, calledBySdk: "sliceCopyFile" }, t4);
+ }, function(e4, i5) {
+ if (s3.removeUsing(n4.UploadId), e4)
+ return x3(null, true), t3(e4);
+ s3.removeUploadId(n4.UploadId), x3({ loaded: y3, total: y3 }, true), t3(null, i5);
+ });
+ }), n3.on("get_copy_data_finish", function(l3) {
+ var d4 = s3.getCopyFileId(u3, R2, k3, o3, r4);
+ d4 && s3.saveUploadId(d4, l3.UploadId, i4.options.UploadIdCacheLimit), s3.setUsing(l3.UploadId);
+ var f4 = p3.filter(l3.PartList, function(e4) {
+ return e4.Uploaded && (T2 += e4.PartNumber >= w2 && y3 % k3 || k3), !e4.Uploaded;
+ });
+ c2.eachLimit(f4, C3, function(t4, n4) {
+ var s4 = t4.PartNumber, p4 = t4.CopySourceRange, d5 = t4.end - t4.start, f5 = 0;
+ c2.retry(S2, function(t5) {
+ b2.call(i4, { Bucket: o3, Region: a3, Key: r4, CopySource: u3, UploadId: l3.UploadId, PartNumber: s4, CopySourceRange: p4, tracker: e3.tracker, calledBySdk: "sliceCopyFile", onProgress: function(e4) {
+ T2 += e4.loaded - f5, f5 = e4.loaded, x3({ loaded: T2, total: y3 });
+ } }, t5);
+ }, function(e4, i5) {
+ if (e4)
+ return n4(e4);
+ x3({ loaded: T2, total: y3 }), T2 += d5 - f5, t4.ETag = i5.ETag, n4(e4 || null, i5);
+ });
+ }, function(e4) {
+ if (e4)
+ return s3.removeUsing(l3.UploadId), x3(null, true), t3(e4);
+ n3.emit("copy_slice_complete", l3);
+ });
+ }), n3.on("get_chunk_size_finish", function() {
+ var c3 = function() {
+ i4.multipartInit({ Bucket: o3, Region: a3, Key: r4, Headers: A2, tracker: e3.tracker, calledBySdk: "sliceCopyFile" }, function(i5, o4) {
+ if (i5)
+ return t3(i5);
+ e3.UploadId = o4.UploadId, n3.emit("get_copy_data_finish", { UploadId: e3.UploadId, PartList: e3.PartList });
+ });
+ }, l3 = s3.getCopyFileId(u3, R2, k3, o3, r4), d4 = s3.getUploadIdList(l3);
+ if (!l3 || !d4)
+ return c3();
+ !function t4(l4) {
+ if (l4 >= d4.length)
+ return c3();
+ var u4 = d4[l4];
+ if (s3.using[u4])
+ return t4(l4 + 1);
+ m2.call(i4, { Bucket: o3, Region: a3, Key: r4, UploadId: u4, tracker: e3.tracker, calledBySdk: "sliceCopyFile" }, function(i5, o4) {
+ if (i5)
+ s3.removeUploadId(u4), t4(l4 + 1);
+ else {
+ if (s3.using[u4])
+ return t4(l4 + 1);
+ var a4 = {}, r5 = 0;
+ p3.each(o4.PartList, function(e4) {
+ var t5 = parseInt(e4.Size), n4 = r5 + t5 - 1;
+ a4[e4.PartNumber + "|" + r5 + "|" + n4] = e4.ETag, r5 += t5;
+ }), p3.each(e3.PartList, function(e4) {
+ var t5 = a4[e4.PartNumber + "|" + e4.start + "|" + e4.end];
+ t5 && (e4.ETag = t5, e4.Uploaded = true);
+ }), n3.emit("get_copy_data_finish", { UploadId: u4, PartList: e3.PartList });
+ }
+ });
+ }(0);
+ }), n3.on("get_file_size_finish", function() {
+ var o4;
+ if (function() {
+ for (var t4 = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 5120], n4 = 1048576, o5 = 0; o5 < t4.length && !(y3 / (n4 = 1024 * t4[o5] * 1024) <= i4.options.MaxPartNumber); o5++)
+ ;
+ e3.ChunkSize = k3 = Math.max(k3, n4), w2 = Math.ceil(y3 / k3);
+ for (var a5 = [], r5 = 1; r5 <= w2; r5++) {
+ var s4 = (r5 - 1) * k3, c3 = r5 * k3 < y3 ? r5 * k3 - 1 : y3 - 1, l3 = { PartNumber: r5, start: s4, end: c3, CopySourceRange: "bytes=" + s4 + "-" + c3 };
+ a5.push(l3);
+ }
+ e3.PartList = a5;
+ }(), (o4 = "Replaced" === e3.Headers["x-cos-metadata-directive"] ? e3.Headers : B2)["x-cos-storage-class"] = e3.Headers["x-cos-storage-class"] || B2["x-cos-storage-class"], o4 = p3.clearKey(o4), "ARCHIVE" === B2["x-cos-storage-class"] || "DEEP_ARCHIVE" === B2["x-cos-storage-class"]) {
+ var a4 = B2["x-cos-restore"];
+ if (!a4 || 'ongoing-request="true"' === a4)
+ return void t3({ error: "Unrestored archive object is not allowed to be copied" });
+ }
+ delete o4["x-cos-copy-source"], delete o4["x-cos-metadata-directive"], delete o4["x-cos-copy-source-If-Modified-Since"], delete o4["x-cos-copy-source-If-Unmodified-Since"], delete o4["x-cos-copy-source-If-Match"], delete o4["x-cos-copy-source-If-None-Match"], n3.emit("get_chunk_size_finish");
+ }), i4.headObject({ Bucket: f3, Region: h3, Key: g3, tracker: e3.tracker, calledBySdk: "sliceCopyFile" }, function(o4, a4) {
+ if (o4)
+ o4.statusCode && 404 === o4.statusCode ? t3({ ErrorStatus: g3 + " Not Exist" }) : t3(o4);
+ else if (void 0 !== (y3 = e3.FileSize = a4.headers["content-length"]) && y3)
+ if (e3.tracker && e3.tracker.setParams({ httpSize: y3 }), x3 = p3.throttleOnProgress.call(i4, y3, e3.onProgress), y3 <= v4)
+ e3.Headers["x-cos-metadata-directive"] || (e3.Headers["x-cos-metadata-directive"] = "Copy"), i4.putObjectCopy(Object.assign(e3, { calledBySdk: "sliceCopyFile" }), function(e4, n4) {
+ if (e4)
+ return x3(null, true), t3(e4);
+ x3({ loaded: y3, total: y3 }, true), t3(e4, n4);
+ });
+ else {
+ var r5 = a4.headers;
+ R2 = r5, B2 = { "Cache-Control": r5["cache-control"], "Content-Disposition": r5["content-disposition"], "Content-Encoding": r5["content-encoding"], "Content-Type": r5["content-type"], Expires: r5.expires, "x-cos-storage-class": r5["x-cos-storage-class"] }, p3.each(r5, function(e4, t4) {
+ var n4 = "x-cos-meta-";
+ 0 === t4.indexOf(n4) && t4.length > 11 && (B2[t4] = e4);
+ }), n3.emit("get_file_size_finish");
+ }
+ else
+ t3({ error: 'get Content-Length error, please add "Content-Length" to CORS ExposeHeader setting.' });
+ });
+ } else
+ t3({ error: "CopySource format error" });
+ } };
+ e2.exports.init = function(e3, t3) {
+ t3.transferToTaskMethod(C2, "sliceUploadFile"), p3.each(C2, function(t4, n3) {
+ e3.prototype[n3] = p3.apiWrapper(n3, t4);
+ });
+ };
+ }, function(e2, t2) {
+ var n2 = { eachLimit: function(e3, t3, n3, i3) {
+ if (i3 = i3 || function() {
+ }, !e3.length || t3 <= 0)
+ return i3();
+ var o2 = 0, a2 = 0, r3 = 0;
+ !function s3() {
+ if (o2 >= e3.length)
+ return i3();
+ for (; r3 < t3 && a2 < e3.length; )
+ r3 += 1, n3(e3[(a2 += 1) - 1], function(t4) {
+ t4 ? (i3(t4), i3 = function() {
+ }) : (r3 -= 1, (o2 += 1) >= e3.length ? i3() : s3());
+ });
+ }();
+ }, retry: function(e3, t3, n3) {
+ e3 < 1 ? n3() : function i3(o2) {
+ t3(function(t4, a2) {
+ t4 && o2 < e3 ? i3(o2 + 1) : n3(t4, a2);
+ });
+ }(1);
+ } };
+ e2.exports = n2;
+ }]);
+ });
+})(cosWxSdkV5_min);
+var cosWxSdkV5_minExports = cosWxSdkV5_min.exports;
+const COS = /* @__PURE__ */ getDefaultExportFromCjs(cosWxSdkV5_minExports);
function n$1(e2, t2) {
var s3 = {};
for (var n2 in e2)
@@ -25696,9 +30142,9 @@ function proxy(target, key, _a) {
set: set2 || noopFn
});
}
-function def(obj, key, val, enumerable) {
+function def(obj, key, val2, enumerable) {
Object.defineProperty(obj, key, {
- value: val,
+ value: val2,
enumerable: !!enumerable,
writable: true,
configurable: true
@@ -25723,19 +30169,19 @@ var objectToString = Object.prototype.toString;
var toTypeString = function(value) {
return objectToString.call(value);
};
-var isMap = function(val) {
- return toTypeString(val) === "[object Map]";
+var isMap = function(val2) {
+ return toTypeString(val2) === "[object Map]";
};
-var isSet = function(val) {
- return toTypeString(val) === "[object Set]";
+var isSet = function(val2) {
+ return toTypeString(val2) === "[object Set]";
};
var MAX_VALID_ARRAY_LENGTH = 4294967295;
-function isValidArrayIndex(val) {
- var n2 = parseFloat(String(val));
- return n2 >= 0 && Math.floor(n2) === n2 && isFinite(val) && n2 <= MAX_VALID_ARRAY_LENGTH;
+function isValidArrayIndex(val2) {
+ var n2 = parseFloat(String(val2));
+ return n2 >= 0 && Math.floor(n2) === n2 && isFinite(val2) && n2 <= MAX_VALID_ARRAY_LENGTH;
}
-function isObject(val) {
- return val !== null && typeof val === "object";
+function isObject(val2) {
+ return val2 !== null && typeof val2 === "object";
}
function isPlainObject(x2) {
return toString(x2) === "[object Object]";
@@ -25853,7 +30299,7 @@ var RefKey = "composition-api.refKey";
var accessModifiedSet = /* @__PURE__ */ new WeakMap();
var rawSet = /* @__PURE__ */ new WeakMap();
var readonlySet = /* @__PURE__ */ new WeakMap();
-function set$1(target, key, val) {
+function set$1(target, key, val2) {
var Vue = getVueConstructor();
var _a = Vue.util, warn2 = _a.warn, defineReactive = _a.defineReactive;
if (isUndef(target) || isPrimitive(target)) {
@@ -25861,40 +30307,40 @@ function set$1(target, key, val) {
}
var ob = target.__ob__;
function ssrMockReactivity() {
- if (ob && isObject(val) && !hasOwn(val, "__ob__")) {
- mockReactivityDeep(val);
+ if (ob && isObject(val2) && !hasOwn(val2, "__ob__")) {
+ mockReactivityDeep(val2);
}
}
if (isArray(target)) {
if (isValidArrayIndex(key)) {
target.length = Math.max(target.length, key);
- target.splice(key, 1, val);
+ target.splice(key, 1, val2);
ssrMockReactivity();
- return val;
- } else if (key === "length" && val !== target.length) {
- target.length = val;
+ return val2;
+ } else if (key === "length" && val2 !== target.length) {
+ target.length = val2;
ob === null || ob === void 0 ? void 0 : ob.dep.notify();
- return val;
+ return val2;
}
}
if (key in target && !(key in Object.prototype)) {
- target[key] = val;
+ target[key] = val2;
ssrMockReactivity();
- return val;
+ return val2;
}
if (target._isVue || ob && ob.vmCount) {
warn2("Avoid adding reactive properties to a Vue instance or its root $data at runtime - declare it upfront in the data option.");
- return val;
+ return val2;
}
if (!ob) {
- target[key] = val;
- return val;
+ target[key] = val2;
+ return val2;
}
- defineReactive(ob.value, key, val);
- defineAccessControl(target, key, val);
+ defineReactive(ob.value, key, val2);
+ defineAccessControl(target, key, val2);
ssrMockReactivity();
ob.dep.notify();
- return val;
+ return val2;
}
var _isForceTrigger = false;
function isForceTrigger() {
@@ -26068,7 +30514,7 @@ function setupAccessControl(target) {
defineAccessControl(target, keys[i3]);
}
}
-function defineAccessControl(target, key, val) {
+function defineAccessControl(target, key, val2) {
if (key === "__ob__")
return;
if (isRaw(target[key]))
@@ -26083,13 +30529,13 @@ function defineAccessControl(target, key, val) {
getter = property.get;
setter = property.set;
if ((!getter || setter) && arguments.length === 2) {
- val = target[key];
+ val2 = target[key];
}
}
- setupAccessControl(val);
+ setupAccessControl(val2);
proxy(target, key, {
get: function getterHandler() {
- var value = getter ? getter.call(target) : val;
+ var value = getter ? getter.call(target) : val2;
if (key !== RefKey && isRef(value)) {
return value.value;
} else {
@@ -26099,13 +30545,13 @@ function defineAccessControl(target, key, val) {
set: function setterHandler(newVal) {
if (getter && !setter)
return;
- if (key !== RefKey && isRef(val) && !isRef(newVal)) {
- val.value = newVal;
+ if (key !== RefKey && isRef(val2) && !isRef(newVal)) {
+ val2.value = newVal;
} else if (setter) {
setter.call(target, newVal);
- val = newVal;
+ val2 = newVal;
} else {
- val = newVal;
+ val2 = newVal;
}
setupAccessControl(newVal);
}
@@ -26190,7 +30636,7 @@ function shallowReactive(obj) {
var observed = observe(isArray(obj) ? [] : {});
var ob = observed.__ob__;
var _loop_1 = function(key2) {
- var val = obj[key2];
+ var val2 = obj[key2];
var getter;
var setter;
var property = Object.getOwnPropertyDescriptor(obj, key2);
@@ -26205,18 +30651,18 @@ function shallowReactive(obj) {
get: function getterHandler() {
var _a2;
(_a2 = ob.dep) === null || _a2 === void 0 ? void 0 : _a2.depend();
- return val;
+ return val2;
},
set: function setterHandler(newVal) {
var _a2;
if (getter && !setter)
return;
- if (!isForceTrigger() && val === newVal)
+ if (!isForceTrigger() && val2 === newVal)
return;
if (setter) {
setter.call(obj, newVal);
} else {
- val = newVal;
+ val2 = newVal;
}
(_a2 = ob.dep) === null || _a2 === void 0 ? void 0 : _a2.notify();
}
@@ -26297,7 +30743,7 @@ function shallowReadonly(obj) {
var source = reactive({});
var ob = source.__ob__;
var _loop_1 = function(key2) {
- var val = obj[key2];
+ var val2 = obj[key2];
var getter;
var property = Object.getOwnPropertyDescriptor(obj, key2);
if (property) {
@@ -26308,7 +30754,7 @@ function shallowReadonly(obj) {
}
proxy(readonlyObj, key2, {
get: function getterHandler() {
- var value = getter ? getter.call(obj) : val;
+ var value = getter ? getter.call(obj) : val2;
ob.dep.depend();
return value;
},
@@ -26371,10 +30817,10 @@ function createLifeCycle(lifeCyclehook) {
return instance && injectHookOption(getVueConstructor(), instance, lifeCyclehook, callback);
};
}
-function injectHookOption(Vue, instance, hook, val) {
+function injectHookOption(Vue, instance, hook, val2) {
var options = instance.proxy.$options;
var mergeFn = Vue.config.optionMergeStrategies[hook];
- var wrappedHook = wrapHookCall(instance, val);
+ var wrappedHook = wrapHookCall(instance, val2);
options[hook] = mergeFn(options[hook], wrappedHook);
return wrappedHook;
}
@@ -26801,9 +31247,9 @@ function inject(key, defaultValue, treatDefaultAsFactory) {
warn('injection "'.concat(String(key), '" not found.'), vm);
return defaultValue;
}
- var val = resolveInject(key, vm);
- if (val !== NOT_FOUND) {
- return val;
+ var val2 = resolveInject(key, vm);
+ if (val2 !== NOT_FOUND) {
+ return val2;
} else if (arguments.length > 1) {
return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue() : defaultValue;
} else {
@@ -26933,8 +31379,8 @@ function asVmProperty(vm, propName, propValue) {
get: function() {
return propValue.value;
},
- set: function(val) {
- propValue.value = val;
+ set: function(val2) {
+ propValue.value = val2;
}
});
} else {
@@ -26945,8 +31391,8 @@ function asVmProperty(vm, propName, propValue) {
}
return propValue;
},
- set: function(val) {
- propValue = val;
+ set: function(val2) {
+ propValue = val2;
}
});
}
@@ -26960,8 +31406,8 @@ function asVmProperty(vm, propName, propValue) {
get: function() {
return propValue.value;
},
- set: function(val) {
- propValue.value = val;
+ set: function(val2) {
+ propValue.value = val2;
}
});
} else {
@@ -26969,8 +31415,8 @@ function asVmProperty(vm, propName, propValue) {
get: function() {
return propValue;
},
- set: function(val) {
- propValue = val;
+ set: function(val2) {
+ propValue = val2;
}
});
}
@@ -27222,11 +31668,11 @@ function mixin(Vue) {
var Vue2 = getVueConstructor();
var defineReactive = Vue2.util.defineReactive;
Object.keys(target).forEach(function(k2) {
- var val = target[k2];
- defineReactive(target, k2, val);
- if (val) {
- seen.add(val);
- customReactive(val, seen);
+ var val2 = target[k2];
+ defineReactive(target, k2, val2);
+ if (val2) {
+ seen.add(val2);
+ customReactive(val2, seen);
}
return;
});
@@ -27535,10 +31981,10 @@ function edit(regex, opt) {
regex = regex.source || regex;
opt = opt || "";
const obj = {
- replace: (name, val) => {
- val = val.source || val;
- val = val.replace(caret, "$1");
- regex = regex.replace(name, val);
+ replace: (name, val2) => {
+ val2 = val2.source || val2;
+ val2 = val2.replace(caret, "$1");
+ regex = regex.replace(name, val2);
return obj;
},
getRegex: () => {
@@ -29477,6 +33923,7 @@ Parser.parse;
Lexer.lex;
exports.A = A$2;
exports.A$1 = A;
+exports.COS = COS;
exports.E = E$2;
exports.EMPTY_OBJ = EMPTY_OBJ$1;
exports.EffectScope = EffectScope$1;
diff --git a/unpackage/dist/dev/mp-weixin/components/TUILogin.js b/unpackage/dist/dev/mp-weixin/components/TUILogin.js
index 2f4e5d5..08545c5 100644
--- a/unpackage/dist/dev/mp-weixin/components/TUILogin.js
+++ b/unpackage/dist/dev/mp-weixin/components/TUILogin.js
@@ -1,8 +1,9 @@
"use strict";
const common_vendor = require("../common/vendor.js");
+let vueVersion = 3;
function TUIlogin(chatInfo, info, userSig) {
- common_vendor.index.$SDKAppID = chatInfo.appId;
- common_vendor.index.$userID = info.userChatId;
+ common_vendor.index.$SDKAppID = chatInfo;
+ common_vendor.index.$userID = String(info);
common_vendor.index.$userSig = userSig;
common_vendor.A.login({
SDKAppID: common_vendor.index.$SDKAppID,
diff --git a/unpackage/dist/dev/mp-weixin/components/generateFileName.js b/unpackage/dist/dev/mp-weixin/components/generateFileName.js
new file mode 100644
index 0000000..49631f0
--- /dev/null
+++ b/unpackage/dist/dev/mp-weixin/components/generateFileName.js
@@ -0,0 +1,16 @@
+"use strict";
+function generateRandomString(length = 6) {
+ const chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
+ let result = "";
+ for (let i = 0; i < length; i++) {
+ result += chars[Math.floor(Math.random() * chars.length)];
+ }
+ return result;
+}
+function generateFileName() {
+ const randomPart = generateRandomString();
+ const timestamp = Date.now();
+ return `${randomPart}${timestamp}.jpg`;
+}
+exports.generateFileName = generateFileName;
+//# sourceMappingURL=../../.sourcemap/mp-weixin/components/generateFileName.js.map
diff --git a/unpackage/dist/dev/mp-weixin/components/postFile.js b/unpackage/dist/dev/mp-weixin/components/postFile.js
new file mode 100644
index 0000000..43d62d0
--- /dev/null
+++ b/unpackage/dist/dev/mp-weixin/components/postFile.js
@@ -0,0 +1,38 @@
+"use strict";
+const common_vendor = require("../common/vendor.js");
+const cos = new common_vendor.COS({
+ SecretId: "AKID4KPIyQgjjnkWJzSnwtfHj281tcBZo28v",
+ // 推荐使用环境变量获取;用户的 SecretId,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参考https://cloud.tencent.com/document/product/598/37140
+ SecretKey: "kQvMjuscBWgfSCqeHiGfx3vc7PUP7ctx"
+ // 推荐使用环境变量获取;用户的 SecretKey,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参考https://cloud.tencent.com/document/product/598/37140
+});
+const uploadFile = function(file) {
+ return new Promise((resolve, reject) => {
+ cos.uploadFile({
+ Bucket: "vv-1317974657",
+ // 填入您自己的存储桶,必须字段
+ Region: "ap-shanghai",
+ // 存储桶所在地域,例如 ap-beijing,必须字段
+ Key: "headerIcon/" + file.name,
+ // 存储在桶里的对象键(例如1.jpg,a/b/test.txt),必须字段文件名
+ FilePath: file.path,
+ // 必须
+ FileSize: "",
+ // v1.4.3之前的版本必须,v1.4.3及以后的版本非必须
+ SliceSize: 1024 * 1024 * 2,
+ // 触发分块上传的阈值,超过2MB使用分块上传,非必须,按需调整,最小支持1MB
+ // 支持自定义 headers 非必须
+ Headers: {
+ "x-cos-meta-test": 123
+ }
+ }, function(err, data) {
+ if (err) {
+ reject(err);
+ } else {
+ resolve(data.Location);
+ }
+ });
+ });
+};
+exports.uploadFile = uploadFile;
+//# sourceMappingURL=../../.sourcemap/mp-weixin/components/postFile.js.map
diff --git a/unpackage/dist/dev/mp-weixin/components/request.js b/unpackage/dist/dev/mp-weixin/components/request.js
index bff6b5d..eab1961 100644
--- a/unpackage/dist/dev/mp-weixin/components/request.js
+++ b/unpackage/dist/dev/mp-weixin/components/request.js
@@ -3,7 +3,6 @@ const common_vendor = require("../common/vendor.js");
function request(urldata) {
const { url, data, method, header, userInfo } = urldata;
const baseUrl = "http://192.168.0.218:8086/" + url;
- common_vendor.index.__f__("log", "at components/request.js:6", "``````````````````````````````````", userInfo);
if (userInfo) {
common_vendor.index.getStorage({
key: "userinfo",
diff --git a/unpackage/dist/dev/mp-weixin/pages/Home/Home.js b/unpackage/dist/dev/mp-weixin/pages/Home/Home.js
index b817600..101ac00 100644
--- a/unpackage/dist/dev/mp-weixin/pages/Home/Home.js
+++ b/unpackage/dist/dev/mp-weixin/pages/Home/Home.js
@@ -14,7 +14,6 @@ const _sfc_main = {
},
methods: {
goAdvertisement() {
- common_vendor.index.__f__("log", "at pages/Home/Home.vue:34", common_vendor.index);
this.$global.lastPage = getCurrentPages().router;
common_vendor.index.navigateTo({ url: "/pages/login/login" });
}
diff --git a/unpackage/dist/dev/mp-weixin/pages/Mine/Mine.js b/unpackage/dist/dev/mp-weixin/pages/Mine/Mine.js
index 26c3a19..8e02f54 100644
--- a/unpackage/dist/dev/mp-weixin/pages/Mine/Mine.js
+++ b/unpackage/dist/dev/mp-weixin/pages/Mine/Mine.js
@@ -13,7 +13,6 @@ const _sfc_main = {
key: "userinfo",
success: (res) => {
this.userinfo = res.data;
- common_vendor.index.__f__("log", "at pages/Mine/Mine.vue:33", this.userinfo);
}
});
},
diff --git a/unpackage/dist/dev/mp-weixin/pages/Setting/Setting.js b/unpackage/dist/dev/mp-weixin/pages/Setting/Setting.js
index 6f29da5..25075e5 100644
--- a/unpackage/dist/dev/mp-weixin/pages/Setting/Setting.js
+++ b/unpackage/dist/dev/mp-weixin/pages/Setting/Setting.js
@@ -1,6 +1,8 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const components_request = require("../../components/request.js");
+const components_postFile = require("../../components/postFile.js");
+const components_generateFileName = require("../../components/generateFileName.js");
const _sfc_main = {
inject: ["$global"],
data() {
@@ -44,38 +46,42 @@ const _sfc_main = {
title: "登录中...",
mask: true
});
- common_vendor.index.__f__("log", "at pages/Setting/Setting.vue:62", "userinfo", this.userinfo);
- common_vendor.index.__f__("log", "at pages/Setting/Setting.vue:63", "name", this.name);
- common_vendor.index.__f__("log", "at pages/Setting/Setting.vue:64", "id", this.id);
- common_vendor.index.__f__("log", "at pages/Setting/Setting.vue:65", "userSig", this.userSig);
- const res = await components_request.request({
- url: "user/updateUserInfo",
- method: "POST",
- data: {
- id: this.id,
- headerIcon: this.userinfo,
- nickName: this.name,
- usersig: this.userSig
- },
- userInfo: false
+ components_postFile.uploadFile({
+ path: this.userinfo,
+ name: components_generateFileName.generateFileName()
+ }).then((res) => {
+ this.userinfo = res;
+ }).catch((err) => {
+ common_vendor.index.__f__("log", "at pages/Setting/Setting.vue:71", err);
});
- common_vendor.index.__f__("log", "at pages/Setting/Setting.vue:78", "res", res);
- if (res.code === 200) {
- common_vendor.index.showToast({
- title: "修改成功",
- icon: "success"
- });
- common_vendor.index.__f__("log", "at pages/Setting/Setting.vue:84", "修改成功", res.data);
- common_vendor.index.setStorageSync("userinfo", res.data.info);
- common_vendor.index.hideLoading();
- common_vendor.index.navigateBack({
- delta: 1
- });
- } else {
- common_vendor.index.showToast({
- title: "修改失败",
- icon: "none"
+ if (this.userinfo) {
+ const res = await components_request.request({
+ url: "user/updateUserInfo",
+ method: "POST",
+ data: {
+ id: this.id,
+ headerIcon: this.userinfo,
+ nickName: this.name,
+ usersig: this.userSig.userSig
+ },
+ userInfo: false
});
+ if (res.code === 200) {
+ common_vendor.index.showToast({
+ title: "修改成功",
+ icon: "success"
+ });
+ common_vendor.index.setStorageSync("userinfo", res.data.info);
+ common_vendor.index.hideLoading();
+ common_vendor.index.navigateBack({
+ delta: 1
+ });
+ } else {
+ common_vendor.index.showToast({
+ title: "修改失败",
+ icon: "none"
+ });
+ }
}
}
}
diff --git a/unpackage/dist/dev/mp-weixin/pages/UserInformation/UserInformation.js b/unpackage/dist/dev/mp-weixin/pages/UserInformation/UserInformation.js
index ae3cb12..98168c8 100644
--- a/unpackage/dist/dev/mp-weixin/pages/UserInformation/UserInformation.js
+++ b/unpackage/dist/dev/mp-weixin/pages/UserInformation/UserInformation.js
@@ -1,6 +1,8 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const components_request = require("../../components/request.js");
+const components_postFile = require("../../components/postFile.js");
+const components_generateFileName = require("../../components/generateFileName.js");
const _sfc_main = {
inject: ["$global"],
data() {
@@ -46,39 +48,47 @@ const _sfc_main = {
provider: "weixin",
onlyAuthorize: true
});
- common_vendor.index.__f__("log", "at pages/UserInformation/UserInformation.vue:67", "code", code);
- common_vendor.index.__f__("log", "at pages/UserInformation/UserInformation.vue:68", "code", this.name);
- common_vendor.index.__f__("log", "at pages/UserInformation/UserInformation.vue:69", "code", this.userinfo);
- common_vendor.index.__f__("log", "at pages/UserInformation/UserInformation.vue:70", "code", this.id);
- common_vendor.index.__f__("log", "at pages/UserInformation/UserInformation.vue:71", "code", this.userSig);
- const res = await components_request.request({
- url: "user/inputUserInfo",
- method: "POST",
- data: {
- id: this.id,
- headerIcon: this.userinfo,
- nickName: this.name,
- code,
- usersig: this.userSig
- },
- userInfo: false
+ components_postFile.uploadFile({
+ path: this.userinfo,
+ name: components_generateFileName.generateFileName()
+ }).then((res) => {
+ this.userinfo = res;
+ }).catch((err) => {
+ common_vendor.index.__f__("log", "at pages/UserInformation/UserInformation.vue:76", err);
});
- common_vendor.index.__f__("log", "at pages/UserInformation/UserInformation.vue:84", "res", res);
- if (res.code === 200) {
- common_vendor.index.showToast({
- title: "登录成功",
- icon: "success"
- });
- common_vendor.index.__f__("log", "at pages/UserInformation/UserInformation.vue:90", "登录成功", res.data);
- common_vendor.index.setStorageSync("userinfo", res.data.info);
- common_vendor.index.hideLoading();
- common_vendor.index.reLaunch({
- url: this.$global.lastPage || "/pages/Home/Home"
- // 默认页
+ if (this.userinfo) {
+ const res = await components_request.request({
+ url: "user/inputUserInfo",
+ method: "POST",
+ data: {
+ id: this.id,
+ headerIcon: this.userinfo,
+ nickName: this.name,
+ code,
+ usersig: this.userSig.userSig
+ },
+ userInfo: false
});
+ if (res.code === 200) {
+ common_vendor.index.showToast({
+ title: "登录成功",
+ icon: "success"
+ });
+ common_vendor.index.setStorageSync("userinfo", res.data.info);
+ common_vendor.index.hideLoading();
+ common_vendor.index.reLaunch({
+ url: this.$global.lastPage || "/pages/Home/Home"
+ // 默认页
+ });
+ } else {
+ common_vendor.index.showToast({
+ title: "登录失败",
+ icon: "none"
+ });
+ }
} else {
common_vendor.index.showToast({
- title: "登录失败",
+ title: "上传失败",
icon: "none"
});
}
diff --git a/unpackage/dist/dev/mp-weixin/pages/login/login.js b/unpackage/dist/dev/mp-weixin/pages/login/login.js
index b997517..f0f3303 100644
--- a/unpackage/dist/dev/mp-weixin/pages/login/login.js
+++ b/unpackage/dist/dev/mp-weixin/pages/login/login.js
@@ -8,7 +8,8 @@ const _sfc_main = {
data() {
return {
userInfo: {},
- info: {}
+ info: {},
+ userSig: ""
};
},
onLoad() {
@@ -34,27 +35,26 @@ const _sfc_main = {
},
userInfo: false
});
- common_vendor.index.__f__("log", "at pages/login/login.vue:47", "登录结果:", res);
this.info = res;
+ const sdkAppID = Number(this.info.data.chatInfo.appId);
+ const userID = "administrator";
+ this.userSig = components_debug_GenerateTestUserSig.genTestUserSig({
+ SDKAPPID: sdkAppID,
+ SECRETKEY: this.info.data.chatInfo.appKey,
+ userID
+ });
+ common_vendor.index.setStorageSync("chatInfo", this.info.data.chatInfo);
+ common_vendor.index.setStorageSync("userSig", this.userSig);
+ common_vendor.index.setStorageSync("userinfo", this.info.data.info);
if (this.info.code === 200) {
if (this.info.data.newAccount) {
- const sdkAppID = Number(this.info.data.chatInfo.appId);
- const userID = "administrator";
- const { userSig: userSig2 } = components_debug_GenerateTestUserSig.genTestUserSig({
- SDKAPPID: sdkAppID,
- SECRETKEY: this.info.data.chatInfo.appKey,
- userID
- });
- common_vendor.index.setStorageSync("chatInfo", this.info.data.chatInfo);
- common_vendor.index.setStorageSync("userSig", userSig2);
- common_vendor.index.setStorageSync("userinfo", this.info.data.info);
common_vendor.index.reLaunch({
url: "/pages/UserInformation/UserInformation"
});
} else {
common_vendor.index.setStorageSync("userinfo", this.info.data.info);
common_vendor.index.hideLoading();
- components_TUILogin.TUIlogin(this.info.data.chatInfo.appId, this.info.data.info.userChatId, userSig);
+ components_TUILogin.TUIlogin(this.info.data.chatInfo.appId, this.info.data.info.id, this.userSig.userSig);
common_vendor.index.reLaunch({
url: this.$global.lastPage || "/pages/Home/Home"
// 默认页