isdata-customer-sdk 0.2.72 → 0.2.73

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/cjs/chat.js +1 -0
  2. package/dist/cjs/chat.js.map +1 -0
  3. package/dist/cjs/dify.js +1 -0
  4. package/dist/cjs/dify.js.map +1 -0
  5. package/dist/cjs/event.js +1 -0
  6. package/dist/cjs/event.js.map +1 -0
  7. package/dist/cjs/i18n.js +1 -0
  8. package/dist/cjs/i18n.js.map +1 -0
  9. package/dist/cjs/iframe.js +1 -0
  10. package/dist/cjs/iframe.js.map +1 -0
  11. package/dist/cjs/index.js +1 -0
  12. package/dist/cjs/index.js.map +1 -0
  13. package/dist/cjs/portal.js +1 -0
  14. package/dist/cjs/portal.js.map +1 -0
  15. package/dist/cjs/security.js +1 -0
  16. package/dist/cjs/security.js.map +1 -0
  17. package/dist/cjs/sms.js +1 -0
  18. package/dist/cjs/sms.js.map +1 -0
  19. package/dist/cjs/utils.js +1 -0
  20. package/dist/cjs/utils.js.map +1 -0
  21. package/dist/esm/chat.js +1 -0
  22. package/dist/esm/chat.js.map +1 -0
  23. package/dist/esm/dify.js +1 -0
  24. package/dist/esm/dify.js.map +1 -0
  25. package/dist/esm/event.js +1 -0
  26. package/dist/esm/event.js.map +1 -0
  27. package/dist/esm/i18n.js +1 -0
  28. package/dist/esm/i18n.js.map +1 -0
  29. package/dist/esm/iframe.js +1 -0
  30. package/dist/esm/iframe.js.map +1 -0
  31. package/dist/esm/index.js +1 -0
  32. package/dist/esm/index.js.map +1 -0
  33. package/dist/esm/portal.js +1 -0
  34. package/dist/esm/portal.js.map +1 -0
  35. package/dist/esm/security.js +1 -0
  36. package/dist/esm/security.js.map +1 -0
  37. package/dist/esm/sms.js +1 -0
  38. package/dist/esm/sms.js.map +1 -0
  39. package/dist/esm/utils.js +1 -0
  40. package/dist/esm/utils.js.map +1 -0
  41. package/dist/index.common.js +5 -24
  42. package/dist/index.common.js.map +1 -1
  43. package/dist/index.umd.js +2 -2
  44. package/dist/index.umd.js.map +1 -1
  45. package/dist/index.umd.min.js +3 -3
  46. package/dist/index.umd.min.js.map +1 -1
  47. package/package.json +88 -18
