{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/enums/login.js","webpack:///./src/enums/lang.js","webpack:///./src/enums/index.js","webpack:///./src/App.vue?57cd","webpack:///./src/lib/utils/location.js","webpack:///./src/assets/img/icon_line.png","webpack:///./src/assets/img/icon_back.png","webpack:///./src/enums/oauth.js","webpack:///./src/assets/img/icon_apple.png","webpack:///./src/App.vue","webpack:///src/App.vue","webpack:///./src/App.vue?774d","webpack:///./src/App.vue?3746","webpack:///./src/router/config.js","webpack:///./src/router/index.js","webpack:///./src/store/modules/revoke.js","webpack:///./src/store/modules/index.js","webpack:///./src/store/index.js","webpack:///./src/lang/index.js","webpack:///./src/directives/bi.js","webpack:///./src/directives/index.js","webpack:///./src/lib/utils/language.js","webpack:///./src/components/TheHeading.vue","webpack:///src/components/TheHeading.vue","webpack:///./src/components/TheHeading.vue?3f7d","webpack:///./src/components/TheHeading.vue?ce2b","webpack:///./src/plugins/index.js","webpack:///./src/main.js","webpack:///./src/lib/axios/config.js","webpack:///./src/lib/logs.js","webpack:///./src/lib/axios/index.js","webpack:///./src/assets/img/icon_google.png","webpack:///./src/assets/img/icon_twitter.png","webpack:///./src/components/TheHeading.vue?7d38","webpack:///./src/assets/img/icon_meta.png","webpack:///./src/lib/utils/regexp.js","webpack:///./src/lib/utils/webview.js","webpack:///./src/lib/utils/browser.js","webpack:///./src/lib/utils/encrypt.js","webpack:///./src/lib/utils/index.js","webpack:///./src/api/oauth.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","EmailType","CodeLogin","StaticLogin","Register","ResetPassword","RevokeAccount","LangList","TencentLangList","Platform","H5","Iframe","WebView","Android","H5Transfer","WebViewTransfer","1","2","3","4","5","6","RegionId","tw","ko","ja","global","9","getUrlKey","decodeURIComponent","RegExp","concat","exec","location","replace","searchParams","search","params","_URLSearchParams","_len","arguments","keys","Array","_key","flatMap","reduce","prev","removeSearchFromUrl","url","flag","_includesInstanceProperty","index","indexOf","newUrl","_sliceInstanceProperty","queryConcat","query","prefix","encode","encodeHandler","method","encodeURI","encodeURIComponent","_Object$keys","_context","_context2","_concatInstanceProperty","OAuthKey","Facebook","Twitter","Line","Google","Apple","More","OAuths","facebook","label","icon","require","twitter","line","google","apple","OAuthError","TwitterRepeatLogin","msg","render","_vm","this","_c","_self","class","scene","attrs","staticClass","loadingShow","_e","staticRenderFns","Vue","use","_Loading","_Overlay","computed","_objectSpread","mapState","platform","state","jsonParser","sessionStorage","getItem","$store","loading","created","webModeFunc","setBrowser","getBrowser","onlanguagechange","reload","beforeMount","addEventListener","beforeDestroy","removeEventListener","methods","mapMutations","fullScreenPlatforms","documentElement","classList","add","remove","matchMedia","matches","component","path","redirect","children","createRouter","store","router","VueRouter","base","process","routes","_searchParams","appId","setItem","_JSON$stringify","commit","platforms","currentAppId","currentplatform","pathname","dispatch","_store$state$brandInf","brandInfo","webTagBrandLogoUrl","brandName","setLinkFavicon","title","beforeEach","to","from","next","afterEach","scrollTo","sdk2WebTicket","appInfo","channel","userInfo","initialRevoke","captchaData","namespaced","mutations","clearSdk2WebTicket","setSdk2WebTicket","webviewPostMessage","func","callbackObj","GHomeUnregisterGetWebTicketCallback","res","_ref","resultCode","ticket","Date","now","setAppInfo","payload","_Object$assign","setUserInfo","setInitialRevoke","setCaptchaData","revoke","createStore","Vuex","Store","returnUrl","browser","oauth","list","brandLogoUrl","setLoading","setReturnUrl","setPlatform","info","setBrandInfo","setOAuths","values","parseOAuths","loginType","thirdPartyPara","actions","queryBasicInitialization","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$oauthInit","wrap","oauthInit","sent","stop","VueI18n","messages","zhCN","zhTW","en","th","pt","id","it","fr","de","createVueI18n","options","locale","Cookies","fallbackLocale","silentTranslationWarn","EVENTS","click","hover","LISTENER","_Symbol","eventTracking","logs","Logs","imgLog_Button","bi","inserted","el","binding","_binding$arg","arg","listener","unbind","createDirectives","vue","k","hasOwn","directive","Language","_classCallCheck","_defineProperty","lang","getLang","set","secure","SameSite","_createClass","navigator","language","format","toLowerCase","test","directives","rawName","leftArrow","expression","on","$event","$emit","ellipsis","_v","_s","_t","props","String","default","Boolean","install","$language","TheHeading","host","VConsole","config","productionTip","_Lazyload","Plugins","i18n","h","App","$mount","isGray","getHost","defaultConfig","baseURL","headers","Accept","withCredentials","paramsSerializer","parse","serialize","stringify","imgLog_PageLoad","web_pageid","imgLog","web_buttonid","obj","toString","TypeError","cloneDeep","localStorage","getPlatform","userAgent","getHardWare","getSoftWare","referrer","imgLogPrivate","img","Image","event_time","fmtDate","setHours","getHours","getMinutes","getTimezoneOffset","timestamp","toISOString","substr","request_timestamp","local_timestamp","web_guidid","traceId","web_url","point_id","join","Math","random","hardware_deviceid","hardware_androidid","USER","getSystemInfo","getDeviceId","getAndroidId","realParams","date","fmt","getMonth","getDate","getSeconds","floor","S","getMilliseconds","$1","getFullYear","getCookie","arr","reg","cookie","match","setCookie","seconds","expires","setTime","getTime","toGMTString","traceIdNumber","num","seed","round","split","reverse","newNum","beginDate","today","daysSpan","$toast","_Toast","Http","_res$data","status","statusText","resultMsg","interceptorsRequest","interceptorsResponse","axiosInstance","interceptors","abrupt","_x","_Promise","_this","instance","response","_response$config","_response$config2","_ref2","_ref2$code","_ref2$data","isAll","disabledToast","errorHandler","$error","axiosConfig","catch","epOs","EPOS","epMode","_config$headers","otherConfig","_objectWithoutProperties","_excluded","formData","FormData","getDefaultParams","forEach","append","getDefaultHeadParams","Axios","emailReg","passwordReg","captchaReg","urlReg","_ref$func","_ref$data","_ref$callbackObj","isEmpty","_loop","callbackKey","logoffJsBridge","log","unknown","android","ios","windows","0","SoftWare","web","daoyu","micromessenger","alipay","useragent","hardwarePlatform","softwarePlatform","payway","UserAgent","browserInfo","browserList","Opera","IE10","IE11","Firefox","Edge","QQBrowser","UCBrowser","WeixinBrowser","Safari","Chrome","versions","mt","mimeTypes","parseInt","encryptAes","content","keyTmp","CryptoJS","enc","Utf8","contentTmp","encryptResult","AES","encrypt","ECB","padding","pad","Pkcs7","ret","ciphertext","toUpperCase","loginRsaEncrypt","pwd","PUBLIC_KEY","JSEncrypt","setPublicKey","encrypted","getUidV4","uuidv4","oauths","_mapInstanceProperty","auth","pow","text","reviver","JSON","handleTCaptcha","captchaAppId","callback","loadErrorCallback","captcha","_options$type","_options$getContainer","getContainer","restOptions","TencentCaptcha","querySelector","userLanguage","show","link","http","post","getTwitterRequestToken","getTwitterOAuthToken","twitterLogin","tokenInfo","getLineAccessToken","lineLogin","facebookLogin","googleLogin","appleLogin"],"mappings":"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","file":"js/app.464f7e87.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({\"captcha\":\"captcha\",\"iframe\":\"iframe\",\"login~revoke~transferLogin\":\"login~revoke~transferLogin\",\"login~transferLogin\":\"login~transferLogin\",\"login\":\"login\",\"transferLogin\":\"transferLogin\",\"revoke\":\"revoke\",\"logout\":\"logout\",\"oauthLogin\":\"oauthLogin\",\"protocol\":\"protocol\",\"transferResult\":\"transferResult\",\"transferTencent\":\"transferTencent\",\"transferWrapper\":\"transferWrapper\",\"webticket\":\"webticket\",\"webviewLogin\":\"webviewLogin\"}[chunkId]||chunkId) + \".\" + {\"captcha\":\"728ba6bf\",\"iframe\":\"d69918f7\",\"login~revoke~transferLogin\":\"abb8d9da\",\"login~transferLogin\":\"dabca131\",\"login\":\"3ec810d4\",\"transferLogin\":\"4c6dbb44\",\"revoke\":\"7e161e8f\",\"logout\":\"10cdf6e2\",\"oauthLogin\":\"547df32d\",\"protocol\":\"3c063152\",\"transferResult\":\"2a80f094\",\"transferTencent\":\"08fe5a27\",\"transferWrapper\":\"2a60f791\",\"webticket\":\"2920e239\",\"webviewLogin\":\"2502c402\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"captcha\":1,\"iframe\":1,\"login~revoke~transferLogin\":1,\"login~transferLogin\":1,\"login\":1,\"transferLogin\":1,\"revoke\":1,\"logout\":1,\"oauthLogin\":1,\"protocol\":1,\"transferResult\":1,\"transferTencent\":1,\"webticket\":1,\"webviewLogin\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({\"captcha\":\"captcha\",\"iframe\":\"iframe\",\"login~revoke~transferLogin\":\"login~revoke~transferLogin\",\"login~transferLogin\":\"login~transferLogin\",\"login\":\"login\",\"transferLogin\":\"transferLogin\",\"revoke\":\"revoke\",\"logout\":\"logout\",\"oauthLogin\":\"oauthLogin\",\"protocol\":\"protocol\",\"transferResult\":\"transferResult\",\"transferTencent\":\"transferTencent\",\"transferWrapper\":\"transferWrapper\",\"webticket\":\"webticket\",\"webviewLogin\":\"webviewLogin\"}[chunkId]||chunkId) + \".\" + {\"captcha\":\"2ac533d9\",\"iframe\":\"5cb13304\",\"login~revoke~transferLogin\":\"94ee0c22\",\"login~transferLogin\":\"b85b6a13\",\"login\":\"77a23fc5\",\"transferLogin\":\"26314ea9\",\"revoke\":\"454b8a39\",\"logout\":\"6cdd5785\",\"oauthLogin\":\"8f5bd412\",\"protocol\":\"f6483120\",\"transferResult\":\"32220988\",\"transferTencent\":\"244a212a\",\"transferWrapper\":\"31d6cfe0\",\"webticket\":\"c0686f6a\",\"webviewLogin\":\"9d82e163\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","/* eslint-disable import/prefer-default-export */\n\n/** email 业务类型 */\nexport const EmailType = {\n CodeLogin: 'webEmailCodeLogin', // 验证登录\n StaticLogin: 'webEmailStaticLogin', // 静密登录\n Register: 'webRegister', // 注册\n ResetPassword: 'webResetPassword', // 修改密码\n RevokeAccount: 'acctDeletion', // 账号注销\n};\n","/**\n * 当前支持的语言列表(RFC 1766 规范)\n * 1. 简体中文 zh-cn,繁体中文 zh-tw\n * 2. 其他语言,没有 '-xx' 后缀\n * 3. 与本地语言包的文件名一致(对应 i18n 中的 locale 属性值)\n */\nexport const LangList = [\n 'zh-cn',\n 'zh-tw',\n 'en',\n 'ja', // 日本\n 'ko', // 韩国\n 'pt', // 葡萄牙\n 'th', // 泰国\n 'id', // 印尼\n 'it', // 意大利\n 'fr', // 法国\n 'de', // 德国\n];\n\n/**\n * @description Tencent LI 支持的语言列表(大小写敏感)\n * @see https://docs.playernetwork.intlgame.com/docs/zh/API/Web/LIPWebSDK/LIPConfig/#ParameterConfig\n */\nexport const TencentLangList = [\n 'en',\n 'zh-Hans',\n 'ja',\n 'de',\n 'fr',\n 'es',\n 'pt',\n 'id',\n 'th',\n 'ru',\n 'zh-HK',\n 'zh-TW',\n 'ar',\n 'ko',\n 'tr',\n 'it',\n];\n","export * from './login';\nexport * from './oauth';\nexport * from './lang';\n\n// 使用该登录系统的平台(URL 必须包含此参数)\nexport const Platform = {\n H5: 1,\n Iframe: 2,\n WebView: 3, // GHome 的 ios webview 平台\n Android: 4,\n H5Transfer: 5, // Tencent LI 账号迁移的 h5 平台\n WebViewTransfer: 6, // Tencent LI 账号迁移的 webview 平台(平移了 H5 的功能,但样式上做到 100% 自适应)\n 1: 'h5',\n 2: 'iframe',\n 3: 'webview',\n 4: 'android',\n 5: 'h5Transfer',\n 6: 'webviewTransfer',\n};\n\n// 龙之谷 地区码\nexport const RegionId = {\n tw: 1,\n ko: 2,\n ja: 3,\n global: 9,\n 1: 'tw',\n 2: 'ko',\n 3: 'ja',\n 9: 'global',\n};\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=5e64e22e&prod&scoped=true&lang=scss\"","/* eslint-disable no-param-reassign */\nimport flatMap from 'lodash/flatMap';\n\n/**\n * @description 获取单个 url 的网址参数\n * @param {string} name 字段\n * @returns {(string | null)}\n */\nexport function getUrlKey(name) {\n return (\n decodeURIComponent(\n (new RegExp(`[?|&]${name}=` + '([^&;]+?)(&|#|;|$)').exec(window.location.href) || [\n ,\n '',\n ])[1].replace(/\\+/g, '%20')\n ) || null\n );\n}\n\n/**\n * @description 获取 location.search 或 location.hash 中的值(支持同时查询多个)\n * @param {string} search [location.search | location.hash]\n * @param {Array} keys 要查询的key\n * @returns {Record}\n */\nexport const searchParams = (search, ...keys) => {\n search = search.replace(/#|\\?/, '');\n const params = new URLSearchParams(search);\n\n return flatMap(keys).reduce((prev, key) => {\n prev[key] = params.get(key) || undefined;\n return prev;\n }, {});\n};\n\nexport function removeSearchFromUrl(url) {\n const flag = url.includes('?');\n\n if (flag) {\n const index = url.indexOf('?');\n const newUrl = url.slice(0, index);\n return newUrl;\n }\n return url;\n}\n\n/**\n * @description 拼接 query\n * @param {Object} query 参数对象\n * @param {'?' | '#'} prefix query or hash,默认 ?\n * @param {'url' | 'component' | false } encode 启用 encodeURI 或 encodeURIComponent 编码,或 false 不进行编码\n * @return {string} 返回拼接后的 URL 网址参数(?params) 或 网址片段(#hash)\n */\nexport function queryConcat(query, prefix = '?', encode = 'component') {\n const encodeHandler = (function (method) {\n switch (method) {\n case 'url':\n return data => encodeURI(data);\n case 'component':\n return data => encodeURIComponent(data);\n default:\n return data => data;\n }\n })(encode);\n\n if (encode) {\n for (const key in query) {\n if (Object.hasOwnProperty.call(query, key)) {\n query[key] = encodeHandler(query[key]);\n }\n }\n }\n\n return Object.keys(query).reduce((prev, key, index) => {\n prev += `${index === 0 ? '' : '&'}${key}=${query[key]}`;\n return prev;\n }, prefix);\n}\n","module.exports = __webpack_public_path__ + \"img/icon_line.ac9de4a8.png\";","module.exports = \"data:image/png;base64,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\"","export const OAuthKey = {\n Facebook: 'facebook',\n Twitter: 'twitter',\n Line: 'line',\n Google: 'google',\n Apple: 'apple',\n More: 'more',\n};\n\n// 目前支持的三方登录\nexport const OAuths = {\n facebook: {\n label: 'Facebook',\n value: '10',\n url: 'https://www.facebook.com/v17.0/dialog/oauth',\n icon: require('@/assets/img/icon_meta.png'),\n },\n twitter: {\n label: 'Twitter',\n value: '100000',\n url: 'https://api.twitter.com/oauth/authenticate',\n icon: require('@/assets/img/icon_twitter.png'),\n },\n line: {\n label: 'Line',\n value: '1000000',\n url: 'https://access.line.me/dialog/oauth/weblogin',\n icon: require('@/assets/img/icon_line.png'),\n },\n google: {\n label: 'Google',\n value: '100',\n url: 'https://accounts.google.com/o/oauth2/v2/auth',\n icon: require('@/assets/img/icon_google.png'),\n },\n apple: {\n label: 'Apple',\n value: '1000',\n url: 'https://appleid.apple.com/auth/authorize',\n icon: require('@/assets/img/icon_apple.png'),\n },\n};\n\nexport const OAuthError = {\n // Twitter 重复登录\n TwitterRepeatLogin: {\n code: -1,\n data: null,\n msg: 'This feature is temporarily unavailable',\n },\n};\n","module.exports = \"data:image/png;base64,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\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:['index', `${_vm.scene}`],attrs:{\"id\":\"index\"}},[_c('div',{staticClass:\"content\"},[_c('router-view')],1),_c('van-overlay',{attrs:{\"show\":_vm.loadingShow}}),(_vm.loadingShow)?_c('div',{staticClass:\"loading\"},[_c('van-loading',{staticClass:\"flex-center\",attrs:{\"type\":\"spinner\",\"color\":\"#1989fa\"}})],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=5e64e22e&scoped=true\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=5e64e22e&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5e64e22e\",\n null\n \n)\n\nexport default component.exports","/* prettier-ignore */\n\nexport default [\n {\n path: '/',\n redirect: '/login',\n },\n {\n path: '/login',\n name: 'Login',\n component: () => import(/* webpackChunkName: \"login\" */ '../views/Login/index.vue'),\n },\n {\n path: '/iframe',\n name: 'Iframe',\n component: () => import(/* webpackChunkName: \"iframe\" */ '../views/Iframe/index.vue'),\n },\n // webview 专门的三方登录页面\n {\n path: '/login/webview/:key',\n name: 'webviewLogin',\n component: () => import(/* webpackChunkName: \"webviewLogin\" */ '../views/OAuthWebview/index.vue'),\n },\n // 三方返回的 redirect_uri\n {\n path: '/login/oauth/:key', // key 为当前授权的三方\n name: 'oauthLogin',\n // prettier-ignore\n component: () => import(/* webpackChunkName: \"oauthLogin\" */ '../views/OAuthLogin/index.vue'),\n },\n {\n path: '/captcha',\n name: 'Captcha',\n component: () => import(/* webpackChunkName: \"captcha\" */ '../views/Captcha/index.vue'),\n },\n // 给 WebView 查看协议用的 o(*≧д≦)o!!\n {\n path: '/procotol', // 这个单词拼错了,将错就错,不要改 (。ŏ_ŏ)\n name: 'Protocol',\n component: () => import(/* webpackChunkName: \"protocol\" */ '../views/Protocol/index.vue'),\n },\n // 获取 webTicket\n {\n path: '/webticket',\n name: 'Webticket',\n component: () => import(/* webpackChunkName: \"webticket\" */ '../views/WebTicket/index.vue'),\n },\n // 登出\n {\n path: '/logout',\n name: 'Logout',\n component: () => import(/* webpackChunkName: \"logout\" */ '../views/Logout/index.vue'),\n },\n // 龙之谷账号迁移相关页面\n {\n path: '/transfer',\n component: () => import(/* webpackChunkName: \"transferWrapper\" */ '../views/Transfer/index.vue'),\n children: [\n // Tencent LI 账号登录页面\n {\n path: 'tencent/:region', // region 为地区码,tw/ko/ja/global\n name: 'tencentLiPass',\n component: () => import(/* webpackChunkName: \"transferTencent\" */ '../views/Transfer/components/TencentLiPass.vue'),\n },\n // 盛趣迁移账号登录页面\n {\n path: 'login',\n name: 'transferLogin',\n component: () => import(/* webpackChunkName: \"transferLogin\" */ '../views/Transfer/components/TransferLogin.vue'),\n },\n // 迁移结果页面\n {\n path: 'result',\n name: 'transferResult',\n component: () => import(/* webpackChunkName: \"transferResult\" */ '../views/Transfer/components/TransferResult.vue'),\n },\n ],\n },\n {\n path: '/revoke',\n name: 'Revoke',\n component: () => import(/* webpackChunkName: \"revoke\" */ '../views/Revoke/index.vue'),\n },\n {\n path: '*',\n redirect: '/login',\n },\n];\n","import Vue from 'vue';\nimport VueRouter from 'vue-router';\nimport { setLinkFavicon, searchParams, jsonParser } from '@/lib/utils';\nimport { Platform } from '@/enums';\nimport routes from './config';\n\nVue.use(VueRouter);\n\nexport function createRouter(store) {\n const router = new VueRouter({\n mode: 'history',\n base: process.env.BASE_URL,\n routes,\n });\n\n /**\n * 可以在这里(创建路由之前)提前往 store 中准备数据\n * ! 请注意:此处只针对原始的公共参数进行操作,不会对其进行二次修改,如果需要设置默认的初始值,可以在对应页面组件中再进行配置。\n */\n const { platform, appId } = searchParams(window.location.search, 'platform', 'appId');\n if (platform) {\n sessionStorage.setItem('platform', JSON.stringify(+platform));\n store.commit('setPlatform', +platform);\n }\n if (appId) sessionStorage.setItem('appId', JSON.stringify(appId));\n\n // 也可以写异步请求(提前配置 favicon、document.title,获取三方 OAuth 配置信息)\n const platforms = [Platform.H5, Platform.Iframe, Platform.H5Transfer, Platform.WebViewTransfer];\n const currentAppId = appId || jsonParser(sessionStorage.getItem('appId'));\n const currentplatform = +platform || jsonParser(sessionStorage.getItem('platform'));\n\n if (currentAppId && platforms.includes(currentplatform)) {\n // iframe 过渡页面无需请求(后期需要优化区分)\n if (window.location.pathname !== '/iframe') {\n store.dispatch('queryBasicInitialization').then(() => {\n const { webTagBrandLogoUrl, brandName } = store.state.brandInfo;\n setLinkFavicon(webTagBrandLogoUrl);\n document.title = brandName;\n });\n }\n }\n\n router.beforeEach((to, from, next) => {\n if (to.name === 'Login' || sessionStorage.getItem('Authorization')) {\n next();\n } else {\n next();\n // router.push({ path: '/login' });\n }\n });\n\n router.afterEach(() => {\n window.scrollTo(0, 0);\n });\n\n return router;\n}\n\nexport default createRouter;\n","/* eslint-disable prefer-object-spread */\n/* eslint-disable no-shadow */\nimport { webviewPostMessage, jsonParser } from '@/lib/utils';\n\nconst state = {\n sdk2WebTicket: null, // 登录态传递票据\n appInfo: {\n appId: '', // 游戏 appId\n channel: '', // sdk 端渠道号\n },\n userInfo: {}, // web 登录信息\n initialRevoke: {}, // 本次注销流程的初始化信息\n captchaData: {}, // 验证码流程的信息 [loginType | userId | commitTime | flowId | action]\n};\n\nconst module = {\n namespaced: true,\n state,\n mutations: {\n clearSdk2WebTicket(state) {\n state.sdk2WebTicket = null;\n },\n setSdk2WebTicket(state, platform) {\n webviewPostMessage(platform, {\n func: 'GHomeUnregisterGetWebTicket',\n callbackObj: {\n // prettier-ignore\n GHomeUnregisterGetWebTicketCallback(res) {\n const { resultCode, ticket } = jsonParser(res) || {};\n state.sdk2WebTicket = resultCode === 0\n ? ticket\n : `errorId_${Date.now()}`;\n },\n },\n });\n },\n setAppInfo(state, payload) {\n state.appInfo = Object.assign({}, state.appInfo, payload);\n },\n setUserInfo(state, payload) {\n state.userInfo = payload;\n },\n setInitialRevoke(state, payload) {\n state.initialRevoke = payload;\n },\n setCaptchaData(state, payload) {\n state.captchaData = Object.assign({}, state.captchaData, payload);\n },\n },\n};\n\nexport default module;\n","import revoke from './revoke';\n\nexport default {\n revoke,\n};\n","import Vue from 'vue';\nimport Vuex from 'vuex';\nimport { oauthInit } from '@/api/oauth';\nimport { parseOAuths } from '@/lib/utils';\nimport { OAuths } from '@/enums/oauth';\nimport modules from './modules';\n\nVue.use(Vuex);\n\nexport function createStore() {\n return new Vuex.Store({\n state: {\n loading: false,\n returnUrl: '',\n platform: null,\n browser: {},\n oauth: {\n list: [], // 当前支持的三方登录\n query: {}, // 三方登录所需的 URL 配置参数(Twitter1.0 除外)\n },\n brandInfo: {\n brandLogoUrl: '', // logo 图表\n brandName: '', // tab title\n webTagBrandLogoUrl: '', // tab favicon.ico\n },\n },\n mutations: {\n setLoading(state, data) {\n state.loading = data;\n },\n setReturnUrl(state, url) {\n state.returnUrl = url;\n },\n setPlatform(state, platform) {\n state.platform = platform;\n },\n setBrowser(state, info) {\n state.browser = info;\n },\n setBrandInfo(state, info) {\n state.brandInfo = info;\n },\n\n // 处理并保存当前支持的三方登录及其配置\n setOAuths(state, data) {\n const values = parseOAuths(data.loginType);\n const list = Object.keys(OAuths).reduce((prev, key) => {\n if (values.includes(OAuths[key].value)) {\n prev.push(OAuths[key]);\n }\n return prev;\n }, []);\n Object.assign(state.oauth, { list, query: data.thirdPartyPara });\n },\n },\n actions: {\n // prettier-ignore\n async queryBasicInitialization({ commit }) {\n const { loginType, thirdPartyPara, brandInfo } = await oauthInit({ channel: 'web' });\n commit('setBrandInfo', brandInfo);\n commit('setOAuths', { loginType, thirdPartyPara });\n },\n },\n modules,\n });\n}\n\nexport default createStore;\n","/* eslint-disable*/\nimport Vue from 'vue'; // 引入vue\nimport VueI18n from 'vue-i18n'; // 引入i18n模块\nimport Cookies from 'js-cookie'; // 封装了获取,设置,删除cookie的方法\nimport en from './en.json'; // 本地英文包\nimport zhCN from './zh-cn.json'; // 本地简体中文包\nimport zhTW from './zh-tw.json'; // 本地繁体中文包\nimport ja from './ja.json'; // 本地日文包\nimport ko from './ko.json'; // 本地韩文包\nimport th from './th.json'; // 本地泰文包\nimport pt from './pt.json'; // 本地葡文包\nimport id from './id.json'; // 本地印尼包\nimport it from './it.json'; // 本地意大利语包\nimport fr from './fr.json'; // 本地法语包\nimport de from './de.json'; // 本地德语包\n\nVue.use(VueI18n);\n\n// 引入本地\nconst messages = {\n 'zh-cn': zhCN,\n 'zh-tw': zhTW,\n en,\n ja,\n ko,\n th,\n pt,\n id,\n it,\n fr,\n de,\n};\n\n// 创建国际化实例\nfunction createVueI18n(options = {}) {\n return new VueI18n(\n Object.assign(\n {\n locale: Cookies.get('language') || 'en', // 值要与 messages 中的 key 一致\n messages,\n fallbackLocale: 'en',\n silentTranslationWarn: true,\n },\n options\n )\n );\n}\n\nexport default createVueI18n;\n","/* eslint-disable no-param-reassign */\nimport Logs from '@/lib/logs';\n\n// 上报事件触发时机对应的注册函数\nconst EVENTS = {\n click: 'click',\n hover: 'mouseenter',\n};\n\n// listener 事件名\nconst LISTENER = Symbol('bi_listener');\n\n/**\n * @description 埋点上报接口,可以单独使用\n * @param {Record<'web_pageid' | 'web_buttonid' | 'web_ext_json' | 'web_userid', string>} logs 上报信息\n */\nexport const eventTracking = logs => {\n Logs.imgLog_Button(logs);\n};\n\n/**\n * @description 上报指令,arg 参数不传时,默认 click 触发\n */\nconst bi = {\n inserted(el, binding) {\n const { arg: method = 'click', value } = binding;\n let listener = null;\n\n // 处理上报时机(比如 click,hover 等才进行上报)\n if (method === 'click') {\n listener = () => eventTracking(value);\n el.addEventListener(EVENTS[method], listener, false);\n }\n\n // 将事件处理函数添加为 el 的属性,以便 unbind 的时候进行卸载\n if (listener) {\n el[LISTENER] = listener;\n }\n },\n unbind(el, binding) {\n el.removeEventListener(EVENTS[binding.arg], el[LISTENER]);\n },\n};\n\nexport default bi;\n","import bi from './bi';\n\nconst modules = {\n bi,\n};\n\nexport default function createDirectives(vue) {\n for (const k in modules) {\n if (Object.hasOwn(modules, k)) {\n vue.directive(k, modules[k]);\n }\n }\n}\n","/* eslint-disable prefer-destructuring */\n/* eslint-disable no-param-reassign */\n/* eslint-disable class-methods-use-this */\nimport { LangList } from '@/enums';\nimport Cookies from 'js-cookie';\nimport { getUrlKey } from './location';\n\nclass Language {\n lang = 'en';\n\n constructor() {\n this.lang = this.getLang();\n\n Cookies.set('language', this.lang, {\n secure: true,\n SameSite: 'None',\n });\n }\n\n getLang() {\n const lang = getUrlKey('lang') || Cookies.get('language') || navigator.language;\n return this.format(lang);\n }\n\n /**\n * @description 将 lang 统一成目前 LanguageList 支持的语言\n * @see {@link https://developer.mozilla.org/zh-CN/docs/Web/API/Navigator/language} navigator.language 浏览器界面语言(BCP 47 规范)\n * @see {@lilnk https://stackoverflow.com/questions/5580876/navigator-language-list-of-all-languages/36042028#36042028} navigator.language 列表\n * @param {string} lang\n */\n format(lang) {\n lang = lang.toLowerCase();\n\n if (['zh-hk', 'zh-mo', 'zh-tw'].includes(lang) || /zh-hant/.test(lang)) {\n // 繁体中文\n lang = 'zh-tw';\n } else if (['zh', 'zh-sg', 'zh-cn'].includes(lang) || /zh-hans/.test(lang)) {\n // 简体中文\n lang = 'zh-cn';\n } else if (/^(\\w+)-/.test(lang)) {\n // 其他语言移除后缀\n lang = lang.replace(/^([^-]+)-.+$/, '$1');\n }\n\n return LangList.includes(lang) ? lang : 'en';\n }\n}\n\nexport default Language;\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('header',{staticClass:\"nav-bar flex relative\"},[_c('div',{staticClass:\"flex items-center absolute\"},[_c('img',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.leftArrow),expression:\"leftArrow\"}],staticClass:\"back\",attrs:{\"src\":require(\"@/assets/img/icon_back.png\"),\"alt\":\"back\"},on:{\"click\":function($event){return _vm.$emit('on-back')}}})]),_c('div',{class:['content', { ellipsis: _vm.ellipsis }]},[_vm._v(_vm._s(_vm.title))]),_c('div',{staticClass:\"flex items-center absolute\"},[_vm._t(\"right\")],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TheHeading.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TheHeading.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TheHeading.vue?vue&type=template&id=22314199&scoped=true\"\nimport script from \"./TheHeading.vue?vue&type=script&lang=js\"\nexport * from \"./TheHeading.vue?vue&type=script&lang=js\"\nimport style0 from \"./TheHeading.vue?vue&type=style&index=0&id=22314199&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"22314199\",\n null\n \n)\n\nexport default component.exports","// 自定义 Vue 插件,在 main.js 中使用 Vue.use() 进行安装\n/* eslint-disable no-param-reassign */\nimport Language from '@/lib/utils/language';\nimport TheHeading from '@/components/TheHeading.vue';\n\nexport default {\n install(Vue) {\n // 全局的语言插件\n Vue.prototype.$language = new Language();\n\n // 全局的 TheHeading 组件\n Vue.component(TheHeading.name, TheHeading);\n\n // 其他全局组件、指令、属性、方法等......\n },\n};\n","/*eslint-disable*/\nimport Vue from 'vue';\nimport { Lazyload } from 'vant';\nimport 'amfe-flexible';\nimport VConsole from 'vconsole';\nimport App from './App.vue';\nimport createRouter from './router';\nimport createStore from './store';\nimport createVueI18n from './lang';\nimport createDirectives from '@/directives';\nimport Plugins from '@/plugins';\n\nimport './style/index.scss';\n\n// VConsole 开发工具\nif (window.location.host !== 'abroad-sin-wlogin.shengqugames-corp.com') {\n new VConsole();\n}\n\nVue.config.productionTip = false;\nVue.use(Lazyload);\nVue.use(Plugins);\ncreateDirectives(Vue);\n\nconst store = createStore();\nconst router = createRouter(store);\nconst i18n = createVueI18n();\n\nnew Vue({\n router,\n store,\n i18n,\n render: h => h(App),\n}).$mount('#app');\n\nexport { store };\n","import { parse, stringify } from 'qs';\n\nexport const isGray = /gray/.test(window.location.host);\n\n// 测试、灰度环境一致,生产环境没有 'gray'\nexport function getHost() {\n let host = '//abroad-sin.shengqugames-corp.com';\n if (isGray) host = '//abroad-sin-gray.shengqugames-corp.com';\n return host;\n}\n\n/** 特殊的错误码 */\nexport const ErrorCode = {\n CaptchaError: -4100605, // 邮箱验证码校验失败\n NoPassword: -4100606, // 用户密码未设置\n PasswordFormatError: -4100608, // 密码格式错误\n UnknownReturnUrl: -10403007, // 未知的 return url (查询小票报的错)\n NoLogin: -4100027, // 未登录\n};\n\nexport const defaultConfig = {\n baseURL: getHost(),\n timeout: 15000,\n headers: {\n Accept: 'application/json, text/plain, */*',\n 'Content-Type': 'application/json',\n 'X-Requested-With': 'XMLHttpRequest',\n },\n withCredentials: true,\n paramsSerializer: {\n encode: parse,\n serialize: stringify,\n },\n};\n","/* eslint-disable */\nimport Cookies from 'js-cookie';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { getHardWare, getSoftWare, jsonParser, removeSearchFromUrl } from './utils';\n\nexport default {\n /* 页面加载事件 */\n imgLog_PageLoad: function (logs) {\n try {\n if (!logs.web_pageid) throw new Error('web_pageid is required');\n\n this.imgLog({\n ...logs,\n web_buttonid: 'load',\n });\n } catch (e) {\n console.error(e);\n }\n },\n\n /* 按钮点击事件 */\n imgLog_Button: function (logs) {\n try {\n this.imgLog(logs);\n } catch (e) {\n console.error(e);\n }\n },\n\n /* 通用配置 */\n // prettier-ignore\n imgLog: function (obj) {\n if (Object.prototype.toString.call(obj) !== '[object Object]') {\n throw new TypeError('object is required');\n }\n\n const logs = cloneDeep(obj);\n logs['product_id'] = 'aw-login4abroadweb';\n logs['project_code'] = 'aw-login4abroadweb';\n logs['game_id'] = jsonParser(sessionStorage.getItem('appId') || localStorage.getItem('appId')) || '';\n logs['web_page_scene'] = this.getPlatform();\n logs['web_host'] = window.location.host;\n logs['user_agent'] = navigator.userAgent;\n logs['hardware_platform'] = getHardWare();\n logs['software_platform'] = getSoftWare();\n // logs['biz_appid'] = 791000412;\n\n /* 统计来源页 */\n const referrer = document.referrer;\n if (referrer && !referrer.includes(window.location.host)) {\n logs['web_referer'] = removeSearchFromUrl(referrer);\n } else {\n logs['web_referer'] = '';\n }\n\n this.imgLogPrivate(logs);\n },\n\n imgLogPrivate: function (params) {\n let img = new Image();\n let d = new Date();\n\n let event_time = this.fmtDate(d, 'yyyy-MM-dd hh:mm:ss');\n\n d.setHours(d.getHours(), d.getMinutes() - d.getTimezoneOffset());\n let timestamp = d.toISOString();\n timestamp = timestamp.substr(0, timestamp.length - 1) + '+08:00';\n\n let request_timestamp = timestamp;\n\n let local_timestamp = timestamp;\n\n let web_guidid = '';\n if (Cookies.get('web_guidid')) {\n web_guidid = Cookies.get('web_guidid');\n } else {\n web_guidid = this.traceId();\n Cookies.set('web_guidid', web_guidid, {\n secure: true,\n SameSite: 'None',\n });\n }\n\n let web_url = window.location.href;\n\n let point_id = (Array(6).join(0) + ((Math.random() * 1000000) >> 0)).slice(-6);\n\n let hardware_deviceid = '';\n\n let hardware_androidid = '';\n\n if (typeof window.USER !== 'undefined' && window.USER.getSystemInfo !== 'undefined') {\n const getSystemInfo = window.USER.getSystemInfo() || {};\n hardware_deviceid = getSystemInfo.getDeviceId() || '';\n hardware_androidid = getSystemInfo.getAndroidId() || '';\n }\n\n let realParams = {\n timestamp: timestamp,\n request_timestamp: request_timestamp,\n event_time: event_time,\n local_timestamp: local_timestamp,\n web_guidid: web_guidid,\n web_url: web_url,\n point_id: point_id,\n hardware_deviceid: hardware_deviceid,\n hardware_androidid: hardware_androidid,\n };\n Object.assign(realParams, params);\n let url =\n 'https://reportsk-gg.web.sdo.com/report/ge/weblog?log=' +\n encodeURIComponent(JSON.stringify([realParams]));\n\n img.src = url;\n },\n\n /**\n * 对Date的扩展,将 Date 转化为指定格式的String\n * 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,\n * 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)\n * 例子:\n * (new Date()).Format(\"yyyy-MM-dd hh:mm:ss.S\") ==> 2006-07-02 08:09:04.423\n * (new Date()).Format(\"yyyy-M-d h:m:s.S\") ==> 2006-7-2 8:9:4.18\n */\n fmtDate: function (date, fmt) {\n //author: meizz\n var o = {\n 'M+': date.getMonth() + 1, //月份\n 'd+': date.getDate(), //日\n 'h+': date.getHours(), //小时\n 'm+': date.getMinutes(), //分\n 's+': date.getSeconds(), //秒\n 'q+': Math.floor((date.getMonth() + 3) / 3), //季度\n S: date.getMilliseconds(), //毫秒\n };\n if (/(y+)/.test(fmt))\n fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));\n for (var k in o)\n if (new RegExp('(' + k + ')').test(fmt))\n fmt = fmt.replace(\n RegExp.$1,\n RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length)\n );\n return fmt;\n },\n getCookie: function (name) {\n var arr,\n reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)');\n\n if ((arr = document.cookie.match(reg))) return decodeURIComponent(arr[2]);\n else return null;\n },\n setCookie: function (name, value, seconds) {\n seconds = seconds || 0; //seconds有值就直接赋值,没有为0\n var expires = '';\n if (seconds != 0) {\n //设置cookie生存时间\n var date = new Date();\n date.setTime(date.getTime() + seconds * 1000);\n expires = '; expires=' + date.toGMTString();\n }\n document.cookie = name + '=' + encodeURIComponent(value) + expires + '; path=/'; //转码并赋值\n },\n traceIdNumber: function (num) {\n let seed = [\n [0, 2, 3, 5, 9, 8, 7, 1, 4, 6],\n [1, 4, 3, 8, 5, 7, 9, 0, 6, 2],\n [3, 4, 0, 9, 5, 8, 7, 6, 2, 1], //百\n [2, 9, 5, 3, 0, 8, 1, 7, 4, 6], //千\n [5, 3, 2, 0, 4, 8, 9, 1, 7, 6], //万\n ];\n\n if (!num) {\n num = Math.round(new Date().getTime() / 1000);\n\n seed = [\n [6, 9, 5, 3, 0, 8, 1, 7, 4, 2],\n [0, 2, 3, 5, 9, 8, 7, 1, 4, 6],\n [5, 3, 2, 0, 4, 8, 9, 1, 7, 6],\n [3, 4, 0, 9, 5, 8, 7, 6, 2, 1],\n [1, 4, 3, 8, 5, 7, 9, 0, 6, 2],\n ];\n }\n\n num = num.toString().split('').reverse().join('');\n\n let newNum = '';\n\n for (var i = 4; i >= 0; i--) {\n var n = '0';\n\n if (num[i] != undefined) {\n n = num[i];\n }\n\n newNum += seed[i][n];\n }\n\n return newNum;\n },\n traceId: function () {\n let traceId = '';\n\n let beginDate = new Date('2015-01-01');\n let today = new Date();\n\n let daysSpan = Math.round((today.getTime() - beginDate.getTime()) / 86400000).toString();\n\n traceId =\n this.traceIdNumber(daysSpan) + this.traceIdNumber() + Math.round(today.getTime() % 10);\n\n return traceId;\n },\n // prettier-ignore\n getPlatform() {\n const platform = jsonParser(sessionStorage.getItem('platform') || localStorage.getItem('platform')) || '';\n switch (platform) {\n case 1:\n case 5:\n return 'H5';\n case 2:\n return 'iframe';\n case 3:\n case 6:\n return 'WebView';\n case 4:\n return 'Android';\n default:\n return '';\n }\n },\n};\n","/* eslint-disable no-param-reassign */\n/* eslint-disable class-methods-use-this */\nimport Axios from 'axios';\nimport { Toast } from 'vant';\nimport Cookies from 'js-cookie';\nimport { EPOS, getHardWare, getUrlKey, jsonParser } from '@/lib/utils';\nimport { defaultConfig } from './config';\n// import Store from '@/store/index';\n\n// const $store = Store;\nconst $toast = Toast;\n\nclass Http {\n constructor() {\n this.interceptorsRequest();\n this.interceptorsResponse();\n }\n\n /** 保存当前Axios实例对象 */\n static axiosInstance = Axios.create(defaultConfig);\n\n /** 统一的错误处理 */\n errorHandler = res => {\n const {\n data: { code, msg },\n status,\n statusText,\n } = res;\n const resultCode = code || status || 500;\n const resultMsg = msg || statusText || 'Internal Server Error';\n $toast(`${resultMsg} (${resultCode})`);\n };\n\n /** 请求拦截 */\n interceptorsRequest() {\n Http.axiosInstance.interceptors.request.use(\n async config => {\n // 开启进度条动画\n // $store.commit('setLoading', true);\n\n // todo: 添加公共头部字段\n // config['X-APP-ID'] = ;\n config['X-Language'] = Cookies.get('language');\n return config;\n },\n error => Promise.reject(error)\n );\n }\n\n /** 响应拦截 */\n interceptorsResponse() {\n const instance = Http.axiosInstance;\n instance.interceptors.response.use(\n response => {\n // 关闭进度条动画\n // $store.commit('setLoading', false);\n const { code = 500, data = {} } = response.data || {};\n\n // isAll 为 true,返回完整的后端响应\n const res = response.config?.isAll ? response.data : data;\n\n if (code === 0) return res || {};\n\n // disabledToast 为 true,跳过统一报错处理逻辑\n if (!response.config?.disabledToast) this.errorHandler(response);\n return Promise.reject(response);\n },\n error => {\n // 关闭进度条动画\n // $store.commit('setLoading', false);\n\n const $error = error;\n if ($error.response) {\n this.errorHandler($error.response);\n } else {\n // 服务器崩溃、断网、超时、CORS 等情况没有 response 响应\n $toast($error.message);\n }\n\n return Promise.reject($error.response || $error);\n }\n );\n }\n\n /** 通用请求工具函数 */\n request(method, url, payload, axiosConfig) {\n const config = {\n method,\n url,\n ...payload,\n ...axiosConfig,\n };\n\n // 单独处理自定义请求/响应回调\n return new Promise((resolve, reject) => {\n Http.axiosInstance\n .request(config)\n .then(response => {\n resolve(response);\n })\n .catch(error => {\n reject(error);\n });\n });\n }\n\n getDefaultHeadParams() {\n const appId =\n getUrlKey('appId') ||\n jsonParser(sessionStorage.getItem('appId') || localStorage.getItem('appId')) ||\n '';\n return {\n 'X-APP-ID': appId,\n 'X-Language': Cookies.get('language'),\n };\n }\n\n getDefaultParams() {\n const scene =\n getUrlKey('scene') ||\n jsonParser(sessionStorage.getItem('scene') || localStorage.getItem('scene')) ||\n '';\n const appId =\n getUrlKey('appId') ||\n jsonParser(sessionStorage.getItem('appId') || localStorage.getItem('appId')) ||\n '';\n\n return {\n epOs: EPOS[getHardWare()],\n epMode: 'web',\n scene,\n appId,\n language: Cookies.get('language'),\n };\n }\n\n post(url, data, config = {}) {\n const { headers = {}, ...otherConfig } = config;\n\n const formData = new FormData();\n data = Object.assign(this.getDefaultParams(), data);\n Object.keys(data).forEach(key => {\n formData.append(key, data[key]);\n });\n\n return this.request(\n 'post',\n url,\n { data: formData },\n {\n // prettier-ignore\n headers: Object.assign(\n headers,\n this.getDefaultHeadParams(),\n { 'Content-Type': 'multipart/form-data' },\n ),\n ...otherConfig,\n }\n );\n }\n\n get(url, params, config) {\n params = Object.assign(this.getDefaultParams(), params);\n return this.request('get', url, { params }, config);\n }\n}\n\nexport default new Http();\n","module.exports = __webpack_public_path__ + \"img/icon_google.0236fb17.png\";","module.exports = __webpack_public_path__ + \"img/icon_twitter.b905f4c9.png\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TheHeading.vue?vue&type=style&index=0&id=22314199&prod&lang=scss&scoped=true\"","module.exports = __webpack_public_path__ + \"img/icon_meta.87cef171.png\";","/** 邮箱验证 */\nexport const emailReg = /^[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}$/;\n\n/** 邮箱密码验证(必须是字母 + 数字) */\nexport const passwordReg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,15}$/;\n\n/** 验证码 */\nexport const captchaReg = /^\\d{6}$/;\n\n/** 网址 */\nexport const urlReg =\n /^(?:(http|https|ftp):\\/\\/)?((|[\\w-]+\\.)+[a-z0-9]+)(?:(\\/[^/?#]+)*)?(\\?[^#]+)?(#.+)?$/i;\n","/* eslint-disable import/prefer-default-export */\nimport { Platform } from '@/enums';\nimport isEmpty from 'lodash/isEmpty';\n\n/**\n * @description 和 WebView 进行通信的方法\n *\n * @typedef {Object} WebViewOptions\n * @property {string} func 定义的函数名(前端通过该函数向 WebView 传递数据)\n * @property {any} data 传递给 WebView 的数据\n * @property {Record any>} callbackObj 一个对象,里面是 Webview 定义的回调函数(前端通过该函数接受 WebView 的数据)\n *\n * @param {number} platform 平台类型(3:ios,4:Android)\n * @param {WebViewOptions} options\n */\nexport function webviewPostMessage(platform, { func = '', data = {}, callbackObj = {} }) {\n try {\n // 注册 callback\n if (!isEmpty(callbackObj)) {\n for (const key in callbackObj) {\n if (Object.hasOwnProperty.call(callbackObj, key)) {\n window[key] = res => {\n callbackObj[key](res);\n // 执行后清空\n window[key] = null;\n };\n }\n }\n }\n\n switch (platform) {\n case Platform.WebView:\n window[func](JSON.stringify(data));\n break;\n case Platform.Android:\n {\n const callbackKey = Object.keys(callbackObj)[0] || '';\n window.logoffJsBridge[func](JSON.stringify(data), callbackKey);\n }\n break;\n // case other platforms\n default:\n break;\n }\n } catch (error) {\n console.log(error);\n }\n}\n","/* eslint-disable no-continue */\n/* eslint-disable prefer-destructuring */\n\nexport const EPOS = {\n unknown: 0,\n android: 1,\n ios: 2,\n windows: 3,\n 0: 'unknown',\n 1: 'android',\n 2: 'ios',\n 3: 'windows',\n};\n\nexport const SoftWare = {\n unknown: 0,\n web: 1, // web浏览器\n daoyu: 2, // 叨鱼APP\n micromessenger: 3, // 微信小程序\n alipay: 4, // 支付宝小程序\n 0: 'unknown',\n 1: 'web',\n 2: 'daoyu',\n 3: 'micromessenger',\n 4: 'alipay',\n};\n\n// 获取设备平台信息\nexport function getHardWare() {\n const useragent = navigator.userAgent.toLowerCase();\n\n let hardwarePlatform = EPOS.unknown;\n if (useragent.includes('android')) {\n hardwarePlatform = EPOS.android;\n } else if (useragent.includes('windows')) {\n hardwarePlatform = EPOS.windows;\n } else if (/iphone|ipad|macintosh|ipod/.test(useragent)) {\n hardwarePlatform = EPOS.ios;\n }\n\n return hardwarePlatform;\n}\n\n// 获取app类型\nexport function getSoftWare() {\n const useragent = navigator.userAgent.toLowerCase();\n\n let softwarePlatform = SoftWare.unknown;\n if (useragent.includes('daoyu')) {\n softwarePlatform = SoftWare.daoyu;\n } else if (useragent.includes('micromessenger')) {\n softwarePlatform = SoftWare.micromessenger;\n } else if (useragent.includes('alipay') && window.payway === 2) {\n softwarePlatform = SoftWare.alipay;\n }\n\n return softwarePlatform;\n}\n\n// 获取浏览器类型\nexport function getBrowser() {\n const UserAgent = navigator.userAgent.toLowerCase();\n const browserInfo = {};\n\n const browserList = {\n Opera: UserAgent.indexOf('opera') > -1,\n IE10: UserAgent.indexOf('compatible') > -1 && UserAgent.indexOf('msie') > -1,\n IE11: !!UserAgent.match(/trident.*rv:11\\./),\n Firefox: UserAgent.indexOf('firefox') > -1,\n Edge: UserAgent.indexOf('edg') > -1,\n QQBrowser: /qqbrowser/.test(UserAgent),\n UCBrowser: UserAgent.indexOf('ubrowser') > -1,\n WeixinBrowser: /micromessenger/i.test(UserAgent),\n Safari: UserAgent.indexOf('safari') > -1 && UserAgent.indexOf('chrome') === -1,\n Chrome: UserAgent.indexOf('chrome') > -1 && UserAgent.indexOf('safari') > -1,\n };\n\n for (let i in browserList) {\n if (!browserList[i]) continue;\n\n // 请注意判断顺序(有些浏览器会有多个字段)\n let versions = '';\n switch (i) {\n case 'Opera':\n versions = UserAgent.match(/opera\\/([\\d.]+)/)[1];\n break;\n case 'IE10':\n case 'IE11':\n versions = UserAgent.match(/(msie\\s|trident.*rv:)([\\w.]+)/)[2];\n break;\n case 'Firefox':\n break;\n case 'Edge':\n versions = UserAgent.match(/edge\\/([\\d.]+)/)[1];\n break;\n case 'QQBrowser':\n versions = UserAgent.match(/qqbrowser\\/([\\d.]+)/)[1];\n break;\n case 'UCBrowser':\n versions = UserAgent.match(/ubrowser\\/([\\d.]+)/)[1];\n break;\n case 'Safari':\n versions = UserAgent.match(/version\\/([\\d.]+)/)[1];\n break;\n case 'Chrome':\n for (const mt in navigator.mimeTypes) {\n // 检测是否是360浏览器(测试只有pc端的360才起作用)\n if (navigator.mimeTypes[mt].type === 'application/360softmgrplugin') {\n i = '360';\n }\n }\n versions = UserAgent.match(/chrome\\/([\\d.]+)/)[1];\n break;\n default:\n break;\n }\n if (versions) {\n browserInfo.type = i;\n browserInfo.versions = parseInt(versions, 10);\n break;\n }\n }\n\n return browserInfo;\n}\n","import CryptoJS from 'crypto-js';\nimport { JSEncrypt } from 'jsencrypt';\nimport { v4 as uuidv4 } from 'uuid';\n\n/**\n * 对称加密\n */\nexport function encryptAes(content, key) {\n const keyTmp = CryptoJS.enc.Utf8.parse(key);\n const contentTmp = CryptoJS.enc.Utf8.parse(content);\n const encryptResult = CryptoJS.AES.encrypt(contentTmp, keyTmp, {\n mode: CryptoJS.mode.ECB,\n padding: CryptoJS.pad.Pkcs7,\n });\n const ret = encryptResult.ciphertext.toString().toUpperCase(); // hex\n // const ret = encryptResult.toString().toUpperCase(); //base64\n return ret;\n}\n\n/**\n * 非对称加密\n */\nexport function loginRsaEncrypt(pwd) {\n // 公钥\n // eslint-disable-next-line operator-linebreak\n let PUBLIC_KEY =\n 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrLCvPQVj1dYDdtb34bUGrxAYHLDMQdsjbk7+pY/ugKdHKhxQo1E43gt4HMgjFuirvaGfh1NJ2FCX9thillLZlHhkNOUcEQSbpcJycQ9wq7FBtOk7lE0dBBA9t3Zk/qBx2A2xPVvVNf9lNdNDDp2vXhQ549H9hg1s1TPHFEags3QIDAQAB';\n PUBLIC_KEY = `-----BEGIN PUBLIC KEY-----${PUBLIC_KEY}-----END PUBLIC KEY-----`;\n\n // 使用公钥加密\n const encrypt = new JSEncrypt();\n encrypt.setPublicKey(PUBLIC_KEY);\n const encrypted = encrypt.encrypt(pwd);\n return encrypted;\n}\n\n/** 生成 uuid */\nexport function getUidV4() {\n return uuidv4();\n}\n","import cloneDeep from 'lodash/cloneDeep';\nimport Cookies from 'js-cookie';\nimport * as RegExps from './regexp';\n\nexport * from './webview';\nexport * from './location';\nexport * from './browser';\nexport * from './encrypt';\nexport { RegExps };\n\nexport function clone(data) {\n return cloneDeep(data);\n}\n\n/**\n * @description 解析二进制字符串,从中获取当前支持的三方登录\n * @param {string} loginType 二进制字符串\n */\nexport function parseOAuths(loginType) {\n const oauths = loginType.split('').map(t => +t);\n\n return oauths.reduce((prev, num, index) => {\n if (num === 1) {\n const auth = (num * 10 ** (oauths.length - 1 - index)).toString();\n prev.push(auth);\n }\n return prev;\n }, []);\n}\n\n// 解析 JSON\nexport function jsonParser(text, reviver) {\n if (typeof text === 'string') {\n try {\n return JSON.parse(text, reviver);\n } catch (error) {\n console.error(`${text} is not a JSON`);\n return null;\n }\n }\n return null;\n}\n\n/**\n * @description 天御验证\n * @see https://cloud.tencent.com/document/product/1110/36841\n * @param {string} captchaAppId 登录验证码控制台,从【验证管理】页面进行查看。如果未创建过验证,请先新建验证。注意:不可使用客户端类型为小程序的CaptchaAppId,会导致数据统计错误。\n * @param {function} callback 验证结束后,调用回调函数,并在第一个参数中传入回调结果(包括成功和失败)。\n * @param {function} loadErrorCallback 加载异常,调用验证码js加载错误处理函数\n * @param {(Record)} options 外观配置参数\n * @return { object } 返回验证码实例,以便调用显示、隐藏、获取 ticket 等方法。\n */\nexport function handleTCaptcha(captchaAppId, callback, loadErrorCallback, options = {}) {\n try {\n let captcha = null;\n\n const { type = 'popup', getContainer = 'body', ...restOptions } = options;\n if (type === 'embed') {\n // 场景一:嵌入指定容器展示\n captcha = new window.TencentCaptcha(\n document.querySelector(getContainer),\n captchaAppId,\n callback,\n {\n userLanguage: Cookies.get('language'),\n type,\n ...restOptions,\n }\n );\n } else {\n // 场景二:以浮层形式居中弹出\n captcha = new window.TencentCaptcha(captchaAppId, callback, {\n userLanguage: Cookies.get('language'),\n ...restOptions,\n });\n }\n\n captcha.show();\n return captcha;\n } catch (error) {\n // 加载异常,调用验证码js加载错误处理函数\n if (loadErrorCallback) {\n loadErrorCallback(error);\n }\n }\n}\n\nexport function setLinkFavicon(href) {\n const link = document.querySelector(\"link[rel*='icon']\") || document.createElement('link');\n link.type = 'image/x-icon';\n link.rel = 'icon';\n link.href = href;\n document.getElementsByTagName('head')[0].appendChild(link);\n}\n","import http from '@/lib/axios';\n\n/**\n * @description 登录初始化配置(登录方式、三方登录参数、商标信息)\n * @param {Record<'appId' | 'language', string>} params appId:游戏appid,language:zh-CN\n * @return {Promise<{ loginType: string; thirdPartyPara: JSON; brandInfo: Record<'brandLogoUrl' | 'brandName' | 'webTagBrandLogoUrl', string> }} loginType: 二级制字符串每一位代表一种三方\n */\nexport function oauthInit(params, config) {\n return http.post('web/basic/initialize', params, config);\n}\n\n/**\n * @description Twitter 1.0 获取 OAuth URL 所需的 request_token 和 授权地址等\n * @return {Promise>}\n */\nexport function getTwitterRequestToken() {\n return http.post('web/third/getTwitterRequestToken', undefined, { disabledToast: true });\n}\n\n/**\n * @description Twitter 1.0 用 URL 返回的参数换取最终的 oauth_token\n * @param {Record<'requestToken' | 'oauthVerifier', string>} params\n * @return {Promise>} params\n */\nexport function getTwitterOAuthToken(params) {\n return http.post('web/third/getTwitterAccessToken', params);\n}\n\n/**\n * @param {Record<'oauth_token' | 'oauth_verifier' | 'oauth_consumer_key', string> } tokenInfo\n * @return {Promise<{ userId: string; loginType: number; token: string }>}\n */\nexport function twitterLogin(tokenInfo, config) {\n return http.post('web/third/twitterLogin', tokenInfo, config);\n}\n\n/**\n * @description Line 用 code 换取 access_token\n */\nexport function getLineAccessToken(code) {\n return http.post('web/third/getLineAccessToken', code);\n}\n\n/**\n * @param {{ lineToken: string }} tokenInfo\n * @return {Promise<{ userId: string; loginType: number; token: string }>}\n */\nexport function lineLogin(tokenInfo, config) {\n return http.post('web/third/lineLogin', tokenInfo, config);\n}\n\n/**\n * @param {{ fbToken: string }} tokenInfo\n * @return {Promise<{ userId: string; loginType: number; token: string }>}\n */\nexport function facebookLogin(tokenInfo, config) {\n return http.post('web/third/fbLogin', tokenInfo, config);\n}\n\n/**\n * @param {{ googleToken: string }} tokenInfo\n * @return {Promise<{ userId: string; loginType: number; token: string }>}\n */\nexport function googleLogin(tokenInfo, config) {\n return http.post('web/third/googleLogin', tokenInfo, config);\n}\n\n/**\n * @param {Record<'appleUserId' | 'appleToken', string>} tokenInfo\n * @return {Promise<{ userId: string; loginType: number; token: string }>}\n */\nexport function appleLogin(tokenInfo, config) {\n return http.post('web/third/appleIdLogin', tokenInfo, config);\n}\n"],"sourceRoot":""}