expo-file-system 19.0.1 → 19.0.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 (54) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/android/build.gradle +2 -2
  3. package/android/src/main/java/expo/modules/filesystem/FileSystemModule.kt +1 -1
  4. package/android/src/main/java/expo/modules/filesystem/FileSystemPath.kt +11 -0
  5. package/android/src/main/java/expo/modules/filesystem/unifiedfile/AssetFile.kt +121 -0
  6. package/build/ExpoFileSystem.d.ts +3 -0
  7. package/build/ExpoFileSystem.d.ts.map +1 -1
  8. package/build/FileSystem.d.ts.map +1 -1
  9. package/expo-module.config.json +1 -1
  10. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{19.0.1/expo.modules.filesystem-19.0.1-sources.jar → 19.0.2/expo.modules.filesystem-19.0.2-sources.jar} +0 -0
  11. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2-sources.jar.md5 +1 -0
  12. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2-sources.jar.sha1 +1 -0
  13. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2-sources.jar.sha256 +1 -0
  14. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2-sources.jar.sha512 +1 -0
  15. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.aar +0 -0
  16. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.aar.md5 +1 -0
  17. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.aar.sha1 +1 -0
  18. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.aar.sha256 +1 -0
  19. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.aar.sha512 +1 -0
  20. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{19.0.1/expo.modules.filesystem-19.0.1.module → 19.0.2/expo.modules.filesystem-19.0.2.module} +22 -22
  21. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.module.md5 +1 -0
  22. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.module.sha1 +1 -0
  23. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.module.sha256 +1 -0
  24. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.module.sha512 +1 -0
  25. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{19.0.1/expo.modules.filesystem-19.0.1.pom → 19.0.2/expo.modules.filesystem-19.0.2.pom} +1 -1
  26. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.pom.md5 +1 -0
  27. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.pom.sha1 +1 -0
  28. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.pom.sha256 +1 -0
  29. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.2/expo.modules.filesystem-19.0.2.pom.sha512 +1 -0
  30. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml +4 -4
  31. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml.md5 +1 -1
  32. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml.sha1 +1 -1
  33. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml.sha256 +1 -1
  34. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/maven-metadata.xml.sha512 +1 -1
  35. package/package.json +4 -4
  36. package/src/ExpoFileSystem.ts +3 -0
  37. package/src/FileSystem.ts +1 -0
  38. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1-sources.jar.md5 +0 -1
  39. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1-sources.jar.sha1 +0 -1
  40. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1-sources.jar.sha256 +0 -1
  41. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1-sources.jar.sha512 +0 -1
  42. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.aar +0 -0
  43. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.aar.md5 +0 -1
  44. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.aar.sha1 +0 -1
  45. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.aar.sha256 +0 -1
  46. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.aar.sha512 +0 -1
  47. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.module.md5 +0 -1
  48. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.module.sha1 +0 -1
  49. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.module.sha256 +0 -1
  50. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.module.sha512 +0 -1
  51. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.pom.md5 +0 -1
  52. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.pom.sha1 +0 -1
  53. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.pom.sha256 +0 -1
  54. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/19.0.1/expo.modules.filesystem-19.0.1.pom.sha512 +0 -1
package/CHANGELOG.md CHANGED
@@ -10,6 +10,10 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 19.0.2 — 2025-08-16
14
+
15
+ _This version does not introduce any user-facing changes._
16
+
13
17
  ## 19.0.1 — 2025-08-15
14
18
 
15
19
  ### 💡 Others
@@ -4,13 +4,13 @@ plugins {
4
4
  }
5
5
 
6
6
  group = 'host.exp.exponent'
7
- version = '19.0.1'
7
+ version = '19.0.2'
8
8
 
9
9
  android {
10
10
  namespace "expo.modules.filesystem"
11
11
  defaultConfig {
12
12
  versionCode 30
13
- versionName "19.0.1"
13
+ versionName "19.0.2"
14
14
  }
15
15
  }
16
16
 
