@@ -12,20 +12,25 @@ import Login from './login'
1212
1313const SignOutListener = ( ) => {
1414 const searchParams = useSearchParams ( )
15+ const { status } = useSession ( )
1516
1617 useEffect ( ( ) => {
17- if ( searchParams . get ( 'signOut' ) ) {
18+ if ( ! searchParams . get ( 'signOut' ) ) return
19+
20+ if ( status === 'authenticated' ) {
1821 signOut ( )
19- const params = new URLSearchParams ( searchParams . toString ( ) )
20- params . delete ( 'signOut' )
21- const filteredParams = params . toString ( )
22- window . history . replaceState (
23- null ,
24- '' ,
25- `${ window . location . pathname } ${ filteredParams ? `?${ filteredParams } ` : '' } ` ,
26- )
22+ return
2723 }
28- } , [ searchParams ] )
24+
25+ const params = new URLSearchParams ( searchParams . toString ( ) )
26+ params . delete ( 'signOut' )
27+ const filteredParams = params . toString ( )
28+ window . history . replaceState (
29+ null ,
30+ '' ,
31+ `${ window . location . pathname } ${ filteredParams ? `?${ filteredParams } ` : '' } ` ,
32+ )
33+ } , [ searchParams , status ] )
2934
3035 return null
3136}
@@ -34,12 +39,12 @@ const AccountInfo = () => {
3439 const { data : session , status, update } = useSession ( )
3540 return (
3641 < SharedLayout title = 'Account' >
42+ < Suspense >
43+ < SignOutListener />
44+ </ Suspense >
45+
3746 { status === 'authenticated' && session ?. user ? (
3847 < >
39- < Suspense >
40- < SignOutListener />
41- </ Suspense >
42-
4348 < Row columns = { [ 6 , 6 , 8 , 8 ] } >
4449 < Column start = { 1 } width = { [ 6 , 4 , 5 , 4 ] } >
4550 < Field description = 'CDRXIV uses Janeway for authentication. Signing out does not deactivate your Janeway session.' >
0 commit comments