sws-micro-app-adapter-web
Version:
SWS Web微应用适配器
2 lines (1 loc) • 13.1 kB
JavaScript
"use strict";var e={baseUrl:"https://swstime.chinasws.com:18443"},t=function(){return t=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e},t.apply(this,arguments)};function r(e,t,r,n){return new(r||(r=Promise))((function(s,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function i(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?s(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,i)}c((n=n.apply(e,t||[])).next())}))}function n(e,t){var r,n,s,a,o={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function i(i){return function(c){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,i[0]&&(o=0)),o;)try{if(r=1,n&&(s=2&i[0]?n.return:i[0]?n.throw||((s=n.return)&&s.call(n),0):n.next)&&!(s=s.call(n,i[1])).done)return s;switch(n=0,s&&(i=[2&i[0],s.value]),i[0]){case 0:case 1:s=i;break;case 4:return o.label++,{value:i[1],done:!1};case 5:o.label++,n=i[1],i=[0];continue;case 7:i=o.ops.pop(),o.trys.pop();continue;default:if(!(s=o.trys,(s=s.length>0&&s[s.length-1])||6!==i[0]&&2!==i[0])){o=0;continue}if(3===i[0]&&(!s||i[1]>s[0]&&i[1]<s[3])){o.label=i[1];break}if(6===i[0]&&o.label<s[1]){o.label=s[1],s=i;break}if(s&&o.label<s[2]){o.label=s[2],o.ops.push(i);break}s[2]&&o.ops.pop(),o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e],n=0}finally{r=s=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,c])}}}"function"==typeof SuppressedError&&SuppressedError;var s,a=function(e){return null==e||null==e||""===e||Array.isArray(e)&&0==e.length},o={get:function(e){var r=new URLSearchParams(e.url),n=e.params;for(var s in e.params)r.append(s,n[s]);return new Promise((function(r,n){fetch(e.url,{method:"GET",headers:t({},e.headers)}).then((function(e){return e.json()})).then((function(e){r(e)})).catch((function(e){n(new Error(e))}))}))},post:function(e){var r=new URLSearchParams(e.url),n=e.params;for(var s in e.params)r.append(s,n[s]);return new Promise((function(r,n){fetch(e.url,{method:"POST",headers:t({},e.headers),body:new URLSearchParams(e.data)}).then((function(e){return e.json()})).then((function(e){r(e)})).catch((function(e){n(new Error(e))}))}))},put:function(e){var r=new URLSearchParams(e.url),n=e.params;for(var s in e.params)r.append(s,n[s]);return new Promise((function(r,n){fetch(e.url,{method:"PUT",headers:t({},e.headers),body:new URLSearchParams(e.data)}).then((function(e){return e.json()})).then((function(e){r(e)})).catch((function(e){n(new Error(e))}))}))},delete:function(e){var r=new URLSearchParams(e.url),n=e.params;for(var s in e.params)r.append(s,n[s]);return new Promise((function(r,n){fetch(e.url,{method:"DELETE",headers:t({},e.headers),body:new URLSearchParams(e.data)}).then((function(e){return e.json()})).then((function(e){r(e)})).catch((function(e){n(new Error(e))}))}))}};exports.RuntimeEnvironment=void 0,(s=exports.RuntimeEnvironment||(exports.RuntimeEnvironment={})).H5="h5",s.MICRO_APP="microApp";var i=function(){return c()?exports.RuntimeEnvironment.MICRO_APP:exports.RuntimeEnvironment.H5},c=function(){return window.__POWERED_BY_WUJIE__};class u{constructor(){this._dataLength=0,this._bufferLength=0,this._state=new Int32Array(4),this._buffer=new ArrayBuffer(68),this._buffer8=new Uint8Array(this._buffer,0,68),this._buffer32=new Uint32Array(this._buffer,0,17),this.start()}static hashStr(e,t=!1){return this.onePassHasher.start().appendStr(e).end(t)}static hashAsciiStr(e,t=!1){return this.onePassHasher.start().appendAsciiStr(e).end(t)}static _hex(e){const t=u.hexChars,r=u.hexOut;let n,s,a,o;for(o=0;o<4;o+=1)for(s=8*o,n=e[o],a=0;a<8;a+=2)r[s+1+a]=t.charAt(15&n),n>>>=4,r[s+0+a]=t.charAt(15&n),n>>>=4;return r.join("")}static _md5cycle(e,t){let r=e[0],n=e[1],s=e[2],a=e[3];r+=(n&s|~n&a)+t[0]-680876936|0,r=(r<<7|r>>>25)+n|0,a+=(r&n|~r&s)+t[1]-389564586|0,a=(a<<12|a>>>20)+r|0,s+=(a&r|~a&n)+t[2]+606105819|0,s=(s<<17|s>>>15)+a|0,n+=(s&a|~s&r)+t[3]-1044525330|0,n=(n<<22|n>>>10)+s|0,r+=(n&s|~n&a)+t[4]-176418897|0,r=(r<<7|r>>>25)+n|0,a+=(r&n|~r&s)+t[5]+1200080426|0,a=(a<<12|a>>>20)+r|0,s+=(a&r|~a&n)+t[6]-1473231341|0,s=(s<<17|s>>>15)+a|0,n+=(s&a|~s&r)+t[7]-45705983|0,n=(n<<22|n>>>10)+s|0,r+=(n&s|~n&a)+t[8]+1770035416|0,r=(r<<7|r>>>25)+n|0,a+=(r&n|~r&s)+t[9]-1958414417|0,a=(a<<12|a>>>20)+r|0,s+=(a&r|~a&n)+t[10]-42063|0,s=(s<<17|s>>>15)+a|0,n+=(s&a|~s&r)+t[11]-1990404162|0,n=(n<<22|n>>>10)+s|0,r+=(n&s|~n&a)+t[12]+1804603682|0,r=(r<<7|r>>>25)+n|0,a+=(r&n|~r&s)+t[13]-40341101|0,a=(a<<12|a>>>20)+r|0,s+=(a&r|~a&n)+t[14]-1502002290|0,s=(s<<17|s>>>15)+a|0,n+=(s&a|~s&r)+t[15]+1236535329|0,n=(n<<22|n>>>10)+s|0,r+=(n&a|s&~a)+t[1]-165796510|0,r=(r<<5|r>>>27)+n|0,a+=(r&s|n&~s)+t[6]-1069501632|0,a=(a<<9|a>>>23)+r|0,s+=(a&n|r&~n)+t[11]+643717713|0,s=(s<<14|s>>>18)+a|0,n+=(s&r|a&~r)+t[0]-373897302|0,n=(n<<20|n>>>12)+s|0,r+=(n&a|s&~a)+t[5]-701558691|0,r=(r<<5|r>>>27)+n|0,a+=(r&s|n&~s)+t[10]+38016083|0,a=(a<<9|a>>>23)+r|0,s+=(a&n|r&~n)+t[15]-660478335|0,s=(s<<14|s>>>18)+a|0,n+=(s&r|a&~r)+t[4]-405537848|0,n=(n<<20|n>>>12)+s|0,r+=(n&a|s&~a)+t[9]+568446438|0,r=(r<<5|r>>>27)+n|0,a+=(r&s|n&~s)+t[14]-1019803690|0,a=(a<<9|a>>>23)+r|0,s+=(a&n|r&~n)+t[3]-187363961|0,s=(s<<14|s>>>18)+a|0,n+=(s&r|a&~r)+t[8]+1163531501|0,n=(n<<20|n>>>12)+s|0,r+=(n&a|s&~a)+t[13]-1444681467|0,r=(r<<5|r>>>27)+n|0,a+=(r&s|n&~s)+t[2]-51403784|0,a=(a<<9|a>>>23)+r|0,s+=(a&n|r&~n)+t[7]+1735328473|0,s=(s<<14|s>>>18)+a|0,n+=(s&r|a&~r)+t[12]-1926607734|0,n=(n<<20|n>>>12)+s|0,r+=(n^s^a)+t[5]-378558|0,r=(r<<4|r>>>28)+n|0,a+=(r^n^s)+t[8]-2022574463|0,a=(a<<11|a>>>21)+r|0,s+=(a^r^n)+t[11]+1839030562|0,s=(s<<16|s>>>16)+a|0,n+=(s^a^r)+t[14]-35309556|0,n=(n<<23|n>>>9)+s|0,r+=(n^s^a)+t[1]-1530992060|0,r=(r<<4|r>>>28)+n|0,a+=(r^n^s)+t[4]+1272893353|0,a=(a<<11|a>>>21)+r|0,s+=(a^r^n)+t[7]-155497632|0,s=(s<<16|s>>>16)+a|0,n+=(s^a^r)+t[10]-1094730640|0,n=(n<<23|n>>>9)+s|0,r+=(n^s^a)+t[13]+681279174|0,r=(r<<4|r>>>28)+n|0,a+=(r^n^s)+t[0]-358537222|0,a=(a<<11|a>>>21)+r|0,s+=(a^r^n)+t[3]-722521979|0,s=(s<<16|s>>>16)+a|0,n+=(s^a^r)+t[6]+76029189|0,n=(n<<23|n>>>9)+s|0,r+=(n^s^a)+t[9]-640364487|0,r=(r<<4|r>>>28)+n|0,a+=(r^n^s)+t[12]-421815835|0,a=(a<<11|a>>>21)+r|0,s+=(a^r^n)+t[15]+530742520|0,s=(s<<16|s>>>16)+a|0,n+=(s^a^r)+t[2]-995338651|0,n=(n<<23|n>>>9)+s|0,r+=(s^(n|~a))+t[0]-198630844|0,r=(r<<6|r>>>26)+n|0,a+=(n^(r|~s))+t[7]+1126891415|0,a=(a<<10|a>>>22)+r|0,s+=(r^(a|~n))+t[14]-1416354905|0,s=(s<<15|s>>>17)+a|0,n+=(a^(s|~r))+t[5]-57434055|0,n=(n<<21|n>>>11)+s|0,r+=(s^(n|~a))+t[12]+1700485571|0,r=(r<<6|r>>>26)+n|0,a+=(n^(r|~s))+t[3]-1894986606|0,a=(a<<10|a>>>22)+r|0,s+=(r^(a|~n))+t[10]-1051523|0,s=(s<<15|s>>>17)+a|0,n+=(a^(s|~r))+t[1]-2054922799|0,n=(n<<21|n>>>11)+s|0,r+=(s^(n|~a))+t[8]+1873313359|0,r=(r<<6|r>>>26)+n|0,a+=(n^(r|~s))+t[15]-30611744|0,a=(a<<10|a>>>22)+r|0,s+=(r^(a|~n))+t[6]-1560198380|0,s=(s<<15|s>>>17)+a|0,n+=(a^(s|~r))+t[13]+1309151649|0,n=(n<<21|n>>>11)+s|0,r+=(s^(n|~a))+t[4]-145523070|0,r=(r<<6|r>>>26)+n|0,a+=(n^(r|~s))+t[11]-1120210379|0,a=(a<<10|a>>>22)+r|0,s+=(r^(a|~n))+t[2]+718787259|0,s=(s<<15|s>>>17)+a|0,n+=(a^(s|~r))+t[9]-343485551|0,n=(n<<21|n>>>11)+s|0,e[0]=r+e[0]|0,e[1]=n+e[1]|0,e[2]=s+e[2]|0,e[3]=a+e[3]|0}start(){return this._dataLength=0,this._bufferLength=0,this._state.set(u.stateIdentity),this}appendStr(e){const t=this._buffer8,r=this._buffer32;let n,s,a=this._bufferLength;for(s=0;s<e.length;s+=1){if(n=e.charCodeAt(s),n<128)t[a++]=n;else if(n<2048)t[a++]=192+(n>>>6),t[a++]=63&n|128;else if(n<55296||n>56319)t[a++]=224+(n>>>12),t[a++]=n>>>6&63|128,t[a++]=63&n|128;else{if(n=1024*(n-55296)+(e.charCodeAt(++s)-56320)+65536,n>1114111)throw new Error("Unicode standard supports code points up to U+10FFFF");t[a++]=240+(n>>>18),t[a++]=n>>>12&63|128,t[a++]=n>>>6&63|128,t[a++]=63&n|128}a>=64&&(this._dataLength+=64,u._md5cycle(this._state,r),a-=64,r[0]=r[16])}return this._bufferLength=a,this}appendAsciiStr(e){const t=this._buffer8,r=this._buffer32;let n,s=this._bufferLength,a=0;for(;;){for(n=Math.min(e.length-a,64-s);n--;)t[s++]=e.charCodeAt(a++);if(s<64)break;this._dataLength+=64,u._md5cycle(this._state,r),s=0}return this._bufferLength=s,this}appendByteArray(e){const t=this._buffer8,r=this._buffer32;let n,s=this._bufferLength,a=0;for(;;){for(n=Math.min(e.length-a,64-s);n--;)t[s++]=e[a++];if(s<64)break;this._dataLength+=64,u._md5cycle(this._state,r),s=0}return this._bufferLength=s,this}getState(){const e=this._state;return{buffer:String.fromCharCode.apply(null,Array.from(this._buffer8)),buflen:this._bufferLength,length:this._dataLength,state:[e[0],e[1],e[2],e[3]]}}setState(e){const t=e.buffer,r=e.state,n=this._state;let s;for(this._dataLength=e.length,this._bufferLength=e.buflen,n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=r[3],s=0;s<t.length;s+=1)this._buffer8[s]=t.charCodeAt(s)}end(e=!1){const t=this._bufferLength,r=this._buffer8,n=this._buffer32,s=1+(t>>2);this._dataLength+=t;const a=8*this._dataLength;if(r[t]=128,r[t+1]=r[t+2]=r[t+3]=0,n.set(u.buffer32Identity.subarray(s),s),t>55&&(u._md5cycle(this._state,n),n.set(u.buffer32Identity)),a<=4294967295)n[14]=a;else{const e=a.toString(16).match(/(.*?)(.{0,8})$/);if(null===e)return;const t=parseInt(e[2],16),r=parseInt(e[1],16)||0;n[14]=t,n[15]=r}return u._md5cycle(this._state,n),e?this._state:u._hex(this._state)}}if(u.stateIdentity=new Int32Array([1732584193,-271733879,-1732584194,271733878]),u.buffer32Identity=new Int32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),u.hexChars="0123456789abcdef",u.hexOut=[],u.onePassHasher=new u,"5d41402abc4b2a76b9719d911017c592"!==u.hashStr("hello"))throw new Error("Md5 self test failed.");var h="swstime:userInfo",f=function(){var e=i(),t=null;try{switch(e){case exports.RuntimeEnvironment.H5:t=sessionStorage.getItem(h),t=a(t)?"":JSON.parse(t);break;case exports.RuntimeEnvironment.MICRO_APP:var r=window.parent.microAppEngine.getUserInfo();t={id:r.userId,accessToken:window.parent.microAppEngine.getAccessToken(),account:r.account,avatar:r.avatar,deptId:r.deptId,nickName:r.nickName,realName:r.realName,roleId:r.roleId,roleName:r.roleName}}}catch(e){console.error("获取用户信息失败",e)}return t},l=function(){return f().accessToken};exports.appRouter=function(e){switch(i()){case exports.RuntimeEnvironment.H5:window.location.replace(e);break;case exports.RuntimeEnvironment.MICRO_APP:window.parent.microAppEngine.appRouter(e)}},exports.defineConfig=function(t){e.baseUrl=t.baseUrl},exports.fetchRequest=o,exports.getAccessToken=l,exports.getAppConfig=function(t,s){return r(void 0,void 0,void 0,(function(){var r,i,c;return n(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),r=l(),a(r)?[2,Promise.reject("用户未登录")]:(i=e.baseUrl+"/blade-system/micro-app/config/"+t,a(s)||(i+="/"+s),c=null,[4,o.get({url:i,headers:{"blade-auth":"bearer ".concat(r)}})]);case 1:return c=n.sent(),[2,Promise.resolve(c)];case 2:return n.sent(),[2,Promise.reject("获取微应用配置失败")];case 3:return[2]}}))}))},exports.getPermissionList=function(){return r(void 0,void 0,void 0,(function(){var t,r;return n(this,(function(n){switch(n.label){case 0:t=i(),r=null,n.label=1;case 1:switch(n.trys.push([1,6,,7]),t){case exports.RuntimeEnvironment.H5:return[3,2];case exports.RuntimeEnvironment.MICRO_APP:return[3,4]}return[3,5];case 2:return[4,o.get({url:e.baseUrl+"/blade-system/sws-menu/routes?category=11"})];case 3:return r=n.sent(),[3,5];case 4:return r=window.getPermissionList(),[3,5];case 5:return[2,Promise.resolve(r)];case 6:return n.sent(),[2,Promise.reject("获取用户权限信息失败")];case 7:return[2]}}))}))},exports.getPublicPath=function(){switch(i()){case exports.RuntimeEnvironment.H5:return"/";case exports.RuntimeEnvironment.MICRO_APP:return window.__WUJIE_PUBLIC_PATH__}},exports.getRuntimeEnvironment=i,exports.getUserInfo=f,exports.globalConfig=e,exports.isEmpty=a,exports.isMicroAppEnvironment=c,exports.login=function(t,s,a){return void 0===a&&(a="000000"),r(void 0,void 0,void 0,(function(){var r,i;return n(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),[4,o.post({url:e.baseUrl+"/blade-auth/oauth/token",data:{grant_type:"password",username:t,password:u.hashStr(s)},headers:{"Content-Type":"application/x-www-form-urlencoded","Tenant-Id":a,Authorization:"Basic c3dvcmQ6c3dvcmRfc2VjcmV0"}})];case 1:return r=n.sent(),i={id:r.user_id,accessToken:r.access_token,account:r.account,avatar:r.avatar,deptId:r.dept_id,nickName:r.nick_name,realName:r.real_name,roleId:r.role_id,roleName:r.role_name},sessionStorage.setItem(h,JSON.stringify(i)),[2,Promise.resolve(i)];case 2:return n.sent(),[2,Promise.reject("用户登录失败")];case 3:return[2]}}))}))},exports.mountApp=function(e){switch(i()){case exports.RuntimeEnvironment.H5:e();break;case exports.RuntimeEnvironment.MICRO_APP:window.__WUJIE_MOUNT=function(){e()}}},exports.unmountApp=function(e){switch(i()){case exports.RuntimeEnvironment.H5:e();break;case exports.RuntimeEnvironment.MICRO_APP:window.__WUJIE_UNMOUNT=function(){e()}}},exports.userInfoStorageKey=h;