@oxyhq/services 6.10.7 → 6.10.8

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.
@@ -24,6 +24,64 @@ var _accountStore = require("../stores/accountStore.js");
24
24
  var _useWebSSO = require("../hooks/useWebSSO.js");
25
25
  var _jsxRuntime = require("react/jsx-runtime");
26
26
  const OxyContext = /*#__PURE__*/(0, _react.createContext)(null);
27
+
28
+ /**
29
+ * Minimal, decode-only shape of the session access-token JWT claims the
30
+ * `POST /auth/refresh` endpoint returns. We only read `sessionId` (and `userId`
31
+ * as a fallback). The token is already signed and verified server-side; the
32
+ * client decodes the payload purely to recover the session id — it does NOT and
33
+ * MUST NOT verify the signature.
34
+ */
35
+
36
+ /**
37
+ * Decode the payload of a JWT WITHOUT verifying its signature.
38
+ *
39
+ * The server (`POST /auth/refresh`) has already minted and signed this access
40
+ * token; we only need to recover the `sessionId` claim from it on cold boot.
41
+ * Returns `null` for any malformed input rather than throwing, so a bad token
42
+ * simply falls through to the unauthenticated path.
43
+ *
44
+ * Implemented with manual base64url decoding (no `jwt-decode` dependency added
45
+ * to `@oxyhq/services`). Works on web (where this cold-boot path runs) via
46
+ * `atob`; if `atob` is unavailable (non-browser runtime) it is treated as
47
+ * undecodable and returns `null`.
48
+ */
49
+ function decodeAccessTokenClaims(token) {
50
+ if (!token || typeof token !== 'string') {
51
+ return null;
52
+ }
53
+ const segments = token.split('.');
54
+ if (segments.length !== 3) {
55
+ return null;
56
+ }
57
+ const payloadSegment = segments[1];
58
+ if (!payloadSegment) {
59
+ return null;
60
+ }
61
+ try {
62
+ const base64 = payloadSegment.replace(/-/g, '+').replace(/_/g, '/');
63
+ const padded = base64.padEnd(base64.length + (4 - base64.length % 4) % 4, '=');
64
+ if (typeof atob !== 'function') {
65
+ return null;
66
+ }
67
+ const json = decodeURIComponent(atob(padded).split('').map(char => `%${`00${char.charCodeAt(0).toString(16)}`.slice(-2)}`).join(''));
68
+ const parsed = JSON.parse(json);
69
+ if (parsed === null || typeof parsed !== 'object') {
70
+ return null;
71
+ }
72
+ const claims = parsed;
73
+ return {
74
+ sessionId: typeof claims.sessionId === 'string' ? claims.sessionId : undefined,
75
+ userId: typeof claims.userId === 'string' ? claims.userId : undefined,
76
+ id: typeof claims.id === 'string' ? claims.id : undefined
77
+ };
78
+ } catch {
79
+ return null;
80
+ }
81
+ }
82
+
83
+ /** Server response shape of `POST /auth/refresh`. */
84
+
27
85
  let cachedUseFollowHook = null;
