react-native 0.70.6 → 0.71.0-rc.1

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.
Files changed (1527) hide show
  1. package/CHANGELOG.md +351 -0
  2. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +80 -0
  3. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +4 -3
  4. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
  5. package/Libraries/Alert/Alert.d.ts +90 -0
  6. package/Libraries/Alert/Alert.js +7 -1
  7. package/Libraries/Alert/Alert.js.flow +49 -0
  8. package/Libraries/Alert/NativeAlertManager.js +2 -0
  9. package/Libraries/Alert/RCTAlertManager.ios.js +2 -1
  10. package/Libraries/Animated/Animated.d.ts +587 -0
  11. package/Libraries/Animated/Animated.js +13 -11
  12. package/Libraries/Animated/AnimatedEvent.js +12 -17
  13. package/Libraries/Animated/AnimatedImplementation.js +21 -23
  14. package/Libraries/Animated/AnimatedMock.js +11 -13
  15. package/Libraries/Animated/AnimatedWeb.js +2 -2
  16. package/Libraries/Animated/Easing.d.ts +37 -0
  17. package/Libraries/Animated/Easing.js +2 -2
  18. package/Libraries/Animated/NativeAnimatedHelper.js +32 -22
  19. package/Libraries/Animated/NativeAnimatedModule.js +1 -0
  20. package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
  21. package/Libraries/Animated/SpringConfig.js +2 -7
  22. package/Libraries/Animated/animations/Animation.js +3 -4
  23. package/Libraries/Animated/animations/DecayAnimation.js +5 -8
  24. package/Libraries/Animated/animations/SpringAnimation.js +9 -14
  25. package/Libraries/Animated/animations/TimingAnimation.js +9 -13
  26. package/Libraries/Animated/bezier.js +2 -2
  27. package/Libraries/Animated/components/AnimatedFlatList.js +5 -6
  28. package/Libraries/Animated/components/AnimatedImage.js +5 -6
  29. package/Libraries/Animated/components/AnimatedScrollView.js +110 -14
  30. package/Libraries/Animated/components/AnimatedSectionList.js +4 -5
  31. package/Libraries/Animated/components/AnimatedText.js +5 -6
  32. package/Libraries/Animated/components/AnimatedView.js +5 -6
  33. package/Libraries/Animated/createAnimatedComponent.js +11 -25
  34. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +2 -2
  35. package/Libraries/Animated/nodes/AnimatedAddition.js +6 -8
  36. package/Libraries/Animated/nodes/AnimatedColor.js +7 -7
  37. package/Libraries/Animated/nodes/AnimatedDiffClamp.js +6 -8
  38. package/Libraries/Animated/nodes/AnimatedDivision.js +7 -9
  39. package/Libraries/Animated/nodes/AnimatedInterpolation.js +7 -10
  40. package/Libraries/Animated/nodes/AnimatedModulo.js +6 -8
  41. package/Libraries/Animated/nodes/AnimatedMultiplication.js +7 -9
  42. package/Libraries/Animated/nodes/AnimatedNode.js +10 -8
  43. package/Libraries/Animated/nodes/AnimatedProps.js +12 -28
  44. package/Libraries/Animated/nodes/AnimatedStyle.js +12 -22
  45. package/Libraries/Animated/nodes/AnimatedSubtraction.js +7 -9
  46. package/Libraries/Animated/nodes/AnimatedTracking.js +8 -12
  47. package/Libraries/Animated/nodes/AnimatedTransform.js +38 -31
  48. package/Libraries/Animated/nodes/AnimatedValue.js +9 -10
  49. package/Libraries/Animated/nodes/AnimatedValueXY.js +4 -7
  50. package/Libraries/Animated/nodes/AnimatedWithChildren.js +4 -5
  51. package/Libraries/Animated/useAnimatedProps.js +8 -16
  52. package/Libraries/Animated/useAnimatedValue.d.ts +15 -0
  53. package/Libraries/Animated/useAnimatedValue.js +25 -0
  54. package/Libraries/AppDelegate/RCTAppDelegate.h +130 -0
  55. package/Libraries/AppDelegate/RCTAppDelegate.mm +164 -0
  56. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +73 -0
  57. package/Libraries/AppState/AppState.d.ts +58 -0
  58. package/Libraries/AppState/AppState.js +3 -7
  59. package/Libraries/AppState/NativeAppState.js +1 -0
  60. package/Libraries/BatchedBridge/MessageQueue.js +9 -5
  61. package/Libraries/BatchedBridge/NativeModules.d.ts +25 -0
  62. package/Libraries/BatchedBridge/NativeModules.js +1 -0
  63. package/Libraries/Blob/BlobManager.js +5 -3
  64. package/Libraries/Blob/File.js +2 -3
  65. package/Libraries/Blob/FileReader.js +6 -5
  66. package/Libraries/Blob/NativeBlobModule.js +1 -0
  67. package/Libraries/Blob/NativeFileReaderModule.js +1 -0
  68. package/Libraries/Blob/RCTBlobCollector.h +0 -2
  69. package/Libraries/Blob/RCTBlobCollector.mm +27 -23
  70. package/Libraries/Blob/RCTBlobManager.h +1 -1
  71. package/Libraries/Blob/RCTBlobManager.mm +34 -28
  72. package/Libraries/Blob/RCTFileReaderModule.mm +24 -17
  73. package/Libraries/Blob/React-RCTBlob.podspec +0 -1
  74. package/Libraries/Blob/URL.js +11 -9
  75. package/Libraries/BugReporting/NativeBugReporting.js +1 -0
  76. package/Libraries/BugReporting/getReactData.js +1 -1
  77. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +128 -0
  78. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +16 -16
  79. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +9 -7
  80. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -0
  81. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +1 -0
  82. package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +86 -0
  83. package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +58 -0
  84. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +7 -8
  85. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
  86. package/Libraries/Components/Button.d.ts +42 -0
  87. package/Libraries/Components/Button.flow.js +265 -0
  88. package/Libraries/Components/Button.js +62 -18
  89. package/Libraries/Components/Clipboard/Clipboard.d.ts +28 -0
  90. package/Libraries/Components/Clipboard/NativeClipboard.js +1 -0
  91. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +4 -2
  92. package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +92 -0
  93. package/Libraries/Components/{MaskedView/MaskedViewIOS.android.js → DatePicker/DatePickerIOS.flow.android.js} +3 -2
  94. package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +113 -0
  95. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +8 -7
  96. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +7 -6
  97. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +1 -0
  98. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +9 -8
  99. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +13 -14
  100. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +141 -0
  101. package/Libraries/Components/Keyboard/Keyboard.d.ts +109 -0
  102. package/Libraries/Components/Keyboard/Keyboard.js +7 -5
  103. package/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +46 -0
  104. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +16 -9
  105. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -0
  106. package/Libraries/Components/Pressable/Pressable.d.ts +167 -0
  107. package/Libraries/Components/Pressable/Pressable.js +73 -15
  108. package/Libraries/Components/Pressable/useAndroidRippleForView.js +6 -3
  109. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +3 -3
  110. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +83 -0
  111. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
  112. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +1 -1
  113. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +62 -0
  114. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +4 -4
  115. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +2 -2
  116. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +5 -6
  117. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +4 -4
  118. package/Libraries/Components/RefreshControl/RefreshControl.d.ts +87 -0
  119. package/Libraries/Components/RefreshControl/RefreshControl.js +4 -3
  120. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -3
  121. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +1 -1
  122. package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +24 -0
  123. package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +19 -0
  124. package/Libraries/Components/SafeAreaView/SafeAreaView.js +5 -4
  125. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -1
  126. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -1
  127. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -1
  128. package/Libraries/Components/ScrollView/ScrollView.d.ts +911 -0
  129. package/Libraries/Components/ScrollView/ScrollView.js +77 -38
  130. package/Libraries/Components/ScrollView/ScrollViewCommands.js +3 -3
  131. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +2 -1
  132. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +3 -3
  133. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +243 -269
  134. package/Libraries/Components/Slider/Slider.d.ts +132 -0
  135. package/Libraries/Components/Slider/Slider.js +9 -9
  136. package/Libraries/Components/Slider/SliderNativeComponent.js +4 -5
  137. package/Libraries/Components/Sound/NativeSoundManager.js +1 -0
  138. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +1 -0
  139. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +1 -0
  140. package/Libraries/Components/StatusBar/StatusBar.d.ts +138 -0
  141. package/Libraries/Components/StatusBar/StatusBar.js +7 -7
  142. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +10 -10
  143. package/Libraries/Components/Switch/Switch.d.ts +115 -0
  144. package/Libraries/Components/Switch/Switch.js +7 -7
  145. package/Libraries/Components/Switch/SwitchNativeComponent.js +9 -4
  146. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +40 -12
  147. package/Libraries/Components/TextInput/InputAccessoryView.d.ts +34 -0
  148. package/Libraries/Components/TextInput/InputAccessoryView.js +3 -4
  149. package/Libraries/Components/TextInput/InputAccessoryView.js.flow +25 -0
  150. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +1 -1
  151. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +3 -2
  152. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +3 -2
  153. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -1
  154. package/Libraries/Components/TextInput/TextInput.d.ts +840 -0
  155. package/Libraries/Components/TextInput/TextInput.flow.js +1057 -0
  156. package/Libraries/Components/TextInput/TextInput.js +344 -36
  157. package/Libraries/Components/TextInput/TextInputNativeCommands.js +2 -2
  158. package/Libraries/Components/TextInput/TextInputState.js +22 -5
  159. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -0
  160. package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +47 -0
  161. package/Libraries/Components/Touchable/Touchable.d.ts +90 -0
  162. package/Libraries/Components/Touchable/Touchable.flow.js +258 -0
  163. package/Libraries/Components/Touchable/Touchable.js +12 -12
  164. package/Libraries/Components/Touchable/TouchableBounce.js +44 -10
  165. package/Libraries/Components/Touchable/TouchableHighlight.d.ts +68 -0
  166. package/Libraries/Components/Touchable/TouchableHighlight.js +32 -9
  167. package/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +114 -0
  168. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +54 -20
  169. package/Libraries/Components/Touchable/TouchableOpacity.d.ts +109 -0
  170. package/Libraries/Components/Touchable/TouchableOpacity.js +54 -16
  171. package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +143 -0
  172. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +64 -10
  173. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +1 -1
  174. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
  175. package/Libraries/Components/View/ReactNativeStyleAttributes.js +13 -2
  176. package/Libraries/Components/View/View.d.ts +29 -0
  177. package/Libraries/Components/View/View.js +91 -8
  178. package/Libraries/Components/View/ViewAccessibility.d.ts +360 -0
  179. package/Libraries/Components/View/ViewAccessibility.js +70 -1
  180. package/Libraries/Components/View/ViewNativeComponent.js +3 -3
  181. package/Libraries/Components/View/ViewPropTypes.d.ts +245 -0
  182. package/Libraries/Components/View/ViewPropTypes.js +105 -13
  183. package/Libraries/Core/Devtools/openFileInEditor.js +3 -0
  184. package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
  185. package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
  186. package/Libraries/Core/ExceptionsManager.js +8 -0
  187. package/Libraries/Core/ExtendedError.js +11 -8
  188. package/Libraries/Core/InitializeCore.js +2 -1
  189. package/Libraries/Core/NativeExceptionsManager.js +3 -4
  190. package/Libraries/Core/RawEventEmitter.js +2 -1
  191. package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
  192. package/Libraries/Core/ReactNativeVersion.js +3 -3
  193. package/Libraries/Core/ReactNativeVersionCheck.js +1 -0
  194. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +1 -0
  195. package/Libraries/Core/Timers/JSTimers.js +13 -11
  196. package/Libraries/Core/Timers/NativeTiming.js +1 -0
  197. package/Libraries/Core/setUpBatchedBridge.js +1 -5
  198. package/Libraries/Core/setUpDeveloperTools.js +4 -6
  199. package/Libraries/Core/setUpRegeneratorRuntime.js +1 -1
  200. package/Libraries/Core/setUpTimers.js +1 -1
  201. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +70 -0
  202. package/Libraries/EventEmitter/NativeEventEmitter.js +1 -0
  203. package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +30 -0
  204. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -1
  205. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +32 -0
  206. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +1 -0
  207. package/Libraries/Events/EventPolyfill.js +1 -1
  208. package/Libraries/FBLazyVector/BUCK +2 -1
  209. package/Libraries/FBLazyVector/FBLazyVector/FBLazyIterator.h +9 -12
  210. package/Libraries/FBLazyVector/FBLazyVector/FBLazyVector.h +9 -6
  211. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +1 -0
  212. package/Libraries/Image/AssetSourceResolver.js +4 -6
  213. package/Libraries/Image/Image.android.js +63 -45
  214. package/Libraries/Image/Image.d.ts +322 -0
  215. package/Libraries/Image/Image.flow.js +64 -0
  216. package/Libraries/Image/Image.ios.js +55 -28
  217. package/Libraries/Image/ImageBackground.js +18 -7
  218. package/Libraries/Image/ImageBackground.js.flow +17 -0
  219. package/Libraries/Image/ImageInjection.js +2 -1
  220. package/Libraries/Image/ImageProps.js +88 -5
  221. package/Libraries/Image/ImageResizeMode.d.ts +49 -0
  222. package/Libraries/Image/ImageSource.d.ts +76 -0
  223. package/Libraries/Image/ImageSourceUtils.js +80 -0
  224. package/Libraries/Image/ImageUtils.js +21 -0
  225. package/Libraries/Image/ImageViewNativeComponent.js +8 -5
  226. package/Libraries/Image/ImageViewNativeComponent.js.flow +45 -0
  227. package/Libraries/Image/NativeImageEditor.js +1 -0
  228. package/Libraries/Image/NativeImageLoaderAndroid.js +1 -0
  229. package/Libraries/Image/NativeImageLoaderIOS.js +1 -0
  230. package/Libraries/Image/NativeImageStoreAndroid.js +1 -0
  231. package/Libraries/Image/NativeImageStoreIOS.js +1 -0
  232. package/Libraries/Image/RCTAnimatedImage.m +5 -2
  233. package/Libraries/Image/RCTDisplayWeakRefreshable.m +4 -2
  234. package/Libraries/Image/RCTGIFImageDecoder.mm +7 -4
  235. package/Libraries/Image/RCTImageBlurUtils.m +22 -17
  236. package/Libraries/Image/RCTImageCache.h +7 -7
  237. package/Libraries/Image/RCTImageCache.m +16 -21
  238. package/Libraries/Image/RCTImageDataDecoder.h +1 -1
  239. package/Libraries/Image/RCTImageEditingManager.mm +53 -44
  240. package/Libraries/Image/RCTImageLoader.h +7 -7
  241. package/Libraries/Image/RCTImageLoader.mm +415 -378
  242. package/Libraries/Image/RCTImageLoaderProtocol.h +14 -17
  243. package/Libraries/Image/RCTImageLoaderWithAttributionProtocol.h +2 -2
  244. package/Libraries/Image/RCTImageStoreManager.mm +30 -25
  245. package/Libraries/Image/RCTImageURLLoader.h +11 -8
  246. package/Libraries/Image/RCTImageURLLoaderWithAttribution.h +6 -4
  247. package/Libraries/Image/RCTImageURLLoaderWithAttribution.mm +3 -1
  248. package/Libraries/Image/RCTImageUtils.h +19 -18
  249. package/Libraries/Image/RCTImageUtils.m +61 -67
  250. package/Libraries/Image/RCTImageView.h +2 -2
  251. package/Libraries/Image/RCTImageView.mm +50 -43
  252. package/Libraries/Image/RCTImageViewManager.mm +45 -41
  253. package/Libraries/Image/RCTLocalAssetImageLoader.mm +12 -10
  254. package/Libraries/Image/RCTResizeMode.h +1 -1
  255. package/Libraries/Image/RCTResizeMode.m +12 -8
  256. package/Libraries/Image/RCTUIImageViewAnimated.m +21 -13
  257. package/Libraries/Image/TextInlineImageNativeComponent.js +4 -3
  258. package/Libraries/Image/TextInlineImageNativeComponent.js.flow +27 -0
  259. package/Libraries/Image/nativeImageSource.js +2 -2
  260. package/Libraries/Image/resolveAssetSource.js +5 -5
  261. package/Libraries/Inspector/BorderBox.js +1 -1
  262. package/Libraries/Inspector/BoxInspector.js +3 -4
  263. package/Libraries/Inspector/DevtoolsOverlay.js +213 -0
  264. package/Libraries/Inspector/ElementBox.js +4 -5
  265. package/Libraries/Inspector/ElementProperties.js +10 -11
  266. package/Libraries/Inspector/Inspector.js +22 -108
  267. package/Libraries/Inspector/InspectorOverlay.js +5 -5
  268. package/Libraries/Inspector/InspectorPanel.js +12 -10
  269. package/Libraries/Inspector/NetworkOverlay.js +7 -3
  270. package/Libraries/Inspector/PerformanceOverlay.js +3 -3
  271. package/Libraries/Inspector/StyleInspector.js +2 -2
  272. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +71 -0
  273. package/Libraries/Interaction/BridgeSpyStallHandler.js +1 -1
  274. package/Libraries/Interaction/InteractionManager.d.ts +74 -0
  275. package/Libraries/Interaction/InteractionManager.js +8 -8
  276. package/Libraries/Interaction/NativeFrameRateLogger.js +1 -0
  277. package/Libraries/Interaction/PanResponder.d.ts +202 -0
  278. package/Libraries/Interaction/PanResponder.flow.js +257 -0
  279. package/Libraries/Interaction/PanResponder.js +4 -3
  280. package/Libraries/JSInspector/JSInspector.js +0 -3
  281. package/Libraries/JSInspector/NetworkAgent.js +3 -3
  282. package/Libraries/LayoutAnimation/LayoutAnimation.d.ts +84 -0
  283. package/Libraries/LayoutAnimation/LayoutAnimation.js +4 -3
  284. package/Libraries/Linking/Linking.d.ts +61 -0
  285. package/Libraries/Linking/Linking.js +3 -2
  286. package/Libraries/Linking/NativeIntentAndroid.js +1 -0
  287. package/Libraries/Linking/NativeLinkingManager.js +1 -0
  288. package/Libraries/LinkingIOS/RCTLinkingManager.h +5 -5
  289. package/Libraries/LinkingIOS/RCTLinkingManager.mm +75 -63
  290. package/Libraries/Lists/CellRenderMask.js +13 -3
  291. package/Libraries/Lists/ChildListCollection.js +72 -0
  292. package/Libraries/Lists/FillRateHelper.js +28 -17
  293. package/Libraries/Lists/FlatList.d.ts +292 -0
  294. package/Libraries/Lists/FlatList.js +70 -70
  295. package/Libraries/Lists/FlatList.js.flow +115 -0
  296. package/Libraries/Lists/SectionList.d.ts +300 -0
  297. package/Libraries/Lists/SectionList.js +5 -5
  298. package/Libraries/Lists/SectionListModern.js +6 -6
  299. package/Libraries/Lists/StateSafePureComponent.js +85 -0
  300. package/Libraries/Lists/ViewabilityHelper.js +33 -12
  301. package/Libraries/Lists/VirtualizeUtils.js +17 -13
  302. package/Libraries/Lists/VirtualizedList.d.ts +317 -0
  303. package/Libraries/Lists/VirtualizedList.js +548 -890
  304. package/Libraries/Lists/VirtualizedListCellRenderer.js +259 -0
  305. package/Libraries/Lists/VirtualizedListContext.js +7 -48
  306. package/Libraries/Lists/VirtualizedListProps.js +279 -0
  307. package/Libraries/Lists/VirtualizedSectionList.js +6 -3
  308. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  309. package/Libraries/LogBox/Data/LogBoxData.js +9 -8
  310. package/Libraries/LogBox/Data/LogBoxLog.js +5 -5
  311. package/Libraries/LogBox/Data/LogBoxSymbolication.js +4 -4
  312. package/Libraries/LogBox/Data/parseLogBoxLog.js +5 -3
  313. package/Libraries/LogBox/LogBox.d.ts +28 -0
  314. package/Libraries/LogBox/LogBox.js +11 -11
  315. package/Libraries/LogBox/LogBoxInspectorContainer.js +5 -3
  316. package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
  317. package/Libraries/LogBox/UI/AnsiHighlight.js +5 -3
  318. package/Libraries/LogBox/UI/LogBoxButton.js +6 -5
  319. package/Libraries/LogBox/UI/LogBoxInspector.js +6 -6
  320. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +9 -8
  321. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +3 -3
  322. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +7 -6
  323. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +6 -5
  324. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +7 -6
  325. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
  326. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -3
  327. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -5
  328. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +5 -5
  329. package/Libraries/LogBox/UI/LogBoxMessage.js +3 -3
  330. package/Libraries/LogBox/UI/LogBoxNotification.js +6 -5
  331. package/Libraries/Modal/Modal.d.ts +104 -0
  332. package/Libraries/Modal/Modal.js +14 -14
  333. package/Libraries/Modal/NativeModalManager.js +1 -0
  334. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -3
  335. package/Libraries/NativeAnimation/Drivers/RCTDecayAnimation.h +1 -1
  336. package/Libraries/NativeAnimation/Drivers/RCTDecayAnimation.m +6 -9
  337. package/Libraries/NativeAnimation/Drivers/RCTEventAnimation.h +1 -2
  338. package/Libraries/NativeAnimation/Drivers/RCTEventAnimation.m +2 -4
  339. package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.h +1 -1
  340. package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.m +14 -21
  341. package/Libraries/NativeAnimation/Drivers/RCTSpringAnimation.h +1 -1
  342. package/Libraries/NativeAnimation/Drivers/RCTSpringAnimation.m +8 -22
  343. package/Libraries/NativeAnimation/Nodes/RCTAdditionAnimatedNode.m +1 -2
  344. package/Libraries/NativeAnimation/Nodes/RCTAnimatedNode.h +2 -3
  345. package/Libraries/NativeAnimation/Nodes/RCTAnimatedNode.m +3 -5
  346. package/Libraries/NativeAnimation/Nodes/RCTColorAnimatedNode.m +2 -4
  347. package/Libraries/NativeAnimation/Nodes/RCTDiffClampAnimatedNode.m +7 -4
  348. package/Libraries/NativeAnimation/Nodes/RCTDivisionAnimatedNode.m +1 -2
  349. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.m +14 -20
  350. package/Libraries/NativeAnimation/Nodes/RCTMultiplicationAnimatedNode.m +1 -2
  351. package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +13 -16
  352. package/Libraries/NativeAnimation/Nodes/RCTStyleAnimatedNode.m +5 -7
  353. package/Libraries/NativeAnimation/Nodes/RCTSubtractionAnimatedNode.h +0 -1
  354. package/Libraries/NativeAnimation/Nodes/RCTSubtractionAnimatedNode.m +1 -3
  355. package/Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.h +0 -1
  356. package/Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.m +3 -8
  357. package/Libraries/NativeAnimation/Nodes/RCTTransformAnimatedNode.m +4 -6
  358. package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.m +1 -2
  359. package/Libraries/NativeAnimation/RCTAnimationUtils.h +14 -12
  360. package/Libraries/NativeAnimation/RCTAnimationUtils.m +15 -19
  361. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.h +6 -1
  362. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +80 -72
  363. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +11 -20
  364. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.m +55 -64
  365. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.h +5 -1
  366. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +68 -78
  367. package/Libraries/NativeComponent/BaseViewConfig.android.js +27 -2
  368. package/Libraries/NativeComponent/BaseViewConfig.ios.js +8 -3
  369. package/Libraries/NativeComponent/NativeComponentRegistry.js +5 -4
  370. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -0
  371. package/Libraries/NativeComponent/StaticViewConfigValidator.js +1 -1
  372. package/Libraries/NativeComponent/ViewConfig.js +1 -0
  373. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +1 -0
  374. package/Libraries/NativeModules/specs/NativeDevMenu.js +1 -0
  375. package/Libraries/NativeModules/specs/NativeDevSettings.js +1 -0
  376. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +1 -0
  377. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +1 -0
  378. package/Libraries/NativeModules/specs/NativeLogBox.js +3 -2
  379. package/Libraries/NativeModules/specs/NativeRedBox.js +1 -0
  380. package/Libraries/NativeModules/specs/NativeSourceCode.js +1 -0
  381. package/Libraries/Network/NativeNetworkingAndroid.js +1 -0
  382. package/Libraries/Network/NativeNetworkingIOS.js +1 -0
  383. package/Libraries/Network/RCTDataRequestHandler.mm +8 -11
  384. package/Libraries/Network/RCTFileRequestHandler.mm +10 -16
  385. package/Libraries/Network/RCTHTTPRequestHandler.h +4 -3
  386. package/Libraries/Network/RCTHTTPRequestHandler.mm +19 -23
  387. package/Libraries/Network/RCTNetworkTask.mm +2 -3
  388. package/Libraries/Network/RCTNetworking.android.js +4 -3
  389. package/Libraries/Network/RCTNetworking.ios.js +3 -2
  390. package/Libraries/Network/RCTNetworking.mm +172 -157
  391. package/Libraries/Network/convertRequestBody.js +1 -2
  392. package/Libraries/NewAppScreen/components/DebugInstructions.js +4 -1
  393. package/Libraries/NewAppScreen/components/Header.js +6 -2
  394. package/Libraries/NewAppScreen/components/HermesBadge.js +6 -2
  395. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +8 -9
  396. package/Libraries/NewAppScreen/components/ReloadInstructions.js +4 -1
  397. package/Libraries/NewAppScreen/index.js +1 -1
  398. package/Libraries/Performance/NativeJSCSamplingProfiler.js +1 -0
  399. package/Libraries/Performance/QuickPerformanceLogger.js +34 -10
  400. package/Libraries/Performance/Systrace.d.ts +66 -0
  401. package/Libraries/Performance/Systrace.js +110 -195
  402. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
  403. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +115 -0
  404. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +5 -4
  405. package/Libraries/Pressability/Pressability.js +12 -10
  406. package/Libraries/Pressability/PressabilityDebug.js +2 -2
  407. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
  408. package/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +275 -0
  409. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +19 -14
  410. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.h +2 -1
  411. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +142 -103
  412. package/Libraries/RCTRequired/BUCK +2 -1
  413. package/Libraries/RCTRequired/RCTRequired/RCTRequired.h +31 -18
  414. package/Libraries/ReactNative/AppContainer.js +17 -7
  415. package/Libraries/ReactNative/AppRegistry.d.ts +68 -0
  416. package/Libraries/ReactNative/AppRegistry.js +11 -14
  417. package/Libraries/ReactNative/BridgelessUIManager.js +3 -2
  418. package/Libraries/ReactNative/FabricUIManager.js +3 -3
  419. package/Libraries/ReactNative/I18nManager.d.ts +25 -0
  420. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +1 -0
  421. package/Libraries/ReactNative/NativeI18nManager.js +1 -0
  422. package/Libraries/ReactNative/NativeUIManager.js +1 -0
  423. package/Libraries/ReactNative/PaperUIManager.js +2 -2
  424. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +9 -0
  425. package/Libraries/ReactNative/RendererImplementation.js +112 -0
  426. package/Libraries/ReactNative/RendererProxy.d.ts +20 -0
  427. package/Libraries/ReactNative/RendererProxy.js +26 -0
  428. package/Libraries/ReactNative/RootTag.js +0 -1
  429. package/Libraries/ReactNative/UIManager.d.ts +157 -0
  430. package/Libraries/ReactNative/UIManager.js +1 -1
  431. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +1 -0
  432. package/Libraries/ReactNative/renderApplication.js +38 -20
  433. package/Libraries/ReactNative/requireNativeComponent.d.ts +23 -0
  434. package/Libraries/ReactNative/requireNativeComponent.js +2 -2
  435. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +10 -9
  436. package/Libraries/Renderer/README.md +1 -1
  437. package/Libraries/Renderer/REVISION +1 -1
  438. package/Libraries/Renderer/implementations/ReactFabric-dev.js +312 -217
  439. package/Libraries/Renderer/implementations/ReactFabric-prod.js +212 -177
  440. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +248 -213
  441. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +311 -218
  442. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +226 -196
  443. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +262 -232
  444. package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +149 -0
  445. package/Libraries/Renderer/shims/ReactFabric.js +2 -2
  446. package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -2
  447. package/Libraries/Renderer/shims/ReactNative.js +2 -2
  448. package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +141 -0
  449. package/Libraries/Renderer/shims/ReactNativeTypes.js +23 -22
  450. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +8 -8
  451. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  452. package/Libraries/Settings/NativeSettingsManager.js +1 -0
  453. package/Libraries/Settings/RCTSettingsManager.mm +10 -12
  454. package/Libraries/Settings/Settings.d.ts +18 -0
  455. package/Libraries/Share/NativeShareModule.js +1 -0
  456. package/Libraries/Share/Share.d.ts +80 -0
  457. package/Libraries/Share/Share.js +7 -5
  458. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
  459. package/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +18 -0
  460. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  461. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.d.ts +25 -0
  462. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -0
  463. package/Libraries/StyleSheet/StyleSheet.d.ts +156 -0
  464. package/Libraries/StyleSheet/StyleSheet.js +9 -10
  465. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +332 -0
  466. package/Libraries/StyleSheet/StyleSheetTypes.js +101 -24
  467. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +2 -2
  468. package/Libraries/StyleSheet/normalizeColor.js +3 -3
  469. package/Libraries/StyleSheet/private/_TransformStyle.js +26 -24
  470. package/Libraries/StyleSheet/processAspectRatio.js +53 -0
  471. package/Libraries/StyleSheet/processColor.d.ts +16 -0
  472. package/Libraries/StyleSheet/processColor.js +3 -4
  473. package/Libraries/StyleSheet/processColorArray.js +1 -0
  474. package/Libraries/StyleSheet/processFontVariant.js +30 -0
  475. package/Libraries/StyleSheet/processTransform.js +114 -105
  476. package/Libraries/StyleSheet/splitLayoutProps.js +5 -0
  477. package/Libraries/SurfaceBackedComponent/RCTSurfaceBackedComponent.mm +9 -12
  478. package/Libraries/SurfaceBackedComponent/RCTSurfaceBackedComponentState.h +1 -1
  479. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.mm +9 -14
  480. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentController.mm +16 -12
  481. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentOptions.h +1 -1
  482. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentState.h +2 -3
  483. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentState.mm +3 -8
  484. package/Libraries/Text/BaseText/RCTBaseTextShadowView.h +4 -2
  485. package/Libraries/Text/BaseText/RCTBaseTextShadowView.m +13 -12
  486. package/Libraries/Text/BaseText/RCTBaseTextViewManager.m +2 -0
  487. package/Libraries/Text/RCTConvert+Text.m +16 -14
  488. package/Libraries/Text/RCTTextAttributes.h +3 -0
  489. package/Libraries/Text/RCTTextAttributes.m +75 -54
  490. package/Libraries/Text/RawText/RCTRawTextShadowView.m +2 -1
  491. package/Libraries/Text/Text/NSTextStorage+FontScaling.m +22 -42
  492. package/Libraries/Text/Text/RCTDynamicTypeRamp.h +37 -0
  493. package/Libraries/Text/Text/RCTDynamicTypeRamp.m +82 -0
  494. package/Libraries/Text/Text/RCTTextShadowView.m +152 -175
  495. package/Libraries/Text/Text/RCTTextView.m +38 -40
  496. package/Libraries/Text/Text/RCTTextViewManager.m +7 -8
  497. package/Libraries/Text/Text.d.ts +209 -0
  498. package/Libraries/Text/Text.js +94 -12
  499. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.m +10 -23
  500. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.m +1 -1
  501. package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +1 -1
  502. package/Libraries/Text/TextInput/Multiline/RCTUITextView.m +18 -12
  503. package/Libraries/Text/TextInput/RCTBackedTextInputDelegate.h +10 -6
  504. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.h +1 -1
  505. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.m +22 -14
  506. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +1 -2
  507. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.m +37 -47
  508. package/Libraries/Text/TextInput/RCTBaseTextInputView.h +2 -3
  509. package/Libraries/Text/TextInput/RCTBaseTextInputView.m +177 -155
  510. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.m +19 -17
  511. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.m +1 -1
  512. package/Libraries/Text/TextInput/RCTInputAccessoryView.m +2 -3
  513. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.m +1 -2
  514. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.m +3 -4
  515. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.m +1 -2
  516. package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +1 -1
  517. package/Libraries/Text/TextInput/Singleline/RCTUITextField.m +7 -5
  518. package/Libraries/Text/TextNativeComponent.js +49 -41
  519. package/Libraries/Text/TextProps.js +64 -7
  520. package/{React/Views/RCTMaskedViewManager.h → Libraries/TurboModule/RCTExport.d.ts} +6 -6
  521. package/Libraries/TurboModule/TurboModuleRegistry.d.ts +15 -0
  522. package/Libraries/TurboModule/TurboModuleRegistry.js +3 -1
  523. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +1 -0
  524. package/Libraries/TypeSafety/RCTConvertHelpers.h +22 -12
  525. package/Libraries/TypeSafety/RCTConvertHelpers.mm +2 -2
  526. package/Libraries/TypeSafety/RCTTypedModuleConstants.h +7 -5
  527. package/Libraries/TypeSafety/RCTTypedModuleConstants.mm +6 -4
  528. package/Libraries/Types/CoreEventTypes.d.ts +263 -0
  529. package/Libraries/Types/CoreEventTypes.js +2 -1
  530. package/Libraries/Utilities/AcessibilityMapping.js +154 -0
  531. package/Libraries/Utilities/Appearance.d.ts +43 -0
  532. package/Libraries/Utilities/Appearance.js +3 -3
  533. package/Libraries/Utilities/BackHandler.android.js +3 -5
  534. package/Libraries/Utilities/BackHandler.d.ts +38 -0
  535. package/Libraries/Utilities/DevSettings.d.ts +32 -0
  536. package/Libraries/Utilities/DevSettings.js +4 -2
  537. package/Libraries/Utilities/Dimensions.d.ts +79 -0
  538. package/Libraries/Utilities/Dimensions.js +2 -2
  539. package/Libraries/Utilities/GlobalPerformanceLogger.js +2 -1
  540. package/Libraries/Utilities/HMRClient.js +23 -8
  541. package/Libraries/Utilities/LoadingView.ios.js +1 -1
  542. package/Libraries/Utilities/NativeAppearance.js +1 -0
  543. package/Libraries/Utilities/NativeDevLoadingView.js +1 -0
  544. package/Libraries/Utilities/NativeDevSplitBundleLoader.js +1 -0
  545. package/Libraries/Utilities/NativeDeviceInfo.js +1 -0
  546. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +1 -0
  547. package/Libraries/Utilities/NativePlatformConstantsIOS.js +1 -0
  548. package/Libraries/Utilities/PerformanceLoggerContext.js +3 -2
  549. package/Libraries/Utilities/PixelRatio.d.ts +64 -0
  550. package/Libraries/Utilities/PixelRatio.js.flow +21 -0
  551. package/Libraries/Utilities/Platform.android.js +11 -5
  552. package/Libraries/Utilities/Platform.d.ts +102 -0
  553. package/Libraries/Utilities/Platform.ios.js +12 -5
  554. package/Libraries/Utilities/PolyfillFunctions.js +1 -1
  555. package/Libraries/Utilities/ReactNativeTestTools.js +9 -15
  556. package/Libraries/Utilities/codegenNativeCommands.js +1 -10
  557. package/Libraries/Utilities/codegenNativeComponent.js +4 -1
  558. package/Libraries/Utilities/createPerformanceLogger.js +7 -8
  559. package/Libraries/Utilities/differ/deepDiffer.js +1 -1
  560. package/Libraries/Utilities/groupByEveryN.js +1 -1
  561. package/Libraries/Utilities/stringifySafe.js +3 -1
  562. package/Libraries/Utilities/useColorScheme.js +3 -2
  563. package/Libraries/Utilities/useRefEffect.js +1 -1
  564. package/Libraries/Vibration/NativeVibration.js +1 -0
  565. package/Libraries/Vibration/RCTVibration.mm +5 -5
  566. package/Libraries/Vibration/Vibration.d.ts +43 -0
  567. package/Libraries/Vibration/Vibration.js +1 -0
  568. package/Libraries/WebPerformance/NativePerformanceObserver.cpp +42 -0
  569. package/Libraries/WebPerformance/NativePerformanceObserver.h +64 -0
  570. package/Libraries/WebPerformance/NativePerformanceObserver.js +41 -0
  571. package/Libraries/WebPerformance/PerformanceObserver.js +223 -0
  572. package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
  573. package/Libraries/WebSocket/RCTReconnectingWebSocket.m +5 -2
  574. package/Libraries/WebSocket/RCTSRWebSocket.h +20 -16
  575. package/Libraries/WebSocket/RCTSRWebSocket.m +293 -187
  576. package/Libraries/WebSocket/WebSocket.js +11 -3
  577. package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
  578. package/Libraries/Wrapper/Example/RCTWrapperExampleView.m +5 -12
  579. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.m +2 -1
  580. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +4 -5
  581. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.m +2 -3
  582. package/Libraries/Wrapper/RCTWrapper.h +50 -48
  583. package/Libraries/Wrapper/RCTWrapperShadowView.m +9 -8
  584. package/Libraries/Wrapper/RCTWrapperView.m +1 -4
  585. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.m +1 -2
  586. package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +19 -0
  587. package/Libraries/YellowBox/YellowBoxDeprecated.js +2 -3
  588. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +2 -1
  589. package/Libraries/vendor/core/ErrorUtils.d.ts +15 -0
  590. package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
  591. package/README.md +2 -2
  592. package/React/AppSetup/RCTAppSetupUtils.h +6 -2
  593. package/React/AppSetup/RCTAppSetupUtils.mm +10 -8
  594. package/React/Base/RCTAssert.h +4 -4
  595. package/React/Base/RCTBridge.h +3 -107
  596. package/React/Base/RCTBridge.m +0 -18
  597. package/React/Base/RCTBridgeConstants.h +71 -0
  598. package/React/Base/RCTBridgeConstants.m +18 -0
  599. package/React/Base/RCTBridgeModule.h +4 -47
  600. package/React/Base/RCTBundleManager.h +23 -0
  601. package/React/Base/RCTBundleManager.m +1 -1
  602. package/React/Base/RCTConstants.h +52 -4
  603. package/React/Base/RCTConstants.m +24 -13
  604. package/React/Base/RCTConvert.h +3 -0
  605. package/React/Base/RCTConvert.m +29 -1
  606. package/React/Base/RCTKeyCommands.m +1 -1
  607. package/React/Base/RCTModuleData.mm +1 -0
  608. package/React/Base/RCTModuleMethod.mm +1 -1
  609. package/React/Base/RCTModuleRegistry.m +3 -1
  610. package/React/Base/RCTTurboModuleRegistry.h +29 -0
  611. package/React/Base/RCTVersion.m +3 -3
  612. package/React/Base/Surface/RCTSurface.mm +1 -0
  613. package/React/CoreModules/BUCK +6 -5
  614. package/React/CoreModules/CoreModulesPlugins.h +1 -1
  615. package/React/CoreModules/CoreModulesPlugins.mm +1 -1
  616. package/React/CoreModules/RCTAlertController.m +5 -0
  617. package/React/CoreModules/RCTAlertManager.mm +32 -26
  618. package/React/CoreModules/RCTDevLoadingView.mm +1 -0
  619. package/React/CoreModules/RCTDevSettings.mm +1 -0
  620. package/React/CoreModules/RCTEventDispatcher.mm +6 -2
  621. package/React/CoreModules/RCTExceptionsManager.h +4 -1
  622. package/React/CoreModules/RCTExceptionsManager.mm +4 -12
  623. package/React/CoreModules/RCTRedBox.mm +7 -1
  624. package/React/CxxBridge/RCTCxxBridge.mm +2 -1
  625. package/React/CxxModule/RCTNativeModule.mm +15 -0
  626. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -0
  627. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -0
  628. package/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.mm +0 -1
  629. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +7 -2
  630. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +23 -5
  631. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +15 -0
  632. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +1 -5
  633. package/React/Fabric/Mounting/RCTComponentViewRegistry.h +0 -5
  634. package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +0 -39
  635. package/React/Fabric/Mounting/RCTMountingManager.mm +1 -4
  636. package/React/Fabric/RCTScheduler.mm +0 -9
  637. package/React/Fabric/RCTSurfacePresenter.h +2 -1
  638. package/React/Fabric/RCTSurfacePresenter.mm +17 -12
  639. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +3 -1
  640. package/React/Fabric/RCTSurfaceTouchHandler.mm +290 -105
  641. package/React/Fabric/Utils/RCTReactTaggedView.h +34 -0
  642. package/React/Fabric/Utils/RCTReactTaggedView.mm +55 -0
  643. package/React/Profiler/RCTProfile.h +20 -0
  644. package/React/Tests/Mounting/RCTComponentViewRegistryTests.mm +1 -0
  645. package/React/Views/RCTBorderCurve.h +13 -0
  646. package/React/Views/RCTComponentData.m +1 -0
  647. package/React/Views/RCTFont.mm +80 -0
  648. package/React/Views/RCTShadowView.h +3 -0
  649. package/React/Views/RCTShadowView.m +14 -0
  650. package/React/Views/RCTView.h +6 -0
  651. package/React/Views/RCTView.m +18 -2
  652. package/React/Views/RCTViewManager.m +18 -0
  653. package/React/Views/RCTViewUtils.h +1 -0
  654. package/React-Core.podspec +22 -6
  655. package/ReactAndroid/Android-prebuilt.mk +10 -2
  656. package/ReactAndroid/build.gradle +245 -109
  657. package/ReactAndroid/cmake-utils/ReactNative-application.cmake +75 -17
  658. package/ReactAndroid/cmake-utils/default-app-setup/CMakeLists.txt +31 -0
  659. package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +88 -0
  660. package/ReactAndroid/cmake-utils/folly-flags.cmake +22 -0
  661. package/ReactAndroid/external-artifacts/.npmignore +3 -0
  662. package/ReactAndroid/external-artifacts/build.gradle +41 -0
  663. package/ReactAndroid/gradle.properties +6 -9
  664. package/ReactAndroid/hermes-engine/build.gradle +16 -26
  665. package/ReactAndroid/publish.gradle +87 -0
  666. package/ReactAndroid/src/main/java/com/facebook/debug/holder/BUCK +0 -1
  667. package/ReactAndroid/src/main/java/com/facebook/debug/tags/BUCK +0 -1
  668. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/BUCK +2 -30
  669. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/BUCK +2 -22
  670. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +0 -2
  671. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +0 -2
  672. package/ReactAndroid/src/main/java/com/facebook/react/JSEngineResolutionAlgorithm.java +18 -0
  673. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +31 -31
  674. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +15 -39
  675. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +8 -12
  676. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +66 -3
  677. package/ReactAndroid/src/main/java/com/facebook/react/TurboReactPackage.java +3 -1
  678. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +0 -2
  679. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.java +6 -1
  680. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +2 -24
  681. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +43 -38
  682. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BUCK +0 -4
  683. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +2 -11
  684. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +1 -1
  685. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +0 -2
  686. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +1 -3
  687. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +10 -0
  688. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +22 -1
  689. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +2 -0
  690. package/ReactAndroid/src/main/java/com/facebook/react/common/network/BUCK +0 -1
  691. package/ReactAndroid/src/main/java/com/facebook/react/config/BUCK +0 -1
  692. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +12 -32
  693. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultComponentsRegistry.kt +35 -0
  694. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultJSIModulePackage.kt +58 -0
  695. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +49 -0
  696. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +46 -0
  697. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +71 -0
  698. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultTurboModuleManagerDelegate.kt +33 -0
  699. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +0 -4
  700. package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +1 -3
  701. package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +24 -2
  702. package/ReactAndroid/src/main/java/com/facebook/react/fabric/CoreComponentsRegistry.java +1 -2
  703. package/ReactAndroid/src/main/java/com/facebook/react/fabric/CppComponentRegistry.java +28 -0
  704. package/ReactAndroid/src/main/java/com/facebook/react/fabric/CppViewMutationsWrapper.java +47 -0
  705. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +14 -7
  706. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +4 -8
  707. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +18 -54
  708. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +19 -5
  709. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/BUCK +2 -25
  710. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/BUCK +0 -1
  711. package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/BUCK +0 -1
  712. package/ReactAndroid/src/main/java/com/facebook/react/module/model/BUCK +0 -1
  713. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/BUCK +0 -1
  714. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +0 -2
  715. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +0 -2
  716. package/ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/BUCK +0 -1
  717. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +0 -1
  718. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -3
  719. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +0 -2
  720. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +0 -2
  721. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/BUCK +0 -1
  722. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/BUCK +0 -1
  723. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +0 -2
  724. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +0 -3
  725. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +0 -2
  726. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +0 -2
  727. package/ReactAndroid/src/main/java/com/facebook/react/modules/fabric/BUCK +0 -1
  728. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/BUCK +0 -2
  729. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +0 -2
  730. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +0 -2
  731. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +0 -2
  732. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +0 -2
  733. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +12 -21
  734. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +0 -1
  735. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +0 -1
  736. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +0 -2
  737. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +0 -2
  738. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java +2 -0
  739. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +0 -4
  740. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +3 -3
  741. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +0 -1
  742. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +0 -1
  743. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +0 -2
  744. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +11 -3
  745. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK +0 -2
  746. package/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK +0 -1
  747. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/BUCK +1 -2
  748. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +0 -3
  749. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -5
  750. package/ReactAndroid/src/main/java/com/facebook/react/surface/BUCK +0 -2
  751. package/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK +0 -2
  752. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +1 -3
  753. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK +0 -2
  754. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +1 -7
  755. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +48 -15
  756. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.java +3 -1
  757. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +3 -14
  758. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +277 -252
  759. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +24 -0
  760. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +6 -3
  761. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +6 -0
  762. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +16 -0
  763. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +0 -25
  764. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +3 -31
  765. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.java +6 -0
  766. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK +0 -2
  767. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/BUCK +0 -2
  768. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +18 -0
  769. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +172 -45
  770. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +101 -44
  771. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/BUCK +0 -2
  772. package/ReactAndroid/src/main/java/com/facebook/react/util/BUCK +0 -1
  773. package/ReactAndroid/src/main/java/com/facebook/react/util/RNLog.java +3 -3
  774. package/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +0 -2
  775. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +0 -2
  776. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayout.java +12 -0
  777. package/ReactAndroid/src/main/java/com/facebook/react/views/image/BUCK +1 -4
  778. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java +30 -30
  779. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK +0 -4
  780. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.java +9 -4
  781. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +0 -2
  782. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +15 -6
  783. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +0 -2
  784. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +0 -2
  785. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +1 -0
  786. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +22 -12
  787. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +0 -11
  788. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +0 -2
  789. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +1 -1
  790. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +0 -2
  791. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.java +12 -0
  792. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +0 -2
  793. package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +0 -2
  794. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +3 -7
  795. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.java +60 -0
  796. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +60 -0
  797. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +2 -25
  798. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +7 -25
  799. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +0 -2
  800. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +9 -5
  801. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +42 -12
  802. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +76 -21
  803. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/BUCK +0 -2
  804. package/ReactAndroid/src/main/java/com/facebook/react/views/view/BUCK +0 -2
  805. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferPropSetter.kt +25 -1
  806. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +4 -4
  807. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +1 -3
  808. package/ReactAndroid/src/main/java/com/facebook/systrace/BUCK +4 -1
  809. package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.java +22 -8
  810. package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.java +61 -8
  811. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +2 -0
  812. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDimension.java +2 -0
  813. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDirection.java +2 -0
  814. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +2 -0
  815. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaEdge.java +2 -0
  816. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +2 -0
  817. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaFlexDirection.java +2 -0
  818. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGutter.java +35 -0
  819. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +3 -2
  820. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.java +2 -0
  821. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureMode.java +2 -0
  822. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +3 -1
  823. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +4 -0
  824. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +10 -0
  825. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeType.java +2 -0
  826. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaOverflow.java +2 -0
  827. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPositionType.java +2 -0
  828. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPrintOptions.java +2 -0
  829. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +2 -0
  830. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaWrap.java +2 -0
  831. package/ReactAndroid/src/main/jni/CMakeLists.txt +20 -11
  832. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +23 -0
  833. package/ReactAndroid/src/main/jni/react/cxxcomponents/BUCK +44 -0
  834. package/ReactAndroid/src/main/jni/react/cxxcomponents/CMakeLists.txt +22 -0
  835. package/ReactAndroid/src/main/jni/react/cxxcomponents/Component.h +66 -0
  836. package/ReactAndroid/src/main/jni/react/cxxcomponents/ComponentManager.h +26 -0
  837. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/AsyncEventBeat.cpp +0 -0
  838. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/AsyncEventBeat.h +0 -0
  839. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/BUCK +3 -3
  840. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/Binding.cpp +37 -59
  841. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/Binding.h +5 -9
  842. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/CMakeLists.txt +1 -0
  843. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ComponentFactory.cpp +0 -0
  844. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ComponentFactory.h +0 -0
  845. package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.cpp +51 -0
  846. package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.h +47 -0
  847. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/CoreComponentsRegistry.cpp +0 -0
  848. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/CoreComponentsRegistry.h +0 -0
  849. package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.cpp +73 -0
  850. package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.h +64 -0
  851. package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.cpp +100 -0
  852. package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.h +39 -0
  853. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventBeatManager.cpp +0 -0
  854. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventBeatManager.h +0 -0
  855. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventEmitterWrapper.cpp +0 -0
  856. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventEmitterWrapper.h +0 -0
  857. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountItem.cpp +4 -2
  858. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountItem.h +4 -1
  859. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountingManager.cpp +93 -55
  860. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountingManager.h +3 -4
  861. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JBackgroundExecutor.cpp +0 -0
  862. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JBackgroundExecutor.h +0 -0
  863. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JFabricUIManager.cpp +0 -0
  864. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JFabricUIManager.h +0 -0
  865. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/OnLoad.cpp +2 -0
  866. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ReactNativeConfigHolder.cpp +0 -0
  867. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ReactNativeConfigHolder.h +0 -0
  868. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/StateWrapperImpl.cpp +0 -0
  869. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/StateWrapperImpl.h +0 -0
  870. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/SurfaceHandlerBinding.cpp +0 -0
  871. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/SurfaceHandlerBinding.h +0 -0
  872. package/ReactAndroid/src/main/jni/react/fabric/viewPropConversions.h +215 -0
  873. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/.clang-tidy +1 -0
  874. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/BUCK +27 -0
  875. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/CMakeLists.txt +0 -0
  876. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/HermesMemoryDumper.h +0 -0
  877. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/HermesSamplingProfiler.cpp +0 -0
  878. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/HermesSamplingProfiler.h +0 -0
  879. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/OnLoad.cpp +0 -0
  880. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/BUCK +19 -0
  881. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/reactexecutor/CMakeLists.txt +0 -0
  882. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/reactexecutor/OnLoad.cpp +0 -0
  883. package/ReactAndroid/src/main/jni/react/jni/BUCK +3 -3
  884. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +11 -25
  885. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +2 -10
  886. package/ReactAndroid/src/main/jni/react/jni/JCallback.h +7 -0
  887. package/ReactAndroid/src/main/jni/react/jscexecutor/BUCK +22 -0
  888. package/ReactAndroid/src/main/{java/com/facebook → jni}/react/jscexecutor/CMakeLists.txt +0 -0
  889. package/ReactAndroid/src/main/{java/com/facebook → jni}/react/jscexecutor/OnLoad.cpp +0 -0
  890. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/BUCK +0 -1
  891. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/CMakeLists.txt +0 -0
  892. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/.clang-tidy +0 -0
  893. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JReadableMapBuffer.cpp +0 -0
  894. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JReadableMapBuffer.h +0 -0
  895. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JWritableMapBuffer.cpp +0 -0
  896. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JWritableMapBuffer.h +0 -0
  897. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/OnLoad.cpp +0 -0
  898. package/ReactAndroid/src/main/jni/react/newarchdefaults/CMakeLists.txt +22 -0
  899. package/{template/android/app/src/main/jni/MainComponentsRegistry.cpp → ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp} +21 -16
  900. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h +47 -0
  901. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.cpp +60 -0
  902. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.h +53 -0
  903. package/ReactAndroid/src/main/jni/react/newarchdefaults/OnLoad.cpp +18 -0
  904. package/ReactAndroid/src/main/jni/react/perftests/BUCK +0 -1
  905. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/BUCK +0 -1
  906. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/BlobCollector.cpp +0 -0
  907. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/BlobCollector.h +0 -0
  908. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/CMakeLists.txt +0 -0
  909. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/OnLoad.cpp +0 -0
  910. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/BUCK +0 -1
  911. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/CMakeLists.txt +0 -0
  912. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/reactperflogger/.clang-tidy +1 -0
  913. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/reactperflogger/JNativeModulePerfLogger.h +0 -0
  914. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/reactperflogger/OnLoad.cpp +0 -0
  915. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/BUCK +1 -3
  916. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/CMakeLists.txt +0 -0
  917. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CallInvokerHolder.cpp +0 -0
  918. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CallInvokerHolder.h +0 -0
  919. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CompositeTurboModuleManagerDelegate.cpp +0 -0
  920. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CompositeTurboModuleManagerDelegate.h +0 -0
  921. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/OnLoad.cpp +0 -0
  922. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/TurboModuleManager.cpp +0 -0
  923. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/TurboModuleManager.h +0 -0
  924. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/TurboModuleManagerDelegate.h +0 -0
  925. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/BUCK +0 -2
  926. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/CMakeLists.txt +0 -0
  927. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/ComponentNameResolverManager.cpp +0 -0
  928. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/ComponentNameResolverManager.h +0 -0
  929. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/OnLoad.cpp +0 -0
  930. package/ReactAndroid/src/main/libraries/fbjni/BUCK +1 -1
  931. package/ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK +1 -1
  932. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +13 -22
  933. package/ReactCommon/React-Fabric.podspec +17 -4
  934. package/ReactCommon/ReactCommon.podspec +13 -4
  935. package/ReactCommon/butter/BUCK +4 -3
  936. package/ReactCommon/butter/CMakeLists.txt +3 -1
  937. package/ReactCommon/callinvoker/BUCK +1 -1
  938. package/ReactCommon/callinvoker/CMakeLists.txt +7 -1
  939. package/ReactCommon/cxxreact/BUCK +17 -11
  940. package/ReactCommon/cxxreact/CxxNativeModule.cpp +33 -25
  941. package/ReactCommon/cxxreact/JSBundleType.h +7 -4
  942. package/ReactCommon/cxxreact/JSExecutor.h +1 -2
  943. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +2 -2
  944. package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
  945. package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
  946. package/ReactCommon/cxxreact/SampleCxxModule.cpp +1 -1
  947. package/ReactCommon/cxxreact/SystraceSection.h +11 -1
  948. package/ReactCommon/hermes/React-hermes.podspec +9 -6
  949. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +11 -21
  950. package/ReactCommon/hermes/inspector/BUCK +4 -5
  951. package/ReactCommon/hermes/inspector/Inspector.cpp +1 -1
  952. package/ReactCommon/hermes/inspector/RuntimeAdapter.cpp +3 -8
  953. package/ReactCommon/hermes/inspector/RuntimeAdapter.h +4 -9
  954. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +87 -20
  955. package/ReactCommon/hermes/inspector/chrome/Connection.h +1 -1
  956. package/ReactCommon/hermes/inspector/chrome/ConnectionDemux.cpp +8 -19
  957. package/ReactCommon/hermes/inspector/chrome/ConnectionDemux.h +3 -2
  958. package/ReactCommon/hermes/inspector/chrome/MessageConverters.cpp +10 -0
  959. package/ReactCommon/hermes/inspector/chrome/MessageTypes.cpp +106 -1
  960. package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +49 -1
  961. package/ReactCommon/hermes/inspector/chrome/Registration.cpp +4 -4
  962. package/ReactCommon/hermes/inspector/chrome/Registration.h +9 -5
  963. package/ReactCommon/hermes/inspector/chrome/cli/main.cpp +5 -3
  964. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionDemuxTests.cpp +3 -5
  965. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +48 -0
  966. package/ReactCommon/hermes/inspector/chrome/tests/SyncConnection.cpp +1 -3
  967. package/ReactCommon/hermes/inspector/tests/InspectorTests.cpp +1 -3
  968. package/ReactCommon/hermes/inspector/tools/message_types.txt +2 -0
  969. package/ReactCommon/hermes/inspector/tools/run_msggen +3 -1
  970. package/ReactCommon/jserrorhandler/BUCK +30 -0
  971. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +107 -0
  972. package/ReactCommon/jserrorhandler/JsErrorHandler.h +39 -0
  973. package/ReactCommon/jsi/BUCK +3 -4
  974. package/ReactCommon/jsi/JSCRuntime.cpp +59 -0
  975. package/ReactCommon/jsi/React-jsc.podspec +41 -0
  976. package/ReactCommon/jsi/React-jsi.podspec +18 -23
  977. package/ReactCommon/{React-bridging.podspec → jsi/React-jsidynamic.podspec} +11 -11
  978. package/ReactCommon/jsi/jsi/JSIDynamic.cpp +7 -2
  979. package/ReactCommon/jsi/jsi/decorator.h +38 -0
  980. package/ReactCommon/jsi/jsi/jsi-inl.h +27 -0
  981. package/ReactCommon/jsi/jsi/jsi.cpp +18 -0
  982. package/ReactCommon/jsi/jsi/jsi.h +107 -0
  983. package/ReactCommon/jsiexecutor/BUCK +1 -2
  984. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -0
  985. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +1 -5
  986. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +0 -2
  987. package/ReactCommon/jsinspector/BUCK +1 -1
  988. package/ReactCommon/logger/BUCK +1 -1
  989. package/ReactCommon/logger/React-logger.podspec +1 -1
  990. package/ReactCommon/react/bridging/Array.h +19 -0
  991. package/ReactCommon/react/bridging/BUCK +2 -2
  992. package/ReactCommon/react/bridging/Base.h +1 -2
  993. package/ReactCommon/react/bridging/CMakeLists.txt +8 -1
  994. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +113 -0
  995. package/ReactCommon/react/config/BUCK +1 -3
  996. package/ReactCommon/react/config/CMakeLists.txt +2 -0
  997. package/ReactCommon/react/debug/BUCK +3 -4
  998. package/ReactCommon/react/debug/CMakeLists.txt +2 -0
  999. package/ReactCommon/react/nativemodule/core/BUCK +1 -3
  1000. package/ReactCommon/react/nativemodule/core/CMakeLists.txt +8 -1
  1001. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.h +2 -2
  1002. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +1 -0
  1003. package/ReactCommon/react/nativemodule/samples/BUCK +1 -1
  1004. package/ReactCommon/react/nativemodule/samples/platform/android/CMakeLists.txt +9 -1
  1005. package/ReactCommon/react/renderer/.clang-tidy +144 -0
  1006. package/ReactCommon/react/renderer/animations/BUCK +1 -6
  1007. package/ReactCommon/react/renderer/animations/CMakeLists.txt +8 -1
  1008. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +4 -6
  1009. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +26 -35
  1010. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +4 -6
  1011. package/ReactCommon/react/renderer/animations/utils.cpp +2 -4
  1012. package/ReactCommon/react/renderer/attributedstring/AttributedString.cpp +22 -5
  1013. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +13 -1
  1014. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.cpp +2 -4
  1015. package/ReactCommon/react/renderer/attributedstring/BUCK +3 -5
  1016. package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +8 -1
  1017. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +2 -4
  1018. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +14 -4
  1019. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -0
  1020. package/ReactCommon/react/renderer/attributedstring/conversions.h +134 -0
  1021. package/ReactCommon/react/renderer/attributedstring/primitives.h +30 -0
  1022. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringBoxTest.cpp +2 -4
  1023. package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +2 -4
  1024. package/ReactCommon/react/renderer/componentregistry/BUCK +1 -8
  1025. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +8 -1
  1026. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +3 -5
  1027. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -1
  1028. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +6 -13
  1029. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +3 -2
  1030. package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +2 -4
  1031. package/ReactCommon/react/renderer/componentregistry/native/BUCK +1 -7
  1032. package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +8 -1
  1033. package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.cpp +5 -7
  1034. package/ReactCommon/react/renderer/components/image/BUCK +1 -4
  1035. package/ReactCommon/react/renderer/components/image/CMakeLists.txt +8 -1
  1036. package/ReactCommon/react/renderer/components/image/ImageEventEmitter.cpp +2 -4
  1037. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +82 -41
  1038. package/ReactCommon/react/renderer/components/image/ImageProps.h +13 -7
  1039. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +2 -4
  1040. package/ReactCommon/react/renderer/components/image/ImageState.cpp +2 -4
  1041. package/ReactCommon/react/renderer/components/inputaccessory/BUCK +1 -1
  1042. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +3 -3
  1043. package/ReactCommon/react/renderer/components/modal/BUCK +2 -4
  1044. package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +8 -1
  1045. package/ReactCommon/react/renderer/components/modal/ModalHostViewShadowNode.cpp +2 -4
  1046. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.cpp +2 -4
  1047. package/ReactCommon/react/renderer/components/progressbar/BUCK +2 -5
  1048. package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +8 -1
  1049. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarMeasurementsManager.cpp +2 -4
  1050. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.cpp +3 -5
  1051. package/ReactCommon/react/renderer/components/root/BUCK +1 -5
  1052. package/ReactCommon/react/renderer/components/root/CMakeLists.txt +8 -1
  1053. package/ReactCommon/react/renderer/components/root/RootProps.cpp +4 -6
  1054. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -4
  1055. package/ReactCommon/react/renderer/components/safeareaview/BUCK +1 -1
  1056. package/ReactCommon/react/renderer/components/scrollview/BUCK +2 -5
  1057. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +8 -1
  1058. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +2 -4
  1059. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +180 -163
  1060. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.cpp +2 -4
  1061. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.cpp +2 -4
  1062. package/ReactCommon/react/renderer/components/slider/BUCK +2 -4
  1063. package/ReactCommon/react/renderer/components/slider/CMakeLists.txt +8 -1
  1064. package/ReactCommon/react/renderer/components/slider/SliderShadowNode.cpp +3 -5
  1065. package/ReactCommon/react/renderer/components/slider/SliderState.cpp +2 -4
  1066. package/ReactCommon/react/renderer/components/slider/platform/android/react/renderer/components/slider/SliderMeasurementsManager.cpp +2 -4
  1067. package/ReactCommon/react/renderer/components/switch/BUCK +1 -9
  1068. package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +2 -0
  1069. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchMeasurementsManager.cpp +2 -4
  1070. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.cpp +3 -5
  1071. package/ReactCommon/react/renderer/components/text/BUCK +1 -6
  1072. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +23 -24
  1073. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +0 -2
  1074. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +4 -6
  1075. package/ReactCommon/react/renderer/components/text/CMakeLists.txt +8 -1
  1076. package/ReactCommon/react/renderer/components/text/ParagraphEventEmitter.cpp +2 -4
  1077. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +84 -21
  1078. package/ReactCommon/react/renderer/components/text/ParagraphProps.h +3 -3
  1079. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +5 -6
  1080. package/ReactCommon/react/renderer/components/text/ParagraphState.cpp +2 -4
  1081. package/ReactCommon/react/renderer/components/text/ParagraphState.h +9 -0
  1082. package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +2 -4
  1083. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.cpp +2 -4
  1084. package/ReactCommon/react/renderer/components/text/TextProps.cpp +2 -4
  1085. package/ReactCommon/react/renderer/components/text/TextShadowNode.cpp +2 -4
  1086. package/ReactCommon/react/renderer/components/text/conversions.h +1 -9
  1087. package/ReactCommon/react/renderer/components/textinput/BUCK +2 -6
  1088. package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +8 -1
  1089. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +214 -66
  1090. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +59 -59
  1091. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +9 -11
  1092. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +24 -4
  1093. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.h +1 -3
  1094. package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +4 -10
  1095. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputEventEmitter.cpp +2 -4
  1096. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputEventEmitter.h +2 -2
  1097. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +2 -4
  1098. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputShadowNode.cpp +2 -4
  1099. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputState.cpp +4 -6
  1100. package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +20 -0
  1101. package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +10 -2
  1102. package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +4 -4
  1103. package/ReactCommon/react/renderer/components/unimplementedview/BUCK +1 -9
  1104. package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +8 -1
  1105. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +2 -4
  1106. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.cpp +2 -4
  1107. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewShadowNode.cpp +2 -4
  1108. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +134 -123
  1109. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +4 -1
  1110. package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.cpp +168 -0
  1111. package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.h +33 -0
  1112. package/ReactCommon/react/renderer/components/view/BUCK +3 -4
  1113. package/ReactCommon/react/renderer/components/view/CMakeLists.txt +8 -1
  1114. package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +9 -5
  1115. package/ReactCommon/react/renderer/components/view/PointerEvent.h +26 -0
  1116. package/ReactCommon/react/renderer/components/view/Touch.cpp +3 -5
  1117. package/ReactCommon/react/renderer/components/view/Touch.h +1 -1
  1118. package/ReactCommon/react/renderer/components/view/TouchEvent.cpp +3 -5
  1119. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +8 -4
  1120. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +2 -4
  1121. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +195 -179
  1122. package/ReactCommon/react/renderer/components/view/ViewProps.h +6 -0
  1123. package/ReactCommon/react/renderer/components/view/ViewPropsMapBuffer.cpp +202 -0
  1124. package/ReactCommon/react/renderer/components/view/ViewPropsMapBuffer.h +56 -0
  1125. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +8 -26
  1126. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +8 -9
  1127. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +38 -20
  1128. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +6 -1
  1129. package/ReactCommon/react/renderer/components/view/YogaStylablePropsMapBuffer.cpp +87 -0
  1130. package/ReactCommon/{hermes/inspector/chrome/AutoAttachUtils.h → react/renderer/components/view/YogaStylablePropsMapBuffer.h} +11 -11
  1131. package/ReactCommon/react/renderer/components/view/conversions.h +18 -0
  1132. package/ReactCommon/react/renderer/components/view/primitives.h +10 -0
  1133. package/ReactCommon/react/renderer/components/view/propsConversions.h +37 -17
  1134. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +2 -4
  1135. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +2 -4
  1136. package/ReactCommon/react/renderer/components/view/viewPropConversions.h +198 -0
  1137. package/ReactCommon/react/renderer/core/BUCK +8 -9
  1138. package/ReactCommon/react/renderer/core/BatchedEventQueue.cpp +2 -4
  1139. package/ReactCommon/react/renderer/core/CMakeLists.txt +9 -1
  1140. package/ReactCommon/react/renderer/core/ComponentDescriptor.cpp +2 -4
  1141. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +2 -1
  1142. package/ReactCommon/react/renderer/core/CoreFeatures.cpp +17 -0
  1143. package/ReactCommon/react/renderer/core/CoreFeatures.h +31 -0
  1144. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +2 -4
  1145. package/ReactCommon/react/renderer/core/EventBeat.cpp +2 -4
  1146. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +2 -4
  1147. package/ReactCommon/react/renderer/core/EventEmitter.cpp +3 -5
  1148. package/ReactCommon/react/renderer/core/EventQueue.cpp +3 -5
  1149. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +2 -4
  1150. package/ReactCommon/react/renderer/core/EventTarget.cpp +3 -5
  1151. package/ReactCommon/react/renderer/core/LayoutConstraints.cpp +2 -4
  1152. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +3 -5
  1153. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +96 -18
  1154. package/ReactCommon/react/renderer/core/Props.cpp +12 -15
  1155. package/ReactCommon/react/renderer/core/Props.h +8 -11
  1156. package/ReactCommon/react/renderer/core/PropsMacros.h +20 -6
  1157. package/ReactCommon/react/renderer/core/PropsMapBuffer.cpp +37 -0
  1158. package/ReactCommon/react/renderer/core/PropsMapBuffer.h +23 -0
  1159. package/ReactCommon/react/renderer/core/RawEvent.cpp +2 -4
  1160. package/ReactCommon/react/renderer/core/RawProps.cpp +5 -6
  1161. package/ReactCommon/react/renderer/core/RawProps.h +1 -1
  1162. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +4 -6
  1163. package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +2 -4
  1164. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +3 -5
  1165. package/ReactCommon/react/renderer/core/RawPropsParser.h +2 -2
  1166. package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +1 -1
  1167. package/ReactCommon/react/renderer/core/RawValue.h +10 -14
  1168. package/ReactCommon/react/renderer/core/Sealable.cpp +4 -6
  1169. package/ReactCommon/react/renderer/core/ShadowNode.cpp +6 -4
  1170. package/ReactCommon/react/renderer/core/ShadowNode.h +5 -0
  1171. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +3 -5
  1172. package/ReactCommon/react/renderer/core/ShadowNodeFamilyFragment.cpp +2 -4
  1173. package/ReactCommon/react/renderer/core/ShadowNodeFragment.cpp +2 -4
  1174. package/ReactCommon/react/renderer/core/ShadowNodeTraits.cpp +1 -3
  1175. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +18 -13
  1176. package/ReactCommon/react/renderer/core/State.cpp +2 -4
  1177. package/ReactCommon/react/renderer/core/UnbatchedEventQueue.cpp +2 -4
  1178. package/ReactCommon/react/renderer/core/propsConversions.h +17 -35
  1179. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +3 -3
  1180. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +372 -0
  1181. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +2 -2
  1182. package/ReactCommon/react/renderer/core/tests/TestComponent.h +4 -2
  1183. package/ReactCommon/react/renderer/core/tests/benchmarks/RawPropsBenchmark.cpp +2 -4
  1184. package/ReactCommon/react/renderer/debug/BUCK +1 -4
  1185. package/ReactCommon/react/renderer/debug/CMakeLists.txt +8 -1
  1186. package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +6 -8
  1187. package/ReactCommon/react/renderer/debug/DebugStringConvertibleItem.cpp +2 -4
  1188. package/ReactCommon/react/renderer/element/BUCK +1 -1
  1189. package/ReactCommon/react/renderer/element/ComponentBuilder.cpp +2 -4
  1190. package/ReactCommon/react/renderer/graphics/BUCK +2 -5
  1191. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +8 -1
  1192. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
  1193. package/ReactCommon/react/renderer/graphics/Transform.cpp +43 -17
  1194. package/ReactCommon/react/renderer/graphics/Transform.h +20 -5
  1195. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.cpp +4 -6
  1196. package/ReactCommon/react/renderer/graphics/tests/TransformTest.cpp +7 -0
  1197. package/ReactCommon/react/renderer/imagemanager/BUCK +1 -4
  1198. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +8 -1
  1199. package/ReactCommon/react/renderer/imagemanager/ImageManager.h +1 -1
  1200. package/ReactCommon/react/renderer/imagemanager/ImageResponse.cpp +2 -4
  1201. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +2 -4
  1202. package/ReactCommon/react/renderer/imagemanager/ImageTelemetry.cpp +2 -4
  1203. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageManager.cpp +6 -7
  1204. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequest.cpp +2 -4
  1205. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTImagePrimitivesConversions.h +14 -16
  1206. package/ReactCommon/react/renderer/leakchecker/BUCK +1 -1
  1207. package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +8 -1
  1208. package/ReactCommon/react/renderer/leakchecker/LeakChecker.cpp +4 -6
  1209. package/ReactCommon/react/renderer/leakchecker/LeakChecker.h +1 -1
  1210. package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.cpp +3 -6
  1211. package/ReactCommon/react/renderer/mapbuffer/BUCK +5 -6
  1212. package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +8 -1
  1213. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +28 -5
  1214. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +2 -0
  1215. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +35 -4
  1216. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +5 -0
  1217. package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +25 -0
  1218. package/ReactCommon/react/renderer/mounting/BUCK +2 -5
  1219. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +8 -1
  1220. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +15 -92
  1221. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +4 -6
  1222. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +1 -1
  1223. package/ReactCommon/react/renderer/mounting/MountingTransaction.cpp +2 -4
  1224. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +6 -8
  1225. package/ReactCommon/react/renderer/mounting/ShadowTree.h +4 -4
  1226. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.cpp +2 -4
  1227. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +5 -6
  1228. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +8 -9
  1229. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +4 -3
  1230. package/ReactCommon/react/renderer/mounting/StubView.cpp +4 -6
  1231. package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +2 -4
  1232. package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +2 -4
  1233. package/ReactCommon/react/renderer/mounting/stubs.cpp +2 -4
  1234. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +2 -4
  1235. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +2 -4
  1236. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +2 -4
  1237. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +6 -6
  1238. package/ReactCommon/react/renderer/runtimescheduler/BUCK +2 -1
  1239. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +8 -1
  1240. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +5 -6
  1241. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +4 -6
  1242. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +2 -4
  1243. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +6 -8
  1244. package/ReactCommon/react/renderer/runtimescheduler/Task.h +1 -1
  1245. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +45 -45
  1246. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +1 -1
  1247. package/ReactCommon/react/renderer/scheduler/BUCK +1 -5
  1248. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +8 -1
  1249. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +16 -36
  1250. package/ReactCommon/react/renderer/scheduler/Scheduler.h +1 -4
  1251. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +0 -8
  1252. package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +7 -0
  1253. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +10 -9
  1254. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +1 -1
  1255. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +2 -4
  1256. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.cpp +3 -5
  1257. package/ReactCommon/react/renderer/telemetry/BUCK +1 -5
  1258. package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +8 -1
  1259. package/ReactCommon/react/renderer/telemetry/SurfaceTelemetry.cpp +2 -4
  1260. package/ReactCommon/react/renderer/telemetry/TransactionTelemetry.cpp +2 -4
  1261. package/ReactCommon/react/renderer/templateprocessor/BUCK +3 -5
  1262. package/ReactCommon/react/renderer/templateprocessor/CMakeLists.txt +8 -1
  1263. package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.cpp +2 -4
  1264. package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.h +2 -2
  1265. package/ReactCommon/react/renderer/templateprocessor/tests/UITemplateProcessorTest.cpp +8 -9
  1266. package/ReactCommon/react/renderer/textlayoutmanager/BUCK +1 -5
  1267. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +8 -1
  1268. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.cpp +2 -4
  1269. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +4 -1
  1270. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +8 -72
  1271. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +1 -2
  1272. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +84 -8
  1273. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTTextPrimitivesConversions.h +46 -23
  1274. package/ReactCommon/react/renderer/timeline/BUCK +2 -5
  1275. package/ReactCommon/react/renderer/timeline/Timeline.cpp +7 -8
  1276. package/ReactCommon/react/renderer/timeline/TimelineController.cpp +3 -5
  1277. package/ReactCommon/react/renderer/timeline/TimelineFrame.cpp +2 -4
  1278. package/ReactCommon/react/renderer/timeline/TimelineHandler.cpp +3 -5
  1279. package/ReactCommon/react/renderer/timeline/TimelineHandler.h +2 -2
  1280. package/ReactCommon/react/renderer/timeline/TimelineSnapshot.cpp +2 -4
  1281. package/ReactCommon/react/renderer/uimanager/BUCK +2 -5
  1282. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +8 -1
  1283. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +13 -16
  1284. package/ReactCommon/react/renderer/uimanager/UIManager.h +1 -1
  1285. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +50 -54
  1286. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +1 -7
  1287. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +0 -9
  1288. package/ReactCommon/react/test_utils/BUCK +1 -1
  1289. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +6 -0
  1290. package/ReactCommon/react/utils/BUCK +2 -6
  1291. package/ReactCommon/react/utils/CMakeLists.txt +2 -0
  1292. package/ReactCommon/react/utils/ManagedObjectWrapper.h +1 -1
  1293. package/ReactCommon/react/utils/ManagedObjectWrapper.mm +1 -3
  1294. package/ReactCommon/reactperflogger/BUCK +1 -1
  1295. package/ReactCommon/reactperflogger/CMakeLists.txt +7 -1
  1296. package/ReactCommon/runtimeexecutor/BUCK +1 -1
  1297. package/ReactCommon/runtimeexecutor/CMakeLists.txt +7 -1
  1298. package/ReactCommon/yoga/CMakeLists.txt +7 -1
  1299. package/ReactCommon/yoga/yoga/CompactValue.h +49 -29
  1300. package/ReactCommon/yoga/yoga/Utils.cpp +4 -0
  1301. package/ReactCommon/yoga/yoga/YGEnums.cpp +14 -0
  1302. package/ReactCommon/yoga/yoga/YGEnums.h +31 -52
  1303. package/ReactCommon/yoga/yoga/YGMacros.h +43 -0
  1304. package/ReactCommon/yoga/yoga/YGNode.cpp +33 -0
  1305. package/ReactCommon/yoga/yoga/YGNode.h +11 -0
  1306. package/ReactCommon/yoga/yoga/YGNodePrint.cpp +14 -0
  1307. package/ReactCommon/yoga/yoga/YGStyle.cpp +1 -1
  1308. package/ReactCommon/yoga/yoga/YGStyle.h +5 -0
  1309. package/ReactCommon/yoga/yoga/Yoga.cpp +76 -29
  1310. package/ReactCommon/yoga/yoga/Yoga.h +7 -0
  1311. package/ReactCommon/yoga/yoga/event/event.h +3 -0
  1312. package/flow/jest.js +2 -2
  1313. package/flow-typed/npm/{react-dom_v16.x.x.js → react-dom_v17.x.x.js} +58 -31
  1314. package/flow-typed/npm/yargs_v17.x.x.js +341 -0
  1315. package/index.js +89 -55
  1316. package/interface.js +8 -0
  1317. package/jest/react-native-env.js +16 -0
  1318. package/jest/renderer.js +2 -2
  1319. package/jest/setup.js +5 -8
  1320. package/jest-preset.js +1 -1
  1321. package/package.json +56 -43
  1322. package/react.gradle +20 -16
  1323. package/scripts/cocoapods/codegen.rb +4 -1
  1324. package/scripts/cocoapods/codegen_utils.rb +30 -15
  1325. package/scripts/cocoapods/fabric.rb +8 -11
  1326. package/scripts/cocoapods/flipper.rb +1 -1
  1327. package/scripts/cocoapods/jsengine.rb +72 -0
  1328. package/scripts/cocoapods/new_architecture.rb +40 -1
  1329. package/scripts/cocoapods/utils.rb +8 -12
  1330. package/scripts/codegen/generate-artifacts-executor.js +1 -1
  1331. package/scripts/codegen/generate-specs-cli-executor.js +4 -4
  1332. package/scripts/{generate-artifacts.js → generate-codegen-artifacts.js} +0 -0
  1333. package/scripts/hermes/hermes-utils.js +135 -60
  1334. package/scripts/hermes/prepare-hermes-for-build.js +9 -8
  1335. package/scripts/native_modules.rb +6 -0
  1336. package/scripts/packager.sh +1 -1
  1337. package/scripts/react-native-xcode.sh +19 -6
  1338. package/scripts/react_native_pods.rb +69 -15
  1339. package/scripts/react_native_pods_utils/script_phases.sh +1 -1
  1340. package/sdks/.hermesversion +1 -1
  1341. package/sdks/hermes-engine/hermes-engine.podspec +100 -41
  1342. package/sdks/hermes-engine/hermes-utils.rb +26 -0
  1343. package/sdks/hermes-engine/utils/build-apple-framework.sh +84 -44
  1344. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +65 -0
  1345. package/sdks/hermes-engine/utils/build-hermesc-xcode.sh +22 -0
  1346. package/sdks/hermes-engine/utils/build-ios-framework.sh +2 -1
  1347. package/sdks/hermes-engine/utils/build-mac-framework.sh +2 -1
  1348. package/sdks/hermes-engine/utils/copy-hermes-xcode.sh +22 -0
  1349. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  1350. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1351. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1352. package/template/{App.js → App.tsx} +10 -9
  1353. package/template/Gemfile +2 -2
  1354. package/template/__tests__/{App-test.js → App-test.tsx} +0 -0
  1355. package/template/_eslintrc.js +2 -0
  1356. package/template/_gitignore +5 -6
  1357. package/template/_ruby-version +1 -1
  1358. package/template/android/app/build.gradle +65 -208
  1359. package/template/android/app/src/debug/java/com/helloworld/ReactNativeFlipper.java +4 -2
  1360. package/template/android/app/src/main/AndroidManifest.xml +1 -2
  1361. package/template/android/app/src/main/java/com/helloworld/MainActivity.java +13 -26
  1362. package/template/android/app/src/main/java/com/helloworld/MainApplication.java +18 -47
  1363. package/template/android/app/src/release/java/com/helloworld/ReactNativeFlipper.java +20 -0
  1364. package/template/android/build.gradle +7 -21
  1365. package/template/android/gradle.properties +4 -0
  1366. package/template/android/settings.gradle +0 -7
  1367. package/template/ios/HelloWorld/AppDelegate.h +2 -4
  1368. package/template/ios/HelloWorld/AppDelegate.mm +9 -110
  1369. package/template/ios/HelloWorld/Info.plist +2 -2
  1370. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +2 -0
  1371. package/template/ios/Podfile +7 -5
  1372. package/template/package.json +19 -10
  1373. package/template/tsconfig.json +3 -0
  1374. package/third-party-podspecs/RCT-Folly.podspec +1 -1
  1375. package/third-party-podspecs/boost.podspec +1 -1
  1376. package/types/.npmignore +1 -0
  1377. package/types/index.d.ts +212 -0
  1378. package/types/modules/BatchedBridge.d.ts +32 -0
  1379. package/types/modules/Codegen.d.ts +74 -0
  1380. package/types/modules/Devtools.d.ts +31 -0
  1381. package/types/modules/LaunchScreen.d.ts +18 -0
  1382. package/types/modules/globals.d.ts +577 -0
  1383. package/types/private/TimerMixin.d.ts +19 -0
  1384. package/{React/Views/RCTMaskedView.h → types/private/Utilities.d.ts} +4 -8
  1385. package/types/public/DeprecatedPropertiesAlias.d.ts +205 -0
  1386. package/types/public/Insets.d.ts +15 -0
  1387. package/types/public/ReactNativeRenderer.d.ts +149 -0
  1388. package/types/public/ReactNativeTypes.d.ts +141 -0
  1389. package/types/tsconfig.json +15 -0
  1390. package/types/tslint.json +23 -0
  1391. package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +0 -93
  1392. package/Libraries/Components/MaskedView/RCTMaskedViewNativeComponent.js +0 -21
  1393. package/Libraries/Core/setUpSystrace.js +0 -21
  1394. package/Libraries/Image/ImagePickerIOS.js +0 -103
  1395. package/Libraries/Image/NativeImagePickerIOS.js +0 -38
  1396. package/Libraries/Storage/AsyncStorage.js +0 -385
  1397. package/Libraries/Storage/NativeAsyncLocalStorage.js +0 -44
  1398. package/Libraries/Storage/NativeAsyncSQLiteDBStorage.js +0 -44
  1399. package/Libraries/Utilities/JSDevSupportModule.js +0 -37
  1400. package/Libraries/Utilities/NativeJSDevSupport.js +0 -23
  1401. package/React/CoreModules/RCTAsyncLocalStorage.h +0 -41
  1402. package/React/CoreModules/RCTAsyncLocalStorage.mm +0 -470
  1403. package/React/Views/RCTMaskedView.m +0 -34
  1404. package/React/Views/RCTMaskedViewManager.m +0 -26
  1405. package/ReactAndroid/cmake-utils/Android-prebuilt.cmake +0 -231
  1406. package/ReactAndroid/src/main/java/com/facebook/react/JSInterpreter.java +0 -18
  1407. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDevSupport.java +0 -103
  1408. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/viewPropConversions.h +0 -540
  1409. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncLocalStorageUtil.java +0 -125
  1410. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageErrorUtil.java +0 -38
  1411. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageModule.java +0 -433
  1412. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +0 -27
  1413. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/ReactDatabaseSupplier.java +0 -163
  1414. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementationProvider.java +0 -72
  1415. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +0 -242
  1416. package/ReactAndroid/src/main/jni/first-party/fbjni/.gitignore +0 -2
  1417. package/ReactAndroid/src/main/jni/first-party/fbjni/Android.mk +0 -14
  1418. package/ReactAndroid/src/main/jni/first-party/fbjni/CMakeLists.txt +0 -15
  1419. package/ReactCommon/hermes/inspector/chrome/AutoAttachUtils.cpp +0 -151
  1420. package/ReactCommon/hermes/inspector/tools/msggen/.babelrc +0 -8
  1421. package/ReactCommon/hermes/inspector/tools/msggen/.gitignore +0 -3
  1422. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/CommandTest.js +0 -62
  1423. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/EventTest.js +0 -47
  1424. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/GraphTest.js +0 -78
  1425. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/HeaderWriterTest.js +0 -128
  1426. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/ImplementationWriterTest.js +0 -171
  1427. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/PropertyTest.js +0 -131
  1428. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/TypeTest.js +0 -50
  1429. package/ReactCommon/hermes/inspector/tools/msggen/package.json +0 -41
  1430. package/ReactCommon/hermes/inspector/tools/msggen/src/Command.js +0 -79
  1431. package/ReactCommon/hermes/inspector/tools/msggen/src/Converters.js +0 -39
  1432. package/ReactCommon/hermes/inspector/tools/msggen/src/Event.js +0 -57
  1433. package/ReactCommon/hermes/inspector/tools/msggen/src/GeneratedHeader.js +0 -16
  1434. package/ReactCommon/hermes/inspector/tools/msggen/src/Graph.js +0 -90
  1435. package/ReactCommon/hermes/inspector/tools/msggen/src/HeaderWriter.js +0 -323
  1436. package/ReactCommon/hermes/inspector/tools/msggen/src/ImplementationWriter.js +0 -421
  1437. package/ReactCommon/hermes/inspector/tools/msggen/src/Property.js +0 -219
  1438. package/ReactCommon/hermes/inspector/tools/msggen/src/TestHelpers.js +0 -40
  1439. package/ReactCommon/hermes/inspector/tools/msggen/src/Type.js +0 -98
  1440. package/ReactCommon/hermes/inspector/tools/msggen/src/custom.json +0 -26
  1441. package/ReactCommon/hermes/inspector/tools/msggen/src/index.js +0 -251
  1442. package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +0 -6088
  1443. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar +0 -0
  1444. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar.md5 +0 -1
  1445. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar.sha1 +0 -1
  1446. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar.sha256 +0 -1
  1447. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar.sha512 +0 -1
  1448. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar +0 -0
  1449. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar.md5 +0 -1
  1450. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar.sha1 +0 -1
  1451. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar.sha256 +0 -1
  1452. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar.sha512 +0 -1
  1453. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar +0 -0
  1454. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar.md5 +0 -1
  1455. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar.sha1 +0 -1
  1456. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar.sha256 +0 -1
  1457. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar.sha512 +0 -1
  1458. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar +0 -0
  1459. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar.md5 +0 -1
  1460. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar.sha1 +0 -1
  1461. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar.sha256 +0 -1
  1462. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar.sha512 +0 -1
  1463. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module +0 -204
  1464. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module.md5 +0 -1
  1465. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module.sha1 +0 -1
  1466. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module.sha256 +0 -1
  1467. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module.sha512 +0 -1
  1468. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom +0 -44
  1469. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom.md5 +0 -1
  1470. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom.sha1 +0 -1
  1471. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom.sha256 +0 -1
  1472. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom.sha512 +0 -1
  1473. package/android/com/facebook/react/hermes-engine/maven-metadata.xml +0 -13
  1474. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.md5 +0 -1
  1475. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha1 +0 -1
  1476. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha256 +0 -1
  1477. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha512 +0 -1
  1478. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar +0 -0
  1479. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar.md5 +0 -1
  1480. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar.sha1 +0 -1
  1481. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar.sha256 +0 -1
  1482. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar.sha512 +0 -1
  1483. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar +0 -0
  1484. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar.md5 +0 -1
  1485. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar.sha1 +0 -1
  1486. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar.sha256 +0 -1
  1487. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar.sha512 +0 -1
  1488. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar +0 -0
  1489. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar.md5 +0 -1
  1490. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar.sha1 +0 -1
  1491. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar.sha256 +0 -1
  1492. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar.sha512 +0 -1
  1493. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar +0 -0
  1494. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar.md5 +0 -1
  1495. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar.sha1 +0 -1
  1496. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar.sha256 +0 -1
  1497. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar.sha512 +0 -1
  1498. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module +0 -628
  1499. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module.md5 +0 -1
  1500. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module.sha1 +0 -1
  1501. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module.sha256 +0 -1
  1502. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module.sha512 +0 -1
  1503. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom +0 -156
  1504. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom.md5 +0 -1
  1505. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom.sha1 +0 -1
  1506. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom.sha256 +0 -1
  1507. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom.sha512 +0 -1
  1508. package/android/com/facebook/react/react-native/maven-metadata.xml +0 -13
  1509. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +0 -1
  1510. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +0 -1
  1511. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +0 -1
  1512. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +0 -1
  1513. package/scripts/cocoapods/hermes.rb +0 -20
  1514. package/template/_buckconfig +0 -6
  1515. package/template/_flowconfig +0 -66
  1516. package/template/android/app/_BUCK +0 -55
  1517. package/template/android/app/build_defs.bzl +0 -19
  1518. package/template/android/app/src/main/java/com/helloworld/newarchitecture/MainApplicationReactNativeHost.java +0 -116
  1519. package/template/android/app/src/main/java/com/helloworld/newarchitecture/components/MainComponentsRegistry.java +0 -36
  1520. package/template/android/app/src/main/java/com/helloworld/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate.java +0 -48
  1521. package/template/android/app/src/main/jni/CMakeLists.txt +0 -7
  1522. package/template/android/app/src/main/jni/MainApplicationModuleProvider.cpp +0 -32
  1523. package/template/android/app/src/main/jni/MainApplicationModuleProvider.h +0 -16
  1524. package/template/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.cpp +0 -45
  1525. package/template/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.h +0 -38
  1526. package/template/android/app/src/main/jni/MainComponentsRegistry.h +0 -32
  1527. package/template/android/app/src/main/jni/OnLoad.cpp +0 -11
