react-native-blob-util 0.22.0 → 0.22.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 (97) hide show
  1. package/.eslintrc.js +56 -56
  2. package/LICENSE +21 -21
  3. package/Migration.md +41 -41
  4. package/NuGet.config +11 -11
  5. package/README.md +1109 -1104
  6. package/android/gradle.properties +1 -1
  7. package/android/src/main/AndroidManifest.xml +37 -37
  8. package/android/src/main/java/com/ReactNativeBlobUtil/ReactNativeBlobUtilConfig.java +57 -57
  9. package/android/src/main/java/com/ReactNativeBlobUtil/ReactNativeBlobUtilConst.java +20 -20
  10. package/android/src/main/java/com/ReactNativeBlobUtil/ReactNativeBlobUtilFileTransformer.java +9 -9
  11. package/android/src/main/java/com/ReactNativeBlobUtil/ReactNativeBlobUtilImpl.java +431 -431
  12. package/android/src/main/java/com/ReactNativeBlobUtil/ReactNativeBlobUtilProgressConfig.java +39 -39
  13. package/android/src/main/java/com/ReactNativeBlobUtil/ReactNativeBlobUtilReq.java +1014 -1014
  14. package/android/src/main/java/com/ReactNativeBlobUtil/Response/ReactNativeBlobUtilDefaultResp.java +98 -98
  15. package/android/src/main/java/com/ReactNativeBlobUtil/Response/ReactNativeBlobUtilFileResp.java +166 -166
  16. package/android/src/main/java/com/ReactNativeBlobUtil/Utils/FileDescription.java +19 -19
  17. package/android/src/main/java/com/ReactNativeBlobUtil/Utils/FileProvider.java +4 -4
  18. package/android/src/main/java/com/ReactNativeBlobUtil/Utils/MimeType.java +70 -70
  19. package/android/src/main/java/com/ReactNativeBlobUtil/Utils/PathResolver.java +223 -223
  20. package/android/src/main/java/com/ReactNativeBlobUtil/Utils/Tls12SocketFactory.java +68 -68
  21. package/android/src/main/res/values/strings.xml +3 -3
  22. package/android/src/main/res/xml/provider_paths.xml +12 -12
  23. package/android.js +58 -58
  24. package/class/ReactNativeBlobUtilCanceledFetchError.js +9 -9
  25. package/class/ReactNativeBlobUtilFile.js +5 -5
  26. package/class/ReactNativeBlobUtilReadStream.js +84 -84
  27. package/class/ReactNativeBlobUtilSession.js +68 -68
  28. package/class/ReactNativeBlobUtilWriteStream.js +50 -50
  29. package/class/StatefulPromise.js +7 -7
  30. package/codegenSpecs/NativeBlobUtils.js +86 -86
  31. package/components/Fetch.onPress.js +10 -10
  32. package/components/Fetch.when.js +15 -15
  33. package/fetch.js +350 -350
  34. package/fs.js +480 -480
  35. package/index.js +64 -64
  36. package/index.js.flow +192 -192
  37. package/index.web.js +1 -1
  38. package/ios/PrivacyInfo.xcprivacy +28 -28
  39. package/ios/ReactNativeBlobUtil/ReactNativeBlobUtil.h +55 -55
  40. package/ios/ReactNativeBlobUtil/ReactNativeBlobUtil.mm +992 -992
  41. package/ios/ReactNativeBlobUtil.xcodeproj/project.pbxproj +405 -405
  42. package/ios/ReactNativeBlobUtilConst.h +58 -58
  43. package/ios/ReactNativeBlobUtilConst.mm +47 -47
  44. package/ios/ReactNativeBlobUtilFS.h +108 -108
  45. package/ios/ReactNativeBlobUtilFS.mm +1064 -1064
  46. package/ios/ReactNativeBlobUtilFileTransformer.h +23 -23
  47. package/ios/ReactNativeBlobUtilFileTransformer.mm +20 -20
  48. package/ios/ReactNativeBlobUtilNetwork.h +49 -49
  49. package/ios/ReactNativeBlobUtilNetwork.mm +159 -159
  50. package/ios/ReactNativeBlobUtilProgress.h +32 -32
  51. package/ios/ReactNativeBlobUtilProgress.mm +57 -57
  52. package/ios/ReactNativeBlobUtilReqBuilder.h +37 -37
  53. package/ios/ReactNativeBlobUtilReqBuilder.mm +292 -292
  54. package/ios/ReactNativeBlobUtilRequest.h +48 -48
  55. package/ios/ReactNativeBlobUtilRequest.mm +584 -584
  56. package/ios.js +61 -61
  57. package/json-stream.js +42 -42
  58. package/lib/oboe-browser.js +2703 -2703
  59. package/mediacollection.js +36 -36
  60. package/package.json +68 -68
  61. package/polyfill/Blob.js +362 -362
  62. package/polyfill/Event.js +11 -11
  63. package/polyfill/EventTarget.js +78 -78
  64. package/polyfill/Fetch.js +219 -219
  65. package/polyfill/File.js +27 -27
  66. package/polyfill/FileReader.js +91 -91
  67. package/polyfill/ProgressEvent.js +32 -32
  68. package/polyfill/XMLHttpRequest.js +466 -466
  69. package/polyfill/XMLHttpRequestEventTarget.js +126 -126
  70. package/polyfill/index.js +11 -11
  71. package/react-native-blob-util.podspec +48 -48
  72. package/types.js +69 -69
  73. package/utils/log.js +40 -40
  74. package/utils/unicode.js +7 -7
  75. package/utils/uri.js +33 -33
  76. package/utils/uuid.js +4 -4
  77. package/windows/ExperimentalFeatures.props +33 -33
  78. package/windows/README.md +2 -2
  79. package/windows/ReactNativeBlobUtil/PropertySheet.props +15 -15
  80. package/windows/ReactNativeBlobUtil/ReactNativeBlobUtil.cpp +1836 -1836
  81. package/windows/ReactNativeBlobUtil/ReactNativeBlobUtil.def +3 -3
  82. package/windows/ReactNativeBlobUtil/ReactNativeBlobUtil.h +372 -372
  83. package/windows/ReactNativeBlobUtil/ReactNativeBlobUtil.vcxproj +139 -139
  84. package/windows/ReactNativeBlobUtil/ReactNativeBlobUtil.vcxproj.filters +43 -43
  85. package/windows/ReactNativeBlobUtil/ReactPackageProvider.cpp +20 -20
  86. package/windows/ReactNativeBlobUtil/ReactPackageProvider.h +24 -24
  87. package/windows/ReactNativeBlobUtil/ReactPackageProvider.idl +9 -9
  88. package/windows/ReactNativeBlobUtil/codegen/.clang-format +1 -1
  89. package/windows/ReactNativeBlobUtil/codegen/NativeBlobUtilsDataTypes.g.h +42 -42
  90. package/windows/ReactNativeBlobUtil/codegen/NativeBlobUtilsSpec.g.h +353 -353
  91. package/windows/ReactNativeBlobUtil/packages.config +3 -3
  92. package/windows/ReactNativeBlobUtil/packages.lock.json +59 -59
  93. package/windows/ReactNativeBlobUtil/pch.cpp +1 -1
  94. package/windows/ReactNativeBlobUtil/pch.h +30 -30
  95. package/windows/ReactNativeBlobUtil/resource.h +5 -5
  96. package/windows/ReactNativeBlobUtil/targetver.h +8 -8
  97. package/windows/ReactNativeBlobUtil.sln +43 -43
