@@ -5,6 +5,7 @@ import { v4 as uuidv4 } from "uuid";
55import type { AuthOptions } from "./AuthOptions" ;
66import { AuthEvents , AuthEventNames } from "./AuthEvents" ;
77import StoreProvider from "./StoreProvider" ;
8+ import AuthLogger from "./AuthLogger" ;
89
910export class AuthPlugin {
1011 private authOptions : AuthOptions | undefined ;
@@ -130,11 +131,14 @@ class KeycloakPlugin {
130131 idTokenKey : `${ authOptions . appClientId } -idToken`
131132 } ;
132133
133- return this . initKeycloak ( ) ;
134+ AuthLogger . log ( "Init keycloak" ) ;
135+ return await this . initKeycloak ( ) ;
134136 } catch ( error ) {
135- console . error ( "auth init failed", error ) ;
137+ AuthLogger . warn ( "Init keycloak failed", error ) ;
136138 await this . clearStorage ( ) ;
137- return false ;
139+
140+ AuthLogger . log ( "Retry init keycloak without tokens" ) ;
141+ return await this . initKeycloak ( ) ;
138142 }
139143 }
140144
@@ -158,9 +162,7 @@ class KeycloakPlugin {
158162 ...this . pluginState . authOptions . keycloakInitOptions
159163 } ) ;
160164
161- if ( authenticated ) {
162- console . debug ( "authenticated keycloak" ) ;
163- }
165+ AuthLogger . debug ( authenticated ? "Authenticated keycloak" : "Not authenticated keycloak" ) ;
164166
165167 return authenticated ;
166168 }
@@ -171,28 +173,28 @@ class KeycloakPlugin {
171173 }
172174
173175 public async login ( redirectUri : string , idp : string ) : Promise < void > {
174- console . debug ( "login navigating to keycloak with returnUrl" , redirectUri ) ;
176+ AuthLogger . debug ( "Login navigating to keycloak with returnUrl" , redirectUri ) ;
175177
176178 if ( ! this . pluginState || ! this . pluginState ?. keycloak ) throw new Error ( "Init has to be called first" ) ;
177179 await this . pluginState . keycloak . login ( { redirectUri, idpHint : idp } ) ;
178180 }
179181
180182 public createLoginUrl ( redirectUri : string , idp : string ) : string {
181- console . debug ( "create loginUrl to keycloak with returnUrl" , redirectUri ) ;
183+ AuthLogger . debug ( "Create loginUrl to keycloak with returnUrl" , redirectUri ) ;
182184
183185 if ( ! this . pluginState || ! this . pluginState . keycloak ) throw new Error ( "Init has to be called first" ) ;
184186 return this . pluginState . keycloak . createLoginUrl ( { redirectUri, idpHint : idp } ) ;
185187 }
186188
187189 public createLogoutUrl ( redirectUri : string ) : string {
188- console . debug ( "create logoutUrl to keycloak with returnUrl" , redirectUri ) ;
190+ AuthLogger . debug ( "Create logoutUrl to keycloak with returnUrl" , redirectUri ) ;
189191
190192 if ( ! this . pluginState || ! this . pluginState . keycloak ) throw new Error ( "Init has to be called first" ) ;
191193 return this . pluginState . keycloak . createLogoutUrl ( { redirectUri } ) ;
192194 }
193195
194196 public async logout ( redirectUri : string ) : Promise < void > {
195- console . debug ( "logout navigating to keycloak with returnUrl" , redirectUri ) ;
197+ AuthLogger . debug ( "Logout navigating to keycloak with returnUrl" , redirectUri ) ;
196198
197199 await this . clearStorage ( ) ;
198200
@@ -223,10 +225,10 @@ class KeycloakPlugin {
223225 const successful : boolean = await this . pluginState . keycloak . updateToken ( minValidity ) ;
224226
225227 if ( successful ) {
226- console . debug ( "token refreshed" ) ;
228+ AuthLogger . debug ( "Token refreshed" ) ;
227229 }
228230 } catch ( error ) {
229- console . error ( "token refresh failed" , error || "token may be empty" ) ;
231+ AuthLogger . error ( "Token refresh failed" , error || "token may be empty" ) ;
230232 }
231233 }
232234
@@ -277,7 +279,9 @@ class GuestPlugin {
277279
278280 if ( guestId ) {
279281 guestRoles = authOptions . guestRoles || [ "User" ] ;
280- console . debug ( "authenticated guest" ) ;
282+ AuthLogger . debug ( "Authenticated guest" ) ;
283+ } else {
284+ AuthLogger . debug ( "Not authenticated guest" ) ;
281285 }
282286
283287 this . pluginState = {
@@ -290,7 +294,7 @@ class GuestPlugin {
290294 }
291295
292296 public async login ( authOptions : AuthOptions ) : Promise < void > {
293- console . debug ( "login guest" ) ;
297+ AuthLogger . debug ( "Login guest" ) ;
294298
295299 if ( ! this . pluginState ) throw new Error ( "Init has to be called first" ) ;
296300
@@ -301,7 +305,7 @@ class GuestPlugin {
301305 }
302306
303307 public async logout ( ) : Promise < void > {
304- console . debug ( "logout guest" ) ;
308+ AuthLogger . debug ( "Logout guest" ) ;
305309
306310 if ( ! this . pluginState ) return ;
307311
0 commit comments