@@ -30,7 +30,7 @@ class FileSystemModule : Module() {
30
30
  Constants(
31
31
  "documentDirectory" to Uri.fromFile(context.filesDir).toString() + "/",
32
32
  "cacheDirectory" to Uri.fromFile(context.cacheDir).toString() + "/",
33
- "bundleDirectory" to "asset:///"
33
+ "bundleDirectory" to "asset://"
34
34
  )
35
35
 
36
36
  Property("totalDiskSpace") {
@@ -3,6 +3,7 @@ package expo.modules.filesystem
3
3
  import android.net.Uri
4
4
  import android.os.Build
5
5
  import androidx.core.net.toUri
6
+ import expo.modules.filesystem.unifiedfile.AssetFile
6
7
  import expo.modules.filesystem.unifiedfile.JavaFile
7
8
  import expo.modules.filesystem.unifiedfile.SAFDocumentFile
8
9
  import expo.modules.filesystem.unifiedfile.UnifiedFileInterface
@@ -17,6 +18,10 @@ val Uri.isContentUri get(): Boolean {
17
18
  return scheme == "content"
18
19
  }
19
20
 
21
+ val Uri.isAssetUri get(): Boolean {
22
+ return scheme == "asset"
23
+ }
24
+
20
25
  fun slashifyFilePath(path: String?): String? {
21
26
  return if (path == null) {
22
27
  null
@@ -37,6 +42,8 @@ abstract class FileSystemPath(var uri: Uri) : SharedObject() {
37
42
  }
38
43
  val newAdapter = if (uri.isContentUri) {
39
44
  SAFDocumentFile(appContext?.reactContext ?: throw Exception("No context"), uri)
45
+ } else if (uri.isAssetUri) {
46
+ AssetFile(appContext?.reactContext ?: throw Exception("No context"), uri)
40
47
  } else {
41
48
  JavaFile(uri)
42
49
  }
@@ -116,6 +123,10 @@ abstract class FileSystemPath(var uri: Uri) : SharedObject() {
116
123
  // TODO: Consider adding a check for content URIs (not in legacy FS)
117
124
  return true
118
125
  }
126
+ if (uri.isAssetUri) {
127
+ // TODO: Consider adding a check for asset URIs – this returns asset files of Expo Go (such as root-cert), but these are already freely available on apk mirrors ect.
128
+ return true
129
+ }
119
130
  val permissions = appContext?.filePermission?.getPathPermissions(appContext?.reactContext, javaFile.path) ?: EnumSet.noneOf(Permission::class.java)
120
131
  return permissions.contains(permission)
121
132
  }
@@ -0,0 +1,121 @@
1
+ package expo.modules.filesystem.unifiedfile
2
+
3
+ import android.content.Context
4
+ import android.net.Uri
5
+ import android.webkit.MimeTypeMap
6
+ import androidx.core.net.toUri
7
+ import java.io.File
8
+ import java.io.InputStream
9
+ import java.io.OutputStream
10
+
11
+ class AssetFile(private val context: Context, override val uri: Uri) : UnifiedFileInterface {
12
+ val path: String = uri.path?.trimStart('/') ?: throw IllegalArgumentException("Invalid asset URI: $uri")
13
+
14
+ override fun exists(): Boolean = isDirectory() || isFile()
15
+
16
+ override fun isDirectory(): Boolean {
17
+ return context.assets.list(path)?.isNotEmpty() == true
18
+ }
19
+
20
+ override fun isFile(): Boolean {
21
+ return runCatching {
22
+ context.assets.open(path).use { true }
23
+ }.getOrElse {
24
+ false
25
+ }
26
+ }
27
+
28
+ override val parentFile: UnifiedFileInterface?
29
+ get() {
30
+ val currentPath = uri.path.orEmpty()
31
+ if (currentPath.isEmpty()) {
32
+ return null
33
+ }
34
+
35
+ val parentPath = currentPath.substringBeforeLast('/')
36
+ val parentUri = "asset://$parentPath".toUri()
37
+
38
+ return AssetFile(context, parentUri)
39
+ }
40
+
41
+ override fun createFile(mimeType: String, displayName: String): UnifiedFileInterface? {
42
+ throw UnsupportedOperationException("Asset files are not writable and cannot be created")
43
+ }
44
+
45
+ override fun createDirectory(displayName: String): UnifiedFileInterface? {
46
+ throw UnsupportedOperationException("Asset directories are not writable and cannot be created")
47
+ }
48
+
49
+ override fun delete(): Boolean = throw UnsupportedOperationException("Asset files are not writable and cannot be deleted")
50
+
51
+ override fun listFilesAsUnified(): List<UnifiedFileInterface> {
52
+ val list = context.assets.list(path)
53
+ return list?.map { name -> AssetFile(context, File(path, name).toUri()) as UnifiedFileInterface } ?: emptyList()
54
+ }
55
+
56
+ override val type: String?
57
+ get() {
58
+ val extension = MimeTypeMap.getFileExtensionFromUrl(uri.toString())
59
+ return if (extension.isNotEmpty()) {
60
+ MimeTypeMap
61
+ .getSingleton()
62
+ .getMimeTypeFromExtension(extension.lowercase())
63
+ } else {
64
+ null
65
+ }
66
+ }
67
+
68
+ override fun lastModified(): Long? {
69
+ return null
70
+ }
71
+
72
+ override val fileName: String?
73
+ get() = uri.lastPathSegment
74
+
75
+ override val creationTime: Long? get() {
76
+ return null
77
+ }
78
+
79
+ override fun outputStream(): OutputStream {
80
+ throw UnsupportedOperationException("Asset files are not writable")
81
+ }
82
+
83
+ override fun inputStream(): InputStream {
84
+ return context.assets.open(path)
85
+ }
86
+
87
+ override fun length(): Long {
88
+ runCatching {
89
+ context.assets.openFd(path).use { assetFileDescriptor ->
90
+ val length = assetFileDescriptor.length
91
+ if (length > 0) {
92
+ return length
93
+ }
94
+ }
95
+ }
96
+ runCatching {
97
+ var size: Long = 0
98
+ context.assets.open(path).use { inputStream ->
99
+ val buffer = ByteArray(8192)
100
+ var read: Int
101
+ while (inputStream.read(buffer).also { read = it } != -1) {
102
+ size += read
103
+ }
104
+ }
105
+ return size
106
+ }
107
+ return 0
108
+ }
109
+
110
+ override fun walkTopDown(): Sequence<AssetFile> = sequence {
111
+ yield(this@AssetFile)
112
+ if (isDirectory()) {
113
+ val assets = context.assets.list(path)
114
+ assets?.forEach { assetName ->
115
+ val childUri = "$uri/$assetName".replace("//", "/").toUri()
116
+ val childFile = AssetFile(context, childUri)
117
+ yieldAll(childFile.walkTopDown())
118
+ }
119
+ }
120
+ }
121
+ }
@@ -6,6 +6,9 @@ declare class ExpoFileSystemModule extends NativeModule {
6
6
  downloadFileAsync(url: string, destination: File | Directory, options?: DownloadOptions): Promise<string>;
7
7
  totalDiskSpace: number;
8
8
  availableDiskSpace: number;
9
+ documentDirectory: string;
10
+ cacheDirectory: string;
11
+ bundleDirectory: string;
9
12
  }
10
13
  declare const _default: ExpoFileSystemModule;
11
14
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"ExpoFileSystem.d.ts","sourceRoot":"","sources":["../src/ExpoFileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAuB,MAAM,mBAAmB,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE/E,OAAO,OAAO,oBAAqB,SAAQ,YAAY;IACrD,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,wBAAuE"}
1
+ {"version":3,"file":"ExpoFileSystem.d.ts","sourceRoot":"","sources":["../src/ExpoFileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAuB,MAAM,mBAAmB,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE/E,OAAO,OAAO,oBAAqB,SAAQ,YAAY;IACrD,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;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;CACzB;;AAED,wBAAuE"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileSystem.d.ts","sourceRoot":"","sources":["../src/FileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAmB,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,qBAAa,KAAM,SAAQ,aAAa;IACtC;;OAEG;IACH,MAAM,KAAK,KAAK,cAEf;IACD;;OAEG;IACH,MAAM,KAAK,MAAM,cAEhB;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;IAED;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,QAAQ;CAGzC;AAED,qBAAa,IAAK,SAAQ,cAAc,CAAC,cAAe,YAAW,IAAI;IACrE;;;;;;;OAOG;gBACS,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;IAQlD,IAAI,eAAe,cAElB;IAED;;;OAGG;IACH,IAAI,SAAS,WAEZ;IAED;;OAEG;IACH,IAAI,IAAI,WAEP;IAED,cAAc;IAId,cAAc;IAIR,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IAKzC,MAAM,IAAI,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAIjD,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;CAGhE;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;IAED,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAKvD,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS;CAGzC"}
1
+ {"version":3,"file":"FileSystem.d.ts","sourceRoot":"","sources":["../src/FileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAmB,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,qBAAa,KAAM,SAAQ,aAAa;IACtC;;OAEG;IACH,MAAM,KAAK,KAAK,cAEf;IAED;;OAEG;IACH,MAAM,KAAK,MAAM,cAEhB;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;IAED;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,QAAQ;CAGzC;AAED,qBAAa,IAAK,SAAQ,cAAc,CAAC,cAAe,YAAW,IAAI;IACrE;;;;;;;OAOG;gBACS,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;IAQlD,IAAI,eAAe,cAElB;IAED;;;OAGG;IACH,IAAI,SAAS,WAEZ;IAED;;OAEG;IACH,IAAI,IAAI,WAEP;IAED,cAAc;IAId,cAAc;IAIR,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IAKzC,MAAM,IAAI,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAIjD,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;CAGhE;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;IAED,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAKvD,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS;CAGzC"}
@@ -12,7 +12,7 @@
12
12
  "publication": {
13
13
  "groupId": "host.exp.exponent",
14
14
  "artifactId": "expo.modules.filesystem",
15
- "version": "19.0.1",
15
+ "version": "19.0.2",
16
16
  "repository": "local-maven-repo"
17
17
  }
18
18
  }
@@ -0,0 +1 @@
1
+ 8097cd642d39939ebf8ec65d03aa1845ada4f549eca7e452afab9402799515c9
@@ -0,0 +1 @@
1
+ ea65beba4d54d38bff01098d340a18c32c0d2ef808462b4557b54938b8407b79c775fe2e915434a99196389b407b755b8149e9b87ff6f3d0babd687f8754e53c
@@ -0,0 +1 @@
1
+ 464908df1a8f9435fa74a6f4313f4c2180019dc04d6e466566f3486388864020
@@ -0,0 +1 @@
1
+ 1a4366a3ef568e2a424c56459c7392817676d7558855346ba5a637e408ff3077960d9bd06ce042a1567eb051f52ee62282b4b0312b090066deda759f9f5a7f51
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "host.exp.exponent",
5
5
  "module": "expo.modules.filesystem",
6
- "version": "19.0.1",
6
+ "version": "19.0.2",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
@@ -75,13 +75,13 @@
75
75
  ],
76
76
  "files": [
77
77
  {
78
- "name": "expo.modules.filesystem-19.0.1.aar",
79
- "url": "expo.modules.filesystem-19.0.1.aar",
80
- "size": 347320,
81
- "sha512": "65ea717a289b2788e5ad9143eaa05e625b2135b9a9e08e900928caee25e356c42773b639687aa07fc0ae996c85a74605aea7acf7dd7d31ed304694312724d118",
82
- "sha256": "a83e3d54e55fb18bd393412ab7f85aacf27246eadd5f137f9d8c4c5f98e13630",
83
- "sha1": "68fa94eb248341effd8afe92bee7335ec2df9c01",
84
- "md5": "b1651ae06af2d05498af6f6ba2eb1ca8"
78
+ "name": "expo.modules.filesystem-19.0.2.aar",
79
+ "url": "expo.modules.filesystem-19.0.2.aar",
80
+ "size": 355555,
81
+ "sha512": "1a4366a3ef568e2a424c56459c7392817676d7558855346ba5a637e408ff3077960d9bd06ce042a1567eb051f52ee62282b4b0312b090066deda759f9f5a7f51",
82
+ "sha256": "464908df1a8f9435fa74a6f4313f4c2180019dc04d6e466566f3486388864020",
83
+ "sha1": "aa67c1e859974640d0fc6e9badd60aa2d12c5ed0",
84
+ "md5": "8cdbf9c8f6d8d1e55b0bda1e0f4a382e"
85
85
  }
86
86
  ]
87
87
  },
@@ -153,13 +153,13 @@
153
153
  ],
154
154
  "files": [
155
155
  {
156
- "name": "expo.modules.filesystem-19.0.1.aar",
157
- "url": "expo.modules.filesystem-19.0.1.aar",
158
- "size": 347320,
159
- "sha512": "65ea717a289b2788e5ad9143eaa05e625b2135b9a9e08e900928caee25e356c42773b639687aa07fc0ae996c85a74605aea7acf7dd7d31ed304694312724d118",
160
- "sha256": "a83e3d54e55fb18bd393412ab7f85aacf27246eadd5f137f9d8c4c5f98e13630",
161
- "sha1": "68fa94eb248341effd8afe92bee7335ec2df9c01",
162
- "md5": "b1651ae06af2d05498af6f6ba2eb1ca8"
156
+ "name": "expo.modules.filesystem-19.0.2.aar",
157
+ "url": "expo.modules.filesystem-19.0.2.aar",
158
+ "size": 355555,
159
+ "sha512": "1a4366a3ef568e2a424c56459c7392817676d7558855346ba5a637e408ff3077960d9bd06ce042a1567eb051f52ee62282b4b0312b090066deda759f9f5a7f51",
160
+ "sha256": "464908df1a8f9435fa74a6f4313f4c2180019dc04d6e466566f3486388864020",
161
+ "sha1": "aa67c1e859974640d0fc6e9badd60aa2d12c5ed0",
162
+ "md5": "8cdbf9c8f6d8d1e55b0bda1e0f4a382e"
163
163
  }
164
164
  ]
165
165
  },
@@ -173,13 +173,13 @@
173
173
  },
