File tree Expand file tree Collapse file tree 2 files changed +26
-0
lines changed
Expand file tree Collapse file tree 2 files changed +26
-0
lines changed Original file line number Diff line number Diff line change @@ -58,6 +58,24 @@ export const getMyFetch = async () => {
5858 return myFetch ;
5959} ;
6060
61+ function windowLogin ( ) {
62+ return new Promise ( ( resolve , reject ) => {
63+ const authUrl = `${ BASE_API_URL } /login?close=true` ;
64+ const loginWindow = window . open ( authUrl , "Login" , "width=500,height=600" ) ;
65+
66+ const interval = setInterval ( ( ) => {
67+ try {
68+ if ( loginWindow . closed ) {
69+ clearInterval ( interval ) ;
70+ resolve ( ) ;
71+ }
72+ } catch ( err ) {
73+ reject ( err ) ;
74+ }
75+ } , 1000 ) ;
76+ } ) ;
77+ }
78+
6179export const resolve = async payload => {
6280 let { url } = payload ;
6381 const { params = null , data = null , ...rest } = payload ;
@@ -77,6 +95,11 @@ export const resolve = async payload => {
7795
7896 resolved . payload = await promise ;
7997
98+ if ( resolved . payload . status == 401 ) {
99+ await windowLogin ( ) ;
100+ resolved . payload = await myFetch ( url , rest ) ;
101+ }
102+
80103 if ( ! resolved . payload . ok ) {
81104 try {
82105 resolved . error = await resolved . payload . json ( ) ;
Original file line number Diff line number Diff line change @@ -203,6 +203,9 @@ export default function Routes() {
203203 < Header title = "Manage Kudos" > </ Header >
204204 < ManageKudosPage />
205205 </ Route >
206+ < Route path = "/login?close=true" >
207+ { window . close ( ) }
208+ </ Route >
206209 </ Switch >
207210 ) ;
208211}
You can’t perform that action at this time.
0 commit comments