react-native-nitro-fetch 0.1.4 → 0.1.5
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/margelo/nitro/nitrofetch/NitroFetchClient.kt +51 -27
- package/ios/NitroFetchClient.swift +25 -0
- package/lib/module/NitroInstances.js +1 -0
- package/lib/module/NitroInstances.js.map +1 -1
- package/lib/module/fetch.js +20 -45
- package/lib/module/fetch.js.map +1 -1
- package/lib/typescript/src/NitroFetch.nitro.d.ts +1 -0
- package/lib/typescript/src/NitroFetch.nitro.d.ts.map +1 -1
- package/lib/typescript/src/NitroInstances.d.ts +1 -0
- package/lib/typescript/src/NitroInstances.d.ts.map +1 -1
- package/lib/typescript/src/fetch.d.ts.map +1 -1
- package/nitrogen/generated/android/c++/JHybridNitroFetchClientSpec.cpp +5 -0
- package/nitrogen/generated/android/c++/JHybridNitroFetchClientSpec.hpp +1 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/HybridNitroFetchClientSpec.kt +4 -0
- package/nitrogen/generated/ios/NitroFetch-Swift-Cxx-Bridge.hpp +9 -0
- package/nitrogen/generated/ios/c++/HybridNitroFetchClientSpecSwift.hpp +8 -0
- package/nitrogen/generated/ios/swift/HybridNitroFetchClientSpec.swift +1 -0
- package/nitrogen/generated/ios/swift/HybridNitroFetchClientSpec_cxx.swift +12 -0
- package/nitrogen/generated/shared/c++/HybridNitroFetchClientSpec.cpp +1 -0
- package/nitrogen/generated/shared/c++/HybridNitroFetchClientSpec.hpp +1 -0
- package/package.json +1 -1
- package/src/NitroFetch.nitro.ts +3 -0
- package/src/NitroInstances.ts +2 -0
- package/src/fetch.ts +23 -46
|
@@ -155,6 +155,56 @@ class NitroFetchClient(private val engine: CronetEngine, private val executor: E
|
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
157
|
|
|
158
|
+
// Helper function to add prefetch header to response (reused by both sync/async)
|
|
159
|
+
private fun withPrefetchedHeader(res: NitroResponse): NitroResponse {
|
|
160
|
+
val newHeaders = (res.headers?.toMutableList() ?: mutableListOf())
|
|
161
|
+
newHeaders.add(NitroHeader("nitroPrefetched", "true"))
|
|
162
|
+
return NitroResponse(
|
|
163
|
+
url = res.url,
|
|
164
|
+
status = res.status,
|
|
165
|
+
statusText = res.statusText,
|
|
166
|
+
ok = res.ok,
|
|
167
|
+
redirected = res.redirected,
|
|
168
|
+
headers = newHeaders.toTypedArray(),
|
|
169
|
+
bodyString = res.bodyString,
|
|
170
|
+
bodyBytes = res.bodyBytes
|
|
171
|
+
)
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
override fun requestSync(req: NitroRequest): NitroResponse {
|
|
175
|
+
val key = findPrefetchKey(req)
|
|
176
|
+
if (key != null) {
|
|
177
|
+
FetchCache.getPending(key)?.let { fut ->
|
|
178
|
+
return try {
|
|
179
|
+
withPrefetchedHeader(fut.get()) // blocks until complete
|
|
180
|
+
} catch (e: Exception) {
|
|
181
|
+
throw e.cause ?: e
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
FetchCache.getResultIfFresh(key, 5_000L)?.let { cached ->
|
|
185
|
+
return withPrefetchedHeader(cached)
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
val latch = java.util.concurrent.CountDownLatch(1)
|
|
189
|
+
var result: NitroResponse? = null
|
|
190
|
+
var error: Throwable? = null
|
|
191
|
+
|
|
192
|
+
fetch(
|
|
193
|
+
req,
|
|
194
|
+
onSuccess = {
|
|
195
|
+
result = it
|
|
196
|
+
latch.countDown()
|
|
197
|
+
},
|
|
198
|
+
onFail = {
|
|
199
|
+
error = it
|
|
200
|
+
latch.countDown()
|
|
201
|
+
}
|
|
202
|
+
)
|
|
203
|
+
latch.await()
|
|
204
|
+
error?.let { throw it }
|
|
205
|
+
return result!!
|
|
206
|
+
}
|
|
207
|
+
|
|
158
208
|
override fun request(req: NitroRequest): Promise<NitroResponse> {
|
|
159
209
|
val promise = Promise<NitroResponse>()
|
|
160
210
|
// Try to serve from prefetch cache/pending first
|
|
@@ -162,20 +212,6 @@ class NitroFetchClient(private val engine: CronetEngine, private val executor: E
|
|
|
162
212
|
if (key != null) {
|
|
163
213
|
// If a prefetch is currently pending, wait for it
|
|
164
214
|
FetchCache.getPending(key)?.let { fut ->
|
|
165
|
-
fun withPrefetchedHeader(res: NitroResponse): NitroResponse {
|
|
166
|
-
val newHeaders = (res.headers?.toMutableList() ?: mutableListOf())
|
|
167
|
-
newHeaders.add(NitroHeader("nitroPrefetched", "true"))
|
|
168
|
-
return NitroResponse(
|
|
169
|
-
url = res.url,
|
|
170
|
-
status = res.status,
|
|
171
|
-
statusText = res.statusText,
|
|
172
|
-
ok = res.ok,
|
|
173
|
-
redirected = res.redirected,
|
|
174
|
-
headers = newHeaders.toTypedArray(),
|
|
175
|
-
bodyString = res.bodyString,
|
|
176
|
-
bodyBytes = res.bodyBytes
|
|
177
|
-
)
|
|
178
|
-
}
|
|
179
215
|
fut.whenComplete { res, err ->
|
|
180
216
|
if (err != null) {
|
|
181
217
|
promise.reject(err)
|
|
@@ -189,19 +225,7 @@ class NitroFetchClient(private val engine: CronetEngine, private val executor: E
|
|
|
189
225
|
}
|
|
190
226
|
// If a fresh prefetched result exists (<=5s old), return it immediately
|
|
191
227
|
FetchCache.getResultIfFresh(key, 5_000L)?.let { cached ->
|
|
192
|
-
|
|
193
|
-
newHeaders.add(NitroHeader("nitroPrefetched", "true"))
|
|
194
|
-
val wrapped = NitroResponse(
|
|
195
|
-
url = cached.url,
|
|
196
|
-
status = cached.status,
|
|
197
|
-
statusText = cached.statusText,
|
|
198
|
-
ok = cached.ok,
|
|
199
|
-
redirected = cached.redirected,
|
|
200
|
-
headers = newHeaders.toTypedArray(),
|
|
201
|
-
bodyString = cached.bodyString,
|
|
202
|
-
bodyBytes = cached.bodyBytes
|
|
203
|
-
)
|
|
204
|
-
promise.resolve(wrapped)
|
|
228
|
+
promise.resolve(withPrefetchedHeader(cached))
|
|
205
229
|
return promise
|
|
206
230
|
}
|
|
207
231
|
}
|
|
@@ -2,6 +2,31 @@ import Foundation
|
|
|
2
2
|
import NitroModules
|
|
3
3
|
|
|
4
4
|
final class NitroFetchClient: HybridNitroFetchClientSpec {
|
|
5
|
+
func requestSync(req: NitroRequest) throws -> NitroResponse {
|
|
6
|
+
let semaphore = DispatchSemaphore(value: 0)
|
|
7
|
+
var result: Result<NitroResponse, Error>?
|
|
8
|
+
|
|
9
|
+
Task {
|
|
10
|
+
do {
|
|
11
|
+
let response = try await NitroFetchClient.requestStatic(req)
|
|
12
|
+
result = .success(response)
|
|
13
|
+
} catch {
|
|
14
|
+
result = .failure(error)
|
|
15
|
+
}
|
|
16
|
+
semaphore.signal()
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
semaphore.wait()
|
|
20
|
+
|
|
21
|
+
switch result! {
|
|
22
|
+
case .success(let response):
|
|
23
|
+
return response
|
|
24
|
+
case .failure(let error):
|
|
25
|
+
throw error
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Async version - returns Promise<NitroResponse>
|
|
5
30
|
func request(req: NitroRequest) throws -> Promise<NitroResponse> {
|
|
6
31
|
let promise = Promise<NitroResponse>.init()
|
|
7
32
|
Task {
|
|
@@ -4,4 +4,5 @@ import { NitroModules } from 'react-native-nitro-modules';
|
|
|
4
4
|
// Create singletons once per JS runtime
|
|
5
5
|
export const NitroFetch = NitroModules.createHybridObject('NitroFetch');
|
|
6
6
|
export const NativeStorage = NitroModules.createHybridObject('NativeStorage');
|
|
7
|
+
export const boxedNitroFetch = NitroModules.box(NitroFetch);
|
|
7
8
|
//# sourceMappingURL=NitroInstances.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NitroModules","NitroFetch","createHybridObject","NativeStorage"],"sourceRoot":"../../src","sources":["NitroInstances.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,4BAA4B;AAMzD;AACA,OAAO,MAAMC,UAA0B,GACrCD,YAAY,CAACE,kBAAkB,CAAiB,YAAY,CAAC;AAE/D,OAAO,MAAMC,aAAgC,GAC3CH,YAAY,CAACE,kBAAkB,CAAoB,eAAe,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["NitroModules","NitroFetch","createHybridObject","NativeStorage","boxedNitroFetch","box"],"sourceRoot":"../../src","sources":["NitroInstances.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,4BAA4B;AAMzD;AACA,OAAO,MAAMC,UAA0B,GACrCD,YAAY,CAACE,kBAAkB,CAAiB,YAAY,CAAC;AAE/D,OAAO,MAAMC,aAAgC,GAC3CH,YAAY,CAACE,kBAAkB,CAAoB,eAAe,CAAC;AAErE,OAAO,MAAME,eAAe,GAAGJ,YAAY,CAACK,GAAG,CAACJ,UAAU,CAAC","ignoreList":[]}
|
package/lib/module/fetch.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { NitroFetch as NitroFetchSingleton } from "./NitroInstances.js";
|
|
3
|
+
import { boxedNitroFetch, NitroFetch as NitroFetchSingleton } from "./NitroInstances.js";
|
|
4
4
|
import { NativeStorage as NativeStorageSingleton } from "./NitroInstances.js";
|
|
5
5
|
|
|
6
6
|
// No base64: pass strings/ArrayBuffers directly
|
|
@@ -109,8 +109,6 @@ function buildNitroRequest(input, init) {
|
|
|
109
109
|
};
|
|
110
110
|
}
|
|
111
111
|
async function nitroFetchRaw(input, init) {
|
|
112
|
-
'worklet';
|
|
113
|
-
|
|
114
112
|
const hasNative = typeof NitroFetchHybrid?.createClient === 'function';
|
|
115
113
|
if (!hasNative) {
|
|
116
114
|
// Fallback path not supported for raw; use global fetch and synthesize minimal shape
|
|
@@ -173,8 +171,6 @@ class NitroHeaders {
|
|
|
173
171
|
}
|
|
174
172
|
}
|
|
175
173
|
export async function nitroFetch(input, init) {
|
|
176
|
-
'worklet';
|
|
177
|
-
|
|
178
174
|
const res = await nitroFetchRaw(input, init);
|
|
179
175
|
const headersObj = new NitroHeaders(res.headers);
|
|
180
176
|
const bodyBytes = res.bodyBytes;
|
|
@@ -308,7 +304,7 @@ function ensureWorkletRuntime(name = 'nitro-fetch') {
|
|
|
308
304
|
const {
|
|
309
305
|
Worklets
|
|
310
306
|
} = require('react-native-worklets-core');
|
|
311
|
-
nitroRuntime = nitroRuntime ?? Worklets.
|
|
307
|
+
nitroRuntime = nitroRuntime ?? Worklets.createContext(name);
|
|
312
308
|
console.log('nitroRuntime:', !!nitroRuntime);
|
|
313
309
|
return nitroRuntime;
|
|
314
310
|
} catch {
|
|
@@ -345,7 +341,7 @@ export async function nitroFetchOnWorklet(input, init, mapWorklet, options) {
|
|
|
345
341
|
}
|
|
346
342
|
|
|
347
343
|
// Fallback: if runtime is not available, do the work on JS
|
|
348
|
-
if (!rt || !Worklets || typeof rt.
|
|
344
|
+
if (!rt || !Worklets || typeof rt.runAsync !== 'function') {
|
|
349
345
|
console.warn('nitroFetchOnWorklet: no runtime, mapping on JS thread');
|
|
350
346
|
const res = await nitroFetchRaw(input, init);
|
|
351
347
|
const payload = {
|
|
@@ -360,45 +356,24 @@ export async function nitroFetchOnWorklet(input, init, mapWorklet, options) {
|
|
|
360
356
|
};
|
|
361
357
|
return mapWorklet(payload);
|
|
362
358
|
}
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
rt.run(async map => {
|
|
367
|
-
'worklet';
|
|
359
|
+
console.log('nitroFetchOnWorklet: running on worklet thread');
|
|
360
|
+
return await rt.runAsync(() => {
|
|
361
|
+
'worklet';
|
|
368
362
|
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
status,
|
|
384
|
-
statusText,
|
|
385
|
-
ok,
|
|
386
|
-
redirected,
|
|
387
|
-
headers: headersPairs,
|
|
388
|
-
bodyBytes,
|
|
389
|
-
bodyString
|
|
390
|
-
};
|
|
391
|
-
const out = map(payload);
|
|
392
|
-
// Resolve back on JS thread
|
|
393
|
-
Worklets.runOnJS(resolve)(out);
|
|
394
|
-
} catch (e) {
|
|
395
|
-
Worklets.runOnJS(reject)(e);
|
|
396
|
-
}
|
|
397
|
-
}, mapWorklet);
|
|
398
|
-
} catch (e) {
|
|
399
|
-
console.error('nitroFetchOnWorklet: rt.run failed', e);
|
|
400
|
-
reject(e);
|
|
401
|
-
}
|
|
363
|
+
const unboxedNitroFetch = boxedNitroFetch.unbox();
|
|
364
|
+
const unboxedClient = unboxedNitroFetch.createClient();
|
|
365
|
+
const res = unboxedClient.requestSync(buildNitroRequest(input, init));
|
|
366
|
+
const payload = {
|
|
367
|
+
url: res.url,
|
|
368
|
+
status: res.status,
|
|
369
|
+
statusText: res.statusText,
|
|
370
|
+
ok: res.ok,
|
|
371
|
+
redirected: res.redirected,
|
|
372
|
+
headers: res.headers,
|
|
373
|
+
bodyBytes: preferBytes ? res.bodyBytes : undefined,
|
|
374
|
+
bodyString: preferBytes ? undefined : res.bodyString
|
|
375
|
+
};
|
|
376
|
+
return mapWorklet(payload);
|
|
402
377
|
});
|
|
403
378
|
}
|
|
404
379
|
export const x = ensureWorkletRuntime();
|
package/lib/module/fetch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NitroFetch","NitroFetchSingleton","NativeStorage","NativeStorageSingleton","headersToPairs","headers","undefined","pairs","Headers","forEach","v","k","push","key","value","Array","isArray","entry","length","String","Object","entries","normalizeBody","body","bodyString","URLSearchParams","toString","ArrayBuffer","bodyBytes","isView","view","buffer","slice","byteOffset","byteLength","Error","NitroFetchHybrid","client","ensureClient","createClient","err","console","error","buildNitroRequest","input","init","url","method","headersInit","URL","normalized","toUpperCase","followRedirects","nitroFetchRaw","hasNative","res","fetch","bytes","arrayBuffer","status","statusText","ok","redirected","req","request","NitroHeaders","constructor","_headers","Map","set","toLowerCase","get","name","has","callback","keys","values","nitroFetch","headersObj","makeLight","text","json","JSON","parse","clone","light","prefetch","hasKey","some","h","fromInit","prefetchKey","concat","finalHasKey","prefetchOnAppStart","fromHeader","find","reduce","acc","KEY","arr","raw","getString","e","filter","setString","stringify","warn","removeFromAutoPrefetch","next","removeString","removeAllFromAutoprefetch","nitroRuntime","WorkletsRef","ensureWorkletRuntime","log","Worklets","require","createRuntime","getWorklets","nitroFetchOnWorklet","mapWorklet","options","preferBytes","rt","runtimeName","run","payload","Promise","resolve","reject","map","headersPairs","out","runOnJS","x","y"],"sourceRoot":"../../src","sources":["fetch.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["boxedNitroFetch","NitroFetch","NitroFetchSingleton","NativeStorage","NativeStorageSingleton","headersToPairs","headers","undefined","pairs","Headers","forEach","v","k","push","key","value","Array","isArray","entry","length","String","Object","entries","normalizeBody","body","bodyString","URLSearchParams","toString","ArrayBuffer","bodyBytes","isView","view","buffer","slice","byteOffset","byteLength","Error","NitroFetchHybrid","client","ensureClient","createClient","err","console","error","buildNitroRequest","input","init","url","method","headersInit","URL","normalized","toUpperCase","followRedirects","nitroFetchRaw","hasNative","res","fetch","bytes","arrayBuffer","status","statusText","ok","redirected","req","request","NitroHeaders","constructor","_headers","Map","set","toLowerCase","get","name","has","callback","keys","values","nitroFetch","headersObj","makeLight","text","json","JSON","parse","clone","light","prefetch","hasKey","some","h","fromInit","prefetchKey","concat","finalHasKey","prefetchOnAppStart","fromHeader","find","reduce","acc","KEY","arr","raw","getString","e","filter","setString","stringify","warn","removeFromAutoPrefetch","next","removeString","removeAllFromAutoprefetch","nitroRuntime","WorkletsRef","ensureWorkletRuntime","log","Worklets","require","createContext","getWorklets","nitroFetchOnWorklet","mapWorklet","options","preferBytes","rt","runtimeName","runAsync","payload","unboxedNitroFetch","unbox","unboxedClient","requestSync","x","y"],"sourceRoot":"../../src","sources":["fetch.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -29,6 +29,7 @@ export interface NitroFetchClient extends HybridObject<{
|
|
|
29
29
|
}> {
|
|
30
30
|
request(req: NitroRequest): Promise<NitroResponse>;
|
|
31
31
|
prefetch(req: NitroRequest): Promise<void>;
|
|
32
|
+
requestSync(req: NitroRequest): NitroResponse;
|
|
32
33
|
}
|
|
33
34
|
export interface NitroFetch extends HybridObject<{
|
|
34
35
|
ios: 'swift';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NitroFetch.nitro.d.ts","sourceRoot":"","sources":["../../../src/NitroFetch.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG/D,MAAM,MAAM,kBAAkB,GAC1B,KAAK,GACL,MAAM,GACN,MAAM,GACN,KAAK,GACL,OAAO,GACP,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AACD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAE5B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IAExB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,OAAO,CAAC;IACZ,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,WAAW,EAAE,CAAC;IAEvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC;IAEzD,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAEnD,QAAQ,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"NitroFetch.nitro.d.ts","sourceRoot":"","sources":["../../../src/NitroFetch.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG/D,MAAM,MAAM,kBAAkB,GAC1B,KAAK,GACL,MAAM,GACN,MAAM,GACN,KAAK,GACL,OAAO,GACP,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AACD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAE5B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IAExB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,OAAO,CAAC;IACZ,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,WAAW,EAAE,CAAC;IAEvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC;IAEzD,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAEnD,QAAQ,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG3C,WAAW,CAAC,GAAG,EAAE,YAAY,GAAG,aAAa,CAAC;CAC/C;AAED,MAAM,WAAW,UACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC;IAEzD,YAAY,IAAI,gBAAgB,CAAC;CAIlC;AAED,MAAM,WAAW,aACf,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC;IACzD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { NitroFetch as NitroFetchType, NativeStorage as NativeStorageType } from './NitroFetch.nitro';
|
|
2
2
|
export declare const NitroFetch: NitroFetchType;
|
|
3
3
|
export declare const NativeStorage: NativeStorageType;
|
|
4
|
+
export declare const boxedNitroFetch: import("react-native-nitro-modules/lib/typescript/BoxedHybridObject").BoxedHybridObject<NitroFetchType>;
|
|
4
5
|
//# sourceMappingURL=NitroInstances.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NitroInstances.d.ts","sourceRoot":"","sources":["../../../src/NitroInstances.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,IAAI,cAAc,EAC5B,aAAa,IAAI,iBAAiB,EACnC,MAAM,oBAAoB,CAAC;AAG5B,eAAO,MAAM,UAAU,EAAE,cACsC,CAAC;AAEhE,eAAO,MAAM,aAAa,EAAE,iBACyC,CAAC"}
|
|
1
|
+
{"version":3,"file":"NitroInstances.d.ts","sourceRoot":"","sources":["../../../src/NitroInstances.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,IAAI,cAAc,EAC5B,aAAa,IAAI,iBAAiB,EACnC,MAAM,oBAAoB,CAAC;AAG5B,eAAO,MAAM,UAAU,EAAE,cACsC,CAAC;AAEhE,eAAO,MAAM,aAAa,EAAE,iBACyC,CAAC;AAEtE,eAAO,MAAM,eAAe,yGAA+B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../src/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EAGZ,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../src/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EAGZ,MAAM,oBAAoB,CAAC;AA4L5B,wBAAsB,UAAU,CAC9B,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,QAAQ,CAAC,CAuBnB;AAGD,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,IAAI,CAAC,CA4Bf;AAGD,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,IAAI,CAAC,EAAE,WAAW,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5C,OAAO,CAAC,IAAI,CAAC,CAkDf;AAGD,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAsBf;AAGD,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAG/D;AAGD,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,OAAO,CAAC;IACZ,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,KAAK,CAAC,CAAC;AA8BR,wBAAsB,mBAAmB,CAAC,CAAC,EACzC,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,IAAI,EAAE,WAAW,GAAG,SAAS,EAC7B,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC,EACjC,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACxD,OAAO,CAAC,CAAC,CAAC,CAkDZ;AAED,eAAO,MAAM,CAAC,KAAyB,CAAC;AACxC,eAAO,MAAM,CAAC,KAAgB,CAAC;AAE/B,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -87,5 +87,10 @@ namespace margelo::nitro::nitrofetch {
|
|
|
87
87
|
return __promise;
|
|
88
88
|
}();
|
|
89
89
|
}
|
|
90
|
+
NitroResponse JHybridNitroFetchClientSpec::requestSync(const NitroRequest& req) {
|
|
91
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JNitroResponse>(jni::alias_ref<JNitroRequest> /* req */)>("requestSync");
|
|
92
|
+
auto __result = method(_javaPart, JNitroRequest::fromCpp(req));
|
|
93
|
+
return __result->toCpp();
|
|
94
|
+
}
|
|
90
95
|
|
|
91
96
|
} // namespace margelo::nitro::nitrofetch
|
|
@@ -55,6 +55,7 @@ namespace margelo::nitro::nitrofetch {
|
|
|
55
55
|
// Methods
|
|
56
56
|
std::shared_ptr<Promise<NitroResponse>> request(const NitroRequest& req) override;
|
|
57
57
|
std::shared_ptr<Promise<void>> prefetch(const NitroRequest& req) override;
|
|
58
|
+
NitroResponse requestSync(const NitroRequest& req) override;
|
|
58
59
|
|
|
59
60
|
private:
|
|
60
61
|
friend HybridBase;
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrofetch/HybridNitroFetchClientSpec.kt
CHANGED
|
@@ -47,6 +47,10 @@ abstract class HybridNitroFetchClientSpec: HybridObject() {
|
|
|
47
47
|
@DoNotStrip
|
|
48
48
|
@Keep
|
|
49
49
|
abstract fun prefetch(req: NitroRequest): Promise<Unit>
|
|
50
|
+
|
|
51
|
+
@DoNotStrip
|
|
52
|
+
@Keep
|
|
53
|
+
abstract fun requestSync(req: NitroRequest): NitroResponse
|
|
50
54
|
|
|
51
55
|
private external fun initHybrid(): HybridData
|
|
52
56
|
|
|
@@ -258,6 +258,15 @@ namespace margelo::nitro::nitrofetch::bridge::swift {
|
|
|
258
258
|
return Result<std::shared_ptr<Promise<void>>>::withError(error);
|
|
259
259
|
}
|
|
260
260
|
|
|
261
|
+
// pragma MARK: Result<NitroResponse>
|
|
262
|
+
using Result_NitroResponse_ = Result<NitroResponse>;
|
|
263
|
+
inline Result_NitroResponse_ create_Result_NitroResponse_(const NitroResponse& value) noexcept {
|
|
264
|
+
return Result<NitroResponse>::withValue(value);
|
|
265
|
+
}
|
|
266
|
+
inline Result_NitroResponse_ create_Result_NitroResponse_(const std::exception_ptr& error) noexcept {
|
|
267
|
+
return Result<NitroResponse>::withError(error);
|
|
268
|
+
}
|
|
269
|
+
|
|
261
270
|
// pragma MARK: std::shared_ptr<HybridNitroFetchSpec>
|
|
262
271
|
/**
|
|
263
272
|
* Specialized version of `std::shared_ptr<HybridNitroFetchSpec>`.
|
|
@@ -87,6 +87,14 @@ namespace margelo::nitro::nitrofetch {
|
|
|
87
87
|
auto __value = std::move(__result.value());
|
|
88
88
|
return __value;
|
|
89
89
|
}
|
|
90
|
+
inline NitroResponse requestSync(const NitroRequest& req) override {
|
|
91
|
+
auto __result = _swiftPart.requestSync(req);
|
|
92
|
+
if (__result.hasError()) [[unlikely]] {
|
|
93
|
+
std::rethrow_exception(__result.error());
|
|
94
|
+
}
|
|
95
|
+
auto __value = std::move(__result.value());
|
|
96
|
+
return __value;
|
|
97
|
+
}
|
|
90
98
|
|
|
91
99
|
private:
|
|
92
100
|
NitroFetch::HybridNitroFetchClientSpec_cxx _swiftPart;
|
|
@@ -16,6 +16,7 @@ public protocol HybridNitroFetchClientSpec_protocol: HybridObject {
|
|
|
16
16
|
// Methods
|
|
17
17
|
func request(req: NitroRequest) throws -> Promise<NitroResponse>
|
|
18
18
|
func prefetch(req: NitroRequest) throws -> Promise<Void>
|
|
19
|
+
func requestSync(req: NitroRequest) throws -> NitroResponse
|
|
19
20
|
}
|
|
20
21
|
|
|
21
22
|
/// See ``HybridNitroFetchClientSpec``
|
|
@@ -146,4 +146,16 @@ open class HybridNitroFetchClientSpec_cxx {
|
|
|
146
146
|
return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
|
+
|
|
150
|
+
@inline(__always)
|
|
151
|
+
public final func requestSync(req: NitroRequest) -> bridge.Result_NitroResponse_ {
|
|
152
|
+
do {
|
|
153
|
+
let __result = try self.__implementation.requestSync(req: req)
|
|
154
|
+
let __resultCpp = __result
|
|
155
|
+
return bridge.create_Result_NitroResponse_(__resultCpp)
|
|
156
|
+
} catch (let __error) {
|
|
157
|
+
let __exceptionPtr = __error.toCpp()
|
|
158
|
+
return bridge.create_Result_NitroResponse_(__exceptionPtr)
|
|
159
|
+
}
|
|
160
|
+
}
|
|
149
161
|
}
|
|
@@ -16,6 +16,7 @@ namespace margelo::nitro::nitrofetch {
|
|
|
16
16
|
registerHybrids(this, [](Prototype& prototype) {
|
|
17
17
|
prototype.registerHybridMethod("request", &HybridNitroFetchClientSpec::request);
|
|
18
18
|
prototype.registerHybridMethod("prefetch", &HybridNitroFetchClientSpec::prefetch);
|
|
19
|
+
prototype.registerHybridMethod("requestSync", &HybridNitroFetchClientSpec::requestSync);
|
|
19
20
|
});
|
|
20
21
|
}
|
|
21
22
|
|
|
@@ -55,6 +55,7 @@ namespace margelo::nitro::nitrofetch {
|
|
|
55
55
|
// Methods
|
|
56
56
|
virtual std::shared_ptr<Promise<NitroResponse>> request(const NitroRequest& req) = 0;
|
|
57
57
|
virtual std::shared_ptr<Promise<void>> prefetch(const NitroRequest& req) = 0;
|
|
58
|
+
virtual NitroResponse requestSync(const NitroRequest& req) = 0;
|
|
58
59
|
|
|
59
60
|
protected:
|
|
60
61
|
// Hybrid Setup
|
package/package.json
CHANGED
package/src/NitroFetch.nitro.ts
CHANGED
|
@@ -45,6 +45,9 @@ export interface NitroFetchClient
|
|
|
45
45
|
request(req: NitroRequest): Promise<NitroResponse>;
|
|
46
46
|
// Start a prefetch for a given request; expects a header `prefetchKey`.
|
|
47
47
|
prefetch(req: NitroRequest): Promise<void>;
|
|
48
|
+
|
|
49
|
+
// Synchronous version of request for worklets
|
|
50
|
+
requestSync(req: NitroRequest): NitroResponse;
|
|
48
51
|
}
|
|
49
52
|
|
|
50
53
|
export interface NitroFetch
|
package/src/NitroInstances.ts
CHANGED
package/src/fetch.ts
CHANGED
|
@@ -4,7 +4,10 @@ import type {
|
|
|
4
4
|
NitroRequest,
|
|
5
5
|
NitroResponse,
|
|
6
6
|
} from './NitroFetch.nitro';
|
|
7
|
-
import {
|
|
7
|
+
import {
|
|
8
|
+
boxedNitroFetch,
|
|
9
|
+
NitroFetch as NitroFetchSingleton,
|
|
10
|
+
} from './NitroInstances';
|
|
8
11
|
import { NativeStorage as NativeStorageSingleton } from './NitroInstances';
|
|
9
12
|
|
|
10
13
|
// No base64: pass strings/ArrayBuffers directly
|
|
@@ -121,7 +124,6 @@ async function nitroFetchRaw(
|
|
|
121
124
|
input: RequestInfo | URL,
|
|
122
125
|
init?: RequestInit
|
|
123
126
|
): Promise<NitroResponse> {
|
|
124
|
-
'worklet';
|
|
125
127
|
const hasNative =
|
|
126
128
|
typeof (NitroFetchHybrid as any)?.createClient === 'function';
|
|
127
129
|
if (!hasNative) {
|
|
@@ -193,8 +195,6 @@ export async function nitroFetch(
|
|
|
193
195
|
input: RequestInfo | URL,
|
|
194
196
|
init?: RequestInit
|
|
195
197
|
): Promise<Response> {
|
|
196
|
-
'worklet';
|
|
197
|
-
|
|
198
198
|
const res = await nitroFetchRaw(input, init);
|
|
199
199
|
|
|
200
200
|
const headersObj = new NitroHeaders(res.headers);
|
|
@@ -360,7 +360,7 @@ function ensureWorkletRuntime(name = 'nitro-fetch'): any | undefined {
|
|
|
360
360
|
console.log('ensuring worklet runtime');
|
|
361
361
|
try {
|
|
362
362
|
const { Worklets } = require('react-native-worklets-core');
|
|
363
|
-
nitroRuntime = nitroRuntime ?? Worklets.
|
|
363
|
+
nitroRuntime = nitroRuntime ?? Worklets.createContext(name);
|
|
364
364
|
console.log('nitroRuntime:', !!nitroRuntime);
|
|
365
365
|
return nitroRuntime;
|
|
366
366
|
} catch {
|
|
@@ -403,7 +403,7 @@ export async function nitroFetchOnWorklet<T>(
|
|
|
403
403
|
}
|
|
404
404
|
|
|
405
405
|
// Fallback: if runtime is not available, do the work on JS
|
|
406
|
-
if (!rt || !Worklets || typeof rt.
|
|
406
|
+
if (!rt || !Worklets || typeof rt.runAsync !== 'function') {
|
|
407
407
|
console.warn('nitroFetchOnWorklet: no runtime, mapping on JS thread');
|
|
408
408
|
const res = await nitroFetchRaw(input, init);
|
|
409
409
|
const payload = {
|
|
@@ -418,47 +418,24 @@ export async function nitroFetchOnWorklet<T>(
|
|
|
418
418
|
} as const;
|
|
419
419
|
return mapWorklet(payload as any);
|
|
420
420
|
}
|
|
421
|
+
console.log('nitroFetchOnWorklet: running on worklet thread');
|
|
422
|
+
return await rt.runAsync(() => {
|
|
423
|
+
'worklet';
|
|
424
|
+
const unboxedNitroFetch = boxedNitroFetch.unbox();
|
|
425
|
+
const unboxedClient = unboxedNitroFetch.createClient();
|
|
426
|
+
const res = unboxedClient.requestSync(buildNitroRequest(input, init));
|
|
427
|
+
const payload = {
|
|
428
|
+
url: res.url,
|
|
429
|
+
status: res.status,
|
|
430
|
+
statusText: res.statusText,
|
|
431
|
+
ok: res.ok,
|
|
432
|
+
redirected: res.redirected,
|
|
433
|
+
headers: res.headers,
|
|
434
|
+
bodyBytes: preferBytes ? res.bodyBytes : undefined,
|
|
435
|
+
bodyString: preferBytes ? undefined : res.bodyString,
|
|
436
|
+
} as const;
|
|
421
437
|
|
|
422
|
-
|
|
423
|
-
try {
|
|
424
|
-
console.log('nitroFetchOnWorklet: about to call rt.run');
|
|
425
|
-
rt.run(async (map: NitroWorkletMapper<T>) => {
|
|
426
|
-
'worklet';
|
|
427
|
-
try {
|
|
428
|
-
console.log('nitroFetchOnWorklet: running fetch on worklet thread');
|
|
429
|
-
const res = await nitroFetchRaw(input, init);
|
|
430
|
-
console.log('nitroFetchOnWorklet: fetch completed');
|
|
431
|
-
const url = res.url;
|
|
432
|
-
const status = res.status;
|
|
433
|
-
const statusText = res.statusText;
|
|
434
|
-
const ok = res.ok;
|
|
435
|
-
const redirected = res.redirected;
|
|
436
|
-
const headersPairs: NitroHeader[] = res.headers;
|
|
437
|
-
const bodyBytes: ArrayBuffer | undefined = undefined; // preferBytes ? res.bodyBytes : undefined;
|
|
438
|
-
const bodyString: string | undefined = preferBytes
|
|
439
|
-
? undefined
|
|
440
|
-
: res.bodyString;
|
|
441
|
-
const payload = {
|
|
442
|
-
url,
|
|
443
|
-
status,
|
|
444
|
-
statusText,
|
|
445
|
-
ok,
|
|
446
|
-
redirected,
|
|
447
|
-
headers: headersPairs,
|
|
448
|
-
bodyBytes,
|
|
449
|
-
bodyString,
|
|
450
|
-
};
|
|
451
|
-
const out = map(payload);
|
|
452
|
-
// Resolve back on JS thread
|
|
453
|
-
Worklets.runOnJS(resolve)(out as any);
|
|
454
|
-
} catch (e) {
|
|
455
|
-
Worklets.runOnJS(reject)(e as any);
|
|
456
|
-
}
|
|
457
|
-
}, mapWorklet as any);
|
|
458
|
-
} catch (e) {
|
|
459
|
-
console.error('nitroFetchOnWorklet: rt.run failed', e);
|
|
460
|
-
reject(e);
|
|
461
|
-
}
|
|
438
|
+
return mapWorklet(payload as any);
|
|
462
439
|
});
|
|
463
440
|
}
|
|
464
441
|
|