fix: avoid social callback session race

This commit is contained in:
237899745
2026-05-28 21:23:57 +08:00
parent edc843951b
commit 14713296f3
10 changed files with 49 additions and 38 deletions

View File

@@ -302,7 +302,7 @@
"name": "vendor-vue"
},
"index.html": {
"file": "assets/app-D7SWy-KG.js",
"file": "assets/app-BV_xMlg4.js",
"name": "app",
"src": "index.html",
"isEntry": true,
@@ -323,7 +323,7 @@
]
},
"login.html": {
"file": "assets/login-C88J0b5r.js",
"file": "assets/login-D0qy0-VA.js",
"name": "login",
"src": "login.html",
"isEntry": true,
@@ -401,7 +401,7 @@
]
},
"src/pages/LoginPage.vue": {
"file": "assets/LoginPage-N6sdjwkY.js",
"file": "assets/LoginPage-B-9NNWX9.js",
"name": "LoginPage",
"src": "src/pages/LoginPage.vue",
"isDynamicEntry": true,
@@ -418,7 +418,7 @@
"_auth-CuW_jyJD.js"
],
"css": [
"assets/LoginPage-CSaMrhQm.css"
"assets/LoginPage-udDwyYMW.css"
]
},
"src/pages/RegisterPage.vue": {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,2 +1,2 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./LoginPage-N6sdjwkY.js","./vendor-vue-Da_zwKNU.js","./SocialLoginButtons-BaFXslgf.js","./base-C_0HtztH.js","./base-CiSqh4F9.css","./el-overlay-ckkTzDcK.js","./aria-DLpFpzDe.js","./http-BDcxFXLM.js","./vendor-axios-B9ygI19o.js","./index-D04QrwME.js","./el-overlay-hkg5a9kt.css","./auth-CuW_jyJD.js","./style-CEbARg1o.js","./style-BHGuKLUF.css","./SocialLoginButtons-qO3SCoE7.css","./LoginPage-CSaMrhQm.css","./RegisterPage-Bypz6ilN.js","./el-card-cnxuvbL3.js","./el-card-BqOrgVp1.css","./el-alert-BgJljmz-.js","./el-button-xGNUoXVX.js","./el-button-BRDnKxwT.css","./el-input-nl0Ylqa_.js","./el-input-D6B3r8CH.css","./el-alert-B-NgiIln.css","./password-7ryi82gE.js","./RegisterPage-LYXwWYc1.css","./ResetPasswordPage-Znm7wIOo.js","./ResetPasswordPage-DAB63ins.css","./SocialBindCallbackPage-BXLD-LiQ.js","./el-skeleton-item-cWa5ANvD.js","./el-skeleton-item-BLY1jEuR.css","./settings-C8OWd3zp.js","./SocialBindCallbackPage-BZgzv_7a.css","./VerifyResultPage-Du3cLyZ2.js","./VerifyResultPage-BnGv8vyq.css","./AppLayout-8mkxrTVV.js","./user-DIrCtqzm.js","./el-popper-_4NhtSRX.js","./el-popper-BrfLRiIr.css","./user-B5lTGWdM.css","./AppLayout-C0FaVSZn.css","./AccountsPage-DZM5eF8A.js","./accounts-HALpNswY.js","./accounts-DqlHDq0H.css","./el-select-BADfKG7m.js","./el-select-B0XIb2QK.css","./vendor-realtime-CA1CrNgP.js","./AccountsPage-DKewJ7S7.css","./SchedulesPage-vAAprGPM.js","./el-pagination-D16TMO1B.js","./el-pagination-B1FwbX1n.css","./SchedulesPage-Dxq2ghmQ.css","./ScreenshotsPage-DrfiqfWk.js","./ScreenshotsPage-BhLfAzHf.css"])))=>i.map(i=>d[i]);
import{_ as v}from"./style-CEbARg1o.js";import{r as g,c as R,o as y,a as A,b as L,d as k,e as b}from"./vendor-vue-Da_zwKNU.js";const w={};function V(p,l){const a=g("RouterView");return y(),R(a)}const O=v(w,[["render",V]]),T="modulepreload",D=function(p,l){return new URL(p,l).href},f={},o=function(l,a,u){let _=Promise.resolve();if(a&&a.length>0){let P=function(e){return Promise.all(e.map(s=>Promise.resolve(s).then(c=>({status:"fulfilled",value:c}),c=>({status:"rejected",reason:c}))))};const n=document.getElementsByTagName("link"),t=document.querySelector("meta[property=csp-nonce]"),h=t?.nonce||t?.getAttribute("nonce");_=P(a.map(e=>{if(e=D(e,u),e in f)return;f[e]=!0;const s=e.endsWith(".css"),c=s?'[rel="stylesheet"]':"";if(u)for(let i=n.length-1;i>=0;i--){const m=n[i];if(m.href===e&&(!s||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${e}"]${c}`))return;const r=document.createElement("link");if(r.rel=s?"stylesheet":T,s||(r.as="script"),r.crossOrigin="",r.href=e,h&&r.setAttribute("nonce",h),document.head.appendChild(r),s)return new Promise((i,m)=>{r.addEventListener("load",i),r.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${e}`)))})}))}function d(n){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=n,window.dispatchEvent(t),!t.defaultPrevented)throw n}return _.then(n=>{for(const t of n||[])t.status==="rejected"&&d(t.reason);return l().catch(d)})},I=()=>o(()=>import("./LoginPage-N6sdjwkY.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]),import.meta.url),S=()=>o(()=>import("./RegisterPage-Bypz6ilN.js"),__vite__mapDeps([16,3,1,4,17,18,19,20,9,21,22,7,8,6,23,24,11,25,12,13,26]),import.meta.url),C=()=>o(()=>import("./ResetPasswordPage-Znm7wIOo.js"),__vite__mapDeps([27,3,1,4,17,18,19,20,9,21,22,7,8,6,23,24,11,25,12,13,28]),import.meta.url),$=()=>o(()=>import("./SocialBindCallbackPage-BXLD-LiQ.js"),__vite__mapDeps([29,3,1,4,17,18,30,31,11,7,8,32,12,13,33]),import.meta.url),E=()=>o(()=>import("./VerifyResultPage-Du3cLyZ2.js"),__vite__mapDeps([34,3,1,4,17,18,20,9,21,12,13,35]),import.meta.url),B=()=>o(()=>import("./AppLayout-8mkxrTVV.js"),__vite__mapDeps([36,3,1,4,37,19,20,9,21,22,7,8,6,23,24,38,5,10,39,40,30,31,11,32,2,12,13,14,25,41]),import.meta.url),N=()=>o(()=>import("./AccountsPage-DZM5eF8A.js"),__vite__mapDeps([42,3,1,4,5,6,7,8,9,10,19,20,21,22,23,24,43,37,38,39,40,44,30,31,45,46,17,18,32,47,12,13,48]),import.meta.url),j=()=>o(()=>import("./SchedulesPage-vAAprGPM.js"),__vite__mapDeps([49,3,1,4,38,22,7,8,6,20,9,21,23,5,10,39,19,24,45,46,43,37,40,44,50,51,17,18,30,31,12,13,52]),import.meta.url),q=()=>o(()=>import("./ScreenshotsPage-DrfiqfWk.js"),__vite__mapDeps([53,3,1,4,5,6,7,8,9,10,50,45,38,22,20,21,23,39,46,51,17,18,30,31,12,13,54]),import.meta.url),x=[{path:"/",redirect:"/login"},{path:"/login",name:"login",component:I},{path:"/register",name:"register",component:S},{path:"/reset-password/:token",name:"reset_password",component:C},{path:"/social-bind-callback",name:"social_bind_callback",component:$},{path:"/api/verify-email/:token",name:"verify_email",component:E},{path:"/api/verify-bind-email/:token",name:"verify_bind_email",component:E},{path:"/app",component:B,children:[{path:"",redirect:"/app/accounts"},{path:"accounts",name:"accounts",component:N},{path:"schedules",name:"schedules",component:j},{path:"screenshots",name:"screenshots",component:q}]},{path:"/:pathMatch(.*)*",redirect:"/login"}],M=A({history:L(),routes:x});k(O).use(b()).use(M).mount("#app");
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./LoginPage-B-9NNWX9.js","./vendor-vue-Da_zwKNU.js","./SocialLoginButtons-BaFXslgf.js","./base-C_0HtztH.js","./base-CiSqh4F9.css","./el-overlay-ckkTzDcK.js","./aria-DLpFpzDe.js","./http-BDcxFXLM.js","./vendor-axios-B9ygI19o.js","./index-D04QrwME.js","./el-overlay-hkg5a9kt.css","./auth-CuW_jyJD.js","./style-CEbARg1o.js","./style-BHGuKLUF.css","./SocialLoginButtons-qO3SCoE7.css","./LoginPage-udDwyYMW.css","./RegisterPage-Bypz6ilN.js","./el-card-cnxuvbL3.js","./el-card-BqOrgVp1.css","./el-alert-BgJljmz-.js","./el-button-xGNUoXVX.js","./el-button-BRDnKxwT.css","./el-input-nl0Ylqa_.js","./el-input-D6B3r8CH.css","./el-alert-B-NgiIln.css","./password-7ryi82gE.js","./RegisterPage-LYXwWYc1.css","./ResetPasswordPage-Znm7wIOo.js","./ResetPasswordPage-DAB63ins.css","./SocialBindCallbackPage-BXLD-LiQ.js","./el-skeleton-item-cWa5ANvD.js","./el-skeleton-item-BLY1jEuR.css","./settings-C8OWd3zp.js","./SocialBindCallbackPage-BZgzv_7a.css","./VerifyResultPage-Du3cLyZ2.js","./VerifyResultPage-BnGv8vyq.css","./AppLayout-8mkxrTVV.js","./user-DIrCtqzm.js","./el-popper-_4NhtSRX.js","./el-popper-BrfLRiIr.css","./user-B5lTGWdM.css","./AppLayout-C0FaVSZn.css","./AccountsPage-DZM5eF8A.js","./accounts-HALpNswY.js","./accounts-DqlHDq0H.css","./el-select-BADfKG7m.js","./el-select-B0XIb2QK.css","./vendor-realtime-CA1CrNgP.js","./AccountsPage-DKewJ7S7.css","./SchedulesPage-vAAprGPM.js","./el-pagination-D16TMO1B.js","./el-pagination-B1FwbX1n.css","./SchedulesPage-Dxq2ghmQ.css","./ScreenshotsPage-DrfiqfWk.js","./ScreenshotsPage-BhLfAzHf.css"])))=>i.map(i=>d[i]);
import{_ as v}from"./style-CEbARg1o.js";import{r as g,c as R,o as y,a as A,b as L,d as k,e as b}from"./vendor-vue-Da_zwKNU.js";const w={};function V(p,l){const a=g("RouterView");return y(),R(a)}const O=v(w,[["render",V]]),T="modulepreload",D=function(p,l){return new URL(p,l).href},f={},o=function(l,a,u){let _=Promise.resolve();if(a&&a.length>0){let P=function(e){return Promise.all(e.map(s=>Promise.resolve(s).then(c=>({status:"fulfilled",value:c}),c=>({status:"rejected",reason:c}))))};const n=document.getElementsByTagName("link"),t=document.querySelector("meta[property=csp-nonce]"),h=t?.nonce||t?.getAttribute("nonce");_=P(a.map(e=>{if(e=D(e,u),e in f)return;f[e]=!0;const s=e.endsWith(".css"),c=s?'[rel="stylesheet"]':"";if(u)for(let i=n.length-1;i>=0;i--){const m=n[i];if(m.href===e&&(!s||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${e}"]${c}`))return;const r=document.createElement("link");if(r.rel=s?"stylesheet":T,s||(r.as="script"),r.crossOrigin="",r.href=e,h&&r.setAttribute("nonce",h),document.head.appendChild(r),s)return new Promise((i,m)=>{r.addEventListener("load",i),r.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${e}`)))})}))}function d(n){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=n,window.dispatchEvent(t),!t.defaultPrevented)throw n}return _.then(n=>{for(const t of n||[])t.status==="rejected"&&d(t.reason);return l().catch(d)})},I=()=>o(()=>import("./LoginPage-B-9NNWX9.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]),import.meta.url),S=()=>o(()=>import("./RegisterPage-Bypz6ilN.js"),__vite__mapDeps([16,3,1,4,17,18,19,20,9,21,22,7,8,6,23,24,11,25,12,13,26]),import.meta.url),C=()=>o(()=>import("./ResetPasswordPage-Znm7wIOo.js"),__vite__mapDeps([27,3,1,4,17,18,19,20,9,21,22,7,8,6,23,24,11,25,12,13,28]),import.meta.url),$=()=>o(()=>import("./SocialBindCallbackPage-BXLD-LiQ.js"),__vite__mapDeps([29,3,1,4,17,18,30,31,11,7,8,32,12,13,33]),import.meta.url),E=()=>o(()=>import("./VerifyResultPage-Du3cLyZ2.js"),__vite__mapDeps([34,3,1,4,17,18,20,9,21,12,13,35]),import.meta.url),B=()=>o(()=>import("./AppLayout-8mkxrTVV.js"),__vite__mapDeps([36,3,1,4,37,19,20,9,21,22,7,8,6,23,24,38,5,10,39,40,30,31,11,32,2,12,13,14,25,41]),import.meta.url),N=()=>o(()=>import("./AccountsPage-DZM5eF8A.js"),__vite__mapDeps([42,3,1,4,5,6,7,8,9,10,19,20,21,22,23,24,43,37,38,39,40,44,30,31,45,46,17,18,32,47,12,13,48]),import.meta.url),j=()=>o(()=>import("./SchedulesPage-vAAprGPM.js"),__vite__mapDeps([49,3,1,4,38,22,7,8,6,20,9,21,23,5,10,39,19,24,45,46,43,37,40,44,50,51,17,18,30,31,12,13,52]),import.meta.url),q=()=>o(()=>import("./ScreenshotsPage-DrfiqfWk.js"),__vite__mapDeps([53,3,1,4,5,6,7,8,9,10,50,45,38,22,20,21,23,39,46,51,17,18,30,31,12,13,54]),import.meta.url),x=[{path:"/",redirect:"/login"},{path:"/login",name:"login",component:I},{path:"/register",name:"register",component:S},{path:"/reset-password/:token",name:"reset_password",component:C},{path:"/social-bind-callback",name:"social_bind_callback",component:$},{path:"/api/verify-email/:token",name:"verify_email",component:E},{path:"/api/verify-bind-email/:token",name:"verify_bind_email",component:E},{path:"/app",component:B,children:[{path:"",redirect:"/app/accounts"},{path:"accounts",name:"accounts",component:N},{path:"schedules",name:"schedules",component:j},{path:"screenshots",name:"screenshots",component:q}]},{path:"/:pathMatch(.*)*",redirect:"/login"}],M=A({history:L(),routes:x});k(O).use(b()).use(M).mount("#app");

View File

@@ -1 +1 @@
import"./style-CEbARg1o.js";import{d as o}from"./vendor-vue-Da_zwKNU.js";import p from"./LoginPage-N6sdjwkY.js";import"./SocialLoginButtons-BaFXslgf.js";import"./base-C_0HtztH.js";import"./el-overlay-ckkTzDcK.js";import"./aria-DLpFpzDe.js";import"./http-BDcxFXLM.js";import"./vendor-axios-B9ygI19o.js";import"./index-D04QrwME.js";import"./auth-CuW_jyJD.js";o(p).mount("#app");
import"./style-CEbARg1o.js";import{d as o}from"./vendor-vue-Da_zwKNU.js";import p from"./LoginPage-B-9NNWX9.js";import"./SocialLoginButtons-BaFXslgf.js";import"./base-C_0HtztH.js";import"./el-overlay-ckkTzDcK.js";import"./aria-DLpFpzDe.js";import"./http-BDcxFXLM.js";import"./vendor-axios-B9ygI19o.js";import"./index-D04QrwME.js";import"./auth-CuW_jyJD.js";o(p).mount("#app");

View File

@@ -1,16 +1,17 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
<title>知识管理平台</title>
<script type="module" crossorigin src="./assets/app-D7SWy-KG.js"></script>
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
<title>知识管理平台</title>
<script type="module" crossorigin src="./assets/app-BV_xMlg4.js"></script>
<link rel="modulepreload" crossorigin href="./assets/style-CEbARg1o.js">
<link rel="modulepreload" crossorigin href="./assets/vendor-vue-Da_zwKNU.js">
<link rel="stylesheet" crossorigin href="./assets/style-BHGuKLUF.css">
</head>
<body>
<noscript>该页面需要启用 JavaScript 才能使用。</noscript>
<div id="app"></div>
</body>
</html>
</head>
<body>
<noscript>该页面需要启用 JavaScript 才能使用。</noscript>
<div id="app"></div>
</body>
</html>

View File

@@ -1,10 +1,10 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
<title>知识管理平台</title>
<script type="module" crossorigin src="./assets/login-C88J0b5r.js"></script>
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
<title>知识管理平台</title>
<script type="module" crossorigin src="./assets/login-D0qy0-VA.js"></script>
<link rel="modulepreload" crossorigin href="./assets/style-CEbARg1o.js">
<link rel="modulepreload" crossorigin href="./assets/vendor-vue-Da_zwKNU.js">
<link rel="modulepreload" crossorigin href="./assets/base-C_0HtztH.js">
@@ -15,15 +15,15 @@
<link rel="modulepreload" crossorigin href="./assets/el-overlay-ckkTzDcK.js">
<link rel="modulepreload" crossorigin href="./assets/auth-CuW_jyJD.js">
<link rel="modulepreload" crossorigin href="./assets/SocialLoginButtons-BaFXslgf.js">
<link rel="modulepreload" crossorigin href="./assets/LoginPage-N6sdjwkY.js">
<link rel="modulepreload" crossorigin href="./assets/LoginPage-B-9NNWX9.js">
<link rel="stylesheet" crossorigin href="./assets/style-BHGuKLUF.css">
<link rel="stylesheet" crossorigin href="./assets/base-CiSqh4F9.css">
<link rel="stylesheet" crossorigin href="./assets/el-overlay-hkg5a9kt.css">
<link rel="stylesheet" crossorigin href="./assets/SocialLoginButtons-qO3SCoE7.css">
<link rel="stylesheet" crossorigin href="./assets/LoginPage-CSaMrhQm.css">
</head>
<body>
<noscript>该页面需要启用 JavaScript 才能使用。</noscript>
<div id="app"></div>
</body>
</html>
<link rel="stylesheet" crossorigin href="./assets/LoginPage-udDwyYMW.css">
</head>
<body>
<noscript>该页面需要启用 JavaScript 才能使用。</noscript>
<div id="app"></div>
</body>