28
86
  const loadUseFollowHook = () => {
29
87
  if (cachedUseFollowHook) {
@@ -137,14 +195,59 @@ const OxyProvider = ({
137
195
  }, []);
138
196
  const storageKeys = (0, _react.useMemo)(() => (0, _storageHelpers.getStorageKeys)(storageKeyPrefix), [storageKeyPrefix]);
139
197
 
140
- // Simple storage initialization - no complex hook needed
198
+ // Storage initialization.
199
+ //
200
+ // `storage` (state) drives render-time gating (`isStorageReady`) and the
201
+ // hooks below. But it is `null` for a brief window after mount while
202
+ // `createPlatformStorage()` resolves (a microtask on web; a dynamic
203
+ // `import()` on native). Any persistence path that fires during that window
204
+ // — e.g. an interactive FedCM sign-in the instant the screen mounts — would
205
+ // read `storage === null` and SILENTLY skip writing the session, leaving the
206
+ // user signed-in in-memory but with nothing to restore on reload.
207
+ //
208
+ // To make persistence robust regardless of timing we ALSO expose the storage
209
+ // as an awaitable promise (`getReadyStorage`). Persistence code awaits the
210
+ // ready instance instead of branching on the possibly-null state, so a write
211
+ // is never silently dropped just because it raced storage init.
141
212
  const storageRef = (0, _react.useRef)(null);
142
213
  const [storage, setStorage] = (0, _react.useState)(null);
214
+
215
+ // A single, stable deferred that resolves with the initialized storage. Built
216
+ // lazily via a ref initializer so the resolver is captured exactly once and
217
+ // the promise identity is stable across renders.
218
+ const buildStorageDeferred = () => {
219
+ let resolve = () => undefined;
220
+ const promise = new Promise(res => {
221
+ resolve = res;
222
+ });
223
+ return {
224
+ promise,
225
+ resolve
226
+ };
227
+ };
228
+ const storageReadyRef = (0, _react.useRef)(null);
229
+ if (storageReadyRef.current === null) {
230
+ storageReadyRef.current = buildStorageDeferred();
231
+ }
232
+ const storageReady = storageReadyRef.current;
233
+
234
+ // Resolve the storage instance that is guaranteed to be ready. Returns the
235
+ // already-initialized instance synchronously when available, otherwise awaits
236
+ // the init promise. Never resolves to `null`.
237
+ const getReadyStorage = (0, _react.useCallback)(() => {
238
+ if (storageRef.current) {
239
+ return Promise.resolve(storageRef.current);
240
+ }
241
+ return storageReady.promise;
242
+ }, [storageReady]);
143
243
  (0, _react.useEffect)(() => {
144
244
  let mounted = true;
145
245
  (0, _storageHelpers.createPlatformStorage)().then(storageInstance => {
246
+ // Resolve the ready-promise even if the component unmounted: in-flight
247
+ // persistence awaiting it must still complete against a real store.
248
+ storageRef.current = storageInstance;
249
+ storageReady.resolve(storageInstance);
146
250
  if (mounted) {
147
- storageRef.current = storageInstance;
148
251
  setStorage(storageInstance);
149
252
  }
150
253
  }).catch(err => {
@@ -160,7 +263,7 @@ const OxyProvider = ({
160
263
  return () => {
161
264
  mounted = false;
162
265
  };
163
- }, [logger, onError]);
266
+ }, [logger, onError, storageReady]);
164
267
 
165
268
  // Offline queuing is now handled by TanStack Query mutations
166
269
  // No need for custom offline queue
@@ -272,12 +375,168 @@ const OxyProvider = ({
272
375
  updateSessionsRef.current = updateSessions;
273
376
  const clearSessionStateRef = (0, _react.useRef)(clearSessionState);
274
377
  clearSessionStateRef.current = clearSessionState;
378
+
379
+ // Durable, navigation-safe session persistence.
380
+ //
381
+ // Writes the active-session id and appends the session id to the durable
382
+ // `session_ids` list, awaiting the READY storage instance (never the possibly
383
+ // -null `storage` state) so a write is never dropped because it raced storage
384
+ // init. Callers MUST invoke this BEFORE any work that can trigger a route
385
+ // navigation (`onAuthStateChange`) — navigation can interrupt a still-pending
386
+ // async write, which is exactly what once left `session_ids` empty after a
387
+ // successful sign-in. Shared by the FedCM/popup path and the cold-boot
388
+ // refresh-cookie restore so both land the same durable record.
389
+ const persistSessionDurably = (0, _react.useCallback)(async sessionId => {
390
+ const readyStorage = await getReadyStorage();
391
+ await readyStorage.setItem(storageKeys.activeSessionId, sessionId);
392
+ const existingIds = await readyStorage.getItem(storageKeys.sessionIds);
393
+ let sessionIds = [];
394
+ try {
395
+ sessionIds = existingIds ? JSON.parse(existingIds) : [];
396
+ } catch {/* corrupted storage */}
397
+ if (!sessionIds.includes(sessionId)) {
398
+ sessionIds.push(sessionId);
399
+ await readyStorage.setItem(storageKeys.sessionIds, JSON.stringify(sessionIds));
400
+ }
401
+ }, [getReadyStorage, storageKeys.activeSessionId, storageKeys.sessionIds]);
402
+
403
+ // Refs so the cold-boot restore can plant session state without widening its
404
+ // dependency array (mirrors the existing ref pattern above).
405
+ const setActiveSessionIdRef = (0, _react.useRef)(setActiveSessionId);
406
+ setActiveSessionIdRef.current = setActiveSessionId;
407
+ const loginSuccessRef = (0, _react.useRef)(loginSuccess);
408
+ loginSuccessRef.current = loginSuccess;
409
+ const onAuthStateChangeRef = (0, _react.useRef)(onAuthStateChange);
410
+ onAuthStateChangeRef.current = onAuthStateChange;
411
+
412
+ // Cold-boot session restore via the secure refresh cookie (web only).
413
+ //
414
+ // On a hard reload the in-app, bearer-protected token fetch
415
+ // (`getTokenBySession` → `/session/token/:id`) 401s because there is no token
416
+ // in memory yet, which previously cleared the session and bounced the user to
417
+ // sign-in. Instead we call `POST {apiBaseUrl}/auth/refresh` with
418
+ // `credentials: 'include'` and NO Authorization header: the browser
419
+ // automatically attaches the first-party httpOnly `oxy_rt` cookie (set at
420
+ // login/signup/fedcm-exchange), the server validates + rotates it and returns
421
+ // a fresh session access token. JS never sees the refresh cookie (httpOnly) —
422
+ // that is the security property.
423
+ //
424
+ // Returns `true` when the session was restored (caller short-circuits the
425
+ // bearer path); `false` on 401 / no durable cookie / any failure (caller
426
+ // proceeds unauthenticated through the existing flow — nothing is cleared).
427
+ const restoreViaRefreshCookie = (0, _react.useCallback)(async () => {
428
+ if (!(0, _useWebSSO.isWebBrowser)()) {
429
+ return false;
430
+ }
431
+ const apiBaseUrl = oxyServices.getBaseURL();
432
+ if (!apiBaseUrl) {
433
+ return false;
434
+ }
435
+ let response;
436
+ try {
437
+ // Direct credentialed, no-auth POST. We deliberately bypass the SDK's
438
+ // HttpService here: it would attach the (absent) bearer and does not send
439
+ // cookies. The refresh cookie is scoped to `Path=/auth/refresh` and sent
440
+ // automatically same-site.
441
+ response = await fetch(`${apiBaseUrl.replace(/\/$/, '')}/auth/refresh`, {
442
+ method: 'POST',
443
+ credentials: 'include',
444
+ headers: {
445
+ Accept: 'application/json'
446
+ }
447
+ });
448
+ } catch (fetchError) {
449
+ // Offline / network error — fall through to the cached/stored-session flow.
450
+ if (__DEV__) {
451
+ _core.logger.debug('Refresh-cookie restore network error (expected when offline)', {
452
+ component: 'OxyContext',
453
+ method: 'restoreViaRefreshCookie'
454
+ }, fetchError);
455
+ }
456
+ return false;
457
+ }
458
+
459
+ // 401 (no/expired/reused cookie) and any non-2xx → no durable session.
460
+ if (!response.ok) {
461
+ return false;
462
+ }
463
+ let payload;
464
+ try {
465
+ payload = await response.json();
466
+ } catch {
467
+ return false;
468
+ }
469
+ const accessToken = payload.accessToken;
470
+ if (!accessToken) {
471
+ return false;
472
+ }
473
+
474
+ // Recover the session id from the (server-signed) access-token claims, or
475
+ // from the response body if the server included it. Decode-only; the server
476
+ // already verified the signature.
477
+ const claims = decodeAccessTokenClaims(accessToken);
478
+ const sessionId = payload.sessionId ?? claims?.sessionId;
479
+ if (!sessionId) {
480
+ // A token with no resolvable session id cannot drive multi-session state.
481
+ return false;
482
+ }
483
+
484
+ // Plant the fresh access token. The refresh token stays in the httpOnly
485
+ // cookie and is never touched by JS.
486
+ oxyServices.httpService.setTokens(accessToken);
487
+
488
+ // Fetch the full user with the freshly planted token.
489
+ let fullUser;
490
+ try {
491
+ fullUser = await oxyServices.getCurrentUser();
492
+ } catch (userError) {
493
+ // Token planted but profile fetch failed (e.g. transient network). Do not
494
+ // claim a restored session; fall through so the stored-session flow can
495
+ // retry. Leave the planted token in place — it is valid and harmless.
496
+ if (__DEV__) {
497
+ _core.logger.debug('Refresh-cookie restore: getCurrentUser failed', {
498
+ component: 'OxyContext',
499
+ method: 'restoreViaRefreshCookie'
500
+ }, userError);
501
+ }
502
+ return false;
503
+ }
504
+ const userId = fullUser.id?.toString() ?? claims?.userId ?? '';
505
+ const now = new Date();
506
+ const clientSession = {
507
+ sessionId,
508
+ deviceId: '',
509
+ expiresAt: new Date(now.getTime() + 7 * 24 * 60 * 60 * 1000).toISOString(),
510
+ lastActive: now.toISOString(),
511
+ userId,
512
+ isCurrent: true
513
+ };
514
+
515
+ // Restore the active session into the multi-session store (merge: keep any
516
+ // other sessions intact) and durably persist BEFORE notifying listeners.
517
+ updateSessionsRef.current([clientSession], {
518
+ merge: true
519
+ });
520
+ setActiveSessionIdRef.current(sessionId);
521
+ await persistSessionDurably(sessionId);
522
+ loginSuccessRef.current(fullUser);
523
+ onAuthStateChangeRef.current?.(fullUser);
524
+ return true;
525
+ }, [oxyServices, persistSessionDurably]);
275
526
  const restoreSessionsFromStorage = (0, _react.useCallback)(async () => {
276
527
  if (!storage) {
277
528
  return;
278
529
  }
279
530
  setTokenReady(false);
280
531
  try {
532
+ // Web cold-boot fast path: restore the active session from the secure
533
+ // httpOnly refresh cookie before the bearer-protected stored-session
534
+ // validation (which 401s on a hard reload). On success we are signed in
535
+ // from the cookie alone — no FedCM needed. On failure we fall through to
536
+ // the existing stored-session flow below; nothing is cleared.
537
+ if (await restoreViaRefreshCookie()) {
538
+ return;
539
+ }
281
540
  const storedSessionIdsJson = await storage.getItem(storageKeys.sessionIds);
282
541
  const storedSessionIds = storedSessionIdsJson ? JSON.parse(storedSessionIdsJson) : [];
283
542
  const storedActiveSessionId = await storage.getItem(storageKeys.activeSessionId);
@@ -360,7 +619,7 @@ const OxyProvider = ({
360
619
  } finally {
361
620
  setTokenReady(true);
362
621
  }
363
- }, [logger, oxyServices, storage, storageKeys.activeSessionId, storageKeys.sessionIds]);
622
+ }, [logger, oxyServices, storage, storageKeys.activeSessionId, storageKeys.sessionIds, restoreViaRefreshCookie]);
364
623
  (0, _react.useEffect)(() => {
365
624
  if (!storage || initialized) {
366
625
  return;
@@ -404,8 +663,25 @@ const OxyProvider = ({
404
663
  });
405
664
  setActiveSessionId(session.sessionId);
406
665
 
407
- // Fetch the full user profile now that we have a valid access token.
408
- // The session only carries MinimalUserData; the store and callbacks expect a full User.
666
+ // Persist to storage BEFORE fetching the profile and BEFORE notifying the
667
+ // auth-state-change callback. The token is planted and the in-memory store
668
+ // is updated above; durably committing the session id here — ahead of
669
+ // `getCurrentUser()` / `loginSuccess` / `onAuthStateChange` — is critical
670
+ // because `onAuthStateChange` triggers a route navigation that can
671
+ // interrupt/supersede a still-pending async write. Persisting first
672
+ // guarantees the durable record lands; that is exactly what was missing
673
+ // when `oxy_session_session_ids` came back empty after a successful FedCM
674
+ // sign-in (the user appeared logged in until reload, then had no session to
675
+ // restore). `persistSessionDurably` awaits the READY storage instance rather
676
+ // than reading the possibly-null `storage` state, so a sign-in fired the
677
+ // instant the screen mounts (before storage-init populates state) is not
678
+ // silently dropped.
679
+ await persistSessionDurably(session.sessionId);
680
+
681
+ // Fetch the full user profile now that we have a valid access token and the
682
+ // session is durably persisted. The session only carries MinimalUserData;
683
+ // the store and callbacks expect a full User. The navigation kicked off by
684
+ // `onAuthStateChange` now happens only after the durable write is committed.
409
685
  let fullUser;
410
686
  try {
411
687
  fullUser = await oxyServices.getCurrentUser();
@@ -416,21 +692,7 @@ const OxyProvider = ({
416
692
  }
417
693
  loginSuccess(fullUser);
418
694
  onAuthStateChange?.(fullUser);
419
-
420
- // Persist to storage
421
- if (storage) {
422
- await storage.setItem(storageKeys.activeSessionId, session.sessionId);
423
- const existingIds = await storage.getItem(storageKeys.sessionIds);
424
- let sessionIds = [];
425
- try {
426
- sessionIds = existingIds ? JSON.parse(existingIds) : [];
427
- } catch {/* corrupted storage */}
428
- if (!sessionIds.includes(session.sessionId)) {
429
- sessionIds.push(session.sessionId);
430
- await storage.setItem(storageKeys.sessionIds, JSON.stringify(sessionIds));
431
- }
432
- }
433
- }, [oxyServices, updateSessions, setActiveSessionId, loginSuccess, onAuthStateChange, storage, storageKeys]);
695
+ }, [oxyServices, updateSessions, setActiveSessionId, loginSuccess, onAuthStateChange, persistSessionDurably]);
434
696
 
435
697
  // Enable web SSO only after local storage check completes and no user found
436
698
  const shouldTryWebSSO = (0, _useWebSSO.isWebBrowser)() && tokenReady && !user && initialized;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_core","_bloom","_authStore","_shallow","_useSessionSocket","_useLanguageManagement","_useSessionManagement","_useAuthOperations","_useDeviceManagement","_storageHelpers","_errorHandlers","_bottomSheetManager","_reactQuery","_queryClient","_useAvatarPicker","_accountStore","_useWebSSO","_jsxRuntime","OxyContext","createContext","cachedUseFollowHook","loadUseFollowHook","useFollow","error","__DEV__","loggerUtil","warn","component","method","fallback","Error","OxyProvider","children","oxyServices","providedOxyServices","baseURL","authWebUrl","authRedirectUri","storageKeyPrefix","onAuthStateChange","onError","oxyServicesRef","useRef","current","OxyServices","user","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","useAuthStore","useShallow","state","logout","tokenReady","setTokenReady","useState","initialized","setInitialized","setAuthState","setState","useEffect","oxyClient","applyToSingleton","accessToken","setTokens","clearTokens","getAccessToken","onTokensChanged","logger","useCallback","message","err","console","storageKeys","useMemo","getStorageKeys","storageRef","storage","setStorage","mounted","createPlatformStorage","then","storageInstance","catch","code","status","currentLanguage","metadata","currentLanguageMetadata","languageName","currentLanguageName","nativeLanguageName","currentNativeLanguageName","setLanguage","applyLanguagePreference","useLanguageManagement","languageKey","language","queryClient","useQueryClient","sessions","activeSessionId","setActiveSessionId","updateSessions","switchSession","refreshSessions","clearSessionState","saveActiveSessionId","trackRemovedSession","useSessionManagement","setAuthError","signIn","logoutAll","useAuthOperations","clearAllAccountData","clear","clearQueryCache","useAccountStore","getState","reset","clearCache","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","useDeviceManagement","useFollowHook","switchSessionRef","updateSessionsRef","clearSessionStateRef","restoreSessionsFromStorage","storedSessionIdsJson","getItem","sessionIds","storedSessionIds","JSON","parse","storedActiveSessionId","validSessions","length","VALIDATION_TIMEOUT","results","Promise","allSettled","map","sessionId","timeoutPromise","resolve","setTimeout","validationPromise","validateSession","useHeaderValidation","validationError","isInvalidSessionError","isTimeoutOrNetworkError","debug","race","validation","valid","now","Date","deviceId","expiresAt","getTime","toISOString","lastActive","userId","id","toString","isCurrent","filter","r","value","s","merge","switchError","removeItem","session","String","handleWebSSOSession","httpService","getTokenBySession","clientSession","fullUser","getCurrentUser","setItem","existingIds","includes","push","stringify","shouldTryWebSSO","isWebBrowser","useWebSSO","onSessionFound","enabled","lastIdPCheckRef","pendingIdPCleanupRef","checkIdPSession","iframe","document","createElement","style","cssText","idpOrigin","src","encodeURIComponent","window","location","origin","cleaned","cleanup","removeEventListener","handleMessage","remove","event","data","type","hasSession","toast","info","addEventListener","body","appendChild","handleVisibilityChange","visibilityState","activeSession","find","undefined","currentDeviceId","refreshSessionsWithUser","handleSessionRemoved","handleRemoteSignOut","remoteError","useSessionSocket","getBaseURL","onRemoteSignOut","onSessionRemoved","switchSessionForContext","hasIdentity","KeyManager","getPublicKey","showBottomSheetForContext","screenOrConfig","globalShowBottomSheet","openAvatarPicker","useAvatarPicker","showBottomSheet","actingAs","setActingAsState","managedAccounts","setManagedAccounts","stored","setActingAs","refreshManagedAccounts","accounts","getManagedAccounts","createManagedAccountFn","account","createManagedAccount","contextValue","isTokenReady","isStorageReady","handlePopupSession","removeSession","jsx","Provider","exports","OxyContextProvider","PROVIDER_MISSING_ERROR_MESSAGE","rejectMissingProvider","reject","LOADING_STATE_OXY_SERVICES","LOADING_STATE","useOxy","context","useContext","_default","default"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_core","_bloom","_authStore","_shallow","_useSessionSocket","_useLanguageManagement","_useSessionManagement","_useAuthOperations","_useDeviceManagement","_storageHelpers","_errorHandlers","_bottomSheetManager","_reactQuery","_queryClient","_useAvatarPicker","_accountStore","_useWebSSO","_jsxRuntime","OxyContext","createContext","decodeAccessTokenClaims","token","segments","split","length","payloadSegment","base64","replace","padded","padEnd","atob","json","decodeURIComponent","map","char","charCodeAt","toString","slice","join","parsed","JSON","parse","claims","sessionId","undefined","userId","id","cachedUseFollowHook","loadUseFollowHook","useFollow","error","__DEV__","loggerUtil","warn","component","method","fallback","Error","OxyProvider","children","oxyServices","providedOxyServices","baseURL","authWebUrl","authRedirectUri","storageKeyPrefix","onAuthStateChange","onError","oxyServicesRef","useRef","current","OxyServices","user","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","useAuthStore","useShallow","state","logout","tokenReady","setTokenReady","useState","initialized","setInitialized","setAuthState","setState","useEffect","oxyClient","applyToSingleton","accessToken","setTokens","clearTokens","getAccessToken","onTokensChanged","logger","useCallback","message","err","console","storageKeys","useMemo","getStorageKeys","storageRef","storage","setStorage","buildStorageDeferred","resolve","promise","Promise","res","storageReadyRef","storageReady","getReadyStorage","mounted","createPlatformStorage","then","storageInstance","catch","code","status","currentLanguage","metadata","currentLanguageMetadata","languageName","currentLanguageName","nativeLanguageName","currentNativeLanguageName","setLanguage","applyLanguagePreference","useLanguageManagement","languageKey","language","queryClient","useQueryClient","sessions","activeSessionId","setActiveSessionId","updateSessions","switchSession","refreshSessions","clearSessionState","saveActiveSessionId","trackRemovedSession","useSessionManagement","setAuthError","signIn","logoutAll","useAuthOperations","clearAllAccountData","clear","clearQueryCache","useAccountStore","getState","reset","clearCache","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","useDeviceManagement","useFollowHook","switchSessionRef","updateSessionsRef","clearSessionStateRef","persistSessionDurably","readyStorage","setItem","existingIds","getItem","sessionIds","includes","push","stringify","setActiveSessionIdRef","loginSuccessRef","onAuthStateChangeRef","restoreViaRefreshCookie","isWebBrowser","apiBaseUrl","getBaseURL","response","fetch","credentials","headers","Accept","fetchError","debug","ok","payload","httpService","fullUser","getCurrentUser","userError","now","Date","clientSession","deviceId","expiresAt","getTime","toISOString","lastActive","isCurrent","merge","restoreSessionsFromStorage","storedSessionIdsJson","storedSessionIds","storedActiveSessionId","validSessions","VALIDATION_TIMEOUT","results","allSettled","timeoutPromise","setTimeout","validationPromise","validateSession","useHeaderValidation","validationError","isInvalidSessionError","isTimeoutOrNetworkError","race","validation","valid","filter","r","value","s","switchError","removeItem","session","String","handleWebSSOSession","getTokenBySession","shouldTryWebSSO","useWebSSO","onSessionFound","enabled","lastIdPCheckRef","pendingIdPCleanupRef","checkIdPSession","iframe","document","createElement","style","cssText","idpOrigin","src","encodeURIComponent","window","location","origin","cleaned","cleanup","removeEventListener","handleMessage","remove","event","data","type","hasSession","toast","info","addEventListener","body","appendChild","handleVisibilityChange","visibilityState","activeSession","find","currentDeviceId","refreshSessionsWithUser","handleSessionRemoved","handleRemoteSignOut","remoteError","useSessionSocket","onRemoteSignOut","onSessionRemoved","switchSessionForContext","hasIdentity","KeyManager","getPublicKey","showBottomSheetForContext","screenOrConfig","globalShowBottomSheet","openAvatarPicker","useAvatarPicker","showBottomSheet","actingAs","setActingAsState","managedAccounts","setManagedAccounts","stored","setActingAs","refreshManagedAccounts","accounts","getManagedAccounts","createManagedAccountFn","account","createManagedAccount","contextValue","isTokenReady","isStorageReady","handlePopupSession","removeSession","jsx","Provider","exports","OxyContextProvider","PROVIDER_MISSING_ERROR_MESSAGE","rejectMissingProvider","reject","LOADING_STATE_OXY_SERVICES","LOADING_STATE","useOxy","context","useContext","_default","default"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}