@authu/react 1.0.52 → 1.0.54

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"AuthUProvider.d.ts","sourceRoot":"","sources":["../src/AuthUProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EAGlB,MAAM,YAAY,CAAC;AAgBpB,eAAO,MAAM,YAAY,mDAAgD,CAAC;AAO1E,UAAU,kBAAkB;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAID,wBAAgB,aAAa,CAAC,EAAC,MAAM,EAAE,QAAQ,EAAC,EAAE,kBAAkB,2CA8XnE"}
1
+ {"version":3,"file":"AuthUProvider.d.ts","sourceRoot":"","sources":["../src/AuthUProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EAGlB,MAAM,YAAY,CAAC;AAgBpB,eAAO,MAAM,YAAY,mDAAgD,CAAC;AAO1E,UAAU,kBAAkB;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAID,wBAAgB,aAAa,CAAC,EAAC,MAAM,EAAE,QAAQ,EAAC,EAAE,kBAAkB,2CA6bnE"}
@@ -250,6 +250,49 @@ export function AuthUProvider({ config, children }) {
250
250
  });
251
251
  return;
252
252
  }
253
+ if (tokens.refreshToken) {
254
+ console.log('[AuthU SDK] Access token expired, attempting refresh...');
255
+ try {
256
+ const response = await fetch(`${buildBaseUrl(config.domain)}/oauth/token`, {
257
+ method: 'POST',
258
+ headers: { 'Content-Type': 'application/json' },
259
+ body: JSON.stringify({
260
+ grant_type: 'refresh_token',
261
+ refresh_token: tokens.refreshToken,
262
+ client_id: config.clientId
263
+ })
264
+ });
265
+ if (response.ok) {
266
+ const newTokens = await response.json();
267
+ const expiresAt = Date.now() + newTokens.expires_in * 1000;
268
+ const user = newTokens.id_token
269
+ ? parseIdToken(newTokens.id_token)
270
+ : await fetchUserInfo(newTokens.access_token);
271
+ localStorage.setItem(TOKEN_STORAGE_KEY, JSON.stringify({
272
+ accessToken: newTokens.access_token,
273
+ refreshToken: newTokens.refresh_token,
274
+ expiresAt
275
+ }));
276
+ console.log('[AuthU SDK] Token refresh successful, user:', user);
277
+ setState({
278
+ isLoading: false,
279
+ isAuthenticated: true,
280
+ user,
281
+ accessToken: newTokens.access_token,
282
+ refreshToken: newTokens.refresh_token,
283
+ expiresAt,
284
+ error: null
285
+ });
286
+ return;
287
+ }
288
+ console.log('[AuthU SDK] Token refresh failed, clearing tokens');
289
+ localStorage.removeItem(TOKEN_STORAGE_KEY);
290
+ }
291
+ catch {
292
+ console.log('[AuthU SDK] Token refresh error, clearing tokens');
293
+ localStorage.removeItem(TOKEN_STORAGE_KEY);
294
+ }
295
+ }
253
296
  }
254
297
  catch {
255
298
  console.log('[AuthU SDK] Error parsing stored tokens, removing');
@@ -260,7 +303,12 @@ export function AuthUProvider({ config, children }) {
260
303
  setState(prev => ({ ...prev, isLoading: false }));
261
304
  };
262
305
  handleCallback();
263
- }, [exchangeCodeForTokensWithVerifier, fetchUserInfo]);
306
+ }, [
307
+ exchangeCodeForTokensWithVerifier,
308
+ fetchUserInfo,
309
+ config.clientId,
310
+ config.domain
311
+ ]);
264
312
  const checkEmailExists = useCallback(async (email) => {
265
313
  try {
266
314
  const params = new URLSearchParams({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@authu/react",
3
- "version": "1.0.52",
3
+ "version": "1.0.54",
4
4
  "description": "React SDK for AuthU - Centralized Multi-Tenant Authentication Service",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",