174
174
  "files": [
175
175
  {
176
- "name": "expo.modules.filesystem-19.0.1-sources.jar",
177
- "url": "expo.modules.filesystem-19.0.1-sources.jar",
178
- "size": 25388,
179
- "sha512": "3a192ba23bc4b2423142c3aae16cc8014ff5e1f9a29d1f0d7c8ce2fca93418b45b974272071cc4091da2485b8a037a7459c1dc5fc0ab29892e1ce92682368930",
180
- "sha256": "8fb9d4425d07c85743203381f588a6e3f7310078986d26bdd4553b7eed770d89",
181
- "sha1": "e2c5155a0d5312646eaabf1932df414ebe996bdf",
182
- "md5": "1b671bd915b3a01d585d676367ddf508"
176
+ "name": "expo.modules.filesystem-19.0.2-sources.jar",
177
+ "url": "expo.modules.filesystem-19.0.2-sources.jar",
178
+ "size": 26822,
179
+ "sha512": "ea65beba4d54d38bff01098d340a18c32c0d2ef808462b4557b54938b8407b79c775fe2e915434a99196389b407b755b8149e9b87ff6f3d0babd687f8754e53c",
180
+ "sha256": "8097cd642d39939ebf8ec65d03aa1845ada4f549eca7e452afab9402799515c9",
181
+ "sha1": "0042fe2aed8a969c26f2d2bb72a92b6ccd84f167",
182
+ "md5": "99439b02aef17bd440c0abcaf089b748"
183
183
  }
184
184
  ]
