>>0?1:0),g=o.low=g+P,o.high=y+O+(g>>>0>>0?1:0),S=a.low=S+M,a.high=k+L+(S>>>0>>0?1:0),A=s.low=A+H,s.high=m+z+(A>>>0>>0?1:0),I=c.low=I+F,c.high=b+R+(I>>>0>>0?1:0),w=d.low=w+N,d.high=T+j+(w>>>0>>0?1:0),E=f.low=E+V,f.high=U+K+(E>>>0>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,r=8*this._nDataBytes,i=8*e.sigBytes;return t[i>>>5]|=128<<24-i%32,t[30+(i+128>>>10<<5)]=Math.floor(r/4294967296),t[31+(i+128>>>10<<5)]=r,e.sigBytes=4*t.length,this._process(),this._hash.toX32()},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:32});t.SHA512=n._createHelper(d),t.HmacSHA512=n._createHmacHelper(d)}(),function(){var e=i,t=e.x64,r=t.Word,n=t.WordArray,o=e.algo,a=o.SHA512,s=o.SHA384=a.extend({_doReset:function(){this._hash=new n.init([new r.init(3418070365,3238371032),new r.init(1654270250,914150663),new r.init(2438529370,812702999),new r.init(355462360,4144912697),new r.init(1731405415,4290775857),new r.init(2394180231,1750603025),new r.init(3675008525,1694076839),new r.init(1203062813,3204075428)])},_doFinalize:function(){var e=a._doFinalize.call(this);return e.sigBytes-=16,e}});e.SHA384=a._createHelper(s),e.HmacSHA384=a._createHmacHelper(s)}(),i.lib.Cipher||function(e){var t=i,r=t.lib,n=r.Base,o=r.WordArray,a=r.BufferedBlockAlgorithm,s=t.enc,c=(s.Utf8,s.Base64),u=t.algo,l=u.EvpKDF,d=r.Cipher=a.extend({cfg:n.extend(),createEncryptor:function(e,t){return this.create(this._ENC_XFORM_MODE,e,t)},createDecryptor:function(e,t){return this.create(this._DEC_XFORM_MODE,e,t)},init:function(e,t,r){this.cfg=this.cfg.extend(r),this._xformMode=e,this._key=t,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(e){return this._append(e),this._process()},finalize:function(e){return e&&this._append(e),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function e(e){return"string"==typeof e?b:S}return function(t){return{encrypt:function(r,i,n){return e(i).encrypt(t,r,i,n)},decrypt:function(r,i,n){return e(i).decrypt(t,r,i,n)}}}}()}),f=(r.StreamCipher=d.extend({_doFinalize:function(){return this._process(!0)},blockSize:1}),t.mode={}),h=r.BlockCipherMode=n.extend({createEncryptor:function(e,t){return this.Encryptor.create(e,t)},createDecryptor:function(e,t){return this.Decryptor.create(e,t)},init:function(e,t){this._cipher=e,this._iv=t}}),p=f.CBC=function(){function t(t,r,i){var n=this._iv;if(n){var o=n;this._iv=e}else var o=this._prevBlock;for(var a=0;a>>2];e.sigBytes-=t}},y=(r.BlockCipher=d.extend({cfg:d.cfg.extend({mode:p,padding:_}),reset:function(){d.reset.call(this);var e=this.cfg,t=e.iv,r=e.mode;if(this._xformMode==this._ENC_XFORM_MODE)var i=r.createEncryptor;else{var i=r.createDecryptor;this._minBufferSize=1}this._mode&&this._mode.__creator==i?this._mode.init(this,t&&t.words):(this._mode=i.call(r,this,t&&t.words),this._mode.__creator=i)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);var t=this._process(!0)}else{var t=this._process(!0);e.unpad(t)}return t},blockSize:4}),r.CipherParams=n.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}})),g=t.format={},k=g.OpenSSL={stringify:function(e){var t=e.ciphertext,r=e.salt;if(r)var i=o.create([1398893684,1701076831]).concat(r).concat(t);else var i=t;return i.toString(c)},parse:function(e){var t=c.parse(e),r=t.words;if(1398893684==r[0]&&1701076831==r[1]){var i=o.create(r.slice(2,4));r.splice(0,4),t.sigBytes-=16}return y.create({ciphertext:t,salt:i})}},S=r.SerializableCipher=n.extend({cfg:n.extend({format:k}),encrypt:function(e,t,r,i){i=this.cfg.extend(i);var n=e.createEncryptor(r,i),o=n.finalize(t),a=n.cfg;return y.create({ciphertext:o,key:r,iv:a.iv,algorithm:e,mode:a.mode,padding:a.padding,blockSize:e.blockSize,formatter:i.format})},decrypt:function(e,t,r,i){return i=this.cfg.extend(i),t=this._parse(t,i.format),e.createDecryptor(r,i).finalize(t.ciphertext)},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}}),m=t.kdf={},A=m.OpenSSL={execute:function(e,t,r,i){i||(i=o.random(8));var n=l.create({keySize:t+r}).compute(e,i),a=o.create(n.words.slice(t),4*r);return n.sigBytes=4*t,y.create({key:n,iv:a,salt:i})}},b=r.PasswordBasedCipher=S.extend({cfg:S.cfg.extend({kdf:A}),encrypt:function(e,t,r,i){i=this.cfg.extend(i);var n=i.kdf.execute(r,e.keySize,e.ivSize);i.iv=n.iv;var o=S.encrypt.call(this,e,t,n.key,i);return o.mixIn(n),o},decrypt:function(e,t,r,i){i=this.cfg.extend(i),t=this._parse(t,i.format);var n=i.kdf.execute(r,e.keySize,e.ivSize,t.salt);return i.iv=n.iv,S.decrypt.call(this,e,t,n.key,i)}})}(),i.mode.CFB=function(){function e(e,t,r,i){var n=this._iv;if(n){var o=n.slice(0);this._iv=void 0}else var o=this._prevBlock;i.encryptBlock(o,0);for(var a=0;a>>2]|=n<<24-o%4*8,e.sigBytes+=n},unpad:function(e){var t=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=t}},i.pad.Iso10126={pad:function(e,t){var r=4*t,n=r-e.sigBytes%r;e.concat(i.lib.WordArray.random(n-1)).concat(i.lib.WordArray.create([n<<24],1))},unpad:function(e){var t=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=t}},i.pad.Iso97971={pad:function(e,t){e.concat(i.lib.WordArray.create([2147483648],1)),i.pad.ZeroPadding.pad(e,t)},unpad:function(e){i.pad.ZeroPadding.unpad(e),e.sigBytes--}},i.mode.OFB=function(){var e=i.lib.BlockCipherMode.extend(),t=e.Encryptor=e.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize,n=this._iv,o=this._keystream;n&&(o=this._keystream=n.slice(0),this._iv=void 0),r.encryptBlock(o,0);for(var a=0;a>>8^255&n^99,o[r]=n,a[n]=r;var v=e[r],_=e[v],y=e[_],g=257*e[n]^16843008*n;s[r]=g<<24|g>>>8,c[r]=g<<16|g>>>16,u[r]=g<<8|g>>>24,l[r]=g;var g=16843009*y^65537*_^257*v^16843008*r;d[n]=g<<24|g>>>8,f[n]=g<<16|g>>>16,h[n]=g<<8|g>>>24,p[n]=g,r?(r=v^e[e[e[y^v]]],i^=e[e[i]]):r=i=1}}();var v=[0,1,2,4,8,16,32,64,128,27,54],_=n.AES=r.extend({_doReset:function(){if(!this._nRounds||this._keyPriorReset!==this._key){for(var e=this._keyPriorReset=this._key,t=e.words,r=e.sigBytes/4,i=this._nRounds=r+6,n=4*(i+1),a=this._keySchedule=[],s=0;s6&&s%r==4&&(c=o[c>>>24]<<24|o[c>>>16&255]<<16|o[c>>>8&255]<<8|o[255&c]):(c=c<<8|c>>>24,c=o[c>>>24]<<24|o[c>>>16&255]<<16|o[c>>>8&255]<<8|o[255&c],c^=v[s/r|0]<<24),a[s]=a[s-r]^c}for(var u=this._invKeySchedule=[],l=0;l>>24]]^f[o[c>>>16&255]]^h[o[c>>>8&255]]^p[o[255&c]]}}},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,s,c,u,l,o)},decryptBlock:function(e,t){var r=e[t+1];e[t+1]=e[t+3],e[t+3]=r,this._doCryptBlock(e,t,this._invKeySchedule,d,f,h,p,a);var r=e[t+1];e[t+1]=e[t+3],e[t+3]=r},_doCryptBlock:function(e,t,r,i,n,o,a,s){for(var c=this._nRounds,u=e[t]^r[0],l=e[t+1]^r[1],d=e[t+2]^r[2],f=e[t+3]^r[3],h=4,p=1;p>>24]^n[l>>>16&255]^o[d>>>8&255]^a[255&f]^r[h++],_=i[l>>>24]^n[d>>>16&255]^o[f>>>8&255]^a[255&u]^r[h++],y=i[d>>>24]^n[f>>>16&255]^o[u>>>8&255]^a[255&l]^r[h++],g=i[f>>>24]^n[u>>>16&255]^o[l>>>8&255]^a[255&d]^r[h++];u=v,l=_,d=y,f=g}var v=(s[u>>>24]<<24|s[l>>>16&255]<<16|s[d>>>8&255]<<8|s[255&f])^r[h++],_=(s[l>>>24]<<24|s[d>>>16&255]<<16|s[f>>>8&255]<<8|s[255&u])^r[h++],y=(s[d>>>24]<<24|s[f>>>16&255]<<16|s[u>>>8&255]<<8|s[255&l])^r[h++],g=(s[f>>>24]<<24|s[u>>>16&255]<<16|s[l>>>8&255]<<8|s[255&d])^r[h++];e[t]=v,e[t+1]=_,e[t+2]=y,e[t+3]=g},keySize:8});e.AES=r._createHelper(_)}(),function(){function e(e,t){var r=(this._lBlock>>>e^this._rBlock)&t;this._rBlock^=r,this._lBlock^=r<>>e^this._lBlock)&t;this._lBlock^=r,this._rBlock^=r<>>5]>>>31-n%32&1}for(var o=this._subKeys=[],a=0;a<16;a++){for(var s=o[a]=[],d=l[a],i=0;i<24;i++)s[i/6|0]|=r[(u[i]-1+d)%28]<<31-i%6,s[4+(i/6|0)]|=r[28+(u[i+24]-1+d)%28]<<31-i%6;s[0]=s[0]<<1|s[0]>>>31;for(var i=1;i<7;i++)s[i]=s[i]>>>4*(i-1)+3;s[7]=s[7]<<5|s[7]>>>27}for(var f=this._invSubKeys=[],i=0;i<16;i++)f[i]=o[15-i]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._subKeys)},decryptBlock:function(e,t){this._doCryptBlock(e,t,this._invSubKeys)},_doCryptBlock:function(r,i,n){this._lBlock=r[i],this._rBlock=r[i+1],e.call(this,4,252645135),e.call(this,16,65535),t.call(this,2,858993459),t.call(this,8,16711935),e.call(this,1,1431655765);for(var o=0;o<16;o++){for(var a=n[o],s=this._lBlock,c=this._rBlock,u=0,l=0;l<8;l++)u|=d[l][((c^a[l])&f[l])>>>0];this._lBlock=c,this._rBlock=s^u}var h=this._lBlock;this._lBlock=this._rBlock,this._rBlock=h,e.call(this,1,1431655765),t.call(this,8,16711935),t.call(this,2,858993459),e.call(this,16,65535),e.call(this,4,252645135),r[i]=this._lBlock,r[i+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});r.DES=a._createHelper(h);var p=s.TripleDES=a.extend({_doReset:function(){var e=this._key,t=e.words;this._des1=h.createEncryptor(o.create(t.slice(0,2))),this._des2=h.createEncryptor(o.create(t.slice(2,4))),this._des3=h.createEncryptor(o.create(t.slice(4,6)))},encryptBlock:function(e,t){this._des1.encryptBlock(e,t),this._des2.decryptBlock(e,t),this._des3.encryptBlock(e,t)},decryptBlock:function(e,t){this._des3.decryptBlock(e,t),this._des2.encryptBlock(e,t),this._des1.decryptBlock(e,t)},keySize:6,ivSize:2,blockSize:2});r.TripleDES=a._createHelper(p)}(),function(){function e(){for(var e=this._S,t=this._i,r=this._j,i=0,n=0;n<4;n++){t=(t+1)%256,r=(r+e[t])%256;var o=e[t];e[t]=e[r],e[r]=o,i|=e[(e[t]+e[r])%256]<<24-8*n}return this._i=t,this._j=r,i}var t=i,r=t.lib,n=r.StreamCipher,o=t.algo,a=o.RC4=n.extend({_doReset:function(){for(var e=this._key,t=e.words,r=e.sigBytes,i=this._S=[],n=0;n<256;n++)i[n]=n;for(var n=0,o=0;n<256;n++){var a=n%r,s=t[a>>>2]>>>24-a%4*8&255;o=(o+i[n]+s)%256;var c=i[n];i[n]=i[o],i[o]=c}this._i=this._j=0},_doProcessBlock:function(t,r){t[r]^=e.call(this)},keySize:8,ivSize:0});t.RC4=n._createHelper(a);var s=o.RC4Drop=a.extend({cfg:a.cfg.extend({drop:192}),_doReset:function(){a._doReset.call(this);for(var t=this.cfg.drop;t>0;t--)e.call(this)}});t.RC4Drop=n._createHelper(s)}(),/** @preserve
- * Counter block mode compatible with Dr Brian Gladman fileenc.c
- * derived from CryptoJS.mode.CTR
- * Jan Hruby jhruby.web@gmail.com
- */
-i.mode.CTRGladman=function(){function e(e){if(255==(e>>24&255)){var t=e>>16&255,r=e>>8&255,i=255&e;255===t?(t=0,255===r?(r=0,255===i?i=0:++i):++r):++t,e=0,e+=t<<16,e+=r<<8,e+=i}else e+=1<<24;return e}function t(t){return 0===(t[0]=e(t[0]))&&(t[1]=e(t[1])),t}var r=i.lib.BlockCipherMode.extend(),n=r.Encryptor=r.extend({processBlock:function(e,r){var i=this._cipher,n=i.blockSize,o=this._iv,a=this._counter;o&&(a=this._counter=o.slice(0),this._iv=void 0),t(a);var s=a.slice(0);i.encryptBlock(s,0);for(var c=0;c>>0>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0>>0?1:0)|0,this._b=t[7]>>>0>>0?1:0;for(var r=0;r<8;r++){var i=e[r]+t[r],n=65535&i,o=i>>>16,a=((n*n>>>17)+n*o>>>15)+o*o,u=((4294901760&i)*i|0)+((65535&i)*i|0);c[r]=a^u}e[0]=c[0]+(c[7]<<16|c[7]>>>16)+(c[6]<<16|c[6]>>>16)|0,e[1]=c[1]+(c[0]<<8|c[0]>>>24)+c[7]|0,e[2]=c[2]+(c[1]<<16|c[1]>>>16)+(c[0]<<16|c[0]>>>16)|0,e[3]=c[3]+(c[2]<<8|c[2]>>>24)+c[1]|0,e[4]=c[4]+(c[3]<<16|c[3]>>>16)+(c[2]<<16|c[2]>>>16)|0,e[5]=c[5]+(c[4]<<8|c[4]>>>24)+c[3]|0,e[6]=c[6]+(c[5]<<16|c[5]>>>16)+(c[4]<<16|c[4]>>>16)|0,e[7]=c[7]+(c[6]<<8|c[6]>>>24)+c[5]|0}var t=i,r=t.lib,n=r.StreamCipher,o=t.algo,a=[],s=[],c=[],u=o.Rabbit=n.extend({_doReset:function(){for(var t=this._key.words,r=this.cfg.iv,i=0;i<4;i++)t[i]=16711935&(t[i]<<8|t[i]>>>24)|4278255360&(t[i]<<24|t[i]>>>8);var n=this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16],o=this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];this._b=0;for(var i=0;i<4;i++)e.call(this);for(var i=0;i<8;i++)o[i]^=n[i+4&7];if(r){var a=r.words,s=a[0],c=a[1],u=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),l=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),d=u>>>16|4294901760&l,f=l<<16|65535&u;o[0]^=u,o[1]^=d,o[2]^=l,o[3]^=f,o[4]^=u,o[5]^=d,o[6]^=l,o[7]^=f;for(var i=0;i<4;i++)e.call(this)}},_doProcessBlock:function(t,r){var i=this._X;e.call(this),a[0]=i[0]^i[5]>>>16^i[3]<<16,a[1]=i[2]^i[7]>>>16^i[5]<<16,a[2]=i[4]^i[1]>>>16^i[7]<<16,a[3]=i[6]^i[3]>>>16^i[1]<<16;for(var n=0;n<4;n++)a[n]=16711935&(a[n]<<8|a[n]>>>24)|4278255360&(a[n]<<24|a[n]>>>8),t[r+n]^=a[n]},blockSize:4,ivSize:2});t.Rabbit=n._createHelper(u)}(),i.mode.CTR=function(){var e=i.lib.BlockCipherMode.extend(),t=e.Encryptor=e.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize,n=this._iv,o=this._counter;n&&(o=this._counter=n.slice(0),this._iv=void 0);var a=o.slice(0);r.encryptBlock(a,0),o[i-1]=o[i-1]+1|0;for(var s=0;s>>0>>0?1:0)|0,t[2]=t[2]+886263092+(t[1]>>>0>>0?1:0)|0,t[3]=t[3]+1295307597+(t[2]>>>0>>0?1:0)|0,t[4]=t[4]+3545052371+(t[3]>>>0>>0?1:0)|0,t[5]=t[5]+886263092+(t[4]>>>0>>0?1:0)|0,t[6]=t[6]+1295307597+(t[5]>>>0>>0?1:0)|0,t[7]=t[7]+3545052371+(t[6]>>>0>>0?1:0)|0,this._b=t[7]>>>0>>0?1:0;for(var r=0;r<8;r++){var i=e[r]+t[r],n=65535&i,o=i>>>16,a=((n*n>>>17)+n*o>>>15)+o*o,u=((4294901760&i)*i|0)+((65535&i)*i|0);c[r]=a^u}e[0]=c[0]+(c[7]<<16|c[7]>>>16)+(c[6]<<16|c[6]>>>16)|0,e[1]=c[1]+(c[0]<<8|c[0]>>>24)+c[7]|0,e[2]=c[2]+(c[1]<<16|c[1]>>>16)+(c[0]<<16|c[0]>>>16)|0,e[3]=c[3]+(c[2]<<8|c[2]>>>24)+c[1]|0,e[4]=c[4]+(c[3]<<16|c[3]>>>16)+(c[2]<<16|c[2]>>>16)|0,e[5]=c[5]+(c[4]<<8|c[4]>>>24)+c[3]|0,e[6]=c[6]+(c[5]<<16|c[5]>>>16)+(c[4]<<16|c[4]>>>16)|0,e[7]=c[7]+(c[6]<<8|c[6]>>>24)+c[5]|0}var t=i,r=t.lib,n=r.StreamCipher,o=t.algo,a=[],s=[],c=[],u=o.RabbitLegacy=n.extend({_doReset:function(){var t=this._key.words,r=this.cfg.iv,i=this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16],n=this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];this._b=0;for(var o=0;o<4;o++)e.call(this);for(var o=0;o<8;o++)n[o]^=i[o+4&7];if(r){var a=r.words,s=a[0],c=a[1],u=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),l=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),d=u>>>16|4294901760&l,f=l<<16|65535&u;n[0]^=u,n[1]^=d,n[2]^=l,n[3]^=f,n[4]^=u,n[5]^=d,n[6]^=l,n[7]^=f;for(var o=0;o<4;o++)e.call(this)}},_doProcessBlock:function(t,r){var i=this._X;e.call(this),a[0]=i[0]^i[5]>>>16^i[3]<<16,a[1]=i[2]^i[7]>>>16^i[5]<<16,a[2]=i[4]^i[1]>>>16^i[7]<<16,a[3]=i[6]^i[3]>>>16^i[1]<<16;for(var n=0;n<4;n++)a[n]=16711935&(a[n]<<8|a[n]>>>24)|4278255360&(a[n]<<24|a[n]>>>8),t[r+n]^=a[n]},blockSize:4,ivSize:2});t.RabbitLegacy=n._createHelper(u)}(),i.pad.ZeroPadding={pad:function(e,t){var r=4*t;e.clamp(),e.sigBytes+=r-(e.sigBytes%r||r)},unpad:function(e){for(var t=e.words,r=e.sigBytes-1;!(t[r>>>2]>>>24-r%4*8&255);)r--;e.sigBytes=r+1}},t.default=i},function(e,t,r){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){for(var r=0;r-1?(e.android=!0,e.name="Android"):i.indexOf("iOS")>-1&&(e.ios=!0,e.name="iOS"),t.version=i.version,t.name="miniprogram",t.miniprogram=!0,{os:e,browser:t}}(),a=function(){function e(){i(this,e)}return n(e,null,[{key:"getHost",value:function(e){var t="";if(void 0===e||null==e||""==e)return"";var r=e.indexOf("//"),i=e;r>-1&&(i=e.substring(r+2));var t=i,n=i.split("/");return n&&n.length>0&&(t=n[0]),n=t.split(":"),n&&n.length>0&&(t=n[0]),t}},{key:"os",get:function(){return o.os}},{key:"browser",get:function(){var e=o.browser;return e.name||(e.name="miniprogram"),e}}]),e}();t.default=a},function(e,t,r){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){for(var r=0;r4&&e}},{key:"extend",value:function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&t[r]&&(e[r]=t[r])}},{key:"isArray",value:function(e){return"[object Array]"===Object.prototype.toString.call(arg)}},{key:"getFileType",value:function(e){return e=e.toLowerCase(),/.mp4|.flv|.m3u8|.avi|.rm|.rmvb|.mpeg|.mpg|.mov|.wmv|.3gp|.asf|.dat|.dv|.f4v|.gif|.m2t|.m4v|.mj2|.mjpeg|.mpe|.mts|.ogg|.qt|.swf|.ts|.vob|.wmv|.webm/.test(e)?"video":/.mp3|.wav|.ape|.cda|.au|.midi|.mac|.aac|.ac3|.acm|.amr|.caf|.flac|.m4a|.ra|.wma/.test(e)?"audio":/.bmp|.jpg|.jpeg|.png|.gif/.test(e)?"img":"other"}},{key:"isImage",value:function(e){return e=e.toLowerCase(),!!/.jpg|.jpeg|.png|.gif/.test(e)}},{key:"ISODateString",value:function(e){function t(e){return e<10?"0"+e:e}return e.getUTCFullYear()+"-"+t(e.getUTCMonth()+1)+"-"+t(e.getUTCDate())+"T"+t(e.getUTCHours())+":"+t(e.getUTCMinutes())+":"+t(e.getUTCSeconds())+"Z"}},{key:"isIntNum",value:function(e){return!!/^\d+$/.test(e)}}]),e}();t.default=o},function(e,t,r){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){for(var r=0;r0){l._invalidUserId=!0;var t=e.Message+",正确账号ID(userId)请参考:https://help.aliyun.com/knowledge_detail/37196.html";console.log(t)}}catch(e){console.log(e)}})}),n&&(u.videoInfo=n?JSON.parse(n).Vod:{},u.userData=c.default.enc.Base64.stringify(c.default.enc.Utf8.parse(n))),u.ri=_.default.create(),this._uploadList.push(u),this._reportLog("20001",u,{ql:this._uploadList.length});try{this.options.addFileSuccess&&this.options.addFileSuccess(u)}catch(e){console.log(e)}return!0}},{key:"deleteFile",value:function(e){return!!this.cancelFile(e)&&(this._uploadList.splice(e,1),!0)}},{key:"cleanList",value:function(){this.stopUpload(),this._uploadList.length=0,this._curIndex=-1}},{key:"cancelFile",value:function(e){this.options;if(e<0||e>=this._uploadList.length)return!1;var t=this._uploadList[e];if(e==this._curIndex&&t.state==a.UPLOADSTATE.UPLOADING){t.state=a.UPLOADSTATE.CANCELED;var r=this._getCheckoutpoint(t);r&&r.checkpoint&&(r=r.checkpoint),r&&this._ossUpload.abort(t),this._removeCheckoutpoint(t),this.nextUpload()}else t.state!=a.UPLOADSTATE.SUCCESS&&(t.state=a.UPLOADSTATE.CANCELED);return this._reportLog("20008",t),!0}},{key:"resumeFile",value:function(e){this.options;if(e<0||e>=this._uploadList.length)return!1;var t=this._uploadList[e];return t.state==a.UPLOADSTATE.CANCELED&&(t.state=a.UPLOADSTATE.INIT,!0)}},{key:"listFiles",value:function(){return this._uploadList}},{key:"getCheckpoint",value:function(e){return this._getCheckoutpoint({file:e})}},{key:"startUpload",value:function(e){this._retryCount=0;this.options;if(this._state==a.VODSTATE.START||this._state==a.VODSTATE.EXPIRE)return void console.log("already started or expired");if(this._initState(),this._curIndex=this._findUploadIndex(),-1==this._curIndex)return void(this._state=a.VODSTATE.END);var t=this._uploadList[this._curIndex];this._ossUpload=null,this._upload(t),this._state=a.VODSTATE.START}},{key:"nextUpload",value:function(){var e=this.options;if(this._state==a.VODSTATE.START)if(this._curIndex=this._findUploadIndex(),-1!=this._curIndex){var t=this._uploadList[this._curIndex];this._ossUpload=null,this._upload(t)}else{this._state=a.VODSTATE.END;try{e.onUploadEnd&&e.onUploadEnd(t)}catch(e){console.log(e)}}}},{key:"clear",value:function(e){for(var t=this.options,r=0,i=0;ithis._curIndex&&(n=this._uploadList[this._curIndex]),n&&(this.init(e,t,r,i),this._state=a.VODSTATE.START,this._ossUpload=null,this._uploadCore(n,n.retry),n.retry=!1),!0}},{key:"resumeUploadWithSTSToken",value:function(e,t,r){if(-1==this._curIndex)return!1;if(this._state!=a.VODSTATE.EXPIRE)return!1;if(this._uploadList.length>this._curIndex){var i=this._uploadList[this._curIndex];i.object?this._refreshSTSTokenUpload(i,e,t,r):this.setSTSToken(i,e,t,r)}}},{key:"setSTSTokenDirectlyUpload",value:function(e,t,r,i,n){if(!(t&&r&&i&&n))return console.log("accessKeyId、ccessKeySecret、securityToken and expiration should not be empty."),!1;this._ut="oss";var o=e;this.init(t,r,i,n),o.endpoint=o._endpoint,o.bucket=o._bucket,o.object=o._object,this._ossUpload=null,this._uploadCore(o,e.retry),e.retry=!1}},{key:"setSTSToken",value:function(e,t,r,i){if(!t||!r||!i)return console.log("accessKeyId、ccessKeySecret、securityToken should not be empty."),!1;this._ut="vod",this._uploadWay="sts";var n=e,o={accessKeyId:t,securityToken:i,accessKeySecret:r,fileName:e.url,title:e.url,requestId:e.ri,region:this.options.region};n.ImageType&&(o.imageType=n.ImageType),n.ImageExt&&(o.imageExt=n.ImageExt),n.FileSize&&(o.fileSize=n.FileSize),n.Description&&(o.description=n.Description),n.CateId&&(o.cateId=n.CateId),n.Tags&&(o.tags=n.Tags),n.TemplateGroupId&&(o.templateGroupId=n.TemplateGroupId),n.StorageLocation&&(o.storageLocation=n.StorageLocation),n.CoverURL&&(o.coverUrl=n.CoverURL),n.TransCodeMode&&(o.transCodeMode=n.TransCodeMode),n.UserData&&(o.userData=n.UserData);var s=this,c="getUploadAuth";e.videoId?(o.videoId=e.videoId,c="refreshUploadAuth"):p.default.isImage(e.url)&&(c="getImageUploadAuth"),g.default[c](o,function(t){e.videoId=t.VideoId?t.VideoId:e.videoId,s.setUploadAuthAndAddress(e,t.UploadAuth,t.UploadAddress),s._state=a.VODSTATE.START},function(t){s._error(e,{name:t.Code,code:t.Code,message:t.Message,requestId:t.RequestId})})}},{key:"setUploadAuthAndAddress",value:function(e,t,r,i){if(!e||!t||!r)return!1;var n=JSON.parse(c.default.enc.Utf8.stringify(c.default.enc.Base64.parse(t)));if(!(n.AccessKeyId&&n.AccessKeySecret&&n.SecurityToken&&n.Expiration))return console.error("uploadauth is invalid"),!1;var o={},a=e;if(r){var o=JSON.parse(c.default.enc.Utf8.stringify(c.default.enc.Base64.parse(r)));if(!o.Endpoint||!o.Bucket||!o.FileName)return console.error("uploadAddress is invalid"),!1}else o.Endpoint=a.endpoint,o.Bucket=a.bucket,o.FileName=a.object;this._ut="vod",this._uploadWay="vod",this.options.region=n.Region||this.options.region,this.init(n.AccessKeyId,n.AccessKeySecret,n.SecurityToken,n.Expiration),a.endpoint=a._endpoint?a._endpoint:o.Endpoint,a.bucket=a._bucket?a._bucket:o.Bucket,a.object=a._object?a._object:o.FileName,a.region=this.options.region,i&&(a.videoId=i),this._ossUpload=null,this._uploadCore(a,e.retry),e.retry=!1}},{key:"_refreshSTSTokenUpload",value:function(e,t,r,i){if(!t||!r||!i)return console.log("accessKeyId、ccessKeySecret、securityToken should not be empty."),!1;var n={accessKeyId:t,securityToken:i,accessKeySecret:r,videoId:e.object,requestId:e.ri,region:this.options.region},o=this,s="refreshUploadAuth";e.isImage&&(s="getImageUploadAuth"),g.default[s](n,function(t){o.setUploadAuthAndAddress(e,t.UploadAuth,UploadAddress),o._state=a.VODSTATE.START},function(t){o._error(e,{name:t.Code,code:t.Code,message:t.Message,requestId:t.RequestId})})}},{key:"_upload",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=this.options;if(e.retry=t,r.onUploadstarted&&!t)try{var i=this._getCheckoutpoint(e);i&&i.state!=a.UPLOADSTATE.UPLOADING&&(e.checkpoint=i,e.videoId=i.videoId),r.onUploadstarted(e)}catch(e){console.log(e)}}},{key:"_uploadCore",value:function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!this._ossCreditor.accessKeyId||!this._ossCreditor.accessKeySecret||!this._ossCreditor.securityToken)throw new Error("AccessKeyId、AccessKeySecret、securityToken should not be null");if(e.state=a.UPLOADSTATE.UPLOADING,!this._ossUpload){e.endpoint=e.endpoint||"http://oss-cn-hangzhou.aliyuncs.com";var t=this;this._ossUpload=new b.default({bucket:e.bucket,endpoint:e.endpoint,AccessKeyId:this._ossCreditor.accessKeyId,AccessKeySecret:this._ossCreditor.accessKeySecret,SecurityToken:this._ossCreditor.securityToken,timeout:this.options.timeout,cname:this.options.cname},{onerror:function(e,r){t._error.call(t,e,r)},oncomplete:function(e,r){t._complete.call(t,e,r)},onprogress:function(e,r,i){t._progress.call(t,e,r,i)}})}var r=p.default.getFileType(e.url),i=this._getCheckoutpoint(e),n="",o="";i&&i.checkpoint&&(o=i.state,n=i.videoId,i=i.checkpoint),i&&n==e.videoId&&o!=a.UPLOADSTATE.UPLOADING&&(i.file=e.file,e.checkpoint=i,i.uploadId);var s=this._adjustPartSize(e);this._reportLog("20002",e,{ft:r,fs:e.fileSize,bu:e.bucket,ok:e.object,vid:e.videoId||"",fn:e.fileName,fw:null,fh:null,ps:s});var c={headers:{"x-oss-notification":e.userData?e.userData:""},partSize:s,parallel:this.options.parallel};this._ossUpload.upload(e,c)}},{key:"_findUploadIndex",value:function(){for(var e=-1,t=0;t0||"SignatureDoesNotMatchError"==t.name||"SecurityTokenExpired"==t.code||"InvalidSecurityToken.Expired"==t.code||"InvalidAccessKeyId"==t.code&&this._ossCreditor.securityToken){if(this.options.onUploadTokenExpired){this._state=a.VODSTATE.EXPIRE,e.state=a.UPLOADSTATE.FAIlURE;try{this.options.onUploadTokenExpired(e,t)}catch(e){console.log(e)}}return}if(("RequestTimeoutError"==t.name||"ConnectionTimeout"==t.name||"ConnectionTimeoutError"==t.name)&&this._retryTotal>this._retryCount){var r=this;return setTimeout(function(){r._uploadCore(e,!0)},1e3*r._retryDuration),void this._retryCount++}"NoSuchUploadError"==t.name&&this._removeCheckoutpoint(e),this._handleError(e,t)}}},{key:"_handleError",value:function(e,t){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=a.UPLOADSTATE.FAIlURE;if(e.state!=a.UPLOADSTATE.CANCELED&&(e.state=a.UPLOADSTATE.FAIlURE,this._state=a.VODSTATE.FAILURE,this.options.onUploadFailed&&t&&t.code&&t.message))try{this.options.onUploadFailed(e,t.code,t.message)}catch(e){console.log(e)}if(r&&this._changeState(e,i),this._reportLog("20006",e,{code:t.name,message:t.message,requestId:t.requestId,fs:e.fileSize,bu:e.bucket,ok:e.object,fn:e.url}),this._reportLog("20004",e,{requestId:t.requestId,fs:e.fileSize,bu:e.bucket,ok:e.object,fn:e.url}),e.ri=_.default.create(),-1!=this._findUploadIndex()){var n=this;this._state=a.VODSTATE.START,setTimeout(function(){n.nextUpload()},100)}}},{key:"_complete",value:function(e,t){if(e.state=a.UPLOADSTATE.SUCCESS,this.options.onUploadSucceed)try{this.options.onUploadSucceed(e)}catch(e){console.log(e)}var r=0;t&&t.res&&t.res.headers&&(r=t.res.headers["x-oss-request-id"]),this._removeCheckoutpoint(e);var i=this;setTimeout(function(){i.nextUpload()},100),this._retryCount=0,this._reportLog("20003",e,{requestId:r})}},{key:"_progress",value:function(e,t,r){if(this.options.onUploadProgress)try{e.loaded=t.loaded,this.options.onUploadProgress(e,t.total,t.loaded)}catch(e){console.log(e)}var i=t.checkpoint,n=0;i&&(e.checkpoint=i,this._saveCheckoutpoint(e,i,a.UPLOADSTATE.UPLOADING),n=i.uploadId),this._retryCount=0;var o=this._getPortNumber(i),s=0;if(r&&r.headers&&(s=r.headers["x-oss-request-id"]),0!=t.loaded&&this._reportLog("20007",e,{pn:o,requestId:s}),1!=t.loaded&&this._reportLog("20005",e,{UploadId:n,pn:o+1,pr:e.retry?1:0,fs:e.fileSize,bu:e.bucket,ok:e.object,fn:e.url}),!this._invalidUserId&&!e.isImage&&"vod"==this._ut&&this.options.enableUploadProgress){this.options.userId,e.videoId,this.options.region,e.fileHash}}},{key:"_getPortNumber",value:function(e){if(e){var t=e.doneParts;if(t&&t.length>0)return t[t.length-1].number}return 0}},{key:"_removeCheckoutpoint",value:function(e){var t=this._getCheckoutpointKey(e);l.default.remove(t)}},{key:"_getCheckoutpoint",value:function(e){var t=this._getCheckoutpointKey(e),r=l.default.get(t);if(r)try{return JSON.parse(r)}catch(e){}return""}},{key:"_saveCheckoutpoint",value:function(e,t,r){if(t){var i=this._getCheckoutpointKey(e),n=e.file,o={fileName:n.name,lastModified:n.lastModified,size:n.size,object:e.object,videoId:e.videoId,bucket:e.bucket,endpoint:e.endpoint,checkpoint:t,loaded:e.loaded,state:r};l.default.set(i,JSON.stringify(o))}}},{key:"_changeState",value:function(e,t){var r=this._getCheckoutpoint(e);r&&((this._onbeforeunload=!0)&&(t=a.UPLOADSTATE.STOPED),this._saveCheckoutpoint(e,r.checkpoint,t))}},{key:"_getCheckoutpointKey",value:function(e){var t;return e.file&&(t="upload_"+e.file.lastModified+"_"+e.file.name+"_"+e.file.size),t}},{key:"_getCheckoutpointFromCloud",value:function(e,t,r){this.options.userId,e.fileName,e.fileSize,e.fileLastModified,e.fileHash,this.options.region}},{key:"_reportLog",value:function(e,t,r){r||(r={}),r.ri=t.ri,this._ut&&(r.ut=this._ut),this._log.log(e,r)}},{key:"_initEvent",value:function(){var e=this;window&&(window.onbeforeunload=function(t){if(e._onbeforeunload=!0,-1!=e._curIndex&&e._uploadList.length>e._curIndex){var r=e._uploadList[e._curIndex];e._changeState(r,a.UPLOADSTATE.STOPED)}})}},{key:"_initState",value:function(){for(var e=0;e1e4?e.fileSize/9999:this.options.partSize}}]),e}();t.default=I},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.UPLOADSTATE={INIT:"Ready",UPLOADING:"Uploading",SUCCESS:"Success",FAIlURE:"Failure",CANCELED:"Canceled",STOPED:"Stoped"},t.VODSTATE={INIT:"Init",START:"Start",STOP:"Stop",FAILURE:"Failure",EXPIRE:"Expire",END:"End"}},function(e,t,r){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){for(var r=0;r0&&(t=e.UploadProgress.UploadProgressList[0],i=t.ClientId),d.default.setClientId(i),r&&r(t)},function(e){e&&(i(e),console.log(e))})}}]),e}();t.default=S},function(e,t,r){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){for(var r=0;r
-
+
{{ listCount.friend_count || '0' }}
@@ -21,27 +22,29 @@
+ style="background-image: url('https://image.fulllinkai.com/202201/12/4c83d3da9e0e2018f548755036c86a30.png');"
+ @tap="goto('/pages/users/upgradeVIP')">
升级VIP尊贵特权
{{ user.deadline }}到期
- 去续费
+ 去续费
开通VIP超级会员
专享超值权益 >>
- 去开通
+ 去开通
-
-
-
-
-
+
+
+
+
+
-
+
{{ item.count }}
{{ item.title }}
@@ -86,7 +89,7 @@
-
+
UID:{{ UID }}
@@ -103,7 +106,9 @@
- “自我描述”、“期望对方”、“兴趣爱好”、“上传图片”不可留下个人联系方式,否则将会禁用你的账号,请及时修改
+
+ “自我描述”、“期望对方”、“兴趣爱好”、“上传图片”不可留下个人联系方式,否则将会禁用你的账号,请及时修改
+
修改
@@ -123,7 +128,9 @@
mode="aspectFill">
头像未通过审核
- 由于头像不真实或模糊或非正脸或含有违规,将无法得到配对,赶紧换个新头像吧!
+
+ 由于头像不真实或模糊或非正脸或含有违规,将无法得到配对,赶紧换个新头像吧!
+
更换头像
*
@@ -166,13 +173,30 @@
+
+
+
+ 💖 苹果端小程序购买功能上线啦
+
+ 谢谢家人们一直以来的支持与陪伴🥰 福恋小程序苹果端现已全面开放全部服务购买,快来解锁专属权益,助力脱单吧!
+
+
+ 知道啦
+ 前往购买
+
+
+
+
-
-
+
+
+ bind:success="onPosterSuccessWx">
@@ -181,367 +205,400 @@
-
-
+
+
-
-
+
+
- {
- navigationBarTitleText: '我的',
- navigationStyle: 'custom',
- enablePullDownRefresh: false,
- backgroundColorTop: '#f2f2f2',
- backgroundColorBottom: '#f2f2f2',
- usingComponents: {
- visitorModel: '~@/components/visitorModel',
- userTitle: '~@/components/userTitle',
- loginTips: '~@/components/loginTips',
- chooseImageTips: '~@/components/chooseImageTips',
- shareComponent: '~@/components/shareComponent',
- poster: "plugin://FL-plugin/poster",
- loginDialog: '~@/components/loginDialog',
- }
- }
+{
+navigationBarTitleText: '我的',
+navigationStyle: 'custom',
+enablePullDownRefresh: false,
+backgroundColorTop: '#f2f2f2',
+backgroundColorBottom: '#f2f2f2',
+usingComponents: {
+visitorModel: '~@/components/visitorModel',
+userTitle: '~@/components/userTitle',
+loginTips: '~@/components/loginTips',
+chooseImageTips: '~@/components/chooseImageTips',
+shareComponent: '~@/components/shareComponent',
+poster: "plugin://FL-plugin/poster",
+loginDialog: '~@/components/loginDialog',
+}
+}
diff --git a/src/pages/users/upgradeVIP.wpy b/src/pages/users/upgradeVIP.wpy
index 0a06ca2..65f65f3 100644
--- a/src/pages/users/upgradeVIP.wpy
+++ b/src/pages/users/upgradeVIP.wpy
@@ -1,68 +1,88 @@
-
+
返回
会员中心
-
-
- {{user.nickname}}
-
-
+
+
+ {{ user.nickname || '未登录' }}
+
+
超级会员
-
-
-
+
+
+
普通会员
-
+
- {{user.deadline_str?user.deadline_str+'到期':'未激活'}}
+ {{ user.deadline_str ? user.deadline_str + ' 到期' : '未激活' }}
-
-
-
-
-
+
+
+
+
-
- 会员套餐权益:
+
+ 会员套餐权益:
-
-
+
+
- {{item.text}}
- {{item.sub_text}}
+ {{ item.text }}
+ {{ item.sub_text }}
-
- 会员说明:
+
+
+ 会员说明:
+
- {{item}}
+ {{ item }}
+
-
+
+
+
+
-
- ¥{{payData.discount_price}}
+
+ 合计: ¥{{ payData.discount_price }}
-
+
立即购买
+
@@ -72,36 +92,41 @@
- 由于相关规范,ios小程序此功能暂不可用
+ 支付异常,请重试
-
+
- 支付信息
+ 支付信息
+
+ ¥
+ {{ payData.discount_price }}
+ {{ deductionPrice > 0 ? deductionPrice : '0.00' }}
+
- 原价:¥{{payData.price}}
+ 原价:¥{{ payData.price }}
- ¥{{payData.discount_price}}
- ¥{{deductionPrice>0?deductionPrice:'0.00'}}
-
-
- {{payData.title}}
+ {{ payData.title }}
-
- 微信支付
+
+ 微信支付
-
+
@@ -109,523 +134,661 @@
+
- iOS暂不支持该功能
-
+
长按识别二维码
前往公众号获取帮助
-
+
+
+
+
- {
- navigationBarTitleText: 'VIP服务',
- navigationStyle: 'custom',
- enablePullDownRefresh: false,
- backgroundColorTop: '#f2f2f2',
- backgroundColorBottom: '#f2f2f2',
- usingComponents: {
- cuCustom: '~@/components/cu-custom',
- loginDialog: '~@/components/loginDialog',
-
- }
- }
+{
+navigationBarTitleText: 'VIP服务',
+navigationStyle: 'custom',
+enablePullDownRefresh: false,
+backgroundColorTop: '#f2f2f2',
+backgroundColorBottom: '#f2f2f2',
+usingComponents: {
+cuCustom: '~@/components/cu-custom',
+loginDialog: '~@/components/loginDialog',
+}
+}
diff --git a/src/store/index.js b/src/store/index.js
index 9d2aa7d..4e0abd3 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -1,4 +1,4 @@
-import Vuex from '@wepy/x';
+import Vuex from '@wepy/x'
export default new Vuex.Store({
state: {
@@ -6,23 +6,23 @@ export default new Vuex.Store({
},
mutations: {
increment (state) {
- state.counter++;
+ state.counter++
},
decrement (state) {
- state.counter--;
+ state.counter--
}
},
actions: {
increment ({ commit }) {
- commit('increment');
+ commit('increment')
},
decrement ({ commit }) {
- commit('decrement');
+ commit('decrement')
},
incrementAsync ({ commit }) {
setTimeout(() => {
- commit('increment');
- }, 1000);
+ commit('increment')
+ }, 1000)
}
}
-});
+})
diff --git a/src/utils/im.js b/src/utils/im.js
index b211adf..c0e42a1 100644
--- a/src/utils/im.js
+++ b/src/utils/im.js
@@ -2,6 +2,7 @@ import NIM from 'nim-web-sdk-ng/dist/v2/NIM_MINIAPP_SDK'
import { service } from '../config.js'
const IM = (account, token) => {
+ // 沿用旧版稳定配置格式:不使用官网新的分参数配置,避免兼容问题
let nim = NIM.getInstance({
debugLevel: 'off',
appkey: '9bc3ed1f7d8197b6b69f8f5b742824b1',
@@ -13,10 +14,38 @@ const IM = (account, token) => {
linkUrl: 'wlnimsc0.netease.im'
})
+ // 保留核心优化:筛选有效群会话ID(解决“找不到会话”报错)
+ const getValidTeamSessionIds = (sessions) => {
+ return sessions.filter(item => item.scene === 'team').map(item => item.to)
+ }
+
+ // 保留核心优化:清理无效存储数据(避免用无效群ID操作)
+ const cleanInvalidTeamStorage = (validTeamIds) => {
+ // 清理免打扰列表
+ let muteNotList = wx.getStorageSync('muteNotList') || []
+ const validMuteList = muteNotList.filter(item =>
+ validTeamIds.includes(`team-${item.teamId}`)
+ )
+ if (muteNotList.length !== validMuteList.length) {
+ wx.setStorageSync('muteNotList', validMuteList)
+ }
+
+ // 清理群未读数列表
+ let teamsSessionsCount = wx.getStorageSync('teamsSessionsCount') || []
+ const validTeamsCount = teamsSessionsCount.filter(item =>
+ validTeamIds.includes(item.id)
+ )
+ if (teamsSessionsCount.length !== validTeamsCount.length) {
+ wx.setStorageSync('teamsSessionsCount', validTeamsCount)
+ }
+ }
+
+ // 沿用旧版事件列表:不新增可能兼容问题的事件
const eventList = [
'logined', 'willReconnect', 'disconnect', 'msg', 'syncdone', 'syncRoamingMsgs', 'sessions', 'updateMuteList', 'friends', 'updateSession', 'teams', 'myTeamMembers', 'updateMyMemberInfo', 'sendTeamMsg'
]
+ // 沿用旧版事件注册方式
eventList.forEach((key) => {
nim.on(key, (res) => {
// console.log(`Receive ${key} event:`, res ? JSON.parse(JSON.stringify(res)) : res)
@@ -25,30 +54,43 @@ const IM = (account, token) => {
nim.connect()
+ // 沿用旧版连接状态监听
nim.on('logined', function () {
- console.log('连接成功')
+ console.log('IM连接成功')
})
nim.on('willReconnect', function (e) {
- console.log(e, '即将重连')
+ console.log('IM即将重连:', e)
})
nim.on('disconnect', function (e) {
- console.log(e, '丢失连接')
+ console.log('IM连接断开:', e)
})
+ // 保留核心优化:会话同步时校验有效会话,避免无效ID报错
nim.on('sessions', function(e) {
- console.log(e, '会话消息')
- // 如果群是开启了免打扰自动标记未读数已读
+ console.log('会话列表同步:', e)
+ const validTeamIds = getValidTeamSessionIds(e)
+ cleanInvalidTeamStorage(validTeamIds) // 清理无效数据
+
+ // 免打扰群标已读(双重校验:解决找不到会话报错)
let mute = wx.getStorageSync('muteNotList') || []
if (mute && mute.length > 0) {
mute.forEach((j) => {
- nim.session.resetSessionUnreadCount({
- id: `team-${j.teamId}`
- })
+ const sessionId = `team-${j.teamId}`
+ const session = nim.session.getSession({ id: sessionId })
+ // 只对“存在且有效”的会话操作,无效会话直接跳过
+ if (session && validTeamIds.includes(sessionId)) {
+ try {
+ nim.session.resetSessionUnreadCount({ id: sessionId })
+ } catch (err) {
+ console.log(`重置会话${sessionId}未读失败:`, err)
+ }
+ }
})
}
- // 获取群消息未读数并赋值在tabBar显示
+
+ // 沿用旧版未读数统计和TabBar更新逻辑
let teamsSsions = []
e.forEach((i) => {
if (i.scene === 'team') {
@@ -56,6 +98,7 @@ const IM = (account, token) => {
}
})
wx.setStorageSync('teamsSessionsCount', teamsSsions)
+
let groupCount = 0
if (teamsSsions.length > 0) {
for (let i = 0; i < teamsSsions.length; i++) {
@@ -74,8 +117,9 @@ const IM = (account, token) => {
}
})
+ // 完全沿用旧版消息处理逻辑:不新增@提醒、撤回等功能
nim.on('msg', function (e) {
- console.log(e, '收到最新消息')
+ console.log('收到新消息:', e)
let pages = getCurrentPages()
let currentPage = pages[pages.length - 1]
let notiTypeData = { muteTeam: false }
@@ -155,6 +199,9 @@ const IM = (account, token) => {
index: 2
})
}
+ },
+ fail: (err) => {
+ console.log('获取系统通知未读失败:', err)
}
})
setTimeout(() => {
@@ -169,6 +216,7 @@ const IM = (account, token) => {
}, 800)
})
+ // 完全沿用旧版免打扰列表处理逻辑
nim.on('myTeamMembers', function (e) {
let pages = getCurrentPages()
let currentPage = pages[pages.length - 1]
@@ -188,12 +236,14 @@ const IM = (account, token) => {
})
}
})
+ // 沿用旧版setTimeout(如果之前稳定,保留避免改动)
setTimeout(() => {
console.log(muteNotList, '99399')
wx.setStorageSync('muteNotList', muteNotList)
})
}
})
+
return nim
}