diff --git a/Libraries/Image/Image.ios.js b/Libraries/Image/Image.ios.js index 5938d48e80651f..48b9c398717802 100644 --- a/Libraries/Image/Image.ios.js +++ b/Libraries/Image/Image.ios.js @@ -65,10 +65,11 @@ function prefetchWithMetadata( rootTag?: ?number, ): any { if (NativeImageLoaderIOS.prefetchImageWithMetadata) { + // number params like rootTag cannot be nullable before TurboModules is available return NativeImageLoaderIOS.prefetchImageWithMetadata( url, queryRootName, - rootTag, + rootTag ? rootTag : 0, ); } else { return NativeImageLoaderIOS.prefetchImage(url); diff --git a/Libraries/Image/NativeImageLoaderIOS.js b/Libraries/Image/NativeImageLoaderIOS.js index cee864e675a872..d0cf74846cfc45 100644 --- a/Libraries/Image/NativeImageLoaderIOS.js +++ b/Libraries/Image/NativeImageLoaderIOS.js @@ -29,7 +29,7 @@ export interface Spec extends TurboModule { +prefetchImageWithMetadata?: ( uri: string, queryRootName: string, - rootTag?: ?number, + rootTag: number, ) => Promise; +queryCache: (uris: Array) => Promise; } diff --git a/Libraries/Image/RCTImageLoader.mm b/Libraries/Image/RCTImageLoader.mm index f6a6dbb59eba88..d35d0bb44270da 100644 --- a/Libraries/Image/RCTImageLoader.mm +++ b/Libraries/Image/RCTImageLoader.mm @@ -1197,12 +1197,12 @@ - (void)cancelRequest:(id)requestToken resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) { - [self prefetchImageWithMetadata:uri queryRootName:nil rootTag:nil resolve:resolve reject:reject]; + [self prefetchImageWithMetadata:uri queryRootName:nil rootTag:0 resolve:resolve reject:reject]; } RCT_EXPORT_METHOD(prefetchImageWithMetadata:(NSString *)uri queryRootName:(NSString *)queryRootName - rootTag:(NSNumber *)rootTag + rootTag:(double)rootTag resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) { @@ -1215,7 +1215,7 @@ - (void)cancelRequest:(id)requestToken priority:RCTImageLoaderPriorityPrefetch attribution:{ .queryRootName = queryRootName ? [queryRootName UTF8String] : "", - .surfaceId = [rootTag intValue], + .surfaceId = (int)rootTag, } progressBlock:nil partialLoadBlock:nil