react-native-compressor 1.8.14 → 1.8.16
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 +28 -3
- package/android/src/main/java/com/reactnativecompressor/Utils/Utils.kt +164 -20
- package/android/src/main/java/com/reactnativecompressor/Video/VideoMain.kt +6 -6
- package/ios/Image/ImageCompressor.swift +36 -2
- package/ios/Video/VideoMain.swift +8 -6
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/index.d.ts +7 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/utils/index.d.ts +7 -1
- package/lib/typescript/utils/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/utils/index.tsx +7 -1
|
@@ -11,6 +11,7 @@ import android.net.Uri
|
|
|
11
11
|
import android.util.Base64
|
|
12
12
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
13
13
|
import com.reactnativecompressor.Utils.MediaCache
|
|
14
|
+
import com.reactnativecompressor.Utils.Utils.exifAttributes
|
|
14
15
|
import com.reactnativecompressor.Utils.Utils.generateCacheFilePath
|
|
15
16
|
import com.reactnativecompressor.Utils.Utils.slashifyFilePath
|
|
16
17
|
import java.io.ByteArrayOutputStream
|
|
@@ -55,7 +56,28 @@ object ImageCompressor {
|
|
|
55
56
|
return BitmapFactory.decodeFile(filePath)
|
|
56
57
|
}
|
|
57
58
|
|
|
58
|
-
fun
|
|
59
|
+
fun copyExifInfo(imagePath:String, outputUri:String){
|
|
60
|
+
try {
|
|
61
|
+
// for copy exif info
|
|
62
|
+
val sourceExif = ExifInterface(imagePath)
|
|
63
|
+
val compressedExif = ExifInterface(outputUri)
|
|
64
|
+
for (tag in exifAttributes) {
|
|
65
|
+
val compressedValue = compressedExif.getAttribute(tag)
|
|
66
|
+
if(compressedValue==null)
|
|
67
|
+
{
|
|
68
|
+
val sourceValue = sourceExif.getAttribute(tag)
|
|
69
|
+
if (sourceValue != null) {
|
|
70
|
+
compressedExif.setAttribute(tag, sourceValue)
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
compressedExif.saveAttributes()
|
|
75
|
+
} catch (e: Exception) {
|
|
76
|
+
e.printStackTrace()
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
fun encodeImage(imageDataByteArrayOutputStream: ByteArrayOutputStream, isBase64: Boolean, outputExtension: String?,imagePath: String?, reactContext: ReactApplicationContext?): String? {
|
|
59
81
|
if (isBase64) {
|
|
60
82
|
val imageData = imageDataByteArrayOutputStream.toByteArray()
|
|
61
83
|
return Base64.encodeToString(imageData, Base64.DEFAULT)
|
|
@@ -64,6 +86,9 @@ object ImageCompressor {
|
|
|
64
86
|
try {
|
|
65
87
|
val fos = FileOutputStream(outputUri)
|
|
66
88
|
imageDataByteArrayOutputStream.writeTo(fos)
|
|
89
|
+
|
|
90
|
+
copyExifInfo(imagePath!!, outputUri)
|
|
91
|
+
|
|
67
92
|
return getRNFileUrl(outputUri)
|
|
68
93
|
} catch (e: Exception) {
|
|
69
94
|
e.printStackTrace()
|
|
@@ -112,7 +137,7 @@ object ImageCompressor {
|
|
|
112
137
|
val resizedImage = resize(image, options.maxWidth, options.maxHeight)
|
|
113
138
|
val imageDataByteArrayOutputStream = compress(resizedImage, options.output, options.quality,options.disablePngTransparency)
|
|
114
139
|
val isBase64 = options.returnableOutputType === ImageCompressorOptions.ReturnableOutputType.base64
|
|
115
|
-
return encodeImage(imageDataByteArrayOutputStream, isBase64, options.output.toString(), reactContext)
|
|
140
|
+
return encodeImage(imageDataByteArrayOutputStream, isBase64, options.output.toString(),imagePath, reactContext)
|
|
116
141
|
}
|
|
117
142
|
|
|
118
143
|
fun isCompressedSizeLessThanActualFile(sourceFileUrl: String,compressedFileUrl: String?): Boolean {
|
|
@@ -197,7 +222,7 @@ object ImageCompressor {
|
|
|
197
222
|
}
|
|
198
223
|
scaledBitmap = correctImageOrientation(scaledBitmap, imagePath)
|
|
199
224
|
val imageDataByteArrayOutputStream = compress(scaledBitmap, compressorOptions.output, compressorOptions.quality,compressorOptions.disablePngTransparency)
|
|
200
|
-
val compressedImagePath=encodeImage(imageDataByteArrayOutputStream, isBase64, compressorOptions.output.toString(), reactContext)
|
|
225
|
+
val compressedImagePath=encodeImage(imageDataByteArrayOutputStream, isBase64, compressorOptions.output.toString(),imagePath, reactContext)
|
|
201
226
|
if(isCompressedSizeLessThanActualFile(imagePath!!,compressedImagePath))
|
|
202
227
|
{
|
|
203
228
|
return compressedImagePath
|
|
@@ -16,6 +16,7 @@ import java.net.HttpURLConnection
|
|
|
16
16
|
import java.net.URL
|
|
17
17
|
import java.util.UUID
|
|
18
18
|
import java.util.regex.Pattern
|
|
19
|
+
import kotlin.Throwable
|
|
19
20
|
|
|
20
21
|
object Utils {
|
|
21
22
|
private const val TAG = "react-native-compessor"
|
|
@@ -31,39 +32,41 @@ object Utils {
|
|
|
31
32
|
val currentVideoCompression = intArrayOf(0)
|
|
32
33
|
val videoCompressorClass: VideoCompressorClass? = VideoCompressorClass(reactContext);
|
|
33
34
|
compressorExports[uuid] = videoCompressorClass
|
|
34
|
-
videoCompressorClass?.start(
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}
|
|
35
|
+
videoCompressorClass?.start(
|
|
36
|
+
srcPath, destinationPath, resultWidth, resultHeight, videoBitRate.toInt(),
|
|
37
|
+
listener = object : CompressionListener {
|
|
38
|
+
override fun onProgress(index: Int, percent: Float) {
|
|
39
|
+
if (percent <= 100) {
|
|
40
|
+
val roundProgress = Math.round(percent)
|
|
41
|
+
if (progressDivider == 0 || (roundProgress % progressDivider == 0 && roundProgress > currentVideoCompression[0])) {
|
|
42
|
+
EventEmitterHandler.emitVideoCompressProgress((percent / 100).toDouble(), uuid)
|
|
43
|
+
currentVideoCompression[0] = roundProgress
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
+
}
|
|
46
47
|
|
|
47
|
-
|
|
48
|
+
override fun onStart(index: Int) {
|
|
48
49
|
|
|
49
|
-
|
|
50
|
+
}
|
|
50
51
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
52
|
+
override fun onSuccess(index: Int, size: Long, path: String?) {
|
|
53
|
+
val fileUrl = "file://$destinationPath"
|
|
54
|
+
//convert finish,result(true is success,false is fail)
|
|
55
|
+
promise.resolve(fileUrl)
|
|
56
|
+
MediaCache.removeCompletedImagePath(fileUrl)
|
|
57
|
+
currentVideoCompression[0] = 0
|
|
58
|
+
compressorExports[uuid] = null
|
|
59
|
+
}
|
|
59
60
|
|
|
60
61
|
override fun onFailure(index: Int, failureMessage: String) {
|
|
61
62
|
Log.wtf("failureMessage", failureMessage)
|
|
63
|
+
promise.reject(Throwable(failureMessage))
|
|
62
64
|
currentVideoCompression[0] = 0
|
|
63
65
|
}
|
|
64
66
|
|
|
65
67
|
override fun onCancelled(index: Int) {
|
|
66
68
|
Log.wtf("TAG", "compression has been cancelled")
|
|
69
|
+
promise.reject(Throwable("compression has been cancelled"))
|
|
67
70
|
// make UI changes, cleanup, etc
|
|
68
71
|
currentVideoCompression[0] = 0
|
|
69
72
|
}
|
|
@@ -152,6 +155,147 @@ object Utils {
|
|
|
152
155
|
Log.d(AudioCompressor.TAG, log)
|
|
153
156
|
}
|
|
154
157
|
|
|
158
|
+
val exifAttributes = arrayOf(
|
|
159
|
+
"FNumber",
|
|
160
|
+
"ApertureValue",
|
|
161
|
+
"Artist",
|
|
162
|
+
"BitsPerSample",
|
|
163
|
+
"BrightnessValue",
|
|
164
|
+
"CFAPattern",
|
|
165
|
+
"ColorSpace",
|
|
166
|
+
"ComponentsConfiguration",
|
|
167
|
+
"CompressedBitsPerPixel",
|
|
168
|
+
"Compression",
|
|
169
|
+
"Contrast",
|
|
170
|
+
"Copyright",
|
|
171
|
+
"CustomRendered",
|
|
172
|
+
"DateTime",
|
|
173
|
+
"DateTimeDigitized",
|
|
174
|
+
"DateTimeOriginal",
|
|
175
|
+
"DefaultCropSize",
|
|
176
|
+
"DeviceSettingDescription",
|
|
177
|
+
"DigitalZoomRatio",
|
|
178
|
+
"DNGVersion",
|
|
179
|
+
"ExifVersion",
|
|
180
|
+
"ExposureBiasValue",
|
|
181
|
+
"ExposureIndex",
|
|
182
|
+
"ExposureMode",
|
|
183
|
+
"ExposureProgram",
|
|
184
|
+
"ExposureTime",
|
|
185
|
+
"FileSource",
|
|
186
|
+
"Flash",
|
|
187
|
+
"FlashpixVersion",
|
|
188
|
+
"FlashEnergy",
|
|
189
|
+
"FocalLength",
|
|
190
|
+
"FocalLengthIn35mmFilm",
|
|
191
|
+
"FocalPlaneResolutionUnit",
|
|
192
|
+
"FocalPlaneXResolution",
|
|
193
|
+
"FocalPlaneYResolution",
|
|
194
|
+
"FNumber",
|
|
195
|
+
"GainControl",
|
|
196
|
+
"GPSAltitude",
|
|
197
|
+
"GPSAltitudeRef",
|
|
198
|
+
"GPSAreaInformation",
|
|
199
|
+
"GPSDateStamp",
|
|
200
|
+
"GPSDestBearing",
|
|
201
|
+
"GPSDestBearingRef",
|
|
202
|
+
"GPSDestDistance",
|
|
203
|
+
"GPSDestDistanceRef",
|
|
204
|
+
"GPSDestLatitude",
|
|
205
|
+
"GPSDestLatitudeRef",
|
|
206
|
+
"GPSDestLongitude",
|
|
207
|
+
"GPSDestLongitudeRef",
|
|
208
|
+
"GPSDifferential",
|
|
209
|
+
"GPSDOP",
|
|
210
|
+
"GPSImgDirection",
|
|
211
|
+
"GPSImgDirectionRef",
|
|
212
|
+
"GPSLatitude",
|
|
213
|
+
"GPSLatitudeRef",
|
|
214
|
+
"GPSLongitude",
|
|
215
|
+
"GPSLongitudeRef",
|
|
216
|
+
"GPSMapDatum",
|
|
217
|
+
"GPSMeasureMode",
|
|
218
|
+
"GPSProcessingMethod",
|
|
219
|
+
"GPSSatellites",
|
|
220
|
+
"GPSSpeed",
|
|
221
|
+
"GPSSpeedRef",
|
|
222
|
+
"GPSStatus",
|
|
223
|
+
"GPSTimeStamp",
|
|
224
|
+
"GPSTrack",
|
|
225
|
+
"GPSTrackRef",
|
|
226
|
+
"GPSVersionID",
|
|
227
|
+
"ImageDescription",
|
|
228
|
+
"ImageLength",
|
|
229
|
+
"ImageUniqueID",
|
|
230
|
+
"ImageWidth",
|
|
231
|
+
"InteroperabilityIndex",
|
|
232
|
+
"ISOSpeedRatings",
|
|
233
|
+
"ISOSpeedRatings",
|
|
234
|
+
"JPEGInterchangeFormat",
|
|
235
|
+
"JPEGInterchangeFormatLength",
|
|
236
|
+
"LightSource",
|
|
237
|
+
"Make",
|
|
238
|
+
"MakerNote",
|
|
239
|
+
"MaxApertureValue",
|
|
240
|
+
"MeteringMode",
|
|
241
|
+
"Model",
|
|
242
|
+
"NewSubfileType",
|
|
243
|
+
"OECF",
|
|
244
|
+
"AspectFrame",
|
|
245
|
+
"PreviewImageLength",
|
|
246
|
+
"PreviewImageStart",
|
|
247
|
+
"ThumbnailImage",
|
|
248
|
+
"Orientation",
|
|
249
|
+
"PhotometricInterpretation",
|
|
250
|
+
"PixelXDimension",
|
|
251
|
+
"PixelYDimension",
|
|
252
|
+
"PlanarConfiguration",
|
|
253
|
+
"PrimaryChromaticities",
|
|
254
|
+
"ReferenceBlackWhite",
|
|
255
|
+
"RelatedSoundFile",
|
|
256
|
+
"ResolutionUnit",
|
|
257
|
+
"RowsPerStrip",
|
|
258
|
+
"ISO",
|
|
259
|
+
"JpgFromRaw",
|
|
260
|
+
"SensorBottomBorder",
|
|
261
|
+
"SensorLeftBorder",
|
|
262
|
+
"SensorRightBorder",
|
|
263
|
+
"SensorTopBorder",
|
|
264
|
+
"SamplesPerPixel",
|
|
265
|
+
"Saturation",
|
|
266
|
+
"SceneCaptureType",
|
|
267
|
+
"SceneType",
|
|
268
|
+
"SensingMethod",
|
|
269
|
+
"Sharpness",
|
|
270
|
+
"ShutterSpeedValue",
|
|
271
|
+
"Software",
|
|
272
|
+
"SpatialFrequencyResponse",
|
|
273
|
+
"SpectralSensitivity",
|
|
274
|
+
"StripByteCounts",
|
|
275
|
+
"StripOffsets",
|
|
276
|
+
"SubfileType",
|
|
277
|
+
"SubjectArea",
|
|
278
|
+
"SubjectDistance",
|
|
279
|
+
"SubjectDistanceRange",
|
|
280
|
+
"SubjectLocation",
|
|
281
|
+
"SubSecTime",
|
|
282
|
+
"SubSecTimeDigitized",
|
|
283
|
+
"SubSecTimeDigitized",
|
|
284
|
+
"SubSecTimeOriginal",
|
|
285
|
+
"SubSecTimeOriginal",
|
|
286
|
+
"ThumbnailImageLength",
|
|
287
|
+
"ThumbnailImageWidth",
|
|
288
|
+
"TransferFunction",
|
|
289
|
+
"UserComment",
|
|
290
|
+
"WhiteBalance",
|
|
291
|
+
"WhitePoint",
|
|
292
|
+
"XResolution",
|
|
293
|
+
"YCbCrCoefficients",
|
|
294
|
+
"YCbCrPositioning",
|
|
295
|
+
"YCbCrSubSampling",
|
|
296
|
+
"YResolution"
|
|
297
|
+
)
|
|
298
|
+
|
|
155
299
|
fun getLength(uri: Uri, contentResolver: ContentResolver): Long {
|
|
156
300
|
var assetFileDescriptor: AssetFileDescriptor? = null
|
|
157
301
|
try {
|
|
@@ -65,17 +65,17 @@ class VideoMain(private val reactContext: ReactApplicationContext) {
|
|
|
65
65
|
val metaRetriever = MediaMetadataRetriever()
|
|
66
66
|
metaRetriever.setDataSource(srcPath)
|
|
67
67
|
val file = File(srcPath)
|
|
68
|
-
val sizeInKBs = (file.length() / 1024).
|
|
68
|
+
val sizeInKBs = (file.length() / 1024).toDouble()
|
|
69
69
|
val actualHeight = metaRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_VIDEO_HEIGHT)!!.toInt()
|
|
70
70
|
val actualWidth = metaRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_VIDEO_WIDTH)!!.toInt()
|
|
71
|
-
val duration = metaRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION)!!.
|
|
71
|
+
val duration = metaRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION)!!.toDouble()
|
|
72
72
|
val creationTime = metaRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DATE)
|
|
73
73
|
val extension = filePath!!.substring(filePath.lastIndexOf(".") + 1)
|
|
74
74
|
val params = Arguments.createMap()
|
|
75
|
-
params.
|
|
76
|
-
params.
|
|
77
|
-
params.
|
|
78
|
-
params.
|
|
75
|
+
params.putDouble("size", sizeInKBs)
|
|
76
|
+
params.putInt("width", actualWidth)
|
|
77
|
+
params.putInt("height", actualHeight)
|
|
78
|
+
params.putDouble("duration", duration / 1000)
|
|
79
79
|
params.putString("extension", extension)
|
|
80
80
|
params.putString("creationTime", creationTime.toString())
|
|
81
81
|
promise.resolve(params)
|
|
@@ -114,7 +114,38 @@ class ImageCompressor {
|
|
|
114
114
|
}
|
|
115
115
|
return false
|
|
116
116
|
}
|
|
117
|
-
|
|
117
|
+
|
|
118
|
+
static func isPNG(_ data: Data) -> Bool {
|
|
119
|
+
return data.starts(with: [0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A])
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
static func copyExifInfo(actualImagePath:String, image: UIImage, data: Data) -> Data {
|
|
123
|
+
let fileURL = URL(string: actualImagePath)!
|
|
124
|
+
let filePath = fileURL.path
|
|
125
|
+
|
|
126
|
+
let url = URL(fileURLWithPath: filePath)
|
|
127
|
+
let source = CGImageSourceCreateWithURL(url as CFURL, nil)!
|
|
128
|
+
var metadata = CGImageSourceCopyPropertiesAtIndex(source, 0, nil) as? [CFString: Any]
|
|
129
|
+
|
|
130
|
+
let dataProvider = CGDataProvider(data: data as CFData)
|
|
131
|
+
let dataImageSource = CGImageSourceCreateWithDataProvider(dataProvider!, nil)!
|
|
132
|
+
let dataMetadata = CGImageSourceCopyPropertiesAtIndex(dataImageSource, 0, nil) as? [CFString: Any]
|
|
133
|
+
|
|
134
|
+
// Copy all keys from source metadata to destination metadata if they don't exist
|
|
135
|
+
for (key, value) in dataMetadata ?? [:] {
|
|
136
|
+
if metadata?[key] == nil {
|
|
137
|
+
metadata?[key] = value
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
let outputFormat = isPNG(data) ? kUTTypePNG : kUTTypeJPEG
|
|
142
|
+
|
|
143
|
+
let destinationData = NSMutableData()
|
|
144
|
+
let destination = CGImageDestinationCreateWithData(destinationData, outputFormat, 1, nil)!
|
|
145
|
+
CGImageDestinationAddImage(destination, image.cgImage!, metadata as CFDictionary?)
|
|
146
|
+
CGImageDestinationFinalize(destination)
|
|
147
|
+
return destinationData as Data
|
|
148
|
+
}
|
|
118
149
|
|
|
119
150
|
static func writeImage(_ image: UIImage, output: Int, quality: Float, outputExtension: String, isBase64: Bool,disablePngTransparency:Bool,isEnableAutoCompress:Bool,actualImagePath:String)-> String{
|
|
120
151
|
var data: Data
|
|
@@ -135,7 +166,10 @@ class ImageCompressor {
|
|
|
135
166
|
}
|
|
136
167
|
|
|
137
168
|
}
|
|
138
|
-
|
|
169
|
+
|
|
170
|
+
data=copyExifInfo(actualImagePath: actualImagePath, image: image, data: data)
|
|
171
|
+
|
|
172
|
+
|
|
139
173
|
if isBase64 {
|
|
140
174
|
return data.base64EncodedString(options: [])
|
|
141
175
|
} else {
|
|
@@ -307,11 +307,13 @@ class VideoCompressor {
|
|
|
307
307
|
}
|
|
308
308
|
|
|
309
309
|
|
|
310
|
+
|
|
310
311
|
func getVideoMetaData(_ filePath: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
|
|
311
312
|
do {
|
|
312
313
|
VideoCompressor.getAbsoluteVideoPath(filePath, options: [:]) { absoluteImagePath in
|
|
313
314
|
if absoluteImagePath.hasPrefix("file://") {
|
|
314
|
-
|
|
315
|
+
|
|
316
|
+
let absoluteImagePath = URL(string: absoluteImagePath)!.path
|
|
315
317
|
let fileManager = FileManager.default
|
|
316
318
|
var isDir: ObjCBool = false
|
|
317
319
|
|
|
@@ -323,7 +325,7 @@ class VideoCompressor {
|
|
|
323
325
|
|
|
324
326
|
let attrs = try? fileManager.attributesOfItem(atPath: absoluteImagePath)
|
|
325
327
|
if let fileSize = attrs?[FileAttributeKey.size] as? UInt64 {
|
|
326
|
-
let fileSizeString =
|
|
328
|
+
let fileSizeString = fileSize
|
|
327
329
|
|
|
328
330
|
var result: [String: Any] = [:]
|
|
329
331
|
let assetOptions: [String: Any] = [AVURLAssetPreferPreciseDurationAndTimingKey: true]
|
|
@@ -332,13 +334,13 @@ class VideoCompressor {
|
|
|
332
334
|
let size = avAsset.naturalSize
|
|
333
335
|
let _extension = (absoluteImagePath as NSString).pathExtension
|
|
334
336
|
let time = asset.duration
|
|
335
|
-
let seconds =
|
|
337
|
+
let seconds = Double(time.value) / Double(time.timescale)
|
|
336
338
|
|
|
337
|
-
result["width"] =
|
|
338
|
-
result["height"] =
|
|
339
|
+
result["width"] = size.width
|
|
340
|
+
result["height"] = size.height
|
|
339
341
|
result["extension"] = _extension
|
|
340
342
|
result["size"] = fileSizeString
|
|
341
|
-
result["duration"] =
|
|
343
|
+
result["duration"] = seconds
|
|
342
344
|
|
|
343
345
|
var commonMetadata: [AVMetadataItem] = []
|
|
344
346
|
for key in self.metadatas {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Main","require","_Downloader","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_Uploader","INCORRECT_INPUT_PATH","DEFAULT_COMPRESS_AUDIO_OPTIONS","quality","generateFilePath","extension","Promise","resolve","reject","Compressor","then","result","catch","error","getRealPath","path","type","arguments","length","undefined","getVideoMetaData","createVideoThumbnail","fileUrl","options","clearCache","cacheDir","isValidUrl","url","test","getFullFilename","_path","includes","substring","array","split","isFileNameError","filename","getFilename","fullFilename","slice","join","isRemoteMedia","_path$split","getDetails","mediaFullPath","extesnion","Error","mediaInfo","JSON","parse","mediaInformation","bitrate","getMediaProperties","bit_rate","size","Number","format","e","getFileSize","filePath","uuidv4","replace","c","r","parseFloat","Math","random","toString","Date","getTime","v"],"sourceRoot":"../../../src","sources":["utils/index.tsx"],"mappings":";;;;;;;;;;;;;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["_Main","require","_Downloader","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_Uploader","INCORRECT_INPUT_PATH","DEFAULT_COMPRESS_AUDIO_OPTIONS","quality","generateFilePath","extension","Promise","resolve","reject","Compressor","then","result","catch","error","getRealPath","path","type","arguments","length","undefined","getVideoMetaData","createVideoThumbnail","fileUrl","options","clearCache","cacheDir","isValidUrl","url","test","getFullFilename","_path","includes","substring","array","split","isFileNameError","filename","getFilename","fullFilename","slice","join","isRemoteMedia","_path$split","getDetails","mediaFullPath","extesnion","Error","mediaInfo","JSON","parse","mediaInformation","bitrate","getMediaProperties","bit_rate","size","Number","format","e","getFileSize","filePath","uuidv4","replace","c","r","parseFloat","Math","random","toString","Date","getTime","v"],"sourceRoot":"../../../src","sources":["utils/index.tsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Compressor","INCORRECT_INPUT_PATH","DEFAULT_COMPRESS_AUDIO_OPTIONS","quality","generateFilePath","extension","Promise","resolve","reject","then","result","catch","error","getRealPath","path","type","arguments","length","undefined","getVideoMetaData","createVideoThumbnail","fileUrl","options","clearCache","cacheDir","isValidUrl","url","test","getFullFilename","_path","includes","substring","array","split","isFileNameError","filename","getFilename","fullFilename","slice","join","isRemoteMedia","_path$split","getDetails","mediaFullPath","extesnion","Error","mediaInfo","JSON","parse","mediaInformation","bitrate","getMediaProperties","bit_rate","size","Number","format","e","getFileSize","filePath","uuidv4","replace","c","r","parseFloat","Math","random","toString","Date","getTime","v"],"sourceRoot":"../../../src","sources":["utils/index.tsx"],"mappings":"AAAA;AACA,SAASA,UAAU,QAAQ,SAAS;;AAEpC;;AAEA,MAAMC,oBAAoB,GAAG,kDAAkD;AAW/E,OAAO,MAAMC,8BAAqD,GAAG;EACnE;EACAC,OAAO,EAAE;AACX,CAAC;
|
|
1
|
+
{"version":3,"names":["Compressor","INCORRECT_INPUT_PATH","DEFAULT_COMPRESS_AUDIO_OPTIONS","quality","generateFilePath","extension","Promise","resolve","reject","then","result","catch","error","getRealPath","path","type","arguments","length","undefined","getVideoMetaData","createVideoThumbnail","fileUrl","options","clearCache","cacheDir","isValidUrl","url","test","getFullFilename","_path","includes","substring","array","split","isFileNameError","filename","getFilename","fullFilename","slice","join","isRemoteMedia","_path$split","getDetails","mediaFullPath","extesnion","Error","mediaInfo","JSON","parse","mediaInformation","bitrate","getMediaProperties","bit_rate","size","Number","format","e","getFileSize","filePath","uuidv4","replace","c","r","parseFloat","Math","random","toString","Date","getTime","v"],"sourceRoot":"../../../src","sources":["utils/index.tsx"],"mappings":"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"}
|
|
@@ -15,7 +15,13 @@ declare const _default: {
|
|
|
15
15
|
uuidv4: () => string;
|
|
16
16
|
generateFilePath: any;
|
|
17
17
|
getRealPath: (path: string, type: "video" | "image") => Promise<string>;
|
|
18
|
-
getVideoMetaData: (filePath: string) => Promise<
|
|
18
|
+
getVideoMetaData: (filePath: string) => Promise<{
|
|
19
|
+
extension: string;
|
|
20
|
+
size: number;
|
|
21
|
+
duration: number;
|
|
22
|
+
width: number;
|
|
23
|
+
height: number;
|
|
24
|
+
}>;
|
|
19
25
|
getFileSize: (filePath: string) => Promise<string>;
|
|
20
26
|
backgroundUpload: (url: string, fileUrl: string, options: import("./utils").UploaderOptions, onProgress?: ((writtem: number, total: number) => void) | undefined) => Promise<any>;
|
|
21
27
|
createVideoThumbnail: (fileUrl: string, options?: {
|
|
@@ -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,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,QAAQ,EACR,UAAU,EACV,UAAU,EACV,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,gBAAgB,EAChB,QAAQ,EAER,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,WAAW,EACX,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,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,QAAQ,EACR,UAAU,EACV,UAAU,EACV,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,gBAAgB,EAChB,QAAQ,EAER,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,UAAU,EACV,kBAAkB,GACnB,CAAC;AACF,YAAY,EAAE,mBAAmB,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACpC,wBAgBE"}
|
|
@@ -22,7 +22,13 @@ type createVideoThumbnailType = (fileUrl: string, options?: {
|
|
|
22
22
|
height: number;
|
|
23
23
|
}>;
|
|
24
24
|
type clearCacheType = (cacheDir?: string) => Promise<string>;
|
|
25
|
-
type getVideoMetaDataType = (filePath: string) => Promise<
|
|
25
|
+
type getVideoMetaDataType = (filePath: string) => Promise<{
|
|
26
|
+
extension: string;
|
|
27
|
+
size: number;
|
|
28
|
+
duration: number;
|
|
29
|
+
width: number;
|
|
30
|
+
height: number;
|
|
31
|
+
}>;
|
|
26
32
|
type getRealPathType = (path: string, type: 'video' | 'image') => Promise<string>;
|
|
27
33
|
export declare const generateFilePath: any;
|
|
28
34
|
export declare const getRealPath: getRealPathType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.tsx"],"names":[],"mappings":"AAIA,KAAK,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7C,KAAK,qBAAqB,GAAG;IAE3B,OAAO,EAAE,WAAW,CAAC;CACtB,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;CACrC,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;AAC7D,KAAK,oBAAoB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.tsx"],"names":[],"mappings":"AAIA,KAAK,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7C,KAAK,qBAAqB,GAAG;IAE3B,OAAO,EAAE,WAAW,CAAC;CACtB,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;CACrC,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;AAC7D,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,CACrB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,GAAG,OAAO,KACpB,OAAO,CAAC,MAAM,CAAC,CAAC;AAErB,eAAO,MAAM,gBAAgB,EAAE,GAM9B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,eAEzB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,oBAE9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,wBAKlC,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,cAExB,CAAC;AA2CF,eAAO,MAAM,UAAU,kBACN,MAAM,cACV,KAAK,GAAG,KAAK,KACvB,QAAQ,GAAG,GAAG,IAAI,CA6BpB,CAAC;AAEF,eAAO,MAAM,WAAW,aAAoB,MAAM,KAAG,QAAQ,MAAM,CAElE,CAAC;AAEF,eAAO,MAAM,MAAM,cAclB,CAAC;AACF,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
|
package/package.json
CHANGED
package/src/utils/index.tsx
CHANGED
|
@@ -37,7 +37,13 @@ type createVideoThumbnailType = (
|
|
|
37
37
|
}>;
|
|
38
38
|
|
|
39
39
|
type clearCacheType = (cacheDir?: string) => Promise<string>;
|
|
40
|
-
type getVideoMetaDataType = (filePath: string) => Promise<
|
|
40
|
+
type getVideoMetaDataType = (filePath: string) => Promise<{
|
|
41
|
+
extension: string;
|
|
42
|
+
size: number;
|
|
43
|
+
duration: number;
|
|
44
|
+
width: number;
|
|
45
|
+
height: number;
|
|
46
|
+
}>;
|
|
41
47
|
type getRealPathType = (
|
|
42
48
|
path: string,
|
|
43
49
|
type: 'video' | 'image'
|