expo-file-system 18.2.0-canary-20250613-b29d676 → 18.2.0-canary-20250701-6a945c5

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 (67) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/android/build.gradle +2 -2
  3. package/android/src/main/java/expo/modules/filesystem/next/FileSystemDirectory.kt +10 -1
  4. package/android/src/main/java/expo/modules/filesystem/next/FileSystemFile.kt +5 -2
  5. package/android/src/main/java/expo/modules/filesystem/next/FileSystemNextModule.kt +12 -0
  6. package/android/src/main/java/expo/modules/filesystem/next/FileSystemPath.kt +8 -5
  7. package/build/FileSystem.types.d.ts +1 -6
  8. package/build/FileSystem.types.d.ts.map +1 -1
  9. package/build/next/ExpoFileSystem.d.ts +2 -0
  10. package/build/next/ExpoFileSystem.d.ts.map +1 -1
  11. package/build/next/ExpoFileSystem.types.d.ts +4 -0
  12. package/build/next/ExpoFileSystem.types.d.ts.map +1 -1
  13. package/build/next/FileSystem.d.ts +8 -0
  14. package/build/next/FileSystem.d.ts.map +1 -1
  15. package/expo-module.config.json +1 -1
  16. package/ios/EXFileSystemLocalFileHandler.m +1 -1
  17. package/ios/Next/FileSystemDirectory.swift +19 -4
  18. package/ios/Next/FileSystemFile.swift +8 -9
  19. package/ios/Next/FileSystemNextExceptions.swift +2 -2
  20. package/ios/Next/FileSystemNextModule.swift +38 -2
  21. package/ios/Next/FileSystemPath.swift +7 -0
  22. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676-sources.jar → 18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5-sources.jar} +0 -0
  23. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5-sources.jar.md5 +1 -0
  24. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5-sources.jar.sha1 +1 -0
  25. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5-sources.jar.sha256 +1 -0
  26. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5-sources.jar.sha512 +1 -0
  27. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.aar → 18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.aar} +0 -0
  28. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.aar.md5 +1 -0
  29. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.aar.sha1 +1 -0
  30. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.aar.sha256 +1 -0
  31. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.aar.sha512 +1 -0
  32. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.module → 18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.module} +22 -22
  33. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.module.md5 +1 -0
  34. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.module.sha1 +1 -0
  35. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.module.sha256 +1 -0
  36. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.module.sha512 +1 -0
  37. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.pom → 18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.pom} +1 -1
  38. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.pom.md5 +1 -0
  39. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.pom.sha1 +1 -0
  40. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.pom.sha256 +1 -0
  41. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250701-6a945c5/expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.pom.sha512 +1 -0
  42. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml +4 -4
  43. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml.md5 +1 -1
  44. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml.sha1 +1 -1
  45. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml.sha256 +1 -1
  46. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml.sha512 +1 -1
  47. package/package.json +4 -4
  48. package/src/FileSystem.types.ts +1 -6
  49. package/src/next/ExpoFileSystem.ts +2 -0
  50. package/src/next/ExpoFileSystem.types.ts +5 -0
  51. package/src/next/FileSystem.ts +22 -8
  52. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676-sources.jar.md5 +0 -1
  53. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676-sources.jar.sha1 +0 -1
  54. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676-sources.jar.sha256 +0 -1
  55. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676-sources.jar.sha512 +0 -1
  56. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.aar.md5 +0 -1
  57. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.aar.sha1 +0 -1
  58. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.aar.sha256 +0 -1
  59. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.aar.sha512 +0 -1
  60. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.module.md5 +0 -1
  61. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.module.sha1 +0 -1
  62. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.module.sha256 +0 -1
  63. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.module.sha512 +0 -1
  64. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.pom.md5 +0 -1
  65. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.pom.sha1 +0 -1
  66. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.pom.sha256 +0 -1
  67. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/18.2.0-canary-20250613-b29d676/expo.modules.filesystem-18.2.0-canary-20250613-b29d676.pom.sha512 +0 -1
package/CHANGELOG.md CHANGED
@@ -6,11 +6,19 @@
6
6
 
7
7
  ### 🎉 New features
8
8
 