@@ -1,2 +1,2 @@
1
- android.enableJetifier=true
1
+ android.enableJetifier=true
2
2
  android.useAndroidX=true
@@ -1,38 +1,38 @@
1
- <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ReactNativeBlobUtil">
2
-
3
- <!-- Required to download files from Google Play -->
4
- <uses-permission android:name="android.permission.INTERNET" />
5
-
6
- <!-- Required to keep CPU alive while downloading files
7
- (NOT to keep screen awake) -->
8
- <uses-permission android:name="android.permission.WAKE_LOCK" />
9
-
10
- <!-- Required to poll the state of the network connection
11
- and respond to changes -->
12
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
13
-
14
- <!-- Required to check whether Wi-Fi is enabled -->
15
- <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
16
-
17
- <!-- Required to read and write the expansion files on shared storage -->
18
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
19
-
20
- <!-- Required to read and write the expansion files on shared storage for Android 11-->
21
- <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
22
-
23
- <!-- Required to to download files without a notification-->
24
- <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION"/>
25
-
26
- <application>
27
- <provider
28
- android:name="com.ReactNativeBlobUtil.Utils.FileProvider"
29
- android:authorities="${applicationId}.provider"
30
- android:exported="false"
31
- android:grantUriPermissions="true">
32
- <meta-data
33
- android:name="android.support.FILE_PROVIDER_PATHS"
34
- android:resource="@xml/provider_paths" />
35
- </provider>
36
- </application>
37
-
1
+ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ReactNativeBlobUtil">
2
+
3
+ <!-- Required to download files from Google Play -->
4
+ <uses-permission android:name="android.permission.INTERNET" />
5
+
6
+ <!-- Required to keep CPU alive while downloading files
7
+ (NOT to keep screen awake) -->
8
+ <uses-permission android:name="android.permission.WAKE_LOCK" />
9
+
10
+ <!-- Required to poll the state of the network connection
11
+ and respond to changes -->
12
+ <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
13
+
14
+ <!-- Required to check whether Wi-Fi is enabled -->
15
+ <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
16
+
17
+ <!-- Required to read and write the expansion files on shared storage -->
18
+ <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
19
+
20
+ <!-- Required to read and write the expansion files on shared storage for Android 11-->
21
+ <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
22
+
23
+ <!-- Required to to download files without a notification-->
24
+ <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION"/>
25
+
26
+ <application>
27
+ <provider
28
+ android:name="com.ReactNativeBlobUtil.Utils.FileProvider"
29
+ android:authorities="${applicationId}.provider"
30
+ android:exported="false"
31
+ android:grantUriPermissions="true">
32
+ <meta-data
33
+ android:name="android.support.FILE_PROVIDER_PATHS"
34
+ android:resource="@xml/provider_paths" />
35
+ </provider>
36
+ </application>
37
+
38
38
  </manifest>
