@oxyhq/services 5.8.1 → 5.8.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 (137) hide show
  1. package/lib/commonjs/index.js +9 -27
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/node/createAuth.js +7 -585
  4. package/lib/commonjs/node/createAuth.js.map +1 -1
  5. package/lib/commonjs/node/index.js +1 -38
  6. package/lib/commonjs/node/index.js.map +1 -1
  7. package/lib/commonjs/ui/components/FollowButton.js +100 -12
  8. package/lib/commonjs/ui/components/FollowButton.js.map +1 -1
  9. package/lib/commonjs/ui/components/Header.js +40 -6
  10. package/lib/commonjs/ui/components/Header.js.map +1 -1
  11. package/lib/commonjs/ui/components/OxyProvider.js +5 -0
  12. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  13. package/lib/commonjs/ui/context/OxyContext.js +63 -125
  14. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  15. package/lib/commonjs/ui/hooks/index.js +6 -0
  16. package/lib/commonjs/ui/hooks/index.js.map +1 -1
  17. package/lib/commonjs/ui/hooks/useFollow.js +59 -2
  18. package/lib/commonjs/ui/hooks/useFollow.js.map +1 -1
  19. package/lib/commonjs/ui/navigation/OxyRouter.js +10 -0
  20. package/lib/commonjs/ui/navigation/OxyRouter.js.map +1 -1
  21. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +9 -0
  22. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  23. package/lib/commonjs/ui/screens/ProfileScreen.js +214 -37
  24. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  25. package/lib/commonjs/ui/screens/UserLinksScreen.js +90 -0
  26. package/lib/commonjs/ui/screens/UserLinksScreen.js.map +1 -0
  27. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js +9 -6
  28. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js.map +1 -1
  29. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +3 -30
  30. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  31. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js +37 -46
  32. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js.map +1 -1
  33. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js +9 -12
  34. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -1
  35. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js +9 -12
  36. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js.map +1 -1
  37. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js +9 -12
  38. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js.map +1 -1
  39. package/lib/commonjs/ui/stores/authStore.js +24 -6
  40. package/lib/commonjs/ui/stores/authStore.js.map +1 -1
  41. package/lib/commonjs/ui/stores/followStore.js +106 -1
  42. package/lib/commonjs/ui/stores/followStore.js.map +1 -1
  43. package/lib/module/index.js +1 -3
  44. package/lib/module/index.js.map +1 -1
  45. package/lib/module/node/createAuth.js +7 -584
  46. package/lib/module/node/createAuth.js.map +1 -1
  47. package/lib/module/node/index.js +1 -7
  48. package/lib/module/node/index.js.map +1 -1
  49. package/lib/module/ui/components/FollowButton.js +101 -13
  50. package/lib/module/ui/components/FollowButton.js.map +1 -1
  51. package/lib/module/ui/components/Header.js +40 -6
  52. package/lib/module/ui/components/Header.js.map +1 -1
  53. package/lib/module/ui/components/OxyProvider.js +5 -0
  54. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  55. package/lib/module/ui/context/OxyContext.js +63 -125
  56. package/lib/module/ui/context/OxyContext.js.map +1 -1
  57. package/lib/module/ui/hooks/index.js +1 -1
  58. package/lib/module/ui/hooks/index.js.map +1 -1
  59. package/lib/module/ui/hooks/useFollow.js +57 -1
  60. package/lib/module/ui/hooks/useFollow.js.map +1 -1
  61. package/lib/module/ui/navigation/OxyRouter.js +10 -0
  62. package/lib/module/ui/navigation/OxyRouter.js.map +1 -1
  63. package/lib/module/ui/screens/AccountSettingsScreen.js +9 -0
  64. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  65. package/lib/module/ui/screens/ProfileScreen.js +214 -37
  66. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  67. package/lib/module/ui/screens/UserLinksScreen.js +85 -0
  68. package/lib/module/ui/screens/UserLinksScreen.js.map +1 -0
  69. package/lib/module/ui/screens/karma/KarmaAboutScreen.js +9 -6
  70. package/lib/module/ui/screens/karma/KarmaAboutScreen.js.map +1 -1
  71. package/lib/module/ui/screens/karma/KarmaCenterScreen.js +3 -30
  72. package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  73. package/lib/module/ui/screens/karma/KarmaFAQScreen.js +37 -46
  74. package/lib/module/ui/screens/karma/KarmaFAQScreen.js.map +1 -1
  75. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js +9 -12
  76. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -1
  77. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js +9 -12
  78. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js.map +1 -1
  79. package/lib/module/ui/screens/karma/KarmaRulesScreen.js +9 -12
  80. package/lib/module/ui/screens/karma/KarmaRulesScreen.js.map +1 -1
  81. package/lib/module/ui/stores/authStore.js +24 -6
  82. package/lib/module/ui/stores/authStore.js.map +1 -1
  83. package/lib/module/ui/stores/followStore.js +106 -1
  84. package/lib/module/ui/stores/followStore.js.map +1 -1
  85. package/lib/typescript/index.d.ts +1 -1
  86. package/lib/typescript/index.d.ts.map +1 -1
  87. package/lib/typescript/node/createAuth.d.ts +0 -112
  88. package/lib/typescript/node/createAuth.d.ts.map +1 -1
  89. package/lib/typescript/node/index.d.ts +0 -2
  90. package/lib/typescript/node/index.d.ts.map +1 -1
  91. package/lib/typescript/ui/components/FollowButton.d.ts +1 -0
  92. package/lib/typescript/ui/components/FollowButton.d.ts.map +1 -1
  93. package/lib/typescript/ui/components/Header.d.ts +2 -0
  94. package/lib/typescript/ui/components/Header.d.ts.map +1 -1
  95. package/lib/typescript/ui/components/OxyProvider.d.ts.map +1 -1
  96. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
  97. package/lib/typescript/ui/hooks/index.d.ts +1 -1
  98. package/lib/typescript/ui/hooks/index.d.ts.map +1 -1
  99. package/lib/typescript/ui/hooks/useFollow.d.ts +20 -0
  100. package/lib/typescript/ui/hooks/useFollow.d.ts.map +1 -1
  101. package/lib/typescript/ui/navigation/OxyRouter.d.ts.map +1 -1
  102. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  103. package/lib/typescript/ui/screens/ProfileScreen.d.ts.map +1 -1
  104. package/lib/typescript/ui/screens/UserLinksScreen.d.ts +15 -0
  105. package/lib/typescript/ui/screens/UserLinksScreen.d.ts.map +1 -0
  106. package/lib/typescript/ui/screens/karma/KarmaAboutScreen.d.ts.map +1 -1
  107. package/lib/typescript/ui/screens/karma/KarmaCenterScreen.d.ts.map +1 -1
  108. package/lib/typescript/ui/screens/karma/KarmaFAQScreen.d.ts.map +1 -1
  109. package/lib/typescript/ui/screens/karma/KarmaLeaderboardScreen.d.ts.map +1 -1
  110. package/lib/typescript/ui/screens/karma/KarmaRewardsScreen.d.ts.map +1 -1
  111. package/lib/typescript/ui/screens/karma/KarmaRulesScreen.d.ts.map +1 -1
  112. package/lib/typescript/ui/stores/authStore.d.ts +3 -1
  113. package/lib/typescript/ui/stores/authStore.d.ts.map +1 -1
  114. package/lib/typescript/ui/stores/followStore.d.ts +10 -0
  115. package/lib/typescript/ui/stores/followStore.d.ts.map +1 -1
  116. package/package.json +1 -1
  117. package/src/index.ts +2 -10
  118. package/src/node/createAuth.ts +7 -623
  119. package/src/node/index.ts +1 -19
  120. package/src/ui/components/FollowButton.tsx +95 -11
  121. package/src/ui/components/Header.tsx +45 -4
  122. package/src/ui/components/OxyProvider.tsx +6 -0
  123. package/src/ui/context/OxyContext.tsx +65 -136
  124. package/src/ui/hooks/index.ts +1 -1
  125. package/src/ui/hooks/useFollow.ts +63 -0
  126. package/src/ui/navigation/OxyRouter.tsx +10 -0
  127. package/src/ui/screens/AccountSettingsScreen.tsx +8 -0
  128. package/src/ui/screens/ProfileScreen.tsx +191 -28
  129. package/src/ui/screens/UserLinksScreen.tsx +96 -0
  130. package/src/ui/screens/karma/KarmaAboutScreen.tsx +9 -2
  131. package/src/ui/screens/karma/KarmaCenterScreen.tsx +1 -20
  132. package/src/ui/screens/karma/KarmaFAQScreen.tsx +40 -24
  133. package/src/ui/screens/karma/KarmaLeaderboardScreen.tsx +9 -3
  134. package/src/ui/screens/karma/KarmaRewardsScreen.tsx +9 -3
  135. package/src/ui/screens/karma/KarmaRulesScreen.tsx +9 -3
  136. package/src/ui/stores/authStore.ts +22 -7
  137. package/src/ui/stores/followStore.ts +102 -1
