@@ -60,6 +60,15 @@ const oidc_login = async (): Promise<void> => {
6060 }
6161} ;
6262
63+ const oidc_refresh = async ( ) : Promise < void > => {
64+ try {
65+ console . debug ( "[Auth] Refreshing token using OIDC" ) ;
66+ await userManager ?. signinSilent ( ) ;
67+ } catch ( e ) {
68+ console . error ( "[Auth] Error refreshing token using OIDC: " , e ) ;
69+ }
70+ } ;
71+
6372const oidc_logout = async ( ) : Promise < void > => {
6473 // Capture the id_token before removing the user, as Okta and other providers expect id_token_hint
6574 const user : User | null | undefined = await userManager ?. getUser ( ) ;
@@ -152,6 +161,7 @@ export interface AuthService {
152161 getToken : ( ) => Promise < string | undefined > ;
153162 getUsernameAndPassword : ( ) => UsernameAndPassword | undefined ;
154163 login : ( username : string , password : string ) => Promise < void > ;
164+ refresh : ( ) => Promise < void > ;
155165 logout : ( ) => Promise < void > ;
156166}
157167
@@ -184,6 +194,7 @@ export const useAuth: () => AuthService = (): AuthService => {
184194 getUsernameAndPassword : ( ) => undefined ,
185195 getUsername : oidc_getUsername ,
186196 login : oidc_login ,
197+ refresh : oidc_refresh ,
187198 logout : oidc_logout
188199 } ;
189200 } else if ( config . type === "basic" ) {
@@ -195,6 +206,7 @@ export const useAuth: () => AuthService = (): AuthService => {
195206 getUsernameAndPassword : basic_getUsernameAndPassword ,
196207 getUsername : basic_getUsername ,
197208 login : basic_login ,
209+ refresh : ( ) => Promise . resolve ( ) ,
198210 logout : basic_logout
199211 } ;
200212 }
@@ -208,6 +220,7 @@ export const useAuth: () => AuthService = (): AuthService => {
208220 getUsername : ( ) => Promise . resolve ( undefined ) ,
209221 getUsernameAndPassword : ( ) => undefined ,
210222 login : ( ) => Promise . resolve ( ) ,
223+ refresh : ( ) => Promise . resolve ( ) ,
211224 logout : ( ) => Promise . resolve ( )
212225 } ;
213226} ;
0 commit comments