9
+ - Add total and available sizes, directory sizes. ([#37594](https://github.com/expo/expo/pull/37594) by [@aleqsio](https://github.com/aleqsio))
9
10
  - Add support for custom headers in downloadFileAsync ([#36108](https://github.com/expo/expo/pull/36108) by [@leonhh](https://github.com/leonhh))
10
11
 
11
12
  ### 🐛 Bug fixes
12
13
 
14
+ - Update exists logic to align with documentation ([#37692](https://github.com/expo/expo/pull/37692) by [@Wenszel](https://github.com/Wenszel))
15
+ - Fix memory usage issue in getInfoAsync ([#37417](https://github.com/expo/expo/pull/37417) by [@Wenszel](https://github.com/Wenszel))
13
16
  - Improved type safety in the FileSystem module to support tsconfig setups with stricter rules than the default. ([#37107](https://github.com/expo/expo/pull/37107) by [@hirbod](https://github.com/hirbod))
17
+ - Added required modifiers in the FileSystem module to support tsconfig setups with stricter rules than the default. ([#37467](https://github.com/expo/expo/pull/37467)
18
+
19
+ ### 💡 Others
20
+
21
+ ## 18.1.11 - 2025-07-01
14
22
 
15
23
  ### 💡 Others
16
24
 
@@ -4,13 +4,13 @@ plugins {
4
4
  }
5
5
 
6
6
  group = 'host.exp.exponent'
7
- version = '18.2.0-canary-20250613-b29d676'
7
+ version = '18.2.0-canary-20250701-6a945c5'
8
8
 
9
9
  android {
10
10
  namespace "expo.modules.filesystem"
11
11
  defaultConfig {
12
12
  versionCode 30
13
- versionName "18.2.0-canary-20250613-b29d676"
13
+ versionName "18.2.0-canary-20250701-6a945c5"
14
14
  }
15
15
  }
16
16
 
@@ -16,8 +16,17 @@ class FileSystemDirectory(file: File) : FileSystemPath(file) {
16
16
  }
17
17
 
18
18
  val exists: Boolean get() {
19
+ return if (checkPermission(Permission.READ)) {
20
+ file.isDirectory
21
+ } else {
22
+ false
23
+ }
24
+ }
25
+
26
+ val size: Long get() {
19
27
  validatePermission(Permission.READ)
20
- return file.isDirectory
28
+ validateType()
29
+ return file.walkTopDown().filter { it.isFile }.map { it.length() }.sum()
21
30
  }
22
31
 
23
32
  fun create(options: CreateOptions = CreateOptions()) {
@@ -26,8 +26,11 @@ class FileSystemFile(file: File) : FileSystemPath(file) {
26
26
  }
27
27
 
28
28
  val exists: Boolean get() {
29
- validatePermission(Permission.READ)
30
- return file.isFile
29
+ return if (checkPermission(Permission.READ)) {
30
+ file.isFile
31
+ } else {
32
+ false
33
+ }
31
34
  }
32
35
 
33
36
  fun create(options: CreateOptions = CreateOptions()) {
@@ -32,6 +32,14 @@ class FileSystemNextModule : Module() {
32
32
  "bundleDirectory" to "asset:///"
33
33
  )
34
34
 
35
+ Property("totalDiskSpace") {
36
+ File(context.filesDir.path).totalSpace
37
+ }
38
+
39
+ Property("availableDiskSpace") {
40
+ File(context.filesDir.path).freeSpace
41
+ }
42
+
35
43
  AsyncFunction("downloadFileAsync") Coroutine { url: URI, to: FileSystemPath, options: DownloadOptionsNext? ->
36
44
  to.validatePermission(Permission.WRITE)
37
45
  val requestBuilder = Request.Builder().url(url.toURL())
@@ -209,6 +217,10 @@ class FileSystemNextModule : Module() {
209
217
  directory.asString()
210
218
  }
211
219
 
220
+ Property("size") { directory ->
221
+ directory.size
222
+ }
223
+
212
224
  // this function is internal and will be removed in the future (when returning arrays of shared objects is supported)
213
225
  Function("listAsRecords") { directory: FileSystemDirectory ->
214
226
  directory.listAsRecords()
@@ -63,12 +63,15 @@ abstract class FileSystemPath(public var file: File) : SharedObject() {
63
63
  return destination.file
64
64
  }
65
65
 
66
- fun validatePermission(permission: Permission): Boolean {
67
- val permissions = appContext?.filePermission?.getPathPermissions(appContext?.reactContext, file.path) ?: EnumSet.noneOf(Permission::class.java)
68
- if (permissions.contains(permission)) {
69
- return true
66
+ fun validatePermission(permission: Permission) {
67
+ if (!checkPermission(permission)) {
68
+ throw InvalidPermissionException(permission)
70
69
  }
71
- throw InvalidPermissionException(permission)
70
+ }
71
+
72
+ fun checkPermission(permission: Permission): Boolean {
73
+ val permissions = appContext?.filePermission?.getPathPermissions(appContext?.reactContext, file.path) ?: EnumSet.noneOf(Permission::class.java)
74
+ return permissions.contains(permission)
72
75
  }
73
76
 
74
77
  fun validateCanCreate(options: CreateOptions) {
@@ -184,7 +184,7 @@ export type FileInfo =
184
184
  */
185
185
  uri: string;
186
186
  /**
187
- * The size of the file in bytes. If operating on a source such as an iCloud file, only present if the `size` option was truthy.
187
+ * The size of the file in bytes.
188
188
  */
189
189
  size: number;
190
190
  /**
@@ -257,11 +257,6 @@ export type InfoOptions = {
257
257
  * @default false
258
258
  */
259
259
  md5?: boolean;
260
- /**
261
- * Explicitly specify that the file size should be included. For example, skipping this can prevent downloading the file if it's stored in iCloud.
262
- * The size is always returned for `file://` locations.
263
- */
264
- size?: boolean;
265
260
  };
266
261
  export type RelocatingOptions = {
267
262
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FileSystem.types.d.ts","sourceRoot":"","sources":["../src/FileSystem.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileSystem.types.d.ts","sourceRoot":"","sources":["../src/FileSystem.types.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ declare class ExpoFileSystemNextModule extends NativeModule {
4
4
  FileSystemDirectory: typeof Directory;
5
5
  FileSystemFile: typeof File;
6
6
  downloadFileAsync(url: string, destination: File | Directory, options?: DownloadOptions): Promise<string>;
7
+ totalDiskSpace: number;
8
+ availableDiskSpace: number;
7
9
  }
8
10
  declare const _default: ExpoFileSystemNextModule;
9
11
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"ExpoFileSystem.d.ts","sourceRoot":"","sources":["../../src/next/ExpoFileSystem.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAuB,MAAM,mBAAmB,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG/E,OAAO,OAAO,wBAAyB,SAAQ,YAAY;IACzD,mBAAmB,EAAE,OAAO,SAAS,CAAC;IACtC,cAAc,EAAE,OAAO,IAAI,CAAC;IAC5B,iBAAiB,CACf,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,IAAI,GAAG,SAAS,EAC7B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,MAAM,CAAC;CACnB;;AAED,wBAEoE"}
1
+ {"version":3,"file":"ExpoFileSystem.d.ts","sourceRoot":"","sources":["../../src/next/ExpoFileSystem.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAuB,MAAM,mBAAmB,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG/E,OAAO,OAAO,wBAAyB,SAAQ,YAAY;IACzD,mBAAmB,EAAE,OAAO,SAAS,CAAC;IACtC,cAAc,EAAE,OAAO,IAAI,CAAC;IAC5B,iBAAiB,CACf,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,IAAI,GAAG,SAAS,EAC7B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;;AAED,wBAEoE"}
@@ -67,6 +67,10 @@ export declare class Directory {
67
67
  * Lists the contents of a directory.
68
68
  */
69
69
  list(): (Directory | File)[];
70
+ /**
71
+ * A size of the directory in bytes. Null if the directory does not exist, or it cannot be read.
72
+ */
73
+ size: number | null;
70
74
  }
71
75
  export type DownloadOptions = {
72
76
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ExpoFileSystem.types.d.ts","sourceRoot":"","sources":["../../src/next/ExpoFileSystem.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG;IAC1B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,SAAS;IAC5B;;;;;;;OAOG;gBACS,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;IAElD;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,YAAY,IAAI,IAAI;IAEpB;;;;OAIG;IACH,MAAM,IAAI,IAAI;IAEd;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI;IAErC;;OAEG;IACH,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI;IAEzC;;OAEG;IACH,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI;IAEzC;;;;OAIG;IACH,aAAa,IAAI;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE;IAEvD;;OAEG;IACH,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE;CAC7B;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE;QACR,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,IAAI;IACvB;;;;OAIG;gBACS,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;IAElD;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,YAAY,IAAI,IAAI;IAEpB;;;OAGG;IACH,IAAI,IAAI,MAAM;IAEd;;;OAGG;IACH,MAAM,IAAI,MAAM;IAEhB;;;OAGG;IACH,KAAK,IAAI,UAAU;IAEnB;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAEzC;;;;OAIG;IACH,MAAM,IAAI,IAAI;IAEd;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI;IAErC;;OAEG;IACH,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI;IAEzC;;OAEG;IACH,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI;IAEzC;;;OAGG;IACH,IAAI,IAAI,UAAU;IAElB;;;;;;;;;OASG;IACH,MAAM,CAAC,iBAAiB,CACtB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,SAAS,GAAG,IAAI,EAC7B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,IAAI,CAAC;IAEhB;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpB;;OAEG;IACH,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnB;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,CAAC,OAAO,OAAO,UAAU;IAI7B,KAAK,IAAI,IAAI;IAKb,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IAKrC,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAMnC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAItB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB"}
1
+ {"version":3,"file":"ExpoFileSystem.types.d.ts","sourceRoot":"","sources":["../../src/next/ExpoFileSystem.types.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,14 @@ export declare class Paths extends PathUtilities {
10
10
  */
11
11
  static get document(): Directory;
12
12
  static get appleSharedContainers(): Record<string, Directory>;
13
+ /**
14
+ * A property that represents the total space on device's internal storage, represented in bytes.
15
+ */
16
+ static get totalDiskSpace(): number;
17
+ /**
18
+ * A property that represents the available space on device's internal storage, represented in bytes.
19
+ */
20
+ static get availableDiskSpace(): number;
13
21
  }
14
22
  /**
15
23
  * @hidden
@@ -1 +1 @@
1
- {"version":3,"file":"FileSystem.d.ts","sourceRoot":"","sources":["../../src/next/FileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,qBAAa,KAAM,SAAQ,aAAa;IACtC;;OAEG;IACH,MAAM,KAAK,KAAK,cAEf;IAED;;OAEG;IACH,MAAM,KAAK,QAAQ,cAElB;IACD,MAAM,KAAK,qBAAqB,8BAS/B;CACF;AAED;;GAEG;AACH,qBAAa,QAAS,SAAQ,IAAI;IAChC,IAAI,EAAE,IAAI,CAAC;IAEX;;OAEG;IACH,GAAG,EAAE,MAAM,CAAc;gBAEb,IAAI,EAAE,IAAI;IAKtB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IAInC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAIvB,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC;IAIlC,MAAM,IAAI,cAAc,CAAC,UAAU,CAAC;IAIpC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;CAGhE;AAED,qBAAa,IAAK,SAAQ,cAAc,CAAC,cAAc;IACrD;;;;;;;OAOG;gBACS,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;IAQlD,IAAI,IAAI,IAAI;IAOZ,IAAI,eAAe,cAElB;IAED;;;OAGG;IACH,IAAI,SAAS,WAEZ;IAED;;OAEG;IACH,IAAI,IAAI,WAEP;IAED,cAAc;IAId,cAAc;CAGf;AAYD;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,cAAc,CAAC,mBAAmB;IAC/D;;;;;;;OAOG;gBACS,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;IAQlD,IAAI,eAAe,cAElB;IAED;;;;OAIG;IACH,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE;IAO5B;;OAEG;IACH,IAAI,IAAI,WAEP;CACF"}
1
+ {"version":3,"file":"FileSystem.d.ts","sourceRoot":"","sources":["../../src/next/FileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,qBAAa,KAAM,SAAQ,aAAa;IACtC;;OAEG;IACH,MAAM,KAAK,KAAK,cAEf;IAED;;OAEG;IACH,MAAM,KAAK,QAAQ,cAElB;IACD,MAAM,KAAK,qBAAqB,8BAS/B;IAED;;OAEG;IACH,MAAM,KAAK,cAAc,WAExB;IAED;;OAEG;IACH,MAAM,KAAK,kBAAkB,WAE5B;CACF;AAED;;GAEG;AACH,qBAAa,QAAS,SAAQ,IAAI;IAChC,IAAI,EAAE,IAAI,CAAC;IAEX;;OAEG;IACH,GAAG,EAAE,MAAM,CAAc;gBAEb,IAAI,EAAE,IAAI;IAKtB,IAAa,IAAI,IAAI,MAAM,CAE1B;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAa,IAAI,IAAI,MAAM,CAE1B;IAEc,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IAInC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAIvB,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC;IAIlC,MAAM,IAAI,cAAc,CAAC,UAAU,CAAC;IAIpC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;CAGzE;AAED,qBAAa,IAAK,SAAQ,cAAc,CAAC,cAAc;IACrD;;;;;;;OAOG;gBACS,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;IAQlD,IAAI,IAAI,IAAI;IAOZ,IAAI,eAAe,cAElB;IAED;;;OAGG;IACH,IAAI,SAAS,WAEZ;IAED;;OAEG;IACH,IAAI,IAAI,WAEP;IAED,cAAc;IAId,cAAc;CAGf;AAYD;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,cAAc,CAAC,mBAAmB;IAC/D;;;;;;;OAOG;gBACS,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;IAQlD,IAAI,eAAe,cAElB;IAED;;;;OAIG;IACM,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE;IAOrC;;OAEG;IACH,IAAI,IAAI,WAEP;CACF"}
@@ -12,7 +12,7 @@
12
12
  "publication": {
13
13
  "groupId": "host.exp.exponent",
14
14
  "artifactId": "expo.modules.filesystem",
15
- "version": "18.2.0-canary-20250613-b29d676",
15
+ "version": "18.2.0-canary-20250701-6a945c5",
16
16
  "repository": "local-maven-repo"
17
17
  }
18
18
  }
@@ -17,7 +17,7 @@
17
17
  result[@"exists"] = @(YES);
18
18
  result[@"isDirectory"] = @(isDirectory);
19
19
  result[@"uri"] = [NSURL fileURLWithPath:path].absoluteString;
20
- if (options[@"md5"]) {
20
+ if ([options[@"md5"] boolValue]) {
21
21
  result[@"md5"] = [[NSData dataWithContentsOfFile:path] md5String];
22
22
  }
23
23
  result[@"size"] = @([EXFileSystemLocalFileHandler getFileSize:path attributes:attributes]);
@@ -27,13 +27,28 @@ internal final class FileSystemDirectory: FileSystemPath {
27
27
  }
28
28
  }
29
29
 
30
- override var exists: Bool {
31
- do {
30
+ var size: Int64 {
31
+ get throws {
32
32
  try validatePermission(.read)
33
- } catch {
34
- return false
33
+ var size: Int64 = 0
34
+ guard let subpaths = try? FileManager.default.subpathsOfDirectory(atPath: url.path) else {
35
+ throw UnableToGetSizeException("attributes do not contain size")
36
+ }
37
+ for subpath in subpaths {
38
+ let strSubpath = url.appendingPathComponent(subpath).path
39
+ guard let attributes: [FileAttributeKey: Any] = try? FileManager.default.attributesOfItem(atPath: strSubpath), let subpathSize = attributes[.size] as? Int64 else {
40
+ continue
41
+ }
42
+ size += subpathSize
43
+ }
44
+ return size
35
45
  }
46
+ }
36
47
 
48
+ override var exists: Bool {
49
+ guard checkPermission(.read) else {
50
+ return false
51
+ }
37
52
  var isDirectory: ObjCBool = false
38
53
  if FileManager.default.fileExists(atPath: url.path, isDirectory: &isDirectory) {
39
54
  return isDirectory.boolValue
@@ -33,15 +33,14 @@ internal final class FileSystemFile: FileSystemPath {
33
33
  }
34
34
 
35
35
  override var exists: Bool {
36
- get throws {
37
- try validatePermission(.read)
38
-
39
- var isDirectory: ObjCBool = false
40
- if FileManager.default.fileExists(atPath: url.path, isDirectory: &isDirectory) {
41
- return !isDirectory.boolValue
42
- }
36
+ guard checkPermission(.read) else {
43
37
  return false
44
38
  }
39
+ var isDirectory: ObjCBool = false
40
+ if FileManager.default.fileExists(atPath: url.path, isDirectory: &isDirectory) {
41
+ return !isDirectory.boolValue
42
+ }
43
+ return false
45
44
  }
46
45
 
47
46
  // TODO: Move to the constructor once error is rethrowed
@@ -56,10 +55,10 @@ internal final class FileSystemFile: FileSystemPath {
56
55
  try validatePermission(.read)
57
56
  let attributes: [FileAttributeKey: Any] = try FileManager.default.attributesOfItem(atPath: url.path)
58
57
  guard let size = attributes[.size] else {
59
- throw UnableToGetFileSizeException("attributes do not contain size")
58
+ throw UnableToGetSizeException("attributes do not contain size")
60
59
  }
61
60
  guard let size = size as? NSNumber else {
62
- throw UnableToGetFileSizeException("size is not a number")
61
+ throw UnableToGetSizeException("size is not a number")
63
62
  }
64
63
  return size.int64Value
65
64
  }
@@ -25,9 +25,9 @@ internal final class InvalidTypeDirectoryException: Exception {
25
25
  }
26
26
  }
27
27
 
28
- internal final class UnableToGetFileSizeException: GenericException<String> {
28
+ internal final class UnableToGetSizeException: GenericException<String> {
29
29
  override var reason: String {
30
- "Unable to get file size: \(param)"
30
+ "Unable to get file or directory size: \(param)"
31
31
  }
32
32
  }
33
33
 
@@ -4,18 +4,50 @@ import ExpoModulesCore
4
4
 
5
5
  @available(iOS 14, tvOS 14, *)
6
6
  public final class FileSystemNextModule: Module {
7
+ var documentDirectory: URL? {
8
+ return appContext?.config.documentDirectory
9
+ }
10
+
11
+ var cacheDirectory: URL? {
12
+ return appContext?.config.cacheDirectory
13
+ }
14
+
15
+ var totalDiskSpace: Int64? {
16
+ guard let path = documentDirectory?.path,
17
+ let attributes = try? FileManager.default.attributesOfFileSystem(forPath: path) else {
18
+ return nil
19
+ }
20
+ return attributes[.systemFreeSize] as? Int64
21
+ }
22
+
23
+ var availableDiskSpace: Int64? {
24
+ guard let path = documentDirectory?.path,
25
+ let attributes = try? FileManager.default.attributesOfFileSystem(forPath: path) else {
26
+ return nil
27
+ }
28
+ return attributes[.systemFreeSize] as? Int64
29
+ }
30
+
7
31
  public func definition() -> ModuleDefinition {
8
32
  Name("FileSystemNext")
9
33
 
10
34
  Constants {
11
35
  return [
12
- "documentDirectory": appContext?.config.documentDirectory?.absoluteString,
13
- "cacheDirectory": appContext?.config.cacheDirectory?.absoluteString,
36
+ "documentDirectory": documentDirectory?.absoluteString,
37
+ "cacheDirectory": cacheDirectory?.absoluteString,
14
38
  "bundleDirectory": Bundle.main.bundlePath,
15
39
  "appleSharedContainers": getAppleSharedContainers()
16
40
  ]
17
41
  }
18
42
 
43
+ Property("totalDiskSpace") {
44
+ return totalDiskSpace
45
+ }
46
+
47
+ Property("availableDiskSpace") {
48
+ return availableDiskSpace
49
+ }
50
+
19
51
  AsyncFunction("downloadFileAsync") { (url: URL, to: FileSystemPath, options: DownloadOptionsNext?, promise: Promise) in
20
52
  try to.validatePermission(.write)
21
53
 
@@ -197,6 +229,10 @@ public final class FileSystemNextModule: Module {
197
229
  Property("uri") { directory in
198
230
  return directory.url.absoluteString
199
231
  }
232
+
233
+ Property("size") { directory in
234
+ return try? directory.size
235
+ }
200
236
  }
201
237
  }
202
238
 
@@ -13,6 +13,13 @@ internal class FileSystemPath: SharedObject {
13
13
  try ensurePathPermission(appContext, path: url.path, flag: flag)
14
14
  }
15
15
 
16
+ func checkPermission(_ flag: EXFileSystemPermissionFlags) -> Bool {
17
+ guard let permissionsManager: EXFilePermissionModuleInterface = appContext?.legacyModule(implementing: EXFilePermissionModuleInterface.self) else {
18
+ return false
19
+ }
20
+ return permissionsManager.getPathPermissions(url.path).contains(flag)
21
+ }
22
+
16
23
  func validateCanCreate(_ options: CreateOptions) throws {
17
24
  if try !options.overwrite && exists {
18
25
  throw FileAlreadyExistsException("File already exists")
@@ -0,0 +1 @@
1
+ a1f15ad9dc98fca6f88a14505a127d5e8d50b770238d771baf88a00e7601c33a9b665fc0bbe65cea7acd66999eef4da2ab81b0a6086cc155b5cb56183e162eb7
@@ -0,0 +1 @@
1
+ f3c0e1282d55bbaf8241d63e2a99e9e59f8174133b59ad8c00b8d2d251e3eae40a4933c6890efb1fa682c4ecc3ccfbc2808d6a22328e4f1a1221fb2a966fa2fb
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "host.exp.exponent",
5
5
  "module": "expo.modules.filesystem",
6
- "version": "18.2.0-canary-20250613-b29d676",
6
+ "version": "18.2.0-canary-20250701-6a945c5",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
@@ -68,13 +68,13 @@
68
68
  ],
69
69
  "files": [
70
70
  {
71
- "name": "expo.modules.filesystem-18.2.0-canary-20250613-b29d676.aar",
72
- "url": "expo.modules.filesystem-18.2.0-canary-20250613-b29d676.aar",
73
- "size": 292094,
74
- "sha512": "494bbd18c43c3ec7930e9a2b8b60519ddac51f0db0e76e8e9e8a79368feaf05fac925801adb040de753f19ac5c349fa68a4cab6b1304aedfe6e8da6467c4ea39",
75
- "sha256": "f7b382e83d36d7223b0b107881bf1b629072140bf85d20416a5240edcf3b8ead",
76
- "sha1": "da887e7fa639fe2b40319061b5ff4d13f0f2bd62",
77
- "md5": "714afc053c77e63be31a31618d09495c"
71
+ "name": "expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.aar",
72
+ "url": "expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.aar",
73
+ "size": 297147,
74
+ "sha512": "f3c0e1282d55bbaf8241d63e2a99e9e59f8174133b59ad8c00b8d2d251e3eae40a4933c6890efb1fa682c4ecc3ccfbc2808d6a22328e4f1a1221fb2a966fa2fb",
75
+ "sha256": "fcba6c733aeda2a6a147d889876f67a85d00f478e9253d7bec1d93ebab3e308c",
76
+ "sha1": "c469ef87f1e0f39e1256948bb550fc329baa7cc7",
77
+ "md5": "d449724873c18702961102355232a8e8"
78
78
  }
79
79
  ]
80
80
  },
@@ -139,13 +139,13 @@
139
139
  ],
140
140
  "files": [
141
141
  {
142
- "name": "expo.modules.filesystem-18.2.0-canary-20250613-b29d676.aar",
143
- "url": "expo.modules.filesystem-18.2.0-canary-20250613-b29d676.aar",
144
- "size": 292094,
145
- "sha512": "494bbd18c43c3ec7930e9a2b8b60519ddac51f0db0e76e8e9e8a79368feaf05fac925801adb040de753f19ac5c349fa68a4cab6b1304aedfe6e8da6467c4ea39",
146
- "sha256": "f7b382e83d36d7223b0b107881bf1b629072140bf85d20416a5240edcf3b8ead",
147
- "sha1": "da887e7fa639fe2b40319061b5ff4d13f0f2bd62",
148
- "md5": "714afc053c77e63be31a31618d09495c"
142
+ "name": "expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.aar",
143
+ "url": "expo.modules.filesystem-18.2.0-canary-20250701-6a945c5.aar",
144
+ "size": 297147,
145
+ "sha512": "f3c0e1282d55bbaf8241d63e2a99e9e59f8174133b59ad8c00b8d2d251e3eae40a4933c6890efb1fa682c4ecc3ccfbc2808d6a22328e4f1a1221fb2a966fa2fb",
146
+ "sha256": "fcba6c733aeda2a6a147d889876f67a85d00f478e9253d7bec1d93ebab3e308c",
147
+ "sha1": "c469ef87f1e0f39e1256948bb550fc329baa7cc7",
148
+ "md5": "d449724873c18702961102355232a8e8"
149
149
  }
150
150
  ]
151
151
  },
@@ -159,13 +159,13 @@
159
159
  },
160
160
  "files": [
161
161
  {
162
- "name": "expo.modules.filesystem-18.2.0-canary-20250613-b29d676-sources.jar",
163
- "url": "expo.modules.filesystem-18.2.0-canary-20250613-b29d676-sources.jar",
164
- "size": 21472,
165
- "sha512": "be40f9a68f6d8766f337229b387c4b9e019446c6b5034b222dbaeca22abe0aabc533f964aed61dc9bb32c251cfbf01def0ea36debbec0ee6ceb45e0fb271f414",
166
- "sha256": "0756e1e7fc3ed6c758e60d571776d16a91d67682c788082fc50f6bee8a24900c",
167
- "sha1": "411d53074267783a2c3abd5f70acc8ecfe206850",
168
- "md5": "2003fc20bc6b10daed08f2422c631d05"
162
+ "name": "expo.modules.filesystem-18.2.0-canary-20250701-6a945c5-sources.jar",
163
+ "url": "expo.modules.filesystem-18.2.0-canary-20250701-6a945c5-sources.jar",
164
+ "size": 21619,
165
+ "sha512": "a1f15ad9dc98fca6f88a14505a127d5e8d50b770238d771baf88a00e7601c33a9b665fc0bbe65cea7acd66999eef4da2ab81b0a6086cc155b5cb56183e162eb7",
166
+ "sha256": "64eba3915b21e22080556533181df59940a58f1e5bc6a906a4b6f3d27c1bed6b",
167
+ "sha1": "f21ea788e9b53e599f5573ce50b99aca98d73d86",
168
+ "md5": "7bb0fa96a3a48c7967089baad9bbc721"
169
169
  }
170
170
  ]
171
171
  }
@@ -0,0 +1 @@
1
+ 68588bf1381e951806ba87c828955fc0e2da0c96488b38e2b4b615e19b386ccc97a0c364ec45dfee355854d8411581da7c0bfa294a9f1ae46ebcb8dd270c64c6
@@ -9,7 +9,7 @@
9
9
  <modelVersion>4.0.0</modelVersion>
10
10
  <groupId>host.exp.exponent</groupId>
11
11
  <artifactId>expo.modules.filesystem</artifactId>
12
- <version>18.2.0-canary-20250613-b29d676</version>
12
+ <version>18.2.0-canary-20250701-6a945c5</version>
13
13
  <packaging>aar</packaging>
14
14
  <name>expo.modules.filesystem</name>
15
15
  <url>https://github.com/expo/expo</url>
@@ -0,0 +1 @@
1
+ 6471d86f3fc23417a68a7ddb83617088b328adbec90c20b030570ddbfcf330ae49e6c57cff78230b80c62d27a3fc5fc98400aebb175547d9263dd2536c051c14
@@ -3,11 +3,11 @@
3
3
  <groupId>host.exp.exponent</groupId>
4
4
  <artifactId>expo.modules.filesystem</artifactId>
5
5
  <versioning>
6
- <latest>18.2.0-canary-20250613-b29d676</latest>
7
- <release>18.2.0-canary-20250613-b29d676</release>
6
+ <latest>18.2.0-canary-20250701-6a945c5</latest>
7
+ <release>18.2.0-canary-20250701-6a945c5</release>
8
8
  <versions>
9
- <version>18.2.0-canary-20250613-b29d676</version>
9
+ <version>18.2.0-canary-20250701-6a945c5</version>
10
10
  </versions>
11
- <lastUpdated>20250613135939</lastUpdated>
11
+ <lastUpdated>20250701174121</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- 083351c21a2ae27b46ccd153c962f2bb
1
+ ef3aa182a47af32d2f50f99dd2e3cec6
@@ -1 +1 @@
1
- 8d1ebd719c359a362b38687af0d1b4f23362128d
1
+ 8d6c9ea24d9b3a85652a608769e8c12aab5f2b88
@@ -1 +1 @@
1
- 47ce0f005d9420a4f57420bf2ef918d019936418991ac4edac1157180b83458d
1
+ 7a6d81e302e109dc2fee0d130b7786cc64196ef388d48c7ef3ed8aae1f491344
@@ -1 +1 @@
1
- 1f237d497b3017b3c7c01a2f8fed8fb7cb16282d541e39ea79d7b64336b408ca082e815567edaf8dbe386dc9800d2db823cca77e09ab83c8249bdfff3ee9fe73
1
+ 719f43df9463320f112a9be5fd7aefbc4618d2c60d3d0d412993490c88a9f8a594e94b5c353c53a3d0a1c44e8e1f7640c242aa465d967809040b51565f10fcb5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-file-system",
3
- "version": "18.2.0-canary-20250613-b29d676",
3
+ "version": "18.2.0-canary-20250701-6a945c5",
4
4
  "description": "Provides access to the local file system on the device.",
5
5
  "main": "src/index.ts",
6
6
  "types": "build/index.d.ts",
@@ -35,11 +35,11 @@
35
35
  "preset": "expo-module-scripts"
36
36
  },
37
37
  "devDependencies": {
38
- "expo-module-scripts": "4.1.8-canary-20250613-b29d676",
39
- "jest-expo": "54.0.0-canary-20250613-b29d676"
38
+ "expo-module-scripts": "4.1.9-canary-20250701-6a945c5",
39
+ "jest-expo": "54.0.0-canary-20250701-6a945c5"
40
40
  },
41
41
  "peerDependencies": {
42
- "expo": "54.0.0-canary-20250613-b29d676",
42
+ "expo": "54.0.0-canary-20250701-6a945c5",
43
43
  "react-native": "*"
44
44
  }
45
45
  }
@@ -204,7 +204,7 @@ export type FileInfo =
204
204
  */
205
205
  uri: string;
206
206
  /**
207
- * The size of the file in bytes. If operating on a source such as an iCloud file, only present if the `size` option was truthy.
207
+ * The size of the file in bytes.
208
208
  */
209
209
  size: number;
210
210
  /**
@@ -284,11 +284,6 @@ export type InfoOptions = {
284
284
  * @default false
285
285
  */
286
286
  md5?: boolean;
287
- /**
288
- * Explicitly specify that the file size should be included. For example, skipping this can prevent downloading the file if it's stored in iCloud.
289
- * The size is always returned for `file://` locations.
290
- */
291
- size?: boolean;
292
287
  };
293
288
 
294
289
  export type RelocatingOptions = {
@@ -12,6 +12,8 @@ declare class ExpoFileSystemNextModule extends NativeModule {
12
12
  destination: File | Directory,
13
13
  options?: DownloadOptions
14
14
  ): Promise<string>;
15
+ totalDiskSpace: number;
16
+ availableDiskSpace: number;
15
17
  }
16
18
 
17
19
  export default isRunningInExpoGo()
@@ -74,6 +74,11 @@ export declare class Directory {
74
74
  * Lists the contents of a directory.
75
75
  */
76
76
  list(): (Directory | File)[];
77
+
78
+ /**
79
+ * A size of the directory in bytes. Null if the directory does not exist, or it cannot be read.
80
+ */
81
+ size: number | null;
77
82
  }
78
83
 
79
84
  export type DownloadOptions = {
@@ -27,6 +27,20 @@ export class Paths extends PathUtilities {
27
27
  }
28
28
  return result;
29
29
  }
30
+
31
+ /**
32
+ * A property that represents the total space on device's internal storage, represented in bytes.
33
+ */
34
+ static get totalDiskSpace() {
35
+ return ExpoFileSystem.totalDiskSpace;
36
+ }
37
+
38
+ /**
39
+ * A property that represents the available space on device's internal storage, represented in bytes.
40
+ */
41
+ static get availableDiskSpace() {
42
+ return ExpoFileSystem.availableDiskSpace;
43
+ }
30
44
  }
31
45
 
32
46
  /**
@@ -45,7 +59,7 @@ export class FileBlob extends Blob {
45
59
  this.file = file;
46
60
  }
47
61
 
48
- get size(): number {
62
+ override get size(): number {
49
63
  return this.file.size ?? 0;
50
64
  }
51
65
 
@@ -56,27 +70,27 @@ export class FileBlob extends Blob {
56
70
  return this.file.name;
57
71
  }
58
72
 
59
- get type(): string {
73
+ override get type(): string {
60
74
  return this.file.type ?? '';
61
75
  }
62
76
 
63
- async arrayBuffer(): Promise<ArrayBuffer> {
77
+ override async arrayBuffer(): Promise<ArrayBuffer> {
64
78
  return this.file.bytes().buffer as ArrayBuffer;
65
79
  }
66
80
 
67
- async text(): Promise<string> {
81
+ override async text(): Promise<string> {
68
82
  return this.file.text();
69
83
  }
70
84
 
71
- async bytes(): Promise<Uint8Array> {
85
+ override async bytes(): Promise<Uint8Array> {
72
86
  return this.file.bytes();
73
87
  }
74
88
 
75
- stream(): ReadableStream<Uint8Array> {
89
+ override stream(): ReadableStream<Uint8Array> {
76
90
  return this.file.readableStream();
77
91
  }
78
92
 
79
- slice(start?: number, end?: number, contentType?: string): Blob {
93
+ override slice(start?: number, end?: number, contentType?: string): Blob {
80
94
  return new Blob([this.file.bytes().slice(start, end)], { type: contentType });
81
95
  }
82
96
  }
@@ -174,7 +188,7 @@ export class Directory extends ExpoFileSystem.FileSystemDirectory {
174
188
  * Calling this method if the parent directory does not exist will throw an error.
175
189
  * @returns An array of `Directory` and `File` instances.
176
190
  */
177
- list(): (Directory | File)[] {
191
+ override list(): (Directory | File)[] {
178
192
  // We need to wrap it in the JS File/Directory classes, and returning SharedObjects in lists is not supported yet on Android.
179
193
  return super
180
194
  .listAsRecords()
@@ -1 +0,0 @@
1
- be40f9a68f6d8766f337229b387c4b9e019446c6b5034b222dbaeca22abe0aabc533f964aed61dc9bb32c251cfbf01def0ea36debbec0ee6ceb45e0fb271f414
@@ -1 +0,0 @@
1
- 494bbd18c43c3ec7930e9a2b8b60519ddac51f0db0e76e8e9e8a79368feaf05fac925801adb040de753f19ac5c349fa68a4cab6b1304aedfe6e8da6467c4ea39
@@ -1 +0,0 @@
1
- 7557560c09d0a1482bd1017506bf20b6f16dce615bd7db951e8d41ab7ff66d6bfc0b161020aeaef91eba2e9a35e10a2415b2ea5874704af84dde6c595aaeedaf
@@ -1 +0,0 @@
1
- 3880d7a2d8d8ca0087b143765193ff48659e07150ac5abeb9052ef81fb55f2aef8e0f5de90f97ed36603e1d7c90ca638e268ee6e9407ea722b5d6e3609a4a0ec