UNPKG

t-comm

Version:

专业、稳定、纯粹的工具库

67 lines (64 loc) 2.42 kB
import { b as __awaiter, c as __generator } from '../tslib.es6-096fffdd.js'; import { getGameletPixuiFrame } from './gamelet.js'; /** * 是否是本地调试 */ function checkIsDebug() { var _a, _b, _c, _d; var isDebug = getGameletPixuiFrame().GameletAPI.getRuntimeEnv() === 'PxIDE' || ((_b = (_a = window === null || window === void 0 ? void 0 : window.location) === null || _a === void 0 ? void 0 : _a.host) === null || _b === void 0 ? void 0 : _b.indexOf('127.0.0.1')) > -1 || ((_d = (_c = window === null || window === void 0 ? void 0 : window.location) === null || _c === void 0 ? void 0 : _c.host) === null || _d === void 0 ? void 0 : _d.indexOf('localhost')) > -1; return isDebug; } var loginParams = ''; function getUrl(_a) { var openId = _a.openId, _b = _a.accType, accType = _b === void 0 ? 'wx' : _b, accToken = _a.accToken, appId = _a.appId; var obj = { appid: appId, openid: openId, access_token: accToken, acctype: accType }; return Object.keys(obj).map(function (item) { return "".concat(item, "=").concat(obj[item]); }).join('&'); } function getLoginUrlInPixui(baseUrl) { if (loginParams.length === 0) { throw new Error('请先调用 login 方法,再进行网络请求'); } var symbol = baseUrl.includes('?') ? '&' : '?'; return "".concat(baseUrl).concat(symbol).concat(loginParams); } /** * 用户登录(初始化游戏accToken等字段) */ var loginInPixui = function loginInPixui() { return __awaiter(void 0, void 0, void 0, function () { var mockLoginParams, userInfo, appId, accToken, accType, openId; return __generator(this, function (_a) { switch (_a.label) { case 0: mockLoginParams = process.env.MOCK_LOGIN_PARAMS || ''; if (checkIsDebug() && mockLoginParams) { loginParams = mockLoginParams; return [2 /*return*/]; } return [4 /*yield*/, getGameletPixuiFrame().GameletAPI.getUserData()]; case 1: userInfo = _a.sent(); appId = userInfo.sAppId, accToken = userInfo.sAccessToken, accType = userInfo.sAcountType, openId = userInfo.sOpenId; loginParams = getUrl({ openId: openId, accType: accType, accToken: accToken, appId: appId }); return [2 /*return*/]; } }); }); }; export { getLoginUrlInPixui, loginInPixui };