@oxyhq/services 5.16.4 → 5.16.7

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 (82) hide show
  1. package/lib/commonjs/core/OxyServices.base.js +3 -1
  2. package/lib/commonjs/core/OxyServices.base.js.map +1 -1
  3. package/lib/commonjs/core/mixins/OxyServices.assets.js +20 -330
  4. package/lib/commonjs/core/mixins/OxyServices.assets.js.map +1 -1
  5. package/lib/commonjs/index.js +156 -0
  6. package/lib/commonjs/index.js.map +1 -1
  7. package/lib/commonjs/ui/context/OxyContext.js +45 -7
  8. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  9. package/lib/commonjs/ui/hooks/mutations/index.js +60 -20
  10. package/lib/commonjs/ui/hooks/mutations/index.js.map +1 -1
  11. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +230 -1
  12. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  13. package/lib/commonjs/ui/hooks/queries/index.js +96 -30
  14. package/lib/commonjs/ui/hooks/queries/index.js.map +1 -1
  15. package/lib/commonjs/ui/hooks/queries/queryKeys.js +5 -0
  16. package/lib/commonjs/ui/hooks/queries/queryKeys.js.map +1 -1
  17. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +75 -1
  18. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
  19. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +50 -2
  20. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
  21. package/lib/commonjs/ui/hooks/useAssets.js +8 -29
  22. package/lib/commonjs/ui/hooks/useAssets.js.map +1 -1
  23. package/lib/commonjs/ui/screens/FileManagementScreen.js +14 -10
  24. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  25. package/lib/module/core/OxyServices.base.js +3 -1
  26. package/lib/module/core/OxyServices.base.js.map +1 -1
  27. package/lib/module/core/mixins/OxyServices.assets.js +20 -331
  28. package/lib/module/core/mixins/OxyServices.assets.js.map +1 -1
  29. package/lib/module/index.js +17 -1
  30. package/lib/module/index.js.map +1 -1
  31. package/lib/module/ui/context/OxyContext.js +45 -7
  32. package/lib/module/ui/context/OxyContext.js.map +1 -1
  33. package/lib/module/ui/hooks/mutations/index.js +12 -3
  34. package/lib/module/ui/hooks/mutations/index.js.map +1 -1
  35. package/lib/module/ui/hooks/mutations/useAccountMutations.js +227 -0
  36. package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  37. package/lib/module/ui/hooks/queries/index.js +15 -4
  38. package/lib/module/ui/hooks/queries/index.js.map +1 -1
  39. package/lib/module/ui/hooks/queries/queryKeys.js +5 -0
  40. package/lib/module/ui/hooks/queries/queryKeys.js.map +1 -1
  41. package/lib/module/ui/hooks/queries/useAccountQueries.js +73 -0
  42. package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
  43. package/lib/module/ui/hooks/queries/useServicesQueries.js +50 -2
  44. package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
  45. package/lib/module/ui/hooks/useAssets.js +8 -29
  46. package/lib/module/ui/hooks/useAssets.js.map +1 -1
  47. package/lib/module/ui/screens/FileManagementScreen.js +12 -10
  48. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  49. package/lib/typescript/core/OxyServices.base.d.ts.map +1 -1
  50. package/lib/typescript/core/mixins/OxyServices.assets.d.ts +1 -70
  51. package/lib/typescript/core/mixins/OxyServices.assets.d.ts.map +1 -1
  52. package/lib/typescript/core/mixins/index.d.ts +4 -14
  53. package/lib/typescript/core/mixins/index.d.ts.map +1 -1
  54. package/lib/typescript/index.d.ts +2 -0
  55. package/lib/typescript/index.d.ts.map +1 -1
  56. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
  57. package/lib/typescript/ui/hooks/mutations/index.d.ts +8 -2
  58. package/lib/typescript/ui/hooks/mutations/index.d.ts.map +1 -1
  59. package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts +19 -0
  60. package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  61. package/lib/typescript/ui/hooks/queries/index.d.ts +9 -3
  62. package/lib/typescript/ui/hooks/queries/index.d.ts.map +1 -1
  63. package/lib/typescript/ui/hooks/queries/queryKeys.d.ts +4 -0
  64. package/lib/typescript/ui/hooks/queries/queryKeys.d.ts.map +1 -1
  65. package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts +6 -0
  66. package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
  67. package/lib/typescript/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  68. package/lib/typescript/ui/hooks/useAssets.d.ts.map +1 -1
  69. package/lib/typescript/ui/screens/FileManagementScreen.d.ts.map +1 -1
  70. package/package.json +1 -1
  71. package/src/core/OxyServices.base.ts +5 -1
  72. package/src/core/mixins/OxyServices.assets.ts +21 -338
  73. package/src/index.ts +49 -2
  74. package/src/ui/context/OxyContext.tsx +49 -7
  75. package/src/ui/hooks/mutations/index.ts +24 -3
  76. package/src/ui/hooks/mutations/useAccountMutations.ts +205 -0
  77. package/src/ui/hooks/queries/index.ts +29 -4
  78. package/src/ui/hooks/queries/queryKeys.ts +6 -0
  79. package/src/ui/hooks/queries/useAccountQueries.ts +69 -0
  80. package/src/ui/hooks/queries/useServicesQueries.ts +49 -2
  81. package/src/ui/hooks/useAssets.ts +8 -28
  82. package/src/ui/screens/FileManagementScreen.tsx +10 -11
