expo-file-system 57.0.3 → 57.0.5

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 +11 -0
  2. package/android/build.gradle +2 -2
  3. package/android/src/main/java/expo/modules/filesystem/legacy/FileSystemLegacyModule.kt +5 -45
  4. package/android/src/main/java/expo/modules/filesystem/legacy/FileSystemLegacyReader.kt +57 -0
  5. package/build/legacy/FileSystem.types.d.ts +2 -2
  6. package/expo-module.config.json +1 -1
  7. package/ios/FileSystemFile.swift +2 -2
  8. package/ios/Legacy/FileSystemHelpers.swift +16 -2
  9. package/ios/Legacy/FileSystemLegacyModule.swift +5 -5
  10. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{57.0.3/expo.modules.filesystem-57.0.3-sources.jar → 57.0.5/expo.modules.filesystem-57.0.5-sources.jar} +0 -0
  11. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5-sources.jar.md5 +1 -0
  12. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5-sources.jar.sha1 +1 -0
  13. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5-sources.jar.sha256 +1 -0
  14. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5-sources.jar.sha512 +1 -0
  15. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{57.0.3/expo.modules.filesystem-57.0.3.aar → 57.0.5/expo.modules.filesystem-57.0.5.aar} +0 -0
  16. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.aar.md5 +1 -0
  17. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.aar.sha1 +1 -0
  18. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.aar.sha256 +1 -0
  19. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.aar.sha512 +1 -0
  20. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{57.0.3/expo.modules.filesystem-57.0.3.module → 57.0.5/expo.modules.filesystem-57.0.5.module} +22 -22
  21. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.module.md5 +1 -0
  22. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.module.sha1 +1 -0
  23. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.module.sha256 +1 -0
  24. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.module.sha512 +1 -0
  25. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/{57.0.3/expo.modules.filesystem-57.0.3.pom → 57.0.5/expo.modules.filesystem-57.0.5.pom} +1 -1
  26. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.pom.md5 +1 -0
  27. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.pom.sha1 +1 -0
  28. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.pom.sha256 +1 -0
  29. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.5/expo.modules.filesystem-57.0.5.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 +5 -5
  36. package/prebuilds/output/debug/xcframeworks/ExpoFileSystem.tar.gz +0 -0
  37. package/prebuilds/output/release/xcframeworks/ExpoFileSystem.tar.gz +0 -0
  38. package/src/legacy/FileSystem.types.ts +2 -2
  39. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3-sources.jar.md5 +0 -1
  40. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3-sources.jar.sha1 +0 -1
  41. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3-sources.jar.sha256 +0 -1
  42. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3-sources.jar.sha512 +0 -1
  43. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.aar.md5 +0 -1
  44. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.aar.sha1 +0 -1
  45. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.aar.sha256 +0 -1
  46. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.aar.sha512 +0 -1
  47. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.module.md5 +0 -1
  48. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.module.sha1 +0 -1
  49. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.module.sha256 +0 -1
  50. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.module.sha512 +0 -1
  51. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.pom.md5 +0 -1
  52. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.pom.sha1 +0 -1
  53. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.pom.sha256 +0 -1
  54. package/local-maven-repo/host/exp/exponent/expo.modules.filesystem/57.0.3/expo.modules.filesystem-57.0.3.pom.sha512 +0 -1
