@oxyhq/services 6.10.6 → 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.
- package/README.md +2 -2
- package/lib/commonjs/ui/context/OxyContext.js +318 -21
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSessionManagement.js +9 -1
- package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +319 -22
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/hooks/useSessionManagement.js +9 -1
- package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useSecurityQueries.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useSecurityQueries.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/useSecurityQueries.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/queries/useSecurityQueries.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/ui/context/OxyContext.tsx +326 -19
- package/src/ui/hooks/useSessionManagement.ts +10 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';
|
|
4
|
-
import { OxyServices } from '@oxyhq/core';
|
|
4
|
+
import { OxyServices, oxyClient } from '@oxyhq/core';
|
|
5
5
|
import { KeyManager } from '@oxyhq/core';
|
|
6
6
|
import { toast } from '@oxyhq/bloom';
|
|
7
7
|
import { useAuthStore } from "../stores/authStore.js";
|
|
@@ -22,6 +22,64 @@ import { logger as loggerUtil } from '@oxyhq/core';
|
|
|
22
22
|
import { useWebSSO, isWebBrowser } from "../hooks/useWebSSO.js";
|
|
23
23
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
24
|
const OxyContext = /*#__PURE__*/createContext(null);
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Minimal, decode-only shape of the session access-token JWT claims the
|
|
28
|
+
* `POST /auth/refresh` endpoint returns. We only read `sessionId` (and `userId`
|
|
29
|
+
* as a fallback). The token is already signed and verified server-side; the
|
|
30
|
+
* client decodes the payload purely to recover the session id — it does NOT and
|
|
31
|
+
* MUST NOT verify the signature.
|
|
32
|
+
*/
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Decode the payload of a JWT WITHOUT verifying its signature.
|
|
36
|
+
*
|
|
37
|
+
* The server (`POST /auth/refresh`) has already minted and signed this access
|
|
38
|
+
* token; we only need to recover the `sessionId` claim from it on cold boot.
|
|
39
|
+
* Returns `null` for any malformed input rather than throwing, so a bad token
|
|
40
|
+
* simply falls through to the unauthenticated path.
|
|
41
|
+
*
|
|
42
|
+
* Implemented with manual base64url decoding (no `jwt-decode` dependency added
|
|
43
|
+
* to `@oxyhq/services`). Works on web (where this cold-boot path runs) via
|
|
44
|
+
* `atob`; if `atob` is unavailable (non-browser runtime) it is treated as
|
|
45
|
+
* undecodable and returns `null`.
|
|
46
|
+
*/
|
|
47
|
+
function decodeAccessTokenClaims(token) {
|
|
48
|
+
if (!token || typeof token !== 'string') {
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
const segments = token.split('.');
|
|
52
|
+
if (segments.length !== 3) {
|
|
53
|
+
return null;
|
|
54
|
+
}
|
|
55
|
+
const payloadSegment = segments[1];
|
|
56
|
+
if (!payloadSegment) {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
const base64 = payloadSegment.replace(/-/g, '+').replace(/_/g, '/');
|
|
61
|
+
const padded = base64.padEnd(base64.length + (4 - base64.length % 4) % 4, '=');
|
|
62
|
+
if (typeof atob !== 'function') {
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
const json = decodeURIComponent(atob(padded).split('').map(char => `%${`00${char.charCodeAt(0).toString(16)}`.slice(-2)}`).join(''));
|
|
66
|
+
const parsed = JSON.parse(json);
|
|
67
|
+
if (parsed === null || typeof parsed !== 'object') {
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
const claims = parsed;
|
|
71
|
+
return {
|
|
72
|
+
sessionId: typeof claims.sessionId === 'string' ? claims.sessionId : undefined,
|
|
73
|
+
userId: typeof claims.userId === 'string' ? claims.userId : undefined,
|
|
74
|
+
id: typeof claims.id === 'string' ? claims.id : undefined
|
|
75
|
+
};
|
|
76
|
+
} catch {
|
|
77
|
+
return null;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/** Server response shape of `POST /auth/refresh`. */
|
|
82
|
+
|
|
25
83
|
let cachedUseFollowHook = null;
|
|
26
84
|
const loadUseFollowHook = () => {
|
|
27
85
|
if (cachedUseFollowHook) {
|
|
@@ -93,6 +151,41 @@ export const OxyProvider = ({
|
|
|
93
151
|
const [tokenReady, setTokenReady] = useState(true);
|
|
94
152
|
const [initialized, setInitialized] = useState(false);
|
|
95
153
|
const setAuthState = useAuthStore.setState;
|
|
154
|
+
|
|
155
|
+
// Keep the shared `oxyClient` singleton's token store in lockstep with the
|
|
156
|
+
// session owned by THIS provider's instance. Many apps construct their api
|
|
157
|
+
// clients against the exported `oxyClient` singleton (reading
|
|
158
|
+
// `oxyClient.getAccessToken()` to build Authorization headers) while passing
|
|
159
|
+
// only `baseURL` to OxyProvider — in which case the provider owns a DIFFERENT
|
|
160
|
+
// `OxyServices` instance and the singleton would otherwise never receive the
|
|
161
|
+
// token, producing `Authorization: Bearer null`.
|
|
162
|
+
//
|
|
163
|
+
// Subscribing to `onTokensChanged` mirrors EVERY token mutation — sign-in,
|
|
164
|
+
// session restore, switch, silent refresh, and sign-out/clear — onto the
|
|
165
|
+
// singleton at the single source of truth in @oxyhq/core, with no per-app
|
|
166
|
+
// plumbing and regardless of which auth code path fired.
|
|
167
|
+
//
|
|
168
|
+
// When the app passed the singleton itself as `oxyServices` (Mention's
|
|
169
|
+
// pattern), `oxyServices === oxyClient`, so we skip the redundant self-write
|
|
170
|
+
// and the subscription is a no-op mirror — fully backward compatible.
|
|
171
|
+
useEffect(() => {
|
|
172
|
+
if (oxyServices === oxyClient) {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
const applyToSingleton = accessToken => {
|
|
176
|
+
if (accessToken) {
|
|
177
|
+
oxyClient.setTokens(accessToken);
|
|
178
|
+
} else {
|
|
179
|
+
oxyClient.clearTokens();
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
// Seed the singleton with whatever token the instance already holds (it may
|
|
184
|
+
// have been planted synchronously before this effect ran — e.g. a token set
|
|
185
|
+
// during the same tick as mount), then keep it in sync going forward.
|
|
186
|
+
applyToSingleton(oxyServices.getAccessToken());
|
|
187
|
+
return oxyServices.onTokensChanged(applyToSingleton);
|
|
188
|
+
}, [oxyServices]);
|
|
96
189
|
const logger = useCallback((message, err) => {
|
|
97
190
|
if (__DEV__) {
|
|
98
191
|
console.warn(`[OxyContext] ${message}`, err);
|
|
@@ -100,14 +193,59 @@ export const OxyProvider = ({
|
|
|
100
193
|
}, []);
|
|
101
194
|
const storageKeys = useMemo(() => getStorageKeys(storageKeyPrefix), [storageKeyPrefix]);
|
|
102
195
|
|
|
103
|
-
//
|
|
196
|
+
// Storage initialization.
|
|
197
|
+
//
|
|
198
|
+
// `storage` (state) drives render-time gating (`isStorageReady`) and the
|
|
199
|
+
// hooks below. But it is `null` for a brief window after mount while
|
|
200
|
+
// `createPlatformStorage()` resolves (a microtask on web; a dynamic
|
|
201
|
+
// `import()` on native). Any persistence path that fires during that window
|
|
202
|
+
// — e.g. an interactive FedCM sign-in the instant the screen mounts — would
|
|
203
|
+
// read `storage === null` and SILENTLY skip writing the session, leaving the
|
|
204
|
+
// user signed-in in-memory but with nothing to restore on reload.
|
|
205
|
+
//
|
|
206
|
+
// To make persistence robust regardless of timing we ALSO expose the storage
|
|
207
|
+
// as an awaitable promise (`getReadyStorage`). Persistence code awaits the
|
|
208
|
+
// ready instance instead of branching on the possibly-null state, so a write
|
|
209
|
+
// is never silently dropped just because it raced storage init.
|
|
104
210
|
const storageRef = useRef(null);
|
|
105
211
|
const [storage, setStorage] = useState(null);
|
|
212
|
+
|
|
213
|
+
// A single, stable deferred that resolves with the initialized storage. Built
|
|
214
|
+
// lazily via a ref initializer so the resolver is captured exactly once and
|
|
215
|
+
// the promise identity is stable across renders.
|
|
216
|
+
const buildStorageDeferred = () => {
|
|
217
|
+
let resolve = () => undefined;
|
|
218
|
+
const promise = new Promise(res => {
|
|
219
|
+
resolve = res;
|
|
220
|
+
});
|
|
221
|
+
return {
|
|
222
|
+
promise,
|
|
223
|
+
resolve
|
|
224
|
+
};
|
|
225
|
+
};
|
|
226
|
+
const storageReadyRef = useRef(null);
|
|
227
|
+
if (storageReadyRef.current === null) {
|
|
228
|
+
storageReadyRef.current = buildStorageDeferred();
|
|
229
|
+
}
|
|
230
|
+
const storageReady = storageReadyRef.current;
|
|
231
|
+
|
|
232
|
+
// Resolve the storage instance that is guaranteed to be ready. Returns the
|
|
233
|
+
// already-initialized instance synchronously when available, otherwise awaits
|
|
234
|
+
// the init promise. Never resolves to `null`.
|
|
235
|
+
const getReadyStorage = useCallback(() => {
|
|
236
|
+
if (storageRef.current) {
|
|
237
|
+
return Promise.resolve(storageRef.current);
|
|
238
|
+
}
|
|
239
|
+
return storageReady.promise;
|
|
240
|
+
}, [storageReady]);
|
|
106
241
|
useEffect(() => {
|
|
107
242
|
let mounted = true;
|
|
108
243
|
createPlatformStorage().then(storageInstance => {
|
|
244
|
+
// Resolve the ready-promise even if the component unmounted: in-flight
|
|
245
|
+
// persistence awaiting it must still complete against a real store.
|
|
246
|
+
storageRef.current = storageInstance;
|
|
247
|
+
storageReady.resolve(storageInstance);
|
|
109
248
|
if (mounted) {
|
|
110
|
-
storageRef.current = storageInstance;
|
|
111
249
|
setStorage(storageInstance);
|
|
112
250
|
}
|
|
113
251
|
}).catch(err => {
|
|
@@ -123,7 +261,7 @@ export const OxyProvider = ({
|
|
|
123
261
|
return () => {
|
|
124
262
|
mounted = false;
|
|
125
263
|
};
|
|
126
|
-
}, [logger, onError]);
|
|
264
|
+
}, [logger, onError, storageReady]);
|
|
127
265
|
|
|
128
266
|
// Offline queuing is now handled by TanStack Query mutations
|
|
129
267
|
// No need for custom offline queue
|
|
@@ -235,12 +373,168 @@ export const OxyProvider = ({
|
|
|
235
373
|
updateSessionsRef.current = updateSessions;
|
|
236
374
|
const clearSessionStateRef = useRef(clearSessionState);
|
|
237
375
|
clearSessionStateRef.current = clearSessionState;
|
|
376
|
+
|
|
377
|
+
// Durable, navigation-safe session persistence.
|
|
378
|
+
//
|
|
379
|
+
// Writes the active-session id and appends the session id to the durable
|
|
380
|
+
// `session_ids` list, awaiting the READY storage instance (never the possibly
|
|
381
|
+
// -null `storage` state) so a write is never dropped because it raced storage
|
|
382
|
+
// init. Callers MUST invoke this BEFORE any work that can trigger a route
|
|
383
|
+
// navigation (`onAuthStateChange`) — navigation can interrupt a still-pending
|
|
384
|
+
// async write, which is exactly what once left `session_ids` empty after a
|
|
385
|
+
// successful sign-in. Shared by the FedCM/popup path and the cold-boot
|
|
386
|
+
// refresh-cookie restore so both land the same durable record.
|
|
387
|
+
const persistSessionDurably = useCallback(async sessionId => {
|
|
388
|
+
const readyStorage = await getReadyStorage();
|
|
389
|
+
await readyStorage.setItem(storageKeys.activeSessionId, sessionId);
|
|
390
|
+
const existingIds = await readyStorage.getItem(storageKeys.sessionIds);
|
|
391
|
+
let sessionIds = [];
|
|
392
|
+
try {
|
|
393
|
+
sessionIds = existingIds ? JSON.parse(existingIds) : [];
|
|
394
|
+
} catch {/* corrupted storage */}
|
|
395
|
+
if (!sessionIds.includes(sessionId)) {
|
|
396
|
+
sessionIds.push(sessionId);
|
|
397
|
+
await readyStorage.setItem(storageKeys.sessionIds, JSON.stringify(sessionIds));
|
|
398
|
+
}
|
|
399
|
+
}, [getReadyStorage, storageKeys.activeSessionId, storageKeys.sessionIds]);
|
|
400
|
+
|
|
401
|
+
// Refs so the cold-boot restore can plant session state without widening its
|
|
402
|
+
// dependency array (mirrors the existing ref pattern above).
|
|
403
|
+
const setActiveSessionIdRef = useRef(setActiveSessionId);
|
|
404
|
+
setActiveSessionIdRef.current = setActiveSessionId;
|
|
405
|
+
const loginSuccessRef = useRef(loginSuccess);
|
|
406
|
+
loginSuccessRef.current = loginSuccess;
|
|
407
|
+
const onAuthStateChangeRef = useRef(onAuthStateChange);
|
|
408
|
+
onAuthStateChangeRef.current = onAuthStateChange;
|
|
409
|
+
|
|
410
|
+
// Cold-boot session restore via the secure refresh cookie (web only).
|
|
411
|
+
//
|
|
412
|
+
// On a hard reload the in-app, bearer-protected token fetch
|
|
413
|
+
// (`getTokenBySession` → `/session/token/:id`) 401s because there is no token
|
|
414
|
+
// in memory yet, which previously cleared the session and bounced the user to
|
|
415
|
+
// sign-in. Instead we call `POST {apiBaseUrl}/auth/refresh` with
|
|
416
|
+
// `credentials: 'include'` and NO Authorization header: the browser
|
|
417
|
+
// automatically attaches the first-party httpOnly `oxy_rt` cookie (set at
|
|
418
|
+
// login/signup/fedcm-exchange), the server validates + rotates it and returns
|
|
419
|
+
// a fresh session access token. JS never sees the refresh cookie (httpOnly) —
|
|
420
|
+
// that is the security property.
|
|
421
|
+
//
|
|
422
|
+
// Returns `true` when the session was restored (caller short-circuits the
|
|
423
|
+
// bearer path); `false` on 401 / no durable cookie / any failure (caller
|
|
424
|
+
// proceeds unauthenticated through the existing flow — nothing is cleared).
|
|
425
|
+
const restoreViaRefreshCookie = useCallback(async () => {
|
|
426
|
+
if (!isWebBrowser()) {
|
|
427
|
+
return false;
|
|
428
|
+
}
|
|
429
|
+
const apiBaseUrl = oxyServices.getBaseURL();
|
|
430
|
+
if (!apiBaseUrl) {
|
|
431
|
+
return false;
|
|
432
|
+
}
|
|
433
|
+
let response;
|
|
434
|
+
try {
|
|
435
|
+
// Direct credentialed, no-auth POST. We deliberately bypass the SDK's
|
|
436
|
+
// HttpService here: it would attach the (absent) bearer and does not send
|
|
437
|
+
// cookies. The refresh cookie is scoped to `Path=/auth/refresh` and sent
|
|
438
|
+
// automatically same-site.
|
|
439
|
+
response = await fetch(`${apiBaseUrl.replace(/\/$/, '')}/auth/refresh`, {
|
|
440
|
+
method: 'POST',
|
|
441
|
+
credentials: 'include',
|
|
442
|
+
headers: {
|
|
443
|
+
Accept: 'application/json'
|
|
444
|
+
}
|
|
445
|
+
});
|
|
446
|
+
} catch (fetchError) {
|
|
447
|
+
// Offline / network error — fall through to the cached/stored-session flow.
|
|
448
|
+
if (__DEV__) {
|
|
449
|
+
loggerUtil.debug('Refresh-cookie restore network error (expected when offline)', {
|
|
450
|
+
component: 'OxyContext',
|
|
451
|
+
method: 'restoreViaRefreshCookie'
|
|
452
|
+
}, fetchError);
|
|
453
|
+
}
|
|
454
|
+
return false;
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
// 401 (no/expired/reused cookie) and any non-2xx → no durable session.
|
|
458
|
+
if (!response.ok) {
|
|
459
|
+
return false;
|
|
460
|
+
}
|
|
461
|
+
let payload;
|
|
462
|
+
try {
|
|
463
|
+
payload = await response.json();
|
|
464
|
+
} catch {
|
|
465
|
+
return false;
|
|
466
|
+
}
|
|
467
|
+
const accessToken = payload.accessToken;
|
|
468
|
+
if (!accessToken) {
|
|
469
|
+
return false;
|
|
470
|
+
}
|
|
471
|
+
|
|
472
|
+
// Recover the session id from the (server-signed) access-token claims, or
|
|
473
|
+
// from the response body if the server included it. Decode-only; the server
|
|
474
|
+
// already verified the signature.
|
|
475
|
+
const claims = decodeAccessTokenClaims(accessToken);
|
|
476
|
+
const sessionId = payload.sessionId ?? claims?.sessionId;
|
|
477
|
+
if (!sessionId) {
|
|
478
|
+
// A token with no resolvable session id cannot drive multi-session state.
|
|
479
|
+
return false;
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
// Plant the fresh access token. The refresh token stays in the httpOnly
|
|
483
|
+
// cookie and is never touched by JS.
|
|
484
|
+
oxyServices.httpService.setTokens(accessToken);
|
|
485
|
+
|
|
486
|
+
// Fetch the full user with the freshly planted token.
|
|
487
|
+
let fullUser;
|
|
488
|
+
try {
|
|
489
|
+
fullUser = await oxyServices.getCurrentUser();
|
|
490
|
+
} catch (userError) {
|
|
491
|
+
// Token planted but profile fetch failed (e.g. transient network). Do not
|
|
492
|
+
// claim a restored session; fall through so the stored-session flow can
|
|
493
|
+
// retry. Leave the planted token in place — it is valid and harmless.
|
|
494
|
+
if (__DEV__) {
|
|
495
|
+
loggerUtil.debug('Refresh-cookie restore: getCurrentUser failed', {
|
|
496
|
+
component: 'OxyContext',
|
|
497
|
+
method: 'restoreViaRefreshCookie'
|
|
498
|
+
}, userError);
|
|
499
|
+
}
|
|
500
|
+
return false;
|
|
501
|
+
}
|
|
502
|
+
const userId = fullUser.id?.toString() ?? claims?.userId ?? '';
|
|
503
|
+
const now = new Date();
|
|
504
|
+
const clientSession = {
|
|
505
|
+
sessionId,
|
|
506
|
+
deviceId: '',
|
|
507
|
+
expiresAt: new Date(now.getTime() + 7 * 24 * 60 * 60 * 1000).toISOString(),
|
|
508
|
+
lastActive: now.toISOString(),
|
|
509
|
+
userId,
|
|
510
|
+
isCurrent: true
|
|
511
|
+
};
|
|
512
|
+
|
|
513
|
+
// Restore the active session into the multi-session store (merge: keep any
|
|
514
|
+
// other sessions intact) and durably persist BEFORE notifying listeners.
|
|
515
|
+
updateSessionsRef.current([clientSession], {
|
|
516
|
+
merge: true
|
|
517
|
+
});
|
|
518
|
+
setActiveSessionIdRef.current(sessionId);
|
|
519
|
+
await persistSessionDurably(sessionId);
|
|
520
|
+
loginSuccessRef.current(fullUser);
|
|
521
|
+
onAuthStateChangeRef.current?.(fullUser);
|
|
522
|
+
return true;
|
|
523
|
+
}, [oxyServices, persistSessionDurably]);
|
|
238
524
|
const restoreSessionsFromStorage = useCallback(async () => {
|
|
239
525
|
if (!storage) {
|
|
240
526
|
return;
|
|
241
527
|
}
|
|
242
528
|
setTokenReady(false);
|
|
243
529
|
try {
|
|
530
|
+
// Web cold-boot fast path: restore the active session from the secure
|
|
531
|
+
// httpOnly refresh cookie before the bearer-protected stored-session
|
|
532
|
+
// validation (which 401s on a hard reload). On success we are signed in
|
|
533
|
+
// from the cookie alone — no FedCM needed. On failure we fall through to
|
|
534
|
+
// the existing stored-session flow below; nothing is cleared.
|
|
535
|
+
if (await restoreViaRefreshCookie()) {
|
|
536
|
+
return;
|
|
537
|
+
}
|
|
244
538
|
const storedSessionIdsJson = await storage.getItem(storageKeys.sessionIds);
|
|
245
539
|
const storedSessionIds = storedSessionIdsJson ? JSON.parse(storedSessionIdsJson) : [];
|
|
246
540
|
const storedActiveSessionId = await storage.getItem(storageKeys.activeSessionId);
|
|
@@ -323,7 +617,7 @@ export const OxyProvider = ({
|
|
|
323
617
|
} finally {
|
|
324
618
|
setTokenReady(true);
|
|
325
619
|
}
|
|
326
|
-
}, [logger, oxyServices, storage, storageKeys.activeSessionId, storageKeys.sessionIds]);
|
|
620
|
+
}, [logger, oxyServices, storage, storageKeys.activeSessionId, storageKeys.sessionIds, restoreViaRefreshCookie]);
|
|
327
621
|
useEffect(() => {
|
|
328
622
|
if (!storage || initialized) {
|
|
329
623
|
return;
|
|
@@ -367,8 +661,25 @@ export const OxyProvider = ({
|
|
|
367
661
|
});
|
|
368
662
|
setActiveSessionId(session.sessionId);
|
|
369
663
|
|
|
370
|
-
//
|
|
371
|
-
//
|
|
664
|
+
// Persist to storage BEFORE fetching the profile and BEFORE notifying the
|
|
665
|
+
// auth-state-change callback. The token is planted and the in-memory store
|
|
666
|
+
// is updated above; durably committing the session id here — ahead of
|
|
667
|
+
// `getCurrentUser()` / `loginSuccess` / `onAuthStateChange` — is critical
|
|
668
|
+
// because `onAuthStateChange` triggers a route navigation that can
|
|
669
|
+
// interrupt/supersede a still-pending async write. Persisting first
|
|
670
|
+
// guarantees the durable record lands; that is exactly what was missing
|
|
671
|
+
// when `oxy_session_session_ids` came back empty after a successful FedCM
|
|
672
|
+
// sign-in (the user appeared logged in until reload, then had no session to
|
|
673
|
+
// restore). `persistSessionDurably` awaits the READY storage instance rather
|
|
674
|
+
// than reading the possibly-null `storage` state, so a sign-in fired the
|
|
675
|
+
// instant the screen mounts (before storage-init populates state) is not
|
|
676
|
+
// silently dropped.
|
|
677
|
+
await persistSessionDurably(session.sessionId);
|
|
678
|
+
|
|
679
|
+
// Fetch the full user profile now that we have a valid access token and the
|
|
680
|
+
// session is durably persisted. The session only carries MinimalUserData;
|
|
681
|
+
// the store and callbacks expect a full User. The navigation kicked off by
|
|
682
|
+
// `onAuthStateChange` now happens only after the durable write is committed.
|
|
372
683
|
let fullUser;
|
|
373
684
|
try {
|
|
374
685
|
fullUser = await oxyServices.getCurrentUser();
|
|
@@ -379,21 +690,7 @@ export const OxyProvider = ({
|
|
|
379
690
|
}
|
|
380
691
|
loginSuccess(fullUser);
|
|
381
692
|
onAuthStateChange?.(fullUser);
|
|
382
|
-
|
|
383
|
-
// Persist to storage
|
|
384
|
-
if (storage) {
|
|
385
|
-
await storage.setItem(storageKeys.activeSessionId, session.sessionId);
|
|
386
|
-
const existingIds = await storage.getItem(storageKeys.sessionIds);
|
|
387
|
-
let sessionIds = [];
|
|
388
|
-
try {
|
|
389
|
-
sessionIds = existingIds ? JSON.parse(existingIds) : [];
|
|
390
|
-
} catch {/* corrupted storage */}
|
|
391
|
-
if (!sessionIds.includes(session.sessionId)) {
|
|
392
|
-
sessionIds.push(session.sessionId);
|
|
393
|
-
await storage.setItem(storageKeys.sessionIds, JSON.stringify(sessionIds));
|
|
394
|
-
}
|
|
395
|
-
}
|
|
396
|
-
}, [oxyServices, updateSessions, setActiveSessionId, loginSuccess, onAuthStateChange, storage, storageKeys]);
|
|
693
|
+
}, [oxyServices, updateSessions, setActiveSessionId, loginSuccess, onAuthStateChange, persistSessionDurably]);
|
|
397
694
|
|
|
398
695
|
// Enable web SSO only after local storage check completes and no user found
|
|
399
696
|
const shouldTryWebSSO = isWebBrowser() && tokenReady && !user && initialized;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","OxyServices","KeyManager","toast","useAuthStore","useShallow","useSessionSocket","useLanguageManagement","useSessionManagement","useAuthOperations","useDeviceManagement","getStorageKeys","createPlatformStorage","isInvalidSessionError","isTimeoutOrNetworkError","showBottomSheet","globalShowBottomSheet","useQueryClient","clearQueryCache","useAvatarPicker","useAccountStore","logger","loggerUtil","useWebSSO","isWebBrowser","jsx","_jsx","OxyContext","cachedUseFollowHook","loadUseFollowHook","useFollow","require","error","__DEV__","warn","component","method","fallback","Error","OxyProvider","children","oxyServices","providedOxyServices","baseURL","authWebUrl","authRedirectUri","storageKeyPrefix","onAuthStateChange","onError","oxyServicesRef","current","user","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","state","logout","tokenReady","setTokenReady","initialized","setInitialized","setAuthState","setState","message","err","console","storageKeys","storageRef","storage","setStorage","mounted","then","storageInstance","catch","code","status","currentLanguage","metadata","currentLanguageMetadata","languageName","currentLanguageName","nativeLanguageName","currentNativeLanguageName","setLanguage","applyLanguagePreference","languageKey","language","queryClient","sessions","activeSessionId","setActiveSessionId","updateSessions","switchSession","refreshSessions","clearSessionState","saveActiveSessionId","trackRemovedSession","setAuthError","signIn","logoutAll","clearAllAccountData","clear","getState","reset","clearCache","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","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","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","accessToken","httpService","setTokens","getTokenBySession","clientSession","fullUser","getCurrentUser","setItem","existingIds","includes","push","stringify","shouldTryWebSSO","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","info","addEventListener","body","appendChild","handleVisibilityChange","visibilityState","activeSession","find","undefined","currentDeviceId","refreshSessionsWithUser","handleSessionRemoved","handleRemoteSignOut","remoteError","getBaseURL","getAccessToken","onRemoteSignOut","onSessionRemoved","switchSessionForContext","hasIdentity","getPublicKey","showBottomSheetForContext","screenOrConfig","openAvatarPicker","actingAs","setActingAsState","managedAccounts","setManagedAccounts","stored","setActingAs","refreshManagedAccounts","accounts","getManagedAccounts","createManagedAccountFn","account","createManagedAccount","contextValue","isTokenReady","isStorageReady","handlePopupSession","removeSession","Provider","OxyContextProvider","PROVIDER_MISSING_ERROR_MESSAGE","rejectMissingProvider","reject","LOADING_STATE_OXY_SERVICES","LOADING_STATE","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","OxyServices","oxyClient","KeyManager","toast","useAuthStore","useShallow","useSessionSocket","useLanguageManagement","useSessionManagement","useAuthOperations","useDeviceManagement","getStorageKeys","createPlatformStorage","isInvalidSessionError","isTimeoutOrNetworkError","showBottomSheet","globalShowBottomSheet","useQueryClient","clearQueryCache","useAvatarPicker","useAccountStore","logger","loggerUtil","useWebSSO","isWebBrowser","jsx","_jsx","OxyContext","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","require","error","__DEV__","warn","component","method","fallback","Error","OxyProvider","children","oxyServices","providedOxyServices","baseURL","authWebUrl","authRedirectUri","storageKeyPrefix","onAuthStateChange","onError","oxyServicesRef","current","user","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","state","logout","tokenReady","setTokenReady","initialized","setInitialized","setAuthState","setState","applyToSingleton","accessToken","setTokens","clearTokens","getAccessToken","onTokensChanged","message","err","console","storageKeys","storageRef","storage","setStorage","buildStorageDeferred","resolve","promise","Promise","res","storageReadyRef","storageReady","getReadyStorage","mounted","then","storageInstance","catch","code","status","currentLanguage","metadata","currentLanguageMetadata","languageName","currentLanguageName","nativeLanguageName","currentNativeLanguageName","setLanguage","applyLanguagePreference","languageKey","language","queryClient","sessions","activeSessionId","setActiveSessionId","updateSessions","switchSession","refreshSessions","clearSessionState","saveActiveSessionId","trackRemovedSession","setAuthError","signIn","logoutAll","clearAllAccountData","clear","getState","reset","clearCache","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","useFollowHook","switchSessionRef","updateSessionsRef","clearSessionStateRef","persistSessionDurably","readyStorage","setItem","existingIds","getItem","sessionIds","includes","push","stringify","setActiveSessionIdRef","loginSuccessRef","onAuthStateChangeRef","restoreViaRefreshCookie","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","race","validation","valid","filter","r","value","s","switchError","removeItem","session","String","handleWebSSOSession","getTokenBySession","shouldTryWebSSO","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","info","addEventListener","body","appendChild","handleVisibilityChange","visibilityState","activeSession","find","currentDeviceId","refreshSessionsWithUser","handleSessionRemoved","handleRemoteSignOut","remoteError","onRemoteSignOut","onSessionRemoved","switchSessionForContext","hasIdentity","getPublicKey","showBottomSheetForContext","screenOrConfig","openAvatarPicker","actingAs","setActingAsState","managedAccounts","setManagedAccounts","stored","setActingAs","refreshManagedAccounts","accounts","getManagedAccounts","createManagedAccountFn","account","createManagedAccount","contextValue","isTokenReady","isStorageReady","handlePopupSession","removeSession","Provider","OxyContextProvider","PROVIDER_MISSING_ERROR_MESSAGE","rejectMissingProvider","reject","LOADING_STATE_OXY_SERVICES","LOADING_STATE","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -114,6 +114,14 @@ export const useSessionManagement = ({
|
|
|
114
114
|
setActiveSessionId(null);
|
|
115
115
|
logoutStore();
|
|
116
116
|
|
|
117
|
+
// Clear the access token on the client instance. Without this the
|
|
118
|
+
// TokenStore retained the stale bearer until the next 401, leaving the
|
|
119
|
+
// instance "logged in" at the HTTP layer and — via OxyProvider's
|
|
120
|
+
// token-change mirror — leaking that stale token onto the shared
|
|
121
|
+
// `oxyClient` singleton after sign-out. Clearing here fires
|
|
122
|
+
// `onTokensChanged(null)`, propagating the logged-out state everywhere.
|
|
123
|
+
oxyServices.clearTokens();
|
|
124
|
+
|
|
117
125
|
// Clear TanStack Query cache (in-memory)
|
|
118
126
|
if (queryClient) {
|
|
119
127
|
queryClient.clear();
|
|
@@ -131,7 +139,7 @@ export const useSessionManagement = ({
|
|
|
131
139
|
}
|
|
132
140
|
await clearSessionStorage();
|
|
133
141
|
onAuthStateChange?.(null);
|
|
134
|
-
}, [clearSessionStorage, logoutStore, onAuthStateChange, queryClient, storage, logger]);
|
|
142
|
+
}, [clearSessionStorage, logoutStore, onAuthStateChange, oxyServices, queryClient, storage, logger]);
|
|
135
143
|
const activateSession = useCallback(async (sessionId, user) => {
|
|
136
144
|
await oxyServices.getTokenBySession(sessionId);
|
|
137
145
|
setTokenReady?.(true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","mergeSessions","normalizeAndSortSessions","sessionsArraysEqual","fetchSessionsWithFallback","validateSessionBatch","getStorageKeys","handleAuthError","isInvalidSessionError","clearQueryCache","DEFAULT_SAVE_ERROR_MESSAGE","CLEAR_STORAGE_ERROR","useSessionManagement","oxyServices","storage","storageKeyPrefix","loginSuccess","logoutStore","applyLanguagePreference","onAuthStateChange","onError","setAuthError","logger","setTokenReady","queryClient","sessions","setSessions","activeSessionId","setActiveSessionId","sessionsRef","current","activeSessionIdRef","refreshInFlightRef","removedSessionsRef","Set","lastRefreshRef","storageKeys","saveSessionIds","sessionIds","uniqueIds","Array","from","setItem","JSON","stringify","error","__DEV__","console","warn","updateSessions","incoming","options","prevSessions","processed","merge","map","session","sessionId","saveActiveSessionId","defaultMessage","code","removeActiveSessionId","removeItem","clearSessionStorage","clearSessionState","clear","activateSession","user","getTokenBySession","removalTimerIdsRef","trackRemovedSession","add","timerId","setTimeout","delete","forEach","clearTimeout","findReplacementSession","length","validationResults","maxConcurrency","validSession","find","result","valid","validation","validateSession","useHeaderValidation","switchSession","Error","deviceSessions","fallbackUserId","id","invalidSession","filter","otherSessionIds","has","replacementUser","refreshSessions","activeUserId","now","Date","refreshPromise","otherSessions","isRefreshInFlight","Boolean"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionManagement.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","mergeSessions","normalizeAndSortSessions","sessionsArraysEqual","fetchSessionsWithFallback","validateSessionBatch","getStorageKeys","handleAuthError","isInvalidSessionError","clearQueryCache","DEFAULT_SAVE_ERROR_MESSAGE","CLEAR_STORAGE_ERROR","useSessionManagement","oxyServices","storage","storageKeyPrefix","loginSuccess","logoutStore","applyLanguagePreference","onAuthStateChange","onError","setAuthError","logger","setTokenReady","queryClient","sessions","setSessions","activeSessionId","setActiveSessionId","sessionsRef","current","activeSessionIdRef","refreshInFlightRef","removedSessionsRef","Set","lastRefreshRef","storageKeys","saveSessionIds","sessionIds","uniqueIds","Array","from","setItem","JSON","stringify","error","__DEV__","console","warn","updateSessions","incoming","options","prevSessions","processed","merge","map","session","sessionId","saveActiveSessionId","defaultMessage","code","removeActiveSessionId","removeItem","clearSessionStorage","clearSessionState","clearTokens","clear","activateSession","user","getTokenBySession","removalTimerIdsRef","trackRemovedSession","add","timerId","setTimeout","delete","forEach","clearTimeout","findReplacementSession","length","validationResults","maxConcurrency","validSession","find","result","valid","validation","validateSession","useHeaderValidation","switchSession","Error","deviceSessions","fallbackUserId","id","invalidSession","filter","otherSessionIds","has","replacementUser","refreshSessions","activeUserId","now","Date","refreshPromise","otherSessions","isRefreshInFlight","Boolean"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionManagement.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"OxyContext.d.ts","sourceRoot":"","sources":["../../../../../src/ui/context/OxyContext.tsx"],"names":[],"mappings":"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"}
|