185
185
  }
@@ -0,0 +1 @@
1
+ 468df42d436ec31621400a7206d5be3966b23f93a06af293d0ba98a96e0f52bc
@@ -0,0 +1 @@
1
+ 944b83f7052e68ef56f7219b2ce9ff668af44983fff1fb6ee573a54f7a9cad4ffde2661d36f81b80be90ce628e2ca10c611894d081c0c4acd9351208320d8cc4
@@ -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>19.0.1</version>
12
+ <version>19.0.2</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
+ 1cab7e2943ced4469577ea0490b10785390859ddf2dd4e0c50f42d79db2a7b61
@@ -0,0 +1 @@
1
+ 2f59205a0923a4e9dd3394ed36e1d1d55ec85c97ff1ce3c8ff2de66cf14e7dae038a675f5e54ad5ebc64e832d4d7e8a0b6a111d75e67d06092cdf375a6ccadd7
@@ -3,11 +3,11 @@
3
3
  <groupId>host.exp.exponent</groupId>
4
4
  <artifactId>expo.modules.filesystem</artifactId>
5
5
  <versioning>
6
- <latest>19.0.1</latest>
7
- <release>19.0.1</release>
6
+ <latest>19.0.2</latest>
7
+ <release>19.0.2</release>
8
8
  <versions>
