react-native-compressor 1.18.1 → 1.19.0
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.
- package/android/src/main/java/com/reactnativecompressor/Image/ImageCompressor.kt +44 -23
- package/android/src/main/java/com/reactnativecompressor/Utils/createVideoThumbnail.kt +42 -21
- package/android/src/main/java/com/reactnativecompressor/Video/AutoVideoCompression.kt +1 -1
- package/android/src/main/java/com/reactnativecompressor/Video/VideoCompressionProfile.kt +21 -11
- package/android/src/main/java/com/reactnativecompressor/Video/VideoCompressor/compressor/Compressor.kt +369 -87
- package/android/src/main/java/com/reactnativecompressor/Video/VideoCompressor/utils/CompressorUtils.kt +24 -5
- package/android/src/main/java/com/reactnativecompressor/Video/VideoCompressor/utils/LocationExtractor.kt +397 -0
- package/android/src/main/java/com/reactnativecompressor/Video/VideoCompressor/videoHelpers/LocationBox.kt +47 -0
- package/android/src/main/java/com/reactnativecompressor/Video/VideoCompressor/videoHelpers/MP4Builder.kt +39 -7
- package/android/src/main/java/com/reactnativecompressor/Video/VideoCompressor/videoHelpers/Mp4Movie.kt +7 -0
- package/android/src/main/java/com/reactnativecompressor/Video/VideoCompressor/videoHelpers/OutputSurface.kt +30 -4
- package/android/src/main/java/com/reactnativecompressor/Video/VideoCompressorHelper.kt +24 -1
- package/ios/Image/ImageCompressor.swift +3 -2
- package/ios/Utils/CreateVideoThumbnail.swift +40 -21
- package/ios/Utils/Uploader.swift +14 -7
- package/ios/Video/VideoMain.swift +27 -11
- package/lib/commonjs/index.js +1 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/src/index.d.ts +2 -0
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/utils/index.d.ts +1 -0
- package/lib/typescript/src/utils/index.d.ts.map +1 -1
- package/package.json +7 -1
- package/src/index.tsx +1 -0
- package/src/utils/index.tsx +1 -0
|
@@ -100,6 +100,29 @@ class VideoCompressorHelper {
|
|
|
100
100
|
?: 0
|
|
101
101
|
}
|
|
102
102
|
|
|
103
|
+
/**
|
|
104
|
+
* Derive the source video frame rate. METADATA_KEY_CAPTURE_FRAMERATE
|
|
105
|
+
* is only populated for slow-motion captures, so most regular videos
|
|
106
|
+
* return 0 and downstream code falls back to a hard-coded 30 fps —
|
|
107
|
+
* which silently halves the frame count of any 60 fps source and
|
|
108
|
+
* produces visibly choppy output.
|
|
109
|
+
*
|
|
110
|
+
* Strategy: trust CAPTURE_FRAMERATE when present, otherwise compute
|
|
111
|
+
* fps from frame count / duration (API 28+ exposes the frame count
|
|
112
|
+
* via METADATA_KEY_VIDEO_FRAME_COUNT). Returns 0 if neither path
|
|
113
|
+
* yields a usable value.
|
|
114
|
+
*/
|
|
115
|
+
fun getSourceFrameRate(metaRetriever: MediaMetadataRetriever): Int {
|
|
116
|
+
val capture = getMetadataInt(metaRetriever, MediaMetadataRetriever.METADATA_KEY_CAPTURE_FRAMERATE)
|
|
117
|
+
if (capture > 0) return capture
|
|
118
|
+
|
|
119
|
+
val frameCount = getMetadataInt(metaRetriever, MediaMetadataRetriever.METADATA_KEY_VIDEO_FRAME_COUNT)
|
|
120
|
+
val durationMs = getMetadataInt(metaRetriever, MediaMetadataRetriever.METADATA_KEY_DURATION)
|
|
121
|
+
if (frameCount <= 0 || durationMs <= 0) return 0
|
|
122
|
+
val fps = (frameCount.toLong() * 1000L / durationMs.toLong()).toInt()
|
|
123
|
+
return fps.coerceIn(0, 240)
|
|
124
|
+
}
|
|
125
|
+
|
|
103
126
|
fun VideoCompressManual(fileUrl: String?, options: VideoCompressorHelper, promise: Promise, reactContext: ReactApplicationContext?) {
|
|
104
127
|
try {
|
|
105
128
|
val uri = Uri.parse(fileUrl)
|
|
@@ -110,7 +133,7 @@ class VideoCompressorHelper {
|
|
|
110
133
|
val height = getMetadataInt(metaRetriever, MediaMetadataRetriever.METADATA_KEY_VIDEO_HEIGHT)
|
|
111
134
|
val width = getMetadataInt(metaRetriever, MediaMetadataRetriever.METADATA_KEY_VIDEO_WIDTH)
|
|
112
135
|
val bitrate = getMetadataInt(metaRetriever, MediaMetadataRetriever.METADATA_KEY_BITRATE)
|
|
113
|
-
val frameRate =
|
|
136
|
+
val frameRate = getSourceFrameRate(metaRetriever)
|
|
114
137
|
if (height <= 0 || width <= 0) {
|
|
115
138
|
promise.reject(Throwable("Failed to read the input video dimensions"))
|
|
116
139
|
return
|
|
@@ -167,13 +167,14 @@ class ImageCompressor {
|
|
|
167
167
|
static func writeImage(_ image: UIImage, output: Int, quality: Float, outputExtension: String, isBase64: Bool, disablePngTransparency: Bool, isEnableAutoCompress: Bool, actualImagePath: String?)-> String {
|
|
168
168
|
var data: Data
|
|
169
169
|
var exception: NSException?
|
|
170
|
+
let normalizedQuality = CGFloat(min(max(quality, 0), 1))
|
|
170
171
|
|
|
171
172
|
switch OutputType(rawValue: output)! {
|
|
172
173
|
case .jpg:
|
|
173
|
-
data = image.jpegData(compressionQuality:
|
|
174
|
+
data = image.jpegData(compressionQuality: normalizedQuality)!
|
|
174
175
|
case .png:
|
|
175
176
|
if disablePngTransparency {
|
|
176
|
-
data = image.jpegData(compressionQuality:
|
|
177
|
+
data = image.jpegData(compressionQuality: normalizedQuality)!
|
|
177
178
|
let compressedImage = UIImage(data: data)
|
|
178
179
|
data = compressedImage!.pngData()!
|
|
179
180
|
} else {
|
|
@@ -10,6 +10,7 @@ import AVFoundation
|
|
|
10
10
|
import UIKit
|
|
11
11
|
|
|
12
12
|
class CreateVideoThumbnail: NSObject {
|
|
13
|
+
private static let defaultQuality = 0.9
|
|
13
14
|
|
|
14
15
|
func create(_ fileUrl:String, options: NSDictionary, resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
|
|
15
16
|
let headers = options["headers"] as? [String: Any] ?? [:]
|
|
@@ -49,21 +50,26 @@ class CreateVideoThumbnail: NSObject {
|
|
|
49
50
|
vidURL = URL(fileURLWithPath: fileUrl)
|
|
50
51
|
}
|
|
51
52
|
|
|
52
|
-
let
|
|
53
|
+
guard let vidURL = vidURL else {
|
|
54
|
+
reject("CreateVideoThumbnail", "Unable to create a URL from the provided video path", nil)
|
|
55
|
+
return
|
|
56
|
+
}
|
|
57
|
+
let quality = Self.normalizedQuality(options["quality"])
|
|
58
|
+
let asset = AVURLAsset(url: vidURL, options: ["AVURLAssetHTTPHeaderFieldsKey": headers])
|
|
53
59
|
generateThumbImage(asset: asset, atTime: 0, completion: { thumbnail in
|
|
54
60
|
// Generate thumbnail
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
try? data.write(to: URL(fileURLWithPath: fullPath))
|
|
59
|
-
resolve([
|
|
60
|
-
"path": fullPath,
|
|
61
|
-
"size": Float(data.count),
|
|
62
|
-
"mime": "image/\(format)",
|
|
63
|
-
"width": Float(thumbnail.size.width),
|
|
64
|
-
"height": Float(thumbnail.size.height)
|
|
65
|
-
] as [String : Any])
|
|
61
|
+
guard let data = thumbnail.jpegData(compressionQuality: quality) else {
|
|
62
|
+
reject("CreateVideoThumbnail", "Unable to encode video thumbnail", nil)
|
|
63
|
+
return
|
|
66
64
|
}
|
|
65
|
+
try? data.write(to: URL(fileURLWithPath: fullPath))
|
|
66
|
+
resolve([
|
|
67
|
+
"path": fullPath,
|
|
68
|
+
"size": Float(data.count),
|
|
69
|
+
"mime": "image/\(format)",
|
|
70
|
+
"width": Float(thumbnail.size.width),
|
|
71
|
+
"height": Float(thumbnail.size.height)
|
|
72
|
+
] as [String : Any])
|
|
67
73
|
}, failure: { error in
|
|
68
74
|
reject(error._domain, error.localizedDescription, nil)
|
|
69
75
|
})
|
|
@@ -98,20 +104,33 @@ class CreateVideoThumbnail: NSObject {
|
|
|
98
104
|
}
|
|
99
105
|
}
|
|
100
106
|
|
|
107
|
+
private static func normalizedQuality(_ value: Any?) -> CGFloat {
|
|
108
|
+
let rawValue = (value as? NSNumber)?.doubleValue ?? defaultQuality
|
|
109
|
+
return CGFloat(min(max(rawValue, 0), 1))
|
|
110
|
+
}
|
|
111
|
+
|
|
101
112
|
func generateThumbImage(asset: AVURLAsset, atTime timeStamp: Int, completion: @escaping (UIImage) -> Void, failure: @escaping (Error) -> Void) {
|
|
102
113
|
let generator = AVAssetImageGenerator(asset: asset)
|
|
103
114
|
generator.appliesPreferredTrackTransform = true
|
|
104
115
|
generator.maximumSize = CGSize(width: 512, height: 512)
|
|
105
|
-
generator.requestedTimeToleranceBefore =
|
|
106
|
-
generator.requestedTimeToleranceAfter =
|
|
107
|
-
let
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
116
|
+
generator.requestedTimeToleranceBefore = .positiveInfinity
|
|
117
|
+
generator.requestedTimeToleranceAfter = .positiveInfinity
|
|
118
|
+
let times = [
|
|
119
|
+
CMTimeMake(value: Int64(timeStamp), timescale: 1000),
|
|
120
|
+
CMTimeMake(value: 1000, timescale: 1000)
|
|
121
|
+
]
|
|
122
|
+
var lastError: Error?
|
|
123
|
+
|
|
124
|
+
for time in times {
|
|
125
|
+
do {
|
|
126
|
+
let cgImage = try generator.copyCGImage(at: time, actualTime: nil)
|
|
127
|
+
completion(UIImage(cgImage: cgImage))
|
|
128
|
+
return
|
|
129
|
+
} catch {
|
|
130
|
+
lastError = error
|
|
114
131
|
}
|
|
115
132
|
}
|
|
133
|
+
|
|
134
|
+
failure(lastError ?? NSError(domain: "CreateVideoThumbnail", code: -1, userInfo: [NSLocalizedDescriptionKey: "Unable to create thumbnail"]))
|
|
116
135
|
}
|
|
117
136
|
}
|
package/ios/Utils/Uploader.swift
CHANGED
|
@@ -26,7 +26,7 @@ struct UploadError: Error {
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
class Uploader
|
|
29
|
+
class Uploader: NSObject, URLSessionDataDelegate, URLSessionTaskDelegate {
|
|
30
30
|
var uploadResolvers: [String: RCTPromiseResolveBlock] = [:]
|
|
31
31
|
var uploadRejectors: [String: RCTPromiseRejectBlock] = [:]
|
|
32
32
|
var currentTask: URLSessionDataTask?
|
|
@@ -124,11 +124,11 @@ class Uploader : NSObject, URLSessionTaskDelegate{
|
|
|
124
124
|
guard let uuid = session.configuration.identifier else {return}
|
|
125
125
|
guard let reject = uploadRejectors[uuid] else{return}
|
|
126
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}
|
|
129
127
|
guard error == nil else {
|
|
130
128
|
reject("failed", "Upload Failed", error)
|
|
131
129
|
uploadRejectors[uuid] = nil
|
|
130
|
+
uploadResolvers[uuid] = nil
|
|
131
|
+
self.storage[task.taskIdentifier] = nil
|
|
132
132
|
return;
|
|
133
133
|
}
|
|
134
134
|
|
|
@@ -136,19 +136,26 @@ class Uploader : NSObject, URLSessionTaskDelegate{
|
|
|
136
136
|
let uploadError = UploadError(message: "Response is not defined")
|
|
137
137
|
reject("failed", "Upload Failed", uploadError)
|
|
138
138
|
uploadRejectors[uuid] = nil
|
|
139
|
+
uploadResolvers[uuid] = nil
|
|
140
|
+
self.storage[task.taskIdentifier] = nil
|
|
139
141
|
return;
|
|
140
142
|
}
|
|
141
143
|
|
|
142
|
-
let
|
|
143
|
-
|
|
144
|
+
let data = self.storage[task.taskIdentifier] ?? Data()
|
|
145
|
+
let body = String(data: data, encoding: .utf8) ?? ""
|
|
146
|
+
let result: [String : Any] = ["status": response.statusCode, "headers": response.allHeaderFields, "body": body]
|
|
147
|
+
|
|
144
148
|
resolve(result)
|
|
145
149
|
uploadResolvers[uuid] = nil
|
|
150
|
+
uploadRejectors[uuid] = nil
|
|
146
151
|
self.storage[task.taskIdentifier] = nil
|
|
147
152
|
}
|
|
148
|
-
|
|
153
|
+
|
|
149
154
|
|
|
150
155
|
public func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) {
|
|
151
|
-
self.storage[dataTask.taskIdentifier]
|
|
156
|
+
var responseData = self.storage[dataTask.taskIdentifier] ?? Data()
|
|
157
|
+
responseData.append(data)
|
|
158
|
+
self.storage[dataTask.taskIdentifier] = responseData
|
|
152
159
|
}
|
|
153
160
|
|
|
154
161
|
func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64)
|
|
@@ -164,7 +164,9 @@ class VideoCompressor {
|
|
|
164
164
|
return 30
|
|
165
165
|
}
|
|
166
166
|
|
|
167
|
-
|
|
167
|
+
// Cap at 60 fps. 30 fps cap silently halved 60 fps recordings and
|
|
168
|
+
// produced visibly choppy output.
|
|
169
|
+
return min(max(nominalFrameRate, 1), 60)
|
|
168
170
|
}
|
|
169
171
|
|
|
170
172
|
func scaledDimensions(width: CGFloat, height: CGFloat, maxSize: CGFloat) -> (width: Int, height: Int) {
|
|
@@ -193,26 +195,32 @@ class VideoCompressor {
|
|
|
193
195
|
targetHeight: Int,
|
|
194
196
|
targetFrameRate: Int
|
|
195
197
|
) -> Int {
|
|
198
|
+
// WhatsApp-style bitrate envelope. The previous floors/ceilings were
|
|
199
|
+
// ~2-3x larger and produced "compressed" outputs that were still
|
|
200
|
+
// 20-40 MB for short clips. These bands target ~1.5 Mbps at 720p,
|
|
201
|
+
// matching WhatsApp's typical output size while keeping visual
|
|
202
|
+
// quality acceptable for chat playback. Must stay in sync with
|
|
203
|
+
// VideoCompressionProfile.kt on Android.
|
|
196
204
|
let targetLongSide = max(targetWidth, targetHeight)
|
|
197
205
|
let floor: Int
|
|
198
206
|
let ceiling: Int
|
|
199
207
|
|
|
200
208
|
switch targetLongSide {
|
|
201
209
|
case 1920...:
|
|
202
|
-
floor =
|
|
203
|
-
ceiling =
|
|
210
|
+
floor = 2_000_000
|
|
211
|
+
ceiling = 3_500_000
|
|
204
212
|
case 1280...1919:
|
|
205
|
-
floor =
|
|
206
|
-
ceiling =
|
|
213
|
+
floor = 1_200_000
|
|
214
|
+
ceiling = 2_000_000
|
|
207
215
|
case 960...1279:
|
|
208
|
-
floor =
|
|
209
|
-
ceiling =
|
|
216
|
+
floor = 900_000
|
|
217
|
+
ceiling = 1_500_000
|
|
210
218
|
case 720...959:
|
|
211
|
-
floor =
|
|
212
|
-
ceiling =
|
|
219
|
+
floor = 700_000
|
|
220
|
+
ceiling = 1_200_000
|
|
213
221
|
default:
|
|
214
|
-
floor =
|
|
215
|
-
ceiling =
|
|
222
|
+
floor = 500_000
|
|
223
|
+
ceiling = 900_000
|
|
216
224
|
}
|
|
217
225
|
|
|
218
226
|
guard originalBitrate > 0 else {
|
|
@@ -336,6 +344,14 @@ class VideoCompressor {
|
|
|
336
344
|
]
|
|
337
345
|
}
|
|
338
346
|
|
|
347
|
+
// Preserve source metadata (location, creation date, etc.) by forwarding
|
|
348
|
+
// every available metadata format to the writer.
|
|
349
|
+
var preservedMetadata: [AVMetadataItem] = asset.metadata
|
|
350
|
+
for format in asset.availableMetadataFormats {
|
|
351
|
+
preservedMetadata.append(contentsOf: asset.metadata(forFormat: format))
|
|
352
|
+
}
|
|
353
|
+
exporter.metadata = preservedMetadata
|
|
354
|
+
|
|
339
355
|
compressorExports[uuid] = exporter
|
|
340
356
|
exporter.export(progressHandler: { (progress) in
|
|
341
357
|
let roundProgress:Int=Int((progress*100).rounded());
|
package/lib/commonjs/index.js
CHANGED
|
@@ -123,6 +123,7 @@ var _default = exports.default = {
|
|
|
123
123
|
getImageMetaData: _utils.getImageMetaData,
|
|
124
124
|
getFileSize: _utils.getFileSize,
|
|
125
125
|
backgroundUpload: _utils.backgroundUpload,
|
|
126
|
+
cancelUpload: _utils.cancelUpload,
|
|
126
127
|
createVideoThumbnail: _utils.createVideoThumbnail,
|
|
127
128
|
clearCache: _utils.clearCache,
|
|
128
129
|
download: _utils.download,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Video","_interopRequireDefault","require","_Audio","_Image","_utils","e","__esModule","default","_default","exports","Video","Audio","Image","getDetails","uuidv4","generateFilePath","getRealPath","getVideoMetaData","getImageMetaData","getFileSize","backgroundUpload","createVideoThumbnail","clearCache","download","UploadType","UploaderHttpMethod"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAeiB,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAuBF;EACbG,KAAK,EAALA,cAAK;EACLC,KAAK,EAALA,cAAK;EACLC,KAAK,EAALA,cAAK;EACLC,UAAU,EAAVA,iBAAU;EACVC,MAAM,EAANA,aAAM;EACNC,gBAAgB,EAAhBA,uBAAgB;EAChBC,WAAW,EAAXA,kBAAW;EACXC,gBAAgB,EAAhBA,uBAAgB;EAChBC,gBAAgB,EAAhBA,uBAAgB;EAChBC,WAAW,EAAXA,kBAAW;EACXC,gBAAgB,EAAhBA,uBAAgB;EAChBC,oBAAoB,EAApBA,2BAAoB;EACpBC,UAAU,EAAVA,iBAAU;EACVC,QAAQ,EAARA,eAAQ;EACRC,UAAU,EAAVA,iBAAU;EACVC,kBAAkB,EAAlBA;AACF,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_Video","_interopRequireDefault","require","_Audio","_Image","_utils","e","__esModule","default","_default","exports","Video","Audio","Image","getDetails","uuidv4","generateFilePath","getRealPath","getVideoMetaData","getImageMetaData","getFileSize","backgroundUpload","cancelUpload","createVideoThumbnail","clearCache","download","UploadType","UploaderHttpMethod"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAeiB,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAuBF;EACbG,KAAK,EAALA,cAAK;EACLC,KAAK,EAALA,cAAK;EACLC,KAAK,EAALA,cAAK;EACLC,UAAU,EAAVA,iBAAU;EACVC,MAAM,EAANA,aAAM;EACNC,gBAAgB,EAAhBA,uBAAgB;EAChBC,WAAW,EAAXA,kBAAW;EACXC,gBAAgB,EAAhBA,uBAAgB;EAChBC,gBAAgB,EAAhBA,uBAAgB;EAChBC,WAAW,EAAXA,kBAAW;EACXC,gBAAgB,EAAhBA,uBAAgB;EAChBC,YAAY,EAAZA,mBAAY;EACZC,oBAAoB,EAApBA,2BAAoB;EACpBC,UAAU,EAAVA,iBAAU;EACVC,QAAQ,EAARA,eAAQ;EACRC,UAAU,EAAVA,iBAAU;EACVC,kBAAkB,EAAlBA;AACF,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Main","require","_reactNative","_Downloader","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_Uploader","_helpers","INCORRECT_INPUT_PATH","DEFAULT_COMPRESS_AUDIO_OPTIONS","quality","generateFilePath","extension","Promise","resolve","reject","Compressor","then","result","catch","error","getRealPath","path","type","getVideoMetaData","unifyMetaData","exifResult","output","isIos","Platform","OS","ImageWidth","PixelWidth","parseInt","ImageHeight","PixelHeight","ImageLength","Orientation","size","exif","getImageMetaData","createVideoThumbnail","fileUrl","options","clearCache","cacheDir","isValidUrl","url","test","getFullFilename","_path","includes","length","substring","array","split","isFileNameError","filename","getFilename","fullFilename","slice","join","isRemoteMedia","getDetails","mediaFullPath","extesnion","Error","mediaInfo","JSON","parse","mediaInformation","bitrate","getMediaProperties","bit_rate","Number","format","e","getFileSize","filePath"],"sourceRoot":"../../../src","sources":["utils/index.tsx"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;
|
|
1
|
+
{"version":3,"names":["_Main","require","_reactNative","_Downloader","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_Uploader","_helpers","INCORRECT_INPUT_PATH","DEFAULT_COMPRESS_AUDIO_OPTIONS","quality","generateFilePath","extension","Promise","resolve","reject","Compressor","then","result","catch","error","getRealPath","path","type","getVideoMetaData","unifyMetaData","exifResult","output","isIos","Platform","OS","ImageWidth","PixelWidth","parseInt","ImageHeight","PixelHeight","ImageLength","Orientation","size","exif","getImageMetaData","createVideoThumbnail","fileUrl","options","clearCache","cacheDir","isValidUrl","url","test","getFullFilename","_path","includes","length","substring","array","split","isFileNameError","filename","getFilename","fullFilename","slice","join","isRemoteMedia","getDetails","mediaFullPath","extesnion","Error","mediaInfo","JSON","parse","mediaInformation","bitrate","getMediaProperties","bit_rate","Number","format","e","getFileSize","filePath"],"sourceRoot":"../../../src","sources":["utils/index.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Video","Audio","Image","getDetails","uuidv4","generateFilePath","getRealPath","getVideoMetaData","getImageMetaData","getFileSize","backgroundUpload","cancelUpload","createVideoThumbnail","download","clearCache","UploadType","UploaderHttpMethod"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,SAAS;AAE3B,OAAOC,KAAK,MAAM,SAAS;AAC3B,OAAOC,KAAK,MAAM,SAAS;AAC3B,SACEC,UAAU,EACVC,MAAM,EACNC,gBAAgB,EAChBC,WAAW,EACXC,gBAAgB,EAChBC,gBAAgB,EAChBC,WAAW,EACXC,gBAAgB,EAChBC,YAAY,EACZC,oBAAoB,EACpBC,QAAQ,EACRC,UAAU,EACVC,UAAU,EACVC,kBAAkB,QACb,SAAS;AAEhB,SACEhB,KAAK,EACLC,KAAK,EACLC,KAAK,EACLQ,gBAAgB,EAChBC,YAAY,EACZE,QAAQ;AACR;AACAV,UAAU,EACVC,MAAM,EACNC,gBAAgB,EAChBC,WAAW,EACXC,gBAAgB,EAChBC,gBAAgB,EAChBI,oBAAoB,EACpBE,UAAU,EACVL,WAAW,EACXM,UAAU,EACVC,kBAAkB;AAGpB,eAAe;EACbhB,KAAK;EACLC,KAAK;EACLC,KAAK;EACLC,UAAU;EACVC,MAAM;EACNC,gBAAgB;EAChBC,WAAW;EACXC,gBAAgB;EAChBC,gBAAgB;EAChBC,WAAW;EACXC,gBAAgB;
|
|
1
|
+
{"version":3,"names":["Video","Audio","Image","getDetails","uuidv4","generateFilePath","getRealPath","getVideoMetaData","getImageMetaData","getFileSize","backgroundUpload","cancelUpload","createVideoThumbnail","download","clearCache","UploadType","UploaderHttpMethod"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,SAAS;AAE3B,OAAOC,KAAK,MAAM,SAAS;AAC3B,OAAOC,KAAK,MAAM,SAAS;AAC3B,SACEC,UAAU,EACVC,MAAM,EACNC,gBAAgB,EAChBC,WAAW,EACXC,gBAAgB,EAChBC,gBAAgB,EAChBC,WAAW,EACXC,gBAAgB,EAChBC,YAAY,EACZC,oBAAoB,EACpBC,QAAQ,EACRC,UAAU,EACVC,UAAU,EACVC,kBAAkB,QACb,SAAS;AAEhB,SACEhB,KAAK,EACLC,KAAK,EACLC,KAAK,EACLQ,gBAAgB,EAChBC,YAAY,EACZE,QAAQ;AACR;AACAV,UAAU,EACVC,MAAM,EACNC,gBAAgB,EAChBC,WAAW,EACXC,gBAAgB,EAChBC,gBAAgB,EAChBI,oBAAoB,EACpBE,UAAU,EACVL,WAAW,EACXM,UAAU,EACVC,kBAAkB;AAGpB,eAAe;EACbhB,KAAK;EACLC,KAAK;EACLC,KAAK;EACLC,UAAU;EACVC,MAAM;EACNC,gBAAgB;EAChBC,WAAW;EACXC,gBAAgB;EAChBC,gBAAgB;EAChBC,WAAW;EACXC,gBAAgB;EAChBC,YAAY;EACZC,oBAAoB;EACpBE,UAAU;EACVD,QAAQ;EACRE,UAAU;EACVC;AACF,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Compressor","Platform","INCORRECT_INPUT_PATH","DEFAULT_COMPRESS_AUDIO_OPTIONS","quality","generateFilePath","extension","Promise","resolve","reject","then","result","catch","error","getRealPath","path","type","getVideoMetaData","unifyMetaData","exifResult","output","isIos","OS","ImageWidth","PixelWidth","parseInt","ImageHeight","PixelHeight","ImageLength","Orientation","size","exif","getImageMetaData","createVideoThumbnail","fileUrl","options","clearCache","cacheDir","isValidUrl","url","test","getFullFilename","_path","includes","length","substring","array","split","isFileNameError","filename","getFilename","fullFilename","slice","join","isRemoteMedia","getDetails","mediaFullPath","extesnion","Error","mediaInfo","JSON","parse","mediaInformation","bitrate","getMediaProperties","bit_rate","Number","format","e","getFileSize","filePath"],"sourceRoot":"../../../src","sources":["utils/index.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,SAAS;AACpC,SAASC,QAAQ,QAAQ,cAAc;AAEvC,MAAMC,oBAAoB,GAAG,kDAAkD;AAe/E,OAAO,MAAMC,8BAAqD,GAAG;EACnE;EACAC,OAAO,EAAE;AACX,CAAC;
|
|
1
|
+
{"version":3,"names":["Compressor","Platform","INCORRECT_INPUT_PATH","DEFAULT_COMPRESS_AUDIO_OPTIONS","quality","generateFilePath","extension","Promise","resolve","reject","then","result","catch","error","getRealPath","path","type","getVideoMetaData","unifyMetaData","exifResult","output","isIos","OS","ImageWidth","PixelWidth","parseInt","ImageHeight","PixelHeight","ImageLength","Orientation","size","exif","getImageMetaData","createVideoThumbnail","fileUrl","options","clearCache","cacheDir","isValidUrl","url","test","getFullFilename","_path","includes","length","substring","array","split","isFileNameError","filename","getFilename","fullFilename","slice","join","isRemoteMedia","getDetails","mediaFullPath","extesnion","Error","mediaInfo","JSON","parse","mediaInformation","bitrate","getMediaProperties","bit_rate","Number","format","e","getFileSize","filePath"],"sourceRoot":"../../../src","sources":["utils/index.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,SAAS;AACpC,SAASC,QAAQ,QAAQ,cAAc;AAEvC,MAAMC,oBAAoB,GAAG,kDAAkD;AAe/E,OAAO,MAAMC,8BAAqD,GAAG;EACnE;EACAC,OAAO,EAAE;AACX,CAAC;AAwCD,OAAO,MAAMC,gBAAqB,GAAIC,SAAiB,IAAK;EAC1D,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtCT,UAAU,CAACK,gBAAgB,CAACC,SAAS,CAAC,CACnCI,IAAI,CAAEC,MAAW,IAAKH,OAAO,CAAC,SAAS,GAAGG,MAAM,CAAC,CAAC,CAClDC,KAAK,CAAEC,KAAU,IAAKJ,MAAM,CAACI,KAAK,CAAC,CAAC;EACzC,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAMC,WAA4B,GAAGA,CAACC,IAAI,EAAEC,IAAI,GAAG,OAAO,KAAK;EACpE,OAAOhB,UAAU,CAACc,WAAW,CAACC,IAAI,EAAEC,IAAI,CAAC;AAC3C,CAAC;AAED,OAAO,MAAMC,gBAAsC,GAAIF,IAAY,IAAK;EACtE,OAAOf,UAAU,CAACiB,gBAAgB,CAACF,IAAI,CAAC;AAC1C,CAAC;AAED,MAAMG,aAAa,GAAIC,UAAe,IAAK;EACzC,MAAMC,MAAW,GAAG,CAAC,CAAC;EACtB,MAAMC,KAAK,GAAGpB,QAAQ,CAACqB,EAAE,KAAK,KAAK;EACnCF,MAAM,CAACG,UAAU,GAAGF,KAAK,GAAGF,UAAU,EAAEK,UAAU,GAAGC,QAAQ,CAACN,UAAU,CAACI,UAAU,CAAC;EAEpFH,MAAM,CAACM,WAAW,GAAGL,KAAK,GAAGF,UAAU,EAAEQ,WAAW,GAAGF,QAAQ,CAACN,UAAU,CAACS,WAAW,CAAC;EAEvFR,MAAM,CAACS,WAAW,GAAGR,KAAK,GAAGF,UAAU,CAACU,WAAW,GAAGJ,QAAQ,CAACN,UAAU,CAACU,WAAW,CAAC;EAEtFT,MAAM,CAACU,IAAI,GAAGX,UAAU,CAACW,IAAI;EAC7BV,MAAM,CAACd,SAAS,GAAGa,UAAU,CAACb,SAAS;EACvCc,MAAM,CAACW,IAAI,GAAGZ,UAAU;EACxB,OAAOC,MAAM;AACf,CAAC;AAED,OAAO,MAAMY,gBAAsC,GAAG,MAAOjB,IAAY,IAAK;EAC5E,MAAMJ,MAAM,GAAG,MAAMX,UAAU,CAACgC,gBAAgB,CAACjB,IAAI,CAAC;EACtD,OAAOG,aAAa,CAACP,MAAM,CAAC;AAC9B,CAAC;AAED,OAAO,MAAMsB,oBAA8C,GAAGA,CAACC,OAAO,EAAEC,OAAO,GAAG,CAAC,CAAC,KAAK;EACvF,OAAOnC,UAAU,CAACiC,oBAAoB,CAACC,OAAO,EAAEC,OAAO,CAAC;AAC1D,CAAC;AAED,OAAO,MAAMC,UAA0B,GAAIC,QAAiB,IAAK;EAC/D,OAAOrC,UAAU,CAACoC,UAAU,CAACC,QAAQ,CAAC;AACxC,CAAC;AAED,MAAMC,UAAU,GAAIC,GAAW,IAAK,uDAAuD,CAACC,IAAI,CAACD,GAAG,CAAC;AAErG,MAAME,eAAe,GAAI1B,IAAmB,IAAK;EAC/C,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IAC5B,IAAI2B,KAAK,GAAG3B,IAAI;;IAEhB;IACA,IAAIA,IAAI,CAAC4B,QAAQ,CAAC,MAAM,CAAC,IAAI,CAACL,UAAU,CAACvB,IAAI,CAAC,EAAE;MAC9C,OAAOb,oBAAoB;IAC7B;;IAEA;IACA,IAAIwC,KAAK,CAACA,KAAK,CAACE,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAEF,KAAK,GAAGA,KAAK,CAACG,SAAS,CAAC,CAAC,EAAE9B,IAAI,CAAC6B,MAAM,GAAG,CAAC,CAAC;IAEhF,MAAME,KAAK,GAAGJ,KAAK,CAACK,KAAK,CAAC,GAAG,CAAC;IAC9B,OAAOD,KAAK,CAACF,MAAM,GAAG,CAAC,GAAGE,KAAK,CAACA,KAAK,CAACF,MAAM,GAAG,CAAC,CAAC,GAAG1C,oBAAoB;EAC1E;EACA,OAAOA,oBAAoB;AAC7B,CAAC;AAED,MAAM8C,eAAe,GAAIC,QAAgB,IAAK;EAC5C,OAAOA,QAAQ,KAAK/C,oBAAoB;AAC1C,CAAC;AAED,MAAMgD,WAAW,GAAInC,IAAmB,IAAK;EAC3C,MAAMoC,YAAgC,GAAGV,eAAe,CAAC1B,IAAI,CAAC;EAC9D,IAAIoC,YAAY,IAAI,CAACH,eAAe,CAACG,YAAY,CAAC,EAAE;IAClD,MAAML,KAAK,GAAGK,YAAY,CAACJ,KAAK,CAAC,GAAG,CAAC;IACrC,OAAOD,KAAK,CAACF,MAAM,GAAG,CAAC,GAAGE,KAAK,CAACM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,EAAE,CAAC,GAAGP,KAAK,CAACO,IAAI,CAAC,EAAE,CAAC;EACxE;EACA,OAAOF,YAAY;AACrB,CAAC;AAED,MAAMG,aAAa,GAAIvC,IAAmB,IAAK;EAC7C,OAAO,OAAOA,IAAI,KAAK,QAAQ,GAAGA,IAAI,EAAEgC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAEJ,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI;AACnF,CAAC;AAED,OAAO,MAAMY,UAAU,GAAGA,CAACC,aAAqB,EAAEC,SAAwB,GAAG,KAAK,KAA0B;EAC1G,OAAO,IAAIlD,OAAO,CAAC,OAAOC,OAAO,EAAEC,MAAM,KAAK;IAC5C,IAAI;MACF;MACA,MAAME,MAAW,GAAG,CAAC,CAAC;MACtB,IAAIA,MAAM,KAAK,CAAC,EAAE;QAChB,MAAM,IAAI+C,KAAK,CAAC,2BAA2B,CAAC;MAC9C;;MAEA;MACA;MACA,IAAIC,SAAc,GAAG,MAAM,CAAC,CAAC;MAC7BA,SAAS,GAAGC,IAAI,CAACC,KAAK,CAACF,SAAS,CAAC;;MAEjC;MACA,MAAMG,gBAAqB,GAAG,MAAM,CAAC,CAAC;;MAEtC;MACAA,gBAAgB,CAACb,QAAQ,GAAGC,WAAW,CAACM,aAAa,CAAC;MACtDM,gBAAgB,CAACC,OAAO,GAAGD,gBAAgB,CAACE,kBAAkB,CAAC,CAAC,CAACC,QAAQ;MACzEH,gBAAgB,CAACxD,SAAS,GAAGmD,SAAS;MACtCK,gBAAgB,CAACR,aAAa,GAAGA,aAAa,CAACE,aAAa,CAAC;MAC7DM,gBAAgB,CAAChC,IAAI,GAAGoC,MAAM,CAACP,SAAS,CAACQ,MAAM,CAACrC,IAAI,CAAC;MAErDtB,OAAO,CAACsD,gBAAgB,CAAC;IAC3B,CAAC,CAAC,OAAOM,CAAC,EAAE;MACV3D,MAAM,CAAC2D,CAAC,CAAC;IACX;EACF,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAMC,WAAW,GAAG,MAAOC,QAAgB,IAAsB;EACtE,OAAOtE,UAAU,CAACqE,WAAW,CAACC,QAAQ,CAAC;AACzC,CAAC;AAED,cAAc,cAAc;AAC5B,cAAc,YAAY;AAC1B,cAAc,WAAW","ignoreList":[]}
|
|
@@ -34,10 +34,12 @@ declare const _default: {
|
|
|
34
34
|
}>;
|
|
35
35
|
getFileSize: (filePath: string) => Promise<string>;
|
|
36
36
|
backgroundUpload: (url: string, fileUrl: string, options: import("./utils").UploaderOptions, onProgress?: (writtem: number, total: number) => void, abortSignal?: AbortSignal) => Promise<any>;
|
|
37
|
+
cancelUpload: (uuid?: string, shouldCancelAll?: boolean) => void;
|
|
37
38
|
createVideoThumbnail: (fileUrl: string, options?: {
|
|
38
39
|
headers?: {
|
|
39
40
|
[key: string]: string;
|
|
40
41
|
};
|
|
42
|
+
quality?: number;
|
|
41
43
|
}) => Promise<{
|
|
42
44
|
path: string;
|
|
43
45
|
size: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EACL,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,UAAU,EACV,UAAU,EACV,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EAER,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,UAAU,EACV,kBAAkB,GACnB,CAAC;AACF,YAAY,EAAE,mBAAmB,EAAE,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EACL,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,UAAU,EACV,UAAU,EACV,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EAER,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,UAAU,EACV,kBAAkB,GACnB,CAAC;AACF,YAAY,EAAE,mBAAmB,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAMhC,CAAC;;;eAGH,CAAD;;;;;;;;;;;;;AARD,wBAkBE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.tsx"],"names":[],"mappings":"AAEA,KAAK,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAG7C,KAAK,qBAAqB,GAAG;IAE3B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,qBAG5C,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3E,CAAC;AAEF,KAAK,wBAAwB,GAAG,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.tsx"],"names":[],"mappings":"AAEA,KAAK,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAG7C,KAAK,qBAAqB,GAAG;IAE3B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,qBAG5C,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3E,CAAC;AAEF,KAAK,wBAAwB,GAAG,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,KACE,OAAO,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAEH,KAAK,cAAc,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAE7D,KAAK,oBAAoB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACjC,CAAC,CAAC;AAEH,KAAK,oBAAoB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AACH,KAAK,eAAe,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAElF,eAAO,MAAM,gBAAgB,EAAE,GAM9B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,eAEzB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,oBAE9B,CAAC;AAiBF,eAAO,MAAM,gBAAgB,EAAE,oBAG9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,wBAElC,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,cAExB,CAAC;AAuCF,eAAO,MAAM,UAAU,GAAI,eAAe,MAAM,EAAE,YAAW,KAAK,GAAG,KAAa,KAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CA6BtG,CAAC;AAEF,eAAO,MAAM,WAAW,GAAU,UAAU,MAAM,KAAG,OAAO,CAAC,MAAM,CAElE,CAAC;AAEF,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-compressor",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.19.0",
|
|
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",
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
],
|
|
30
30
|
"scripts": {
|
|
31
31
|
"test": "jest",
|
|
32
|
+
"test:pr": "yarn test --runInBand && yarn typecheck && yarn lint",
|
|
33
|
+
"test:harness:android": "cd examples/bare && react-native-harness --config ./jest.harness.config.mjs --harnessRunner android --verbose",
|
|
34
|
+
"test:harness:ios": "cd examples/bare && react-native-harness --config ./jest.harness.config.mjs --harnessRunner ios --verbose",
|
|
32
35
|
"typecheck": "tsc --noEmit",
|
|
33
36
|
"lint": "eslint \"**/*.{js,ts,tsx}\"",
|
|
34
37
|
"prepack": "bob build",
|
|
@@ -88,6 +91,8 @@
|
|
|
88
91
|
"@eslint/js": "^10.0.1",
|
|
89
92
|
"@expo/config-plugins": "^55.0.8",
|
|
90
93
|
"@jest/globals": "^30.0.0",
|
|
94
|
+
"@react-native-harness/platform-android": "1.1.0",
|
|
95
|
+
"@react-native-harness/platform-apple": "1.1.0",
|
|
91
96
|
"@react-native/babel-preset": "0.85.0",
|
|
92
97
|
"@react-native/eslint-config": "0.85.0",
|
|
93
98
|
"@react-native/jest-preset": "0.85.0",
|
|
@@ -105,6 +110,7 @@
|
|
|
105
110
|
"react": "19.2.3",
|
|
106
111
|
"react-native": "0.85.0",
|
|
107
112
|
"react-native-builder-bob": "^0.41.0",
|
|
113
|
+
"react-native-harness": "1.1.0",
|
|
108
114
|
"release-it": "^19.2.4",
|
|
109
115
|
"turbo": "^2.8.21",
|
|
110
116
|
"typescript": "^6.0.2"
|
package/src/index.tsx
CHANGED