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