9
- <version>19.0.1</version>
9
+ <version>19.0.2</version>
10
10
  </versions>
11
- <lastUpdated>20250815180456</lastUpdated>
11
+ <lastUpdated>20250817001229</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- 74f380c71369c25e05ff551dd1fee4ce
1
+ 180d1ab04f46fcb453432817bccd2e76
@@ -1 +1 @@
1
- 3dec2781a53ebd73b694ccc65d4a3b502b03cc53
1
+ 1a184c08d3955ed560a0a824481090f2603688af
@@ -1 +1 @@
1
- 0da105927685e318e377648bcf661250781d55163e90b9763c8a2722137d6258
1
+ 96a8f9d311755b7a690e3a2ef03c804380b0ccfeabff9680a06c1ddf5e1c073e
@@ -1 +1 @@
1
- 337292dcd06601d036fad37cb67fa81df65d9d7f0a29f7b915f182436923fff964d54cb53b930ec96e0c72c9dec110bfa1e58e91d97dde75c142d6caebd97aa3
1
+ a9f085f6cbc6dd881bd1a6520d3b38cd000042c0b539879d99ee10af8bd3062827f6f29597303118996024cdf18d020687ceaee89bc78fbf5bd01b682bd69bfc
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-file-system",
3
- "version": "19.0.1",
3
+ "version": "19.0.2",
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,12 +35,12 @@
35
35
  "preset": "expo-module-scripts"