@@ -0,0 +1 @@
1
+ "use strict";var t=require("axios"),e={},a=Object.prototype.hasOwnProperty;function r(t){try{return decodeURIComponent(t.replace(/\+/g," "))}catch(t){return null}}function s(t){try{return encodeURIComponent(t)}catch(t){return null}}e.stringify=function(t,e){e=e||"";var r,o,n=[];for(o in"string"!=typeof e&&(e="?"),t)if(a.call(t,o)){if((r=t[o])||null!=r&&!isNaN(r)||(r=""),o=s(o),r=s(r),null===o||null===r)continue;n.push(o+"="+r)}return n.length?e+n.join("&"):""},e.parse=function(t){for(var e,a=/([^=?#&]+)=?([^&]*)/g,s={};e=a.exec(t);){var o=r(e[1]),n=r(e[2]);null===o||null===n||o in s||(s[o]=n)}return s};var o=((a="")=>{a&&(a.startsWith("/")&&(a=a.slice(1,a.length)),a.endsWith("/")&&(a=a.slice(0,-1)));const r=t.create({baseURL:`/${a?a+"/":""}sdata/rest`,timeout:6e4,validateStatus:function(t){return t>=200&&t<300},headers:window.location.search&&e.parse(window.location.search).token||window.token?{token:e.parse(window.location.search).token||window.token}:{}});let s=r.post;return r.post=(t,e,a)=>{let o=window.VITE_SERVICE_BASE_URL||"";if(o){let n=o+t;return s.call(r,n,e,a)}return s.call(r,t,e,a)},r.defaults.headers.post["Content-Type"]="application/json",r.interceptors.response.use(t=>{let{data:e}=t;return"string"==typeof e&&(e=JSON.parse(e)),!e||200===e.status||e instanceof Blob?e instanceof Blob?(t.data=e,t):(t.data=e&&e.result,t):Promise.reject(t)},t=>{if(!t.response||401!==t.response.status)return Promise.reject(t.response)}),r})(window.prefixPath||"");const n=()=>{let t=window.sessionStorage.getItem("iportal_app_id");return t||(t=i()),t},i=()=>window.appSdk.getAppId()||window.localStorage.MobileAppId,p=async(t,e)=>{let a={param:{id:t}},r=await o.post("/dataservice/rest/orchestration/getMenuDatasByGroupID",a),s=r.data.resultDatas,n=r.data.menuTypes;r=await o.post("/dataservice/rest/orchestration/getPortalDefaultQuickMenus",{});let i=r.data.resultDatas,p=r.data.menuTypes,l=s.concat(i),d=n.concat(p),f=[],g=[],y={};for(const t of l){let e=t.id,a="1"==t.status;!y[e]&&a&&(f.push(t),y[e]=t)}let I={};for(const t of d){let e=t.id;I[e]||(g.push(t),I[e]=t)}if(e&&e.length>0){r=await c(e,t);let a=r.data.quickMenuMappingDatas||[],s={};for(const t of a){let e=t.menu_mapping_id,a=y[e];s[e]=a}return u(f,g,s)}return u(f,g,[])},c=async(t,e)=>{let a={param:{role_ids:t,group_id:e}};return await o.post("/dataservice/rest/orchestration/getQuckMenuMappingsByRoleIDs",a)},l=async(t,e,a)=>{let r={param:{user_id:t,app_id:e,group_id:a}};return(await o.post("/dataservice/rest/orchestration/getRoleIDsByUserAndGroupID",r)).data.portal_role_ids},d=async(t,e)=>{let a={param:{role_ids:t,app_id:e}};return(await o.post("/dataservice/rest/orchestration/getPlatformMenuMappingsByRoleIDs",a)).data.mappingDatas},u=(t,e,a)=>{let r={},s={},o={};for(let t in a){let e=a[t];if(!e)continue;let r=e.parent_id;r&&(o[r]=!0)}for(const e of t){let t=e.id,s={id:t,index:e.menu_id,name:e.title,sort:e.sort,actionType:e.actionType,url:e.url,iconClass:e.image?e.image:"el-icon-menu",parent_id:e.parent_id,children:[],app_id:e.app_id,menu_id:e.menu_id,beyond_type:e.menu_type?e.menu_type:"RJVIEW-OTHERS",beyond_type_sort:e.menu_type_sort?e.menu_type_sort:999,type:"MenuItem",typeID:e.type};(a&&a[t]||"4"==e.type||o[t]||"1"==e.is_app_defalut)&&(r[t]=s)}for(const t of e){s[t.id]=t}for(const e of t){if("5"==e.type){let t=r[e.id];if(!t)continue;let a=e.parent_id,o=t.beyond_type,n=r[a];if(!n)continue;let i=n.children,p=i.find(t=>t.id==o);if(p){p.children.push(t),t.typeItem=p}else{let e=s[o],a=e?{id:o,index:o,name:e.title,children:[],sort:e.value,type:"MenuType"}:{id:o,index:o,name:"其他",children:[],sort:999,type:"MenuType"};a.children.push(t),i.push(a),t.typeItem=a}}}const n=[];for(const e of t){if("4"==e.type){let t=r[e.id];if(!t)continue;let s=t.children,o=0;for(const t of s){let e=t.children.length;if(o+=e,e>0)break}if("1"!=e.is_app_defalut&&a&&!a[e.id]&&0==o)continue;n.push(t);let i=t.children;i.sort((t,e)=>Number.isNaN(t.sort)?1:Number.isNaN(e.sort)?-1:t.sort-e.sort);for(let t of i){t.children.sort((t,e)=>Number.isNaN(t.sort)?1:Number.isNaN(e.sort)?-1:t.sort-e.sort)}}}return n.sort((t,e)=>Number.isNaN(t.sort)?1:Number.isNaN(e.sort)?-1:t.sort-e.sort),n},f=(t,e)=>{if(e&&e.length>0)for(let a=0;a<e.length;a++)if(e[a].name==t)return e[a].default_value;return""};exports.addIMMapping=async(t,e,a,r)=>{let s={param:{data:{userID:t,im_type:e,group_id:a,userSig:r}}};return(await o.post("/dataservice/rest/orchestration/addIMMapping",s)).data},exports.addObjectUsedTimes=t=>{let e={param:{operateData:t}};return o.post("/dataservice/rest/orchestration/addObjectUsedTimes",e)},exports.getAIRobotInfos=async(t,e)=>{let a={param:{userID:t,groupID:e}};return(await o.post("/dataservice/rest/orchestration/getAIRobotInfos",a)).data.robotInfos},exports.getAPPInfosByID=async t=>{let e={param:{id:t}};return(await o.post("/dataservice/rest/orchestration/getAPPInfosByID",e)).data.appInfo},exports.getAllUserInfosByGroupID=async t=>{let e={param:{groupID:t}};return(await o.post("/dataservice/rest/orchestration/getAllUserInfosByGroupID",e)).data.resultDatas},exports.getAppCustomData=async t=>{let e={param:{appID:t}},a=(await o.post("/dataservice/rest/orchestration/getAppCustomData",e)).data.customData;return a=a?JSON.parse(a):{},a},exports.getAppPortalMenuDatas=async(t,e,a,r)=>{let s=n(),o=await l(t,s,e),i=await p(e,o),c=window.appSdk.getAppId();return i.filter(t=>{if(a)return!0;if(t.app_id==s)return!0;{let e=t.children,a=!1;return e&&e.length>0&&e.forEach(t=>{let e=t.children;if(e&&e.length>0){let t=e.filter(t=>t.app_id===c);t&&t.length>0&&(a=!0)}}),a}})},exports.getChildrenOfficeInfosByID=async t=>{let e={param:{officeID:t}};return(await o.post("/dataservice/rest/orchestration/getChildrenOfficeInfosByID",e)).data.resultDatas},exports.getCurrentAppID=i,exports.getCurrentUserPortalMapping=async t=>{let e={param:{userData:t}};return(await o.post("/dataservice/rest/orchestration/getPortalMappingInfo",e)).data.portal_info},exports.getCurrentUserPortalPageID=async t=>{let e={param:{userData:t}};return(await o.post("/dataservice/rest/orchestration/getPortalPageID",e)).data.portal_id},exports.getGourpMappingsByPhoneNumber=async t=>{let e={param:{phone:t}};return(await o.post("/dataservice/rest/orchestration/getGourpMappingsByPhoneNumber",e)).data.resultGroups},exports.getGroupMappingsByAccount=async t=>{let e={param:{account:t}};return(await o.post("/dataservice/rest/orchestration/getGourpMappingsByAccountName",e)).data.resultGroups},exports.getIntegrateAppInfoByID=async t=>{let e={param:{appID:t}};return(await o.post("/dataservice/rest/orchestration/getIntegrateAppInfoByID",e)).data.appInfo},exports.getLoginPageNotices=async t=>{let e={param:{id:"1005",groupID:t}};return(await o.post("/dataservice/rest/orchestration/getNoticeInfosByAppTypeID",e)).data.resultDatas},exports.getMappingAppInfoByID=async(t,e)=>{let a={param:{appID:t,groupID:e}};return(await o.post("/dataservice/rest/orchestration/getPortalMappingAppInfoByID",a)).data.appInfo},exports.getMenuDatasByGroupID=p,exports.getMenuMappingDatasByRoleIDs=c,exports.getObjectUseTimes=t=>{let e={param:{objectInfo:t}};return o.post("/dataservice/rest/orchestration/getObjectUseTimes",e)},exports.getOfficeInfosByIDs=async t=>{let e={param:{ids:t}};return(await o.post("/dataservice/rest/orchestration/getOfficeInfosByIDs",e)).data.officeInfos},exports.getPageIDByComponentID=async t=>{let e={param:{componentID:t}};return(await o.post("/dataservice/rest/orchestration/getPageIDByComponentID",e)).data.page_id},exports.getPhoneNumberByAccountName=async(t,e)=>{let a={param:{accountName:t,groupID:e}};return(await o.post("/dataservice/rest/orchestration/getPhoneNumberByAccountName",a)).data.phone},exports.getPlatformBortherMenusByMenuID=async(t,e,a)=>{let r={param:{menu_id:t}},s=(await o.post("/dataservice/rest/orchestration/getPlatformBortherMenusByMenuID",r)).data.menuDatas||[],n=await d(e,a),i={};for(const t of n){i[t.menu_id]=t}let p={};for(const t of s){let e=t.id;if((1!==t.leaf_flag||i[e])&&!p[e]){let a="el-icon-menu",r={id:t.id,index:t.id,name:t.name,isSys:!0,iconClass:a,actionType:t.action_type||"1",app_id:t.datapp_id,menu_id:t.id,url:t.url||"",children:t.children||[],sort:t.sort||0};p[e]=r}}for(const t of s){let e=t.parent_id;if(!e)continue;let a=p[e];if(a){let e=p[t.id];if(!e)continue;a.children.push(e)}}let c=[];for(const t in p){let e=p[t];if(e.children&&e.children.length>0){c.push(e),e.children.sort((t,e)=>Number.isNaN(t.sort)?1:Number.isNaN(e.sort)?-1:t.sort-e.sort)}}if(0==c.length)for(const t in p){let e=p[t];e&&c.push(e)}return c.sort((t,e)=>Number.isNaN(t.sort)?1:Number.isNaN(e.sort)?-1:t.sort-e.sort),c},exports.getPlatformMenuMappingsByRoleIDs=d,exports.getPojectDptsByUserAndGroupID=async(t,e)=>{let a={param:{userID:t,groupID:e}},r=await o.post("/dataservice/rest/orchestration/getPojectDptsByUserAndGroupID",a);return{dptDatas:r.data.officeDatas,userMappings:r.data.userMappings}},exports.getPoratlAppID=n,exports.getPortalAccessToken=async(t,e)=>(await o.get(`/appAuth/getAccessToken?appKey=${t}&appSecret=${e}`)).data,exports.getPortalAppCustomConfig=async t=>{let e={param:{groupID:t}};return(await o.post("/dataservice/rest/orchestration/getPortalAppCustomConfig",e)).data.configInfo},exports.getPortalDocmentInfo=async t=>{let e={param:{kb_doc_id:t}};return(await o.post("/dataservice/rest/orchestration/getPortalDocmentInfoByKBID",e)).data.docInfo},exports.getPortalInfosByID=async t=>{let e={param:{id:t}};return(await o.post("/dataservice/rest/orchestration/getPortalInfosByID",e)).data.portalInfo},exports.getPortalNotices=async t=>{let e={param:{id:t}};return await o.post("/dataservice/rest/orchestration/getNoticesInfosByGroupID",e)},exports.getPortalPageConfig=async t=>{let e={param:{id:t}};return(await o.post("/dataservice/rest/orchestration/getPortalPageConfig",e)).data.portal_page_config||"[]"},exports.getPortalPageMenuID=async(t,e)=>{let a={param:{id:t,appid:e}};return(await o.post("/dataservice/rest/orchestration/getPortalPageMenuID",a)).data.menu_id},exports.getPortalUserInfo=async(t,e)=>(await o.get(`/systhirdapp/user/getUserByCode?code=${t}&access_token=${e}`)).data,exports.getPortalUserMappingInfos=async t=>{let e={param:{operateData:t}};return(await o.post("/dataservice/rest/orchestration/getPortalUserMappingInfos",e)).data.portalMapping},exports.getPortalUserSig=async(t,e,a)=>{let r={param:{userID:t,im_type:e,group_id:a}};return(await o.post("/dataservice/rest/orchestration/getIMUserSigByID",r)).data.userSig},exports.getRoleIDsByUserAndGroupID=l,exports.getTenetInfoByName=async t=>{let e={param:{name:t}};return(await o.post("/dataservice/rest/orchestration/getTenetInfoByName",e)).data.resultDatas},exports.getThirdAppPathByKey=async(t,e,a)=>{let r={param:{appKey:t,appSecret:e,groupID:a}};return(await o.post("/dataservice/rest/orchestration/getThirdAppPathByKey",r)).data.path},exports.getUserAllMappngPortal=t=>{let e={param:{userData:t}};return o.post("/dataservice/rest/orchestration/getUserAllMappngPortal",e)},exports.queryAndStoreAppVariable=(t,e)=>{let a=window.sessionStorage.getItem("isdata_app_variable_"+t);return a||(a=f(t,e),a&&window.sessionStorage.setItem("isdata_app_variable_"+t,a)),a},exports.queryAppVariable=f,exports.queryGroupIDByOfficeId=async t=>{let e={param:{id:t}};return(await o.post("/dataservice/rest/orchestration/getGroupIDByDptID",e)).data.resultDptData.id},exports.queryGroupInfosByOfficeId=async t=>{let e={param:{id:t}};return(await o.post("/dataservice/rest/orchestration/getGroupIDByDptID",e)).data.resultDptData},exports.queryOfficeInfosById=async t=>{let e={param:{id:t}};return(await o.post("/dataservice/rest/orchestration/getOfficeInfosByID",e)).data.officeData},exports.savePortalI18nText=async(t,e,a,r,s)=>{let i={param:{key:t,value:e,appID:n(),lang:a,beyondID:r,i18nType:s}};return(await o.post("/dataservice/rest/orchestration/savePortalI18nText",i)).data.resultData},exports.setPortalPageConfig=t=>{let e={param:t};return o.post("/dataservice/rest/orchestration/setPortalPageConfig",e)},exports.transformPortalQuickMenuDatas=(t,e)=>{e=e||[];let a=(t=t||[]).concat(e),r={},s=[];for(const t of a){let e=t.id;r[e]||(r[e]=t,s.push(t))}let o={};for(const t of s){let e=t.id,a={id:e,label:t.title,sort:t.sort,children:[],parent_id:t.parent_id,type:t.type};o[e]=a}for(const t of s){let e=o[t.id];if("5"==e.type){let t=o[e.parent_id];if(t){t.children.push(e)}}}const n=[];for(const t of s){let e=o[t.id];if("4"==e.type){n.push(e),e.children.sort((t,e)=>Number.isNaN(t.sort)?1:Number.isNaN(e.sort)?-1:t.sort-e.sort)}}return n.sort((t,e)=>Number.isNaN(t.sort)?1:Number.isNaN(e.sort)?-1:t.sort-e.sort),n},exports.transformPortalSystemMenuDatas=t=>{let e={};for(const a of t){let t=a.id,r={id:t,label:a.name,sort:a.sort,icon:a.icon,children:[],app_id:a.datapp_id,parent_id:a.parent_id,leaf_flag:a.leaf_flag};e[t]=r}for(const a of t){if(1==a.leaf_flag){let t=e[a.id],r=e[a.parent_id];if(r){r.children.push(t)}}}const a=[];for(const r of t){if(0==r.leaf_flag){let t=e[r.id];a.push(t),t.children.sort((t,e)=>Number.isNaN(t.sort)?1:Number.isNaN(e.sort)?-1:t.sort-e.sort)}}return a.sort((t,e)=>Number.isNaN(t.sort)?1:Number.isNaN(e.sort)?-1:t.sort-e.sort),a},exports.updateIMMapping=async(t,e,a,r)=>{let s={param:{userID:t,im_type:e,groupID:a,userSig:r}};return(await o.post("/dataservice/rest/orchestration/updateIMMapping",s)).data},exports.updateUserSelectPortal=t=>{let e={param:{portalMappingData:t}};return o.post("/dataservice/rest/orchestration/updateUserSelectPortal",e)},exports.validateSSOPageLoaded=async(t,e,a)=>{let r={param:{app_id:t,appSecret:e,returnUrl:a}};return(await o.post("/dataservice/rest/orchestration/validateSSOPageLoaded",r)).data.count};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portal.js","sources":["../../node_modules/querystringify/index.js","../../src/api/request.js","../../src/api/portal.js"],"sourcesContent":["'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , undef;\n\n/**\n * Decode a URI encoded string.\n *\n * @param {String} input The URI encoded string.\n * @returns {String|Null} The decoded string.\n * @api private\n */\nfunction decode(input) {\n try {\n return decodeURIComponent(input.replace(/\\+/g, ' '));\n } catch (e) {\n return null;\n }\n}\n\n/**\n * Attempts to encode a given input.\n *\n * @param {String} input The string that needs to be encoded.\n * @returns {String|Null} The encoded string.\n * @api private\n */\nfunction encode(input) {\n try {\n return encodeURIComponent(input);\n } catch (e) {\n return null;\n }\n}\n\n/**\n * Simple query string parser.\n *\n * @param {String} query The query string that needs to be parsed.\n * @returns {Object}\n * @api public\n */\nfunction querystring(query) {\n var parser = /([^=?#&]+)=?([^&]*)/g\n , result = {}\n , part;\n\n while (part = parser.exec(query)) {\n var key = decode(part[1])\n , value = decode(part[2]);\n\n //\n // Prevent overriding of existing properties. This ensures that build-in\n // methods like `toString` or __proto__ are not overriden by malicious\n // querystrings.\n //\n // In the case if failed decoding, we want to omit the key/value pairs\n // from the result.\n //\n if (key === null || value === null || key in result) continue;\n result[key] = value;\n }\n\n return result;\n}\n\n/**\n * Transform a query string to an object.\n *\n * @param {Object} obj Object that should be transformed.\n * @param {String} prefix Optional prefix.\n * @returns {String}\n * @api public\n */\nfunction querystringify(obj, prefix) {\n prefix = prefix || '';\n\n var pairs = []\n , value\n , key;\n\n //\n // Optionally prefix with a '?' if needed\n //\n if ('string' !== typeof prefix) prefix = '?';\n\n for (key in obj) {\n if (has.call(obj, key)) {\n value = obj[key];\n\n //\n // Edge cases where we actually want to encode the value to an empty\n // string instead of the stringified value.\n //\n if (!value && (value === null || value === undef || isNaN(value))) {\n value = '';\n }\n\n key = encode(key);\n value = encode(value);\n\n //\n // If we failed to encode the strings, we should bail out as we don't\n // want to add invalid strings to the query.\n //\n if (key === null || value === null) continue;\n pairs.push(key +'='+ value);\n }\n }\n\n return pairs.length ? prefix + pairs.join('&') : '';\n}\n\n//\n// Expose the module.\n//\nexports.stringify = querystringify;\nexports.parse = querystring;\n","import axios from \"axios\"\r\nimport qs from \"querystringify\"\r\n\r\nlet apiContextPath = \"\"\r\n// const onlineDevelopmentMode = process.env.VUE_APP_ONLINE_DEVELOPMENT_MODE === \"true\" || process.env.REACT_APP_ONLINE_DEVELOPMENT_MODE === \"true\"\r\n// if (process.env.NODE_ENV === \"development\" && !onlineDevelopmentMode) {\r\n// document.cookie =\r\n// \"token=eyJhbGciOiJIUzI1NiJ9.eyJsb2dpblRpbWVzdGFtcCI6MTY0NjcyMjI2ODY4NSwidXNlcklkIjoiMTIzNDU2Nzg5MCJ9.F8wr84ha-dW18J9wZOQeTXj55mXTdqKfLBeNlNueoLY\"\r\n// document.cookie =\r\n// \"refreshToken=eyJhbGciOiJIUzI1NiJ9.eyJsb2dpblRpbWVzdGFtcCI6MTY0NjcyMjI2ODY4Nn0.TEVE_nopHNZlvSQM_RUZrLcCzkaERiHo8nz0q-ksL3E\"\r\n// document.cookie = \"username=admin\"\r\n// document.cookie = \"windowOnline=true\"\r\n// apiContextPath = \"/api\"\r\n// }\r\nexport const getInstance = (prefix = \"\") => {\r\n if (prefix) {\r\n prefix.startsWith(\"/\") && (prefix = prefix.slice(1, prefix.length))\r\n prefix.endsWith(\"/\") && (prefix = prefix.slice(0, -1))\r\n }\r\n const instance = axios.create({\r\n baseURL: `${apiContextPath}/${prefix ? prefix + \"/\" : \"\"}sdata/rest`,\r\n timeout: 60000,\r\n validateStatus: function(status) {\r\n return status >= 200 && status < 300 // default\r\n },\r\n headers:\r\n (window.location.search && qs.parse(window.location.search).token) ||\r\n window.token\r\n ? { token: qs.parse(window.location.search).token || window.token }\r\n : {}\r\n })\r\n\r\n let oldPost = instance.post;\r\n\r\n instance.post = (url, data, config)=> {\r\n let prefix =window.VITE_SERVICE_BASE_URL || \"\";\r\n if (prefix) {\r\n let newUrl = prefix + url;\r\n return oldPost.call(instance, newUrl, data, config);\r\n }\r\n return oldPost.call(instance, url, data, config);\r\n };\r\n\r\n instance.defaults.headers.post[\"Content-Type\"] = \"application/json\"\r\n\r\n instance.interceptors.response.use(\r\n response => {\r\n let { data } = response\r\n if (typeof data === \"string\") {\r\n data = JSON.parse(data)\r\n }\r\n if (data && data.status !== 200 && !(data instanceof Blob)) {\r\n return Promise.reject(response)\r\n }\r\n if (data instanceof Blob) {\r\n response.data = data\r\n return response\r\n }\r\n\r\n response.data = data && data.result\r\n return response\r\n },\r\n error => {\r\n if (error.response && error.response.status === 401) {\r\n return\r\n }\r\n\r\n return Promise.reject(error.response)\r\n }\r\n )\r\n return instance\r\n}\r\nlet prefixPath = window.prefixPath || \"\"\r\n\r\nexport default getInstance(prefixPath)\r\n","import request from \"./request\";\r\n\r\n/**\r\n * 获取门户应用ID\r\n * @param {*} isPortalAction 是否是门户操作\r\n * 如果是门户操作,则从window.appSdk.getAppId()获取\r\n * 否则从sessionStorage中获取iportal_app_id,如果没有则从appVariables中获取\r\n * @param {*} isPortalAction\r\n * @returns\r\n */\r\nexport const getPoratlAppID = () => {\r\n let portal_app_id = window.sessionStorage.getItem(\"iportal_app_id\");\r\n if (!portal_app_id) {\r\n portal_app_id = getCurrentAppID();\r\n }\r\n return portal_app_id;\r\n};\r\n\r\nexport const getCurrentAppID = () => {\r\n let app_id = window.appSdk.getAppId() || window.localStorage.MobileAppId;\r\n return app_id;\r\n};\r\n\r\n/**\r\n * 取门户应用菜单数据\r\n * @param {*} user_id 用户ID\r\n * @param {*} group_id 组织ID\r\n * @param {*} isPortalAction\r\n * @returns\r\n */\r\nexport const getAppPortalMenuDatas = async (\r\n user_id,\r\n group_id,\r\n isPortalAction,\r\n appVariables\r\n) => {\r\n //获取门户应用ID\r\n let portal_app_id = getPoratlAppID();\r\n //获取当前用户在当前组织下的角色ID\r\n let roleList = await getRoleIDsByUserAndGroupID(\r\n user_id,\r\n portal_app_id,\r\n group_id\r\n );\r\n //获取当前组织下的门户菜单数据\r\n let portalMenuDatas = await getMenuDatasByGroupID(group_id, roleList);\r\n let app_id = window.appSdk.getAppId();\r\n let menuDatas = portalMenuDatas.filter((menuData) => {\r\n // 如果是门户菜单,则直接返回true\r\n // 否则根据app_id和portal_app_id进行过滤\r\n if (isPortalAction) {\r\n return true;\r\n } else {\r\n if (menuData.app_id == portal_app_id) {\r\n return true;\r\n } else {\r\n let types = menuData.children;\r\n let hasTargetMenu = false;\r\n if (types && types.length > 0) {\r\n types.forEach((type) => {\r\n let children = type.children;\r\n if (children && children.length > 0) {\r\n let newTypeChilden = children.filter((child) => {\r\n return child.app_id === app_id;\r\n });\r\n if (newTypeChilden && newTypeChilden.length > 0) {\r\n hasTargetMenu = true;\r\n }\r\n }\r\n });\r\n }\r\n return hasTargetMenu;\r\n }\r\n }\r\n });\r\n return menuDatas;\r\n};\r\n\r\n/**\r\n * 查询当前企业门户菜单信息\r\n * @param id GroupID\r\n *\r\n */\r\nexport const getMenuDatasByGroupID = async (group_id, role_ids) => {\r\n let queryData_groupData = {\r\n param: {\r\n id: group_id,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getMenuDatasByGroupID`,\r\n queryData_groupData\r\n );\r\n //所有的快捷访问菜单信息\r\n let portalMenuDatas = result.data.resultDatas;\r\n //所有的菜单类型\r\n let menuTypes = result.data.menuTypes;\r\n\r\n result = await request.post(\r\n `/dataservice/rest/orchestration/getPortalDefaultQuickMenus`,\r\n {}\r\n );\r\n\r\n let defaultMenuDatas = result.data.resultDatas;\r\n\r\n let defaultMenuType = result.data.menuTypes;\r\n\r\n let tempMenuDatas = portalMenuDatas.concat(defaultMenuDatas);\r\n\r\n let tempMenuType = menuTypes.concat(defaultMenuType);\r\n\r\n let finalMenuDatas = [];\r\n\r\n let finaMenuTypes = [];\r\n\r\n let tempMap = {};\r\n //缓存所有快捷访问菜单信息\r\n for (const tempData of tempMenuDatas) {\r\n let id = tempData.id;\r\n let isList =tempData.status==\"1\";\r\n // 只缓存启用状态的菜单\r\n if(!tempMap[id]&&isList)\r\n {\r\n finalMenuDatas.push(tempData);\r\n tempMap[id] = tempData;\r\n }\r\n }\r\n let tempTypeMap = {};\r\n //缓存所有菜单类型信息\r\n for (const tempType of tempMenuType) {\r\n let id = tempType.id;\r\n if(!tempTypeMap[id])\r\n {\r\n finaMenuTypes.push(tempType);\r\n tempTypeMap[id] = tempType;\r\n }\r\n }\r\n\r\n //如果有角色ID,则获取对应角色的快捷访问菜单映射信息\r\n if (role_ids && role_ids.length > 0) {\r\n //获取当前角色下对应的角色快捷访问菜单的映射信息(到应用自定义菜单)和快捷访问菜单的信息\r\n result = await getMenuMappingDatasByRoleIDs(role_ids, group_id);\r\n //对应角色的快捷访问菜单映射信息\r\n let quickMenuMappingDatas = result.data.quickMenuMappingDatas || [];\r\n let filterObjectMap = {};\r\n\r\n //缓存所有角色的快捷访问菜单映射信息\r\n for (const data of quickMenuMappingDatas) {\r\n let id = data.menu_mapping_id;\r\n let quickMenuMapping = tempMap[id];\r\n filterObjectMap[id] = quickMenuMapping;\r\n }\r\n //返回基于角色关联关系过滤后的快捷访问菜单信息\r\n return transformPortalData(finalMenuDatas, finaMenuTypes, filterObjectMap);\r\n } else {\r\n return transformPortalData(finalMenuDatas, finaMenuTypes, []);\r\n }\r\n};\r\n\r\n/**\r\n * 查询对应角色的门户快捷菜单映射信息\r\n * @param id GroupID\r\n *\r\n */\r\nexport const getMenuMappingDatasByRoleIDs = async (role_ids, group_id) => {\r\n let queryData_groupData = {\r\n param: {\r\n role_ids: role_ids,\r\n group_id: group_id,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getQuckMenuMappingsByRoleIDs`,\r\n queryData_groupData\r\n );\r\n //获取菜单数据\r\n return result;\r\n};\r\n\r\n/**\r\n * 校验SSO页面加载是否正确\r\n * @param id GroupID\r\n *\r\n */\r\nexport const validateSSOPageLoaded = async (app_id, appSecret, returnUrl) => {\r\n let queryData_groupData = {\r\n param: {\r\n app_id: app_id,\r\n appSecret: appSecret,\r\n returnUrl: returnUrl,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/validateSSOPageLoaded`,\r\n queryData_groupData\r\n );\r\n let resultCount = result.data.count;\r\n //获取菜单数据\r\n return resultCount;\r\n};\r\n\r\n/**\r\n * 查询对应角色的门户快捷菜单信息\r\n * @param id GroupID\r\n *\r\n */\r\nexport const getRoleIDsByUserAndGroupID = async (user_id, app_id, group_id) => {\r\n let queryData = {\r\n param: {\r\n user_id: user_id,\r\n app_id: app_id,\r\n group_id: group_id,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getRoleIDsByUserAndGroupID`,\r\n queryData\r\n );\r\n let role_ids = result.data.portal_role_ids;\r\n //获取菜单数据\r\n return role_ids;\r\n};\r\n\r\n/**\r\n * 获取门户知识文档的url\r\n * @param {*} kb_doc_id\r\n * @returns\r\n */\r\nexport const getPortalDocmentInfo = async (kb_doc_id) => {\r\n let queryData = {\r\n param: {\r\n kb_doc_id: kb_doc_id,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getPortalDocmentInfoByKBID`,\r\n queryData\r\n );\r\n let docInfo = result.data.docInfo;\r\n return docInfo;\r\n};\r\n\r\n// export const getLoginPortalAccountKey = async (loginName,groupID) => {\r\n// let queryData = {\r\n// param: {\r\n// loginData: {\r\n// account: loginName,\r\n// group_id: groupID,\r\n// },\r\n// },\r\n// };\r\n// let result = await request.post(\r\n// `/dataservice/rest/orchestration/getLoginPortalAccountKey`,\r\n// queryData\r\n// );\r\n// return result;\r\n// };\r\n\r\n/**\r\n * 获取该平台菜单同祖先(直至根节点)得其他兄弟菜单\r\n * @param {*} menu_id \r\n * @returns \r\n */\r\nexport const getPlatformBortherMenusByMenuID =async (menu_id,role_ids,group_id) =>{\r\n let queryData_groupData = {\r\n \"param\": {\r\n \"menu_id\": menu_id,\r\n }\r\n };\r\n let result =await request.post(`/dataservice/rest/orchestration/getPlatformBortherMenusByMenuID`,queryData_groupData);\r\n let sysMenuDatas = result.data.menuDatas || [];\r\n \r\n //获取当前角色下对应的角色菜单权限的映射信息\r\n let roleMenuMappingDatas = await getPlatformMenuMappingsByRoleIDs(role_ids, group_id);\r\n let roleMenuMappingMap = {};\r\n for (const mappingData of roleMenuMappingDatas) {\r\n let menu_mapping_id = mappingData.menu_id;\r\n roleMenuMappingMap[menu_mapping_id] = mappingData;\r\n }\r\n let menuMaps = {};\r\n //缓存所有菜单信息\r\n for (const item of sysMenuDatas) {\r\n let id = item.id;\r\n let leaf_flag = item.leaf_flag;\r\n //如果是叶子节点 并且当前菜单ID在角色菜单映射信息中不存在,则跳过\r\n if(leaf_flag===1&&(!roleMenuMappingMap[id])){\r\n continue;\r\n }\r\n // 如果当前菜单ID在角色菜单映射信息中存在,则表示该角色有权限访问该菜单\r\n if (!menuMaps[id]) {\r\n // let icon =item.icon;\r\n let iconClass =\"el-icon-menu\";\r\n // if(icon){\r\n // let obj = JSON.parse(icon);\r\n // iconClass =obj?.url?`#${obj.url}`:\"el-icon-menu\";\r\n // }\r\n let tempItem = {\r\n id: item.id,\r\n index: item.id,\r\n name: item.name,\r\n isSys:true,\r\n iconClass: iconClass,\r\n actionType: item.action_type|| \"1\", // 默认值为1\r\n app_id: item.datapp_id,\r\n menu_id: item.id, \r\n url: item.url||\"\",\r\n children: item.children || [],\r\n sort: item.sort || 0,\r\n };\r\n menuMaps[id] = tempItem;\r\n }\r\n }\r\n for (const item of sysMenuDatas) {\r\n let parent_id = item.parent_id;\r\n if (!parent_id) continue;\r\n let parentItem = menuMaps[parent_id];\r\n if (parentItem) {\r\n let menuItem = menuMaps[item.id];\r\n if(!menuItem){\r\n continue;\r\n }\r\n parentItem.children.push(menuItem);\r\n }\r\n }\r\n let menuDatas = [];\r\n for (const key in menuMaps) {\r\n let item = menuMaps[key];\r\n if (item.children && item.children.length > 0) {\r\n menuDatas.push(item);\r\n let children = item.children;\r\n children.sort((data1, data2) => {\r\n if (Number.isNaN(data1.sort)) return 1;\r\n if (Number.isNaN(data2.sort)) return -1;\r\n return data1.sort - data2.sort;\r\n });\r\n }\r\n }\r\n //如果没有数据,说明只有一级节点父亲\r\n if(menuDatas.length==0){\r\n for (const key in menuMaps) {\r\n let item = menuMaps[key];\r\n if (item) {\r\n menuDatas.push(item);\r\n }\r\n }\r\n }\r\n menuDatas.sort((data1, data2) => {\r\n if (Number.isNaN(data1.sort)) return 1;\r\n if (Number.isNaN(data2.sort)) return -1;\r\n return data1.sort - data2.sort;\r\n });\r\n // console.log(\"getPlatformBortherMenusByMenuID\",menuDatas);\r\n //获取菜单数据\r\n return menuDatas;\r\n};\r\n\r\n\r\n\r\n/**\r\n * 通过角色IDS获取该平台菜单权限映射\r\n * @param {*} menu_id \r\n * @returns \r\n */\r\nexport const getPlatformMenuMappingsByRoleIDs =async (role_ids,app_id) =>{\r\n let queryData_groupData = {\r\n \"param\": {\r\n \"role_ids\": role_ids,\r\n \"app_id\":app_id\r\n }\r\n };\r\n let result =await request.post(`/dataservice/rest/orchestration/getPlatformMenuMappingsByRoleIDs`,queryData_groupData);\r\n let mappingDatas = result.data.mappingDatas;\r\n //获取菜单数据\r\n return mappingDatas;\r\n};\r\n\r\n\r\n/**\r\n * 转换门户菜单数据\r\n * @param {*} datas 所有的快捷菜单访问信息\r\n * @param {*} menuTypes 快捷访问菜单类型\r\n * @param {*} filterObjectMap 角色快捷菜单访问映射信息\r\n * @returns\r\n */\r\nconst transformPortalData = (datas, menuTypes, filterObjectMap) => {\r\n let menuMaps = {};\r\n let menuTypeMaps = {};\r\n let parentMaps = {};\r\n //缓存所有父亲菜单信息\r\n for (let key in filterObjectMap) {\r\n let item = filterObjectMap[key];\r\n if(!item) continue;\r\n let parent_id = item.parent_id;\r\n if (parent_id) {\r\n parentMaps[parent_id] = true;\r\n }\r\n }\r\n //缓存所有菜单信息\r\n for (const data of datas) {\r\n let id = data.id;\r\n let tempMenuData = {\r\n id: id,\r\n index: data.menu_id,\r\n name: data.title,\r\n sort: data.sort,\r\n actionType: data.actionType,\r\n url: data.url,\r\n iconClass: data.image?data.image:\"el-icon-menu\",\r\n parent_id: data.parent_id,\r\n children: [],\r\n app_id: data.app_id,\r\n menu_id: data.menu_id,\r\n beyond_type: data.menu_type ? data.menu_type : \"RJVIEW-OTHERS\",\r\n beyond_type_sort: data.menu_type_sort ? data.menu_type_sort : 999,\r\n type:\"MenuItem\",\r\n typeID:data.type,\r\n };\r\n //如果存在快捷菜单映射数据或者是主菜单入口\r\n //如果是主菜单或者存在快捷访问映射或者孩子存在快捷访问映射或者是应用默认的菜单,则纳入到菜单中\r\n if ((filterObjectMap&&filterObjectMap[id]) || data.type == \"4\" || parentMaps[id] || data.is_app_defalut==\"1\") {\r\n //TODO:判断是否有平台系统的menu_id权限,有可能有映射权限,但角色没有平台权限,则不显示\r\n menuMaps[id] = tempMenuData;\r\n }\r\n }\r\n //缓存所有菜单类型信息\r\n for (const menuData of menuTypes) {\r\n let id = menuData.id;\r\n menuTypeMaps[id] = menuData;\r\n }\r\n for (const data of datas) {\r\n let type = data.type;\r\n //5:子菜单入口\r\n if (type == \"5\") {\r\n let tempMenuData = menuMaps[data.id];\r\n //如果没有对应的菜单数据,则跳过\r\n if (!tempMenuData) continue;\r\n let parent_id = data.parent_id;\r\n let tempType = tempMenuData.beyond_type;\r\n // let tempType_sort =tempMenuData.beyond_type_sort;\r\n let tempParentMenu = menuMaps[parent_id];\r\n if (!tempParentMenu) continue;\r\n let parentTypes = tempParentMenu.children;\r\n let parentType = parentTypes.find((tempTypeItem) => {\r\n return tempTypeItem.id == tempType;\r\n });\r\n if (parentType) {\r\n let type_childens = parentType.children;\r\n type_childens.push(tempMenuData);\r\n tempMenuData.typeItem = parentType;\r\n } else {\r\n let menuTypeObj = menuTypeMaps[tempType];\r\n let parentType = menuTypeObj\r\n ? {\r\n id: tempType,\r\n index: tempType,\r\n name: menuTypeObj.title,\r\n children: [],\r\n sort: menuTypeObj.value,\r\n type:\"MenuType\",\r\n }\r\n : {\r\n id: tempType,\r\n index: tempType,\r\n name: \"其他\",\r\n children: [],\r\n sort: 999,\r\n type:\"MenuType\"\r\n };\r\n let type_childens = parentType.children;\r\n type_childens.push(tempMenuData);\r\n parentTypes.push(parentType);\r\n tempMenuData.typeItem = parentType;\r\n }\r\n }\r\n }\r\n const menuList = [];\r\n for (const data of datas) {\r\n let type = data.type;\r\n //4:主菜单入口\r\n if (type == \"4\") {\r\n let tempMenuData = menuMaps[data.id];\r\n //如果没有对应的菜单数据,则跳过\r\n if (!tempMenuData) continue;\r\n let menuTypes = tempMenuData.children;\r\n let count = 0;\r\n for (const menuType of menuTypes) {\r\n let type_childens = menuType.children;\r\n let tempCount = type_childens.length;\r\n count = count + tempCount;\r\n if (tempCount > 0) {\r\n break;\r\n }\r\n }\r\n //如果不是默认菜单,并且没有快捷访问权限,并且孩子没有快捷访问权限,则不显示\r\n if(data.is_app_defalut!=\"1\") {\r\n // 如果没有权限,也没有子菜单时 则跳过\r\n if(filterObjectMap&&!filterObjectMap[data.id]&&count==0) {\r\n continue;\r\n }\r\n }\r\n menuList.push(tempMenuData);\r\n let types = tempMenuData.children;\r\n types.sort((data1, data2) => {\r\n if (Number.isNaN(data1.sort)) return 1;\r\n if (Number.isNaN(data2.sort)) return -1;\r\n return data1.sort - data2.sort;\r\n });\r\n for (let typeItem of types) {\r\n let tempArrys = typeItem.children;\r\n tempArrys.sort((data1, data2) => {\r\n if (Number.isNaN(data1.sort)) return 1;\r\n if (Number.isNaN(data2.sort)) return -1;\r\n return data1.sort - data2.sort;\r\n });\r\n }\r\n }\r\n }\r\n menuList.sort((data1, data2) => {\r\n if (Number.isNaN(data1.sort)) return 1;\r\n if (Number.isNaN(data2.sort)) return -1;\r\n return data1.sort - data2.sort;\r\n });\r\n // console.log(menuList);\r\n return menuList;\r\n};\r\n\r\n/**\r\n * 转换门户用户快捷菜单数据\r\n * @param {*} quickDatas\r\n * @returns\r\n */\r\nexport const transformPortalQuickMenuDatas = (quickDatas,defaultDatas) => {\r\n quickDatas = quickDatas ? quickDatas : [];\r\n defaultDatas = defaultDatas ? defaultDatas : [];\r\n let tempDatas = quickDatas.concat(defaultDatas);\r\n let tempDatasMap = {};\r\n let finalMenuDatas = [];\r\n for (const item of tempDatas) {\r\n let id = item.id;\r\n if(!tempDatasMap[id]) {\r\n tempDatasMap[id] = item;\r\n finalMenuDatas.push(item);\r\n }\r\n }\r\n let quickMenuMaps = {};\r\n for (const data of finalMenuDatas) {\r\n let id = data.id;\r\n let tempMenuData = {\r\n id: id,\r\n label: data.title,\r\n sort: data.sort,\r\n children: [],\r\n parent_id: data.parent_id,\r\n type: data.type,\r\n };\r\n quickMenuMaps[id] = tempMenuData;\r\n }\r\n for (const data of finalMenuDatas) {\r\n let tempMenuData = quickMenuMaps[data.id];\r\n //5:子菜单入口\r\n if (tempMenuData.type == \"5\") {\r\n let parent_id = tempMenuData.parent_id;\r\n let tempParentMenu = quickMenuMaps[parent_id];\r\n if (tempParentMenu) {\r\n let parentChilden = tempParentMenu.children;\r\n parentChilden.push(tempMenuData);\r\n }\r\n }\r\n }\r\n const menuList = [];\r\n for (const data of finalMenuDatas) {\r\n let tempMenuData = quickMenuMaps[data.id];\r\n //4:主菜单入口\r\n if (tempMenuData.type == \"4\") {\r\n menuList.push(tempMenuData);\r\n let tempArrys = tempMenuData.children;\r\n tempArrys.sort((data1, data2) => {\r\n if (Number.isNaN(data1.sort)) return 1;\r\n if (Number.isNaN(data2.sort)) return -1;\r\n return data1.sort - data2.sort;\r\n });\r\n }\r\n }\r\n menuList.sort((data1, data2) => {\r\n if (Number.isNaN(data1.sort)) return 1;\r\n if (Number.isNaN(data2.sort)) return -1;\r\n return data1.sort - data2.sort;\r\n });\r\n return menuList;\r\n};\r\n\r\nexport const transformPortalSystemMenuDatas = (datas) => {\r\n let menuMaps = {};\r\n for (const data of datas) {\r\n let id = data.id;\r\n let tempMenuData = {\r\n id: id,\r\n label: data.name,\r\n sort: data.sort,\r\n icon: data.icon,\r\n children: [],\r\n app_id: data.datapp_id,\r\n parent_id: data.parent_id,\r\n leaf_flag: data.leaf_flag,\r\n };\r\n menuMaps[id] = tempMenuData;\r\n }\r\n for (const data of datas) {\r\n let leaf_flag = data.leaf_flag;\r\n //5:子菜单入口\r\n if (leaf_flag == 1) {\r\n let tempMenuData = menuMaps[data.id];\r\n let parent_id = data.parent_id;\r\n let tempParentMenu = menuMaps[parent_id];\r\n if (tempParentMenu) {\r\n let parentChilden = tempParentMenu.children;\r\n parentChilden.push(tempMenuData);\r\n }\r\n }\r\n }\r\n const menuList = [];\r\n for (const data of datas) {\r\n let leaf_flag = data.leaf_flag;\r\n //4:主菜单入口\r\n if (leaf_flag == 0) {\r\n let tempMenuData = menuMaps[data.id];\r\n menuList.push(tempMenuData);\r\n let tempArrys = tempMenuData.children;\r\n tempArrys.sort((data1, data2) => {\r\n if (Number.isNaN(data1.sort)) return 1;\r\n if (Number.isNaN(data2.sort)) return -1;\r\n return data1.sort - data2.sort;\r\n });\r\n }\r\n }\r\n menuList.sort((data1, data2) => {\r\n if (Number.isNaN(data1.sort)) return 1;\r\n if (Number.isNaN(data2.sort)) return -1;\r\n return data1.sort - data2.sort;\r\n });\r\n return menuList;\r\n};\r\n\r\n/**\r\n * 获取当前用户默认的门户页面ID\r\n *\r\n * 该方法用于获取当前用户在门户中的默认页面ID\r\n * @param {信息} userData\r\n * @returns\r\n */\r\nexport const getCurrentUserPortalPageID = async (userData) => {\r\n let queryData = {\r\n param: {\r\n userData: userData,\r\n },\r\n };\r\n let response = await request.post(\r\n `/dataservice/rest/orchestration/getPortalPageID`,\r\n queryData\r\n );\r\n let portal_id = response.data.portal_id;\r\n return portal_id;\r\n};\r\n\r\n/**\r\n * 获取当前用户默认的门户页面ID\r\n *\r\n * 该方法用于获取当前用户在门户中的默认页面ID\r\n * @param {信息} userData\r\n * @returns\r\n */\r\nexport const getCurrentUserPortalMapping = async (userData) => {\r\n let queryData = {\r\n param: {\r\n userData: userData,\r\n },\r\n };\r\n let response = await request.post(\r\n `/dataservice/rest/orchestration/getPortalMappingInfo`,\r\n queryData\r\n );\r\n let portal_id = response.data.portal_info;\r\n return portal_id;\r\n};\r\n\r\n/**\r\n * 获取当前用户默认的门户页面ID\r\n *\r\n * 该方法用于获取当前用户在门户中的默认页面ID\r\n * @param {信息} userData\r\n * @returns\r\n */\r\nexport const getPortalInfosByID = async (id) => {\r\n let queryData = {\r\n param: {\r\n id: id,\r\n },\r\n };\r\n let response = await request.post(\r\n `/dataservice/rest/orchestration/getPortalInfosByID`,\r\n queryData\r\n );\r\n let portalInfo = response.data.portalInfo;\r\n return portalInfo;\r\n};\r\n\r\n/**\r\n * 通过租户名称模糊匹配获取租户信息\r\n *\r\n * @param {名称信息} name\r\n * @returns\r\n */\r\nexport const getTenetInfoByName = async (name) => {\r\n let queryData = {\r\n param: {\r\n name: name,\r\n },\r\n };\r\n let response = await request.post(\r\n `/dataservice/rest/orchestration/getTenetInfoByName`,\r\n queryData\r\n );\r\n let resultDatas = response.data.resultDatas;\r\n return resultDatas;\r\n};\r\n\r\n/**\r\n * 获取当前用户在门户中的所有映射数据\r\n * @param {信息} data\r\n * @returns\r\n */\r\nexport const getUserAllMappngPortal = (data) => {\r\n let queryData = {\r\n param: {\r\n userData: data,\r\n },\r\n };\r\n return request.post(\r\n `/dataservice/rest/orchestration/getUserAllMappngPortal`,\r\n queryData\r\n );\r\n};\r\n\r\n/**\r\n * 获取用户关联门户关联映射信息\r\n * @param {信息} data\r\n * @returns\r\n */\r\nexport const getPortalUserMappingInfos = async (data) => {\r\n let queryData = {\r\n param: {\r\n operateData: data,\r\n },\r\n };\r\n let responseData = await request.post(\r\n `/dataservice/rest/orchestration/getPortalUserMappingInfos`,\r\n queryData\r\n );\r\n let userMappingData = responseData.data.portalMapping;\r\n return userMappingData;\r\n};\r\n\r\n/**\r\n * 通过页面ID获取页面配置\r\n * @param {信息} data\r\n * @returns\r\n */\r\nexport const getPortalPageConfig = async (pageID) => {\r\n let queryData = {\r\n param: {\r\n id: pageID,\r\n },\r\n };\r\n let pageConfigResponse = await request.post(\r\n `/dataservice/rest/orchestration/getPortalPageConfig`,\r\n queryData\r\n );\r\n let configStr = pageConfigResponse.data.portal_page_config || \"[]\";\r\n return configStr;\r\n};\r\n\r\n/**\r\n * 通过页面ID设置页面配置\r\n * @param {信息} data\r\n * @returns\r\n */\r\nexport const setPortalPageConfig = (configData) => {\r\n let queryData = {\r\n param: configData,\r\n };\r\n return request.post(\r\n `/dataservice/rest/orchestration/setPortalPageConfig`,\r\n queryData\r\n );\r\n};\r\n\r\n/**\r\n * 更新用户选择的门户\r\n * @param {信息} data\r\n * @returns\r\n */\r\nexport const updateUserSelectPortal = (data) => {\r\n let queryData = {\r\n param: {\r\n portalMappingData: data,\r\n },\r\n };\r\n return request.post(\r\n `/dataservice/rest/orchestration/updateUserSelectPortal`,\r\n queryData\r\n );\r\n};\r\n\r\n/**\r\n * 获取当前用户在门户中的默认页面ID\r\n *\r\n * 该方法用于获取当前用户在门户中的默认页面ID\r\n * @param {信息} userData\r\n * @returns\r\n */\r\nexport const getPortalPageMenuID = async (pageID, app_id) => {\r\n let queryData = {\r\n param: {\r\n id: pageID,\r\n appid: app_id,\r\n },\r\n };\r\n let response = await request.post(\r\n `/dataservice/rest/orchestration/getPortalPageMenuID`,\r\n queryData\r\n );\r\n let menu_id = response.data.menu_id;\r\n return menu_id;\r\n};\r\n\r\n// 查询门户映射应用信息\r\n// * @param appID 应用ID\r\n// * @param groupID 集团ID\r\nexport const getMappingAppInfoByID = async (appID, groupID) => {\r\n let queryData = {\r\n param: {\r\n appID: appID,\r\n groupID: groupID,\r\n },\r\n };\r\n let resultData = await request.post(\r\n `/dataservice/rest/orchestration/getPortalMappingAppInfoByID`,\r\n queryData\r\n );\r\n let appInfo = resultData.data.appInfo;\r\n return appInfo;\r\n};\r\n\r\n/**\r\n *\r\n * @returns 获取门户登录页面的公告信息\r\n */\r\nexport const getLoginPageNotices = async (groupID) => {\r\n let queryData = {\r\n param: {\r\n id: \"1005\",\r\n groupID: groupID, // 集团ID\r\n },\r\n };\r\n let resultData = await request.post(\r\n `/dataservice/rest/orchestration/getNoticeInfosByAppTypeID`,\r\n queryData\r\n );\r\n let noticeInfos = resultData.data.resultDatas;\r\n return noticeInfos;\r\n};\r\n\r\n/**\r\n * 获取对应租户的组织的公告信息\r\n * @param {*} groupID \r\n * @returns \r\n */\r\nexport const getPortalNotices = async(groupID) => {\r\n let queryData={\r\n \"param\":{\r\n \"id\":groupID\r\n }\r\n };\r\n let resultData = await request.post(`/dataservice/rest/orchestration/getNoticesInfosByGroupID`, queryData);\r\n return resultData;\r\n}\r\n\r\n/**\r\n * 获取门户单点登录接入Token\r\n * @param {*} appKey\r\n * @param {*} appSecret\r\n * @returns\r\n */\r\nexport const getPortalAccessToken = async (appKey, appSecret) => {\r\n let result = await request.get(\r\n `/appAuth/getAccessToken?appKey=${appKey}&appSecret=${appSecret}`\r\n );\r\n let token = result.data;\r\n return token;\r\n};\r\n\r\n/**\r\n * 通过code和接入Token获取用户身份信息\r\n * @param {*} code\r\n * @param {*} access_token\r\n * @returns\r\n */\r\nexport const getPortalUserInfo = async (code, access_token) => {\r\n let result = await request.get(\r\n `/systhirdapp/user/getUserByCode?code=${code}&access_token=${access_token}`\r\n );\r\n let data = result.data;\r\n return data;\r\n};\r\n\r\n/**\r\n * 通过用户ID,平台类型,租户ID获取用户IM的签名ID\r\n * @param {*} userID\r\n * @param {*} platType\r\n * @param {*} groupID\r\n * @returns\r\n */\r\nexport const getPortalUserSig = async (userID, platType, groupID) => {\r\n let queryData = {\r\n param: {\r\n userID: userID,\r\n im_type: platType,\r\n group_id: groupID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getIMUserSigByID`,\r\n queryData\r\n );\r\n let sigID = result.data.userSig;\r\n return sigID;\r\n};\r\n\r\n/**\r\n * 通过租户ID获取门户应用的客户配置\r\n * @param {*} groupID\r\n * @returns\r\n */\r\nexport const getPortalAppCustomConfig = async (groupID) => {\r\n let requestData = {\r\n param: {\r\n groupID: groupID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getPortalAppCustomConfig`,\r\n requestData\r\n );\r\n let appInfo = result.data.configInfo;\r\n return appInfo;\r\n};\r\n\r\n/**\r\n * 查询当前企业组织的集团组织ID\r\n * @param id 组织ID\r\n *\r\n */\r\nexport const queryGroupIDByOfficeId = async (id) => {\r\n let queryData_office = {\r\n param: {\r\n id: id,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getGroupIDByDptID`,\r\n queryData_office\r\n );\r\n let groupDptData = result.data.resultDptData;\r\n let group_id = groupDptData.id;\r\n return group_id;\r\n};\r\n\r\n/**\r\n * 查询app变量\r\n * @param id 组织ID\r\n *\r\n */\r\nexport const queryAppVariable = (name, appVariables) => {\r\n if (appVariables && appVariables.length > 0) {\r\n for (let i = 0; i < appVariables.length; i++) {\r\n if (appVariables[i].name == name) {\r\n return appVariables[i].default_value;\r\n }\r\n }\r\n }\r\n return \"\";\r\n};\r\n\r\nexport const getThirdAppPathByKey = async (appkey, appSecret, groupID) => {\r\n let requestData = {\r\n param: {\r\n appKey: appkey,\r\n appSecret: appSecret,\r\n groupID: groupID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getThirdAppPathByKey`,\r\n requestData\r\n );\r\n let path = result.data.path;\r\n return path;\r\n};\r\n\r\nexport const queryAndStoreAppVariable = (name, appVariables) => {\r\n let value = window.sessionStorage.getItem(\"isdata_app_variable_\" + name);\r\n if (!value) {\r\n value = queryAppVariable(name, appVariables);\r\n if (value) {\r\n window.sessionStorage.setItem(\"isdata_app_variable_\" + name, value);\r\n }\r\n }\r\n return value;\r\n};\r\n\r\n/**\r\n * 添加或更新对象使用次数\r\n * @param {信息} data\r\n * @returns\r\n */\r\nexport const addObjectUsedTimes = (data) => {\r\n let queryData = {\r\n param: {\r\n operateData: data,\r\n },\r\n };\r\n return request.post(\r\n `/dataservice/rest/orchestration/addObjectUsedTimes`,\r\n queryData\r\n );\r\n};\r\n\r\n/**\r\n * 获取对象使用次数\r\n * @param {信息} data\r\n * @returns\r\n */\r\nexport const getObjectUseTimes = (data) => {\r\n let queryData = {\r\n param: {\r\n objectInfo: data,\r\n },\r\n };\r\n return request.post(\r\n `/dataservice/rest/orchestration/getObjectUseTimes`,\r\n queryData\r\n );\r\n};\r\n\r\n/**\r\n * 获取组件的页面ID\r\n * @param {信息} data\r\n * @returns\r\n */\r\nexport const getPageIDByComponentID = async (componentID) => {\r\n let queryData = {\r\n param: {\r\n componentID: componentID,\r\n },\r\n };\r\n let response = await request.post(\r\n `/dataservice/rest/orchestration/getPageIDByComponentID`,\r\n queryData\r\n );\r\n let pageID = response.data.page_id;\r\n return pageID;\r\n};\r\n\r\n/**\r\n * 通过账户名获取集团组织映射数据\r\n * @param {*} account\r\n * @returns\r\n */\r\nexport const getGroupMappingsByAccount = async (account) => {\r\n let queryData = {\r\n param: {\r\n account: account,\r\n },\r\n };\r\n let resultData = await request.post(\r\n `/dataservice/rest/orchestration/getGourpMappingsByAccountName`,\r\n queryData\r\n );\r\n let tenetGroupDatas = resultData.data.resultGroups;\r\n return tenetGroupDatas;\r\n};\r\n\r\n/**\r\n * 通过手机号获取集团组织映射数据\r\n * @param {*} phone \r\n * @returns \r\n */\r\nexport const getGourpMappingsByPhoneNumber = async (phone) => {\r\n let queryData = {\r\n param: {\r\n phone: phone,\r\n },\r\n };\r\n let resultData = await request.post(\r\n `/dataservice/rest/orchestration/getGourpMappingsByPhoneNumber`,\r\n queryData\r\n );\r\n let tenetGroupDatas = resultData.data.resultGroups;\r\n return tenetGroupDatas;\r\n};\r\n\r\n/**\r\n * 查询当前企业组织的集团组织ID\r\n * @param id 组织ID\r\n *\r\n */\r\nexport const queryGroupInfosByOfficeId = async (id) => {\r\n let queryData_office = {\r\n param: {\r\n id: id,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getGroupIDByDptID`,\r\n queryData_office\r\n );\r\n let groupDptData = result.data.resultDptData;\r\n return groupDptData;\r\n};\r\n\r\n/**\r\n * 查询当前企业组织信息\r\n * @param id 组织ID\r\n *\r\n */\r\nexport const getOfficeInfosByIDs = async (group_ids) => {\r\n let queryData_groupData = {\r\n param: {\r\n ids: group_ids,\r\n },\r\n };\r\n let resultData = await request.post(\r\n `/dataservice/rest/orchestration/getOfficeInfosByIDs`,\r\n queryData_groupData\r\n );\r\n let groupDatas = resultData.data.officeInfos;\r\n return groupDatas;\r\n};\r\n\r\n/**\r\n * 查询当前企业组织信息\r\n * @param id 组织ID\r\n *\r\n */\r\nexport const queryOfficeInfosById = async (officeID) => {\r\n let queryData = {\r\n param: {\r\n id: officeID,\r\n },\r\n };\r\n let resultData = await request.post(\r\n `/dataservice/rest/orchestration/getOfficeInfosByID`,\r\n queryData\r\n );\r\n let groupDptData = resultData.data.officeData;\r\n return groupDptData;\r\n};\r\n\r\n/**\r\n * 获取应用信息通过ID\r\n * @param {*} id\r\n * @returns\r\n */\r\nexport const getAPPInfosByID = async (id) => {\r\n let queryData = {\r\n param: {\r\n id: id,\r\n },\r\n };\r\n let resultData = await request.post(\r\n `/dataservice/rest/orchestration/getAPPInfosByID`,\r\n queryData\r\n );\r\n let groupDptData = resultData.data.appInfo;\r\n return groupDptData;\r\n};\r\n\r\nexport const getAllUserInfosByGroupID = async (groupID) => {\r\n let requestData = {\r\n param: {\r\n groupID: groupID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getAllUserInfosByGroupID`,\r\n requestData\r\n );\r\n let data = result.data.resultDatas;\r\n return data;\r\n};\r\n\r\nexport const getChildrenOfficeInfosByID = async (officeID) => {\r\n let requestData = {\r\n param: {\r\n officeID: officeID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getChildrenOfficeInfosByID`,\r\n requestData\r\n );\r\n let data = result.data.resultDatas;\r\n return data;\r\n};\r\n\r\nexport const getPojectDptsByUserAndGroupID = async (userID, groupID) => {\r\n let requestData = {\r\n param: {\r\n userID: userID,\r\n groupID: groupID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getPojectDptsByUserAndGroupID`,\r\n requestData\r\n );\r\n let data = {\r\n dptDatas: result.data.officeDatas,\r\n userMappings: result.data.userMappings,\r\n };\r\n return data;\r\n};\r\n\r\n/**\r\n * 添加IM签名ID映射关系\r\n */\r\nexport const addIMMapping = async (userID, platType, groupID, sigID) => {\r\n let queryData = {\r\n param: {\r\n data: {\r\n userID: userID,\r\n im_type: platType,\r\n group_id: groupID,\r\n userSig: sigID,\r\n },\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/addIMMapping`,\r\n queryData\r\n );\r\n let resultData = result.data;\r\n return resultData;\r\n};\r\n\r\nexport const getAIRobotInfos = async (userID, groupID) => {\r\n let requestData = {\r\n param: {\r\n userID: userID,\r\n groupID: groupID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getAIRobotInfos`,\r\n requestData\r\n );\r\n let infos = result.data.robotInfos;\r\n return infos;\r\n};\r\n\r\n/**\r\n * 添加IM签名ID映射关系\r\n */\r\nexport const updateIMMapping = async (userID, platType, groupID, sigID) => {\r\n let queryData = {\r\n param: {\r\n userID: userID,\r\n im_type: platType,\r\n groupID: groupID,\r\n userSig: sigID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/updateIMMapping`,\r\n queryData\r\n );\r\n let resultData = result.data;\r\n return resultData;\r\n};\r\n\r\n/**\r\n * 获取应用自定义数据\r\n * @param {*} appID\r\n * @returns\r\n */\r\nexport const getAppCustomData = async (appID) => {\r\n let requestData = {\r\n param: {\r\n appID: appID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getAppCustomData`,\r\n requestData\r\n );\r\n let infos = result.data.customData;\r\n infos = infos ? JSON.parse(infos) : {};\r\n return infos;\r\n};\r\n\r\n/**\r\n * 获取集成应用的信息\r\n * @param {*} appID\r\n * @returns\r\n */\r\nexport const getIntegrateAppInfoByID = async (appID) => {\r\n let requestData = {\r\n param: {\r\n appID: appID,\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getIntegrateAppInfoByID`,\r\n requestData\r\n );\r\n let appInfo = result.data.appInfo;\r\n return appInfo;\r\n};\r\n\r\n// 更新服务器i18n文本\r\nexport const savePortalI18nText=async(key, value,lang,beyondID,i18nType)=>{\r\n let app_id =getPoratlAppID();\r\n let requestData = {\r\n param: {\r\n key: key,\r\n value: value,\r\n appID:app_id,\r\n lang:lang,\r\n beyondID:beyondID,\r\n i18nType:i18nType\r\n },\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/savePortalI18nText`,\r\n requestData\r\n );\r\n let resultData = result.data.resultData;\r\n return resultData;\r\n};\r\n\r\n\r\n// 通过账户名和租户获取手机号\r\nexport const getPhoneNumberByAccountName=async(accountName,groupID)=>{\r\n let requestData = {\r\n param:{\r\n accountName: accountName,\r\n groupID: groupID,\r\n }\r\n };\r\n let result = await request.post(\r\n `/dataservice/rest/orchestration/getPhoneNumberByAccountName`,\r\n requestData\r\n );\r\n let phone = result.data.phone;\r\n return phone;\r\n};\r\n"],"names":["querystringify_1","apiContextPath","getInstance","prefix","startsWith","slice","length","endsWith","instance","axios","create","baseURL","timeout","validateStatus","status","headers","window","location","search","qs","parse","token","oldPost","post","url","data","config","VITE_SERVICE_BASE_URL","newUrl","call","defaults","interceptors","response","use","JSON","Blob","Promise","reject","result","error","prefixPath","getPoratlAppID","portal_app_id","sessionStorage","getItem","getCurrentAppID","app_id","appSdk","getAppId","localStorage","MobileAppId","getAppPortalMenuDatas","user_id","group_id","isPortalAction","appVariables","roleList","getRoleIDsByUserAndGroupID","portalMenuDatas","getMenuDatasByGroupID","menuDatas","filter","menuData","types","children","hasTargetMenu","forEach","type","newTypeChilden","child","role_ids","queryData_groupData","param","id","request","resultDatas","menuTypes","defaultMenuDatas","defaultMenuType","tempMenuDatas","concat","tempMenuType","finalMenuDatas","finaMenuTypes","tempMap","tempData","isList","push","tempTypeMap","tempType","getMenuMappingDatasByRoleIDs","quickMenuMappingDatas","filterObjectMap","menu_mapping_id","quickMenuMapping","transformPortalData","validateSSOPageLoaded","appSecret","returnUrl","resultCount","count","queryData","portal_role_ids","getPortalDocmentInfo","kb_doc_id","docInfo","getPlatformBortherMenusByMenuID","menu_id","sysMenuDatas","roleMenuMappingDatas","getPlatformMenuMappingsByRoleIDs","roleMenuMappingMap","mappingData","menuMaps","item","leaf_flag","iconClass","tempItem","index","name","isSys","actionType","action_type","datapp_id","sort","parent_id","parentItem","menuItem","key","data1","data2","Number","isNaN","mappingDatas","datas","menuTypeMaps","parentMaps","tempMenuData","title","image","beyond_type","menu_type","beyond_type_sort","menu_type_sort","typeID","is_app_defalut","tempParentMenu","parentTypes","parentType","find","tempTypeItem","type_childens","typeItem","menuTypeObj","value","menuList","menuType","tempCount","tempArrys","transformPortalQuickMenuDatas","quickDatas","defaultDatas","tempDatas","tempDatasMap","quickMenuMaps","label","parentChilden","transformPortalSystemMenuDatas","icon","getCurrentUserPortalPageID","userData","portal_id","getCurrentUserPortalMapping","portal_info","getPortalInfosByID","portalInfo","getTenetInfoByName","getUserAllMappngPortal","getPortalUserMappingInfos","operateData","responseData","userMappingData","portalMapping","getPortalPageConfig","pageID","pageConfigResponse","configStr","portal_page_config","setPortalPageConfig","configData","updateUserSelectPortal","portalMappingData","getPortalPageMenuID","appid","getMappingAppInfoByID","appID","groupID","resultData","appInfo","getLoginPageNotices","noticeInfos","getPortalNotices","getPortalAccessToken","appKey","get","getPortalUserInfo","code","access_token","getPortalUserSig","userID","platType","im_type","sigID","userSig","getPortalAppCustomConfig","requestData","configInfo","queryGroupIDByOfficeId","queryData_office","groupDptData","resultDptData","queryAppVariable","i","default_value","getThirdAppPathByKey","appkey","path","queryAndStoreAppVariable","setItem","addObjectUsedTimes","getObjectUseTimes","objectInfo","getPageIDByComponentID","componentID","page_id","getGroupMappingsByAccount","account","tenetGroupDatas","resultGroups","getGourpMappingsByPhoneNumber","phone","queryGroupInfosByOfficeId","getOfficeInfosByIDs","group_ids","ids","groupDatas","officeInfos","queryOfficeInfosById","officeID","officeData","getAPPInfosByID","getAllUserInfosByGroupID","getChildrenOfficeInfosByID","getPojectDptsByUserAndGroupID","dptDatas","officeDatas","userMappings","addIMMapping","getAIRobotInfos","infos","robotInfos","updateIMMapping","getAppCustomData","customData","getIntegrateAppInfoByID","savePortalI18nText","lang","beyondID","i18nType","getPhoneNumberByAccountName","accountName"],"mappings":"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","x_google_ignoreList":[0]}
@@ -0,0 +1 @@
1
+ "use strict";var i=require("axios"),e=require("crypto-js"),t={},o=Object.prototype.hasOwnProperty;function r(i){try{return decodeURIComponent(i.replace(/\+/g," "))}catch(i){return null}}function a(i){try{return encodeURIComponent(i)}catch(i){return null}}t.stringify=function(i,e){e=e||"";var t,r,s=[];for(r in"string"!=typeof e&&(e="?"),i)if(o.call(i,r)){if((t=i[r])||null!=t&&!isNaN(t)||(t=""),r=a(r),t=a(t),null===r||null===t)continue;s.push(r+"="+t)}return s.length?e+s.join("&"):""},t.parse=function(i){for(var e,t=/([^=?#&]+)=?([^&]*)/g,o={};e=t.exec(i);){var a=r(e[1]),s=r(e[2]);null===a||null===s||a in o||(o[a]=s)}return o};var s,n=((e="")=>{e&&(e.startsWith("/")&&(e=e.slice(1,e.length)),e.endsWith("/")&&(e=e.slice(0,-1)));const o=i.create({baseURL:`/${e?e+"/":""}sdata/rest`,timeout:6e4,validateStatus:function(i){return i>=200&&i<300},headers:window.location.search&&t.parse(window.location.search).token||window.token?{token:t.parse(window.location.search).token||window.token}:{}});let r=o.post;return o.post=(i,e,t)=>{let a=window.VITE_SERVICE_BASE_URL||"";if(a){let s=a+i;return r.call(o,s,e,t)}return r.call(o,i,e,t)},o.defaults.headers.post["Content-Type"]="application/json",o.interceptors.response.use(i=>{let{data:e}=i;return"string"==typeof e&&(e=JSON.parse(e)),!e||200===e.status||e instanceof Blob?e instanceof Blob?(i.data=e,i):(i.data=e&&e.result,i):Promise.reject(i)},i=>{if(!i.response||401!==i.response.status)return Promise.reject(i.response)}),o})(window.prefixPath||""),w="user-agent",d="",c="function",l="object",p="string",b="undefined",u="browser",h="cpu",m="device",g="engine",f="os",v="result",y="name",k="type",x="vendor",S="version",_="architecture",C="major",A="model",I="console",O="mobile",q="tablet",z="smarttv",E="wearable",T="xr",j="embedded",P="inapp",V="brands",M="formFactors",B="fullVersionList",H="platform",N="platformVersion",R="bitness",U="sec-ch-ua",L=U+"-full-version-list",$=U+"-arch",W=U+"-"+R,D=U+"-form-factors",F=U+"-"+O,G=U+"-"+A,X=U+"-"+H,J=X+"-version",K=[V,B,O,A,H,N,_,M,R],Y="Amazon",Z="Apple",Q="ASUS",ii="BlackBerry",ei="Google",ti="Huawei",oi="Lenovo",ri="Honor",ai="LG",si="Microsoft",ni="Motorola",wi="Nvidia",di="OnePlus",ci="OPPO",li="Samsung",pi="Sharp",bi="Sony",ui="Xiaomi",hi="Zebra",mi="Chrome",gi="Chromium",fi="Chromecast",vi="Edge",yi="Firefox",ki="Opera",xi="Facebook",Si="Sogou",_i="Mobile ",Ci=" Browser",Ai="Windows",Ii=typeof window!==b&&window.navigator?window.navigator:void 0,Oi=Ii&&Ii.userAgentData?Ii.userAgentData:void 0,qi=function(i){for(var e={},t=0;t<i.length;t++)e[i[t].toUpperCase()]=i[t];return e},zi=function(i,e){if(typeof i===l&&i.length>0){for(var t in i)if(Pi(e)==Pi(i[t]))return!0;return!1}return!!Ti(i)&&Pi(e)==Pi(i)},Ei=function(i,e){for(var t in i)return/^(browser|cpu|device|engine|os)$/.test(t)||!!e&&Ei(i[t])},Ti=function(i){return typeof i===p},ji=function(i){if(i){for(var e=[],t=Bi(/\\?\"/g,i).split(","),o=0;o<t.length;o++)if(t[o].indexOf(";")>-1){var r=Ni(t[o]).split(";v=");e[o]={brand:r[0],version:r[1]}}else e[o]=Ni(t[o]);return e}},Pi=function(i){return Ti(i)?i.toLowerCase():i},Vi=function(i){return Ti(i)?Bi(/[^\d\.]/g,i).split(".")[0]:void 0},Mi=function(i){for(var e in i)if(i.hasOwnProperty(e)){var t=i[e];typeof t==l&&2==t.length?this[t[0]]=t[1]:this[t]=void 0}return this},Bi=function(i,e){return Ti(e)?e.replace(i,d):e},Hi=function(i){return Bi(/\\?\"/g,i)},Ni=function(i,e){return i=Bi(/^\s\s*/,String(i)),typeof e===b?i:i.substring(0,e)},Ri=function(i,e){if(i&&e)for(var t,o,r,a,s,n,w=0;w<e.length&&!s;){var d=e[w],p=e[w+1];for(t=o=0;t<d.length&&!s&&d[t];)if(s=d[t++].exec(i))for(r=0;r<p.length;r++)n=s[++o],typeof(a=p[r])===l&&a.length>0?2===a.length?typeof a[1]==c?this[a[0]]=a[1].call(this,n):this[a[0]]=a[1]:a.length>=3&&(typeof a[1]!==c||a[1].exec&&a[1].test?3==a.length?this[a[0]]=n?n.replace(a[1],a[2]):void 0:4==a.length?this[a[0]]=n?a[3].call(this,n.replace(a[1],a[2])):void 0:a.length>4&&(this[a[0]]=n?a[3].apply(this,[n.replace(a[1],a[2])].concat(a.slice(4))):void 0):a.length>3?this[a[0]]=n?a[1].apply(this,a.slice(2)):void 0:this[a[0]]=n?a[1].call(this,n,a[2]):void 0):this[a]=n||void 0;w+=2}},Ui=function(i,e){for(var t in e)if(typeof e[t]===l&&e[t].length>0){for(var o=0;o<e[t].length;o++)if(zi(e[t][o],i))return"?"===t?void 0:t}else if(zi(e[t],i))return"?"===t?void 0:t;return e.hasOwnProperty("*")?e["*"]:i},Li={ME:"4.90","NT 3.51":"3.51","NT 4.0":"4.0",2e3:["5.0","5.01"],XP:["5.1","5.2"],Vista:"6.0",7:"6.1",8:"6.2",8.1:"6.3",10:["6.4","10.0"],NT:""},$i={embedded:"Automotive",mobile:"Mobile",tablet:["Tablet","EInk"],smarttv:"TV",wearable:"Watch",xr:["VR","XR"],"?":["Desktop","Unknown"],"*":void 0},Wi={Chrome:"Google Chrome",Edge:"Microsoft Edge","Edge WebView2":"Microsoft Edge WebView2","Chrome WebView":"Android WebView","Chrome Headless":"HeadlessChrome","Huawei Browser":"HuaweiBrowser","MIUI Browser":"Miui Browser","Opera Mobi":"OperaMobile",Yandex:"YaBrowser"},Di={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[S,[y,_i+"Chrome"]],[/webview.+edge\/([\w\.]+)/i],[S,[y,vi+" WebView"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[S,[y,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[y,S],[/opios[\/ ]+([\w\.]+)/i],[S,[y,ki+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[S,[y,ki+" GX"]],[/\bopr\/([\w\.]+)/i],[S,[y,ki]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[S,[y,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[S,[y,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon|otter|dooble|(?:lg |qute)browser|palemoon)\/([-\w\.]+)/i,/(heytap|ovi|115|surf|qwant)browser\/([\d\.]+)/i,/(qwant)(?:ios|mobile)\/([\d\.]+)/i,/(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i],[y,S],[/quark(?:pc)?\/([-\w\.]+)/i],[S,[y,"Quark"]],[/\bddg\/([\w\.]+)/i],[S,[y,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[S,[y,"UCBrowser"]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[S,[y,"WeChat"]],[/konqueror\/([\w\.]+)/i],[S,[y,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[S,[y,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[S,[y,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[S,[y,"Smart "+oi+Ci]],[/(avast|avg)\/([\w\.]+)/i],[[y,/(.+)/,"$1 Secure"+Ci],S],[/\bfocus\/([\w\.]+)/i],[S,[y,yi+" Focus"]],[/\bopt\/([\w\.]+)/i],[S,[y,ki+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[S,[y,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[S,[y,"Dolphin"]],[/coast\/([\w\.]+)/i],[S,[y,ki+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[S,[y,"MIUI"+Ci]],[/fxios\/([\w\.-]+)/i],[S,[y,_i+yi]],[/\bqihoobrowser\/?([\w\.]*)/i],[S,[y,"360"]],[/\b(qq)\/([\w\.]+)/i],[[y,/(.+)/,"$1Browser"],S],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[y,/(.+)/,"$1"+Ci],S],[/samsungbrowser\/([\w\.]+)/i],[S,[y,li+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[S,[y,Si+" Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[y,Si+" Mobile"],S],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[y,S],[/(lbbrowser|rekonq)/i],[y],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[S,y],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[y,xi],S,[k,P]],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/(daum)apps[\/ ]([\w\.]+)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(bing)(?:web|sapphire)\/([\w\.]+)/i,/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i],[y,S,[k,P]],[/\bgsa\/([\w\.]+) .*safari\//i],[S,[y,"GSA"],[k,P]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[S,[y,"TikTok"],[k,P]],[/\[(linkedin)app\]/i],[y,[k,P]],[/(zalo(?:app)?)[\/\sa-z]*([\w\.-]+)/i],[[y,/(.+)/,"Zalo"],S,[k,P]],[/(chromium)[\/ ]([-\w\.]+)/i],[y,S],[/headlesschrome(?:\/([\w\.]+)| )/i],[S,[y,mi+" Headless"]],[/wv\).+chrome\/([\w\.]+).+edgw\//i],[S,[y,vi+" WebView2"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[y,mi+" WebView"],S],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[S,[y,"Android"+Ci]],[/chrome\/([\w\.]+) mobile/i],[S,[y,_i+"Chrome"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[y,S],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[S,[y,_i+"Safari"]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[y,_i+"Safari"]],[/version\/([\w\.\,]+) .*(safari)/i],[S,y],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[y,[S,"1"]],[/(webkit|khtml)\/([\w\.]+)/i],[y,S],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[y,_i+yi],S],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[y,"Netscape"],S],[/(wolvic|librewolf)\/([\w\.]+)/i],[y,S],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[S,[y,yi+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+(?= .+rv\:.+gecko\/\d+)|[0-4][\w\.]+(?!.+compatible))/i,/(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/\b(links) \(([\w\.]+)/i],[y,[S,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[y,[S,/[^\d\.]+./,d]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[_,"amd64"]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[_,"ia32"]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[_,"arm64"]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[_,"armhf"]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[_,"arm"]],[/ sun4\w[;\)]/i],[[_,"sparc"]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i,/((ppc|powerpc)(64)?)( mac|;|\))/i,/(?:osf1|[freopnt]{3,4}bsd) (alpha)/i],[[_,/ower/,d,Pi]],[/mc680.0/i],[[_,"68k"]],[/winnt.+\[axp/i],[[_,"alpha"]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[A,[x,li],[k,q]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,/sec-(sgh\w+)/i],[A,[x,li],[k,O]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)[\/\);]/i],[A,[x,Z],[k,O]],[/\b(?:ios|apple\w+)\/.+[\(\/](ipad)/i,/\b(ipad)[\d,]*[;\] ].+(mac |i(pad)?)os/i],[A,[x,Z],[k,q]],[/(macintosh);/i],[A,[x,Z]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[A,[x,pi],[k,O]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[A,[x,ri],[k,q]],[/honor([-\w ]+)[;\)]/i],[A,[x,ri],[k,O]],[/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],[A,[x,ti],[k,q]],[/(?:huawei) ?([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][\dc][adnt]?)\b(?!.+d\/s)/i],[A,[x,ti],[k,O]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b(?:xiao)?((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[A,/_/g," "],[x,ui],[k,q]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note|max|cc)?[_ ]?(?:\d{0,2}\w?)[_ ]?(?:plus|se|lite|pro)?( 5g|lte)?)(?: bui|\))/i,/ ([\w ]+) miui\/v?\d/i],[[A,/_/g," "],[x,ui],[k,O]],[/droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-k]\w[1m]10)\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[A,[x,di],[k,O]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[A,[x,ci],[k,O]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[A,[x,Ui,{OnePlus:["203","304","403","404","413","415"],"*":ci}],[k,q]],[/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i],[A,[x,"BLU"],[k,O]],[/; vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[A,[x,"Vivo"],[k,O]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[A,[x,"Realme"],[k,O]],[/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],[A,[x,oi],[k,q]],[/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i],[A,[x,oi],[k,O]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i],[A,[x,ni],[k,O]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[A,[x,ni],[k,q]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[A,[x,ai],[k,q]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,/\blg-?([\d\w]+) bui/i],[A,[x,ai],[k,O]],[/(nokia) (t[12][01])/i],[x,A,[k,q]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*?))( bui|\)|;|\/)/i],[[A,/_/g," "],[k,O],[x,"Nokia"]],[/(pixel (c|tablet))\b/i],[A,[x,ei],[k,q]],[/droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i],[A,[x,ei],[k,O]],[/(google) (pixelbook( go)?)/i],[x,A],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[A,[x,bi],[k,O]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[A,"Xperia Tablet"],[x,bi],[k,q]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[A,[x,Y],[k,q]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[A,/(.+)/g,"Fire Phone $1"],[x,Y],[k,O]],[/(playbook);[-\w\),; ]+(rim)/i],[A,x,[k,q]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/(?:blackberry|\(bb10;) (\w+)/i],[A,[x,ii],[k,O]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[A,[x,Q],[k,q]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[A,[x,Q],[k,O]],[/(nexus 9)/i],[A,[x,"HTC"],[k,q]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[x,[A,/_/g," "],[k,O]],[/tcl (xess p17aa)/i,/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i],[A,[x,"TCL"],[k,q]],[/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i],[A,[x,"TCL"],[k,O]],[/(itel) ((\w+))/i],[[x,Pi],A,[k,Ui,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[A,[x,"Acer"],[k,q]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[A,[x,"Meizu"],[k,O]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[A,[x,"Ulefone"],[k,O]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[A,[x,"Energizer"],[k,O]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[A,[x,"Cat"],[k,O]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[A,[x,"Smartfren"],[k,O]],[/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i],[A,[x,"Nothing"],[k,O]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[A,[x,"Archos"],[k,q]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[A,[x,"Archos"],[k,O]],[/; (n159v)/i],[A,[x,"HMD"],[k,O]],[/(imo) (tab \w+)/i,/(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i],[x,A,[k,q]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (blu|hmd|imo|infinix|lava|oneplus|tcl|wiko)[_ ]([\w\+ ]+?)(?: bui|\)|; r)/i,/(hp) ([\w ]+\w)/i,/(microsoft); (lumia[\w ]+)/i,/(oppo) ?([\w ]+) bui/i,/(hisense) ([ehv][\w ]+)\)/i,/droid[^;]+; (philips)[_ ]([sv-x][\d]{3,4}[xz]?)/i],[x,A,[k,O]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[x,A,[k,q]],[/(surface duo)/i],[A,[x,si],[k,q]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[A,[x,"Fairphone"],[k,O]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[A,[x,wi],[k,q]],[/(sprint) (\w+)/i],[x,A,[k,O]],[/(kin\.[onetw]{3})/i],[[A,/\./g," "],[x,si],[k,O]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[A,[x,hi],[k,q]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[A,[x,hi],[k,O]],[/(philips)[\w ]+tv/i,/smart-tv.+(samsung)/i],[x,[k,z]],[/hbbtv.+maple;(\d+)/i],[[A,/^/,"SmartTV"],[x,li],[k,z]],[/(vizio)(?: |.+model\/)(\w+-\w+)/i,/tcast.+(lg)e?. ([-\w]+)/i],[x,A,[k,z]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[x,ai],[k,z]],[/(apple) ?tv/i],[x,[A,Z+" TV"],[k,z]],[/crkey.*devicetype\/chromecast/i],[[A,fi+" Third Generation"],[x,ei],[k,z]],[/crkey.*devicetype\/([^/]*)/i],[[A,/^/,"Chromecast "],[x,ei],[k,z]],[/fuchsia.*crkey/i],[[A,fi+" Nest Hub"],[x,ei],[k,z]],[/crkey/i],[[A,fi],[x,ei],[k,z]],[/(portaltv)/i],[A,[x,xi],[k,z]],[/droid.+aft(\w+)( bui|\))/i],[A,[x,Y],[k,z]],[/(shield \w+ tv)/i],[A,[x,wi],[k,z]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[A,[x,pi],[k,z]],[/(bravia[\w ]+)( bui|\))/i],[A,[x,bi],[k,z]],[/(mi(tv|box)-?\w+) bui/i],[A,[x,ui],[k,z]],[/Hbbtv.*(technisat) (.*);/i],[x,A,[k,z]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[x,/.+\/(\w+)/,"$1",Ui,{LG:"lge"}],[A,Ni],[k,z]],[/(playstation \w+)/i],[A,[x,bi],[k,I]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[A,[x,si],[k,I]],[/(ouya)/i,/(nintendo) (\w+)/i,/(retroid) (pocket ([^\)]+))/i],[x,A,[k,I]],[/droid.+; (shield)( bui|\))/i],[A,[x,wi],[k,I]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[A,[x,li],[k,E]],[/((pebble))app/i,/(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[x,A,[k,E]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[A,[x,ci],[k,E]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[A,[x,Z],[k,E]],[/(opwwe\d{3})/i],[A,[x,di],[k,E]],[/(moto 360)/i],[A,[x,ni],[k,E]],[/(smartwatch 3)/i],[A,[x,bi],[k,E]],[/(g watch r)/i],[A,[x,ai],[k,E]],[/droid.+; (wt63?0{2,3})\)/i],[A,[x,hi],[k,E]],[/droid.+; (glass) \d/i],[A,[x,ei],[k,T]],[/(pico) ([\w ]+) os\d/i],[x,A,[k,T]],[/(quest( \d| pro)?s?).+vr/i],[A,[x,xi],[k,T]],[/mobile vr; rv.+firefox/i],[[k,T]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[x,[k,j]],[/(aeobc)\b/i],[A,[x,Y],[k,j]],[/(homepod).+mac os/i],[A,[x,Z],[k,j]],[/windows iot/i],[[k,j]],[/droid.+; ([\w- ]+) (4k|android|smart|google)[- ]?tv/i],[A,[k,z]],[/\b((4k|android|smart|opera)[- ]?tv|tv; rv:|large screen[\w ]+safari)\b/i],[[k,z]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew|; hmsc).+?(mobile|vr|\d) safari/i],[A,[k,Ui,{mobile:"Mobile",xr:"VR","*":q}]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[k,q]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[k,O]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[A,[x,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[S,[y,vi+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[y,S],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[S,[y,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[y,S],[/ladybird\//i],[[y,"LibWeb"]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[S,y]],os:[[/(windows nt) (6\.[23]); arm/i],[[y,/N/,"R"],[S,Ui,Li]],[/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,/(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i],[y,S],[/windows nt ?([\d\.\)]*)(?!.+xbox)/i,/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i],[[S,/(;|\))/g,"",Ui,Li],[y,Ai]],[/(windows ce)\/?([\d\.]*)/i],[y,S],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv|ios(?=.+ip(?:ad|hone))|ip(?:ad|hone)(?: |.+i(?:pad)?)os)[\/ ]([\w\.]+)/i,/cfnetwork\/.+darwin/i],[[S,/_/g,"."],[y,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i],[[y,"macOS"],[S,/_/g,"."]],[/android ([\d\.]+).*crkey/i],[S,[y,fi+" Android"]],[/fuchsia.*crkey\/([\d\.]+)/i],[S,[y,fi+" Fuchsia"]],[/crkey\/([\d\.]+).*devicetype\/smartspeaker/i],[S,[y,fi+" SmartSpeaker"]],[/linux.*crkey\/([\d\.]+)/i],[S,[y,fi+" Linux"]],[/crkey\/([\d\.]+)/i],[S,[y,fi]],[/droid ([\w\.]+)\b.+(android[- ]x86)/i],[S,y],[/(ubuntu) ([\w\.]+) like android/i],[[y,/(.+)/,"$1 Touch"],S],[/(harmonyos)[\/ ]?([\d\.]*)/i,/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i],[y,S],[/\(bb(10);/i],[S,[y,ii]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[S,[y,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[S,[y,yi+" OS"]],[/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i],[S,[y,"webOS"]],[/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i],[[S,Ui,{25:"120",24:"108",23:"94",22:"87",6:"79",5:"68",4:"53",3:"38",2:"538",1:"537","*":"TV"}],[y,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[S,[y,"watchOS"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[y,"Chrome OS"],S],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/(pico) .+os([\w\.]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/linux.+(mint)[\/\(\) ]?([\w\.]*)/i,/(mageia|vectorlinux|fuchsia|arcaos|arch(?= ?linux))[;l ]([\d\.]*)/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire|knoppix)(?: gnu[\/ ]linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/\b(aix)[; ]([1-9\.]{0,4})/i,/(hurd|linux|morphos)(?: (?:arm|x86|ppc)\w*| ?)([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) ?(r\d)?/i],[y,S],[/(sunos) ?([\d\.]*)/i],[[y,"Solaris"],S],[/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[y,S]]},Fi=(Mi.call((s={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}}).init,[[u,[y,S,C,k]],[h,[_]],[m,[k,A,x]],[g,[y,S]],[f,[y,S]]]),Mi.call(s.isIgnore,[[u,[S,C]],[g,[S]],[f,[S]]]),Mi.call(s.isIgnoreRgx,[[u,/ ?browser$/i],[f,/ ?os$/i]]),Mi.call(s.toString,[[u,[y,S]],[h,[_]],[m,[x,A]],[g,[y,S]],[f,[y,S]]]),s),Gi=function(i,e){var t=Fi.init[e],o=Fi.isIgnore[e]||0,r=Fi.isIgnoreRgx[e]||0,a=Fi.toString[e]||0;function s(){Mi.call(this,t)}return s.prototype.getItem=function(){return i},s.prototype.withClientHints=function(){return Oi?Oi.getHighEntropyValues(K).then(function(e){return i.setCH(new Xi(e,!1)).parseCH().get()}):i.parseCH().get()},s.prototype.withFeatureCheck=function(){return i.detectFeature().get()},e!=v&&(s.prototype.is=function(i){var e=!1;for(var t in this)if(this.hasOwnProperty(t)&&!zi(o,t)&&Pi(r?Bi(r,this[t]):this[t])==Pi(r?Bi(r,i):i)){if(e=!0,i!=b)break}else if(i==b&&e){e=!e;break}return e},s.prototype.toString=function(){var i=d;for(var e in a)typeof this[a[e]]!==b&&(i+=(i?" ":d)+this[a[e]]);return i||b}),Oi||(s.prototype.then=function(i){var e=this,t=function(){for(var i in e)e.hasOwnProperty(i)&&(this[i]=e[i])};t.prototype={is:s.prototype.is,toString:s.prototype.toString};var o=new t;return i(o),o}),new s};function Xi(i,e){if(i=i||{},Mi.call(this,K),e)Mi.call(this,[[V,ji(i[U])],[B,ji(i[L])],[O,/\?1/.test(i[F])],[A,Hi(i[G])],[H,Hi(i[X])],[N,Hi(i[J])],[_,Hi(i[$])],[M,ji(i[D])],[R,Hi(i[W])]]);else for(var t in i)this.hasOwnProperty(t)&&typeof i[t]!==b&&(this[t]=i[t])}function Ji(i,e,t,o){return this.get=function(i){return i?this.data.hasOwnProperty(i)?this.data[i]:void 0:this.data},this.set=function(i,e){return this.data[i]=e,this},this.setCH=function(i){return this.uaCH=i,this},this.detectFeature=function(){if(Ii&&Ii.userAgent==this.ua)switch(this.itemType){case u:Ii.brave&&typeof Ii.brave.isBrave==c&&this.set(y,"Brave");break;case m:!this.get(k)&&Oi&&Oi[O]&&this.set(k,O),"Macintosh"==this.get(A)&&Ii&&typeof Ii.standalone!==b&&Ii.maxTouchPoints&&Ii.maxTouchPoints>2&&this.set(A,"iPad").set(k,q);break;case f:!this.get(y)&&Oi&&Oi[H]&&this.set(y,Oi[H]);break;case v:var i=this.data,e=function(e){return i[e].getItem().detectFeature().get()};this.set(u,e(u)).set(h,e(h)).set(m,e(m)).set(g,e(g)).set(f,e(f))}return this},this.parseUA=function(){switch(this.itemType!=v&&Ri.call(this.data,this.ua,this.rgxMap),this.itemType){case u:this.set(C,Vi(this.get(S)));break;case f:if("iOS"==this.get(y)&&"18.6"==this.get(S)){var i=/\) Version\/([\d\.]+)/.exec(this.ua);i&&parseInt(i[1].substring(0,2),10)>=26&&this.set(S,i[1])}}return this},this.parseCH=function(){var i=this.uaCH,e=this.rgxMap;switch(this.itemType){case u:case g:var t,o=i[B]||i[V];if(o)for(var r=0;r<o.length;r++){var a=o[r].brand||o[r],s=o[r].version;this.itemType==u&&!/not.a.brand/i.test(a)&&(!t||/Chrom/.test(t)&&a!=gi||t==vi&&/WebView2/.test(a))&&(a=Ui(a,Wi),(t=this.get(y))&&!/Chrom/.test(t)&&/Chrom/.test(a)||this.set(y,a).set(S,s).set(C,Vi(s)),t=a),this.itemType==g&&a==gi&&this.set(S,s)}break;case h:var n=i[_];n&&(n&&"64"==i[R]&&(n+="64"),Ri.call(this.data,n+";",e));break;case m:if(i[O]&&this.set(k,O),i[A]&&(this.set(A,i[A]),!this.get(k)||!this.get(x))){var w={};Ri.call(w,"droid 9; "+i[A]+")",e),!this.get(k)&&w.type&&this.set(k,w.type),!this.get(x)&&w.vendor&&this.set(x,w.vendor)}if(i[M]){var d;if("string"!=typeof i[M])for(var c=0;!d&&c<i[M].length;)d=Ui(i[M][c++],$i);else d=Ui(i[M],$i);this.set(k,d)}break;case f:var l=i[H];if(l){var p=i[N];l==Ai&&(p=parseInt(Vi(p),10)>=13?"11":"10"),this.set(y,l).set(S,p)}this.get(y)==Ai&&"Xbox"==i[A]&&this.set(y,"Xbox").set(S,void 0);break;case v:var b=this.data,I=function(e){return b[e].getItem().setCH(i).parseCH().get()};this.set(u,I(u)).set(h,I(h)).set(m,I(m)).set(g,I(g)).set(f,I(f))}return this},Mi.call(this,[["itemType",i],["ua",e],["uaCH",o],["rgxMap",t],["data",Gi(this,i)]]),this}function Ki(i,e,t){if(typeof i===l?(Ei(i,!0)?(typeof e===l&&(t=e),e=i):(t=i,e=void 0),i=void 0):typeof i!==p||Ei(e,!0)||(t=e,e=void 0),t)if(typeof t.append===c){var o={};t.forEach(function(i,e){o[String(e).toLowerCase()]=i}),t=o}else{var r={};for(var a in t)t.hasOwnProperty(a)&&(r[String(a).toLowerCase()]=t[a]);t=r}if(!(this instanceof Ki))return new Ki(i,e,t).getResult();var s=typeof i===p?i:t&&t[w]?t[w]:Ii&&Ii.userAgent?Ii.userAgent:d,n=new Xi(t,!0),b=e?function(i,e){var t={},o=e;if(!Ei(e))for(var r in o={},e)for(var a in e[r])o[a]=e[r][a].concat(o[a]?o[a]:[]);for(var s in i)t[s]=o[s]&&o[s].length%2==0?o[s].concat(i[s]):i[s];return t}(Di,e):Di,y=function(i){return i==v?function(){return new Ji(i,s,b,n).set("ua",s).set(u,this.getBrowser()).set(h,this.getCPU()).set(m,this.getDevice()).set(g,this.getEngine()).set(f,this.getOS()).get()}:function(){return new Ji(i,s,b[i],n).parseUA().get()}};return Mi.call(this,[["getBrowser",y(u)],["getCPU",y(h)],["getDevice",y(m)],["getEngine",y(g)],["getOS",y(f)],["getResult",y(v)],["getUA",function(){return s}],["setUA",function(i){return Ti(i)&&(s=Ni(i,500)),this}]]).setUA(s),this}Ki.VERSION="2.0.6",Ki.BROWSER=qi([y,S,C,k]),Ki.CPU=qi([_]),Ki.DEVICE=qi([A,x,k,I,O,z,q,E,j]),Ki.ENGINE=Ki.OS=qi([y,S]);const Yi=()=>window.appSdk.getAppId()||window.localStorage.MobileAppId;function Zi(i){return((i,e,t)=>window.customI18nObject?.get(`${e}-${i}-${t}`)||i)(i,(()=>{let i=window.sessionStorage.getItem("iportal_app_id");return i||(i=Yi()),i})(),window.localStorage.getItem("iportal_localID")||"zh-CN")}const Qi=async i=>{let e=await n.get(`/system/authority/logout?isMobileLogout=${i}`),t=JSON.parse(e.request.response),o=t.code;return"10110020"==o?(window.sessionStorage.clear(),{code:o,message:Zi(t.message)}):{code:o,message:Zi(t.message)}},ie=async i=>{let t=await oe();return e.AES.decrypt(i,t).toString(e.enc.Utf8)},ee=async i=>{let t=await oe();return e.AES.encrypt(i,t).toString()},te=async(i,e)=>{let t=await ee(i.password),o={param:{account_view:i.account_view,groupid:i.groupid,password:t,account:i.account,appid:e}},r=await n.post("/ext/loginAccount",JSON.stringify(o)),a=r.data.code,s=r.data.key_code,w=r.data.old_code,d=r.data.id,c=r.data.message;if(10110004==a){s=await ie(s),s=window.appSdk.Encrypt(s),o.param.password=s,r=await n.post(`/system/authority/loginAccount4Application?authPicCode=${i.imageCode}&dataappId=${e}&mobileOrWeb=web`,o.param);let t=JSON.parse(r.request.response);if(a=t.code,c=t.message,10110004==a){let t=d;const o=(new Ki).getBrowser();let r=(new Date).getTime(),s=o.name+"_"+o.version+"_"+r;return window.sessionStorage.setItem("iportal_login_user_id",t),window.sessionStorage.setItem("iportal_group_id",i.groupid),window.sessionStorage.setItem("iportal_login_user_key",w),window.sessionStorage.setItem("iportal_client_id",s),window.sessionStorage.setItem("iportal_app_id",e),{code:a,message:Zi(c)}}return{code:a,message:Zi(c)}}return{code:a,message:Zi(c)}},oe=async()=>(await n.post("/dataservice/rest/orchestration/getViewKey",{param:{}})).data.key;exports.createRegistApply=async i=>{let e={param:{registInfo:i}};return(await n.post("/dataservice/rest/orchestration/createRegistApply",e)).data.operateResult},exports.getAccountCountByName=async i=>{let e={param:{accountName:i}};return(await n.post("/dataservice/rest/orchestration/getAccountCountByName",e)).data.count},exports.getAuthPic=()=>n.get("/system/authority/getAuthPic?module=loginPassword",{responseType:"arraybuffer"}),exports.getViewKey=oe,exports.isSecurityAccount=async(i,e)=>{let t={param:{account_name:i,group_id:e}};return(await n.post("/dataservice/rest/orchestration/isSecurityAccount",t)).data.isSecurityAccount},exports.loginAccount=te,exports.logoutAccount=Qi,exports.serverDecrypt=async i=>{let e={param:{decryptStr:i}};return i=(await n.post("/ext/serverDecrypt",JSON.stringify(e))).data.decryptStr},exports.serverEncrypt=async i=>{let e={param:{encryptStr:i}};return i=(await n.post("/ext/serverEncrypt",JSON.stringify(e))).data.encryptStr},exports.switchPortalLogin=async(i,e,t)=>{let o=window.sessionStorage.getItem("iportal_login_user_key");o=await ie(o),i.password=o;let r=await Qi(t),a=r.code,s=r.message;if("10110020"==a){return await te(i,e)}return{code:a,message:Zi(s)}},exports.viewDecrypt=ie,exports.viewEncrypt=ee;