@oxyhq/services 5.6.0 → 5.6.2
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/lib/commonjs/ui/context/OxyContext.js +124 -53
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js +84 -25
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/stores/authStore.js +36 -1
- package/lib/commonjs/ui/stores/authStore.js.map +1 -1
- package/lib/commonjs/utils/deviceManager.js +7 -3
- package/lib/commonjs/utils/deviceManager.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +125 -54
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/screens/AccountSettingsScreen.js +84 -25
- package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/module/ui/stores/authStore.js +36 -1
- package/lib/module/ui/stores/authStore.js.map +1 -1
- package/lib/module/utils/deviceManager.js +7 -3
- package/lib/module/utils/deviceManager.js.map +1 -1
- package/lib/typescript/models/interfaces.d.ts +6 -0
- package/lib/typescript/models/interfaces.d.ts.map +1 -1
- package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
- package/lib/typescript/ui/stores/authStore.d.ts +2 -0
- package/lib/typescript/ui/stores/authStore.d.ts.map +1 -1
- package/lib/typescript/utils/deviceManager.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/models/interfaces.ts +7 -1
- package/src/ui/context/OxyContext.tsx +80 -56
- package/src/ui/screens/AccountSettingsScreen.tsx +68 -24
- package/src/ui/stores/authStore.ts +21 -0
- package/src/utils/deviceManager.ts +12 -4
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React, { createContext, useContext,
|
|
3
|
+
import React, { createContext, useContext, useEffect, useCallback, useMemo } from 'react';
|
|
4
4
|
import { DeviceManager } from '../../utils/deviceManager';
|
|
5
5
|
import { useSessionSocket } from '../hooks/useSessionSocket';
|
|
6
6
|
import { toast } from '../../lib/sonner';
|
|
7
|
+
import { useAuthStore } from '../stores/authStore';
|
|
7
8
|
|
|
8
9
|
// Define the context shape
|
|
9
10
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -68,14 +69,22 @@ export const OxyContextProvider = ({
|
|
|
68
69
|
onAuthStateChange,
|
|
69
70
|
bottomSheetRef
|
|
70
71
|
}) => {
|
|
71
|
-
//
|
|
72
|
-
const
|
|
73
|
-
const
|
|
74
|
-
const
|
|
75
|
-
const
|
|
76
|
-
const
|
|
77
|
-
const
|
|
78
|
-
const
|
|
72
|
+
// Zustand state
|
|
73
|
+
const user = useAuthStore(state => state.user);
|
|
74
|
+
const isAuthenticated = useAuthStore(state => state.isAuthenticated);
|
|
75
|
+
const isLoading = useAuthStore(state => state.isLoading);
|
|
76
|
+
const error = useAuthStore(state => state.error);
|
|
77
|
+
const loginSuccess = useAuthStore(state => state.loginSuccess);
|
|
78
|
+
const loginFailure = useAuthStore(state => state.loginFailure);
|
|
79
|
+
const logoutStore = useAuthStore(state => state.logout);
|
|
80
|
+
|
|
81
|
+
// Local state for non-auth fields
|
|
82
|
+
const [minimalUser, setMinimalUser] = React.useState(null);
|
|
83
|
+
const [sessions, setSessions] = React.useState([]);
|
|
84
|
+
const [activeSessionId, setActiveSessionId] = React.useState(null);
|
|
85
|
+
const [storage, setStorage] = React.useState(null);
|
|
86
|
+
// Add a new state to track token restoration
|
|
87
|
+
const [tokenReady, setTokenReady] = React.useState(false);
|
|
79
88
|
|
|
80
89
|
// Storage keys (memoized to prevent infinite loops)
|
|
81
90
|
const keys = useMemo(() => getSecureStorageKeys(storageKeyPrefix), [storageKeyPrefix]);
|
|
@@ -88,7 +97,9 @@ export const OxyContextProvider = ({
|
|
|
88
97
|
setStorage(platformStorage);
|
|
89
98
|
} catch (error) {
|
|
90
99
|
console.error('Failed to initialize storage:', error);
|
|
91
|
-
|
|
100
|
+
useAuthStore.setState({
|
|
101
|
+
error: 'Failed to initialize storage'
|
|
102
|
+
});
|
|
92
103
|
}
|
|
93
104
|
};
|
|
94
105
|
initStorage();
|
|
@@ -98,7 +109,9 @@ export const OxyContextProvider = ({
|
|
|
98
109
|
useEffect(() => {
|
|
99
110
|
const initAuth = async () => {
|
|
100
111
|
if (!storage) return;
|
|
101
|
-
|
|
112
|
+
useAuthStore.setState({
|
|
113
|
+
isLoading: true
|
|
114
|
+
});
|
|
102
115
|
try {
|
|
103
116
|
// Load stored sessions
|
|
104
117
|
const sessionsData = await storage.getItem(keys.sessions);
|
|
@@ -155,7 +168,7 @@ export const OxyContextProvider = ({
|
|
|
155
168
|
|
|
156
169
|
// Load full user data
|
|
157
170
|
const fullUser = await oxyServices.getUserBySession(activeSession.sessionId);
|
|
158
|
-
|
|
171
|
+
loginSuccess(fullUser);
|
|
159
172
|
setMinimalUser({
|
|
160
173
|
id: fullUser.id,
|
|
161
174
|
username: fullUser.username,
|
|
@@ -179,7 +192,9 @@ export const OxyContextProvider = ({
|
|
|
179
192
|
console.error('Secure auth initialization error:', err);
|
|
180
193
|
await clearAllStorage();
|
|
181
194
|
} finally {
|
|
182
|
-
|
|
195
|
+
useAuthStore.setState({
|
|
196
|
+
isLoading: false
|
|
197
|
+
});
|
|
183
198
|
}
|
|
184
199
|
};
|
|
185
200
|
if (storage) {
|
|
@@ -187,6 +202,26 @@ export const OxyContextProvider = ({
|
|
|
187
202
|
}
|
|
188
203
|
}, [storage, oxyServices, keys, onAuthStateChange]);
|
|
189
204
|
|
|
205
|
+
// Effect to restore token on app load or session switch
|
|
206
|
+
useEffect(() => {
|
|
207
|
+
const restoreToken = async () => {
|
|
208
|
+
if (activeSessionId && oxyServices) {
|
|
209
|
+
try {
|
|
210
|
+
await oxyServices.getTokenBySession(activeSessionId);
|
|
211
|
+
setTokenReady(true);
|
|
212
|
+
} catch (err) {
|
|
213
|
+
// If token restoration fails, force logout
|
|
214
|
+
await logout();
|
|
215
|
+
setTokenReady(false);
|
|
216
|
+
}
|
|
217
|
+
} else {
|
|
218
|
+
setTokenReady(true); // No session, so token is not needed
|
|
219
|
+
}
|
|
220
|
+
};
|
|
221
|
+
restoreToken();
|
|
222
|
+
// Only run when activeSessionId or oxyServices changes
|
|
223
|
+
}, [activeSessionId, oxyServices]);
|
|
224
|
+
|
|
190
225
|
// Remove invalid session
|
|
191
226
|
const removeInvalidSession = useCallback(async sessionId => {
|
|
192
227
|
const filteredSessions = sessions.filter(s => s.sessionId !== sessionId);
|
|
@@ -199,14 +234,14 @@ export const OxyContextProvider = ({
|
|
|
199
234
|
} else {
|
|
200
235
|
// No valid sessions left
|
|
201
236
|
setActiveSessionId(null);
|
|
202
|
-
|
|
237
|
+
logoutStore();
|
|
203
238
|
setMinimalUser(null);
|
|
204
239
|
await storage?.removeItem(keys.activeSessionId);
|
|
205
240
|
if (onAuthStateChange) {
|
|
206
241
|
onAuthStateChange(null);
|
|
207
242
|
}
|
|
208
243
|
}
|
|
209
|
-
}, [sessions, storage, keys, onAuthStateChange]);
|
|
244
|
+
}, [sessions, storage, keys, onAuthStateChange, logoutStore]);
|
|
210
245
|
|
|
211
246
|
// Save sessions to storage
|
|
212
247
|
const saveSessionsToStorage = useCallback(async sessionsList => {
|
|
@@ -234,7 +269,9 @@ export const OxyContextProvider = ({
|
|
|
234
269
|
// Switch to a different session
|
|
235
270
|
const switchToSession = useCallback(async sessionId => {
|
|
236
271
|
try {
|
|
237
|
-
|
|
272
|
+
useAuthStore.setState({
|
|
273
|
+
isLoading: true
|
|
274
|
+
});
|
|
238
275
|
|
|
239
276
|
// Get access token for this session
|
|
240
277
|
await oxyServices.getTokenBySession(sessionId);
|
|
@@ -242,7 +279,7 @@ export const OxyContextProvider = ({
|
|
|
242
279
|
// Load full user data
|
|
243
280
|
const fullUser = await oxyServices.getUserBySession(sessionId);
|
|
244
281
|
setActiveSessionId(sessionId);
|
|
245
|
-
|
|
282
|
+
loginSuccess(fullUser);
|
|
246
283
|
setMinimalUser({
|
|
247
284
|
id: fullUser.id,
|
|
248
285
|
username: fullUser.username,
|
|
@@ -254,17 +291,23 @@ export const OxyContextProvider = ({
|
|
|
254
291
|
}
|
|
255
292
|
} catch (error) {
|
|
256
293
|
console.error('Switch session error:', error);
|
|
257
|
-
|
|
294
|
+
useAuthStore.setState({
|
|
295
|
+
error: 'Failed to switch session'
|
|
296
|
+
});
|
|
258
297
|
} finally {
|
|
259
|
-
|
|
298
|
+
useAuthStore.setState({
|
|
299
|
+
isLoading: false
|
|
300
|
+
});
|
|
260
301
|
}
|
|
261
|
-
}, [oxyServices, onAuthStateChange, saveActiveSessionId]);
|
|
302
|
+
}, [oxyServices, onAuthStateChange, loginSuccess, saveActiveSessionId]);
|
|
262
303
|
|
|
263
304
|
// Secure login method
|
|
264
305
|
const login = async (username, password, deviceName) => {
|
|
265
306
|
if (!storage) throw new Error('Storage not initialized');
|
|
266
|
-
|
|
267
|
-
|
|
307
|
+
useAuthStore.setState({
|
|
308
|
+
isLoading: true,
|
|
309
|
+
error: null
|
|
310
|
+
});
|
|
268
311
|
try {
|
|
269
312
|
// Get device fingerprint for enhanced device identification
|
|
270
313
|
const deviceFingerprint = DeviceManager.getDeviceFingerprint();
|
|
@@ -316,17 +359,19 @@ export const OxyContextProvider = ({
|
|
|
316
359
|
|
|
317
360
|
// Load full user data
|
|
318
361
|
const fullUser = await oxyServices.getUserBySession(response.sessionId);
|
|
319
|
-
|
|
362
|
+
loginSuccess(fullUser);
|
|
320
363
|
setMinimalUser(response.user);
|
|
321
364
|
if (onAuthStateChange) {
|
|
322
365
|
onAuthStateChange(fullUser);
|
|
323
366
|
}
|
|
324
367
|
return fullUser;
|
|
325
368
|
} catch (error) {
|
|
326
|
-
|
|
369
|
+
loginFailure(error.message || 'Login failed');
|
|
327
370
|
throw error;
|
|
328
371
|
} finally {
|
|
329
|
-
|
|
372
|
+
useAuthStore.setState({
|
|
373
|
+
isLoading: false
|
|
374
|
+
});
|
|
330
375
|
}
|
|
331
376
|
};
|
|
332
377
|
|
|
@@ -350,7 +395,7 @@ export const OxyContextProvider = ({
|
|
|
350
395
|
} else {
|
|
351
396
|
// No sessions left
|
|
352
397
|
setActiveSessionId(null);
|
|
353
|
-
|
|
398
|
+
logoutStore();
|
|
354
399
|
setMinimalUser(null);
|
|
355
400
|
await storage?.removeItem(keys.activeSessionId);
|
|
356
401
|
if (onAuthStateChange) {
|
|
@@ -360,7 +405,9 @@ export const OxyContextProvider = ({
|
|
|
360
405
|
}
|
|
361
406
|
} catch (error) {
|
|
362
407
|
console.error('Logout error:', error);
|
|
363
|
-
|
|
408
|
+
useAuthStore.setState({
|
|
409
|
+
error: 'Logout failed'
|
|
410
|
+
});
|
|
364
411
|
}
|
|
365
412
|
};
|
|
366
413
|
|
|
@@ -369,12 +416,16 @@ export const OxyContextProvider = ({
|
|
|
369
416
|
console.log('logoutAll called with activeSessionId:', activeSessionId);
|
|
370
417
|
if (!activeSessionId) {
|
|
371
418
|
console.error('No active session ID found, cannot logout all');
|
|
372
|
-
|
|
419
|
+
useAuthStore.setState({
|
|
420
|
+
error: 'No active session found'
|
|
421
|
+
});
|
|
373
422
|
throw new Error('No active session found');
|
|
374
423
|
}
|
|
375
424
|
if (!oxyServices) {
|
|
376
425
|
console.error('OxyServices not initialized');
|
|
377
|
-
|
|
426
|
+
useAuthStore.setState({
|
|
427
|
+
error: 'Service not available'
|
|
428
|
+
});
|
|
378
429
|
throw new Error('Service not available');
|
|
379
430
|
}
|
|
380
431
|
try {
|
|
@@ -385,7 +436,7 @@ export const OxyContextProvider = ({
|
|
|
385
436
|
// Clear all local data
|
|
386
437
|
setSessions([]);
|
|
387
438
|
setActiveSessionId(null);
|
|
388
|
-
|
|
439
|
+
logoutStore();
|
|
389
440
|
setMinimalUser(null);
|
|
390
441
|
await clearAllStorage();
|
|
391
442
|
console.log('Local storage cleared');
|
|
@@ -395,7 +446,9 @@ export const OxyContextProvider = ({
|
|
|
395
446
|
}
|
|
396
447
|
} catch (error) {
|
|
397
448
|
console.error('Logout all error:', error);
|
|
398
|
-
|
|
449
|
+
useAuthStore.setState({
|
|
450
|
+
error: `Logout all failed: ${error instanceof Error ? error.message : 'Unknown error'}`
|
|
451
|
+
});
|
|
399
452
|
throw error;
|
|
400
453
|
}
|
|
401
454
|
};
|
|
@@ -403,8 +456,10 @@ export const OxyContextProvider = ({
|
|
|
403
456
|
// Sign up method
|
|
404
457
|
const signUp = async (username, email, password) => {
|
|
405
458
|
if (!storage) throw new Error('Storage not initialized');
|
|
406
|
-
|
|
407
|
-
|
|
459
|
+
useAuthStore.setState({
|
|
460
|
+
isLoading: true,
|
|
461
|
+
error: null
|
|
462
|
+
});
|
|
408
463
|
try {
|
|
409
464
|
// Create new account using the OxyServices signUp method
|
|
410
465
|
const response = await oxyServices.signUp(username, email, password);
|
|
@@ -415,10 +470,12 @@ export const OxyContextProvider = ({
|
|
|
415
470
|
const user = await login(username, password);
|
|
416
471
|
return user;
|
|
417
472
|
} catch (error) {
|
|
418
|
-
|
|
473
|
+
loginFailure(error.message || 'Sign up failed');
|
|
419
474
|
throw error;
|
|
420
475
|
} finally {
|
|
421
|
-
|
|
476
|
+
useAuthStore.setState({
|
|
477
|
+
isLoading: false
|
|
478
|
+
});
|
|
422
479
|
}
|
|
423
480
|
};
|
|
424
481
|
|
|
@@ -471,7 +528,7 @@ export const OxyContextProvider = ({
|
|
|
471
528
|
// Clear all local sessions since we logged out from all devices
|
|
472
529
|
setSessions([]);
|
|
473
530
|
setActiveSessionId(null);
|
|
474
|
-
|
|
531
|
+
logoutStore();
|
|
475
532
|
setMinimalUser(null);
|
|
476
533
|
await clearAllStorage();
|
|
477
534
|
if (onAuthStateChange) {
|
|
@@ -537,16 +594,6 @@ export const OxyContextProvider = ({
|
|
|
537
594
|
}
|
|
538
595
|
}, [bottomSheetRef]);
|
|
539
596
|
|
|
540
|
-
// Compute comprehensive authentication status
|
|
541
|
-
// This is the single source of truth for authentication across the entire app
|
|
542
|
-
const isAuthenticated = useMemo(() => {
|
|
543
|
-
// User is authenticated if:
|
|
544
|
-
// 1. We have a full user object loaded, OR
|
|
545
|
-
// 2. We have an active session with a valid token
|
|
546
|
-
// This covers both the loaded state and the loading-but-authenticated state
|
|
547
|
-
return !!user || !!activeSessionId && !!oxyServices?.getCurrentUserId();
|
|
548
|
-
}, [user, activeSessionId, oxyServices]);
|
|
549
|
-
|
|
550
597
|
// Integrate socket for real-time session updates
|
|
551
598
|
console.log('OxyContextProvider: userId', user?.id, 'baseURL', oxyServices.getBaseURL());
|
|
552
599
|
useSessionSocket({
|
|
@@ -572,19 +619,43 @@ export const OxyContextProvider = ({
|
|
|
572
619
|
error,
|
|
573
620
|
login,
|
|
574
621
|
logout,
|
|
575
|
-
logoutAll
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
622
|
+
logoutAll: async () => {
|
|
623
|
+
await logout();
|
|
624
|
+
},
|
|
625
|
+
signUp: async (username, email, password) => {
|
|
626
|
+
await signUp(username, email, password);
|
|
627
|
+
return user; // Return the latest user from Zustand
|
|
628
|
+
},
|
|
629
|
+
switchSession: async sessionId => {
|
|
630
|
+
await switchToSession(sessionId);
|
|
631
|
+
},
|
|
632
|
+
removeSession: async sessionId => {
|
|
633
|
+
await removeSession(sessionId);
|
|
634
|
+
},
|
|
635
|
+
refreshSessions: async () => {
|
|
636
|
+
await refreshSessions();
|
|
637
|
+
},
|
|
638
|
+
getDeviceSessions: async () => {
|
|
639
|
+
return await getDeviceSessions();
|
|
640
|
+
},
|
|
641
|
+
logoutAllDeviceSessions: async () => {
|
|
642
|
+
await logoutAllDeviceSessions();
|
|
643
|
+
},
|
|
644
|
+
updateDeviceName: async deviceName => {
|
|
645
|
+
await updateDeviceName(deviceName);
|
|
646
|
+
},
|
|
583
647
|
oxyServices,
|
|
584
648
|
bottomSheetRef,
|
|
585
649
|
showBottomSheet,
|
|
586
650
|
hideBottomSheet
|
|
587
651
|
};
|
|
652
|
+
|
|
653
|
+
// Wrap children rendering to block until token is ready
|
|
654
|
+
if (!tokenReady) {
|
|
655
|
+
return /*#__PURE__*/_jsx("div", {
|
|
656
|
+
children: "Loading authentication..."
|
|
657
|
+
});
|
|
658
|
+
}
|
|
588
659
|
return /*#__PURE__*/_jsx(OxyContext.Provider, {
|
|
589
660
|
value: contextValue,
|
|
590
661
|
children: children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createContext","useContext","useState","useEffect","useCallback","useMemo","DeviceManager","useSessionSocket","toast","jsx","_jsx","OxyContext","WebStorage","getItem","key","localStorage","setItem","value","removeItem","clear","AsyncStorage","isReactNative","navigator","product","getStorage","asyncStorageModule","default","error","console","Error","getSecureStorageKeys","prefix","sessions","activeSessionId","OxyContextProvider","children","oxyServices","storageKeyPrefix","onAuthStateChange","bottomSheetRef","user","setUser","minimalUser","setMinimalUser","setSessions","setActiveSessionId","isLoading","setIsLoading","setError","storage","setStorage","keys","initStorage","platformStorage","initAuth","sessionsData","storedActiveSessionId","log","parsedSessions","JSON","parse","migratedSessions","shouldUpdateStorage","session","userId","sessionUser","getUserBySession","sessionId","push","id","saveSessionsToStorage","length","activeSession","find","s","validation","validateSession","valid","getTokenBySession","fullUser","username","avatar","removeInvalidSession","err","clearAllStorage","filteredSessions","filter","switchToSession","sessionsList","stringify","saveActiveSessionId","login","password","deviceName","deviceFingerprint","getDeviceFingerprint","deviceInfo","getDeviceInfo","deviceId","response","secureLogin","getDefaultDeviceName","clientSession","expiresAt","lastActive","Date","toISOString","existingUserSessionIndex","findIndex","updatedSessions","existingSession","message","logout","targetSessionId","sessionToLogout","logoutSecureSession","logoutAll","logoutAllSecureSessions","signUp","email","switchSession","removeSession","refreshSessions","serverSessions","getSessionsBySessionId","map","serverSession","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","showBottomSheet","screenOrConfig","current","expand","present","warn","setTimeout","_navigateToScreen","screen","props","hideBottomSheet","dismiss","isAuthenticated","getCurrentUserId","getBaseURL","baseURL","onRemoteSignOut","info","contextValue","Provider","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","createContext","useContext","useEffect","useCallback","useMemo","DeviceManager","useSessionSocket","toast","useAuthStore","jsx","_jsx","OxyContext","WebStorage","getItem","key","localStorage","setItem","value","removeItem","clear","AsyncStorage","isReactNative","navigator","product","getStorage","asyncStorageModule","default","error","console","Error","getSecureStorageKeys","prefix","sessions","activeSessionId","OxyContextProvider","children","oxyServices","storageKeyPrefix","onAuthStateChange","bottomSheetRef","user","state","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","logout","minimalUser","setMinimalUser","useState","setSessions","setActiveSessionId","storage","setStorage","tokenReady","setTokenReady","keys","initStorage","platformStorage","setState","initAuth","sessionsData","storedActiveSessionId","log","parsedSessions","JSON","parse","migratedSessions","shouldUpdateStorage","session","userId","sessionUser","getUserBySession","sessionId","push","id","saveSessionsToStorage","length","activeSession","find","s","validation","validateSession","valid","getTokenBySession","fullUser","username","avatar","removeInvalidSession","err","clearAllStorage","restoreToken","filteredSessions","filter","switchToSession","sessionsList","stringify","saveActiveSessionId","login","password","deviceName","deviceFingerprint","getDeviceFingerprint","deviceInfo","getDeviceInfo","deviceId","response","secureLogin","getDefaultDeviceName","clientSession","expiresAt","lastActive","Date","toISOString","existingUserSessionIndex","findIndex","updatedSessions","existingSession","message","targetSessionId","sessionToLogout","logoutSecureSession","logoutAll","logoutAllSecureSessions","signUp","email","switchSession","removeSession","refreshSessions","serverSessions","getSessionsBySessionId","map","serverSession","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","showBottomSheet","screenOrConfig","current","expand","present","warn","setTimeout","_navigateToScreen","screen","props","hideBottomSheet","dismiss","getBaseURL","baseURL","onRemoteSignOut","info","contextValue","Provider","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
|