36
36
  },
37
37
  "devDependencies": {
38
- "expo-module-scripts": "^5.0.1",
39
- "jest-expo": "~54.0.0"
38
+ "expo-module-scripts": "^5.0.2",
39
+ "jest-expo": "~54.0.1"
40
40
  },
41
41
  "peerDependencies": {
42
42
  "expo": "*",
43
43
  "react-native": "*"
44
44
  },
45
- "gitHead": "2f7f90d0736af48cb542ccbc8addb836e330693a"
45
+ "gitHead": "eaa9b645058cf2233fbb27bb21a19bc605c90a88"
46
46
  }
@@ -12,6 +12,9 @@ declare class ExpoFileSystemModule extends NativeModule {
12
12
  ): Promise<string>;
13
13
  totalDiskSpace: number;
14
14
  availableDiskSpace: number;
15
+ documentDirectory: string;
16
+ cacheDirectory: string;
17
+ bundleDirectory: string;
15
18
  }
16
19
 
17
20
  export default requireNativeModule<ExpoFileSystemModule>('FileSystem');
package/src/FileSystem.ts CHANGED
@@ -10,6 +10,7 @@ export class Paths extends PathUtilities {
10
10
  static get cache() {
11
11
  return new Directory(ExpoFileSystem.cacheDirectory);
12
12
  }
13
+
13
14
  /**
14
15
  * A property containing the bundle directory – the directory where assets bundled with the application are stored.
15
16
  */
@@ -1 +0,0 @@
1
- 8fb9d4425d07c85743203381f588a6e3f7310078986d26bdd4553b7eed770d89
@@ -1 +0,0 @@
1
- 3a192ba23bc4b2423142c3aae16cc8014ff5e1f9a29d1f0d7c8ce2fca93418b45b974272071cc4091da2485b8a037a7459c1dc5fc0ab29892e1ce92682368930
@@ -1 +0,0 @@
1
- a83e3d54e55fb18bd393412ab7f85aacf27246eadd5f137f9d8c4c5f98e13630
@@ -1 +0,0 @@
1
- 65ea717a289b2788e5ad9143eaa05e625b2135b9a9e08e900928caee25e356c42773b639687aa07fc0ae996c85a74605aea7acf7dd7d31ed304694312724d118
@@ -1 +0,0 @@
1
- a362f09e2f97192a1de20786ef91ec5046ade2a6efdb9327b66f4d02ae25673f
@@ -1 +0,0 @@
1
- 10795b45afd43b375e68c129e8d558397b473abed07b89c11da2a961970d1c1fa3c96e362eda4e9f00b6fa339406c40f85e8736322b0bace838c4094b0ed0de9
@@ -1 +0,0 @@
1
- 7307f9f95088cead485919da171b0b855e5db2365c4aedf1db0e66221f76d454
@@ -1 +0,0 @@
1
- ded938ebd869a254178235b669d2d047d82cae8af4384dba8326b51ead203ce090545d45d08b69cb58e25d9b05616987a2e109f95d2e18be3022d69ef944c471