about summary refs log tree commit diff
path: root/src/lib/media/picker.e2e.tsx
diff options
context:
space:
mode:
authorHailey <me@haileyok.com>2024-09-24 09:28:12 -0700
committerGitHub <noreply@github.com>2024-09-25 01:28:12 +0900
commitd2fae81b33ae0a73d0b9f87700365d60bc51f094 (patch)
tree5b73740db03827238401e172ec84b0512a9fee3a /src/lib/media/picker.e2e.tsx
parentb9516202fa17325a3d54e54372ddd56149be129c (diff)
downloadvoidsky-d2fae81b33ae0a73d0b9f87700365d60bc51f094.tar.zst
Remove `react-native-fs` (#5463)
* remove rnfs

* tweak e2e

* log

* use `safeDeleteAsync`
Diffstat (limited to 'src/lib/media/picker.e2e.tsx')
-rw-r--r--src/lib/media/picker.e2e.tsx34
1 files changed, 23 insertions, 11 deletions
diff --git a/src/lib/media/picker.e2e.tsx b/src/lib/media/picker.e2e.tsx
index e6b46ba77..fc6fcde45 100644
--- a/src/lib/media/picker.e2e.tsx
+++ b/src/lib/media/picker.e2e.tsx
@@ -1,25 +1,37 @@
-import RNFS from 'react-native-fs'
 import {
   Image as RNImage,
   openCropper as openCropperFn,
 } from 'react-native-image-crop-picker'
+import {
+  documentDirectory,
+  getInfoAsync,
+  readDirectoryAsync,
+} from 'expo-file-system'
 
 import {compressIfNeeded} from './manip'
 import {CropperOptions} from './types'
 
 async function getFile() {
-  let files = await RNFS.readDir(
-    RNFS.LibraryDirectoryPath.split('/')
-      .slice(0, -5)
-      .concat(['Media', 'DCIM', '100APPLE'])
-      .join('/'),
-  )
-  files = files.filter(file => file.path.endsWith('.JPG'))
-  const file = files[0]
+  const imagesDir = documentDirectory!
+    .split('/')
+    .slice(0, -6)
+    .concat(['Media', 'DCIM', '100APPLE'])
+    .join('/')
+
+  let files = await readDirectoryAsync(imagesDir)
+  files = files.filter(file => file.endsWith('.JPG'))
+  const file = `${imagesDir}/${files[0]}`
+
+  const fileInfo = await getInfoAsync(file)
+
+  if (!fileInfo.exists) {
+    throw new Error('Failed to get file info')
+  }
+
   return await compressIfNeeded({
-    path: file.path,
+    path: file,
     mime: 'image/jpeg',
-    size: file.size,
+    size: fileInfo.size,
     width: 4288,
     height: 2848,
   })