UNPKG

asp-smart-ui-plus-test

Version:

A Component Library for Vue 3

109 lines (104 loc) 3.38 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); function useFirstSsoLogin({ sourceId, ACTIVITY_ID, SUCCESS_CODE = "0000", userStore, ssoUniTokenValidate }) { const error = vue.ref(""); const apiResult = vue.ref(null); const user = userStore(); const cmcc = window.cmcc || window.leadeon; const userInfo = vue.reactive({ phoneNumMask: vue.computed(() => user.phoneNumMask), usessionid: vue.computed(() => user.usessionid), userStore }); const hasVal = (str) => str && str !== "undefined" && str !== ""; const versionJudgment = (version) => version.localeCompare("7.5.5", void 0, { numeric: true }) > 0; const handleFail = (failCallback, errorMessage) => { error.value = errorMessage || "Error occurred"; if (failCallback) failCallback(error.value); }; const validateToken = async (token, callback, failCallback) => { try { const params = { sourceId, activityId: ACTIVITY_ID, token }; const res = await ssoUniTokenValidate(params); const { data, result } = res; if (result && result.resultCode === SUCCESS_CODE) { apiResult.value = result; const userObject = { usessionid: data.usessionId || data.usessionid, phoneNumMask: data.msisdnmask || data.phoneNumMask }; user.UPDATE_USER(userObject); callback(data); } else { handleFail(failCallback, result.resultDes); } } catch (e) { handleFail(failCallback, e.message); } }; const processYDRZToken = (res3, callback, failCallback) => { res3.token && validateToken(res3.token, callback, failCallback); }; const processUserInfo = (res2, callback, failCallback) => { try { window.__SKYNET.appVersion = res2.version; console.log("window.__SKYNET.appVersion", window.__SKYNET.appVersion); } catch (error2) { console.log("window.__SKYNET.appVersion error", error2); } if (!versionJudgment(res2.version)) { handleFail(failCallback, "\u7248\u672C\u8FC7\u4F4E"); return; } cmcc.getYDRZToken({ debug: false, sourceId, success: (res3) => processYDRZToken(res3, callback, failCallback), error: (err) => handleFail(failCallback, err) }); }; const firstLogin = async (callback, failCallback) => { if (!hasVal(sourceId)) { handleFail(failCallback, "\u53C2\u6570\u7F3A\u5931"); return; } cmcc.userStatus({ success: (res) => { if (res.status === 1 || res.status === 2) { cmcc.checkSessionIsvalid({ success: (res1) => { if (Number(res1.status) !== 1) { handleFail(failCallback, res1.status); return; } cmcc.getUserInfo({ success: (res2) => processUserInfo(res2, callback, failCallback), error: (res2) => handleFail(failCallback, res2) }); }, error: (res1) => handleFail(failCallback, res1) }); } else { handleFail(failCallback, "\u975E\u767B\u5F55\u72B6\u6001"); } }, error: (res) => handleFail(failCallback, res) }); }; return { firstLogin, versionJudgment, error, apiResult, userInfo }; } exports.useFirstSsoLogin = useFirstSsoLogin;