Skip to content

Commit d7ee586

Browse files
committed
fix: use generated NitroDownloadResult type instead of internal structs
- Remove duplicate NitroDownloadResult definitions - Use generated NitroDownloadResult from nitrogen on both platforms - Fix return type mismatch in Android HybridNitroFS - Fix return type mismatch in iOS HybridNitroFs
1 parent ba75dcc commit d7ee586

6 files changed

Lines changed: 9 additions & 24 deletions

File tree

android/src/main/java/com/nitrofs/FileDownloader.kt

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.nitrofs
22

33
import android.util.Log
4+
import com.margelo.nitro.nitrofs.NitroDownloadResult
45
import com.margelo.nitro.nitrofs.NitroFile
56
import io.ktor.client.HttpClient
67
import io.ktor.client.call.body
@@ -25,11 +26,6 @@ import java.util.UUID
2526
import java.util.concurrent.ConcurrentHashMap
2627
import java.io.File
2728

28-
data class NitroDownloadResult(
29-
val jobId: String,
30-
val file: NitroFile
31-
)
32-
3329
class FileDownloader {
3430
private val downloadScope = CoroutineScope(SupervisorJob() + Dispatchers.IO)
3531
private val downloadJobs = ConcurrentHashMap<String, Job>()

android/src/main/java/com/nitrofs/HybridNitroFS.kt

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import android.util.Log
44
import com.margelo.nitro.NitroModules
55
import com.margelo.nitro.core.Promise
66
import com.margelo.nitro.nitrofs.HybridNitroFSSpec
7+
import com.margelo.nitro.nitrofs.NitroDownloadResult
78
import com.margelo.nitro.nitrofs.NitroFile
89
import com.margelo.nitro.nitrofs.NitroFileEncoding
910
import com.margelo.nitro.nitrofs.NitroFileStat
@@ -206,15 +207,10 @@ class HybridNitroFS: HybridNitroFSSpec() {
206207
serverUrl: String,
207208
destinationPath: String,
208209
onProgress: ((Double, Double) -> Unit)?
209-
): Promise<Map<String, Any>> {
210+
): Promise<NitroDownloadResult> {
210211
return Promise.async(ioScope) {
211212
try {
212-
val result = nitroFsImpl.downloadFile(serverUrl, destinationPath, onProgress)
213-
214-
return@async mapOf(
215-
"jobId" to result.jobId,
216-
"file" to result.file
217-
)
213+
nitroFsImpl.downloadFile(serverUrl, destinationPath, onProgress)
218214
} catch (e: Exception) {
219215
Log.e(TAG, "Error downloading file: ${e.message}")
220216
throw Error(e)

android/src/main/java/com/nitrofs/NitroFSImpl.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import android.provider.OpenableColumns
77
import android.util.Log
88
import android.webkit.MimeTypeMap
99
import com.facebook.react.bridge.ReactApplicationContext
10+
import com.margelo.nitro.nitrofs.NitroDownloadResult
1011
import com.margelo.nitro.nitrofs.NitroFile
1112
import com.margelo.nitro.nitrofs.NitroFileEncoding
1213
import com.margelo.nitro.nitrofs.NitroFileStat

ios/HybridNitroFs.swift

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -181,19 +181,14 @@ class HybridNitroFS: HybridNitroFSSpec {
181181
}
182182
}
183183

184-
func downloadFile(serverUrl: String, destinationPath: String, onProgress: ((Double, Double) -> Void)?) throws -> NitroModules.Promise<[String: Any]> {
184+
func downloadFile(serverUrl: String, destinationPath: String, onProgress: ((Double, Double) -> Void)?) throws -> NitroModules.Promise<NitroDownloadResult> {
185185
return .async { [unowned self] in
186186
do {
187-
let result = try await self.nitroFSImpl.downloadFile(
187+
return try await self.nitroFSImpl.downloadFile(
188188
serverUrl: serverUrl,
189189
destinationPath: destinationPath,
190190
onProgress: onProgress
191191
)
192-
193-
return [
194-
"jobId": result.jobId,
195-
"file": result.file
196-
]
197192
} catch {
198193
os_log("failed to download file: \(error.localizedDescription)")
199194
throw error

ios/NitroFSFileDownloader.swift

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,7 @@
66
//
77

88
import Foundation
9-
10-
struct NitroDownloadResult {
11-
let jobId: String
12-
let file: NitroFile
13-
}
9+
import NitroModules
1410

1511
final class NitroFSFileDownloader: NSObject {
1612
private weak var fileManager: FileManager?

ios/NitroFSImpl.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
//
77

88
import Foundation
9+
import NitroModules
910
import os
1011

1112
class NitroFSImpl {

0 commit comments

Comments
 (0)