@@ -37,6 +37,19 @@ type handleLoginProps = {
3737 onError : ( ) => void ;
3838} ;
3939
40+ function getToken ( user : User | null , useAccessToken : boolean ) : string {
41+ if ( ! user ) {
42+ throw new Error ( 'user is null' ) ;
43+ }
44+ if ( useAccessToken ) {
45+ return user . access_token ;
46+ }
47+ if ( user . id_token ) {
48+ return user . id_token ;
49+ }
50+ throw new Error ( 'id_token is empty' ) ;
51+ }
52+
4053export function createUserManager (
4154 oidcParams : {
4255 issuerUrl : string ;
@@ -75,7 +88,7 @@ async function handleLogin({
7588 userManager . events . addAccessTokenExpiring ( async ( ) => {
7689 const user = await userManager . signinSilent ( ) ;
7790 setAuth ( {
78- token : useAccessToken ? user ?. access_token ! : user ?. id_token ! ,
91+ token : getToken ( user , useAccessToken ) ,
7992 } ) ;
8093 } ) ;
8194 userManager . events . addSilentRenewError ( ( e ) => {
@@ -95,7 +108,7 @@ async function handleLogin({
95108 if ( ! ! user ?. expired || ( user ?. expires_in && user ?. expires_in <= 2 ) ) {
96109 user = await userManager . signinSilent ( ) ;
97110 setAuth ( {
98- token : useAccessToken ? user ?. access_token ! : user ?. id_token ! ,
111+ token : getToken ( user , useAccessToken ) ,
99112 } ) ;
100113 }
101114 }
@@ -113,7 +126,7 @@ async function handleLogin({
113126 storedUser && ! storedUser . expired
114127 ? storedUser
115128 : await userManager . signinRedirectCallback ( window . location . href ) ;
116- setAuth ( { token : useAccessToken ? user ?. access_token : user ?. id_token ! } ) ;
129+ setAuth ( { token : getToken ( user , useAccessToken ) } ) ;
117130 setupAuthEventsHooks ( userManager , useAccessToken ) ;
118131 setupVisibilityEventsHooks ( userManager , user , useAccessToken ) ;
119132 onAfterLogin ( ) ;
0 commit comments