|
|
import{L as e,M as t,N as s,O as n,P as i,G as o,Q as r,s as a,R as c,S as l,T as u,U as h,H as d,V as p,W as f,X as g,Y as m,Z as y,q as _,z as w,y as k,h as b,_ as v,$ as S,a0 as T,a1 as I,a2 as P,a3 as x,o as A,d as C,w as O,c as L,F as E,l as F,b as U,f as D,a4 as R,p as M,a as N,r as $,A as j,e as q,a5 as B,n as K,t as H,a6 as z,i as W,x as J,a7 as V,a8 as Y,a9 as Q,g as X}from"./index-d9c03bf0.js";import{_ as G}from"./_plugin-vue_export-helper.1b428a4d.js";import{r as Z}from"./uni-app.es.33963b28.js";const ee={pages:[{path:"pages/index/index",style:{navigationBarTitleText:"uni-app"}},{path:"pages/login/login",style:{enablePullDownRefresh:!1,navigationStyle:"custom"}},{path:"pages/invoice/list",style:{enablePullDownRefresh:!1,navigationStyle:"custom"}},{path:"pages/invoice/detail",style:{enablePullDownRefresh:!1,navigationStyle:"custom"}},{path:"pages/chat/list",style:{enablePullDownRefresh:!1,navigationStyle:"custom"}},{path:"pages/chat/detail",style:{enablePullDownRefresh:!1,navigationStyle:"custom"}},{path:"pages/invoice/edit",style:{enablePullDownRefresh:!1,navigationStyle:"custom"}}],globalStyle:{navigationBarTextStyle:"black",navigationBarTitleText:"体检平台",navigationBarBackgroundColor:"#F8F8F8",backgroundColor:"#F8F8F8","app-plus":{background:"#efeff4"}}};function te(e,t,s){return e(s={path:t,exports:{},require:function(e,t){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==t&&s.path)}},s.exports),s.exports}var se=te((function(e,t){var s;e.exports=(s=s||function(e,t){var s=Object.create||function(){function e(){}return function(t){var s;return e.prototype=t,s=new e,e.prototype=null,s}}(),n={},i=n.lib={},o=i.Base={extend:function(e){var t=s(this);return e&&t.mixIn(e),t.hasOwnProperty("init")&&this.init!==t.init||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},r=i.WordArray=o.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||c).stringify(this)},concat:function(e){var t=this.words,s=e.words,n=this.sigBytes,i=e.sigBytes;if(this.clamp(),n%4)for(var o=0;o<i;o++){var r=s[o>>>2]>>>24-o%4*8&255;t[n+o>>>2]|=r<<24-(n+o)%4*8}else for(o=0;o<i;o+=4)t[n+o>>>2]=s[o>>>2];return this.sigBytes+=i,this},clamp:function(){var t=this.words,s=this.sigBytes;t[s>>>2]&=4294967295<<32-s%4*8,t.length=e.ceil(s/4)},clone:function(){var e=o.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var s,n=[],i=function(t){var s=987654321,n=4294967295;return function(){var i=((s=36969*(65535&s)+(s>>16)&n)<<16)+(t=18e3*(65535&t)+(t>>16)&n)&n;return i/=4294967296,(i+=.5)*(e.random()>.5?1:-1)}},o=0;o<t;o+=4){var a=i(4294967296*(s||e.random()));s=987654071*a(),n.push(4294967296*a()|0)}return new r.init(n,t)}}),a=n.enc={},c=a.Hex={stringify:function(e){for(var t=e.words,s=e.sigBytes,n=[],i=0;i<s;i++){var o=t[i>>>2]>>>24-i%4*8&255;n.push((o>>>4).toString(16)),n.push((15&o).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,s=[],n=0;n<t;n+=2)s[n>>>3]|=parseInt(e.substr(n,2),16)<<24-n%8*4;return new r.init(s,t/2)}},l=a.Latin1={stringify:function(e){for(var t=e.words,s=e.sigBytes,n=[],i=0;i<s;i++){var o=t[i>>>2]>>>24-i%4*8&255;n.push(String.fromCharCode(o))}return n.join("")},parse:function(e){for(var t=e.length,s=[],n=0;n<t;n++)s[n>>>2]|=(255&e.charCodeAt(n))<<24-n%4*8;return new r.init(s,t)}},u=a.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},h=i.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new r.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=u.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var s=this._data,n=s.words,i=s.sigBytes,o=this.blockSize,a=i/(4*o),c=(a=t?e.ceil(a):e.max((0|a)-this._minBufferSize,0))*o,l=e.min(4*c,i);if(c){for(var u=0;u<c;u+=o)this._doProcessBlock(n,u);var h=n.splice(0,c);s.sigBytes-=l}return new r.init(h,l)},clone:function(){var e=o.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});i.Hasher=h.extend({cfg:o.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){h.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(e){return function(t,s){return new e.init(s).finalize(t)}},_createHmacHelper:function(e){return function(t,s){return new d.HMAC.init(e,s).finalize(t)}}});var d=n.algo={};return n}(Math),s)})),ne=se,ie=(te((function(e,t){var s;e.exports=(s=ne,function(e){var t=s,n=t.lib,i=n.WordArray,o=n.Hasher,r=t.algo,a=[];!function(){for(var t=0;t<64;t++)a[t]=4294967296*e.abs(e.sin(t+1))|0}();var c=r.MD5=o.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,t){for(var s=0;s<16;s++){var n=t+s,i=e[n];e[n]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8)}var o=this._hash.words,r=e[t+0],c=e[t+1],p=e[t+2],f=e[t+3],g=e[t+4],m=e[t+5],y=e[t+6],_=e[t+7],w=e[t+8],k=e[t+9],b=e[t+10],v=e[t+11],S=e[t+12],T=e[t+13],I=e[t+14],P=e[t+15],x=o[0],A=o[1],C=o[2],O=o[3];x=l(x,A,C,O,r,7,a[0]),O=l(O,x,A,C,c,12,a[1]),C=l(C,O,x,A,p,17,a[2]),A=l(A,C,O,x,f,22,a[3]),x=l(x,A,C,O,g,7,a[4]),O=l(O,x,A,C,m,12,a[5]),C=l(C,O,x,A,y,17,a[6]),A=l(A,C,O,x,_,22,a[7]),x=l(x,A,C,O,w,7,a[8]),O=l(O,x,A,C,k,12,a[9]),C=l(C,O,x,A,b,17,a[10]),A=l(A,C,O,x,v,22,a[11]),x=l(x,A,C,O,S,7,a[12]),O=l(O,x,A,C,T,12,a[13]),C=l(C,O,x,A,I,17,a[14]),x=u(x,A=l(A,C,O,x,P,22,a[15]),C,O,c,5,a[16]),O=u(O,x,A,C,y,9,a[17]),C=u(C,O,x,A,v,14,a[18]),A=u(A,C,O,x,r,20,a[19]),x=u(x,A,C,O,m,5,a[20]),O=u(O,x,A,C,b,9,a[21]),C=u(C,O,x,A,P,14,a[22]),A=u(A,C,O,x,g,20,a[23]),x=u(x,A,C,O,k,5,a[24]),O=u(O,x,A,C,I,9,a[25]),C=u(C,O,x,A,f,14,a[26]),A=u(A,C,O,x,w,20,a[27]),x=u(x,A,C,O,T,5,a[28]),O=u(O,x,A,C,p,9,a[29]),C=u(C,O,x,A,_,14,a[30]),x=h(x,A=u(A,C,O,x,S,20,a[31]),C,O,m,4,a[32]),O=h(O,x,A,C,w,11,a[33]),C=h(C,O,x,A,v,16,a[34]),A=h(A,C,O,x,I,23,a[35]),x=h(x,A,C,O,c,4,a[36]),O=h(O,x,A,C,g,11,a[37]),C=h(C,O,x,A,_,16,a[38]),A=h(A,C,O,x,b,23,a[39]),x=h(x,A,C,O,T,4,a[40]),O=h(O,x,A,C,r,11,a[41]),C=h(C,O,x,A,f,16,a[42]),A=h(A,C,O,x,y,23,a[43]),x=h(x,A,C,O,k,4,a[44]),O=h(O,x,A,C,S,11,a[45]),C=h(C,O,x,A,P,16,a[46]),x=d(x,A=h(A,C,O,x,p,23,a[47]),C,O,r,6,a[48]),O=d(O,x,A,C,_,10,a[49]),C=d(C,O,x,A,I,15,a[50]),A=d(A,C,O,x,m,21,a[51]),x=d(x,A,C,O,S,6,a[52]),O=d(O,x,A,C,f,10,a[53]),C=d(C,O,x,A,b,15,a[54]),A=d(A,C,O,x,c,21,a[55]),x=d(x,A,C,O,w,6,a[56]),O=d(O,x,A,C,P,10,a[57]),C=d(C,O,x,A,y,15,a[58]),A=d(A,C,O,x,T,21,a[59]),x=d(x,A,C,O,g,6,a[60]),O=d(O,x,A,C,v,10,a[61]),C=d(C,O,x,A,p,15,a[62]),A=d(A,C,O,x,k,21,a[63]),o[0]=o[0]+x|0,o[1]=o[1]+A|0,o[2]=o[2]+C|0,o[3]=o[3]+O|0},_doFinalize:function(){var t=this._data,s=t.words,n=8*this._nDataBytes,i=8*t.sigBytes;s[i>>>5]|=128<<24-i%32;var o=e.floor(n/4294967296),r=n;s[15+(i+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),s[14+(i+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(s.length+1),this._process();for(var a=this._hash,c=a.words,l=0;l<4;l++){var u=c[l];c[l]=16711935&(u<<8|u>>>24)|4278255360&(u<<24|u>>>8)}return a},clone:function(){var e=o.clone.call(this);return e._hash=this._hash.clone(),e}});function l(e,t,s,n,i,o,r){var a=e+(t&s|~t&n)+i+r;return(a<<o|a>>>32-o)+t}function u(e,t,s,n,i,o,r){var a=e+(t&n|s&~n)+i+r;return(a<<o|a>>>32-o)+t}function h(e,t,s,n,i,o,r){var a=e+(t^s^n)+i+r;return(a<<o|a>>>32-o)+t}function d(e,t,s,n,i,o,r){var a=e+(s^(t|~n))+i+r;return(a<<o|a>>>32-o)+t}t.MD5=o._createHelper(c),t.HmacMD5=o._createHmacHelper(c)}(Math),s.MD5)})),te((function(e,t){var s,n,i;e.exports=(n=(s=ne).lib.Base,i=s.enc.Utf8,void(s.algo.HMAC=n.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=i.parse(t));var s=e.blockSize,n=4*s;t.sigBytes>n&&(t=e.finalize(t)),t.clamp();for(var o=this._oKey=t.clone(),r=this._iKey=t.clone(),a=o.words,c=r.words,l=0;l<s;l++)a[l]^=1549556828,c[l]^=909522486;o.sigBytes=r.sigBytes=n,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher,s=t.finalize(e);return t.reset(),t.finalize(this._oKey.clone().concat(s))}})))})),te((function(e,t){e.exports=ne.HmacMD5}))),oe=te((function(e,t){e.exports=ne.enc.Utf8})),re=te((function(e,t){var s,n,i;e.exports=(i=(n=s=ne).lib.WordArray,n.enc.Base64={stringify:function(e){var t=e.words,s=e.sigBytes,n=this._map;e.clamp();for(var i=[],o=0;o<s;o+=3)for(var r=(t[o>>>2]>>>24-o%4*8&255)<<16|(t[o+1>>>2]>>>24-(o+1)%4*8&255)<<8|t[o+2>>>2]>>>24-(o+2)%4*8&255,a=0;a<4&&o+.75*a<s;a++)i.push(n.charAt(r>>>6*(3-a)&63));var c=n.charAt(64);if(c)for(;i.length%4;)i.push(c);return i.join("")},parse:function(e){var t=e.length,s=this._map,n=this._reverseMap;if(!n){n=this._reverseMap=[];for(var o=0;o<s.length;o++)n[s.charCodeAt(o)]=o}var r=s.charAt(64);if(r){var a=e.indexOf(r);-1!==a&&(t=a)}return function(e,t,s){for(var n=[],o=0,r=0;r<t;r++)if(r%4){var a=s[e.charCodeAt(r-1)]<<r%4*2,c=s[e.charCodeAt(r)]>>>6-r%4*2;n[o>>>2]|=(a|c)<<24-o%4*8,o++}return i.create(n,o)}(e,t,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},s.enc.Base64)}));const ae="FUNCTION",ce="pending",le="rejected";function ue(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()}function he(e){return"object"===ue(e)}function de(e){return"function"==typeof e}function pe(e){return function(){try{return e.apply(e,arguments)}catch(t){console.error(t)}}}const fe="REJECTED",ge="NOT_PENDING";class me{constructor({createPromise:e,retryRule:t=fe}={}){this.createPromise=e,this.status=null,this.promise=null,this.retryRule=t}get needRetry(){if(!this.status)return!0;switch(this.retryRule){case fe:return this.status===le;case ge:return this.status!==ce}}exec(){return this.needRetry?(this.status=ce,this.promise=this.createPromise().then((e=>(this.status="fulfilled",Promise.resolve(e))),(e=>(this.status=le,Promise.reject(e)))),this.promise):this.promise}}function ye(e){return e&&"string"==typeof e?JSON.parse(e):e}const _e=ye([]);ye("");const we=ye("[]")||[];let ke="";try{ke="__UNI__BD068F8"}catch(ct){}let be={};function ve(e,t={}){var s,n;return s=be,n=e,Object.prototype.hasOwnProperty.call(s,n)||(be[e]=t),be[e]}const Se=["invoke","success","fail","complete"],Te=ve("_globalUniCloudInterceptor");function Ie(e,t){Te[e]||(Te[e]={}),he(t)&&Object.keys(t).forEach((s=>{Se.indexOf(s)>-1&&function(e,t,s){let n=Te[e][t];n||(n=Te[e][t]=[]),-1===n.indexOf(s)&&de(s)&&n.push(s)}(e,s,t[s])}))}function Pe(e,t){Te[e]||(Te[e]={}),he(t)?Object.keys(t).forEach((s=>{Se.indexOf(s)>-1&&function(e,t,s){const n=Te[e][t];if(!n)return;const i=n.indexOf(s);i>-1&&n.splice(i,1)}(e,s,t[s])})):delete Te[e]}function xe(e,t){return e&&0!==e.length?e.reduce(((e,s)=>e.then((()=>s(t)))),Promise.resolve()):Promise.resolve()}function Ae(e,t){return Te[e]&&Te[e][t]||[]}function Ce(e){Ie("callObject",e)}const Oe=ve("_globalUniCloudListener"),Le="response",Ee="needLogin",Fe="refreshToken",Ue="clientdb",De="cloudfunction",Re="cloudobject";function Me(e){return Oe[e]||(Oe[e]=[]),Oe[e]}function Ne(e,t){const s=Me(e);s.includes(t)||s.push(t)}function $e(e,t){const s=Me(e),n=s.indexOf(t);-1!==n&&s.splice(n,1)}function je(e,t){const s=Me(e);for(let n=0;n<s.length;n++)(0,s[n])(t)}let qe,Be=!1;function Ke(){return qe||(qe=new Promise((e=>{Be&&e(),function t(){if("function"==typeof s){const t=s();t&&t[0]&&(Be=!0,e())}Be||setTimeout((()=>{t()}),30)}()})),qe)}function He(e){const t={};for(const s in e){const n=e[s];de(n)&&(t[s]=pe(n))}return t}class ze extends Error{constructor(e){super(e.message),this.errMsg=e.message||e.errMsg||"unknown system error",this.code=this.errCode=e.code||e.errCode||"SYSTEM_ERROR",this.errSubject=this.subject=e.subject||e.errSubject,this.cause=e.cause,this.requestId=e.requestId}toJson(e=0){if(!(e>=10))return e++,{errCode:this.errCode,errMsg:this.errMsg,errSubject:this.errSubject,cause:this.cause&&this.cause.toJson?this.cause.toJson(e):this.cause}}}var We={request:e=>h(e),uploadFile:e=>d(e),setStorageSync:(e,t)=>p(e,t),getStorageSync:e=>f(e),removeStorageSync:e=>g(e),clearStorageSync:()=>m()};function Je(e){return e&&Je(e.__v_raw)||e}function Ve(){return{token:We.getStorageSync("uni_id_token")||We.getStorageSync("uniIdToken"),tokenExpired:We.getStorageSync("uni_id_token_expired")}}function Ye({token:e,tokenExpired:t}={}){e&&We.setStorageSync("uni_id_token",e),t&&We.setStorageSync("uni_id_token_expired",t)}let Qe,Xe;function Ge(){return Qe||(Qe=y()),Qe}function Ze(){let e,t;try{if(I){if(I.toString().indexOf("not yet implemented")>-1)return;const{scene:s,channel:n}=I();e=n,t=s}}catch(s){}return{channel:e,scene:t}}function et(){const e=T&&T()||"en";if(Xe)return{...Xe,locale:e,LOCALE:e};const t=Ge(),{deviceId:s,osName:n,uniPlatform:i,appId:o}=t,r=["pixelRatio","brand","model","system","language","version","platform","host","SDKVersion","swanNativeVersion","app","AppPlatform","fontSizeSetting"];for(let a=0;a<r.length;a++)delete t[r[a]];return Xe={PLATFORM:i,OS:n,APPID:o,DEVICEID:s,...Ze(),...t},{...Xe,locale:e,LOCALE:e}}var tt=function(e,t){let s="";return Object.keys(e).sort().forEach((function(t){e[t]&&(s=s+"&"+t+"="+e[t])})),s=s.slice(1),ie(s,t).toString()},st=function(e,t){return new Promise(((s,n)=>{t(Object.assign(e,{complete(e){e||(e={});const t=e.data&&e.data.header&&e.data.header["x-serverless-request-id"]||e.header&&e.header["request-id"];if(!e.statusCode||e.statusCode>=400)return n(new ze({code:"SYS_ERR",message:e.errMsg||"request:fail",requestId:t}));const i=e.data;if(i.error)return n(new ze({code:i.error.code,message:i.error.message,requestId:t}));i.result=i.data,i.requestId=t,delete i.data,s(i)}}))}))},nt=function(e){return re.stringify(oe.parse(e))},it=class{constructor(e){["spaceId","clientSecret"].forEach((t=>{if(!Object.prototype.hasOwnProperty.call(e,t))throw new Error(`${t} required`)})),this.config=Object.assign({},{endpoint:0===e.spaceId.indexOf("mp-")?"https://api.next.bspapp.com":"https://api.bspapp.com"},e),this.config.provider="aliyun",this.config.requestUrl=this.config.endpoint+"/client",this.config.envType=this.config.envType||"public",this.config.accessTokenKey="access_token_"+this.config.spaceId,this.adapter=We,this._getAccessTokenPromiseHub=new me({createPromise:()=>this.requestAuth(this.setupRequest({method:"serverless.auth.user.anonymousAuthorize",params:"{}"},"auth")).then((e=>{if(!e.result||!e.result.accessToken)throw new ze({code:"AUTH_FAILED",message:"获取accessToken失败"});this.setAccessToken(e.result.accessToken)})),retryRule:ge})}get hasAccessToken(){return!!this.accessToken}setAccessToken(e){this.accessToken=e}requestWrapped(e){return st(e,this.adapter.request)}requestAuth(e){return this.requestWrapped(e)}request(e,t){return Promise.resolve().then((()=>this.hasAccessToken?t?this.requestWrapped(e):this.requestWrapped(e).catch((t=>new Promise(((e,s)=>{!t||"GATEWAY_INVALID_TOKEN"!==t.code&&"InvalidParameter.InvalidToken"!==t.code?s(t):e()})).then((()=>this.getAccessToken())).then((()=>{const t=this.rebuildRequest(e);return this.request(t,!0)})))):this.getAccessToken().then((()=>{const t=this.rebuildRequest(e);return this.request(t,!0)}))))}rebuildRequest(e){const t=Object.assign({},e);return t.data.token=this.accessToken,t.header["x-basement-token"]=this.accessToken,t.header["x-serverless-sign"]=tt(t.data,this.config.clientSecret),t}setupRequest(e,t){const s=Object.assign({},e,{spaceId:this.config.spaceId,timestamp:Date.now()}),n={"Content-Type":"application/json"};return"auth"!==t&&(s.token=this.accessToken,n["x-basement-token"]=this.accessToken),n["x-serverless-sign"]=tt(s,this.config.clientSecret),{url:this.config.requestUrl,method:"POST",data:s,dataType:"json",header:n}}getAccessToken(){return this._getAccessTokenPromiseHub.exec()}async authorize(){await this.getAccessToken()}callFunction(e){const t={method:"serverless.function.runtime.invoke",params:JSON.stringify({functionTarget:e.name,functionArgs:e.data||{}})};return this.request(this.setupRequest(t))}getOSSUploadOptionsFromPath(e){const t={method:"serverless.file.resource.generateProximalSign",params:JSON.stringify(e)};return this.request(this.setupRequest(t))}uploadFileToOSS({url:e,formData:t,name:s,filePath:n,fileType:i,onUploadProgress:o}){return new Promise(((r,a)=>{const c=this.adapter.uploadFile({url:e,formData:t,name:s,filePath:n,fileType:i,header:{"X-OSS-server-side-encrpytion":"AES256"},success(e){e&&e.statusCode<400?r(e):a(new ze({code:"UPLOAD_FAILED",message:"文件上传失败"}))},fail(e){a(new ze({code:e.code||"UPLOAD_FAILED",message:e.message||e.errMsg||"文件上传失败"}))}});"function"==typeof o&&c&&"function"==typeof c.onProgressUpdate&&c.onProgressUpdate((e=>{o({loaded:e.totalBytesSent,total:e.totalBytesExpectedToSend})}))}))}reportOSSUpload(e){const t={method:"serverless.file.resource.report",params:JSON.stringify(e)};return this.request(this.setupRequest(t))}async uploadFile({filePath:e,cloudPath:t,fileType:s="image",cloudPathAsRealPath:n=!1,onUploadProgress:i,config:o}){if("string"!==ue(t))throw new ze({code:"INVALID_PARAM",message:"cloudPath必须为字符串类型"});if(!(t=t.trim()))throw new ze({code:"INVALID_PARAM",message:"cloudPath不可为空"});if(/:\/\//.test(t))throw new ze({code:"INVALID_PARAM",message:"cloudPath不合法"});const r=o&&o.envType||this.config.envType;if(n&&("/"!==t[0]&&(t="/"+t),t.indexOf("\\")>-1))throw new ze({code:"INVALID_PARAM",message:"使用cloudPath作为路径时,cloudPath不可包含“\\”"});const a=(await this.getOSSUploadOptionsFromPath({env:r,filename:n?t.split("/").pop():t,fileId:n?t:void 0})).result,c="https://"+a.cdnDomain+"/"+a.ossPath,{securityToken:l,accessKeyId:u,signature:h,host:d,ossPath:p,id:f,policy:g,ossCallbackUrl:m}=a,y={"Cache-Control":"max-age=2592000","Content-Disposition":"attachment",OSSAccessKeyId:u,Signature:h,host:d,id:f,key:p,policy:g,success_action_status:200};if(l&&(y["x-oss-security-token"]=l),m){const e=JSON.stringify({callbackUrl:m,callbackBody:JSON.stringify({fileId:f,spaceId:this.config.spaceId}),callbackBodyType:"application/json"});y.callback=nt(e)}const _={url:"https://"+a.host,formData:y,fileName:"file",name:"file",filePath:e,fileType:s};if(await this.uploadFileToOSS(Object.assign({},_,{onUploadProgress:i})),m)return{success:!0,filePath:e,fileID:c};if((await this.reportOSSUpload({id:f})).success)return{success:!0,filePath:e,fileID:c};throw new ze({code:"UPLOAD_FAILED",message:"文件上传失败"})}getTempFileURL({fileList:e}={}){return new Promise(((t,s)=>{Array.isArray(e)&&0!==e.length||s(new ze({code:"INVALID_PARAM",message:"fileList的元素必须是非空的字符串"})),t({fileList:e.map((e=>({fileID:e,tempFileURL:e})))})}))}async getFileInfo({fileList:e}={}){if(!Array.isArray(e)||0===e.length)throw new ze({code:"INVALID_PARAM",message:"fileList的元素必须是非空的字符串"});const t={method:"serverless.file.resource.info",params:JSON.stringify({id:e.map((e=>e.split("?")[0])).join(",")})};return{fileList:(await this.request(this.setupRequest(t))).result}}},ot={init(e){const t=new it(e),s={signInAnonymously:function(){return t.authorize()},getLoginState:function(){return Promise.resolve(!1)}};return t.auth=function(){return s},t.customAuth=t.auth,t}};const rt="undefined"!=typeof location&&"http:"===location.protocol?"http:":"https:";var at,ct;(ct=at||(at={})).local="local",ct.none="none",ct.session="session";var lt=function(){},ut=te((function(e,t){var s;e.exports=(s=ne,function(e){var t=s,n=t.lib,i=n.WordArray,o=n.Hasher,r=t.algo,a=[],c=[];!function(){function t(t){for(var s=e.sqrt(t),n=2;n<=s;n++)if(!(t%n))return!1;return!0}function s(e){return 4294967296*(e-(0|e))|0}for(var n=2,i=0;i<64;)t(n)&&(i<8&&(a[i]=s(e.pow(n,.5))),c[i]=s(e.pow(n,1/3)),i++),n++}();var l=[],u=r.SHA256=o.extend({_doReset:function(){this._hash=new i.init(a.slice(0))},_doProcessBlock:function(e,t){for(var s=this._hash.words,n=s[0],i=s[1],o=s[2],r=s[3],a=s[4],u=s[5],h=s[6],d=s[7],p=0;p<64;p++){if(p<16)l[p]=0|e[t+p];else{var f=l[p-15],g=(f<<25|f>>>7)^(f<<14|f>>>18)^f>>>3,m=l[p-2],y=(m<<15|m>>>17)^(m<<13|m>>>19)^m>>>10;l[p]=g+l[p-7]+y+l[p-16]}var _=n&i^n&o^i&o,w=(n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22),k=d+((a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25))+(a&u^~a&h)+c[p]+l[p];d=h,h=u,u=a,a=r+k|0,r=o,o=i,i=n,n=k+(w+_)|0}s[0]=s[0]+n|0,s[1]=s[1]+i|0,s[2]=s[2]+o|0,s[3]=s[3]+r|0,s[4]=s[4]+a|0,s[5]=s[5]+u|0,s[6]=s[6]+h|0,s[7]=s[7]+d|0},_doFinalize:function(){var t=this._data,s=t.words,n=8*this._nDataBytes,i=8*t.sigBytes;return s[i>>>5]|=128<<24-i%32,s[14+(i+64>>>9<<4)]=e.floor(n/4294967296),s[15+(i+64>>>9<<4)]=n,t.sigBytes=4*s.length,this._process(),this._hash},clone:function(){var e=o.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA256=o._createHelper(u),t.HmacSHA256=o._createHmacHelper(u)}(Math),s.SHA256)})),ht=ut,dt=te((function(e,t){e.exports=ne.HmacSHA256}));const pt=()=>{let e;if(!Promise){e=()=>{},e.promise={};const t=()=>{throw new ze({message:'Your Node runtime does support ES6 Promises. Set "global.Promise" to your preferred implementation of promises.'})};return Object.defineProperty(e.promise,"then",{get:t}),Object.defineProperty(e.promise,"catch",{get:t}),e}const t=new Promise(((t,s)=>{e=(e,n)=>e?s(e):t(n)}));return e.promise=t,e};function ft(e){return void 0===e}function gt(e){return"[object Null]"===Object.prototype.toString.call(e)}var mt;!function(e){e.WEB="web",e.WX_MP="wx_mp"}(mt||(mt={}));const yt={adapter:null,runtime:void 0},_t=["anonymousUuidKey"];class wt extends lt{constructor(){super(),yt.adapter.root.tcbObject||(yt.adapter.root.tcbObject={})}setItem(e,t){yt.adapter.root.tcbObject[e]=t}getItem(e){return yt.adapter.root.tcbObject[e]}removeItem(e){delete yt.adapter.root.tcbObject[e]}clear(){delete yt.adapter.root.tcbObject}}function kt(e,t){switch(e){case"local":return t.localStorage||new wt;case"none":return new wt;default:return t.sessionStorage||new wt}}class bt{constructor(e){if(!this._storage){this._persistence=yt.adapter.primaryStorage||e.persistence,this._storage=kt(this._persistence,yt.adapter);const t=`access_token_${e.env}`,s=`access_token_expire_${e.env}`,n=`refresh_token_${e.env}`,i=`anonymous_uuid_${e.env}`,o=`login_type_${e.env}`,r=`user_info_${e.env}`;this.keys={accessTokenKey:t,accessTokenExpireKey:s,refreshTokenKey:n,anonymousUuidKey:i,loginTypeKey:o,userInfoKey:r}}}updatePersistence(e){if(e===this._persistence)return;const t="local"===this._persistence;this._persistence=e;const s=kt(e,yt.adapter);for(const n in this.keys){const e=this.keys[n];if(t&&_t.includes(n))continue;const i=this._storage.getItem(e);ft(i)||gt(i)||(s.setItem(e,i),this._storage.removeItem(e))}this._storage=s}setStore(e,t,s){if(!this._storage)return;const n={version:s||"localCachev1",content:t},i=JSON.stringify(n);try{this._storage.setItem(e,i)}catch(o){throw o}}getStore(e,t){try{if(!this._storage)return}catch(n){return""}t=t||"localCachev1";const s=this._storage.getItem(e);return s&&s.indexOf(t)>=0?JSON.parse(s).content:""}removeStore(e){this._storage.removeItem(e)}}const vt={},St={};function Tt(e){return vt[e]}class It{constructor(e,t){this.data=t||null,this.name=e}}class Pt extends It{constructor(e,t){super("error",{error:e,data:t}),this.error=e}}const xt=new class{constructor(){this._listeners={}}on(e,t){return s=e,n=t,(i=this._listeners)[s]=i[s]||[],i[s].push(n),this;var s,n,i}off(e,t){return function(e,t,s){if(s&&s[e]){const n=s[e].indexOf(t);-1!==n&&s[e].splice(n,1)}}(e,t,this._listeners),this}fire(e,t){if(e instanceof Pt)return console.error(e.error),this;const s="string"==typeof e?new It(e,t||{}):e,n=s.name;if(this._listens(n)){s.target=this;const e=this._listeners[n]?[...this._listeners[n]]:[];for(const t of e)t.call(this,s)}return this}_listens(e){return this._listeners[e]&&this._listeners[e].length>0}};function At(e,t){xt.on(e,t)}function Ct(e,t={}){xt.fire(e,t)}function Ot(e,t){xt.off(e,t)}const Lt="loginStateChanged",Et="loginStateExpire",Ft="loginTypeChanged",Ut="anonymousConverted",Dt="refreshAccessToken";var Rt;!function(e){e.ANONYMOUS="ANONYMOUS",e.WECHAT="WECHAT",e.WECHAT_PUBLIC="WECHAT-PUBLIC",e.WECHAT_OPEN="WECHAT-OPEN",e.CUSTOM="CUSTOM",e.EMAIL="EMAIL",e.USERNAME="USERNAME",e.NULL="NULL"}(Rt||(Rt={}));const Mt=["auth.getJwt","auth.logout","auth.signInWithTicket","auth.signInAnonymously","auth.signIn","auth.fetchAccessTokenWithRefreshToken","auth.signUpWithEmailAndPassword","auth.activateEndUserMail","auth.sendPasswordResetEmail","auth.resetPasswordWithToken","auth.isUsernameRegistered"],Nt={"X-SDK-Version":"1.3.5"};function $t(e,t,s){const n=e[t];e[t]=function(t){const i={},o={};s.forEach((s=>{const{data:n,headers:r}=s.call(e,t);Object.assign(i,n),Object.assign(o,r)}));const r=t.data;return r&&(()=>{var e;if(e=r,"[object FormData]"!==Object.prototype.toString.call(e))t.data={...r,...i};else for(const t in i)r.append(t,i[t])})(),t.headers={...t.headers||{},...o},n.call(e,t)}}function jt(){const e=Math.random().toString(16).slice(2);return{data:{seqId:e},headers:{...Nt,"x-seqid":e}}}class qt{constructor(e={}){var t;this.config=e,this._reqClass=new yt.adapter.reqClass({timeout:this.config.timeout,timeoutMsg:`请求在${this.config.timeout/1e3}s内未完成,已中断`,restrictedMethods:["post"]}),this._cache=Tt(this.config.env),this._localCache=(t=this.config.env,St[t]),$t(this._reqClass,"post",[jt]),$t(this._reqClass,"upload",[jt]),$t(this._reqClass,"download",[jt])}async post(e){return await this._reqClass.post(e)}async upload(e){return await this._reqClass.upload(e)}async download(e){return await this._reqClass.download(e)}async refreshAccessToken(){let e,t;this._refreshAccessTokenPromise||(this._refreshAccessTokenPromise=this._refreshAccessToken());try{e=await this._refreshAccessTokenPromise}catch(s){t=s}if(this._refreshAccessTokenPromise=null,this._shouldRefreshAccessTokenHook=null,t)throw t;return e}async _refreshAccessToken(){const{accessTokenKey:e,accessTokenExpireKey:t,refreshTokenKey:s,loginTypeKey:n,anonymousUuidKey:i}=this._cache.keys;this._cache.removeStore(e),this._cache.removeStore(t);let o=this._cache.getStore(s);if(!o)throw new ze({message:"未登录CloudBase"});const r={refresh_token:o},a=await this.request("auth.fetchAccessTokenWithRefreshToken",r);if(a.data.code){const{code:e}=a.data;if("SIGN_PARAM_INVALID"===e||"REFRESH_TOKEN_EXPIRED"===e||"INVALID_REFRESH_TOKEN"===e){if(this._cache.getStore(n)===Rt.ANONYMOUS&&"INVALID_REFRESH_TOKEN"===e){const e=this._cache.getStore(i),t=this._cache.getStore(s),n=await this.send("auth.signInAnonymously",{anonymous_uuid:e,refresh_token:t});return this.setRefreshToken(n.refresh_token),this._refreshAccessToken()}Ct(Et),this._cache.removeStore(s)}throw new ze({code:a.data.code,message:`刷新access token失败:${a.data.code}`})}if(a.data.access_token)return Ct(Dt),this._cache.setStore(e,a.data.access_token),this._cache.setStore(t,a.data.access_token_expire+Date.now()),{accessToken:a.data.access_token,accessTokenExpire:a.data.access_token_expire};a.data.refresh_token&&(this._cache.removeStore(s),this._cache.setStore(s,a.data.refresh_token),this._refreshAccessToken())}async getAccessToken(){const{accessTokenKey:e,accessTokenExpireKey:t,refreshTokenKey:s}=this._cache.keys;if(!this._cache.getStore(s))throw new ze({message:"refresh token不存在,登录状态异常"});let n=this._cache.getStore(e),i=this._cache.getStore(t),o=!0;return this._shouldRefreshAccessTokenHook&&!(await this._shouldRefreshAccessTokenHook(n,i))&&(o=!1),(!n||!i||i<Date.now())&&o?this.refreshAccessToken():{accessToken:n,accessTokenExpire:i}}async request(e,t,s){const n=`x-tcb-trace_${this.config.env}`;let i="application/x-www-form-urlencoded";const o={action:e,env:this.config.env,dataVersion:"2019-08-16",...t};if(-1===Mt.indexOf(e)){const{refreshTokenKey:e}=this._cache.keys;this._cache.getStore(e)&&(o.access_token=(await this.getAccessToken()).accessToken)}let r;if("storage.uploadFile"===e){r=new FormData;for(let e in r)r.hasOwnProperty(e)&&void 0!==r[e]&&r.append(e,o[e]);i="multipart/form-data"}else{i="application/json",r={};for(let e in o)void 0!==o[e]&&(r[e]=o[e])}let a={headers:{"content-type":i}};s&&s.onUploadProgress&&(a.onUploadProgress=s.onUploadProgress);const c=this._localCache.getStore(n);c&&(a.headers["X-TCB-Trace"]=c);const{parse:l,inQuery:u,search:h}=t;let d={env:this.config.env};l&&(d.parse=!0),u&&(d={...u,...d});let p=function(e,t,s={}){const n=/\?/.test(t);let i="";for(let o in s)""===i?!n&&(t+="?"):i+="&",i+=`${o}=${encodeURIComponent(s[o])}`;return/^http(s)?\:\/\//.test(t+=i)?t:`${e}${t}`}(rt,"//tcb-api.tencentcloudapi.com/web",d);h&&(p+=h);const f=await this.post({url:p,data:r,...a}),g=f.header&&f.header["x-tcb-trace"];if(g&&this._localCache.setStore(n,g),200!==Number(f.status)&&200!==Number(f.statusCode)||!f.data)throw new ze({code:"NETWORK_ERROR",message:"network request error"});return f}async send(e,t={}){const s=await this.request(e,t,{onUploadProgress:t.onUploadProgress});if("ACCESS_TOKEN_EXPIRED"===s.data.code&&-1===Mt.indexOf(e)){await this.refreshAccessToken();const s=await this.request(e,t,{onUploadProgress:t.onUploadProgress});if(s.data.code)throw new ze({code:s.data.code,message:s.data.message});return s.data}if(s.data.code)throw new ze({code:s.data.code,message:s.data.message});return s.data}setRefreshToken(e){const{accessTokenKey:t,accessTokenExpireKey:s,refreshTokenKey:n}=this._cache.keys;this._cache.removeStore(t),this._cache.removeStore(s),this._cache.setStore(n,e)}}const Bt={};function Kt(e){return Bt[e]}class Ht{constructor(e){this.config=e,this._cache=Tt(e.env),this._request=Kt(e.env)}setRefreshToken(e){const{accessTokenKey:t,accessTokenExpireKey:s,refreshTokenKey:n}=this._cache.keys;this._cache.removeStore(t),this._cache.removeStore(s),this._cache.setStore(n,e)}setAccessToken(e,t){const{accessTokenKey:s,accessTokenExpireKey:n}=this._cache.keys;this._cache.setStore(s,e),this._cache.setStore(n,t)}async refreshUserInfo(){const{data:e}=await this._request.send("auth.getUserInfo",{});return this.setLocalUserInfo(e),e}setLocalUserInfo(e){const{userInfoKey:t}=this._cache.keys;this._cache.setStore(t,e)}}class zt{constructor(e){if(!e)throw new ze({code:"PARAM_ERROR",message:"envId is not defined"});this._envId=e,this._cache=Tt(this._envId),this._request=Kt(this._envId),this.setUserInfo()}linkWithTicket(e){if("string"!=typeof e)throw new ze({code:"PARAM_ERROR",message:"ticket must be string"});return this._request.send("auth.linkWithTicket",{ticket:e})}linkWithRedirect(e){e.signInWithRedirect()}updatePassword(e,t){return this._request.send("auth.updatePassword",{oldPassword:t,newPassword:e})}updateEmail(e){return this._request.send("auth.updateEmail",{newEmail:e})}updateUsername(e){if("string"!=typeof e)throw new ze({code:"PARAM_ERROR",message:"username must be a string"});return this._request.send("auth.updateUsername",{username:e})}async getLinkedUidList(){const{data:e}=await this._request.send("auth.getLinkedUidList",{});let t=!1;const{users:s}=e;return s.forEach((e=>{e.wxOpenId&&e.wxPublicId&&(t=!0)})),{users:s,hasPrimaryUid:t}}setPrimaryUid(e){return this._request.send("auth.setPrimaryUid",{uid:e})}unlink(e){return this._request.send("auth.unlink",{platform:e})}async update(e){const{nickName:t,gender:s,avatarUrl:n,province:i,country:o,city:r}=e,{data:a}=await this._request.send("auth.updateUserInfo",{nickName:t,gender:s,avatarUrl:n,province:i,country:o,city:r});this.setLocalUserInfo(a)}async refresh(){const{data:e}=await this._request.send("auth.getUserInfo",{});return this.setLocalUserInfo(e),e}setUserInfo(){const{userInfoKey:e}=this._cache.keys,t=this._cache.getStore(e);["uid","loginType","openid","wxOpenId","wxPublicId","unionId","qqMiniOpenId","email","hasPassword","customUserId","nickName","gender","avatarUrl"].forEach((e=>{this[e]=t[e]})),this.location={country:t.country,province:t.province,city:t.city}}setLocalUserInfo(e){const{userInfoKey:t}=this._cache.keys;this._cache.setStore(t,e),this.setUserInfo()}}class Wt{constructor(e){if(!e)throw new ze({code:"PARAM_ERROR",message:"envId is not defined"});this._cache=Tt(e);const{refreshTokenKey:t,accessTokenKey:s,accessTokenExpireKey:n}=this._cache.keys,i=this._cache.getStore(t),o=this._cache.getStore(s),r=this._cache.getStore(n);this.credential={refreshToken:i,accessToken:o,accessTokenExpire:r},this.user=new zt(e)}get isAnonymousAuth(){return this.loginType===Rt.ANONYMOUS}get isCustomAuth(){return this.loginType===Rt.CUSTOM}get isWeixinAuth(){return this.loginType===Rt.WECHAT||this.loginType===Rt.WECHAT_OPEN||this.loginType===Rt.WECHAT_PUBLIC}get loginType(){return this._cache.getStore(this._cache.keys.loginTypeKey)}}class Jt extends Ht{async signIn(){this._cache.updatePersistence("local");const{anonymousUuidKey:e,refreshTokenKey:t}=this._cache.keys,s=this._cache.getStore(e)||void 0,n=this._cache.getStore(t)||void 0,i=await this._request.send("auth.signInAnonymously",{anonymous_uuid:s,refresh_token:n});if(i.uuid&&i.refresh_token){this._setAnonymousUUID(i.uuid),this.setRefreshToken(i.refresh_token),await this._request.refreshAccessToken(),Ct(Lt),Ct(Ft,{env:this.config.env,loginType:Rt.ANONYMOUS,persistence:"local"});const e=new Wt(this.config.env);return await e.user.refresh(),e}throw new ze({message:"匿名登录失败"})}async linkAndRetrieveDataWithTicket(e){const{anonymousUuidKey:t,refreshTokenKey:s}=this._cache.keys,n=this._cache.getStore(t),i=this._cache.getStore(s),o=await this._request.send("auth.linkAndRetrieveDataWithTicket",{anonymous_uuid:n,refresh_token:i,ticket:e});if(o.refresh_token)return this._clearAnonymousUUID(),this.setRefreshToken(o.refresh_token),await this._request.refreshAccessToken(),Ct(Ut,{env:this.config.env}),Ct(Ft,{loginType:Rt.CUSTOM,persistence:"local"}),{credential:{refreshToken:o.refresh_token}};throw new ze({message:"匿名转化失败"})}_setAnonymousUUID(e){const{anonymousUuidKey:t,loginTypeKey:s}=this._cache.keys;this._cache.removeStore(t),this._cache.setStore(t,e),this._cache.setStore(s,Rt.ANONYMOUS)}_clearAnonymousUUID(){this._cache.removeStore(this._cache.keys.anonymousUuidKey)}}class Vt extends Ht{async signIn(e){if("string"!=typeof e)throw new ze({code:"PARAM_ERROR",message:"ticket must be a string"});const{refreshTokenKey:t}=this._cache.keys,s=await this._request.send("auth.signInWithTicket",{ticket:e,refresh_token:this._cache.getStore(t)||""});if(s.refresh_token)return this.setRefreshToken(s.refresh_token),await this._request.refreshAccessToken(),Ct(Lt),Ct(Ft,{env:this.config.env,loginType:Rt.CUSTOM,persistence:this.config.persistence}),await this.refreshUserInfo(),new Wt(this.config.env);throw new ze({message:"自定义登录失败"})}}class Yt extends Ht{async signIn(e,t){if("string"!=typeof e)throw new ze({code:"PARAM_ERROR",message:"email must be a string"});const{refreshTokenKey:s}=this._cache.keys,n=await this._request.send("auth.signIn",{loginType:"EMAIL",email:e,password:t,refresh_token:this._cache.getStore(s)||""}),{refresh_token:i,access_token:o,access_token_expire:r}=n;if(i)return this.setRefreshToken(i),o&&r?this.setAccessToken(o,r):await this._request.refreshAccessToken(),await this.refreshUserInfo(),Ct(Lt),Ct(Ft,{env:this.config.env,loginType:Rt.EMAIL,persistence:this.config.persistence}),new Wt(this.config.env);throw n.code?new ze({code:n.code,message:`邮箱登录失败: ${n.message}`}):new ze({message:"邮箱登录失败"})}async activate(e){return this._request.send("auth.activateEndUserMail",{token:e})}async resetPasswordWithToken(e,t){return this._request.send("auth.resetPasswordWithToken",{token:e,newPassword:t})}}class Qt extends Ht{async signIn(e,t){if("string"!=typeof e)throw new ze({code:"PARAM_ERROR",message:"username must be a string"});"string"!=typeof t&&(t="",console.warn("password is empty"));const{refreshTokenKey:s}=this._cache.keys,n=await this._request.send("auth.signIn",{loginType:Rt.USERNAME,username:e,password:t,refresh_token:this._cache.getStore(s)||""}),{refresh_token:i,access_token_expire:o,access_token:r}=n;if(i)return this.setRefreshToken(i),r&&o?this.setAccessToken(r,o):await this._request.refreshAccessToken(),await this.refreshUserInfo(),Ct(Lt),Ct(Ft,{env:this.config.env,loginType:Rt.USERNAME,persistence:this.config.persistence}),new Wt(this.config.env);throw n.code?new ze({code:n.code,message:`用户名密码登录失败: ${n.message}`}):new ze({message:"用户名密码登录失败"})}}class Xt{constructor(e){this.config=e,this._cache=Tt(e.env),this._request=Kt(e.env),this._onAnonymousConverted=this._onAnonymousConverted.bind(this),this._onLoginTypeChanged=this._onLoginTypeChanged.bind(this),At(Ft,this._onLoginTypeChanged)}get currentUser(){const e=this.hasLoginState();return e&&e.user||null}get loginType(){return this._cache.getStore(this._cache.keys.loginTypeKey)}anonymousAuthProvider(){return new Jt(this.config)}customAuthProvider(){return new Vt(this.config)}emailAuthProvider(){return new Yt(this.config)}usernameAuthProvider(){return new Qt(this.config)}async signInAnonymously(){return new Jt(this.config).signIn()}async signInWithEmailAndPassword(e,t){return new Yt(this.config).signIn(e,t)}signInWithUsernameAndPassword(e,t){return new Qt(this.config).signIn(e,t)}async linkAndRetrieveDataWithTicket(e){return this._anonymousAuthProvider||(this._anonymousAuthProvider=new Jt(this.config)),At(Ut,this._onAnonymousConverted),await this._anonymousAuthProvider.linkAndRetrieveDataWithTicket(e)}async signOut(){if(this.loginType===Rt.ANONYMOUS)throw new ze({message:"匿名用户不支持登出操作"});const{refreshTokenKey:e,accessTokenKey:t,accessTokenExpireKey:s}=this._cache.keys,n=this._cache.getStore(e);if(!n)return;const i=await this._request.send("auth.logout",{refresh_token:n});return this._cache.removeStore(e),this._cache.removeStore(t),this._cache.removeStore(s),Ct(Lt),Ct(Ft,{env:this.config.env,loginType:Rt.NULL,persistence:this.config.persistence}),i}async signUpWithEmailAndPassword(e,t){return this._request.send("auth.signUpWithEmailAndPassword",{email:e,password:t})}async sendPasswordResetEmail(e){return this._request.send("auth.sendPasswordResetEmail",{email:e})}onLoginStateChanged(e){At(Lt,(()=>{const t=this.hasLoginState();e.call(this,t)}));const t=this.hasLoginState();e.call(this,t)}onLoginStateExpired(e){At(Et,e.bind(this))}onAccessTokenRefreshed(e){At(Dt,e.bind(this))}onAnonymousConverted(e){At(Ut,e.bind(this))}onLoginTypeChanged(e){At(Ft,(()=>{const t=this.hasLoginState();e.call(this,t)}))}async getAccessToken(){return{accessToken:(await this._request.getAccessToken()).accessToken,env:this.config.env}}hasLoginState(){const{refreshTokenKey:e}=this._cache.keys;return this._cache.getStore(e)?new Wt(this.config.env):null}async isUsernameRegistered(e){if("string"!=typeof e)throw new ze({code:"PARAM_ERROR",message:"username must be a string"});const{data:t}=await this._request.send("auth.isUsernameRegistered",{username:e});return t&&t.isRegistered}getLoginState(){return Promise.resolve(this.hasLoginState())}async signInWithTicket(e){return new Vt(this.config).signIn(e)}shouldRefreshAccessToken(e){this._request._shouldRefreshAccessTokenHook=e.bind(this)}getUserInfo(){return this._request.send("auth.getUserInfo",{}).then((e=>e.code?e:{...e.data,requestId:e.seqId}))}getAuthHeader(){const{refreshTokenKey:e,accessTokenKey:t}=this._cache.keys,s=this._cache.getStore(e);return{"x-cloudbase-credentials":this._cache.getStore(t)+"/@@/"+s}}_onAnonymousConverted(e){const{env:t}=e.data;t===this.config.env&&this._cache.updatePersistence(this.config.persistence)}_onLoginTypeChanged(e){const{loginType:t,persistence:s,env:n}=e.data;n===this.config.env&&(this._cache.updatePersistence(s),this._cache.setStore(this._cache.keys.loginTypeKey,t))}}const Gt=function(e,t){t=t||pt();const s=Kt(this.config.env),{cloudPath:n,filePath:i,onUploadProgress:o,fileType:r="image"}=e;return s.send("storage.getUploadMetadata",{path:n}).then((e=>{const{data:{url:a,authorization:c,token:l,fileId:u,cosFileId:h},requestId:d}=e,p={key:n,signature:c,"x-cos-meta-fileid":h,success_action_status:"201","x-cos-security-token":l};s.upload({url:a,data:p,file:i,name:n,fileType:r,onUploadProgress:o}).then((e=>{201===e.statusCode?t(null,{fileID:u,requestId:d}):t(new ze({code:"STORAGE_REQUEST_FAIL",message:`STORAGE_REQUEST_FAIL: ${e.data}`}))})).catch((e=>{t(e)}))})).catch((e=>{t(e)})),t.promise},Zt=function(e,t){t=t||pt();const s=Kt(this.config.env),{cloudPath:n}=e;return s.send("storage.getUploadMetadata",{path:n}).then((e=>{t(null,e)})).catch((e=>{t(e)})),t.promise},es=function({fileList:e},t){if(t=t||pt(),!e||!Array.isArray(e))return{code:"INVALID_PARAM",message:"fileList必须是非空的数组"};for(let n of e)if(!n||"string"!=typeof n)return{code:"INVALID_PARAM",message:"fileList的元素必须是非空的字符串"};const s={fileid_list:e};return Kt(this.config.env).send("storage.batchDeleteFile",s).then((e=>{e.code?t(null,e):t(null,{fileList:e.data.delete_list,requestId:e.requestId})})).catch((e=>{t(e)})),t.promise},ts=function({fileList:e},t){t=t||pt(),e&&Array.isArray(e)||t(null,{code:"INVALID_PARAM",message:"fileList必须是非空的数组"});let s=[];for(let i of e)"object"==typeof i?(i.hasOwnProperty("fileID")&&i.hasOwnProperty("maxAge")||t(null,{code:"INVALID_PARAM",message:"fileList的元素必须是包含fileID和maxAge的对象"}),s.push({fileid:i.fileID,max_age:i.maxAge})):"string"==typeof i?s.push({fileid:i}):t(null,{code:"INVALID_PARAM",message:"fileList的元素必须是字符串"});const n={file_list:s};return Kt(this.config.env).send("storage.batchGetDownloadUrl",n).then((e=>{e.code?t(null,e):t(null,{fileList:e.data.download_list,requestId:e.requestId})})).catch((e=>{t(e)})),t.promise},ss=async function({fileID:e},t){const s=(await ts.call(this,{fileList:[{fileID:e,maxAge:600}]})).fileList[0];if("SUCCESS"!==s.code)return t?t(s):new Promise((e=>{e(s)}));const n=Kt(this.config.env);let i=s.download_url;if(i=encodeURI(i),!t)return n.download({url:i});t(await n.download({url:i}))},ns=function({name:e,data:t,query:s,parse:n,search:i},o){const r=o||pt();let a;try{a=t?JSON.stringify(t):""}catch(l){return Promise.reject(l)}if(!e)return Promise.reject(new ze({code:"PARAM_ERROR",message:"函数名不能为空"}));const c={inQuery:s,parse:n,search:i,function_name:e,request_data:a};return Kt(this.config.env).send("functions.invokeFunction",c).then((e=>{if(e.code)r(null,e);else{let s=e.data.response_data;if(n)r(null,{result:s,requestId:e.requestId});else try{s=JSON.parse(e.data.response_data),r(null,{result:s,requestId:e.requestId})}catch(t){r(new ze({message:"response data must be json"}))}}return r.promise})).catch((e=>{r(e)})),r.promise},is={timeout:15e3,persistence:"session"},os={};class rs{constructor(e){this.config=e||this.config,this.authObj=void 0}init(e){switch(yt.adapter||(this.requestClient=new yt.adapter.reqClass({timeout:e.timeout||5e3,timeoutMsg:`请求在${(e.timeout||5e3)/1e3}s内未完成,已中断`})),this.config={...is,...e},!0){case this.config.timeout>6e5:console.warn("timeout大于可配置上限[10分钟],已重置为上限数值"),this.config.timeout=6e5;break;case this.config.timeout<100:console.warn("timeout小于可配置下限[100ms],已重置为下限数值"),this.config.timeout=100}return new rs(this.config)}auth({persistence:e}={}){if(this.authObj)return this.authObj;const t=e||yt.adapter.primaryStorage||is.persistence;var s;return t!==this.config.persistence&&(this.config.persistence=t),function(e){const{env:t}=e;vt[t]=new bt(e),St[t]=new bt({...e,persistence:"local"})}(this.config),s=this.config,Bt[s.env]=new qt(s),this.authObj=new Xt(this.config),this.authObj}on(e,t){return At.apply(this,[e,t])}off(e,t){return Ot.apply(this,[e,t])}callFunction(e,t){return ns.apply(this,[e,t])}deleteFile(e,t){return es.apply(this,[e,t])}getTempFileURL(e,t){return ts.apply(this,[e,t])}downloadFile(e,t){return ss.apply(this,[e,t])}uploadFile(e,t){return Gt.apply(this,[e,t])}getUploadMetadata(e,t){return Zt.apply(this,[e,t])}registerExtension(e){os[e.name]=e}async invokeExtension(e,t){const s=os[e];if(!s)throw new ze({message:`扩展${e} 必须先注册`});return await s.invoke(t,this)}useAdapters(e){const{adapter:t,runtime:s}=function(e){const t=(s=e,"[object Array]"===Object.prototype.toString.call(s)?e:[e]);var s;for(const n of t){const{isMatch:e,genAdapter:t,runtime:s}=n;if(e())return{adapter:t(),runtime:s}}}(e)||{};t&&(yt.adapter=t),s&&(yt.runtime=s)}}var as=new rs;function cs(e,t,s){void 0===s&&(s={});var n=/\?/.test(t),i="";for(var o in s)""===i?!n&&(t+="?"):i+="&",i+=o+"="+encodeURIComponent(s[o]);return/^http(s)?:\/\//.test(t+=i)?t:""+e+t}class ls{post(e){const{url:t,data:s,headers:n}=e;return new Promise(((e,i)=>{We.request({url:cs("https:",t),data:s,method:"POST",header:n,success(t){e(t)},fail(e){i(e)}})}))}upload(e){return new Promise(((t,s)=>{const{url:n,file:i,data:o,headers:r,fileType:a}=e,c=We.uploadFile({url:cs("https:",n),name:"file",formData:Object.assign({},o),filePath:i,fileType:a,header:r,success(e){const s={statusCode:e.statusCode,data:e.data||{}};200===e.statusCode&&o.success_action_status&&(s.statusCode=parseInt(o.success_action_status,10)),t(s)},fail(e){s(new Error(e.errMsg||"uploadFile:fail"))}});"function"==typeof e.onUploadProgress&&c&&"function"==typeof c.onProgressUpdate&&c.onProgressUpdate((t=>{e.onUploadProgress({loaded:t.totalBytesSent,total:t.totalBytesExpectedToSend})}))}))}}const us={setItem(e,t){We.setStorageSync(e,t)},getItem:e=>We.getStorageSync(e),removeItem(e){We.removeStorageSync(e)},clear(){We.clearStorageSync()}};var hs={genAdapter:function(){return{root:{},reqClass:ls,localStorage:us,primaryStorage:"local"}},isMatch:function(){return!0},runtime:"uni_app"};as.useAdapters(hs);const ds=as,ps=ds.init;ds.init=function(e){e.env=e.spaceId;const t=ps.call(this,e);t.config.provider="tencent",t.config.spaceId=e.spaceId;const s=t.auth;return t.auth=function(e){const t=s.call(this,e);return["linkAndRetrieveDataWithTicket","signInAnonymously","signOut","getAccessToken","getLoginState","signInWithTicket","getUserInfo"].forEach((e=>{var s;t[e]=(s=t[e],function(e){e=e||{};const{success:t,fail:n,complete:i}=He(e);if(!(t||n||i))return s.call(this,e);s.call(this,e).then((e=>{t&&t(e),i&&i(e)}),(e=>{n&&n(e),i&&i(e)}))}).bind(t)})),t},t.customAuth=t.auth,t};var fs=ds,gs=class extends it{getAccessToken(){return new Promise(((e,t)=>{const s="Anonymous_Access_token";this.setAccessToken(s),e(s)}))}setupRequest(e,t){const s=Object.assign({},e,{spaceId:this.config.spaceId,timestamp:Date.now()}),n={"Content-Type":"application/json"};"auth"!==t&&(s.token=this.accessToken,n["x-basement-token"]=this.accessToken),n["x-serverless-sign"]=tt(s,this.config.clientSecret);const i=et();n["x-client-info"]=encodeURIComponent(JSON.stringify(i));const{token:o}=Ve();return n["x-client-token"]=o,{url:this.config.requestUrl,method:"POST",data:s,dataType:"json",header:JSON.parse(JSON.stringify(n))}}uploadFileToOSS({url:e,formData:t,name:s,filePath:n,fileType:i,onUploadProgress:o}){return new Promise(((r,a)=>{const c=this.adapter.uploadFile({url:e,formData:t,name:s,filePath:n,fileType:i,success(e){e&&e.statusCode<400?r(e):a(new ze({code:"UPLOAD_FAILED",message:"文件上传失败"}))},fail(e){a(new ze({code:e.code||"UPLOAD_FAILED",message:e.message||e.errMsg||"文件上传失败"}))}});"function"==typeof o&&c&&"function"==typeof c.onProgressUpdate&&c.onProgressUpdate((e=>{o({loaded:e.totalBytesSent,total:e.totalBytesExpectedToSend})}))}))}uploadFile({filePath:e,cloudPath:t,fileType:s="image",onUploadProgress:n}){if(!t)throw new ze({code:"CLOUDPATH_REQUIRED",message:"cloudPath不可为空"});let i;return this.getOSSUploadOptionsFromPath({cloudPath:t}).then((t=>{const{url:o,formData:r,name:a}=t.result;i=t.result.fileUrl;const c={url:o,formData:r,name:a,filePath:e,fileType:s};return this.uploadFileToOSS(Object.assign({},c,{onUploadProgress:n}))})).then((()=>this.reportOSSUpload({cloudPath:t}))).then((t=>new Promise(((s,n)=>{t.success?s({success:!0,filePath:e,fileID:i}):n(new ze({code:"UPLOAD_FAILED",message:"文件上传失败"}))}))))}deleteFile({fileList:e}){const t={method:"serverless.file.resource.delete",params:JSON.stringify({fileList:e})};return this.request(this.setupRequest(t)).then((e=>{if(e.success)return e.result;throw new ze({code:"DELETE_FILE_FAILED",message:"删除文件失败"})}))}getTempFileURL({fileList:e,maxAge:t}={}){if(!Array.isArray(e)||0===e.length)throw new ze({code:"INVALID_PARAM",message:"fileList的元素必须是非空的字符串"});const s={method:"serverless.file.resource.getTempFileURL",params:JSON.stringify({fileList:e,maxAge:t})};return this.request(this.setupRequest(s)).then((e=>{if(e.success)return{fileList:e.result.fileList.map((e=>({fileID:e.fileID,tempFileURL:e.tempFileURL})))};throw new ze({code:"GET_TEMP_FILE_URL_FAILED",message:"获取临时文件链接失败"})}))}},ms={init(e){const t=new gs(e),s={signInAnonymously:function(){return t.authorize()},getLoginState:function(){return Promise.resolve(!1)}};return t.auth=function(){return s},t.customAuth=t.auth,t}},ys=te((function(e,t){e.exports=ne.enc.Hex}));function _s(e="",t={}){const{data:s,functionName:n,method:i,headers:o,signHeaderKeys:r=[],config:a}=t,c=Date.now(),l="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})),u=Object.assign({},o,{"x-from-app-id":a.spaceAppId,"x-from-env-id":a.spaceId,"x-to-env-id":a.spaceId,"x-from-instance-id":c,"x-from-function-name":n,"x-client-timestamp":c,"x-alipay-source":"client","x-request-id":l,"x-alipay-callid":l,"x-trace-id":l}),h=["x-from-app-id","x-from-env-id","x-to-env-id","x-from-instance-id","x-from-function-name","x-client-timestamp"].concat(r),[d="",p=""]=e.split("?")||[],f=function(e){const t=e.signedHeaders.join(";"),s=e.signedHeaders.map((t=>`${t.toLowerCase()}:${e.headers[t]}\n`)).join(""),n=ht(e.body).toString(ys),i=`${e.method.toUpperCase()}\n${e.path}\n${e.query}\n${s}\n${t}\n${n}\n`,o=ht(i).toString(ys),r=`HMAC-SHA256\n${e.timestamp}\n${o}\n`,a=dt(r,e.secretKey).toString(ys);return`HMAC-SHA256 Credential=${e.secretId}, SignedHeaders=${t}, Signature=${a}`}({path:d,query:p,method:i,headers:u,timestamp:c,body:JSON.stringify(s),secretId:a.accessKey,secretKey:a.secretKey,signedHeaders:h.sort()});return{url:`${a.endpoint}${e}`,headers:Object.assign({},u,{Authorization:f})}}function ws({url:e,data:t,method:s="POST",headers:n={}}){return new Promise(((i,o)=>{We.request({url:e,method:s,data:t,header:n,dataType:"json",complete:(e={})=>{const t=n["x-trace-id"]||"";if(!e.statusCode||e.statusCode>=400){const{message:s,errMsg:n,trace_id:i}=e.data||{};return o(new ze({code:"SYS_ERR",message:s||n||"request:fail",requestId:i||t}))}i({status:e.statusCode,data:e.data,headers:e.header,requestId:t})}})}))}function ks(e,t){const{path:s,data:n,method:i="GET"}=e,{url:o,headers:r}=_s(s,{functionName:"",data:n,method:i,headers:{"x-alipay-cloud-mode":"oss","x-data-api-type":"oss","x-expire-timestamp":Date.now()+6e4},signHeaderKeys:["x-data-api-type","x-expire-timestamp"],config:t});return ws({url:o,data:n,method:i,headers:r}).then((e=>{const t=e.data||{};if(!t.success)throw new ze({code:e.errCode,message:e.errMsg,requestId:e.requestId});return t.data||{}})).catch((e=>{throw new ze({code:e.errCode,message:e.errMsg,requestId:e.requestId})}))}function bs(e=""){const t=e.trim().replace(/^cloud:\/\//,""),s=t.indexOf("/");if(s<=0)throw new ze({code:"INVALID_PARAM",message:"fileID不合法"});const n=t.substring(0,s),i=t.substring(s+1);return n!==this.config.spaceId&&console.warn("file ".concat(e," does not belong to env ").concat(this.config.spaceId)),i}function vs(e=""){return"cloud://".concat(this.config.spaceId,"/").concat(e.replace(/^\/+/,""))}var Ss={init:e=>{e.provider="alipay";const t=new class{constructor(e){if(["spaceId","spaceAppId","accessKey","secretKey"].forEach((t=>{if(!Object.prototype.hasOwnProperty.call(e,t))throw new Error(`${t} required`)})),e.endpoint){if("string"!=typeof e.endpoint)throw new Error("endpoint must be string");if(!/^https:\/\//.test(e.endpoint))throw new Error("endpoint must start with https://");e.endpoint=e.endpoint.replace(/\/$/,"")}this.config=Object.assign({},e,{endpoint:e.endpoint||`https://${e.spaceId}.api-hz.cloudbasefunction.cn`})}callFunction(e){return function(e,t){const{name:s,data:n}=e,i="POST",{url:o,headers:r}=_s("/functions/invokeFunction",{functionName:s,data:n,method:i,headers:{"x-to-function-name":s},signHeaderKeys:["x-to-function-name"],config:t});return ws({url:o,data:n,method:i,headers:r}).then((e=>({errCode:0,success:!0,requestId:e.requestId,result:e.data}))).catch((e=>{throw new ze({code:e.errCode,message:e.errMsg,requestId:e.requestId})}))}(e,this.config)}uploadFileToOSS({url:e,filePath:t,fileType:s,formData:n,onUploadProgress:i}){return new Promise(((o,r)=>{const a=We.uploadFile({url:e,filePath:t,fileType:s,formData:n,name:"file",success(e){e&&e.statusCode<400?o(e):r(new ze({code:"UPLOAD_FAILED",message:"文件上传失败"}))},fail(e){r(new ze({code:e.code||"UPLOAD_FAILED",message:e.message||e.errMsg||"文件上传失败"}))}});"function"==typeof i&&a&&"function"==typeof a.onProgressUpdate&&a.onProgressUpdate((e=>{i({loaded:e.totalBytesSent,total:e.totalBytesExpectedToSend})}))}))}async uploadFile({filePath:e,cloudPath:t="",fileType:s="image",onUploadProgress:n}){if("string"!==ue(t))throw new ze({code:"INVALID_PARAM",message:"cloudPath必须为字符串类型"});if(!(t=t.trim()))throw new ze({code:"INVALID_PARAM",message:"cloudPath不可为空"});if(/:\/\//.test(t))throw new ze({code:"INVALID_PARAM",message:"cloudPath不合法"});const i=await ks({path:"/".concat(t.replace(/^\//,""),"?post_url")},this.config),{file_id:o,upload_url:r,form_data:a}=i,c=a&&a.reduce(((e,t)=>(e[t.key]=t.value,e)),{});return this.uploadFileToOSS({url:r,filePath:e,fileType:s,formData:c,onUploadProgress:n}).then((()=>({fileID:o})))}async getTempFileURL({fileList:e}){return new Promise(((t,s)=>{(!e||e.length<0)&&s(new ze({errCode:"INVALID_PARAM",errMsg:"fileList不能为空数组"})),e.length>50&&s(new ze({errCode:"INVALID_PARAM",errMsg:"fileList数组长度不能超过50"}));const n=[];for(const i of e){"string"!==ue(i)&&s(new ze({errCode:"INVALID_PARAM",errMsg:"fileList的元素必须是非空的字符串"}));const e=bs.call(this,i);n.push({file_id:e,expire:600})}ks({path:"/?download_url",data:{file_list:n},method:"POST"},this.config).then((e=>{const{file_list:s=[]}=e;t({fileList:s.map((e=>({fileID:vs.call(this,e.file_id),tempFileURL:e.download_url})))})})).catch((e=>s(e)))}))}}(e);return t.auth=function(){return{signInAnonymously:function(){return Promise.resolve()},getLoginState:function(){return Promise.resolve(!0)}}},t}};function Ts({data:e}){let t;t=et();const s=JSON.parse(JSON.stringify(e||{}));if(Object.assign(s,{clientInfo:t}),!s.uniIdToken){const{token:e}=Ve();e&&(s.uniIdToken=e)}return s}const Is=[{rule:/fc_function_not_found|FUNCTION_NOT_FOUND/,content:",云函数[{functionName}]在云端不存在,请检查此云函数名称是否正确以及该云函数是否已上传到服务空间",mode:"append"}];var Ps=/[\\^$.*+?()[\]{}|]/g,xs=RegExp(Ps.source);function As(e,t,s){return e.replace(new RegExp((n=t)&&xs.test(n)?n.replace(Ps,"\\$&"):n,"g"),s);var n}const Cs=2e4,Os={code:20101,message:"Invalid client"};function Ls(e){const{errSubject:t,subject:s,errCode:n,errMsg:i,code:o,message:r,cause:a}=e||{};return new ze({subject:t||s||"uni-secure-network",code:n||o||Cs,message:i||r,cause:a})}let Es;function Fs({secretType:e}={}){return"request"===e||"response"===e||"both"===e}function Us({functionName:e,result:t,logPvd:s}){}function Ds(e){const t=e.callFunction,s=function(s){const n=s.name;s.data=Ts.call(e,{data:s.data});const i={aliyun:"aliyun",tencent:"tcb",tcb:"tcb",alipay:"alipay"}[this.config.provider],o=Fs(s)||false;return t.call(this,s).then((e=>(e.errCode=0,!o&&Us.call(this,{functionName:n,result:e,logPvd:i}),Promise.resolve(e))),(e=>(!o&&Us.call(this,{functionName:n,result:e,logPvd:i}),e&&e.message&&(e.message=function({message:e="",extraInfo:t={},formatter:s=[]}={}){for(let n=0;n<s.length;n++){const{rule:i,content:o,mode:r}=s[n],a=e.match(i);if(!a)continue;let c=o;for(let e=1;e<a.length;e++)c=As(c,`{$${e}}`,a[e]);for(const e in t)c=As(c,`{${e}}`,t[e]);return"replace"===r?c:e+c}return e}({message:`[${s.name}]: ${e.message}`,formatter:Is,extraInfo:{functionName:n}})),Promise.reject(e))))};e.callFunction=function(t){const{provider:n,spaceId:i}=e.config,o=t.name;let r,a;return t.data=t.data||{},r=s,r=r.bind(e),a=Fs(t)?new Es({secretType:t.secretType,uniCloudIns:e}).wrapEncryptDataCallFunction(s.bind(e))(t):function({provider:e,spaceId:t,functionName:s}={}){const{appId:n,uniPlatform:i,osName:o}=Ge();let r=i;"app"===i&&(r=o);const a=function({provider:e,spaceId:t}={}){if(!_e)return{};var s;e="tencent"===(s=e)?"tcb":s;const n=_e.find((s=>s.provider===e&&s.spaceId===t));return n&&n.config}({provider:e,spaceId:t});if(!a||!a.accessControl||!a.accessControl.enable)return!1;const c=a.accessControl.function||{},l=Object.keys(c);if(0===l.length)return!0;const u=function(e,t){let s,n,i;for(let o=0;o<e.length;o++){const r=e[o];r!==t?"*"!==r?r.split(",").map((e=>e.trim())).indexOf(t)>-1&&(n=r):i=r:s=r}return s||n||i}(l,s);if(!u)return!1;if((c[u]||[]).find(((e={})=>e.appId===n&&(e.platform||"").toLowerCase()===r.toLowerCase())))return!0;throw console.error(`此应用[appId: ${n}, platform: ${r}]不在云端配置的允许访问的应用列表内,参考:https://uniapp.dcloud.net.cn/uniCloud/secure-network.html#verify-client`),Ls(Os)}({provider:n,spaceId:i,functionName:o})?new Es({secretType:t.secretType,uniCloudIns:e}).wrapVerifyClientCallFunction(s.bind(e))(t):r(t),Object.defineProperty(a,"result",{get:()=>(console.warn("当前返回结果为Promise类型,不可直接访问其result属性,详情请参考:https://uniapp.dcloud.net.cn/uniCloud/faq?id=promise"),{})}),a.then((e=>("undefined"!=typeof UTSJSONObject&&(e.result=new UTSJSONObject(e.result)),e)))}}Es=class{constructor(){throw Ls({message:"Platform web is not supported by secure network"})}};const Rs=Symbol("CLIENT_DB_INTERNAL");function Ms(e,t){return e.then="DoNotReturnProxyWithAFunctionNamedThen",e._internalType=Rs,e.inspect=null,e.__v_raw=void 0,new Proxy(e,{get(e,s,n){if("_uniClient"===s)return null;if("symbol"==typeof s)return e[s];if(s in e||"string"!=typeof s){const t=e[s];return"function"==typeof t?t.bind(e):t}return t.get(e,s,n)}})}function Ns(e){return{on:(t,s)=>{e[t]=e[t]||[],e[t].indexOf(s)>-1||e[t].push(s)},off:(t,s)=>{e[t]=e[t]||[];const n=e[t].indexOf(s);-1!==n&&e[t].splice(n,1)}}}const $s=["db.Geo","db.command","command.aggregate"];function js(e,t){return $s.indexOf(`${e}.${t}`)>-1}function qs(e){switch(ue(e=Je(e))){case"array":return e.map((e=>qs(e)));case"object":return e._internalType===Rs||Object.keys(e).forEach((t=>{e[t]=qs(e[t])})),e;case"regexp":return{$regexp:{source:e.source,flags:e.flags}};case"date":return{$date:e.toISOString()};default:return e}}function Bs(e){return e&&e.content&&e.content.$method}class Ks{constructor(e,t,s){this.content=e,this.prevStage=t||null,this.udb=null,this._database=s}toJSON(){let e=this;const t=[e.content];for(;e.prevStage;)e=e.prevStage,t.push(e.content);return{$db:t.reverse().map((e=>({$method:e.$method,$param:qs(e.$param)})))}}toString(){return JSON.stringify(this.toJSON())}getAction(){const e=this.toJSON().$db.find((e=>"action"===e.$method));return e&&e.$param&&e.$param[0]}getCommand(){return{$db:this.toJSON().$db.filter((e=>"action"!==e.$method))}}get isAggregate(){let e=this;for(;e;){const t=Bs(e),s=Bs(e.prevStage);if("aggregate"===t&&"collection"===s||"pipeline"===t)return!0;e=e.prevStage}return!1}get isCommand(){let e=this;for(;e;){if("command"===Bs(e))return!0;e=e.prevStage}return!1}get isAggregateCommand(){let e=this;for(;e;){const t=Bs(e),s=Bs(e.prevStage);if("aggregate"===t&&"command"===s)return!0;e=e.prevStage}return!1}getNextStageFn(e){const t=this;return function(){return Hs({$method:e,$param:qs(Array.from(arguments))},t,t._database)}}get count(){return this.isAggregate?this.getNextStageFn("count"):function(){return this._send("count",Array.from(arguments))}}get remove(){return this.isCommand?this.getNextStageFn("remove"):function(){return this._send("remove",Array.from(arguments))}}get(){return this._send("get",Array.from(arguments))}get add(){return this.isCommand?this.getNextStageFn("add"):function(){return this._send("add",Array.from(arguments))}}update(){return this._send("update",Array.from(arguments))}end(){return this._send("end",Array.from(arguments))}get set(){return this.isCommand?this.getNextStageFn("set"):function(){throw new Error("JQL禁止使用set方法")}}_send(e,t){const s=this.getAction(),n=this.getCommand();return n.$db.push({$method:e,$param:qs(t)}),this._database._callCloudFunction({action:s,command:n})}}function Hs(e,t,s){return Ms(new Ks(e,t,s),{get(e,t){let n="db";return e&&e.content&&(n=e.content.$method),js(n,t)?Hs({$method:t},e,s):function(){return Hs({$method:t,$param:qs(Array.from(arguments))},e,s)}}})}function zs({path:e,method:t}){return class{constructor(){this.param=Array.from(arguments)}toJSON(){return{$newDb:[...e.map((e=>({$method:e}))),{$method:t,$param:this.param}]}}toString(){return JSON.stringify(this.toJSON())}}}function Ws(e,t={}){return Ms(new e(t),{get:(e,t)=>js("db",t)?Hs({$method:t},null,e):function(){return Hs({$method:t,$param:qs(Array.from(arguments))},null,e)}})}class Js extends class{constructor({uniClient:e={},isJQL:t=!1}={}){this._uniClient=e,this._authCallBacks={},this._dbCallBacks={},e._isDefault&&(this._dbCallBacks=ve("_globalUniCloudDatabaseCallback")),t||(this.auth=Ns(this._authCallBacks)),this._isJQL=t,Object.assign(this,Ns(this._dbCallBacks)),this.env=Ms({},{get:(e,t)=>({$env:t})}),this.Geo=Ms({},{get:(e,t)=>zs({path:["Geo"],method:t})}),this.serverDate=zs({path:[],method:"serverDate"}),this.RegExp=zs({path:[],method:"RegExp"})}getCloudEnv(e){if("string"!=typeof e||!e.trim())throw new Error("getCloudEnv参数错误");return{$env:e.replace("$cloudEnv_","")}}_callback(e,t){const s=this._dbCallBacks;s[e]&&s[e].forEach((e=>{e(...t)}))}_callbackAuth(e,t){const s=this._authCallBacks;s[e]&&s[e].forEach((e=>{e(...t)}))}multiSend(){const e=Array.from(arguments),t=e.map((e=>{const t=e.getAction(),s=e.getCommand();if("getTemp"!==s.$db[s.$db.length-1].$method)throw new Error("multiSend只支持子命令内使用getTemp");return{action:t,command:s}}));return this._callCloudFunction({multiCommand:t,queryList:e})}}{_parseResult(e){return this._isJQL?e.result:e}_callCloudFunction({action:e,command:t,multiCommand:s,queryList:n}){function i(e,t){if(s&&n)for(let s=0;s<n.length;s++){const i=n[s];i.udb&&"function"==typeof i.udb.setResult&&(t?i.udb.setResult(t):i.udb.setResult(e.result.dataList[s]))}}const o=this,r=this._isJQL?"databaseForJQL":"database";function a(e){return o._callback("error",[e]),xe(Ae(r,"fail"),e).then((()=>xe(Ae(r,"complete"),e))).then((()=>(i(null,e),je(Le,{type:Ue,content:e}),Promise.reject(e))))}const c=xe(Ae(r,"invoke")),l=this._uniClient;return c.then((()=>l.callFunction({name:"DCloud-clientDB",type:"CLIENT_DB",data:{action:e,command:t,multiCommand:s}}))).then((e=>{const{code:t,message:s,token:n,tokenExpired:c,systemInfo:l=[]}=e.result;if(l)for(let i=0;i<l.length;i++){const{level:e,message:t,detail:s}=l[i],n=console[e]||console.log;let o="[System Info]"+t;s&&(o=`${o}\n详细信息:${s}`),n(o)}if(t)return a(new ze({code:t,message:s,requestId:e.requestId}));e.result.errCode=e.result.errCode||e.result.code,e.result.errMsg=e.result.errMsg||e.result.message,n&&c&&(Ye({token:n,tokenExpired:c}),this._callbackAuth("refreshToken",[{token:n,tokenExpired:c}]),this._callback("refreshToken",[{token:n,tokenExpired:c}]),je(Fe,{token:n,tokenExpired:c}));const u=[{prop:"affectedDocs",tips:"affectedDocs不再推荐使用,请使用inserted/deleted/updated/data.length替代"},{prop:"code",tips:"code不再推荐使用,请使用errCode替代"},{prop:"message",tips:"message不再推荐使用,请使用errMsg替代"}];for(let i=0;i<u.length;i++){const{prop:t,tips:s}=u[i];if(t in e.result){const n=e.result[t];Object.defineProperty(e.result,t,{get:()=>(console.warn(s),n)})}}return h=e,xe(Ae(r,"success"),h).then((()=>xe(Ae(r,"complete"),h))).then((()=>{i(h,null);const e=o._parseResult(h);return je(Le,{type:Ue,content:e}),Promise.resolve(e)}));var h}),(e=>(/fc_function_not_found|FUNCTION_NOT_FOUND/g.test(e.message)&&console.warn("clientDB未初始化,请在web控制台保存一次schema以开启clientDB"),a(new ze({code:e.code||"SYSTEM_ERROR",message:e.message,requestId:e.requestId})))))}}const Vs="token无效,跳转登录页面",Ys="token过期,跳转登录页面",Qs={TOKEN_INVALID_TOKEN_EXPIRED:Ys,TOKEN_INVALID_INVALID_CLIENTID:Vs,TOKEN_INVALID:Vs,TOKEN_INVALID_WRONG_TOKEN:Vs,TOKEN_INVALID_ANONYMOUS_USER:Vs},Xs={"uni-id-token-expired":Ys,"uni-id-check-token-failed":Vs,"uni-id-token-not-exist":Vs,"uni-id-check-device-feature-failed":Vs};function Gs(e,t){let s="";return s=e?`${e}/${t}`:t,s.replace(/^\//,"")}function Zs(e=[],t=""){const s=[],n=[];return e.forEach((e=>{!0===e.needLogin?s.push(Gs(t,e.path)):!1===e.needLogin&&n.push(Gs(t,e.path))})),{needLoginPage:s,notNeedLoginPage:n}}function en(e){return e.split("?")[0].replace(/^\//,"")}function tn(){return function(e){let t=e&&e.$page&&e.$page.fullPath||"";return t?("/"!==t.charAt(0)&&(t="/"+t),t):t}(function(){const e=s();return e[e.length-1]}())}function sn(){return en(tn())}function nn(e="",t={}){if(!e)return!1;if(!(t&&t.list&&t.list.length))return!1;const s=t.list,n=en(e);return s.some((e=>e.pagePath===n))}const on=!!ee.uniIdRouter,{loginPage:rn,routerNeedLogin:an,resToLogin:cn,needLoginPage:ln,notNeedLoginPage:un,loginPageInTabBar:hn}=function({pages:e=[],subPackages:t=[],uniIdRouter:s={},tabBar:n={}}=ee){const{loginPage:i,needLogin:o=[],resToLogin:r=!0}=s,{needLoginPage:a,notNeedLoginPage:c}=Zs(e),{needLoginPage:l,notNeedLoginPage:u}=function(e=[]){const t=[],s=[];return e.forEach((e=>{const{root:n,pages:i=[]}=e,{needLoginPage:o,notNeedLoginPage:r}=Zs(i,n);t.push(...o),s.push(...r)})),{needLoginPage:t,notNeedLoginPage:s}}(t);return{loginPage:i,routerNeedLogin:o,resToLogin:r,needLoginPage:[...a,...l],notNeedLoginPage:[...c,...u],loginPageInTabBar:nn(i,n)}}();if(ln.indexOf(rn)>-1)throw new Error(`Login page [${rn}] should not be "needLogin", please check your pages.json`);function dn(e){const t=sn();if("/"===e.charAt(0))return e;const[s,n]=e.split("?"),i=s.replace(/^\//,"").split("/"),o=t.split("/");o.pop();for(let r=0;r<i.length;r++){const e=i[r];".."===e?o.pop():"."!==e&&o.push(e)}return""===o[0]&&o.shift(),"/"+o.join("/")+(n?"?"+n:"")}function pn({redirect:e}){const t=en(e),s=en(rn);return sn()!==s&&t!==s}function fn({api:e,redirect:t}={}){if(!t||!pn({redirect:t}))return;const s=(i=t,"/"!==(n=rn).charAt(0)&&(n="/"+n),i?n.indexOf("?")>-1?n+`&uniIdRedirectUrl=${encodeURIComponent(i)}`:n+`?uniIdRedirectUrl=${encodeURIComponent(i)}`:n);var n,i;hn?"navigateTo"!==e&&"redirectTo"!==e||(e="switchTab"):"switchTab"===e&&(e="navigateTo");const o={navigateTo:_,redirectTo:w,switchTab:k,reLaunch:b};setTimeout((()=>{o[e]({url:s})}))}function gn({url:e}={}){const t={abortLoginPageJump:!1,autoToLoginPage:!1},s=function(){const{token:e,tokenExpired:t}=Ve();let s;if(e){if(t<Date.now()){const e="uni-id-token-expired";s={errCode:e,errMsg:Xs[e]}}}else{const e="uni-id-check-token-failed";s={errCode:e,errMsg:Xs[e]}}return s}();if(function(e){const t=en(dn(e));return!(un.indexOf(t)>-1)&&(ln.indexOf(t)>-1||an.some((t=>{return s=e,new RegExp(t).test(s);var s})))}(e)&&s){if(s.uniIdRedirectUrl=e,Me(Ee).length>0)return setTimeout((()=>{je(Ee,s)}),0),t.abortLoginPageJump=!0,t;t.autoToLoginPage=!0}return t}function mn(){!function(){const e=tn(),{abortLoginPageJump:t,autoToLoginPage:s}=gn({url:e});t||s&&fn({api:"redirectTo",redirect:e})}();const e=["navigateTo","redirectTo","reLaunch","switchTab"];for(let t=0;t<e.length;t++){const s=e[t];n(s,{invoke(e){const{abortLoginPageJump:t,autoToLoginPage:n}=gn({url:e.url});return t?e:n?(fn({api:s,redirect:dn(e.url)}),!1):e}})}}function yn(){this.onResponse((e=>{const{type:t,content:s}=e;let n=!1;switch(t){case"cloudobject":n=function(e){if("object"!=typeof e)return!1;const{errCode:t}=e||{};return t in Xs}(s);break;case"clientdb":n=function(e){if("object"!=typeof e)return!1;const{errCode:t}=e||{};return t in Qs}(s)}n&&function(e={}){const t=Me(Ee);Ke().then((()=>{const s=tn();if(s&&pn({redirect:s}))return t.length>0?je(Ee,Object.assign({uniIdRedirectUrl:s},e)):void(rn&&fn({api:"navigateTo",redirect:s}))}))}(s)}))}function _n(e){var t;(t=e).onResponse=function(e){Ne(Le,e)},t.offResponse=function(e){$e(Le,e)},function(e){e.onNeedLogin=function(e){Ne(Ee,e)},e.offNeedLogin=function(e){$e(Ee,e)},on&&(ve("_globalUniCloudStatus").needLoginInit||(ve("_globalUniCloudStatus").needLoginInit=!0,Ke().then((()=>{mn.call(e)})),cn&&yn.call(e)))}(e),function(e){e.onRefreshToken=function(e){Ne(Fe,e)},e.offRefreshToken=function(e){$e(Fe,e)}}(e)}let wn;const kn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bn=/^(?:[A-Za-z\d+/]{4})*?(?:[A-Za-z\d+/]{2}(?:==)?|[A-Za-z\d+/]{3}=?)?$/;function vn(){const e=Ve().token||"",t=e.split(".");if(!e||3!==t.length)return{uid:null,role:[],permission:[],tokenExpired:0};let s;try{s=JSON.parse((n=t[1],decodeURIComponent(wn(n).split("").map((function(e){return"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)})).join(""))))}catch(i){throw new Error("获取当前用户信息出错,详细错误信息为:"+i.message)}var n;return s.tokenExpired=1e3*s.exp,delete s.exp,delete s.iat,s}wn="function"!=typeof atob?function(e){if(e=String(e).replace(/[\t\n\f\r ]+/g,""),!bn.test(e))throw new Error("Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.");var t;e+="==".slice(2-(3&e.length));for(var s,n,i="",o=0;o<e.length;)t=kn.indexOf(e.charAt(o++))<<18|kn.indexOf(e.charAt(o++))<<12|(s=kn.indexOf(e.charAt(o++)))<<6|(n=kn.indexOf(e.charAt(o++))),i+=64===s?String.fromCharCode(t>>16&255):64===n?String.fromCharCode(t>>16&255,t>>8&255):String.fromCharCode(t>>16&255,t>>8&255,255&t);return i}:atob;var Sn=function(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}(te((function(s,n){Object.defineProperty(n,"__esModule",{value:!0});const o="chooseAndUploadFile:ok",r="chooseAndUploadFile:fail";function a(e,t){return e.tempFiles.forEach(((e,s)=>{e.name||(e.name=e.path.substring(e.path.lastIndexOf("/")+1)),t&&(e.fileType=t),e.cloudPath=Date.now()+"_"+s+e.name.substring(e.name.lastIndexOf("."))})),e.tempFilePaths||(e.tempFilePaths=e.tempFiles.map((e=>e.path))),e}function c(e,t,{onChooseFile:s,onUploadProgress:n}){return t.then((e=>{if(s){const t=s(e);if(void 0!==t)return Promise.resolve(t).then((t=>void 0===t?e:t))}return e})).then((t=>!1===t?{errMsg:o,tempFilePaths:[],tempFiles:[]}:function(e,t,s=5,n){(t=Object.assign({},t)).errMsg=o;const i=t.tempFiles,r=i.length;let a=0;return new Promise((o=>{for(;a<s;)c();function c(){const s=a++;if(s>=r)return void(!i.find((e=>!e.url&&!e.errMsg))&&o(t));const l=i[s];e.uploadFile({provider:l.provider,filePath:l.path,cloudPath:l.cloudPath,fileType:l.fileType,cloudPathAsRealPath:l.cloudPathAsRealPath,onUploadProgress(e){e.index=s,e.tempFile=l,e.tempFilePath=l.path,n&&n(e)}}).then((e=>{l.url=e.fileID,s<r&&c()})).catch((e=>{l.errMsg=e.errMsg||e.message,s<r&&c()}))}}))}(e,t,5,n)))}n.initChooseAndUploadFile=function(s){return function(n={type:"all"}){return"image"===n.type?c(s,function(t){const{count:s,sizeType:n,sourceType:i=["album","camera"],extension:o}=t;return new Promise(((t,c)=>{e({count:s,sizeType:n,sourceType:i,extension:o,success(e){t(a(e,"image"))},fail(e){c({errMsg:e.errMsg.replace("chooseImage:fail",r)})}})}))}(n),n):"video"===n.type?c(s,function(e){const{camera:s,compressed:n,maxDuration:i,sourceType:o=["album","camera"],extension:c}=e;return new Promise(((e,l)=>{t({camera:s,compressed:n,maxDuration:i,sourceType:o,extension:c,success(t){const{tempFilePath:s,duration:n,size:i,height:o,width:r}=t;e(a({errMsg:"chooseVideo:ok",tempFilePaths:[s],tempFiles:[{name:t.tempFile&&t.tempFile.name||"",path:s,size:i,type:t.tempFile&&t.tempFile.type||"",width:r,height:o,duration:n,fileType:"video",cloudPath:""}]},"video"))},fail(e){l({errMsg:e.errMsg.replace("chooseVideo:fail",r)})}})}))}(n),n):c(s,function(e){const{count:t,extension:s}=e;return new Promise(((e,n)=>{let o=i;if("undefined"!=typeof wx&&"function"==typeof wx.chooseMessageFile&&(o=wx.chooseMessageFile),"function"!=typeof o)return n({errMsg:r+" 请指定 type 类型,该平台仅支持选择 image 或 video。"});o({type:"all",count:t,extension:s,success(t){e(a(t))},fail(e){n({errMsg:e.errMsg.replace("chooseFile:fail",r)})}})}))}(n),n)}}})));function Tn(e){return{props:{localdata:{type:Array,default:()=>[]},options:{type:[Object,Array],default:()=>({})},spaceInfo:{type:Object,default:()=>({})},collection:{type:[String,Array],default:""},action:{type:String,default:""},field:{type:String,default:""},orderby:{type:String,default:""},where:{type:[String,Object],default:""},pageData:{type:String,default:"add"},pageCurrent:{type:Number,default:1},pageSize:{type:Number,default:20},getcount:{type:[Boolean,String],default:!1},gettree:{type:[Boolean,String],default:!1},gettreepath:{type:[Boolean,String],default:!1},startwith:{type:String,default:""},limitlevel:{type:Number,default:10},groupby:{type:String,default:""},groupField:{type:String,default:""},distinct:{type:[Boolean,String],default:!1},foreignKey:{type:String,default:""},loadtime:{type:String,default:"auto"},manual:{type:Boolean,default:!1}},data:()=>({mixinDatacomLoading:!1,mixinDatacomHasMore:!1,mixinDatacomResData:[],mixinDatacomErrorMessage:"",mixinDatacomPage:{},mixinDatacomError:null}),created(){this.mixinDatacomPage={current:this.pageCurrent,size:this.pageSize,count:0},this.$watch((()=>{var e=[];return["pageCurrent","pageSize","localdata","collection","action","field","orderby","where","getont","getcount","gettree","groupby","groupField","distinct"].forEach((t=>{e.push(this[t])})),e}),((e,t)=>{if("manual"===this.loadtime)return;let s=!1;const n=[];for(let i=2;i<e.length;i++)e[i]!==t[i]&&(n.push(e[i]),s=!0);e[0]!==t[0]&&(this.mixinDatacomPage.current=this.pageCurrent),this.mixinDatacomPage.size=this.pageSize,this.onMixinDatacomPropsChange(s,n)}))},methods:{onMixinDatacomPropsChange(e,t){},mixinDatacomEasyGet({getone:e=!1,success:t,fail:s}={}){this.mixinDatacomLoading||(this.mixinDatacomLoading=!0,this.mixinDatacomErrorMessage="",this.mixinDatacomError=null,this.mixinDatacomGet().then((s=>{this.mixinDatacomLoading=!1;const{data:n,count:i}=s.result;this.getcount&&(this.mixinDatacomPage.count=i),this.mixinDatacomHasMore=n.length<this.pageSize;const o=e?n.length?n[0]:void 0:n;this.mixinDatacomResData=o,t&&t(o)})).catch((e=>{this.mixinDatacomLoading=!1,this.mixinDatacomErrorMessage=e,this.mixinDatacomError=e,s&&s(e)})))},mixinDatacomGet(t={}){let s;t=t||{},s="undefined"!=typeof __uniX&&__uniX?e.databaseForJQL(this.spaceInfo):e.database(this.spaceInfo);const n=t.action||this.action;n&&(s=s.action(n));const i=t.collection||this.collection;s=Array.isArray(i)?s.collection(...i):s.collection(i);const o=t.where||this.where;o&&Object.keys(o).length&&(s=s.where(o));const r=t.field||this.field;r&&(s=s.field(r));const a=t.foreignKey||this.foreignKey;a&&(s=s.foreignKey(a));const c=t.groupby||this.groupby;c&&(s=s.groupBy(c));const l=t.groupField||this.groupField;l&&(s=s.groupField(l)),!0===(void 0!==t.distinct?t.distinct:this.distinct)&&(s=s.distinct());const u=t.orderby||this.orderby;u&&(s=s.orderBy(u));const h=void 0!==t.pageCurrent?t.pageCurrent:this.mixinDatacomPage.current,d=void 0!==t.pageSize?t.pageSize:this.mixinDatacomPage.size,p=void 0!==t.getcount?t.getcount:this.getcount,f=void 0!==t.gettree?t.gettree:this.gettree,g=void 0!==t.gettreepath?t.gettreepath:this.gettreepath,m={getCount:p},y={limitLevel:void 0!==t.limitlevel?t.limitlevel:this.limitlevel,startWith:void 0!==t.startwith?t.startwith:this.startwith};return f&&(m.getTree=y),g&&(m.getTreePath=y),s=s.skip(d*(h-1)).limit(d).get(m),s}}}}function In(e){return ve("_globalUniCloudSecureNetworkCache__{spaceId}".replace("{spaceId}",e.config.spaceId))}async function Pn({openid:e,callLoginByWeixin:t=!1}={}){throw In(this),new Error("[SecureNetwork] API `initSecureNetworkByWeixin` is not supported on platform `web`")}async function xn(e){const t=In(this);return t.initPromise||(t.initPromise=Pn.call(this,e).then((e=>e)).catch((e=>{throw delete t.initPromise,e}))),t.initPromise}function An(e){const t={getSystemInfo:v,getPushClientId:S};return function(s){return new Promise(((n,i)=>{t[e]({...s,success(e){n(e)},fail(e){i(e)}})}))}}class Cn extends class{constructor(){this._callback={}}addListener(e,t){this._callback[e]||(this._callback[e]=[]),this._callback[e].push(t)}on(e,t){return this.addListener(e,t)}removeListener(e,t){if(!t)throw new Error('The "listener" argument must be of type function. Received undefined');const s=this._callback[e];if(!s)return;const n=function(e,t){for(let s=e.length-1;s>=0;s--)if(e[s]===t)return s;return-1}(s,t);s.splice(n,1)}off(e,t){return this.removeListener(e,t)}removeAllListener(e){delete this._callback[e]}emit(e,...t){const s=this._callback[e];if(s)for(let n=0;n<s.length;n++)s[n](...t)}}{constructor(){super(),this._uniPushMessageCallback=this._receivePushMessage.bind(this),this._currentMessageId=-1,this._payloadQueue=[]}init(){return Promise.all([An("getSystemInfo")(),An("getPushClientId")()]).then((([{appId:e}={},{cid:t}={}]=[])=>{if(!e)throw new Error("Invalid appId, please check the manifest.json file");if(!t)throw new Error("Invalid push client id");this._appId=e,this._pushClientId=t,this._seqId=Date.now()+"-"+Math.floor(9e5*Math.random()+1e5),this.emit("open"),this._initMessageListener()}),(e=>{throw this.emit("error",e),this.close(),e}))}async open(){return this.init()}_isUniCloudSSE(e){if("receive"!==e.type)return!1;const t=e&&e.data&&e.data.payload;return!(!t||"UNI_CLOUD_SSE"!==t.channel||t.seqId!==this._seqId)}_receivePushMessage(e){if(!this._isUniCloudSSE(e))return;const t=e&&e.data&&e.data.payload,{action:s,messageId:n,message:i}=t;this._payloadQueue.push({action:s,messageId:n,message:i}),this._consumMessage()}_consumMessage(){for(;;){const e=this._payloadQueue.find((e=>e.messageId===this._currentMessageId+1));if(!e)break;this._currentMessageId++,this._parseMessagePayload(e)}}_parseMessagePayload(e){const{action:t,messageId:s,message:n}=e;"end"===t?this._end({messageId:s,message:n}):"message"===t&&this._appendMessage({messageId:s,message:n})}_appendMessage({messageId:e,message:t}={}){this.emit("message",t)}_end({messageId:e,message:t}={}){this.emit("end",t),this.close()}_initMessageListener(){l(this._uniPushMessageCallback)}_destroy(){u(this._uniPushMessageCallback)}toJSON(){return{appId:this._appId,pushClientId:this._pushClientId,seqId:this._seqId}}close(){this._destroy(),this.emit("close")}}const On={tcb:fs,tencent:fs,aliyun:ot,private:ms,alipay:Ss};let Ln=new class{init(e){let t={};const s=On[e.provider];if(!s)throw new Error("未提供正确的provider参数");var n;return t=s.init(e),function(e){e._initPromiseHub||(e._initPromiseHub=new me({createPromise:function(){let t=Promise.resolve();t=new Promise((e=>{setTimeout((()=>{e()}),1)}));const s=e.auth();return t.then((()=>s.getLoginState())).then((e=>e?Promise.resolve():s.signInAnonymously()))}}))}(t),Ds(t),function(e){const t=e.uploadFile;e.uploadFile=function(e){return t.call(this,e)}}(t),(n=t).database=function(e){if(e&&Object.keys(e).length>0)return n.init(e).database();if(this._database)return this._database;const t=Ws(Js,{uniClient:n});return this._database=t,t},n.databaseForJQL=function(e){if(e&&Object.keys(e).length>0)return n.init(e).databaseForJQL();if(this._databaseForJQL)return this._databaseForJQL;const t=Ws(Js,{uniClient:n,isJQL:!0});return this._databaseForJQL=t,t},function(e){e.getCurrentUserInfo=vn,e.chooseAndUploadFile=Sn.initChooseAndUploadFile(e),Object.assign(e,{get mixinDatacom(){return Tn(e)}}),e.SSEChannel=Cn,e.initSecureNetworkByWeixin=function(e){return function({openid:t,callLoginByWeixin:s=!1}={}){return xn.call(e,{openid:t,callLoginByWeixin:s})}}(e),e.importObject=function(t){return function(s,n={}){n=function(e,t={}){return e.customUI=t.customUI||e.customUI,e.parseSystemError=t.parseSystemError||e.parseSystemError,Object.assign(e.loadingOptions,t.loadingOptions),Object.assign(e.errorOptions,t.errorOptions),"object"==typeof t.secretMethods&&(e.secretMethods=t.secretMethods),e}({customUI:!1,loadingOptions:{title:"加载中...",mask:!0},errorOptions:{type:"modal",retry:!1}},n);const{customUI:i,loadingOptions:l,errorOptions:u,parseSystemError:h}=n,d=!i;return new Proxy({},{get(i,p){switch(p){case"toString":return"[object UniCloudObject]";case"toJSON":return{}}return function({fn:e,interceptorName:t,getCallbackArgs:s}={}){return async function(...n){const i=s?s({params:n}):{};let o,r;try{return await xe(Ae(t,"invoke"),{...i}),o=await e(...n),await xe(Ae(t,"success"),{...i,result:o}),o}catch(a){throw r=a,await xe(Ae(t,"fail"),{...i,error:r}),r}finally{await xe(Ae(t,"complete"),r?{...i,error:r}:{...i,result:o})}}}({fn:async function i(...f){let g;d&&o({title:l.title,mask:l.mask});const m={name:s,type:"OBJECT",data:{method:p,params:f}};"object"==typeof n.secretMethods&&function(e,t){const s=t.data.method,n=e.secretMethods||{},i=n[s]||n["*"];i&&(t.secretType=i)}(n,m);let y=!1;try{g=await t.callFunction(m)}catch(e){y=!0,g={result:new ze(e)}}const{errSubject:_,errCode:w,errMsg:k,newToken:b}=g.result||{};if(d&&r(),b&&b.token&&b.tokenExpired&&(Ye(b),je(Fe,{...b})),w){let e=k;if(y&&h&&(e=(await h({objectName:s,methodName:p,params:f,errSubject:_,errCode:w,errMsg:k})).errMsg||k),d)if("toast"===u.type)a({title:e,icon:"none"});else{if("modal"!==u.type)throw new Error(`Invalid errorOptions.type: ${u.type}`);{const{confirm:t}=await async function({title:e,content:t,showCancel:s,cancelText:n,confirmText:i}={}){return new Promise(((o,r)=>{c({title:e,content:t,showCancel:s,cancelText:n,confirmText:i,success(e){o(e)},fail(){o({confirm:!1,cancel:!0})}})}))}({title:"提示",content:e,showCancel:u.retry,cancelText:"取消",confirmText:u.retry?"重试":"确定"});if(u.retry&&t)return i(...f)}}const t=new ze({subject:_,code:w,message:k,requestId:g.requestId});throw t.detail=g.result,je(Le,{type:Re,content:t}),t}return je(Le,{type:Re,content:g.result}),g.result},interceptorName:"callObject",getCallbackArgs:function({params:e}={}){return{objectName:s,methodName:p,params:e}}})}})}}(e)}(t),["callFunction","uploadFile","deleteFile","getTempFileURL","downloadFile","chooseAndUploadFile"].forEach((e=>{if(!t[e])return;const s=t[e];var n,i;t[e]=function(){return s.apply(t,Array.from(arguments))},t[e]=(n=t[e],i=e,function(e){let t=!1;if("callFunction"===i){const s=e&&e.type||ae;t=s!==ae}const s="callFunction"===i&&!t,o=this._initPromiseHub.exec();e=e||{};const{success:r,fail:a,complete:c}=He(e),l=o.then((()=>t?Promise.resolve():xe(Ae(i,"invoke"),e))).then((()=>n.call(this,e))).then((e=>t?Promise.resolve(e):xe(Ae(i,"success"),e).then((()=>xe(Ae(i,"complete"),e))).then((()=>(s&&je(Le,{type:De,content:e}),Promise.resolve(e))))),(e=>t?Promise.reject(e):xe(Ae(i,"fail"),e).then((()=>xe(Ae(i,"complete"),e))).then((()=>(je(Le,{type:De,content:e}),Promise.reject(e))))));if(!(r||a||c))return l;l.then((e=>{r&&r(e),c&&c(e),s&&je(Le,{type:De,content:e})}),(e=>{a&&a(e),c&&c(e),s&&je(Le,{type:De,content:e})}))}).bind(t)})),t.init=this.init,t}};(()=>{const e=we;let t={};if(e&&1===e.length)t=e[0],Ln=Ln.init(t),Ln._isDefault=!0;else{const t=["auth","callFunction","uploadFile","deleteFile","getTempFileURL","downloadFile","database","getCurrentUSerInfo","importObject"];let s;s=e&&e.length>0?"应用有多个服务空间,请通过uniCloud.init方法指定要使用的服务空间":"应用未关联服务空间,请在uniCloud目录右键关联服务空间",t.forEach((e=>{Ln[e]=function(){return console.error(s),Promise.reject(new ze({code:"SYS_ERR",message:s}))}}))}Object.assign(Ln,{get mixinDatacom(){return Tn(Ln)}}),_n(Ln),Ln.addInterceptor=Ie,Ln.removeInterceptor=Pe,Ln.interceptObject=Ce})();var En=Ln;const Fn="chooseAndUploadFile:fail";function Un(e,t){return e.tempFiles.forEach(((e,s)=>{e.name||(e.name=e.path.substring(e.path.lastIndexOf("/")+1)),t&&(e.fileType=t),e.cloudPath=Date.now()+"_"+s+e.name.substring(e.name.lastIndexOf("."))})),e.tempFilePaths||(e.tempFilePaths=e.tempFiles.map((e=>e.path))),e}function Dn(e,t=5,s){const n=(e=JSON.parse(JSON.stringify(e))).length;let i=0,o=this;return new Promise((r=>{for(;i<t;)a();function a(){let t=i++;if(t>=n)return void(!e.find((e=>!e.url&&!e.errMsg))&&r(e));const c=e[t],l=o.files.findIndex((e=>e.uuid===c.uuid));c.url="",delete c.errMsg,En.uploadFile({filePath:c.path,cloudPath:c.cloudPath,fileType:c.fileType,onUploadProgress:e=>{e.index=l,s&&s(e)}}).then((e=>{c.url=e.fileID,c.index=l,t<n&&a()})).catch((e=>{c.errMsg=e.errMsg||e.message,c.index=l,t<n&&a()}))}}))}function Rn(e,{onChooseFile:t,onUploadProgress:s}){return e.then((e=>{if(t){const s=t(e);if(void 0!==s)return Promise.resolve(s).then((t=>void 0===t?e:t))}return e})).then((e=>!1===e?{errMsg:"chooseAndUploadFile:ok",tempFilePaths:[],tempFiles:[]}:e))}function Mn(s={type:"all"}){return"image"===s.type?Rn(function(t){const{count:s,sizeType:n=["original","compressed"],sourceType:i,extension:o}=t;return new Promise(((t,r)=>{e({count:s,sizeType:n,sourceType:i,extension:o,success(e){t(Un(e,"image"))},fail(e){r({errMsg:e.errMsg.replace("chooseImage:fail",Fn)})}})}))}(s),s):"video"===s.type?Rn(function(e){const{camera:s,compressed:n,maxDuration:i,sourceType:o,extension:r}=e;return new Promise(((e,a)=>{t({camera:s,compressed:n,maxDuration:i,sourceType:o,extension:r,success(t){const{tempFilePath:s,duration:n,size:i,height:o,width:r}=t;e(Un({errMsg:"chooseVideo:ok",tempFilePaths:[s],tempFiles:[{name:t.tempFile&&t.tempFile.name||"",path:s,size:i,type:t.tempFile&&t.tempFile.type||"",width:r,height:o,duration:n,fileType:"video",cloudPath:""}]},"video"))},fail(e){a({errMsg:e.errMsg.replace("chooseVideo:fail",Fn)})}})}))}(s),s):Rn(function(e){const{count:t,extension:s}=e;return new Promise(((e,n)=>{let o=i;if("undefined"!=typeof wx&&"function"==typeof wx.chooseMessageFile&&(o=wx.chooseMessageFile),"function"!=typeof o)return n({errMsg:Fn+" 请指定 type 类型,该平台仅支持选择 image 或 video。"});o({type:"all",count:t,extension:s,success(t){e(Un(t))},fail(e){n({errMsg:e.errMsg.replace("chooseFile:fail",Fn)})}})}))}(s),s)}const Nn=e=>{const t=e.lastIndexOf("."),s=e.length;return{name:e.substring(0,t),ext:e.substring(t+1,s)}},$n=e=>{if(Array.isArray(e))return e;return e.replace(/(\[|\])/g,"").split(",")},jn=async(e,t="image")=>{const s=Nn(e.name).ext.toLowerCase();let n={name:e.name,uuid:e.uuid,extname:s||"",cloudPath:e.cloudPath,fileType:e.fileType,url:e.path||e.path,size:e.size,image:{},path:e.path,video:{}};if("image"===t){const t=await(i=e.path,new Promise(((e,t)=>{P({src:i,success(t){e(t)},fail(e){t(e)}})})));delete n.video,n.image.width=t.width,n.image.height=t.height,n.image.location=t.path}else delete n.image;var i;return n};const qn=G({name:"uniFilePicker",components:{uploadImage:G({name:"uploadImage",emits:["uploadFiles","choose","delFile"],props:{filesList:{type:Array,default:()=>[]},disabled:{type:Boolean,default:!1},disablePreview:{type:Boolean,default:!1},limit:{type:[Number,String],default:9},imageStyles:{type:Object,default:()=>({width:"auto",height:"auto",border:{}})},delIcon:{type:Boolean,default:!0},readonly:{type:Boolean,default:!1}},computed:{styles(){return Object.assign({width:"auto",height:"auto",border:{}},this.imageStyles)},boxStyle(){const{width:e="auto",height:t="auto"}=this.styles;let s={};"auto"===t?"auto"!==e?(s.height=this.value2px(e),s["padding-top"]=0):s.height=0:(s.height=this.value2px(t),s["padding-top"]=0),s.width="auto"===e?"auto"!==t?this.value2px(t):"33.3%":this.value2px(e);let n="";for(let i in s)n+=`${i}:${s[i]};`;return n},borderStyle(){let{border:e}=this.styles,t={};if("boolean"==typeof e)t.border=e?"1px #eee solid":"none";else{let s=e&&e.width||1;s=this.value2px(s);let n=e&&e.radius||3;n=this.value2px(n),t={"border-width":s,"border-style":e&&e.style||"solid","border-color":e&&e.color||"#eee","border-radius":n}}let s="";for(let n in t)s+=`${n}:${t[n]};`;return s}},methods:{uploadFiles(e,t){this.$emit("uploadFiles",e)},choose(){this.$emit("choose")},delFile(e){this.$emit("delFile",e)},prviewImage(e,t){let s=[];1===Number(this.limit)&&this.disablePreview&&!this.disabled&&this.$emit("choose"),this.disablePreview||(this.filesList.forEach((e=>{s.push(e.url)})),x({urls:s,current:t}))},value2px:e=>("number"==typeof e?e+="px":-1===e.indexOf("%")&&(e=-1!==e.indexOf("px")?e:e+"px"),e)}},[["render",function(e,t,s,n,i,o){const r=j,a=q,c=B;return A(),C(a,{class:"uni-file-picker__container"},{default:O((()=>[(A(!0),L(E,null,F(s.filesList,((e,t)=>(A(),C(a,{class:"file-picker__box",key:t,style:U(o.boxStyle)},{default:O((()=>[D(a,{class:"file-picker__box-content",style:U(o.borderStyle)},{default:O((()=>[D(r,{class:"file-image",src:e.url,mode:"aspectFill",onClick:R((s=>o.prviewImage(e,t)),["stop"])},null,8,["src","onClick"]),s.delIcon&&!s.readonly?(A(),C(a,{key:0,class:"icon-del-box",onClick:R((e=>o.delFile(t)),["stop"])},{default:O((()=>[D(a,{class:"icon-del"}),D(a,{class:"icon-del rotate"})])),_:2},1032,["onClick"])):M("",!0),e.progress&&100!==e.progress||0===e.progress?(A(),C(a,{key:1,class:"file-picker__progress"},{default:O((()=>[D(c,{class:"file-picker__progress-item",percent:-1===e.progress?0:e.progress,"stroke-width":"4",backgroundColor:e.errMsg?"#ff5a5f":"#EBEBEB"},null,8,["percent","backgroundColor"])])),_:2},1024)):M("",!0),e.errMsg?(A(),C(a,{key:2,class:"file-picker__mask",onClick:R((s=>o.uploadFiles(e,t)),["stop"])},{default:O((()=>[N(" 点击重试 ")])),_:2},1032,["onClick"])):M("",!0)])),_:2},1032,["style"])])),_:2},1032,["style"])))),128)),s.filesList.length<s.limit&&!s.readonly?(A(),C(a,{key:0,class:"file-picker__box",style:U(o.boxStyle)},{default:O((()=>[D(a,{class:"file-picker__box-content is-add",style:U(o.borderStyle),onClick:o.choose},{default:O((()=>[$(e.$slots,"default",{},(()=>[D(a,{class:"icon-add"}),D(a,{class:"icon-add rotate"})]),!0)])),_:3},8,["style","onClick"])])),_:3},8,["style"])):M("",!0)])),_:3})}],["__scopeId","data-v-86b162f5"]]),uploadFile:G({name:"uploadFile",emits:["uploadFiles","choose","delFile"],props:{filesList:{type:Array,default:()=>[]},delIcon:{type:Boolean,default:!0},limit:{type:[Number,String],default:9},showType:{type:String,default:""},listStyles:{type:Object,default:()=>({border:!0,dividline:!0,borderStyle:{}})},readonly:{type:Boolean,default:!1}},computed:{list(){let e=[];return this.filesList.forEach((t=>{e.push(t)})),e},styles(){return Object.assign({border:!0,dividline:!0,"border-style":{}},this.listStyles)},borderStyle(){let{borderStyle:e,border:t}=this.styles,s={};if(t){let t=e&&e.width||1;t=this.value2px(t);let n=e&&e.radius||5;n=this.value2px(n),s={"border-width":t,"border-style":e&&e.style||"solid","border-color":e&&e.color||"#eee","border-radius":n}}else s.border="none";let n="";for(let i in s)n+=`${i}:${s[i]};`;return n},borderLineStyle(){let e={},{borderStyle:t}=this.styles;if(t&&t.color&&(e["border-color"]=t.color),t&&t.width){let s=t&&t.width||1,n=t&&t.style||0;"number"==typeof s?s+="px":s=s.indexOf("px")?s:s+"px",e["border-width"]=s,"number"==typeof n?n+="px":n=n.indexOf("px")?n:n+"px",e["border-top-style"]=n}let s="";for(let n in e)s+=`${n}:${e[n]};`;return s}},methods:{uploadFiles(e,t){this.$emit("uploadFiles",{item:e,index:t})},choose(){this.$emit("choose")},delFile(e){this.$emit("delFile",e)},value2px:e=>("number"==typeof e?e+="px":e=-1!==e.indexOf("px")?e:e+"px",e)}},[["render",function(e,t,s,n,i,o){const r=q,a=B;return A(),C(r,{class:"uni-file-picker__files"},{default:O((()=>[s.readonly?M("",!0):(A(),C(r,{key:0,class:"files-button",onClick:o.choose},{default:O((()=>[$(e.$slots,"default",{},void 0,!0)])),_:3},8,["onClick"])),o.list.length>0?(A(),C(r,{key:1,class:"uni-file-picker__lists is-text-box",style:U(o.borderStyle)},{default:O((()=>[(A(!0),L(E,null,F(o.list,((e,t)=>(A(),C(r,{class:K(["uni-file-picker__lists-box",{"files-border":0!==t&&o.styles.dividline}]),key:t,style:U(0!==t&&o.styles.dividline&&o.borderLineStyle)},{default:O((()=>[D(r,{class:"uni-file-picker__item"},{default:O((()=>[D(r,{class:"files__name"},{default:O((()=>[N(H(e.name),1)])),_:2},1024),s.delIcon&&!s.readonly?(A(),C(r,{key:0,class:"icon-del-box icon-files",onClick:e=>o.delFile(t)},{default:O((()=>[D(r,{class:"icon-del icon-files"}),D(r,{class:"icon-del rotate"})])),_:2},1032,["onClick"])):M("",!0)])),_:2},1024),e.progress&&100!==e.progress||0===e.progress?(A(),C(r,{key:0,class:"file-picker__progress"},{default:O((()=>[D(a,{class:"file-picker__progress-item",percent:-1===e.progress?0:e.progress,"stroke-width":"4",backgroundColor:e.errMsg?"#ff5a5f":"#EBEBEB"},null,8,["percent","backgroundColor"])])),_:2},1024)):M("",!0),"error"===e.status?(A(),C(r,{key:1,class:"file-picker__mask",onClick:R((s=>o.uploadFiles(e,t)),["stop"])},{default:O((()=>[N(" 点击重试 ")])),_:2},1032,["onClick"])):M("",!0)])),_:2},1032,["class","style"])))),128))])),_:1},8,["style"])):M("",!0)])),_:3})}],["__scopeId","data-v-5d376bd5"]])},options:{virtualHost:!0},emits:["select","success","fail","progress","delete","update:modelValue","input"],props:{modelValue:{type:[Array,Object],default:()=>[]},disabled:{type:Boolean,default:!1},disablePreview:{type:Boolean,default:!1},delIcon:{type:Boolean,default:!0},autoUpload:{type:Boolean,default:!0},limit:{type:[Number,String],default:9},mode:{type:String,default:"grid"},fileMediatype:{type:String,default:"image"},fileExtname:{type:[Array,String],default:()=>[]},title:{type:String,default:""},listStyles:{type:Object,default:()=>({border:!0,dividline:!0,borderStyle:{}})},imageStyles:{type:Object,default:()=>({width:"auto",height:"auto"})},readonly:{type:Boolean,default:!1},returnType:{type:String,default:"array"},sizeType:{type:Array,default:()=>["original","compressed"]},sourceType:{type:Array,default:()=>["album","camera"]}},data:()=>({files:[],localValue:[]}),watch:{modelValue:{handler(e,t){this.setValue(e,t)},immediate:!0}},computed:{filesList(){let e=[];return this.files.forEach((t=>{e.push(t)})),e},showType(){return"image"===this.fileMediatype?this.mode:"list"},limitLength(){return"object"===this.returnType?1:this.limit?this.limit>=9?9:this.limit:1}},created(){En.config&&En.config.provider||(this.noSpace=!0,En.chooseAndUploadFile=Mn),this.form=this.getForm("uniForms"),this.formItem=this.getForm("uniFormsItem"),this.form&&this.formItem&&this.formItem.name&&(this.rename=this.formItem.name,this.form.inputChildrens.push(this))},methods:{clearFiles(e){0===e||e?this.files.splice(e,1):(this.files=[],this.$nextTick((()=>{this.setEmit()}))),this.$nextTick((()=>{this.setEmit()}))},upload(){let e=[];return this.files.forEach(((t,s)=>{"ready"!==t.status&&"error"!==t.status||e.push(Object.assign({},t))})),this.uploadFiles(e)},async setValue(e,t){const s=async e=>{let t="";return t=e.fileID?e.fileID:e.url,/cloud:\/\/([\w.]+\/?)\S*/.test(t)&&(e.fileID=t,e.url=await this.getTempFileURL(t)),e.url&&(e.path=e.url),e};if("object"===this.returnType)e?await s(e):e={};else{e||(e=[]);for(let t=0;t<e.length;t++){let n=e[t];await s(n)}}this.localValue=e,this.form&&this.formItem&&!this.is_reset&&(this.is_reset=!1,this.formItem.setValue(this.localValue));let n=Object.keys(e).length>0?e:[];this.files=[].concat(n)},choose(){this.disabled||(this.files.length>=Number(this.limitLength)&&"grid"!==this.showType&&"array"===this.returnType?a({title:`您最多选择 ${this.limitLength} 个文件`,icon:"none"}):this.chooseFiles())},chooseFiles(){const e=$n(this.fileExtname);En.chooseAndUploadFile({type:this.fileMediatype,compressed:!1,sizeType:this.sizeType,sourceType:this.sourceType,extension:e.length>0?e:void 0,count:this.limitLength-this.files.length,onChooseFile:this.chooseFileCallback,onUploadProgress:e=>{this.setProgress(e,e.index)}}).then((e=>{this.setSuccessAndError(e.tempFiles)})).catch((e=>{console.log("选择失败",e)}))},async chooseFileCallback(e){const t=$n(this.fileExtname);(1===Number(this.limitLength)&&this.disablePreview&&!this.disabled||"object"===this.returnType)&&(this.files=[]);let{filePaths:s,files:n}=((e,t)=>{let s=[],n=[];return t&&0!==t.length?(e.tempFiles.forEach((e=>{const i=Nn(e.name).ext.toLowerCase();-1!==t.indexOf(i)&&(n.push(e),s.push(e.path))})),n.length!==e.tempFiles.length&&a({title:`当前选择了${e.tempFiles.length}个文件 ,${e.tempFiles.length-n.length} 个文件格式不正确`,icon:"none",duration:5e3}),{filePaths:s,files:n}):{filePaths:s,files:n}})(e,t);t&&t.length>0||(s=e.tempFilePaths,n=e.tempFiles);let i=[];for(let o=0;o<n.length&&!(this.limitLength-this.files.length<=0);o++){n[o].uuid=Date.now();let e=await jn(n[o],this.fileMediatype);e.progress=0,e.status="ready",this.files.push(e),i.push({...e,file:n[o]})}this.$emit("select",{tempFiles:i,tempFilePaths:s}),e.tempFiles=n,this.autoUpload&&!this.noSpace||(e.tempFiles=[])},uploadFiles(e){return e=[].concat(e),Dn.call(this,e,5,(e=>{this.setProgress(e,e.index,!0)})).then((e=>(this.setSuccessAndError(e),e))).catch((e=>{console.log(e)}))},async setSuccessAndError(e,t){let s=[],n=[],i=[],o=[];for(let r=0;r<e.length;r++){const t=e[r],a=t.uuid?this.files.findIndex((e=>e.uuid===t.uuid)):t.index;if(-1===a||!this.files)break;if("request:fail"===t.errMsg)this.files[a].url=t.path,this.files[a].status="error",this.files[a].errMsg=t.errMsg,n.push(this.files[a]),o.push(this.files[a].url);else{this.files[a].errMsg="",this.files[a].fileID=t.url;/cloud:\/\/([\w.]+\/?)\S*/.test(t.url)?this.files[a].url=await this.getTempFileURL(t.url):this.files[a].url=t.url,this.files[a].status="success",this.files[a].progress+=1,s.push(this.files[a]),i.push(this.files[a].fileID)}}s.length>0&&(this.setEmit(),this.$emit("success",{tempFiles:this.backObject(s),tempFilePaths:i})),n.length>0&&this.$emit("fail",{tempFiles:this.backObject(n),tempFilePaths:o})},setProgress(e,t,s){this.files.length;const n=Math.round(100*e.loaded/e.total);let i=t;s||(i=this.files.findIndex((t=>t.uuid===e.tempFile.uuid))),-1!==i&&this.files[i]&&(this.files[i].progress=n-1,this.$emit("progress",{index:i,progress:parseInt(n),tempFile:this.files[i]}))},delFile(e){this.$emit("delete",{tempFile:this.files[e],tempFilePath:this.files[e].url}),this.files.splice(e,1),this.$nextTick((()=>{this.setEmit()}))},getFileExt(e){const t=e.lastIndexOf("."),s=e.length;return{name:e.substring(0,t),ext:e.substring(t+1,s)}},setEmit(){let e=[];"object"===this.returnType?(e=this.backObject(this.files)[0],this.localValue=e||null):(e=this.backObject(this.files),this.localValue||(this.localValue=[]),this.localValue=[...e]),this.$emit("update:modelValue",this.localValue)},backObject(e){let t=[];return e.forEach((e=>{t.push({extname:e.extname,fileType:e.fileType,image:e.image,name:e.name,path:e.path,size:e.size,fileID:e.fileID,url:e.url,uuid:e.uuid,status:e.status,cloudPath:e.cloudPath})})),t},async getTempFileURL(e){e={fileList:[].concat(e)};return(await En.getTempFileURL(e)).fileList[0].tempFileURL||""},getForm(e="uniForms"){let t=this.$parent,s=t.$options.name;for(;s!==e;){if(t=t.$parent,!t)return!1;s=t.$options.name}return t}}},[["render",function(e,t,s,n,i,o){const r=W,a=q,c=z("upload-image"),l=J,u=z("upload-file");return A(),C(a,{class:"uni-file-picker"},{default:O((()=>[s.title?(A(),C(a,{key:0,class:"uni-file-picker__header"},{default:O((()=>[D(r,{class:"file-title"},{default:O((()=>[N(H(s.title),1)])),_:1}),D(r,{class:"file-count"},{default:O((()=>[N(H(o.filesList.length)+"/"+H(o.limitLength),1)])),_:1})])),_:1})):M("",!0),"image"===s.fileMediatype&&"grid"===o.showType?(A(),C(c,{key:1,readonly:s.readonly,"image-styles":s.imageStyles,"files-list":o.filesList,limit:o.limitLength,disablePreview:s.disablePreview,delIcon:s.delIcon,onUploadFiles:o.uploadFiles,onChoose:o.choose,onDelFile:o.delFile},{default:O((()=>[$(e.$slots,"default",{},(()=>[D(a,{class:"is-add"},{default:O((()=>[D(a,{class:"icon-add"}),D(a,{class:"icon-add rotate"})])),_:1})]),!0)])),_:3},8,["readonly","image-styles","files-list","limit","disablePreview","delIcon","onUploadFiles","onChoose","onDelFile"])):M("",!0),"image"!==s.fileMediatype||"grid"!==o.showType?(A(),C(u,{key:2,readonly:s.readonly,"list-styles":s.listStyles,"files-list":o.filesList,showType:o.showType,delIcon:s.delIcon,onUploadFiles:o.uploadFiles,onChoose:o.choose,onDelFile:o.delFile},{default:O((()=>[$(e.$slots,"default",{},(()=>[D(l,{type:"primary",size:"mini"},{default:O((()=>[N("选择文件")])),_:1})]),!0)])),_:3},8,["readonly","list-styles","files-list","showType","delIcon","onUploadFiles","onChoose","onDelFile"])):M("",!0)])),_:3})}],["__scopeId","data-v-ae18bd15"]]);class Bn{constructor(e,t){this.options=e,this.animation=V({...e}),this.currentStepAnimates={},this.next=0,this.$=t}_nvuePushAnimates(e,t){let s=this.currentStepAnimates[this.next],n={};if(n=s||{styles:{},config:{}},Kn.includes(e)){n.styles.transform||(n.styles.transform="");let s="";"rotate"===e&&(s="deg"),n.styles.transform+=`${e}(${t+s}) `}else n.styles[e]=`${t}`;this.currentStepAnimates[this.next]=n}_animateRun(e={},t={}){let s=this.$.$refs.ani.ref;if(s)return new Promise(((n,i)=>{nvueAnimation.transition(s,{styles:e,...t},(e=>{n()}))}))}_nvueNextAnimate(e,t=0,s){let n=e[t];if(n){let{styles:i,config:o}=n;this._animateRun(i,o).then((()=>{t+=1,this._nvueNextAnimate(e,t,s)}))}else this.currentStepAnimates={},"function"==typeof s&&s(),this.isEnd=!0}step(e={}){return this.animation.step(e),this}run(e){this.$.animationData=this.animation.export(),this.$.timer=setTimeout((()=>{"function"==typeof e&&e()}),this.$.durationTime)}}const Kn=["matrix","matrix3d","rotate","rotate3d","rotateX","rotateY","rotateZ","scale","scale3d","scaleX","scaleY","scaleZ","skew","skewX","skewY","translate","translate3d","translateX","translateY","translateZ"];function Hn(e,t){if(t)return clearTimeout(t.timer),new Bn(e,t)}Kn.concat(["opacity","backgroundColor"],["width","height","left","right","top","bottom"]).forEach((e=>{Bn.prototype[e]=function(...t){return this.animation[e](...t),this}}));const zn=G({name:"uniTransition",emits:["click","change"],props:{show:{type:Boolean,default:!1},modeClass:{type:[Array,String],default:()=>"fade"},duration:{type:Number,default:300},styles:{type:Object,default:()=>({})},customClass:{type:String,default:""},onceRender:{type:Boolean,default:!1}},data:()=>({isShow:!1,transform:"",opacity:1,animationData:{},durationTime:300,config:{}}),watch:{show:{handler(e){e?this.open():this.isShow&&this.close()},immediate:!0}},computed:{stylesObject(){let e={...this.styles,"transition-duration":this.duration/1e3+"s"},t="";for(let s in e){t+=this.toLine(s)+":"+e[s]+";"}return t},transformStyles(){return"transform:"+this.transform+";opacity:"+this.opacity+";"+this.stylesObject}},created(){this.config={duration:this.duration,timingFunction:"ease",transformOrigin:"50% 50%",delay:0},this.durationTime=this.duration},methods:{init(e={}){e.duration&&(this.durationTime=e.duration),this.animation=Hn(Object.assign(this.config,e),this)},onClick(){this.$emit("click",{detail:this.isShow})},step(e,t={}){if(this.animation){for(let t in e)try{"object"==typeof e[t]?this.animation[t](...e[t]):this.animation[t](e[t])}catch(ct){console.error(`方法 ${t} 不存在`)}return this.animation.step(t),this}},run(e){this.animation&&this.animation.run(e)},open(){clearTimeout(this.timer),this.transform="",this.isShow=!0;let{opacity:e,transform:t}=this.styleInit(!1);void 0!==e&&(this.opacity=e),this.transform=t,this.$nextTick((()=>{this.timer=setTimeout((()=>{this.animation=Hn(this.config,this),this.tranfromInit(!1).step(),this.animation.run(),this.$emit("change",{detail:this.isShow})}),20)}))},close(e){this.animation&&this.tranfromInit(!0).step().run((()=>{this.isShow=!1,this.animationData=null,this.animation=null;let{opacity:e,transform:t}=this.styleInit(!1);this.opacity=e||1,this.transform=t,this.$emit("change",{detail:this.isShow})}))},styleInit(e){let t={transform:""},s=(e,s)=>{"fade"===s?t.opacity=this.animationType(e)[s]:t.transform+=this.animationType(e)[s]+" "};return"string"==typeof this.modeClass?s(e,this.modeClass):this.modeClass.forEach((t=>{s(e,t)})),t},tranfromInit(e){let t=(e,t)=>{let s=null;"fade"===t?s=e?0:1:(s=e?"-100%":"0","zoom-in"===t&&(s=e?.8:1),"zoom-out"===t&&(s=e?1.2:1),"slide-right"===t&&(s=e?"100%":"0"),"slide-bottom"===t&&(s=e?"100%":"0")),this.animation[this.animationMode()[t]](s)};return"string"==typeof this.modeClass?t(e,this.modeClass):this.modeClass.forEach((s=>{t(e,s)})),this.animation},animationType:e=>({fade:e?1:0,"slide-top":`translateY(${e?"0":"-100%"})`,"slide-right":`translateX(${e?"0":"100%"})`,"slide-bottom":`translateY(${e?"0":"100%"})`,"slide-left":`translateX(${e?"0":"-100%"})`,"zoom-in":`scaleX(${e?1:.8}) scaleY(${e?1:.8})`,"zoom-out":`scaleX(${e?1:1.2}) scaleY(${e?1:1.2})`}),animationMode:()=>({fade:"opacity","slide-top":"translateY","slide-right":"translateX","slide-bottom":"translateY","slide-left":"translateX","zoom-in":"scale","zoom-out":"scale"}),toLine:e=>e.replace(/([A-Z])/g,"-$1").toLowerCase()}},[["render",function(e,t,s,n,i,o){const r=q;return i.isShow||s.onceRender?Y((A(),C(r,{key:0,ref:"ani",animation:i.animationData,class:K(s.customClass),style:U(o.transformStyles),onClick:o.onClick},{default:O((()=>[$(e.$slots,"default")])),_:3},8,["animation","class","style","onClick"])),[[Q,i.isShow]]):M("",!0)}]]),Wn={name:"uniPopup",components:{keypress:{name:"Keypress",props:{disable:{type:Boolean,default:!1}},mounted(){const e={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]};document.addEventListener("keyup",(t=>{if(this.disable)return;const s=Object.keys(e).find((s=>{const n=t.key,i=e[s];return i===n||Array.isArray(i)&&i.includes(n)}));s&&setTimeout((()=>{this.$emit(s,{})}),0)}))},render:()=>{}}},emits:["change","maskClick"],props:{animation:{type:Boolean,default:!0},type:{type:String,default:"center"},isMaskClick:{type:Boolean,default:null},maskClick:{type:Boolean,default:null},backgroundColor:{type:String,default:"none"},safeArea:{type:Boolean,default:!0},maskBackgroundColor:{type:String,default:"rgba(0, 0, 0, 0.4)"}},watch:{type:{handler:function(e){this.config[e]&&this[this.config[e]](!0)},immediate:!0},isDesktop:{handler:function(e){this.config[e]&&this[this.config[this.type]](!0)},immediate:!0},maskClick:{handler:function(e){this.mkclick=e},immediate:!0},isMaskClick:{handler:function(e){this.mkclick=e},immediate:!0},showPopup(e){document.getElementsByTagName("body")[0].style.overflow=e?"hidden":"visible"}},data(){return{duration:300,ani:[],showPopup:!1,showTrans:!1,popupWidth:0,popupHeight:0,config:{top:"top",bottom:"bottom",center:"center",left:"left",right:"right",message:"top",dialog:"center",share:"bottom"},maskClass:{position:"fixed",bottom:0,top:0,left:0,right:0,backgroundColor:"rgba(0, 0, 0, 0.4)"},transClass:{position:"fixed",left:0,right:0},maskShow:!0,mkclick:!0,popupstyle:this.isDesktop?"fixforpc-top":"top"}},computed:{isDesktop(){return this.popupWidth>=500&&this.popupHeight>=500},bg(){return""===this.backgroundColor||"none"===this.backgroundColor?"transparent":this.backgroundColor}},mounted(){(()=>{const{windowWidth:e,windowHeight:t,windowTop:s,safeArea:n,screenHeight:i,safeAreaInsets:o}=y();this.popupWidth=e,this.popupHeight=t+(s||0),n&&this.safeArea?this.safeAreaInsets=o.bottom:this.safeAreaInsets=0})()},unmounted(){this.setH5Visible()},created(){null===this.isMaskClick&&null===this.maskClick?this.mkclick=!0:this.mkclick=null!==this.isMaskClick?this.isMaskClick:this.maskClick,this.animation?this.duration=300:this.duration=0,this.messageChild=null,this.clearPropagation=!1,this.maskClass.backgroundColor=this.maskBackgroundColor},methods:{setH5Visible(){document.getElementsByTagName("body")[0].style.overflow="visible"},closeMask(){this.maskShow=!1},disableMask(){this.mkclick=!1},clear(e){e.stopPropagation(),this.clearPropagation=!0},open(e){if(this.showPopup)return;e&&-1!==["top","center","bottom","left","right","message","dialog","share"].indexOf(e)||(e=this.type),this.config[e]?(this[this.config[e]](),this.$emit("change",{show:!0,type:e})):console.error("缺少类型:",e)},close(e){this.showTrans=!1,this.$emit("change",{show:!1,type:this.type}),clearTimeout(this.timer),this.timer=setTimeout((()=>{this.showPopup=!1}),300)},touchstart(){this.clearPropagation=!1},onTap(){this.clearPropagation?this.clearPropagation=!1:(this.$emit("maskClick"),this.mkclick&&this.close())},top(e){this.popupstyle=this.isDesktop?"fixforpc-top":"top",this.ani=["slide-top"],this.transClass={position:"fixed",left:0,right:0,backgroundColor:this.bg},e||(this.showPopup=!0,this.showTrans=!0,this.$nextTick((()=>{this.messageChild&&"message"===this.type&&this.messageChild.timerClose()})))},bottom(e){this.popupstyle="bottom",this.ani=["slide-bottom"],this.transClass={position:"fixed",left:0,right:0,bottom:0,paddingBottom:this.safeAreaInsets+"px",backgroundColor:this.bg},e||(this.showPopup=!0,this.showTrans=!0)},center(e){this.popupstyle="center",this.ani=["zoom-out","fade"],this.transClass={position:"fixed",display:"flex",flexDirection:"column",bottom:0,left:0,right:0,top:0,justifyContent:"center",alignItems:"center"},e||(this.showPopup=!0,this.showTrans=!0)},left(e){this.popupstyle="left",this.ani=["slide-left"],this.transClass={position:"fixed",left:0,bottom:0,top:0,backgroundColor:this.bg,display:"flex",flexDirection:"column"},e||(this.showPopup=!0,this.showTrans=!0)},right(e){this.popupstyle="right",this.ani=["slide-right"],this.transClass={position:"fixed",bottom:0,right:0,top:0,backgroundColor:this.bg,display:"flex",flexDirection:"column"},e||(this.showPopup=!0,this.showTrans=!0)}}};const Jn=G(Wn,[["render",function(e,t,s,n,i,o){const r=Z(X("uni-transition"),zn),a=q,c=z("keypress");return i.showPopup?(A(),C(a,{key:0,class:K(["uni-popup",[i.popupstyle,o.isDesktop?"fixforpc-z-index":""]])},{default:O((()=>[D(a,{onTouchstart:o.touchstart},{default:O((()=>[i.maskShow?(A(),C(r,{key:"1",name:"mask","mode-class":"fade",styles:i.maskClass,duration:i.duration,show:i.showTrans,onClick:o.onTap},null,8,["styles","duration","show","onClick"])):M("",!0),D(r,{key:"2","mode-class":i.ani,name:"content",styles:i.transClass,duration:i.duration,show:i.showTrans,onClick:o.onTap},{default:O((()=>[D(a,{class:K(["uni-popup__wrapper",[i.popupstyle]]),style:U({backgroundColor:o.bg}),onClick:o.clear},{default:O((()=>[$(e.$slots,"default",{},void 0,!0)])),_:3},8,["style","class","onClick"])])),_:3},8,["mode-class","styles","duration","show","onClick"])])),_:3},8,["onTouchstart"]),i.maskShow?(A(),C(c,{key:0,onEsc:o.onTap},null,8,["onEsc"])):M("",!0)])),_:3},8,["class"])):M("",!0)}],["__scopeId","data-v-a1518068"]]);export{qn as _,Jn as a};
|