@@ -1,57 +1,57 @@
1
- package com.ReactNativeBlobUtil;
2
-
3
- import com.facebook.react.bridge.ReadableArray;
4
- import com.facebook.react.bridge.ReadableMap;
5
-
6
- import java.util.Locale;
7
-
8
- class ReactNativeBlobUtilConfig {
9
-
10
- public Boolean fileCache;
11
- public Boolean transformFile;
12
- public String path;
13
- public String appendExt;
14
- public ReadableMap addAndroidDownloads;
15
- public Boolean trusty;
16
- public Boolean wifiOnly = false;
17
- public String key;
18
- public String mime;
19
- public Boolean auto;
20
- public Boolean overwrite = true;
21
- public long timeout = 60000;
22
- public Boolean increment = false;
23
- public Boolean followRedirect = true;
24
- public ReadableArray binaryContentTypes = null;
25
-
26
- ReactNativeBlobUtilConfig(ReadableMap options) {
27
- if (options == null)
28
- return;
29
- this.fileCache = options.hasKey("fileCache") && options.getBoolean("fileCache");
30
- this.transformFile = options.hasKey("transformFile") ? options.getBoolean("transformFile") : false;
31
- this.path = options.hasKey("path") ? options.getString("path") : null;
32
- this.appendExt = options.hasKey("appendExt") ? options.getString("appendExt") : "";
33
- this.trusty = options.hasKey("trusty") && options.getBoolean("trusty");
34
- this.wifiOnly = options.hasKey("wifiOnly") && options.getBoolean("wifiOnly");
35
- if (options.hasKey("addAndroidDownloads")) {
36
- this.addAndroidDownloads = options.getMap("addAndroidDownloads");
37
- }
38
- if (options.hasKey("binaryContentTypes"))
39
- this.binaryContentTypes = options.getArray("binaryContentTypes");
40
- if (this.path != null && path.toLowerCase(Locale.ROOT).contains("?append=true")) {
41
- this.overwrite = false;
42
- }
43
- if (options.hasKey("overwrite"))
44
- this.overwrite = options.getBoolean("overwrite");
45
- if (options.hasKey("followRedirect")) {
46
- this.followRedirect = options.getBoolean("followRedirect");
47
- }
48
- this.key = options.hasKey("key") ? options.getString("key") : null;
49
- this.mime = options.hasKey("contentType") ? options.getString("contentType") : null;
50
- this.increment = options.hasKey("increment") && options.getBoolean("increment");
51
- this.auto = options.hasKey("auto") && options.getBoolean("auto");
52
- if (options.hasKey("timeout")) {
53
- this.timeout = options.getInt("timeout");
54
- }
55
- }
56
-
57
- }
1
+ package com.ReactNativeBlobUtil;
2
+
3
+ import com.facebook.react.bridge.ReadableArray;
4
+ import com.facebook.react.bridge.ReadableMap;
5
+
6
+ import java.util.Locale;
7
+
8
+ class ReactNativeBlobUtilConfig {
9
+
10
+ public Boolean fileCache;
11
+ public Boolean transformFile;
12
+ public String path;
13
+ public String appendExt;
14
+ public ReadableMap addAndroidDownloads;
15
+ public Boolean trusty;
16
+ public Boolean wifiOnly = false;
17
+ public String key;
18
+ public String mime;
19
+ public Boolean auto;
20
+ public Boolean overwrite = true;
21
+ public long timeout = 60000;
22
+ public Boolean increment = false;
23
+ public Boolean followRedirect = true;
24
+ public ReadableArray binaryContentTypes = null;
25
+
26
+ ReactNativeBlobUtilConfig(ReadableMap options) {
27
+ if (options == null)
28
+ return;
29
+ this.fileCache = options.hasKey("fileCache") && options.getBoolean("fileCache");
30
+ this.transformFile = options.hasKey("transformFile") ? options.getBoolean("transformFile") : false;
31
+ this.path = options.hasKey("path") ? options.getString("path") : null;
32
+ this.appendExt = options.hasKey("appendExt") ? options.getString("appendExt") : "";
33
+ this.trusty = options.hasKey("trusty") && options.getBoolean("trusty");
34
+ this.wifiOnly = options.hasKey("wifiOnly") && options.getBoolean("wifiOnly");
35
+ if (options.hasKey("addAndroidDownloads")) {
36
+ this.addAndroidDownloads = options.getMap("addAndroidDownloads");
37
+ }
38
+ if (options.hasKey("binaryContentTypes"))
39
+ this.binaryContentTypes = options.getArray("binaryContentTypes");
40
+ if (this.path != null && path.toLowerCase(Locale.ROOT).contains("?append=true")) {
41
+ this.overwrite = false;
42
+ }
43
+ if (options.hasKey("overwrite"))
44
+ this.overwrite = options.getBoolean("overwrite");
45
+ if (options.hasKey("followRedirect")) {
46
+ this.followRedirect = options.getBoolean("followRedirect");
47
+ }
48
+ this.key = options.hasKey("key") ? options.getString("key") : null;
49
+ this.mime = options.hasKey("contentType") ? options.getString("contentType") : null;
50
+ this.increment = options.hasKey("increment") && options.getBoolean("increment");
51
+ this.auto = options.hasKey("auto") && options.getBoolean("auto");
52
+ if (options.hasKey("timeout")) {
53
+ this.timeout = options.getInt("timeout");
54
+ }
55
+ }
56
+
57
+ }
@@ -1,20 +1,20 @@
1
- package com.ReactNativeBlobUtil;
2
-
3
-
4
- public class ReactNativeBlobUtilConst {
5
- public static final String EVENT_UPLOAD_PROGRESS = "ReactNativeBlobUtilProgress-upload";
6
- public static final String EVENT_PROGRESS = "ReactNativeBlobUtilProgress";
7
- public static final String EVENT_HTTP_STATE = "ReactNativeBlobUtilState";
8
- public static final String EVENT_MESSAGE = "ReactNativeBlobUtilMessage";
9
- public static final String EVENT_FILESYSTEM = "ReactNativeBlobUtilFilesystem";
10
- public static final String FILE_PREFIX = "ReactNativeBlobUtil-file://";
11
- public static final String CONTENT_PREFIX = "ReactNativeBlobUtil-content://";
12
- public static final String FILE_PREFIX_BUNDLE_ASSET = "bundle-assets://";
13
- public static final String FILE_PREFIX_CONTENT = "content://";
14
- public static final String DATA_ENCODE_URI = "uri";
15
- public static final String RNFB_RESPONSE_BASE64 = "base64";
16
- public static final String RNFB_RESPONSE_UTF8 = "utf8";
17
- public static final String RNFB_RESPONSE_PATH = "path";
18
- public static final Integer GET_CONTENT_INTENT = 99900;
19
-
20
- }
1
+ package com.ReactNativeBlobUtil;
2
+
3
+
4
+ public class ReactNativeBlobUtilConst {
5
+ public static final String EVENT_UPLOAD_PROGRESS = "ReactNativeBlobUtilProgress-upload";
6
+ public static final String EVENT_PROGRESS = "ReactNativeBlobUtilProgress";
7
+ public static final String EVENT_HTTP_STATE = "ReactNativeBlobUtilState";
8
+ public static final String EVENT_MESSAGE = "ReactNativeBlobUtilMessage";
9
+ public static final String EVENT_FILESYSTEM = "ReactNativeBlobUtilFilesystem";
10
+ public static final String FILE_PREFIX = "ReactNativeBlobUtil-file://";
11
+ public static final String CONTENT_PREFIX = "ReactNativeBlobUtil-content://";
12
+ public static final String FILE_PREFIX_BUNDLE_ASSET = "bundle-assets://";
13
+ public static final String FILE_PREFIX_CONTENT = "content://";
14
+ public static final String DATA_ENCODE_URI = "uri";
15
+ public static final String RNFB_RESPONSE_BASE64 = "base64";
16
+ public static final String RNFB_RESPONSE_UTF8 = "utf8";
17
+ public static final String RNFB_RESPONSE_PATH = "path";
18
+ public static final Integer GET_CONTENT_INTENT = 99900;
19
+
20
+ }
@@ -1,10 +1,10 @@
1
- package com.ReactNativeBlobUtil;
2
-
3
- public class ReactNativeBlobUtilFileTransformer {
4
- public interface FileTransformer {
5
- public byte[] onWriteFile(byte[] data);
6
- public byte[] onReadFile(byte[] data);
7
- }
8
-
9
- public static ReactNativeBlobUtilFileTransformer.FileTransformer sharedFileTransformer;
1
+ package com.ReactNativeBlobUtil;
2
+
3
+ public class ReactNativeBlobUtilFileTransformer {
4
+ public interface FileTransformer {
5
+ public byte[] onWriteFile(byte[] data);
6
+ public byte[] onReadFile(byte[] data);
7
+ }
8
+
9
+ public static ReactNativeBlobUtilFileTransformer.FileTransformer sharedFileTransformer;
10
10
  }