react-native-compressor 1.16.1 → 1.16.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.
@@ -30,6 +30,7 @@ class Uploader : NSObject, URLSessionTaskDelegate{
30
30
  var uploadResolvers: [String: RCTPromiseResolveBlock] = [:]
31
31
  var uploadRejectors: [String: RCTPromiseRejectBlock] = [:]
32
32
  var currentTask: URLSessionDataTask?
33
+ var storage:[Int:Data] = [:]
33
34
  private lazy var taskManager = UrlTaskManager()
34
35
 
35
36
  func upload(filePath: String, options: [String: Any], resolve:@escaping RCTPromiseResolveBlock, reject:@escaping RCTPromiseRejectBlock) -> Void {
@@ -123,6 +124,8 @@ class Uploader : NSObject, URLSessionTaskDelegate{
123
124
  guard let uuid = session.configuration.identifier else {return}
124
125
  guard let reject = uploadRejectors[uuid] else{return}
125
126
  guard let resolve = uploadResolvers[uuid] else{return}
127
+ guard let data = self.storage[task.taskIdentifier],
128
+ let json = try? JSONSerialization.jsonObject(with: data, options: []) as? [String: Any] else {return}
126
129
  guard error == nil else {
127
130
  reject("failed", "Upload Failed", error)
128
131
  uploadRejectors[uuid] = nil
@@ -136,12 +139,18 @@ class Uploader : NSObject, URLSessionTaskDelegate{
136
139
  return;
137
140
  }
138
141
 
139
- let result: [String : Any] = ["status": response.statusCode, "headers": response.allHeaderFields, "body": ""]
142
+ let result: [String : Any] = ["status": response.statusCode, "headers": response.allHeaderFields, "body": json]
140
143
 
141
144
  resolve(result)
142
145
  uploadResolvers[uuid] = nil
146
+ self.storage[task.taskIdentifier] = nil
143
147
  }
144
148
 
149
+
150
+ public func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) {
151
+ self.storage[dataTask.taskIdentifier] = data
152
+ }
153
+
145
154
  func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64)
146
155
  {
147
156
  guard let uuid = session.configuration.identifier else {return}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-compressor",
3
- "version": "1.16.1",
3
+ "version": "1.16.2",
4
4
  "description": "Compress Image, Video, and Audio same like Whatsapp & Auto/Manual Compression | Background Upload | Download File | Create Video Thumbnail",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",