@@ -96,12 +96,60 @@ export const useDeviceSessions = options => {
96
96
  export const useUserDevices = options => {
97
97
  const {
98
98
  oxyServices,
99
- isAuthenticated
99
+ isAuthenticated,
100
+ activeSessionId,
101
+ syncIdentity
100
102
  } = useOxy();
101
103
  return useQuery({
102
104
  queryKey: queryKeys.devices.list(),
103
105
  queryFn: async () => {
104
- return await oxyServices.getUserDevices();
106
+ // Ensure we have a valid token before making the request
107
+ if (!oxyServices.hasValidToken() && activeSessionId) {
108
+ try {
109
+ // Try to get token for the session
110
+ await oxyServices.getTokenBySession(activeSessionId);
111
+ } catch (tokenError) {
112
+ // If getting token fails, might be an offline session - try syncing
113
+ const errorMessage = tokenError instanceof Error ? tokenError.message : String(tokenError);
114
+ if (errorMessage.includes('AUTH_REQUIRED_OFFLINE_SESSION') || errorMessage.includes('offline')) {
115
+ try {
116
+ await syncIdentity();
117
+ // Retry getting token after sync
118
+ await oxyServices.getTokenBySession(activeSessionId);
119
+ } catch (syncError) {
120
+ throw new Error('Session needs to be synced. Please try again.');
121
+ }
122
+ } else {
123
+ throw tokenError;
124
+ }
125
+ }
126
+ }
127
+ try {
128
+ return await oxyServices.getUserDevices();
129
+ } catch (error) {
130
+ const errorMessage = error?.message || '';
131
+ const status = error?.status || error?.response?.status;
132
+
133
+ // Handle authentication errors
134
+ if (status === 401 || errorMessage.includes('Authentication required') || errorMessage.includes('Invalid or missing authorization header')) {
135
+ // Try to sync session and get token
136
+ if (activeSessionId) {
137
+ try {
138
+ await syncIdentity();
139
+ await oxyServices.getTokenBySession(activeSessionId);
140
+ // Retry the request after getting token
141
+ return await oxyServices.getUserDevices();
142
+ } catch (retryError) {
143
+ throw new Error('Authentication failed. Please sign in again.');
144
+ }
145
+ } else {
146
+ throw new Error('No active session. Please sign in.');
147
+ }
148
+ }
149
+
150
+ // TanStack Query will automatically retry on network errors
151
+ throw error;
152
+ }
105
153
  },
106
154
  enabled: options?.enabled !== false && isAuthenticated,
107
155
  staleTime: 5 * 60 * 1000,
@@ -1 +1 @@
1
- {"version":3,"names":["useQuery","queryKeys","useOxy","fetchSessionsWithFallback","mapSessionsToClient","useSessions","userId","options","oxyServices","activeSessionId","queryKey","sessions","list","queryFn","Error","fallbackDeviceId","undefined","fallbackUserId","enabled","staleTime","gcTime","useSession","sessionId","detail","validation","validateSession","useHeaderValidation","valid","user","now","Date","deviceId","expiresAt","getTime","toISOString","lastActive","lastActivity","id","toString","isCurrent","useDeviceSessions","active","getDeviceSessions","useUserDevices","isAuthenticated","devices","getUserDevices","useSecurityInfo","all","getSecurityInfo"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useServicesQueries.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useQuery","queryKeys","useOxy","fetchSessionsWithFallback","mapSessionsToClient","useSessions","userId","options","oxyServices","activeSessionId","queryKey","sessions","list","queryFn","Error","fallbackDeviceId","undefined","fallbackUserId","enabled","staleTime","gcTime","useSession","sessionId","detail","validation","validateSession","useHeaderValidation","valid","user","now","Date","deviceId","expiresAt","getTime","toISOString","lastActive","lastActivity","id","toString","isCurrent","useDeviceSessions","active","getDeviceSessions","useUserDevices","isAuthenticated","syncIdentity","devices","hasValidToken","getTokenBySession","tokenError","errorMessage","message","String","includes","syncError","getUserDevices","error","status","response","retryError","useSecurityInfo","all","getSecurityInfo"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/useServicesQueries.ts"],"mappings":"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","ignoreList":[]}
@@ -47,44 +47,23 @@ export const useAssets = () => {
47
47
  clearErrors();
48
48
  setUploading(true);
49
49
 
50
- // Calculate SHA256 for progress tracking
51
- const sha256 = await oxyInstance.calculateSHA256(file);
52
-
53
- // Initialize progress tracking
54
- const initialProgress = {
55
- fileId: '',
56
- // Will be set after init
57
- uploaded: 0,
58
- total: file.size,
59
- percentage: 0,
60
- status: 'uploading'
61
- };
62
-
63
- // Upload with progress callback (visibility undefined, metadata, then onProgress)
64
- const result = await oxyInstance.assetUpload(file, undefined, metadata, percentage => {
65
- if (initialProgress.fileId) {
66
- setUploadProgress(initialProgress.fileId, {
67
- ...initialProgress,
68
- uploaded: Math.round(percentage / 100 * file.size),
69
- percentage,
70
- status: percentage < 100 ? 'uploading' : 'processing'
71
- });
72
- }
73
- });
50
+ // Upload file (progress tracking simplified for now)
51
+ const result = await oxyInstance.assetUpload(file, undefined, metadata);
74
52
 
75
53
  // Update progress with final status
76
- if (result.file && initialProgress.fileId) {
77
- setUploadProgress(initialProgress.fileId, {
78
- ...initialProgress,
79
- fileId: result.file.id,
54
+ if (result?.file) {
55
+ const fileId = result.file.id;
56
+ setUploadProgress(fileId, {
57
+ fileId,
80
58
  uploaded: file.size,
59
+ total: file.size,
81
60
  percentage: 100,
82
61
  status: 'complete'
83
62
  });
84
63
 
85
64
  // Remove progress after a short delay
86
65
  setTimeout(() => {
87
- removeUploadProgress(result.file.id);
66
+ removeUploadProgress(fileId);
88
67
  }, 2000);
89
68
  }
90
69
 
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useAssetStore","oxyInstance","setOxyAssetInstance","instance","useAssets","assets","uploadProgress","loading","errors","setAsset","setAssets","removeAsset","setUploadProgress","removeUploadProgress","addLink","removeLink","setUploading","setLinking","setDeleting","setUploadError","setLinkError","setDeleteError","clearErrors","getAssetsByApp","getAssetsByEntity","getAssetUsageCount","isAssetLinked","reset","upload","file","metadata","Error","sha256","calculateSHA256","initialProgress","fileId","uploaded","total","size","percentage","status","result","assetUpload","undefined","Math","round","id","setTimeout","error","message","link","assetId","app","entityType","entityId","visibility","assetLink","createdBy","createdAt","Date","toISOString","unlink","assetUnlink","getUrl","variant","expiresIn","assetGetUrl","url","getAsset","assetGet","deleteAsset","force","assetDelete","restore","assetRestore","getVariants","assetGetVariants","Object","values"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAssets.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useAssetStore","oxyInstance","setOxyAssetInstance","instance","useAssets","assets","uploadProgress","loading","errors","setAsset","setAssets","removeAsset","setUploadProgress","removeUploadProgress","addLink","removeLink","setUploading","setLinking","setDeleting","setUploadError","setLinkError","setDeleteError","clearErrors","getAssetsByApp","getAssetsByEntity","getAssetUsageCount","isAssetLinked","reset","upload","file","metadata","Error","result","assetUpload","undefined","fileId","id","uploaded","size","total","percentage","status","setTimeout","error","message","link","assetId","app","entityType","entityId","visibility","assetLink","createdBy","createdAt","Date","toISOString","unlink","assetUnlink","getUrl","variant","expiresIn","assetGetUrl","url","getAsset","assetGet","deleteAsset","force","assetDelete","restore","assetRestore","getVariants","assetGetVariants","Object","values"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAssets.ts"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import React, { useState, useEffect, useCallback, useMemo, useRef } from 'react';
4
4
  import { View, Text, TouchableOpacity, StyleSheet, ScrollView, ActivityIndicator, RefreshControl, TextInput, Image, Animated, Easing, Alert } from 'react-native';
5
5
  import { Image as ExpoImage } from 'expo-image';
6
+ import * as DocumentPicker from 'expo-document-picker';
6
7
  import { toast } from '../../lib/sonner';
7
8
  import { Ionicons } from '@expo/vector-icons';
8
9
  // @ts-ignore - MaterialCommunityIcons is available at runtime
@@ -15,7 +16,8 @@ import { useThemeStyles } from '../hooks/useThemeStyles';
15
16
  import { useColorScheme } from '../hooks/use-color-scheme';
16
17
  import { normalizeTheme } from '../utils/themeUtils';
17
18
  import { useOxy } from '../context/OxyContext';
18
- import { confirmAction, convertDocumentPickerAssetToFile, formatFileSize, getFileIcon, getSafeDownloadUrl, uploadFileRaw } from '../utils/fileManagement';
19
+ import { useUploadFile } from '../hooks/mutations/useAccountMutations';
20
+ import { confirmAction, convertDocumentPickerAssetToFile, formatFileSize, getFileIcon, getSafeDownloadUrl } from '../utils/fileManagement';
19
21
  import { FileViewer } from '../components/fileManagement/FileViewer';
20
22
  import { FileDetailsModal } from '../components/fileManagement/FileDetailsModal';
21
23
  import { UploadPreview } from '../components/fileManagement/UploadPreview';
@@ -89,6 +91,7 @@ const FileManagementScreen = ({
89
91
  user,
90
92
  oxyServices
91
93
  } = useOxy();
94
+ const uploadFileMutation = useUploadFile();
92
95
  const files = useFiles();
93
96
  // Ensure containerWidth is a number (TypeScript guard)
94
97
  const safeContainerWidth = typeof containerWidth === 'number' ? containerWidth : 400;
@@ -494,7 +497,12 @@ const FileManagementScreen = ({
494
497
  useFileStore.getState().addFile(optimisticFile, {
495
498
  prepend: true
496
499
  });
497
- const result = await uploadFileRaw(raw, targetUserId, oxyServices, defaultVisibility);
500
+
501
+ // Use the mutation hook with authentication handling
502
+ const result = await uploadFileMutation.mutateAsync({
503
+ file: raw,
504
+ visibility: defaultVisibility
505
+ });
498
506
 
499
507
  // Attempt to refresh file list incrementally – fetch single file metadata if API allows
500
508
  if (result?.file || result?.files?.[0]) {
@@ -725,14 +733,8 @@ const FileManagementScreen = ({
725
733
  try {
726
734
  setIsPickingDocument(true);
727
735
 
728
- // Dynamically import expo-document-picker (Expo 54 supports it on all platforms)
729
- const DocumentPicker = await import('expo-document-picker').catch(() => null);
730
- if (!DocumentPicker || !DocumentPicker.getDocumentAsync) {
731
- toast.error('File picker not available. Please install expo-document-picker');
732
- return;
733
- }
734
-
735
- // Use getDocumentAsync directly - it will handle platform availability
736
+ // Use expo-document-picker (works on all platforms including web)
737
+ // On web, it uses the native file input and provides File objects directly
736
738
  const result = await DocumentPicker.getDocumentAsync({
737
739
  type: '*/*',
738
740
  multiple: true,