package/CHANGELOG.md CHANGED
@@ -10,6 +10,17 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 57.0.5 — 2026-08-20
14
+
15
+ ### 🐛 Bug fixes
16
+
17
+ - [iOS] Fix wrong permissions for text() and bytes(). ([#42422](https://github.com/expo/expo/pull/42422)) by [@simoneldevig](https://github.com/simoneldevig))
18
+ - Fixed `readAsStringAsync` to respect `position` and `length` when reading UTF-8 strings. ([#20291](https://github.com/expo/expo/issues/20291) by [@mvincentong](https://github.com/mvincentong)) ([#45714](https://github.com/expo/expo/pull/45714) by [@mvincentong](https://github.com/mvincentong))
19
+
20
+ ## 57.0.4 — 2026-08-14
21
+
22
+ _This version does not introduce any user-facing changes._
23
+
13
24
  ## 57.0.3 — 2026-08-14
14
25
 
15
26
  ### 🐛 Bug fixes
@@ -4,13 +4,13 @@ plugins {
4
4
  }
5
5
 
6
6
  group = 'host.exp.exponent'
7
- version = '57.0.3'
7
+ version = '57.0.5'
8
8
 
9
9
  android {
10
10
  namespace "expo.modules.filesystem"
11
11
  defaultConfig {
12
12
  versionCode 30
13
- versionName "57.0.3"
13
+ versionName "57.0.5"
14
14
  testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
15
15
  }
16
16
  testOptions {
@@ -43,7 +43,6 @@ import org.apache.commons.codec.digest.DigestUtils
43
43
  import org.apache.commons.io.FileUtils
44
44
  import org.apache.commons.io.IOUtils
45
45
  import java.io.BufferedInputStream
46
- import java.io.ByteArrayOutputStream
47
46
  import java.io.File
48
47
  import java.io.FileInputStream
49
48
  import java.io.FileNotFoundException
@@ -183,29 +182,10 @@ open class FileSystemLegacyModule : Module() {
183
182
  val uri = Uri.parse(slashifyFilePath(uriStr))
184
183
  ensurePermission(uri, FilePermissionService.Permission.READ)
185
184
 
186
- // TODO:Bacon: Add more encoding types to match iOS
187
185
  val encoding = options.encoding
188
- var contents: String?
189
- if (encoding == EncodingType.BASE64) {
190
- getInputStream(uri).use { inputStream ->
191
- contents = if (options.length != null && options.position != null) {
192
- val buffer = ByteArray(options.length)
193
- inputStream.skip(options.position.toLong())
194
- val bytesRead = inputStream.read(buffer, 0, options.length)
195
- Base64.encodeToString(buffer, 0, bytesRead, Base64.NO_WRAP)
196
- } else {
197
- val inputData = getInputStreamBytes(inputStream)
198
- Base64.encodeToString(inputData, Base64.NO_WRAP)
199
- }
200
- }
201
- } else {
202
- contents = when {
203
- uri.scheme == "file" -> IOUtils.toString(FileInputStream(uri.toFile()))
204
- uri.scheme == "asset" -> IOUtils.toString(openAssetInputStream(uri))
205
- uri.scheme == null -> IOUtils.toString(openResourceInputStream(uriStr))
206
- uri.isSAFUri -> IOUtils.toString(context.contentResolver.openInputStream(uri))
207
- else -> throw IOException("Unsupported scheme for location '$uri'.")
208
- }
186
+
187
+ val contents = getInputStream(uri, uriStr).use { inputStream ->
188
+ readInputStreamAsString(inputStream, encoding, options)
209
189
  }
210
190
  return@AsyncFunction contents
211
191
  }
@@ -1069,9 +1049,10 @@ open class FileSystemLegacyModule : Module() {
1069
1049
  }
1070
1050
 
1071
1051
  @Throws(IOException::class)
1072
- private fun getInputStream(uri: Uri) = when {
1052
+ private fun getInputStream(uri: Uri, uriStr: String? = null) = when {
1073
1053
  uri.scheme == "file" -> FileInputStream(uri.toFile())
1074
1054
  uri.scheme == "asset" -> openAssetInputStream(uri)
1055
+ uri.scheme == null && !uriStr.isNullOrEmpty() -> openResourceInputStream(uriStr)
1075
1056
  uri.isSAFUri -> context.contentResolver.openInputStream(uri)!!
1076
1057
  else -> throw IOException("Unsupported scheme for location '$uri'.")
1077
1058
  }
@@ -1104,27 +1085,6 @@ open class FileSystemLegacyModule : Module() {
1104
1085
 
1105
1086
  private fun parseFileUri(uriStr: String) = uriStr.substring(uriStr.indexOf(':') + 3)
1106
1087
 
1107
- @Throws(IOException::class)
1108
- private fun getInputStreamBytes(inputStream: InputStream): ByteArray {
1109
- val bytesResult: ByteArray
1110
- val byteBuffer = ByteArrayOutputStream()
1111
- val bufferSize = 1024
1112
- val buffer = ByteArray(bufferSize)
1113
- try {
1114
- var len: Int
1115
- while (inputStream.read(buffer).also { len = it } != -1) {
1116
- byteBuffer.write(buffer, 0, len)
1117
- }
1118
- bytesResult = byteBuffer.toByteArray()
1119
- } finally {
1120
- try {
1121
- byteBuffer.close()
1122
- } catch (ignored: IOException) {
1123
- }
1124
- }
1125
- return bytesResult
1126
- }
1127
-
1128
1088
  // Copied out of React Native's `NetworkingModule.java`
1129
1089
  private fun translateHeaders(headers: Headers): Bundle {
1130
1090
  val responseHeaders = Bundle()
@@ -0,0 +1,57 @@
1
+ package expo.modules.filesystem.legacy
2
+
3
+ import android.util.Base64
4
+ import java.io.InputStream
5
+
6
+ // `encoding` is nullable because the record converter leaves fields absent from the JS options
7
+ // object null instead of applying the `ReadingOptions` default. Anything that is not base64 is
8
+ // read as UTF-8, which is what the module did before this function existed.
9
+ internal fun readInputStreamAsString(
10
+ inputStream: InputStream,
11
+ encoding: EncodingType?,
12
+ options: ReadingOptions
13
+ ): String {
14
+ val bytes = inputStream.readBytes(options)
15
+
16
+ return if (encoding == EncodingType.BASE64) {
17
+ Base64.encodeToString(bytes, Base64.NO_WRAP)
18
+ } else {
19
+ String(bytes, Charsets.UTF_8)
20
+ }
21
+ }
22
+
23
+ private fun InputStream.readBytes(options: ReadingOptions): ByteArray {
24
+ if (options.length != null && options.position != null) {
25
+ skipBytes(options.position.toLong())
26
+ return readByteRange(options.length)
27
+ }
28
+ return readBytes()
29
+ }
30
+
31
+ private fun InputStream.skipBytes(position: Long) {
32
+ var remaining = position
33
+ while (remaining > 0) {
34
+ val skipped = skip(remaining)
35
+ if (skipped > 0) {
36
+ remaining -= skipped
37
+ continue
38
+ }
39
+ if (read() == -1) {
40
+ break
41
+ }
42
+ remaining--
43
+ }
44
+ }
45
+
46
+ private fun InputStream.readByteRange(length: Int): ByteArray {
47
+ val buffer = ByteArray(length)
48
+ var offset = 0
49
+ while (offset < length) {
50
+ val bytesRead = read(buffer, offset, length - offset)
51
+ if (bytesRead <= 0) {
52
+ break
53
+ }
54
+ offset += bytesRead
55
+ }
56
+ return buffer.copyOf(offset)
57
+ }
@@ -230,11 +230,11 @@ export type ReadingOptions = {
230
230
  */
231
231
  encoding?: EncodingType | 'utf8' | 'base64';
232
232
  /**
233
- * Optional number of bytes to skip. This option is only used when `encoding: FileSystem.EncodingType.Base64` and `length` is defined.
233
+ * Optional number of bytes to skip before reading. This option is only used when `length` is defined.
234
234
  * */
235
235
  position?: number;
236
236
  /**
237
- * Optional number of bytes to read. This option is only used when `encoding: FileSystem.EncodingType.Base64` and `position` is defined.
237
+ * Optional number of bytes to read. This option is only used when `position` is defined.
238
238
  */
239
239
  length?: number;
240
240
  };
@@ -12,7 +12,7 @@
12
12
  "publication": {
13
13
  "groupId": "host.exp.exponent",
14
14
  "artifactId": "expo.modules.filesystem",
15
- "version": "57.0.3",
15
+ "version": "57.0.5",
16
16
  "repository": "local-maven-repo"
17
17
  }
18
18
  }
@@ -130,13 +130,13 @@ internal final class FileSystemFile: FileSystemPath {
130
130
  }
131
131
 
132
132
  func text() throws -> String {
133
- return try withCorrectTypeAndScopedAccess(permission: .write) {
133
+ return try withCorrectTypeAndScopedAccess(permission: .read) {
134
134
  return try String(contentsOf: url)
135
135
  }
136
136
  }
137
137
 
138
138
  func bytes() throws -> Data {
139
- return try withCorrectTypeAndScopedAccess(permission: .write) {
139
+ return try withCorrectTypeAndScopedAccess(permission: .read) {
140
140
  return try Data(contentsOf: url)
141
141
  }
142
142
  }
@@ -14,19 +14,33 @@ internal func ensureFileDirectoryExists(_ fileUrl: URL) throws {
14
14
  }
15
15
 
16
16
  internal func readFileAsBase64(path: String, options: ReadingOptions) throws -> String {
17
+ return try readFileData(path: path, options: options).base64EncodedString(options: .endLineWithLineFeed)
18
+ }
19
+
20
+ internal func readFileAsString(path: String, encoding: String.Encoding, options: ReadingOptions) throws -> String {
21
+ guard let string = String(data: try readFileData(path: path, options: options), encoding: encoding) else {
22
+ throw FileNotReadableException(path)
23
+ }
24
+ return string
25
+ }
26
+
27
+ private func readFileData(path: String, options: ReadingOptions) throws -> Data {
17
28
  let file = FileHandle(forReadingAtPath: path)
18
29
 
19
30
  guard let file else {
20
31
  throw FileNotExistsException(path)
21
32
  }
33
+ defer {
34
+ try? file.close()
35
+ }
22
36
  if let position = options.position, position != 0 {
23
37
  // TODO: Handle these errors?
24
38
  try? file.seek(toOffset: UInt64(position))
25
39
  }
26
40
  if let length = options.length {
27
- return file.readData(ofLength: length).base64EncodedString(options: .endLineWithLineFeed)
41
+ return file.readData(ofLength: length)
28
42
  }
29
- return file.readDataToEndOfFile().base64EncodedString(options: .endLineWithLineFeed)
43
+ return file.readDataToEndOfFile()
30
44
  }
31
45
 
32
46
  internal func writeFileAsBase64(path: String, string: String) throws {
@@ -75,11 +75,11 @@ public final class FileSystemLegacyModule: Module {
75
75
  if options.encoding == .base64 {
76
76
  return try readFileAsBase64(path: url.path, options: options)
77
77
  }
78
- do {
79
- return try String(contentsOfFile: url.path, encoding: options.encoding.toStringEncoding() ?? .utf8)
80
- } catch {
81
- throw FileNotReadableException(url.path)
82
- }
78
+ return try readFileAsString(
79
+ path: url.path,
80
+ encoding: options.encoding.toStringEncoding() ?? .utf8,
81
+ options: options
82
+ )
83
83
  }
84
84
 
85
85
  AsyncFunction("writeAsStringAsync") { (url: URL, string: String, options: WritingOptions) in
@@ -0,0 +1 @@
1
+ d779dc115ba39bed5fd02090cdd591ccba408c4ff698713453d7a20560eba49a
@@ -0,0 +1 @@
1
+ 1961974b9a6f71c721be9e89e705017f757dbdf6905f1dcc289d730a0ecf1d591fbd06cb6fe7db14485868e51c2295aaf81c5e3f7048754b7166642f823e326a
@@ -0,0 +1 @@
1
+ 21e5a92a84edbca583ea87f92e465db1856d28649a48712c34cac14dde44ffce
@@ -0,0 +1 @@
1
+ 91abf5bee65a07c321a9430cac40877b5d73321810373700c16cc81dd49022a2fe61f83ae990d1acf26395a076ecf34817d9fabf1950bed599f0c4df5cef0f77
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "host.exp.exponent",
5
5
  "module": "expo.modules.filesystem",
6
- "version": "57.0.3",
6
+ "version": "57.0.5",
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-57.0.3.aar",
72
- "url": "expo.modules.filesystem-57.0.3.aar",
73
- "size": 692428,
74
- "sha512": "856e77adb55cdd548e0cba3d9e14a61ed0b72cddde65ae6299b0238e510d358cfd9e8d4549f49943fab98e6d21fcfa81ddd7b71dfbe848a89d00197c6d6c907d",
75
- "sha256": "1f810f75c6c0bace739085182ddfda3dacff48238f4251c26626cc89733178fe",
76
- "sha1": "b005244be8fd61d7fb137e94aae0ac8bfaf42a2c",
77
- "md5": "40f8afaff5b2b59fecbcd789d55a5b3c"
71
+ "name": "expo.modules.filesystem-57.0.5.aar",
72
+ "url": "expo.modules.filesystem-57.0.5.aar",
73
+ "size": 692712,
74
+ "sha512": "91abf5bee65a07c321a9430cac40877b5d73321810373700c16cc81dd49022a2fe61f83ae990d1acf26395a076ecf34817d9fabf1950bed599f0c4df5cef0f77",
75
+ "sha256": "21e5a92a84edbca583ea87f92e465db1856d28649a48712c34cac14dde44ffce",
76
+ "sha1": "5c18cec0393e24e5e5a25f6c23aba9d9f8664736",
77
+ "md5": "e759c192fcd21ac974f39c081eb5b6d8"
78
78
  }
79
79
  ]
80
80
  },
@@ -157,13 +157,13 @@
157
157
  ],
158
158
  "files": [
159
159
  {
160
- "name": "expo.modules.filesystem-57.0.3.aar",
161
- "url": "expo.modules.filesystem-57.0.3.aar",
162
- "size": 692428,
163
- "sha512": "856e77adb55cdd548e0cba3d9e14a61ed0b72cddde65ae6299b0238e510d358cfd9e8d4549f49943fab98e6d21fcfa81ddd7b71dfbe848a89d00197c6d6c907d",
164
- "sha256": "1f810f75c6c0bace739085182ddfda3dacff48238f4251c26626cc89733178fe",
165
- "sha1": "b005244be8fd61d7fb137e94aae0ac8bfaf42a2c",
166
- "md5": "40f8afaff5b2b59fecbcd789d55a5b3c"
160
+ "name": "expo.modules.filesystem-57.0.5.aar",
161
+ "url": "expo.modules.filesystem-57.0.5.aar",
162
+ "size": 692712,
163
+ "sha512": "91abf5bee65a07c321a9430cac40877b5d73321810373700c16cc81dd49022a2fe61f83ae990d1acf26395a076ecf34817d9fabf1950bed599f0c4df5cef0f77",
164
+ "sha256": "21e5a92a84edbca583ea87f92e465db1856d28649a48712c34cac14dde44ffce",
165
+ "sha1": "5c18cec0393e24e5e5a25f6c23aba9d9f8664736",
166
+ "md5": "e759c192fcd21ac974f39c081eb5b6d8"
167
167
  }
168
168
  ]
169
169
  },
@@ -177,13 +177,13 @@
177
177
  },
178
178
  "files": [
179
179
  {
180
- "name": "expo.modules.filesystem-57.0.3-sources.jar",
181
- "url": "expo.modules.filesystem-57.0.3-sources.jar",
182
- "size": 50743,
183
- "sha512": "088459ae823742c88f6b378e59b80fb9bf2f94769ac067636144f1e233c88509f9c5aa99f0f0500ae20f4e93b335cd07c66b846e05d26f1476776d15439977eb",
184
- "sha256": "b93839878f7d0d2e5b2c45d48dd3f66cbc81544c056dac4afd9b925a3ad1c470",
185
- "sha1": "437a520d50ffcce8c217a7d7d23bced2b9950bc0",
186
- "md5": "ce27cedadf73bf6fbb8733848a6fa461"
180
+ "name": "expo.modules.filesystem-57.0.5-sources.jar",
181
+ "url": "expo.modules.filesystem-57.0.5-sources.jar",
182
+ "size": 51266,
183
+ "sha512": "1961974b9a6f71c721be9e89e705017f757dbdf6905f1dcc289d730a0ecf1d591fbd06cb6fe7db14485868e51c2295aaf81c5e3f7048754b7166642f823e326a",
184
+ "sha256": "d779dc115ba39bed5fd02090cdd591ccba408c4ff698713453d7a20560eba49a",
185
+ "sha1": "6f9b0d67aa8a890f28676c154dcd8b45b73a11c1",
186
+ "md5": "04c3a806d64057a6ecf4f34f5915e550"
187
187
  }
188
188
  ]
189
189
  }
@@ -0,0 +1 @@
1
+ dbb94af7a598292a562542705c4ddc4e0d74d488ba054d4d86b4f21461a99bc4
@@ -0,0 +1 @@
1
+ aa0d2a3e8a0136724d10a2c48d64ceffb63f72c068deea75e95d1ff3284bf56b4d3e8a6294afe326649e6ad5e4a0376c9a40368b57f9d77b3807b658f3901335
@@ -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>57.0.3</version>
12
+ <version>57.0.5</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
+ 151b599429f5b10dca39475e0c0fbc840895fa40d84135b1f9fdcf215add3b03
@@ -0,0 +1 @@
1
+ 33ddac26d6bc4b4b57f49cede9a741c0ae9b5ab2ff6ca7b2d36b102eeac240dc76db015148ff2eb003c07facdd910dcf085e9b7c415b1093117e00b4d50802f1
@@ -3,11 +3,11 @@
3
3
  <groupId>host.exp.exponent</groupId>
4
4
  <artifactId>expo.modules.filesystem</artifactId>
5
5
  <versioning>
6
- <latest>57.0.3</latest>
7
- <release>57.0.3</release>
6
+ <latest>57.0.5</latest>
7
+ <release>57.0.5</release>
8
8
  <versions>
9
- <version>57.0.3</version>
9
+ <version>57.0.5</version>
10
10
  </versions>
11
- <lastUpdated>20260814141308</lastUpdated>
11
+ <lastUpdated>20260820103849</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- db0a7d846a4193df1cdb6b9938a396c6
1
+ a78d47b9697214bfeb4b6587c8b58752
@@ -1 +1 @@
1
- 309b2d6317b7aa4c5bdf3d44fe01ea500428d718
1
+ c00a7ddc24320975ac04d4748b8bf80723c78a19
@@ -1 +1 @@
1
- e1b4919538665b86e1fd3c8262e938b292ab16348d82444cab93458d76e413db
1
+ 75d6a017b5eb44792f46b3e322b05e582308bc754006f5bd00d28644cdd1e7c5
@@ -1 +1 @@
1
- 130b6517f5a9786812f27e7701e8ab3bf92ce1f62d3133f61a946fb2cfe09ff4d7089d060c921f683fa5d1548251e834a2c9cc0519f03520351cae9f532b1943
1
+ 2b3b7282de9a0c434d648e396517f8b7198cb7bea29cb45beb9c8c4c942b5ac46dce1422ecb5355f459838acdd51255ef405dc1d258ff4e05f2d0b5041af886b
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-file-system",
3
- "version": "57.0.3",
3
+ "version": "57.0.5",
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",
@@ -41,15 +41,15 @@
41
41
  },
42
42
  "devDependencies": {
43
43
  "@types/node": "^22.14.0",
44
- "expo": "57.0.13",
45
- "expo-module-scripts": "56.0.3",
46
- "jest-expo": "57.0.4"
44
+ "expo": "57.0.15",
45
+ "jest-expo": "57.0.4",
46
+ "expo-module-scripts": "56.0.3"
47
47
  },
48
48
  "peerDependencies": {
49
49
  "expo": "*",
50
50
  "react-native": "*"
51
51
  },
52
- "gitHead": "125b8d4472432db3dc4ae047730432d7bd5bd30c",
52
+ "gitHead": "499024a441d67293aa60afcbe02051999a54f1bb",
53
53
  "scripts": {
54
54
  "build": "expo-module build",
55
55
  "clean": "expo-module clean",
@@ -254,11 +254,11 @@ export type ReadingOptions = {
254
254
  */
255
255
  encoding?: EncodingType | 'utf8' | 'base64';
256
256
  /**
257
- * Optional number of bytes to skip. This option is only used when `encoding: FileSystem.EncodingType.Base64` and `length` is defined.
257
+ * Optional number of bytes to skip before reading. This option is only used when `length` is defined.
258
258
  * */
259
259
  position?: number;
260
260
  /**
261
- * Optional number of bytes to read. This option is only used when `encoding: FileSystem.EncodingType.Base64` and `position` is defined.
261
+ * Optional number of bytes to read. This option is only used when `position` is defined.
262
262
  */
263
263
  length?: number;
264
264
  };
@@ -1 +0,0 @@
1
- b93839878f7d0d2e5b2c45d48dd3f66cbc81544c056dac4afd9b925a3ad1c470
@@ -1 +0,0 @@
1
- 088459ae823742c88f6b378e59b80fb9bf2f94769ac067636144f1e233c88509f9c5aa99f0f0500ae20f4e93b335cd07c66b846e05d26f1476776d15439977eb
@@ -1 +0,0 @@
1
- 1f810f75c6c0bace739085182ddfda3dacff48238f4251c26626cc89733178fe
@@ -1 +0,0 @@
1
- 856e77adb55cdd548e0cba3d9e14a61ed0b72cddde65ae6299b0238e510d358cfd9e8d4549f49943fab98e6d21fcfa81ddd7b71dfbe848a89d00197c6d6c907d
@@ -1 +0,0 @@
1
- 9f2710be8fba97bbdd54e2988719e47028cb4e7bf047446d826abeb9108d8912
@@ -1 +0,0 @@
1
- ed667676b70b100d7b5958cfbfb3ccb4fe8c1abeb4f8cbf4d1fed509c06f172246940241e24774b08309bb7260cc515723a3b8e811fa57e5bfd5b779ce8dfd8a
@@ -1 +0,0 @@
1
- 940dbbfc49dedadeb141f17c713a9a90c5337f1735e7159a780fe5b1852fd82e
@@ -1 +0,0 @@
1
- 6ceb08c1abcd8758951207c12b7fb8d81d7b41590e8cd26c72cae0d6d3f80230e87645349b033d7df0b1a9a1eddc9441622b96fe5e21da851cd5171adc93b620