@@ -5,9 +5,9 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
+ #import <mach/mach_time.h>
8
9
  #import <objc/runtime.h>
9
10
  #import <atomic>
10
- #import <mach/mach_time.h>
11
11
 
12
12
  #import <ImageIO/ImageIO.h>
13
13
 
@@ -56,16 +56,18 @@ static uint64_t monotonicTimeGetCurrentNanoseconds(void)
56
56
  return (mach_absolute_time() * tb_info.numer) / tb_info.denom;
57
57
  }
58
58
 
59
- static NSError* addResponseHeadersToError(NSError* originalError, NSHTTPURLResponse* response) {
60
- NSMutableDictionary<NSString*, id>* _userInfo = (NSMutableDictionary<NSString*, id>*)originalError.userInfo.mutableCopy;
61
- _userInfo[@"httpStatusCode"] = [NSNumber numberWithInt:response.statusCode];
62
- _userInfo[@"httpResponseHeaders"] = response.allHeaderFields;
63
- NSError *error = [NSError errorWithDomain:originalError.domain code:originalError.code userInfo:_userInfo];
64
-
65
- return error;
59
+ static NSError *addResponseHeadersToError(NSError *originalError, NSHTTPURLResponse *response)
60
+ {
61
+ NSMutableDictionary<NSString *, id> *_userInfo =
62
+ (NSMutableDictionary<NSString *, id> *)originalError.userInfo.mutableCopy;
63
+ _userInfo[@"httpStatusCode"] = [NSNumber numberWithInt:response.statusCode];
64
+ _userInfo[@"httpResponseHeaders"] = response.allHeaderFields;
65
+ NSError *error = [NSError errorWithDomain:originalError.domain code:originalError.code userInfo:_userInfo];
66
+
67
+ return error;
66
68
  }
67
69
 
68
- @interface RCTImageLoader() <NativeImageLoaderIOSSpec, RCTImageLoaderWithAttributionProtocol>
70
+ @interface RCTImageLoader () <NativeImageLoaderIOSSpec, RCTImageLoaderWithAttributionProtocol>
69
71
 
70
72
  @end
71
73
 
@@ -87,8 +89,7 @@ static NSError* addResponseHeadersToError(NSError* originalError, NSHTTPURLRespo
87
89
 
88
90
  @end
89
91
 
90
- @implementation RCTImageLoader
91
- {
92
+ @implementation RCTImageLoader {
92
93
  NSArray<id<RCTImageURLLoader>> * (^_loadersProvider)(RCTModuleRegistry *);
93
94
  NSArray<id<RCTImageDataDecoder>> * (^_decodersProvider)(RCTModuleRegistry *);
94
95
  NSArray<id<RCTImageURLLoader>> *_loaders;
@@ -161,7 +162,7 @@ RCT_EXPORT_MODULE()
161
162
  - (id<RCTImageCache>)imageCache
162
163
  {
163
164
  if (!_imageCache) {
164
- //set up with default cache
165
+ // set up with default cache
165
166
  _imageCache = [RCTImageCache new];
166
167
  }
167
168
  return _imageCache;
@@ -184,7 +185,6 @@ RCT_EXPORT_MODULE()
184
185
  if (!_loaders) {
185
186
  std::unique_lock<std::mutex> guard(_loadersMutex);
186
187
  if (!_loaders) {
187
-
188
188
  // Get loaders, sorted in reverse priority order (highest priority first)
189
189
  if (_loadersProvider) {
190
190
  _loaders = _loadersProvider(self.moduleRegistry);
@@ -193,17 +193,18 @@ RCT_EXPORT_MODULE()
193
193
  _loaders = [_bridge modulesConformingToProtocol:@protocol(RCTImageURLLoader)];
194
194
  }
195
195
 
196
- _loaders = [_loaders sortedArrayUsingComparator:^NSComparisonResult(id<RCTImageURLLoader> a, id<RCTImageURLLoader> b) {
197
- float priorityA = [a respondsToSelector:@selector(loaderPriority)] ? [a loaderPriority] : 0;
198
- float priorityB = [b respondsToSelector:@selector(loaderPriority)] ? [b loaderPriority] : 0;
199
- if (priorityA > priorityB) {
200
- return NSOrderedAscending;
201
- } else if (priorityA < priorityB) {
202
- return NSOrderedDescending;
203
- } else {
204
- return NSOrderedSame;
205
- }
206
- }];
196
+ _loaders =
197
+ [_loaders sortedArrayUsingComparator:^NSComparisonResult(id<RCTImageURLLoader> a, id<RCTImageURLLoader> b) {
198
+ float priorityA = [a respondsToSelector:@selector(loaderPriority)] ? [a loaderPriority] : 0;
199
+ float priorityB = [b respondsToSelector:@selector(loaderPriority)] ? [b loaderPriority] : 0;
200
+ if (priorityA > priorityB) {
201
+ return NSOrderedAscending;
202
+ } else if (priorityA < priorityB) {
203
+ return NSOrderedDescending;
204
+ } else {
205
+ return NSOrderedSame;
206
+ }
207
+ }];
207
208
  }
208
209
  }
209
210
 
@@ -219,10 +220,14 @@ RCT_EXPORT_MODULE()
219
220
  if ([loader canLoadImageURL:URL]) {
220
221
  if (previousLoader) {
221
222
  if (priority == previousPriority) {
222
- RCTLogError(@"The RCTImageURLLoaders %@ and %@ both reported that"
223
- " they can load the URL %@, and have equal priority"
224
- " (%g). This could result in non-deterministic behavior.",
225
- loader, previousLoader, URL, priority);
223
+ RCTLogError(
224
+ @"The RCTImageURLLoaders %@ and %@ both reported that"
225
+ " they can load the URL %@, and have equal priority"
226
+ " (%g). This could result in non-deterministic behavior.",
227
+ loader,
228
+ previousLoader,
229
+ URL,
230
+ priority);
226
231
  }
227
232
  } else {
228
233
  previousLoader = loader;
@@ -242,7 +247,7 @@ RCT_EXPORT_MODULE()
242
247
  return nil;
243
248
  }
244
249
 
245
- # pragma mark - Private Image Decoding & Resizing
250
+ #pragma mark - Private Image Decoding & Resizing
246
251
 
247
252
  - (id<RCTImageDataDecoder>)imageDataDecoderForData:(NSData *)data
248
253
  {
@@ -260,17 +265,18 @@ RCT_EXPORT_MODULE()
260
265
  _decoders = [_bridge modulesConformingToProtocol:@protocol(RCTImageDataDecoder)];
261
266
  }
262
267
 
263
- _decoders = [_decoders sortedArrayUsingComparator:^NSComparisonResult(id<RCTImageDataDecoder> a, id<RCTImageDataDecoder> b) {
264
- float priorityA = [a respondsToSelector:@selector(decoderPriority)] ? [a decoderPriority] : 0;
265
- float priorityB = [b respondsToSelector:@selector(decoderPriority)] ? [b decoderPriority] : 0;
266
- if (priorityA > priorityB) {
267
- return NSOrderedAscending;
268
- } else if (priorityA < priorityB) {
269
- return NSOrderedDescending;
270
- } else {
271
- return NSOrderedSame;
272
- }
273
- }];
268
+ _decoders = [_decoders
269
+ sortedArrayUsingComparator:^NSComparisonResult(id<RCTImageDataDecoder> a, id<RCTImageDataDecoder> b) {
270
+ float priorityA = [a respondsToSelector:@selector(decoderPriority)] ? [a decoderPriority] : 0;
271
+ float priorityB = [b respondsToSelector:@selector(decoderPriority)] ? [b decoderPriority] : 0;
272
+ if (priorityA > priorityB) {
273
+ return NSOrderedAscending;
274
+ } else if (priorityA < priorityB) {
275
+ return NSOrderedDescending;
276
+ } else {
277
+ return NSOrderedSame;
278
+ }
279
+ }];
274
280
  }
275
281
 
276
282
  if (RCT_DEBUG) {
@@ -285,11 +291,16 @@ RCT_EXPORT_MODULE()
285
291
  if ([decoder canDecodeImageData:data]) {
286
292
  if (previousDecoder) {
287
293
  if (priority == previousPriority) {
288
- RCTLogError(@"The RCTImageDataDecoders %@ and %@ both reported that"
289
- " they can decode the data <NSData %p; %tu bytes>, and"
290
- " have equal priority (%g). This could result in"
291
- " non-deterministic behavior.",
292
- decoder, previousDecoder, data, data.length, priority);
294
+ RCTLogError(
295
+ @"The RCTImageDataDecoders %@ and %@ both reported that"
296
+ " they can decode the data <NSData %p; %tu bytes>, and"
297
+ " have equal priority (%g). This could result in"
298
+ " non-deterministic behavior.",
299
+ decoder,
300
+ previousDecoder,
301
+ data,
302
+ data.length,
303
+ priority);
293
304
  }
294
305
  } else {
295
306
  previousDecoder = decoder;
@@ -309,13 +320,9 @@ RCT_EXPORT_MODULE()
309
320
  return nil;
310
321
  }
311
322
 
312
- static UIImage *RCTResizeImageIfNeeded(UIImage *image,
313
- CGSize size,
314
- CGFloat scale,
315
- RCTResizeMode resizeMode)
323
+ static UIImage *RCTResizeImageIfNeeded(UIImage *image, CGSize size, CGFloat scale, RCTResizeMode resizeMode)
316
324
  {
317
- if (CGSizeEqualToSize(size, CGSizeZero) ||
318
- CGSizeEqualToSize(image.size, CGSizeZero) ||
325
+ if (CGSizeEqualToSize(size, CGSizeZero) || CGSizeEqualToSize(image.size, CGSizeZero) ||
319
326
  CGSizeEqualToSize(image.size, size)) {
320
327
  return image;
321
328
  }
@@ -330,23 +337,22 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
330
337
  - (nullable RCTImageLoaderCancellationBlock)loadImageWithURLRequest:(NSURLRequest *)imageURLRequest
331
338
  callback:(RCTImageLoaderCompletionBlock)callback
332
339
  {
333
- return [self loadImageWithURLRequest:imageURLRequest
334
- priority:RCTImageLoaderPriorityImmediate
335
- callback:callback];
340
+ return [self loadImageWithURLRequest:imageURLRequest priority:RCTImageLoaderPriorityImmediate callback:callback];
336
341
  }
337
342
 
338
343
  - (nullable RCTImageLoaderCancellationBlock)loadImageWithURLRequest:(NSURLRequest *)imageURLRequest
339
344
  priority:(RCTImageLoaderPriority)priority
340
- callback:(RCTImageLoaderCompletionBlock)callback {
341
- return [self loadImageWithURLRequest:imageURLRequest
342
- size:CGSizeZero
343
- scale:1
344
- clipped:YES
345
- resizeMode:RCTResizeModeStretch
346
- priority:priority
347
- progressBlock:nil
348
- partialLoadBlock:nil
349
- completionBlock:callback];
345
+ callback:(RCTImageLoaderCompletionBlock)callback
346
+ {
347
+ return [self loadImageWithURLRequest:imageURLRequest
348
+ size:CGSizeZero
349
+ scale:1
350
+ clipped:YES
351
+ resizeMode:RCTResizeModeStretch
352
+ priority:priority
353
+ progressBlock:nil
354
+ partialLoadBlock:nil
355
+ completionBlock:callback];
350
356
  }
351
357
 
352
358
  - (nullable RCTImageLoaderCancellationBlock)loadImageWithURLRequest:(NSURLRequest *)imageURLRequest
@@ -358,15 +364,15 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
358
364
  partialLoadBlock:(RCTImageLoaderPartialLoadBlock)partialLoadBlock
359
365
  completionBlock:(RCTImageLoaderCompletionBlock)completionBlock
360
366
  {
361
- return [self loadImageWithURLRequest:imageURLRequest
362
- size:size
363
- scale:scale
364
- clipped:clipped
365
- resizeMode:resizeMode
366
- priority:RCTImageLoaderPriorityImmediate
367
- progressBlock:progressBlock
368
- partialLoadBlock:partialLoadBlock
369
- completionBlock:completionBlock];
367
+ return [self loadImageWithURLRequest:imageURLRequest
368
+ size:size
369
+ scale:scale
370
+ clipped:clipped
371
+ resizeMode:resizeMode
372
+ priority:RCTImageLoaderPriorityImmediate
373
+ progressBlock:progressBlock
374
+ partialLoadBlock:partialLoadBlock
375
+ completionBlock:completionBlock];
370
376
  }
371
377
 
372
378
  - (nullable RCTImageLoaderCancellationBlock)loadImageWithURLRequest:(NSURLRequest *)imageURLRequest
@@ -380,17 +386,17 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
380
386
  completionBlock:(RCTImageLoaderCompletionBlock)completionBlock
381
387
  {
382
388
  RCTImageURLLoaderRequest *request = [self loadImageWithURLRequest:imageURLRequest
383
- size:size
384
- scale:scale
385
- clipped:clipped
386
- resizeMode:resizeMode
387
- priority:priority
388
- attribution:{}
389
- progressBlock:progressBlock
390
- partialLoadBlock:partialLoadBlock
391
- completionBlock:^(NSError *error, UIImage *image, id metadata) {
392
- completionBlock(error, image);
393
- }];
389
+ size:size
390
+ scale:scale
391
+ clipped:clipped
392
+ resizeMode:resizeMode
393
+ priority:priority
394
+ attribution:{}
395
+ progressBlock:progressBlock
396
+ partialLoadBlock:partialLoadBlock
397
+ completionBlock:^(NSError *error, UIImage *image, id metadata) {
398
+ completionBlock(error, image);
399
+ }];
394
400
  return ^{
395
401
  [request cancel];
396
402
  };
@@ -435,8 +441,9 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
435
441
 
436
442
  // Start queued decode
437
443
  NSInteger activeDecodes = self->_scheduledDecodes - self->_pendingDecodes.count;
438
- while (activeDecodes == 0 || (self->_activeBytes <= self->_maxConcurrentDecodingBytes &&
439
- activeDecodes <= self->_maxConcurrentDecodingTasks)) {
444
+ while (activeDecodes == 0 ||
445
+ (self->_activeBytes <= self->_maxConcurrentDecodingBytes &&
446
+ activeDecodes <= self->_maxConcurrentDecodingTasks)) {
440
447
  dispatch_block_t decodeBlock = self->_pendingDecodes.firstObject;
441
448
  if (decodeBlock) {
442
449
  [self->_pendingDecodes removeObjectAtIndex:0];
@@ -472,13 +479,16 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
472
479
  attribution:(const ImageURLLoaderAttribution &)attribution
473
480
  progressBlock:(RCTImageLoaderProgressBlock)progressHandler
474
481
  partialLoadBlock:(RCTImageLoaderPartialLoadBlock)partialLoadHandler
475
- completionBlock:(void (^)(NSError *error, id imageOrData, id imageMetadata, BOOL cacheResult, NSURLResponse *response))completionBlock
482
+ completionBlock:(void (^)(
483
+ NSError *error,
484
+ id imageOrData,
485
+ id imageMetadata,
486
+ BOOL cacheResult,
487
+ NSURLResponse *response))completionBlock
476
488
  {
477
489
  {
478
490
  NSMutableURLRequest *mutableRequest = [request mutableCopy];
479
- [NSURLProtocol setProperty:@"RCTImageLoader"
480
- forKey:@"trackingName"
481
- inRequest:mutableRequest];
491
+ [NSURLProtocol setProperty:@"RCTImageLoader" forKey:@"trackingName" inRequest:mutableRequest];
482
492
 
483
493
  // Add missing png extension
484
494
  if (request.URL.fileURL && request.URL.pathExtension.length == 0) {
@@ -495,11 +505,15 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
495
505
 
496
506
  // Find suitable image URL loader
497
507
  id<RCTImageURLLoader> loadHandler = [self imageURLLoaderForURL:request.URL];
498
- BOOL requiresScheduling = [loadHandler respondsToSelector:@selector(requiresScheduling)] ?
499
- [loadHandler requiresScheduling] : YES;
508
+ BOOL requiresScheduling =
509
+ [loadHandler respondsToSelector:@selector(requiresScheduling)] ? [loadHandler requiresScheduling] : YES;
510
+
511
+ BOOL cacheResult =
512
+ [loadHandler respondsToSelector:@selector(shouldCacheLoadedImages)] ? [loadHandler shouldCacheLoadedImages] : YES;
500
513
 
501
- BOOL cacheResult = [loadHandler respondsToSelector:@selector(shouldCacheLoadedImages)] ?
502
- [loadHandler shouldCacheLoadedImages] : YES;
514
+ if (request.cachePolicy == NSURLRequestReloadIgnoringLocalCacheData) {
515
+ cacheResult = NO;
516
+ }
503
517
 
504
518
  if (cacheResult && partialLoadHandler) {
505
519
  UIImage *image = [[self imageCache] imageForUrl:request.URL.absoluteString
@@ -514,48 +528,51 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
514
528
  auto cancelled = std::make_shared<std::atomic<int>>(0);
515
529
  __block dispatch_block_t cancelLoad = nil;
516
530
  __block NSLock *cancelLoadLock = [NSLock new];
517
- NSString *requestId = [NSString stringWithFormat:@"%@-%llu",[[NSUUID UUID] UUIDString], monotonicTimeGetCurrentNanoseconds()];
531
+ NSString *requestId =
532
+ [NSString stringWithFormat:@"%@-%llu", [[NSUUID UUID] UUIDString], monotonicTimeGetCurrentNanoseconds()];
518
533
 
519
- void (^completionHandler)(NSError *, id, id, NSURLResponse *) = ^(NSError *error, id imageOrData, id imageMetadata, NSURLResponse *response) {
520
- [cancelLoadLock lock];
521
- cancelLoad = nil;
522
- [cancelLoadLock unlock];
534
+ void (^completionHandler)(NSError *, id, id, NSURLResponse *) =
535
+ ^(NSError *error, id imageOrData, id imageMetadata, NSURLResponse *response) {
536
+ [cancelLoadLock lock];
537
+ cancelLoad = nil;
538
+ [cancelLoadLock unlock];
523
539
 
524
- // If we've received an image, we should try to set it synchronously,
525
- // if it's data, do decoding on a background thread.
526
- if (RCTIsMainQueue() && ![imageOrData isKindOfClass:[UIImage class]]) {
527
- // Most loaders do not return on the main thread, so caller is probably not
528
- // expecting it, and may do expensive post-processing in the callback
529
- dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
530
- if (!std::atomic_load(cancelled.get())) {
531
- completionBlock(error, imageOrData, imageMetadata, cacheResult, response);
532
- }
533
- });
534
- } else if (!std::atomic_load(cancelled.get())) {
535
- if (response && error && [response isKindOfClass: [NSHTTPURLResponse class]]) {
536
- NSHTTPURLResponse* _httpResp = (NSHTTPURLResponse*)response;
540
+ // If we've received an image, we should try to set it synchronously,
541
+ // if it's data, do decoding on a background thread.
542
+ if (RCTIsMainQueue() && ![imageOrData isKindOfClass:[UIImage class]]) {
543
+ // Most loaders do not return on the main thread, so caller is probably not
544
+ // expecting it, and may do expensive post-processing in the callback
545
+ dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
546
+ if (!std::atomic_load(cancelled.get())) {
547
+ completionBlock(error, imageOrData, imageMetadata, cacheResult, response);
548
+ }
549
+ });
550
+ } else if (!std::atomic_load(cancelled.get())) {
551
+ if (response && error && [response isKindOfClass:[NSHTTPURLResponse class]]) {
552
+ NSHTTPURLResponse *_httpResp = (NSHTTPURLResponse *)response;
537
553
  error = addResponseHeadersToError(error, _httpResp);
554
+ }
555
+ completionBlock(error, imageOrData, imageMetadata, cacheResult, response);
538
556
  }
539
- completionBlock(error, imageOrData, imageMetadata, cacheResult, response);
540
- }
541
- };
557
+ };
542
558
 
543
559
  // If the loader doesn't require scheduling we call it directly on
544
560
  // the main queue.
545
561
  if (loadHandler && !requiresScheduling) {
546
562
  if ([loadHandler conformsToProtocol:@protocol(RCTImageURLLoaderWithAttribution)]) {
547
- return [(id<RCTImageURLLoaderWithAttribution>)loadHandler loadImageForURL:request.URL
548
- size:size
549
- scale:scale
550
- resizeMode:resizeMode
551
- requestId:requestId
552
- priority:priority
553
- attribution:attributionCopy
554
- progressHandler:progressHandler
555
- partialLoadHandler:partialLoadHandler
556
- completionHandler:^(NSError *error, UIImage *image, id metadata) {
557
- completionHandler(error, image, metadata, nil);
558
- }];
563
+ return [(id<RCTImageURLLoaderWithAttribution>)loadHandler
564
+ loadImageForURL:request.URL
565
+ size:size
566
+ scale:scale
567
+ resizeMode:resizeMode
568
+ requestId:requestId
569
+ priority:priority
570
+ attribution:attributionCopy
571
+ progressHandler:progressHandler
572
+ partialLoadHandler:partialLoadHandler
573
+ completionHandler:^(NSError *error, UIImage *image, id metadata) {
574
+ completionHandler(error, image, metadata, nil);
575
+ }];
559
576
  }
560
577
  RCTImageLoaderCancellationBlock cb = [loadHandler loadImageForURL:request.URL
561
578
  size:size
@@ -577,36 +594,37 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
577
594
  __weak RCTImageLoader *weakSelf = self;
578
595
  dispatch_async(_URLRequestQueue, ^{
579
596
  __typeof(self) strongSelf = weakSelf;
580
- if (atomic_load(cancelled.get()) || !strongSelf) {
581
- return;
597
+ if (atomic_load(cancelled.get()) || !strongSelf) {
598
+ return;
582
599
  }
583
600
 
584
601
  if (loadHandler) {
585
602
  dispatch_block_t cancelLoadLocal;
586
603
  if ([loadHandler conformsToProtocol:@protocol(RCTImageURLLoaderWithAttribution)]) {
587
- RCTImageURLLoaderRequest *loaderRequest = [(id<RCTImageURLLoaderWithAttribution>)loadHandler loadImageForURL:request.URL
588
- size:size
589
- scale:scale
590
- resizeMode:resizeMode
591
- requestId:requestId
592
- priority:priority
593
- attribution:attributionCopy
594
- progressHandler:progressHandler
595
- partialLoadHandler:partialLoadHandler
596
- completionHandler:^(NSError *error, UIImage *image, id metadata) {
597
- completionHandler(error, image, metadata, nil);
598
- }];
604
+ RCTImageURLLoaderRequest *loaderRequest = [(id<RCTImageURLLoaderWithAttribution>)loadHandler
605
+ loadImageForURL:request.URL
606
+ size:size
607
+ scale:scale
608
+ resizeMode:resizeMode
609
+ requestId:requestId
610
+ priority:priority
611
+ attribution:attributionCopy
612
+ progressHandler:progressHandler
613
+ partialLoadHandler:partialLoadHandler
614
+ completionHandler:^(NSError *error, UIImage *image, id metadata) {
615
+ completionHandler(error, image, metadata, nil);
616
+ }];
599
617
  cancelLoadLocal = loaderRequest.cancellationBlock;
600
618
  } else {
601
- cancelLoadLocal = [loadHandler loadImageForURL:request.URL
602
- size:size
603
- scale:scale
604
- resizeMode:resizeMode
605
- progressHandler:progressHandler
606
- partialLoadHandler:partialLoadHandler
607
- completionHandler:^(NSError *error, UIImage *image) {
608
- completionHandler(error, image, nil, nil);
609
- }];
619
+ cancelLoadLocal = [loadHandler loadImageForURL:request.URL
620
+ size:size
621
+ scale:scale
622
+ resizeMode:resizeMode
623
+ progressHandler:progressHandler
624
+ partialLoadHandler:partialLoadHandler
625
+ completionHandler:^(NSError *error, UIImage *image) {
626
+ completionHandler(error, image, nil, nil);
627
+ }];
610
628
  }
611
629
  [cancelLoadLock lock];
612
630
  cancelLoad = cancelLoadLocal;
@@ -624,11 +642,12 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
624
642
  completionHandler(nil, image, nil, nil);
625
643
  } else {
626
644
  // Use networking module to load image
627
- dispatch_block_t cancelLoadLocal = [strongSelf _loadURLRequest:request
628
- progressBlock:progressHandler
629
- completionBlock:^(NSError *error, id imageOrData, NSURLResponse *response) {
630
- completionHandler(error, imageOrData, nil, response);
631
- }];
645
+ dispatch_block_t cancelLoadLocal =
646
+ [strongSelf _loadURLRequest:request
647
+ progressBlock:progressHandler
648
+ completionBlock:^(NSError *error, id imageOrData, NSURLResponse *response) {
649
+ completionHandler(error, imageOrData, nil, response);
650
+ }];
632
651
  [cancelLoadLock lock];
633
652
  cancelLoad = cancelLoadLocal;
634
653
  [cancelLoadLock unlock];
@@ -636,30 +655,34 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
636
655
  }
637
656
  });
638
657
 
639
- return [[RCTImageURLLoaderRequest alloc] initWithRequestId:requestId imageURL:request.URL cancellationBlock:^{
640
- BOOL alreadyCancelled = atomic_fetch_or(cancelled.get(), 1) ? YES : NO;
641
- if (alreadyCancelled) {
642
- return;
643
- }
644
- [cancelLoadLock lock];
645
- dispatch_block_t cancelLoadLocal = cancelLoad;
646
- cancelLoad = nil;
647
- [cancelLoadLock unlock];
648
- if (cancelLoadLocal) {
649
- cancelLoadLocal();
650
- }
651
- }];
658
+ return [[RCTImageURLLoaderRequest alloc] initWithRequestId:requestId
659
+ imageURL:request.URL
660
+ cancellationBlock:^{
661
+ BOOL alreadyCancelled = atomic_fetch_or(cancelled.get(), 1) ? YES : NO;
662
+ if (alreadyCancelled) {
663
+ return;
664
+ }
665
+ [cancelLoadLock lock];
666
+ dispatch_block_t cancelLoadLocal = cancelLoad;
667
+ cancelLoad = nil;
668
+ [cancelLoadLock unlock];
669
+ if (cancelLoadLocal) {
670
+ cancelLoadLocal();
671
+ }
672
+ }];
652
673
  }
653
674
 
654
675
  - (RCTImageLoaderCancellationBlock)_loadURLRequest:(NSURLRequest *)request
655
676
  progressBlock:(RCTImageLoaderProgressBlock)progressHandler
656
- completionBlock:(void (^)(NSError *error, id imageOrData, NSURLResponse *response))completionHandler
677
+ completionBlock:(void (^)(NSError *error, id imageOrData, NSURLResponse *response))
678
+ completionHandler
657
679
  {
658
680
  RCTNetworking *networking = [_moduleRegistry moduleForName:"Networking"];
659
681
  if (RCT_DEBUG && !networking) {
660
- RCTLogError(@"No suitable image URL loader found for %@. You may need to "
661
- " import the RCTNetwork library in order to load images.",
662
- request.URL.absoluteString);
682
+ RCTLogError(
683
+ @"No suitable image URL loader found for %@. You may need to "
684
+ " import the RCTNetwork library in order to load images.",
685
+ request.URL.absoluteString);
663
686
  return NULL;
664
687
  }
665
688
 
@@ -688,10 +711,9 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
688
711
  NSInteger statusCode = ((NSHTTPURLResponse *)response).statusCode;
689
712
  if (statusCode != 200) {
690
713
  NSString *errorMessage = [NSString stringWithFormat:@"Failed to load %@", response.URL];
691
- NSDictionary *userInfo = @{NSLocalizedDescriptionKey: errorMessage};
692
- completionHandler([[NSError alloc] initWithDomain:NSURLErrorDomain
693
- code:statusCode
694
- userInfo:userInfo], nil, response);
714
+ NSDictionary *userInfo = @{NSLocalizedDescriptionKey : errorMessage};
715
+ completionHandler(
716
+ [[NSError alloc] initWithDomain:NSURLErrorDomain code:statusCode userInfo:userInfo], nil, response);
695
717
  return;
696
718
  }
697
719
  }
@@ -703,35 +725,35 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
703
725
  // Download image
704
726
  __weak __typeof(self) weakSelf = self;
705
727
  __block RCTNetworkTask *task =
706
- [networking networkTaskWithRequest:request
707
- completionBlock:^(NSURLResponse *response, NSData *data, NSError *error) {
708
- __typeof(self) strongSelf = weakSelf;
709
- if (!strongSelf) {
710
- return;
711
- }
712
-
713
- if (error || !response || !data) {
714
- NSError *someError = nil;
715
- if (error) {
716
- someError = error;
717
- } else if (!response) {
718
- someError = RCTErrorWithMessage(@"Response metadata error");
719
- } else {
720
- someError = RCTErrorWithMessage(@"Unknown image download error");
721
- }
722
- completionHandler(someError, nil, response);
723
- [strongSelf dequeueTasks];
724
- return;
725
- }
726
-
727
- dispatch_async(strongSelf->_URLRequestQueue, ^{
728
- // Process image data
729
- processResponse(response, data, nil);
730
-
731
- // Prepare for next task
732
- [strongSelf dequeueTasks];
733
- });
734
- }];
728
+ [networking networkTaskWithRequest:request
729
+ completionBlock:^(NSURLResponse *response, NSData *data, NSError *error) {
730
+ __typeof(self) strongSelf = weakSelf;
731
+ if (!strongSelf) {
732
+ return;
733
+ }
734
+
735
+ if (error || !response || !data) {
736
+ NSError *someError = nil;
737
+ if (error) {
738
+ someError = error;
739
+ } else if (!response) {
740
+ someError = RCTErrorWithMessage(@"Response metadata error");
741
+ } else {
742
+ someError = RCTErrorWithMessage(@"Unknown image download error");
743
+ }
744
+ completionHandler(someError, nil, response);
745
+ [strongSelf dequeueTasks];
746
+ return;
747
+ }
748
+
749
+ dispatch_async(strongSelf->_URLRequestQueue, ^{
750
+ // Process image data
751
+ processResponse(response, data, nil);
752
+
753
+ // Prepare for next task
754
+ [strongSelf dequeueTasks];
755
+ });
756
+ }];
735
757
 
736
758
  task.downloadProgressBlock = ^(int64_t progress, int64_t total) {
737
759
  if (progressHandler) {
@@ -791,60 +813,64 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
791
813
  };
792
814
 
793
815
  __weak RCTImageLoader *weakSelf = self;
794
- void (^completionHandler)(NSError *, id, id, BOOL, NSURLResponse *) = ^(NSError *error, id imageOrData, id imageMetadata, BOOL cacheResult, NSURLResponse *response) {
795
- __typeof(self) strongSelf = weakSelf;
796
- if (std::atomic_load(cancelled.get()) || !strongSelf) {
797
- return;
798
- }
816
+ void (^completionHandler)(NSError *, id, id, BOOL, NSURLResponse *) =
817
+ ^(NSError *error, id imageOrData, id imageMetadata, BOOL cacheResult, NSURLResponse *response) {
818
+ __typeof(self) strongSelf = weakSelf;
819
+ if (std::atomic_load(cancelled.get()) || !strongSelf) {
820
+ return;
821
+ }
799
822
 
800
- if (!imageOrData || [imageOrData isKindOfClass:[UIImage class]]) {
801
- [cancelLoadLock lock];
802
- cancelLoad = nil;
803
- [cancelLoadLock unlock];
804
- completionBlock(error, imageOrData, imageMetadata);
805
- return;
806
- }
823
+ if (!imageOrData || [imageOrData isKindOfClass:[UIImage class]]) {
824
+ [cancelLoadLock lock];
825
+ cancelLoad = nil;
826
+ [cancelLoadLock unlock];
827
+ completionBlock(error, imageOrData, imageMetadata);
828
+ return;
829
+ }
807
830
 
808
- RCTImageLoaderCompletionBlock decodeCompletionHandler = ^(NSError *error_, UIImage *image) {
809
- if (cacheResult && image) {
810
- // Store decoded image in cache
811
- [[strongSelf imageCache] addImageToCache:image
812
- URL:imageURLRequest.URL.absoluteString
813
- size:size
814
- scale:scale
815
- resizeMode:resizeMode
816
- response:response];
817
- }
818
- [cancelLoadLock lock];
819
- cancelLoad = nil;
820
- [cancelLoadLock unlock];
821
- completionBlock(error_, image, nil);
822
- };
823
- dispatch_block_t cancelLoadLocal = [strongSelf decodeImageData:imageOrData
824
- size:size
825
- scale:scale
826
- clipped:clipped
827
- resizeMode:resizeMode
828
- completionBlock:decodeCompletionHandler];
829
- [cancelLoadLock lock];
830
- cancelLoad = cancelLoadLocal;
831
- [cancelLoadLock unlock];
832
- };
831
+ RCTImageLoaderCompletionBlock decodeCompletionHandler = ^(NSError *error_, UIImage *image) {
832
+ if (cacheResult && image) {
833
+ // Store decoded image in cache
834
+ [[strongSelf imageCache] addImageToCache:image
835
+ URL:imageURLRequest.URL.absoluteString
836
+ size:size
837
+ scale:scale
838
+ resizeMode:resizeMode
839
+ response:response];
840
+ }
841
+ [cancelLoadLock lock];
842
+ cancelLoad = nil;
843
+ [cancelLoadLock unlock];
844
+ completionBlock(error_, image, nil);
845
+ };
846
+ dispatch_block_t cancelLoadLocal = [strongSelf decodeImageData:imageOrData
847
+ size:size
848
+ scale:scale
849
+ clipped:clipped
850
+ resizeMode:resizeMode
851
+ completionBlock:decodeCompletionHandler];
852
+ [cancelLoadLock lock];
853
+ cancelLoad = cancelLoadLocal;
854
+ [cancelLoadLock unlock];
855
+ };
833
856
 
834
857
  RCTImageURLLoaderRequest *loaderRequest = [self _loadImageOrDataWithURLRequest:imageURLRequest
835
- size:size
836
- scale:scale
837
- resizeMode:resizeMode
838
- priority:priority
839
- attribution:attribution
840
- progressBlock:progressBlock
841
- partialLoadBlock:partialLoadBlock
842
- completionBlock:completionHandler];
858
+ size:size
859
+ scale:scale
860
+ resizeMode:resizeMode
861
+ priority:priority
862
+ attribution:attribution
863
+ progressBlock:progressBlock
864
+ partialLoadBlock:partialLoadBlock
865
+ completionBlock:completionHandler];
843
866
  cancelLoad = loaderRequest.cancellationBlock;
844
- return [[RCTImageURLLoaderRequest alloc] initWithRequestId:loaderRequest.requestId imageURL:imageURLRequest.URL cancellationBlock:cancellationBlock];
867
+ return [[RCTImageURLLoaderRequest alloc] initWithRequestId:loaderRequest.requestId
868
+ imageURL:imageURLRequest.URL
869
+ cancellationBlock:cancellationBlock];
845
870
  }
846
871
 
847
- - (BOOL)shouldEnablePerfLoggingForRequestUrl:(NSURL *)url {
872
+ - (BOOL)shouldEnablePerfLoggingForRequestUrl:(NSURL *)url
873
+ {
848
874
  id<RCTImageURLLoader> loadHandler = [self imageURLLoaderForURL:url];
849
875
  if ([loadHandler respondsToSelector:@selector(shouldEnablePerfLogging)]) {
850
876
  return [(id<RCTImageURLLoaderWithAttribution>)loadHandler shouldEnablePerfLogging];
@@ -860,7 +886,8 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
860
886
 
861
887
  id<RCTImageURLLoader> loadHandler = [self imageURLLoaderForURL:loaderRequest.imageURL];
862
888
  if ([loadHandler respondsToSelector:@selector(trackURLImageVisibilityForRequest:imageView:)]) {
863
- [(id<RCTImageURLLoaderWithAttribution>)loadHandler trackURLImageVisibilityForRequest:loaderRequest imageView:imageView];
889
+ [(id<RCTImageURLLoaderWithAttribution>)loadHandler trackURLImageVisibilityForRequest:loaderRequest
890
+ imageView:imageView];
864
891
  }
865
892
  }
866
893
 
@@ -899,7 +926,8 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
899
926
  {
900
927
  if (data.length == 0) {
901
928
  completionBlock(RCTErrorWithMessage(@"No image data"), nil);
902
- return ^{};
929
+ return ^{
930
+ };
903
931
  }
904
932
 
905
933
  auto cancelled = std::make_shared<std::atomic<int>>(0);
@@ -923,7 +951,9 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
923
951
  size:size
924
952
  scale:scale
925
953
  resizeMode:resizeMode
926
- completionHandler:completionHandler] ?: ^{};
954
+ completionHandler:completionHandler]
955
+ ?: ^{
956
+ };
927
957
  } else {
928
958
  dispatch_block_t decodeBlock = ^{
929
959
  // Calculate the size, in bytes, that the decompressed image will require
@@ -935,25 +965,26 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
935
965
  // Do actual decompression on a concurrent background queue
936
966
  dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
937
967
  if (!std::atomic_load(cancelled.get())) {
938
-
939
968
  // Decompress the image data (this may be CPU and memory intensive)
940
969
  UIImage *image = RCTDecodeImageWithData(data, size, scale, resizeMode);
941
970
 
942
971
  #if RCT_DEV
943
972
  CGSize imagePixelSize = RCTSizeInPixels(image.size, image.scale);
944
973
  CGSize screenPixelSize = RCTSizeInPixels(RCTScreenSize(), RCTScreenScale());
945
- if (imagePixelSize.width * imagePixelSize.height >
946
- screenPixelSize.width * screenPixelSize.height) {
947
- RCTLogInfo(@"[PERF ASSETS] Loading image at size %@, which is larger "
948
- "than the screen size %@", NSStringFromCGSize(imagePixelSize),
949
- NSStringFromCGSize(screenPixelSize));
974
+ if (imagePixelSize.width * imagePixelSize.height > screenPixelSize.width * screenPixelSize.height) {
975
+ RCTLogInfo(
976
+ @"[PERF ASSETS] Loading image at size %@, which is larger "
977
+ "than the screen size %@",
978
+ NSStringFromCGSize(imagePixelSize),
979
+ NSStringFromCGSize(screenPixelSize));
950
980
  }
951
981
  #endif
952
982
 
953
983
  if (image) {
954
984
  completionHandler(nil, image);
955
985
  } else {
956
- NSString *errorMessage = [NSString stringWithFormat:@"Error decoding image data <NSData %p; %tu bytes>", data, data.length];
986
+ NSString *errorMessage =
987
+ [NSString stringWithFormat:@"Error decoding image data <NSData %p; %tu bytes>", data, data.length];
957
988
  NSError *finalError = RCTErrorWithMessage(errorMessage);
958
989
  completionHandler(finalError, nil);
959
990
  }
@@ -982,8 +1013,9 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
982
1013
  self->_pendingDecodes = [NSMutableArray new];
983
1014
  }
984
1015
  NSInteger activeDecodes = self->_scheduledDecodes - self->_pendingDecodes.count - 1;
985
- if (activeDecodes == 0 || (self->_activeBytes <= self->_maxConcurrentDecodingBytes &&
986
- activeDecodes <= self->_maxConcurrentDecodingTasks)) {
1016
+ if (activeDecodes == 0 ||
1017
+ (self->_activeBytes <= self->_maxConcurrentDecodingBytes &&
1018
+ activeDecodes <= self->_maxConcurrentDecodingTasks)) {
987
1019
  decodeBlock();
988
1020
  } else {
989
1021
  [self->_pendingDecodes addObject:decodeBlock];
@@ -997,51 +1029,52 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
997
1029
  }
998
1030
 
999
1031
  - (RCTImageLoaderCancellationBlock)getImageSizeForURLRequest:(NSURLRequest *)imageURLRequest
1000
- block:(void(^)(NSError *error, CGSize size))callback
1032
+ block:(void (^)(NSError *error, CGSize size))callback
1001
1033
  {
1002
- void (^completion)(NSError *, id, id, BOOL, NSURLResponse *) = ^(NSError *error, id imageOrData, id imageMetadata, BOOL cacheResult, NSURLResponse *response) {
1003
- CGSize size;
1004
- if ([imageOrData isKindOfClass:[NSData class]]) {
1005
- NSDictionary *meta = RCTGetImageMetadata(imageOrData);
1006
-
1007
- NSInteger imageOrientation = [meta[(id)kCGImagePropertyOrientation] integerValue];
1008
- switch (imageOrientation) {
1009
- case kCGImagePropertyOrientationLeft:
1010
- case kCGImagePropertyOrientationRight:
1011
- case kCGImagePropertyOrientationLeftMirrored:
1012
- case kCGImagePropertyOrientationRightMirrored:
1013
- // swap width and height
1014
- size = (CGSize){
1015
- [meta[(id)kCGImagePropertyPixelHeight] floatValue],
1016
- [meta[(id)kCGImagePropertyPixelWidth] floatValue],
1017
- };
1018
- break;
1019
- case kCGImagePropertyOrientationUp:
1020
- case kCGImagePropertyOrientationDown:
1021
- case kCGImagePropertyOrientationUpMirrored:
1022
- case kCGImagePropertyOrientationDownMirrored:
1023
- default:
1034
+ void (^completion)(NSError *, id, id, BOOL, NSURLResponse *) =
1035
+ ^(NSError *error, id imageOrData, id imageMetadata, BOOL cacheResult, NSURLResponse *response) {
1036
+ CGSize size;
1037
+ if ([imageOrData isKindOfClass:[NSData class]]) {
1038
+ NSDictionary *meta = RCTGetImageMetadata(imageOrData);
1039
+
1040
+ NSInteger imageOrientation = [meta[(id)kCGImagePropertyOrientation] integerValue];
1041
+ switch (imageOrientation) {
1042
+ case kCGImagePropertyOrientationLeft:
1043
+ case kCGImagePropertyOrientationRight:
1044
+ case kCGImagePropertyOrientationLeftMirrored:
1045
+ case kCGImagePropertyOrientationRightMirrored:
1046
+ // swap width and height
1047
+ size = (CGSize){
1048
+ [meta[(id)kCGImagePropertyPixelHeight] floatValue],
1049
+ [meta[(id)kCGImagePropertyPixelWidth] floatValue],
1050
+ };
1051
+ break;
1052
+ case kCGImagePropertyOrientationUp:
1053
+ case kCGImagePropertyOrientationDown:
1054
+ case kCGImagePropertyOrientationUpMirrored:
1055
+ case kCGImagePropertyOrientationDownMirrored:
1056
+ default:
1057
+ size = (CGSize){
1058
+ [meta[(id)kCGImagePropertyPixelWidth] floatValue],
1059
+ [meta[(id)kCGImagePropertyPixelHeight] floatValue],
1060
+ };
1061
+ break;
1062
+ }
1063
+ } else {
1064
+ UIImage *image = imageOrData;
1024
1065
  size = (CGSize){
1025
- [meta[(id)kCGImagePropertyPixelWidth] floatValue],
1026
- [meta[(id)kCGImagePropertyPixelHeight] floatValue],
1066
+ image.size.width * image.scale,
1067
+ image.size.height * image.scale,
1027
1068
  };
1028
- break;
1029
- }
1030
- } else {
1031
- UIImage *image = imageOrData;
1032
- size = (CGSize){
1033
- image.size.width * image.scale,
1034
- image.size.height * image.scale,
1069
+ }
1070
+ callback(error, size);
1035
1071
  };
1036
- }
1037
- callback(error, size);
1038
- };
1039
1072
 
1040
1073
  RCTImageURLLoaderRequest *loaderRequest = [self _loadImageOrDataWithURLRequest:imageURLRequest
1041
1074
  size:CGSizeZero
1042
1075
  scale:1
1043
1076
  resizeMode:RCTResizeModeStretch
1044
- priority: RCTImageLoaderPriorityImmediate
1077
+ priority:RCTImageLoaderPriorityImmediate
1045
1078
  attribution:{}
1046
1079
  progressBlock:NULL
1047
1080
  partialLoadBlock:NULL
@@ -1096,12 +1129,7 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
1096
1129
  });
1097
1130
 
1098
1131
  NSString *query = requestURL.query;
1099
- if (
1100
- query != nil &&
1101
- [videoRegex firstMatchInString:query
1102
- options:0
1103
- range:NSMakeRange(0, query.length)]
1104
- ) {
1132
+ if (query != nil && [videoRegex firstMatchInString:query options:0 range:NSMakeRange(0, query.length)]) {
1105
1133
  return NO;
1106
1134
  }
1107
1135
 
@@ -1109,8 +1137,7 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
1109
1137
  // Don't use RCTImageURLLoader protocol for modules that already conform to
1110
1138
  // RCTURLRequestHandler as it's inefficient to decode an image and then
1111
1139
  // convert it back into data
1112
- if (![loader conformsToProtocol:@protocol(RCTURLRequestHandler)] &&
1113
- [loader canLoadImageURL:requestURL]) {
1140
+ if (![loader conformsToProtocol:@protocol(RCTURLRequestHandler)] && [loader canLoadImageURL:requestURL]) {
1114
1141
  return YES;
1115
1142
  }
1116
1143
  }
@@ -1121,31 +1148,32 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
1121
1148
  - (id)sendRequest:(NSURLRequest *)request withDelegate:(id<RCTURLRequestDelegate>)delegate
1122
1149
  {
1123
1150
  __block RCTImageLoaderCancellationBlock requestToken;
1124
- requestToken = [self loadImageWithURLRequest:request callback:^(NSError *error, UIImage *image) {
1125
- if (error) {
1126
- [delegate URLRequest:requestToken didCompleteWithError:error];
1127
- return;
1128
- }
1129
-
1130
- NSString *mimeType = nil;
1131
- NSData *imageData = nil;
1132
- if (RCTImageHasAlpha(image.CGImage)) {
1133
- mimeType = @"image/png";
1134
- imageData = UIImagePNGRepresentation(image);
1135
- } else {
1136
- mimeType = @"image/jpeg";
1137
- imageData = UIImageJPEGRepresentation(image, 1.0);
1138
- }
1139
-
1140
- NSURLResponse *response = [[NSURLResponse alloc] initWithURL:request.URL
1141
- MIMEType:mimeType
1142
- expectedContentLength:imageData.length
1143
- textEncodingName:nil];
1144
-
1145
- [delegate URLRequest:requestToken didReceiveResponse:response];
1146
- [delegate URLRequest:requestToken didReceiveData:imageData];
1147
- [delegate URLRequest:requestToken didCompleteWithError:nil];
1148
- }];
1151
+ requestToken = [self loadImageWithURLRequest:request
1152
+ callback:^(NSError *error, UIImage *image) {
1153
+ if (error) {
1154
+ [delegate URLRequest:requestToken didCompleteWithError:error];
1155
+ return;
1156
+ }
1157
+
1158
+ NSString *mimeType = nil;
1159
+ NSData *imageData = nil;
1160
+ if (RCTImageHasAlpha(image.CGImage)) {
1161
+ mimeType = @"image/png";
1162
+ imageData = UIImagePNGRepresentation(image);
1163
+ } else {
1164
+ mimeType = @"image/jpeg";
1165
+ imageData = UIImageJPEGRepresentation(image, 1.0);
1166
+ }
1167
+
1168
+ NSURLResponse *response = [[NSURLResponse alloc] initWithURL:request.URL
1169
+ MIMEType:mimeType
1170
+ expectedContentLength:imageData.length
1171
+ textEncodingName:nil];
1172
+
1173
+ [delegate URLRequest:requestToken didReceiveResponse:response];
1174
+ [delegate URLRequest:requestToken didReceiveData:imageData];
1175
+ [delegate URLRequest:requestToken didCompleteWithError:nil];
1176
+ }];
1149
1177
 
1150
1178
  return requestToken;
1151
1179
  }
@@ -1157,31 +1185,36 @@ static UIImage *RCTResizeImageIfNeeded(UIImage *image,
1157
1185
  }
1158
1186
  }
1159
1187
 
1160
- - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:(const facebook::react::ObjCTurboModule::InitParams &)params
1188
+ - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
1189
+ (const facebook::react::ObjCTurboModule::InitParams &)params
1161
1190
  {
1162
1191
  return std::make_shared<facebook::react::NativeImageLoaderIOSSpecJSI>(params);
1163
1192
  }
1164
1193
 
1165
- RCT_EXPORT_METHOD(getSize:(NSString *)uri resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject)
1194
+ RCT_EXPORT_METHOD(getSize
1195
+ : (NSString *)uri resolve
1196
+ : (RCTPromiseResolveBlock)resolve reject
1197
+ : (RCTPromiseRejectBlock)reject)
1166
1198
  {
1167
1199
  NSURLRequest *request = [RCTConvert NSURLRequest:uri];
1168
1200
  [self getImageSizeForURLRequest:request
1169
- block:^(NSError *error, CGSize size) {
1170
- if (error) {
1171
- reject(
1172
- @"E_GET_SIZE_FAILURE",
1173
- [NSString stringWithFormat: @"Failed to getSize of %@", uri],
1174
- error);
1175
- } else {
1176
- resolve(@[@(size.width), @(size.height)]);
1177
- }
1178
- }];
1201
+ block:^(NSError *error, CGSize size) {
1202
+ if (error) {
1203
+ reject(
1204
+ @"E_GET_SIZE_FAILURE",
1205
+ [NSString stringWithFormat:@"Failed to getSize of %@", uri],
1206
+ error);
1207
+ } else {
1208
+ resolve(@[ @(size.width), @(size.height) ]);
1209
+ }
1210
+ }];
1179
1211
  }
1180
1212
 
1181
- RCT_EXPORT_METHOD(getSizeWithHeaders:(NSString *)uri
1182
- headers:(NSDictionary *)headers
1183
- resolve:(RCTPromiseResolveBlock)resolve
1184
- reject:(RCTPromiseRejectBlock)reject)
1213
+ RCT_EXPORT_METHOD(getSizeWithHeaders
1214
+ : (NSString *)uri headers
1215
+ : (NSDictionary *)headers resolve
1216
+ : (RCTPromiseResolveBlock)resolve reject
1217
+ : (RCTPromiseRejectBlock)reject)
1185
1218
  {
1186
1219
  NSURL *URL = [RCTConvert NSURL:uri];
1187
1220
  NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:URL];
@@ -1189,27 +1222,29 @@ RCT_EXPORT_METHOD(getSizeWithHeaders:(NSString *)uri
1189
1222
  [request addValue:[RCTConvert NSString:value] forHTTPHeaderField:key];
1190
1223
  }];
1191
1224
  [self getImageSizeForURLRequest:request
1192
- block:^(NSError *error, CGSize size) {
1193
- if (error) {
1194
- reject(@"E_GET_SIZE_FAILURE", nil, error);
1195
- return;
1196
- }
1197
- resolve(@{@"width":@(size.width),@"height":@(size.height)});
1198
- }];
1225
+ block:^(NSError *error, CGSize size) {
1226
+ if (error) {
1227
+ reject(@"E_GET_SIZE_FAILURE", nil, error);
1228
+ return;
1229
+ }
1230
+ resolve(@{@"width" : @(size.width), @"height" : @(size.height)});
1231
+ }];
1199
1232
  }
1200
1233
 
1201
- RCT_EXPORT_METHOD(prefetchImage:(NSString *)uri
1202
- resolve:(RCTPromiseResolveBlock)resolve
1203
- reject:(RCTPromiseRejectBlock)reject)
1234
+ RCT_EXPORT_METHOD(prefetchImage
1235
+ : (NSString *)uri resolve
1236
+ : (RCTPromiseResolveBlock)resolve reject
1237
+ : (RCTPromiseRejectBlock)reject)
1204
1238
  {
1205
1239
  [self prefetchImageWithMetadata:uri queryRootName:nil rootTag:0 resolve:resolve reject:reject];
1206
1240
  }
1207
1241
 
1208
- RCT_EXPORT_METHOD(prefetchImageWithMetadata:(NSString *)uri
1209
- queryRootName:(NSString *)queryRootName
1210
- rootTag:(double)rootTag
1211
- resolve:(RCTPromiseResolveBlock)resolve
1212
- reject:(RCTPromiseRejectBlock)reject)
1242
+ RCT_EXPORT_METHOD(prefetchImageWithMetadata
1243
+ : (NSString *)uri queryRootName
1244
+ : (NSString *)queryRootName rootTag
1245
+ : (double)rootTag resolve
1246
+ : (RCTPromiseResolveBlock)resolve reject
1247
+ : (RCTPromiseRejectBlock)reject)
1213
1248
  {
1214
1249
  NSURLRequest *request = [RCTConvert NSURLRequest:uri];
1215
1250
  [self loadImageWithURLRequest:request
@@ -1219,23 +1254,24 @@ RCT_EXPORT_METHOD(prefetchImageWithMetadata:(NSString *)uri
1219
1254
  resizeMode:RCTResizeModeStretch
1220
1255
  priority:RCTImageLoaderPriorityPrefetch
1221
1256
  attribution:{
1222
- .queryRootName = queryRootName ? [queryRootName UTF8String] : "",
1223
- .surfaceId = (int)rootTag,
1257
+ .queryRootName = queryRootName ? [queryRootName UTF8String] : "",
1258
+ .surfaceId = (int)rootTag,
1224
1259
  }
1225
1260
  progressBlock:nil
1226
1261
  partialLoadBlock:nil
1227
- completionBlock:^(NSError *error, UIImage *image, id completionMetadata) {
1228
- if (error) {
1229
- reject(@"E_PREFETCH_FAILURE", nil, error);
1230
- return;
1231
- }
1232
- resolve(@YES);
1233
- }];
1262
+ completionBlock:^(NSError *error, UIImage *image, id completionMetadata) {
1263
+ if (error) {
1264
+ reject(@"E_PREFETCH_FAILURE", nil, error);
1265
+ return;
1266
+ }
1267
+ resolve(@YES);
1268
+ }];
1234
1269
  }
1235
1270
 
1236
- RCT_EXPORT_METHOD(queryCache:(NSArray *)uris
1237
- resolve:(RCTPromiseResolveBlock)resolve
1238
- reject:(RCTPromiseRejectBlock)reject)
1271
+ RCT_EXPORT_METHOD(queryCache
1272
+ : (NSArray *)uris resolve
1273
+ : (RCTPromiseResolveBlock)resolve reject
1274
+ : (RCTPromiseRejectBlock)reject)
1239
1275
  {
1240
1276
  resolve([self getImageCacheStatus:uris]);
1241
1277
  }
@@ -1249,8 +1285,9 @@ RCT_EXPORT_METHOD(queryCache:(NSArray *)uris
1249
1285
 
1250
1286
  - (RCTImageLoader *)imageLoader
1251
1287
  {
1252
- RCTLogWarn(@"Calling bridge.imageLoader is deprecated and will not work in newer versions of RN. Please update to the "
1253
- "moduleForClass API or turboModuleRegistry API.");
1288
+ RCTLogWarn(
1289
+ @"Calling bridge.imageLoader is deprecated and will not work in newer versions of RN. Please update to the "
1290
+ "moduleForClass API or turboModuleRegistry API.");
1254
1291
  return [self moduleForClass:[RCTImageLoader class]];
1255
1292
  }
1256
1293