@volr/react 0.1.126 → 0.1.127

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
@@ -10029,6 +10029,19 @@ function useAutoRecover({
10029
10029
  setAccessTokenState(client.getAccessToken());
10030
10030
  setRefreshTokenState(client.getRefreshToken());
10031
10031
  if (refreshedUser) {
10032
+ if (refreshedUser.keyStorageType === "passkey" && !refreshedUser.evmAddress) {
10033
+ console.error("[Provider] Invalid state: passkey user without evmAddress - clearing session");
10034
+ client.setAccessToken(null);
10035
+ client.setRefreshToken(null);
10036
+ setAccessTokenState(null);
10037
+ setRefreshTokenState(null);
10038
+ setUser(null);
10039
+ setProviderState(null);
10040
+ safeStorage.removeItem(STORAGE_KEYS.user);
10041
+ safeStorage.removeItem(STORAGE_KEYS.provider);
10042
+ setIsLoading(false);
10043
+ return;
10044
+ }
10032
10045
  setUser(refreshedUser);
10033
10046
  if (!REQUIRE_USER_GESTURE_TO_RESTORE) ; else if (refreshedUser.keyStorageType === "passkey") {
10034
10047
  console.log("[Provider] TTL=0 mode: Provider restoration deferred");
@@ -10040,12 +10053,20 @@ function useAutoRecover({
10040
10053
  const userStr = safeStorage.getItem(STORAGE_KEYS.user);
10041
10054
  if (userStr) {
10042
10055
  try {
10043
- setUser(JSON.parse(userStr));
10056
+ const storedUser = JSON.parse(userStr);
10057
+ if (storedUser.keyStorageType === "passkey" && !storedUser.evmAddress) {
10058
+ console.error("[Provider] Invalid stored user: passkey user without evmAddress - clearing");
10059
+ safeStorage.removeItem(STORAGE_KEYS.user);
10060
+ safeStorage.removeItem(STORAGE_KEYS.provider);
10061
+ } else {
10062
+ setUser(storedUser);
10063
+ }
10044
10064
  } catch {
10045
10065
  safeStorage.removeItem(STORAGE_KEYS.user);
10046
10066
  }
10047
10067
  }
10048
10068
  }
10069
+ setIsLoading(false);
10049
10070
  } catch {
10050
10071
  client.setAccessToken(null);
10051
10072
  client.setRefreshToken(null);
@@ -10055,7 +10076,6 @@ function useAutoRecover({
10055
10076
  setProviderState(null);
10056
10077
  safeStorage.removeItem(STORAGE_KEYS.user);
10057
10078
  safeStorage.removeItem(STORAGE_KEYS.provider);
10058
- } finally {
10059
10079
  setIsLoading(false);
10060
10080
  }
10061
10081
  };