antaeus.keycloak.react 2.2.0 → 2.2.1

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.
package/dist/index.mjs CHANGED
@@ -1387,6 +1387,15 @@ var DeviceLogin = ({
1387
1387
  useEffect(() => {
1388
1388
  if (!deviceData) return;
1389
1389
  userManagerRef.current = auth.userManager;
1390
+ if (userManagerRef.current) {
1391
+ const settings = userManagerRef.current.settings;
1392
+ console.log("[DeviceLogin] UserManager storage configured:", {
1393
+ hasUserStore: !!settings.userStore,
1394
+ storeType: settings.userStore ? "configured" : "default"
1395
+ });
1396
+ } else {
1397
+ console.error("[DeviceLogin] UserManager is not available in auth context");
1398
+ }
1390
1399
  const poll = async () => {
1391
1400
  try {
1392
1401
  const tokenResponse = await pollForToken(apiBaseUrl, deviceData.device_code);
@@ -1398,18 +1407,39 @@ var DeviceLogin = ({
1398
1407
  const user = new User({
1399
1408
  id_token: tokenResponse.id_token || "",
1400
1409
  access_token: tokenResponse.access_token,
1401
- token_type: tokenResponse.token_type,
1410
+ token_type: tokenResponse.token_type || "Bearer",
1402
1411
  profile: userInfo,
1403
1412
  expires_at: Math.floor(Date.now() / 1e3) + tokenResponse.expires_in,
1404
1413
  scope: tokenResponse.scope,
1405
- refresh_token: tokenResponse.refresh_token
1414
+ refresh_token: tokenResponse.refresh_token,
1415
+ session_state: null
1416
+ // Device flow doesn't have session_state
1406
1417
  });
1407
1418
  if (userManagerRef.current) {
1419
+ console.log("[DeviceLogin] Storing user in UserManager...", {
1420
+ hasAccessToken: !!user.access_token,
1421
+ hasRefreshToken: !!user.refresh_token,
1422
+ expiresAt: user.expires_at
1423
+ });
1408
1424
  await userManagerRef.current.storeUser(user);
1425
+ console.log("[DeviceLogin] User stored successfully");
1426
+ const storedUser = await userManagerRef.current.getUser();
1427
+ if (!storedUser) {
1428
+ console.error("[DeviceLogin] Failed to retrieve stored user!");
1429
+ throw new Error("Failed to store user session. Please try again.");
1430
+ }
1431
+ console.log("[DeviceLogin] Verified user in storage:", {
1432
+ hasAccessToken: !!storedUser.access_token,
1433
+ profile: storedUser.profile?.preferred_username
1434
+ });
1409
1435
  const events = userManagerRef.current.events;
1410
1436
  if (events && events._userLoaded) {
1411
1437
  events._userLoaded.raise(user);
1438
+ console.log("[DeviceLogin] Triggered user loaded event");
1412
1439
  }
1440
+ } else {
1441
+ console.error("[DeviceLogin] UserManager not available, cannot store user");
1442
+ throw new Error("UserManager not available. Cannot complete login.");
1413
1443
  }
1414
1444
  if (onSuccess) {
1415
1445
  await new Promise((resolve) => setTimeout(resolve, 100));