@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.
Files changed (29) hide show
  1. package/lib/commonjs/ui/context/OxyContext.js +124 -53
  2. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  3. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +84 -25
  4. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  5. package/lib/commonjs/ui/stores/authStore.js +36 -1
  6. package/lib/commonjs/ui/stores/authStore.js.map +1 -1
  7. package/lib/commonjs/utils/deviceManager.js +7 -3
  8. package/lib/commonjs/utils/deviceManager.js.map +1 -1
  9. package/lib/module/ui/context/OxyContext.js +125 -54
  10. package/lib/module/ui/context/OxyContext.js.map +1 -1
  11. package/lib/module/ui/screens/AccountSettingsScreen.js +84 -25
  12. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  13. package/lib/module/ui/stores/authStore.js +36 -1
  14. package/lib/module/ui/stores/authStore.js.map +1 -1
  15. package/lib/module/utils/deviceManager.js +7 -3
  16. package/lib/module/utils/deviceManager.js.map +1 -1
  17. package/lib/typescript/models/interfaces.d.ts +6 -0
  18. package/lib/typescript/models/interfaces.d.ts.map +1 -1
  19. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
  20. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  21. package/lib/typescript/ui/stores/authStore.d.ts +2 -0
  22. package/lib/typescript/ui/stores/authStore.d.ts.map +1 -1
  23. package/lib/typescript/utils/deviceManager.d.ts.map +1 -1
  24. package/package.json +2 -2
  25. package/src/models/interfaces.ts +7 -1
  26. package/src/ui/context/OxyContext.tsx +80 -56
  27. package/src/ui/screens/AccountSettingsScreen.tsx +68 -24
  28. package/src/ui/stores/authStore.ts +21 -0
  29. package/src/utils/deviceManager.ts +12 -4
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
 
3
- import React, { createContext, useContext, useState, useEffect, useCallback, useMemo } from 'react';
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
- // Authentication state
72
- const [user, setUser] = useState(null);
73
- const [minimalUser, setMinimalUser] = useState(null);
74
- const [sessions, setSessions] = useState([]);
75
- const [activeSessionId, setActiveSessionId] = useState(null);
76
- const [isLoading, setIsLoading] = useState(true);
77
- const [error, setError] = useState(null);
78
- const [storage, setStorage] = useState(null);
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
- setError('Failed to initialize storage');
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
- setIsLoading(true);
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
- setUser(fullUser);
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
- setIsLoading(false);
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
- setUser(null);
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
- setIsLoading(true);
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
- setUser(fullUser);
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
- setError('Failed to switch session');
294
+ useAuthStore.setState({
295
+ error: 'Failed to switch session'
296
+ });
258
297
  } finally {
259
- setIsLoading(false);
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
- setIsLoading(true);
267
- setError(null);
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
- setUser(fullUser);
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
- setError(error.message || 'Login failed');
369
+ loginFailure(error.message || 'Login failed');
327
370
  throw error;
328
371
  } finally {
329
- setIsLoading(false);
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
- setUser(null);
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
- setError('Logout failed');
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
- setError('No active session found');
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
- setError('Service not available');
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
- setUser(null);
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
- setError(`Logout all failed: ${error instanceof Error ? error.message : 'Unknown error'}`);
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
- setIsLoading(true);
407
- setError(null);
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
- setError(error.message || 'Sign up failed');
473
+ loginFailure(error.message || 'Sign up failed');
419
474
  throw error;
420
475
  } finally {
421
- setIsLoading(false);
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
- setUser(null);
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
- signUp,
577
- switchSession,
578
- removeSession,
579
- refreshSessions,
580
- getDeviceSessions,
581
- logoutAllDeviceSessions,
582
- updateDeviceName,
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":[]}