@@ -59,9 +59,7 @@ const getStorage = async () => {
59
59
 
60
60
  // Storage keys for secure sessions
61
61
  const getSecureStorageKeys = (prefix = 'oxy_secure') => ({
62
- sessions: `${prefix}_sessions`,
63
- // Array of SecureClientSession objects
64
- activeSessionId: `${prefix}_active_session_id` // ID of currently active session
62
+ activeSessionId: `${prefix}_active_session_id` // Only store the active session ID
65
63
  });
66
64
  export const OxyProvider = ({
67
65
  children,
@@ -123,7 +121,7 @@ export const OxyProvider = ({
123
121
  initStorage();
124
122
  }, []);
125
123
 
126
- // Effect to initialize authentication state
124
+ // Effect to initialize authentication state - only store session ID
127
125
  useEffect(() => {
128
126
  const initAuth = async () => {
129
127
  if (!storage) return;
@@ -131,79 +129,49 @@ export const OxyProvider = ({
131
129
  isLoading: true
132
130
  });
133
131
  try {
134
- // Load stored sessions
135
- const sessionsData = await storage.getItem(keys.sessions);
132
+ // Only load the active session ID from storage
136
133
  const storedActiveSessionId = await storage.getItem(keys.activeSessionId);
137
- console.log('SecureAuth - sessionsData:', sessionsData);
138
134
  console.log('SecureAuth - activeSessionId:', storedActiveSessionId);
139
- if (sessionsData) {
140
- const parsedSessions = JSON.parse(sessionsData);
141
-
142
- // Migrate old session format to include user info
143
- const migratedSessions = [];
144
- let shouldUpdateStorage = false;
145
- for (const session of parsedSessions) {
146
- if (!session.userId) {
147
- // Session is missing user info, try to fetch it
148
- try {
149
- const sessionUser = await oxyServices.getUserBySession(session.sessionId);
150
- migratedSessions.push({
151
- ...session,
152
- userId: sessionUser.id
153
- });
154
- shouldUpdateStorage = true;
155
- console.log(`Migrated session ${session.sessionId} for user ${sessionUser.id}`);
156
- } catch (error) {
157
- // Session might be invalid, skip it
158
- console.log(`Removing invalid session ${session.sessionId}:`, error);
159
- shouldUpdateStorage = true;
135
+ if (storedActiveSessionId) {
136
+ // Validate the stored session with the backend
137
+ try {
138
+ const validation = await oxyServices.validateSession(storedActiveSessionId);
139
+ if (validation.valid) {
140
+ console.log('SecureAuth - session validated successfully');
141
+ setActiveSessionId(storedActiveSessionId);
142
+
143
+ // Get access token for API calls
144
+ await oxyServices.getTokenBySession(storedActiveSessionId);
145
+
146
+ // Load full user data from backend
147
+ const fullUser = await oxyServices.getUserBySession(storedActiveSessionId);
148
+ loginSuccess(fullUser);
149
+ setMinimalUser({
150
+ id: fullUser.id,
151
+ username: fullUser.username,
152
+ avatar: fullUser.avatar
153
+ });
154
+
155
+ // Load sessions from backend
156
+ const serverSessions = await oxyServices.getSessionsBySessionId(storedActiveSessionId);
157
+ const clientSessions = serverSessions.map(serverSession => ({
158
+ sessionId: serverSession.sessionId,
159
+ deviceId: serverSession.deviceId,
160
+ expiresAt: serverSession.expiresAt || new Date().toISOString(),
161
+ lastActive: serverSession.lastActive || new Date().toISOString(),
162
+ userId: serverSession.userId || fullUser.id
163
+ }));
164
+ setSessions(clientSessions);
165
+ if (onAuthStateChange) {
166
+ onAuthStateChange(fullUser);
160
167
  }
161
168
  } else {
162
- // Session already has user info
163
- migratedSessions.push(session);
164
- }
165
- }
166
-
167
- // Update storage if we made changes
168
- if (shouldUpdateStorage) {
169
- await saveSessionsToStorage(migratedSessions);
170
- }
171
- setSessions(migratedSessions);
172
- if (storedActiveSessionId && migratedSessions.length > 0) {
173
- const activeSession = migratedSessions.find(s => s.sessionId === storedActiveSessionId);
174
- if (activeSession) {
175
- console.log('SecureAuth - activeSession found:', activeSession);
176
-
177
- // Validate session
178
- try {
179
- const validation = await oxyServices.validateSession(activeSession.sessionId);
180
- if (validation.valid) {
181
- console.log('SecureAuth - session validated successfully');
182
- setActiveSessionId(activeSession.sessionId);
183
-
184
- // Get access token for API calls
185
- await oxyServices.getTokenBySession(activeSession.sessionId);
186
-
187
- // Load full user data
188
- const fullUser = await oxyServices.getUserBySession(activeSession.sessionId);
189
- loginSuccess(fullUser);
190
- setMinimalUser({
191
- id: fullUser.id,
192
- username: fullUser.username,
193
- avatar: fullUser.avatar
194
- });
195
- if (onAuthStateChange) {
196
- onAuthStateChange(fullUser);
197
- }
198
- } else {
199
- console.log('SecureAuth - session invalid, removing');
200
- await removeInvalidSession(activeSession.sessionId);
201
- }
202
- } catch (error) {
203
- console.error('SecureAuth - session validation error:', error);
204
- await removeInvalidSession(activeSession.sessionId);
205
- }
169
+ console.log('SecureAuth - session invalid, clearing storage');
170
+ await clearAllStorage();
206
171
  }
172
+ } catch (error) {
173
+ console.error('SecureAuth - session validation error:', error);
174
+ await clearAllStorage();
207
175
  }
208
176
  }
209
177
  } catch (err) {
@@ -218,13 +186,13 @@ export const OxyProvider = ({
218
186
  if (storage) {
219
187
  initAuth();
220
188
  }
221
- }, [storage, oxyServices, keys, onAuthStateChange]);
189
+ }, [storage, oxyServices, keys, onAuthStateChange, loginSuccess, setMinimalUser]);
222
190
 
223
- // Remove invalid session
191
+ // Remove invalid session - refresh sessions from backend
224
192
  const removeInvalidSession = useCallback(async sessionId => {
193
+ // Remove from local state
225
194
  const filteredSessions = sessions.filter(s => s.sessionId !== sessionId);
226
195
  setSessions(filteredSessions);
227
- await saveSessionsToStorage(filteredSessions);
228
196
 
229
197
  // If there are other sessions, switch to the first one
230
198
  if (filteredSessions.length > 0) {
@@ -241,13 +209,7 @@ export const OxyProvider = ({
241
209
  }
242
210
  }, [sessions, storage, keys, onAuthStateChange, logoutStore]);
243
211
 
244
- // Save sessions to storage
245
- const saveSessionsToStorage = useCallback(async sessionsList => {
246
- if (!storage) return;
247
- await storage.setItem(keys.sessions, JSON.stringify(sessionsList));
248
- }, [storage, keys.sessions]);
249
-
250
- // Save active session ID to storage
212
+ // Save active session ID to storage (only session ID, no user data)
251
213
  const saveActiveSessionId = useCallback(async sessionId => {
252
214
  if (!storage) return;
253
215
  await storage.setItem(keys.activeSessionId, sessionId);
@@ -257,7 +219,6 @@ export const OxyProvider = ({
257
219
  const clearAllStorage = useCallback(async () => {
258
220
  if (!storage) return;
259
221
  try {
260
- await storage.removeItem(keys.sessions);
261
222
  await storage.removeItem(keys.activeSessionId);
262
223
  } catch (err) {
263
224
  console.error('Clear secure storage error:', err);
@@ -299,7 +260,7 @@ export const OxyProvider = ({
299
260
  }
300
261
  }, [oxyServices, onAuthStateChange, loginSuccess, saveActiveSessionId]);
301
262
 
302
- // Secure login method
263
+ // Secure login method - only store session ID, retrieve data from backend
303
264
  const login = useCallback(async (username, password, deviceName) => {
304
265
  if (!storage) throw new Error('Storage not initialized');
305
266
  useAuthStore.setState({
@@ -316,49 +277,28 @@ export const OxyProvider = ({
316
277
  console.log('SecureAuth - Using device ID:', deviceInfo.deviceId);
317
278
  const response = await oxyServices.secureLogin(username, password, deviceName || deviceInfo.deviceName || DeviceManager.getDefaultDeviceName(), deviceFingerprint);
318
279
 
319
- // Create client session object with user info for duplicate detection
320
- const clientSession = {
321
- sessionId: response.sessionId,
322
- deviceId: response.deviceId,
323
- expiresAt: response.expiresAt,
324
- lastActive: new Date().toISOString(),
325
- userId: response.user.id
326
- };
327
-
328
- // Check if this user already has a session (prevent duplicate accounts)
329
- const existingUserSessionIndex = sessions.findIndex(s => s.userId === response.user.id);
330
- let updatedSessions;
331
- if (existingUserSessionIndex !== -1) {
332
- // User already has a session - replace it with the new one (reused session scenario)
333
- const existingSession = sessions[existingUserSessionIndex];
334
- updatedSessions = [...sessions];
335
- updatedSessions[existingUserSessionIndex] = clientSession;
336
- console.log(`Reusing/updating existing session for user ${response.user.id}. Previous session: ${existingSession.sessionId}, New session: ${response.sessionId}`);
337
-
338
- // If the replaced session was the active one, update active session
339
- if (activeSessionId === existingSession.sessionId) {
340
- setActiveSessionId(response.sessionId);
341
- await saveActiveSessionId(response.sessionId);
342
- }
343
- } else {
344
- // Add new session for new user
345
- updatedSessions = [...sessions, clientSession];
346
- console.log(`Added new session for user ${response.user.id} on device ${response.deviceId}`);
347
- }
348
- setSessions(updatedSessions);
349
- await saveSessionsToStorage(updatedSessions);
350
-
351
- // Set as active session
280
+ // Set as active session (only store session ID)
352
281
  setActiveSessionId(response.sessionId);
353
282
  await saveActiveSessionId(response.sessionId);
354
283
 
355
284
  // Get access token for API calls
356
285
  await oxyServices.getTokenBySession(response.sessionId);
357
286
 
358
- // Load full user data
287
+ // Load full user data from backend
359
288
  const fullUser = await oxyServices.getUserBySession(response.sessionId);
360
289
  loginSuccess(fullUser);
361
290
  setMinimalUser(response.user);
291
+
292
+ // Load sessions from backend
293
+ const serverSessions = await oxyServices.getSessionsBySessionId(response.sessionId);
294
+ const clientSessions = serverSessions.map(serverSession => ({
295
+ sessionId: serverSession.sessionId,
296
+ deviceId: serverSession.deviceId,
297
+ expiresAt: serverSession.expiresAt || new Date().toISOString(),
298
+ lastActive: serverSession.lastActive || new Date().toISOString(),
299
+ userId: serverSession.userId || fullUser.id
300
+ }));
301
+ setSessions(clientSessions);
362
302
  if (onAuthStateChange) {
363
303
  onAuthStateChange(fullUser);
364
304
  }
@@ -371,7 +311,7 @@ export const OxyProvider = ({
371
311
  isLoading: false
372
312
  });
373
313
  }
374
- }, [storage, oxyServices, sessions, activeSessionId, saveSessionsToStorage, saveActiveSessionId, loginSuccess, setMinimalUser, onAuthStateChange, loginFailure]);
314
+ }, [storage, oxyServices, saveActiveSessionId, loginSuccess, setMinimalUser, onAuthStateChange, loginFailure]);
375
315
 
376
316
  // Logout method
377
317
  const logout = useCallback(async targetSessionId => {
@@ -380,10 +320,9 @@ export const OxyProvider = ({
380
320
  const sessionToLogout = targetSessionId || activeSessionId;
381
321
  await oxyServices.logoutSecureSession(activeSessionId, sessionToLogout);
382
322
 
383
- // Remove session from local storage
323
+ // Remove session from local state
384
324
  const filteredSessions = sessions.filter(s => s.sessionId !== sessionToLogout);
385
325
  setSessions(filteredSessions);
386
- await saveSessionsToStorage(filteredSessions);
387
326
 
388
327
  // If logging out active session
389
328
  if (sessionToLogout === activeSessionId) {
@@ -407,7 +346,7 @@ export const OxyProvider = ({
407
346
  error: 'Logout failed'
408
347
  });
409
348
  }
410
- }, [activeSessionId, oxyServices, sessions, saveSessionsToStorage, switchToSession, logoutStore, setMinimalUser, storage, keys.activeSessionId, onAuthStateChange]);
349
+ }, [activeSessionId, oxyServices, sessions, switchToSession, logoutStore, setMinimalUser, storage, keys.activeSessionId, onAuthStateChange]);
411
350
 
412
351
  // Logout all sessions
413
352
  const logoutAll = useCallback(async () => {
@@ -529,8 +468,7 @@ export const OxyProvider = ({
529
468
  }));
530
469
  console.log('refreshSessions: Updated sessions:', updatedSessions);
531
470
  setSessions(updatedSessions);
532
- await saveSessionsToStorage(updatedSessions);
533
- console.log('refreshSessions: Sessions saved to storage');
471
+ console.log('refreshSessions: Sessions updated in state');
534
472
  } catch (error) {
535
473
  console.error('Refresh sessions error:', error);
536
474
 
@@ -563,7 +501,7 @@ export const OxyProvider = ({
563
501
  onAuthStateChange(null);
564
502
  }
565
503
  }
566
- }, [activeSessionId, oxyServices, user?.id, sessions, saveSessionsToStorage, switchToSession, logoutStore, setMinimalUser, clearAllStorage, onAuthStateChange]);
504
+ }, [activeSessionId, oxyServices, user?.id, sessions, switchToSession, logoutStore, setMinimalUser, clearAllStorage, onAuthStateChange]);
567
505
 
568
506
  // Device management methods
569
507
  const getDeviceSessions = useCallback(async () => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","useContext","useEffect","useCallback","useMemo","useRef","OxyServices","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","OxyProvider","children","oxyServices","providedOxyServices","baseURL","storageKeyPrefix","onAuthStateChange","onError","bottomSheetRef","oxyServicesRef","current","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","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","restoreToken","signUp","email","switchSession","removeSession","refreshSessions","serverSessions","getSessionsBySessionId","map","serverSession","otherSessions","sessionError","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","showBottomSheet","screenOrConfig","expand","present","warn","Object","setTimeout","_navigateToScreen","screen","props","hideBottomSheet","dismiss","getBaseURL","onRemoteSignOut","info","contextValue","Provider","OxyContextProvider","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","useRef","OxyServices","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","activeSessionId","OxyProvider","children","oxyServices","providedOxyServices","baseURL","storageKeyPrefix","onAuthStateChange","onError","bottomSheetRef","oxyServicesRef","current","user","state","isAuthenticated","isLoading","loginSuccess","loginFailure","logoutStore","logout","minimalUser","setMinimalUser","useState","sessions","setSessions","setActiveSessionId","storage","setStorage","tokenReady","setTokenReady","keys","initStorage","platformStorage","setState","initAuth","storedActiveSessionId","log","validation","validateSession","valid","getTokenBySession","fullUser","getUserBySession","id","username","avatar","serverSessions","getSessionsBySessionId","clientSessions","map","serverSession","sessionId","deviceId","expiresAt","Date","toISOString","lastActive","userId","clearAllStorage","err","removeInvalidSession","filteredSessions","filter","s","length","switchToSession","saveActiveSessionId","login","password","deviceName","deviceFingerprint","getDeviceFingerprint","deviceInfo","getDeviceInfo","response","secureLogin","getDefaultDeviceName","message","targetSessionId","sessionToLogout","logoutSecureSession","logoutAll","logoutAllSecureSessions","restoreToken","signUp","email","switchSession","removeSession","refreshSessions","updatedSessions","otherSessions","session","sessionError","getDeviceSessions","logoutAllDeviceSessions","updateDeviceName","showBottomSheet","screenOrConfig","expand","present","warn","Object","setTimeout","_navigateToScreen","screen","props","hideBottomSheet","dismiss","getBaseURL","onRemoteSignOut","info","contextValue","Provider","OxyContextProvider","useOxy","context"],"sourceRoot":"../../../../src","sources":["ui/context/OxyContext.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
 
3
- export { useFollow } from './useFollow';
3
+ export { useFollow, useFollowerCounts } from './useFollow';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useFollow"],"sourceRoot":"../../../../src","sources":["ui/hooks/index.ts"],"mappings":";;AAAA,SAASA,SAAS,QAAQ,aAAa","ignoreList":[]}
1
+ {"version":3,"names":["useFollow","useFollowerCounts"],"sourceRoot":"../../../../src","sources":["ui/hooks/index.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,iBAAiB,QAAQ,aAAa","ignoreList":[]}
@@ -17,6 +17,11 @@ export const useFollow = userId => {
17
17
  const isFollowing = isSingleUser && userId ? followState.followingUsers[userId] ?? false : false;
18
18
  const isLoading = isSingleUser && userId ? followState.loadingUsers[userId] ?? false : false;
19
19
  const error = isSingleUser && userId ? followState.errors[userId] ?? null : null;
20
+
21
+ // Follower count helpers
22
+ const followerCount = isSingleUser && userId ? followState.followerCounts[userId] ?? null : null;
23
+ const followingCount = isSingleUser && userId ? followState.followingCounts[userId] ?? null : null;
24
+ const isLoadingCounts = isSingleUser && userId ? followState.loadingCounts[userId] ?? false : false;
20
25
  const toggleFollow = useCallback(async () => {
21
26
  if (!isSingleUser || !userId) throw new Error('toggleFollow is only available for single user mode');
22
27
  await followState.toggleFollowUser(userId, oxyServices, isFollowing);
@@ -33,6 +38,18 @@ export const useFollow = userId => {
33
38
  if (!isSingleUser || !userId) throw new Error('clearError is only available for single user mode');
34
39
  followState.clearFollowError(userId);
35
40
  }, [isSingleUser, userId, followState]);
41
+ const fetchUserCounts = useCallback(async () => {
42
+ if (!isSingleUser || !userId) throw new Error('fetchUserCounts is only available for single user mode');
43
+ await followState.fetchUserCounts(userId, oxyServices);
44
+ }, [isSingleUser, userId, followState, oxyServices]);
45
+ const setFollowerCount = useCallback(count => {
46
+ if (!isSingleUser || !userId) throw new Error('setFollowerCount is only available for single user mode');
47
+ followState.setFollowerCount(userId, count);
48
+ }, [isSingleUser, userId, followState]);
49
+ const setFollowingCount = useCallback(count => {
50
+ if (!isSingleUser || !userId) throw new Error('setFollowingCount is only available for single user mode');
51
+ followState.setFollowingCount(userId, count);
52
+ }, [isSingleUser, userId, followState]);
36
53
 
37
54
  // Multiple user helpers
38
55
  const followData = useMemo(() => {
@@ -62,6 +79,10 @@ export const useFollow = userId => {
62
79
  const clearErrorForUser = useCallback(targetUserId => {
63
80
  followState.clearFollowError(targetUserId);
64
81
  }, [followState]);
82
+ const updateCountsFromFollowAction = useCallback((targetUserId, action, counts) => {
83
+ const currentUserId = oxyServices.getCurrentUserId() || undefined;
84
+ followState.updateCountsFromFollowAction(targetUserId, action, counts, currentUserId);
85
+ }, [followState, oxyServices]);
65
86
 
66
87
  // Aggregate helpers for multiple users
67
88
  const isAnyLoading = userIds.some(uid => followState.loadingUsers[uid]);
@@ -76,7 +97,14 @@ export const useFollow = userId => {
76
97
  toggleFollow,
77
98
  setFollowStatus,
78
99
  fetchStatus,
79
- clearError
100
+ clearError,
101
+ // Follower count methods
102
+ followerCount,
103
+ followingCount,
104
+ isLoadingCounts,
105
+ fetchUserCounts,
106
+ setFollowerCount,
107
+ setFollowingCount
80
108
  };
81
109
  }
82
110
  return {
@@ -92,4 +120,32 @@ export const useFollow = userId => {
92
120
  allNotFollowing
93
121
  };
94
122
  };
123
+
124
+ // Convenience hook for just follower counts
125
+ export const useFollowerCounts = userId => {
126
+ const {
127
+ oxyServices
128
+ } = useOxy();
129
+ const followState = useFollowStore();
130
+ const followerCount = followState.followerCounts[userId] ?? null;
131
+ const followingCount = followState.followingCounts[userId] ?? null;
132
+ const isLoadingCounts = followState.loadingCounts[userId] ?? false;
133
+ const fetchUserCounts = useCallback(async () => {
134
+ await followState.fetchUserCounts(userId, oxyServices);
135
+ }, [userId, followState, oxyServices]);
136
+ const setFollowerCount = useCallback(count => {
137
+ followState.setFollowerCount(userId, count);
138
+ }, [userId, followState]);
139
+ const setFollowingCount = useCallback(count => {
140
+ followState.setFollowingCount(userId, count);
141
+ }, [userId, followState]);
142
+ return {
143
+ followerCount,
144
+ followingCount,
145
+ isLoadingCounts,
146
+ fetchUserCounts,
147
+ setFollowerCount,
148
+ setFollowingCount
149
+ };
150
+ };
95
151
  //# sourceMappingURL=useFollow.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useMemo","useFollowStore","useOxy","useFollow","userId","oxyServices","userIds","Array","isArray","isSingleUser","followState","isFollowing","followingUsers","isLoading","loadingUsers","error","errors","toggleFollow","Error","toggleFollowUser","setFollowStatus","following","setFollowingStatus","fetchStatus","fetchFollowStatus","clearError","clearFollowError","followData","data","forEach","uid","toggleFollowForUser","targetUserId","currentState","setFollowStatusForUser","fetchStatusForUser","fetchAllStatuses","Promise","all","map","clearErrorForUser","isAnyLoading","some","hasAnyError","allFollowing","every","allNotFollowing"],"sourceRoot":"../../../../src","sources":["ui/hooks/useFollow.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useMemo","useFollowStore","useOxy","useFollow","userId","oxyServices","userIds","Array","isArray","isSingleUser","followState","isFollowing","followingUsers","isLoading","loadingUsers","error","errors","followerCount","followerCounts","followingCount","followingCounts","isLoadingCounts","loadingCounts","toggleFollow","Error","toggleFollowUser","setFollowStatus","following","setFollowingStatus","fetchStatus","fetchFollowStatus","clearError","clearFollowError","fetchUserCounts","setFollowerCount","count","setFollowingCount","followData","data","forEach","uid","toggleFollowForUser","targetUserId","currentState","setFollowStatusForUser","fetchStatusForUser","fetchAllStatuses","Promise","all","map","clearErrorForUser","updateCountsFromFollowAction","action","counts","currentUserId","getCurrentUserId","undefined","isAnyLoading","some","hasAnyError","allFollowing","every","allNotFollowing","useFollowerCounts"],"sourceRoot":"../../../../src","sources":["ui/hooks/useFollow.ts"],"mappings":"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","ignoreList":[]}
@@ -20,6 +20,7 @@ import KarmaAboutScreen from '../screens/karma/KarmaAboutScreen';
20
20
  import KarmaRewardsScreen from '../screens/karma/KarmaRewardsScreen';
21
21
  import KarmaFAQScreen from '../screens/karma/KarmaFAQScreen';
22
22
  import ProfileScreen from '../screens/ProfileScreen';
23
+ import UserLinksScreen from '../screens/UserLinksScreen';
23
24
  import FileManagementScreen from '../screens/FileManagementScreen';
24
25
  import RecoverAccountScreen from '../screens/RecoverAccountScreen';
25
26
  import PaymentGatewayScreen from '../screens/PaymentGatewayScreen';
@@ -100,6 +101,10 @@ const routes = {
100
101
  component: ProfileScreen,
101
102
  snapPoints: ['60%', '90%']
102
103
  },
104
+ UserLinks: {
105
+ component: UserLinksScreen,
106
+ snapPoints: ['60%', '90%']
107
+ },
103
108
  FileManagement: {
104
109
  component: FileManagementScreen,
105
110
  snapPoints: ['70%', '100%']
@@ -135,7 +140,9 @@ const OxyRouter = ({
135
140
 
136
141
  // Memoized navigation methods
137
142
  const navigate = useCallback((screen, props = {}) => {
143
+ console.log('OxyRouter: navigate called with screen:', screen, 'props:', props);
138
144
  if (routes[screen]) {
145
+ console.log('OxyRouter: screen found in routes, navigating to:', screen);
139
146
  setCurrentScreen(screen);
140
147
  setScreenHistory(prev => [...prev, screen]);
141
148
  setScreenPropsMap(prev => ({
@@ -143,6 +150,7 @@ const OxyRouter = ({
143
150
  [screen]: props
144
151
  }));
145
152
  } else {
153
+ console.error(`OxyRouter: Screen "${screen}" not found in routes:`, Object.keys(routes));
146
154
  if (process.env.NODE_ENV !== 'production') {
147
155
  console.error(`Screen "${screen}" not found`);
148
156
  }
@@ -167,10 +175,12 @@ const OxyRouter = ({
167
175
  useEffect(() => {
168
176
  if (navigationRef) {
169
177
  navigationRef.current = navigate;
178
+ console.log('OxyRouter: navigationRef.current set to navigate function');
170
179
  }
171
180
  return () => {
172
181
  if (navigationRef) {
173
182
  navigationRef.current = null;
183
+ console.log('OxyRouter: navigationRef.current cleared');
174
184
  }
175
185
  };
176
186
  }, [navigate, navigationRef]);