Skip to content

Commit 1c7745f

Browse files
authored
Merge pull request #179 from numandev1/fix/duplicate-referance-kt
fix: duplicate referance for create video tumbnail android
2 parents d30ccc3 + 541310a commit 1c7745f

File tree

4 files changed

+28
-13
lines changed

4 files changed

+28
-13
lines changed

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ We should use **react-native-compressor** instead of **FFmpeg** because **react-
6868
- [Audio](#audio)
6969
- [Background Upload](#background-upload)
7070
- [Download File](#download)
71+
- [Create Video Thumbnail and Clear Cache](#create-video-thumbnail-and-clear-cache)
7172

7273
* [Other Utilities](#api)
7374
- [Background Upload](#background-upload-1)
@@ -431,7 +432,7 @@ type FileSystemUploadOptions = (
431432

432433
- ##### download: ( fileUrl: string, downloadProgress?: (progress: number) => void, progressDivider?: number ) => Promise< string >
433434

434-
### Create Video Thumbnail and clear cache
435+
### Create Video Thumbnail and Clear Cache
435436

436437
- #### createVideoThumbnail( fileUrl: string, options: {header:Object} ): Promise<{ path: string;size: number; mime: string; width: number; height: number; }>
437438

android/src/main/java/com/reactnativecompressor/CompressorModule.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import com.facebook.react.bridge.ReactMethod
88
import com.facebook.react.bridge.ReadableMap
99
import com.reactnativecompressor.Audio.AudioMain
1010
import com.reactnativecompressor.Image.ImageMain
11-
import com.reactnativecompressor.Utils.CreateVideoThumbnail
11+
import com.reactnativecompressor.Utils.CreateVideoThumbnailClass
1212
import com.reactnativecompressor.Utils.Downloader
1313
import com.reactnativecompressor.Utils.EventEmitterHandler
1414
import com.reactnativecompressor.Utils.Uploader
@@ -21,7 +21,7 @@ class CompressorModule(private val reactContext: ReactApplicationContext) : Comp
2121
private val imageMain: ImageMain = ImageMain(reactContext)
2222
private val videoMain: VideoMain = VideoMain(reactContext)
2323
private val audioMain: AudioMain = AudioMain(reactContext)
24-
private val videoThumbnail: CreateVideoThumbnail = CreateVideoThumbnail(reactContext)
24+
private val videoThumbnail: CreateVideoThumbnailClass = CreateVideoThumbnailClass(reactContext)
2525

2626
override fun initialize() {
2727
super.initialize()
@@ -156,7 +156,7 @@ class CompressorModule(private val reactContext: ReactApplicationContext) : Comp
156156

157157
@ReactMethod
158158
override fun clearCache(cacheDir:String?, promise:Promise) {
159-
CreateVideoThumbnail.clearCache(cacheDir, promise, reactContext)
159+
CreateVideoThumbnailClass.clearCache(cacheDir, promise, reactContext)
160160
}
161161

162162
@ReactMethod

android/src/main/java/com/reactnativecompressor/Utils/createVideoThumbnail.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import java.net.URLDecoder
2626
import java.util.UUID
2727

2828

29-
class CreateVideoThumbnail(private val reactContext: ReactApplicationContext) {
29+
class CreateVideoThumbnailClass(private val reactContext: ReactApplicationContext) {
3030
@ReactMethod
3131
fun create(fileUrl:String,options: ReadableMap, promise: Promise) {
3232
ProcessDataTask(reactContext,fileUrl, promise, options).execute()

src/utils/index.tsx

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,22 @@ export type AudioType = {
3030
compress(value: string, options?: audioCompresssionType): Promise<string>;
3131
};
3232

33+
type createVideoThumbnailType = (
34+
fileUrl: string,
35+
options?: {
36+
headers?: { [key: string]: string };
37+
}
38+
) => Promise<{
39+
path: string;
40+
size: number;
41+
mime: string;
42+
width: number;
43+
height: number;
44+
}>;
45+
46+
type clearCacheType = (cacheDir?: string) => Promise<string>;
47+
type getVideoMetaDataType = (filePath: string) => Promise<string>;
48+
3349
export const generateFilePath: any = (extension: string) => {
3450
return new Promise((resolve, reject) => {
3551
Compressor.generateFilePath(extension)
@@ -45,20 +61,18 @@ export const getRealPath: any = (
4561
return Compressor.getRealPath(path, type);
4662
};
4763

48-
export const getVideoMetaData: any = (path: string) => {
64+
export const getVideoMetaData: getVideoMetaDataType = (path: string) => {
4965
return Compressor.getVideoMetaData(path);
5066
};
5167

52-
export const createVideoThumbnail: any = (
53-
url: string,
54-
options: {
55-
headers?: object;
56-
} = {}
68+
export const createVideoThumbnail: createVideoThumbnailType = (
69+
fileUrl,
70+
options = {}
5771
) => {
58-
return Compressor.createVideoThumbnail(url, options);
72+
return Compressor.createVideoThumbnail(fileUrl, options);
5973
};
6074

61-
export const clearCache: any = (cacheDir?: string) => {
75+
export const clearCache: clearCacheType = (cacheDir?: string) => {
6276
return Compressor.clearCache(cacheDir);
6377
};
6478

0 commit comments

Comments
 (0)