react-native 0.0.0-201c10733 → 0.0.0-268efb102

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 (1486) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +14 -3
  2. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -2
  3. package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +1 -1
  4. package/Libraries/Alert/Alert.js +3 -5
  5. package/Libraries/Alert/NativeAlertManager.js +0 -2
  6. package/Libraries/Alert/RCTAlertManager.android.js +0 -2
  7. package/Libraries/Alert/RCTAlertManager.ios.js +0 -2
  8. package/Libraries/Animated/Animated.js +0 -2
  9. package/Libraries/Animated/AnimatedEvent.js +26 -7
  10. package/Libraries/Animated/AnimatedImplementation.js +0 -2
  11. package/Libraries/Animated/AnimatedMock.js +1 -8
  12. package/Libraries/Animated/AnimatedWeb.js +6 -3
  13. package/Libraries/Animated/NativeAnimatedHelper.js +10 -7
  14. package/Libraries/Animated/NativeAnimatedModule.js +0 -2
  15. package/Libraries/Animated/NativeAnimatedTurboModule.js +0 -2
  16. package/Libraries/Animated/animations/Animation.js +1 -0
  17. package/Libraries/Animated/animations/DecayAnimation.js +2 -0
  18. package/Libraries/Animated/animations/SpringAnimation.js +1 -0
  19. package/Libraries/Animated/animations/TimingAnimation.js +3 -0
  20. package/Libraries/Animated/components/AnimatedFlatList.js +0 -2
  21. package/Libraries/Animated/components/AnimatedImage.js +0 -2
  22. package/Libraries/Animated/components/AnimatedScrollView.js +0 -2
  23. package/Libraries/Animated/components/AnimatedSectionList.js +1 -3
  24. package/Libraries/Animated/components/AnimatedText.js +0 -2
  25. package/Libraries/Animated/components/AnimatedView.js +0 -2
  26. package/Libraries/Animated/createAnimatedComponent.js +25 -19
  27. package/Libraries/Animated/createAnimatedComponentInjection.js +48 -0
  28. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +48 -0
  29. package/Libraries/Animated/nodes/AnimatedInterpolation.js +21 -22
  30. package/Libraries/Animated/nodes/AnimatedProps.js +0 -1
  31. package/Libraries/Animated/nodes/AnimatedValue.js +24 -5
  32. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -0
  33. package/Libraries/Animated/useAnimatedProps.js +211 -0
  34. package/Libraries/AppState/AppState.js +90 -164
  35. package/Libraries/AppState/NativeAppState.js +0 -2
  36. package/Libraries/BatchedBridge/MessageQueue.js +19 -14
  37. package/Libraries/BatchedBridge/NativeModules.js +5 -1
  38. package/Libraries/Blob/BlobManager.js +0 -2
  39. package/Libraries/Blob/FileReader.js +1 -3
  40. package/Libraries/Blob/NativeBlobModule.js +0 -2
  41. package/Libraries/Blob/NativeFileReaderModule.js +0 -2
  42. package/Libraries/Blob/RCTBlobManager.h +2 -1
  43. package/Libraries/Blob/RCTBlobManager.mm +1 -3
  44. package/Libraries/Blob/RCTBlobPlugins.mm +4 -3
  45. package/Libraries/Blob/React-RCTBlob.podspec +3 -3
  46. package/Libraries/Blob/URL.js +18 -20
  47. package/Libraries/BugReporting/BugReporting.js +2 -2
  48. package/Libraries/BugReporting/getReactData.js +2 -2
  49. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +350 -0
  50. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +4 -2
  51. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +0 -2
  52. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +35 -0
  53. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +26 -0
  54. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +6 -8
  55. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +0 -2
  56. package/Libraries/Components/Button.js +45 -15
  57. package/Libraries/Components/Clipboard/Clipboard.js +0 -2
  58. package/Libraries/Components/Clipboard/NativeClipboard.js +0 -2
  59. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +4 -5
  60. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +50 -14
  61. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +1 -2
  62. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -2
  63. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +0 -2
  64. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -9
  65. package/Libraries/Components/Keyboard/Keyboard.js +16 -17
  66. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +17 -22
  67. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +0 -2
  68. package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +3 -3
  69. package/Libraries/Components/Pressable/Pressable.js +20 -7
  70. package/Libraries/Components/Pressable/useAndroidRippleForView.js +18 -17
  71. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +0 -2
  72. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +0 -2
  73. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +4 -5
  74. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +2 -5
  75. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -2
  76. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +0 -2
  77. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +9 -3
  78. package/Libraries/Components/RefreshControl/RefreshControl.js +5 -7
  79. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -3
  80. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +0 -2
  81. package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -1
  82. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +11 -15
  83. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -4
  84. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -4
  85. package/Libraries/Components/ScrollView/ScrollView.js +754 -170
  86. package/Libraries/Components/ScrollView/ScrollViewContext.js +0 -2
  87. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +3 -4
  88. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +2 -0
  89. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +31 -10
  90. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +2 -0
  91. package/Libraries/Components/ScrollView/processDecelerationRate.js +0 -2
  92. package/Libraries/Components/SegmentedControlIOS/RCTSegmentedControlNativeComponent.js +0 -2
  93. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.android.js +4 -5
  94. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +17 -11
  95. package/Libraries/Components/Slider/Slider.js +19 -8
  96. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -2
  97. package/Libraries/Components/Sound/NativeSoundManager.js +0 -2
  98. package/Libraries/Components/Sound/SoundManager.js +0 -1
  99. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +0 -2
  100. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +0 -2
  101. package/Libraries/Components/StatusBar/StatusBar.js +10 -21
  102. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +0 -2
  103. package/Libraries/Components/Switch/Switch.js +98 -118
  104. package/Libraries/Components/Switch/SwitchNativeComponent.js +0 -2
  105. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +9 -8
  106. package/Libraries/Components/TextInput/AndroidTextInputViewConfig.js +2 -3
  107. package/Libraries/Components/TextInput/InputAccessoryView.js +6 -8
  108. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +0 -2
  109. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +6 -5
  110. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +6 -16
  111. package/Libraries/Components/TextInput/{RCTSinglelineTextInputViewConfig.js → RCTTextInputViewConfig.js} +3 -5
  112. package/Libraries/Components/TextInput/TextInput.js +128 -69
  113. package/Libraries/Components/TextInput/TextInputNativeCommands.js +0 -2
  114. package/Libraries/Components/TextInput/TextInputState.js +1 -3
  115. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +0 -2
  116. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +0 -1
  117. package/Libraries/Components/Touchable/BoundingDimensions.js +1 -2
  118. package/Libraries/Components/Touchable/PooledClass.js +1 -2
  119. package/Libraries/Components/Touchable/Position.js +1 -2
  120. package/Libraries/Components/Touchable/Touchable.js +26 -55
  121. package/Libraries/Components/Touchable/TouchableBounce.js +0 -2
  122. package/Libraries/Components/Touchable/TouchableHighlight.js +22 -6
  123. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +16 -5
  124. package/Libraries/Components/Touchable/TouchableOpacity.js +19 -8
  125. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +13 -4
  126. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +0 -2
  127. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +2 -3
  128. package/Libraries/Components/View/ReactNativeStyleAttributes.js +133 -68
  129. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -2
  130. package/Libraries/Components/View/ReactNativeViewViewConfig.js +1 -3
  131. package/Libraries/Components/View/View.js +2 -4
  132. package/Libraries/Components/View/ViewAccessibility.js +3 -0
  133. package/Libraries/Components/View/ViewNativeComponent.js +0 -2
  134. package/Libraries/Core/Devtools/getDevServer.js +0 -2
  135. package/Libraries/Core/Devtools/parseErrorStack.js +0 -9
  136. package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
  137. package/Libraries/Core/ExceptionsManager.js +51 -41
  138. package/Libraries/Core/ExtendedError.js +19 -0
  139. package/Libraries/Core/InitializeCore.js +1 -0
  140. package/Libraries/Core/NativeExceptionsManager.js +0 -2
  141. package/Libraries/Core/ReactFiberErrorDialog.js +44 -34
  142. package/Libraries/Core/ReactNativeVersion.js +1 -1
  143. package/Libraries/Core/ReactNativeVersionCheck.js +0 -2
  144. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +0 -2
  145. package/Libraries/Core/Timers/JSTimers.js +41 -31
  146. package/Libraries/Core/Timers/NativeTiming.js +0 -2
  147. package/Libraries/Core/Timers/immediateShim.js +67 -0
  148. package/Libraries/Core/Timers/queueMicrotask.js +41 -0
  149. package/Libraries/Core/polyfillPromise.js +1 -1
  150. package/Libraries/Core/setUpBatchedBridge.js +1 -1
  151. package/Libraries/Core/setUpDeveloperTools.js +53 -58
  152. package/Libraries/Core/setUpGlobals.js +2 -0
  153. package/Libraries/Core/setUpReactDevTools.js +18 -1
  154. package/Libraries/Core/setUpRegeneratorRuntime.js +25 -8
  155. package/Libraries/Core/setUpTimers.js +65 -6
  156. package/Libraries/Core/setUpXHR.js +4 -4
  157. package/Libraries/DeprecatedPropTypes/DeprecatedImagePropType.android.js +131 -0
  158. package/Libraries/DeprecatedPropTypes/{DeprecatedImagePropType.js → DeprecatedImagePropType.ios.js} +0 -0
  159. package/Libraries/DeprecatedPropTypes/DeprecatedTextInputPropTypes.js +5 -5
  160. package/Libraries/DeprecatedPropTypes/DeprecatedViewAccessibility.js +2 -0
  161. package/Libraries/EventEmitter/NativeEventEmitter.js +100 -51
  162. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +9 -77
  163. package/Libraries/EventEmitter/RCTEventEmitter.js +5 -1
  164. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +0 -2
  165. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +31 -10
  166. package/Libraries/FBLazyVector/BUCK +5 -1
  167. package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
  168. package/Libraries/HeapCapture/HeapCapture.js +0 -2
  169. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +0 -2
  170. package/Libraries/Image/AssetUtils.js +0 -2
  171. package/Libraries/Image/Image.android.js +22 -133
  172. package/Libraries/Image/Image.ios.js +39 -33
  173. package/Libraries/Image/ImageAnalyticsTagContext.js +0 -2
  174. package/Libraries/Image/ImageBackground.js +10 -8
  175. package/Libraries/Image/ImageInjection.js +28 -0
  176. package/Libraries/Image/ImagePickerIOS.js +0 -2
  177. package/Libraries/Image/ImageProps.js +28 -0
  178. package/Libraries/Image/ImageSource.js +57 -14
  179. package/Libraries/Image/ImageViewNativeComponent.js +0 -2
  180. package/Libraries/Image/NativeImageEditor.js +0 -2
  181. package/Libraries/Image/NativeImageLoaderAndroid.js +0 -2
  182. package/Libraries/Image/NativeImageLoaderIOS.js +2 -3
  183. package/Libraries/Image/NativeImagePickerIOS.js +0 -2
  184. package/Libraries/Image/NativeImageStoreAndroid.js +0 -2
  185. package/Libraries/Image/NativeImageStoreIOS.js +0 -2
  186. package/Libraries/Image/RCTGIFImageDecoder.mm +6 -0
  187. package/Libraries/Image/RCTImageLoader.h +2 -2
  188. package/Libraries/Image/RCTImageLoader.mm +6 -18
  189. package/Libraries/Image/RCTImageLoaderWithAttributionProtocol.h +0 -5
  190. package/Libraries/Image/RCTImagePlugins.mm +4 -3
  191. package/Libraries/Image/RCTImageStoreManager.mm +5 -5
  192. package/Libraries/Image/RCTLocalAssetImageLoader.mm +5 -0
  193. package/Libraries/Image/React-RCTImage.podspec +3 -3
  194. package/Libraries/Image/TextInlineImageNativeComponent.js +84 -2
  195. package/Libraries/Image/nativeImageSource.js +0 -2
  196. package/Libraries/Inspector/ElementProperties.js +1 -1
  197. package/Libraries/Inspector/Inspector.js +13 -4
  198. package/Libraries/Inspector/InspectorPanel.js +1 -1
  199. package/Libraries/Interaction/FrameRateLogger.js +0 -2
  200. package/Libraries/Interaction/InteractionManager.js +3 -5
  201. package/Libraries/Interaction/PanResponder.js +1 -1
  202. package/Libraries/LayoutAnimation/LayoutAnimation.js +53 -17
  203. package/Libraries/Linking/Linking.js +5 -7
  204. package/Libraries/Linking/NativeIntentAndroid.js +0 -2
  205. package/Libraries/Linking/NativeLinkingManager.js +0 -2
  206. package/Libraries/LinkingIOS/RCTLinkingPlugins.mm +4 -3
  207. package/Libraries/LinkingIOS/React-RCTLinking.podspec +3 -3
  208. package/Libraries/Lists/CellRenderMask.js +145 -0
  209. package/Libraries/Lists/FillRateHelper.js +1 -1
  210. package/Libraries/Lists/FlatList.js +77 -53
  211. package/Libraries/Lists/SectionList.js +20 -23
  212. package/Libraries/Lists/SectionListModern.js +249 -0
  213. package/Libraries/Lists/ViewabilityHelper.js +9 -9
  214. package/Libraries/Lists/VirtualizeUtils.js +18 -20
  215. package/Libraries/Lists/VirtualizedList.js +176 -132
  216. package/Libraries/Lists/VirtualizedListContext.js +0 -2
  217. package/Libraries/Lists/VirtualizedSectionList.js +247 -209
  218. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +6 -6
  219. package/Libraries/LogBox/Data/LogBoxData.js +21 -19
  220. package/Libraries/LogBox/Data/LogBoxLog.js +0 -2
  221. package/Libraries/LogBox/Data/LogBoxSymbolication.js +0 -2
  222. package/Libraries/LogBox/Data/parseLogBoxLog.js +0 -2
  223. package/Libraries/LogBox/LogBox.js +114 -49
  224. package/Libraries/LogBox/LogBoxInspectorContainer.js +0 -2
  225. package/Libraries/LogBox/LogBoxNotificationContainer.js +0 -2
  226. package/Libraries/LogBox/UI/LogBoxButton.js +0 -2
  227. package/Libraries/LogBox/UI/LogBoxImages/alert-triangle.png +0 -0
  228. package/Libraries/LogBox/UI/LogBoxImages/chevron-left.png +0 -0
  229. package/Libraries/LogBox/UI/LogBoxImages/chevron-right.png +0 -0
  230. package/Libraries/LogBox/UI/LogBoxImages/close.png +0 -0
  231. package/Libraries/LogBox/UI/LogBoxImages/loader.png +0 -0
  232. package/Libraries/LogBox/UI/LogBoxInspector.js +0 -2
  233. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +0 -2
  234. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +0 -2
  235. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +0 -2
  236. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +0 -2
  237. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +0 -2
  238. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +0 -2
  239. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +4 -5
  240. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +0 -2
  241. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +4 -3
  242. package/Libraries/LogBox/UI/LogBoxMessage.js +0 -2
  243. package/Libraries/LogBox/UI/LogBoxNotification.js +3 -4
  244. package/Libraries/LogBox/UI/LogBoxStyle.js +0 -2
  245. package/Libraries/Modal/Modal.js +42 -21
  246. package/Libraries/{Text/TextInjection.js → Modal/ModalInjection.js} +3 -5
  247. package/Libraries/Modal/NativeModalManager.js +0 -2
  248. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +8 -4
  249. package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +0 -3
  250. package/Libraries/NativeAnimation/RCTAnimationPlugins.mm +4 -3
  251. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +6 -3
  252. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +1 -1
  253. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.m +1 -1
  254. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +32 -28
  255. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +3 -3
  256. package/Libraries/NativeComponent/NativeComponentRegistry.js +34 -2
  257. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +0 -2
  258. package/Libraries/NativeModules/specs/NativeDevMenu.js +0 -2
  259. package/Libraries/NativeModules/specs/NativeDevSettings.js +0 -2
  260. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +0 -2
  261. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +0 -2
  262. package/Libraries/NativeModules/specs/NativeLogBox.js +0 -2
  263. package/Libraries/NativeModules/specs/NativeRedBox.js +0 -2
  264. package/Libraries/NativeModules/specs/NativeSourceCode.js +0 -2
  265. package/Libraries/Network/NativeNetworkingAndroid.js +0 -2
  266. package/Libraries/Network/NativeNetworkingIOS.js +0 -2
  267. package/Libraries/Network/RCTDataRequestHandler.mm +6 -0
  268. package/Libraries/Network/RCTFileRequestHandler.mm +6 -0
  269. package/Libraries/Network/RCTHTTPRequestHandler.h +5 -0
  270. package/Libraries/Network/RCTHTTPRequestHandler.mm +25 -7
  271. package/Libraries/Network/RCTNetworkPlugins.mm +4 -3
  272. package/Libraries/Network/RCTNetworking.android.js +6 -3
  273. package/Libraries/Network/RCTNetworking.h +1 -1
  274. package/Libraries/Network/RCTNetworking.ios.js +63 -21
  275. package/Libraries/Network/RCTNetworking.mm +3 -3
  276. package/Libraries/Network/React-RCTNetwork.podspec +2 -2
  277. package/Libraries/Network/XMLHttpRequest.js +5 -3
  278. package/Libraries/Network/convertRequestBody.js +2 -1
  279. package/Libraries/NewAppScreen/components/Colors.js +0 -2
  280. package/Libraries/NewAppScreen/components/Header.js +1 -1
  281. package/Libraries/NewAppScreen/components/HermesBadge.js +4 -1
  282. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +0 -1
  283. package/Libraries/NewAppScreen/components/logo.png +0 -0
  284. package/Libraries/NewAppScreen/index.js +0 -2
  285. package/Libraries/Performance/NativeJSCSamplingProfiler.js +0 -2
  286. package/Libraries/Performance/QuickPerformanceLogger.js +4 -4
  287. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -3
  288. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +10 -5
  289. package/Libraries/Pressability/HoverState.js +0 -2
  290. package/Libraries/Pressability/Pressability.js +18 -13
  291. package/Libraries/Pressability/PressabilityDebug.js +9 -4
  292. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +48 -0
  293. package/Libraries/Pressability/PressabilityTypes.js +18 -0
  294. package/Libraries/Pressability/usePressability.js +0 -2
  295. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +3 -0
  296. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +18 -3
  297. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +13 -1
  298. package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.mm +4 -3
  299. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +3 -3
  300. package/Libraries/RCTRequired/BUCK +4 -1
  301. package/Libraries/RCTRequired/RCTRequired.podspec +2 -2
  302. package/Libraries/ReactNative/AppContainer.js +3 -25
  303. package/Libraries/ReactNative/AppRegistry.js +48 -7
  304. package/Libraries/ReactNative/DisplayMode.js +32 -0
  305. package/Libraries/ReactNative/DummyUIManager.js +7 -2
  306. package/Libraries/ReactNative/FabricUIManager.js +6 -5
  307. package/Libraries/ReactNative/HeadlessJsTaskError.js +0 -2
  308. package/Libraries/ReactNative/I18nManager.js +23 -9
  309. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +0 -2
  310. package/Libraries/ReactNative/NativeI18nManager.js +1 -2
  311. package/Libraries/ReactNative/NativeUIManager.js +2 -3
  312. package/Libraries/ReactNative/PaperUIManager.js +13 -7
  313. package/Libraries/ReactNative/RootTag.js +2 -4
  314. package/Libraries/ReactNative/UIManager.js +2 -3
  315. package/Libraries/ReactNative/UIManagerInjection.js +0 -2
  316. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +32 -0
  317. package/Libraries/ReactNative/renderApplication.js +24 -6
  318. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +6 -3
  319. package/Libraries/Reliability/UserFlow.js +7 -0
  320. package/Libraries/Renderer/REVISION +1 -1
  321. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +9484 -7643
  322. package/Libraries/Renderer/implementations/ReactFabric-dev.js +7877 -6935
  323. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +3038 -2506
  324. package/Libraries/Renderer/implementations/ReactFabric-prod.js +2112 -1937
  325. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +3375 -2693
  326. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +2568 -2244
  327. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +9638 -7942
  328. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +5736 -4864
  329. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +2865 -2464
  330. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +2275 -2120
  331. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +3190 -2643
  332. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +2565 -2259
  333. package/Libraries/Renderer/shims/ReactFabric.js +5 -3
  334. package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -0
  335. package/Libraries/Renderer/shims/ReactNative.js +3 -0
  336. package/Libraries/Renderer/shims/ReactNativeTypes.js +21 -15
  337. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +5 -0
  338. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -0
  339. package/Libraries/Settings/NativeSettingsManager.js +0 -2
  340. package/Libraries/Settings/RCTSettingsPlugins.mm +4 -3
  341. package/Libraries/Settings/React-RCTSettings.podspec +2 -2
  342. package/Libraries/Settings/Settings.ios.js +4 -2
  343. package/Libraries/Share/NativeShareModule.js +0 -2
  344. package/Libraries/Share/Share.js +0 -2
  345. package/Libraries/Storage/AsyncStorage.js +1 -2
  346. package/Libraries/Storage/NativeAsyncLocalStorage.js +0 -2
  347. package/Libraries/Storage/NativeAsyncSQLiteDBStorage.js +0 -2
  348. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +0 -2
  349. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +16 -3
  350. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +8 -3
  351. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +2 -2
  352. package/Libraries/StyleSheet/Rect.js +0 -2
  353. package/Libraries/StyleSheet/StyleSheet.js +3 -5
  354. package/Libraries/StyleSheet/normalizeColor.js +2 -4
  355. package/Libraries/StyleSheet/processColorArray.js +16 -6
  356. package/Libraries/StyleSheet/processTransform.js +6 -6
  357. package/Libraries/StyleSheet/splitLayoutProps.js +0 -4
  358. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.mm +1 -1
  359. package/Libraries/Text/React-RCTText.podspec +2 -2
  360. package/Libraries/Text/Text.js +187 -235
  361. package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +0 -2
  362. package/Libraries/Text/TextInput/Multiline/RCTUITextView.m +12 -2
  363. package/Libraries/Text/TextInput/RCTBaseTextInputView.m +10 -12
  364. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.m +4 -11
  365. package/Libraries/Text/TextNativeComponent.js +0 -2
  366. package/Libraries/Text/TextProps.js +7 -7
  367. package/Libraries/TurboModule/RCTExport.js +1 -1
  368. package/Libraries/TurboModule/TurboModuleRegistry.js +1 -5
  369. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +0 -2
  370. package/Libraries/TypeSafety/RCTTypeSafety.podspec +3 -3
  371. package/Libraries/Types/CoreEventTypes.js +0 -2
  372. package/Libraries/{Components/Picker/PickerAndroid.ios.js → Types/RootTagTypes.js} +2 -3
  373. package/Libraries/UTFSequence.js +1 -1
  374. package/Libraries/Utilities/Appearance.js +13 -7
  375. package/Libraries/Utilities/BackHandler.android.js +0 -2
  376. package/Libraries/Utilities/DebugEnvironment.js +0 -2
  377. package/Libraries/Utilities/DevSettings.js +48 -58
  378. package/Libraries/Utilities/DeviceInfo.js +0 -2
  379. package/Libraries/Utilities/Dimensions.js +19 -20
  380. package/Libraries/Utilities/FeatureDetection.js +31 -0
  381. package/Libraries/Utilities/GlobalPerformanceLogger.js +0 -2
  382. package/Libraries/Utilities/HMRClient.js +15 -10
  383. package/Libraries/Utilities/JSDevSupportModule.js +0 -2
  384. package/Libraries/Utilities/LoadingView.android.js +0 -2
  385. package/Libraries/Utilities/LoadingView.ios.js +0 -2
  386. package/Libraries/Utilities/MatrixMath.js +1 -1
  387. package/Libraries/Utilities/NativeAppearance.js +0 -2
  388. package/Libraries/Utilities/NativeDevLoadingView.js +0 -2
  389. package/Libraries/Utilities/NativeDevSplitBundleLoader.js +0 -2
  390. package/Libraries/Utilities/NativeDeviceInfo.js +1 -3
  391. package/Libraries/Utilities/NativeJSDevSupport.js +0 -2
  392. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +0 -2
  393. package/Libraries/Utilities/NativePlatformConstantsIOS.js +0 -2
  394. package/Libraries/Utilities/PerformanceLoggerContext.js +8 -4
  395. package/Libraries/Utilities/Platform.android.js +0 -2
  396. package/Libraries/Utilities/Platform.ios.js +0 -2
  397. package/Libraries/Utilities/ReactNativeTestTools.js +12 -19
  398. package/Libraries/Utilities/codegenNativeCommands.js +1 -3
  399. package/Libraries/Utilities/codegenNativeComponent.js +0 -2
  400. package/Libraries/Utilities/createPerformanceLogger.js +0 -2
  401. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -0
  402. package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
  403. package/Libraries/Utilities/deprecatedPropType.js +2 -4
  404. package/Libraries/Utilities/stringifySafe.js +1 -3
  405. package/Libraries/Utilities/useColorScheme.js +4 -4
  406. package/Libraries/Utilities/useMergeRefs.js +44 -0
  407. package/Libraries/Utilities/useRefEffect.js +45 -0
  408. package/Libraries/Utilities/useWindowDimensions.js +9 -6
  409. package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +0 -2
  410. package/Libraries/Vibration/NativeVibration.js +0 -2
  411. package/Libraries/Vibration/RCTVibrationPlugins.mm +4 -3
  412. package/Libraries/Vibration/React-RCTVibration.podspec +2 -2
  413. package/Libraries/Vibration/Vibration.js +0 -2
  414. package/Libraries/WebSocket/NativeWebSocketModule.js +0 -2
  415. package/Libraries/WebSocket/WebSocket.js +12 -12
  416. package/Libraries/WebSocket/WebSocketInterceptor.js +6 -3
  417. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -0
  418. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +0 -2
  419. package/Libraries/promiseRejectionTrackingOptions.js +2 -2
  420. package/Libraries/vendor/emitter/EventEmitter.js +36 -2
  421. package/Libraries/vendor/emitter/EventSubscription.js +19 -0
  422. package/Libraries/vendor/emitter/_EmitterSubscription.js +7 -7
  423. package/Libraries/vendor/emitter/_EventEmitter.js +28 -42
  424. package/Libraries/vendor/emitter/_EventSubscription.js +4 -2
  425. package/Libraries/vendor/emitter/_EventSubscriptionVendor.js +1 -1
  426. package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +0 -2
  427. package/README.md +5 -5
  428. package/React/Base/RCTAssert.h +29 -11
  429. package/React/Base/RCTAssert.m +52 -0
  430. package/React/Base/RCTBridge+Private.h +8 -0
  431. package/React/Base/RCTBridge.h +20 -0
  432. package/React/Base/RCTBridge.m +39 -7
  433. package/React/Base/RCTBridgeModule.h +62 -12
  434. package/React/Base/RCTBundleManager.m +78 -0
  435. package/React/Base/RCTBundleURLProvider.h +35 -9
  436. package/React/Base/RCTBundleURLProvider.mm +90 -25
  437. package/React/Base/RCTCallableJSModules.m +47 -0
  438. package/React/Base/RCTConstants.h +3 -16
  439. package/React/Base/RCTConstants.m +6 -36
  440. package/React/Base/RCTConvert.h +1 -1
  441. package/React/Base/RCTConvert.m +31 -7
  442. package/React/Base/RCTCxxConvert.h +1 -1
  443. package/React/Base/RCTDefines.h +22 -3
  444. package/React/Base/RCTEventDispatcherProtocol.h +3 -2
  445. package/React/{Views/RCTPickerManager.h → Base/RCTInitializing.h} +4 -2
  446. package/React/Base/RCTJSThread.h +29 -0
  447. package/React/Base/RCTJSThread.m +19 -0
  448. package/React/Base/RCTModuleData.h +11 -3
  449. package/React/Base/RCTModuleData.mm +66 -1
  450. package/React/Base/RCTMultipartStreamReader.m +0 -2
  451. package/React/Base/RCTRootView.h +25 -1
  452. package/React/Base/RCTRootView.m +27 -4
  453. package/React/Base/RCTTouchHandler.m +3 -0
  454. package/React/Base/RCTUtils.h +3 -0
  455. package/React/Base/RCTUtils.m +14 -7
  456. package/React/Base/RCTVersion.m +1 -1
  457. package/React/Base/Surface/RCTSurfaceStage.h +6 -11
  458. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +12 -0
  459. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +46 -2
  460. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +3 -0
  461. package/React/CoreModules/BUCK +4 -3
  462. package/React/CoreModules/CoreModulesPlugins.mm +4 -3
  463. package/React/CoreModules/RCTAccessibilityManager.mm +1 -1
  464. package/React/CoreModules/RCTActionSheetManager.mm +14 -5
  465. package/React/CoreModules/RCTAsyncLocalStorage.mm +4 -0
  466. package/React/CoreModules/RCTDevLoadingView.mm +25 -33
  467. package/React/CoreModules/RCTDevMenu.h +0 -5
  468. package/React/CoreModules/RCTDevMenu.mm +29 -60
  469. package/React/CoreModules/RCTDevSettings.h +12 -2
  470. package/React/CoreModules/RCTDevSettings.mm +96 -53
  471. package/React/CoreModules/RCTDevSplitBundleLoader.mm +3 -8
  472. package/React/CoreModules/RCTDeviceInfo.mm +4 -5
  473. package/React/CoreModules/RCTEventDispatcher.h +2 -1
  474. package/React/CoreModules/RCTEventDispatcher.mm +23 -25
  475. package/React/CoreModules/RCTKeyboardObserver.mm +1 -1
  476. package/React/CoreModules/RCTLogBox.mm +14 -10
  477. package/React/CoreModules/RCTPerfMonitor.mm +15 -4
  478. package/React/CoreModules/RCTRedBox.mm +3 -12
  479. package/React/CoreModules/RCTSourceCode.mm +2 -1
  480. package/React/CoreModules/RCTTiming.h +2 -1
  481. package/React/CoreModules/RCTTiming.mm +1 -3
  482. package/React/CoreModules/RCTWebSocketExecutor.mm +6 -0
  483. package/React/CoreModules/React-CoreModules.podspec +3 -3
  484. package/React/CxxBridge/RCTCxxBridge.mm +93 -33
  485. package/React/CxxModule/RCTNativeModule.mm +3 -1
  486. package/React/DevSupport/RCTPackagerConnection.h +3 -0
  487. package/React/DevSupport/RCTPackagerConnection.mm +19 -8
  488. package/{Libraries → React}/FBReactNativeSpec/FBReactNativeSpec.podspec +15 -8
  489. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.h +2 -1
  490. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +5 -10
  491. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +4 -2
  492. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +1 -3
  493. package/React/Fabric/Mounting/ComponentViews/Modal/RCTFabricModalHostViewController.mm +7 -0
  494. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.h +3 -1
  495. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +62 -20
  496. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +0 -1
  497. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +0 -1
  498. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +5 -0
  499. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +135 -87
  500. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.h +23 -0
  501. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.mm +22 -0
  502. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.mm +14 -9
  503. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +104 -16
  504. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +53 -17
  505. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +48 -2
  506. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +6 -0
  507. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +122 -8
  508. package/React/Fabric/Mounting/RCTComponentViewFactory.h +10 -2
  509. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +83 -46
  510. package/React/Fabric/Mounting/RCTComponentViewProtocol.h +3 -0
  511. package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +1 -12
  512. package/React/Fabric/Mounting/RCTMountingManager.h +22 -1
  513. package/React/Fabric/Mounting/RCTMountingManager.mm +57 -3
  514. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +4 -0
  515. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +30 -4
  516. package/React/Fabric/RCTConversions.h +3 -0
  517. package/React/Fabric/RCTScheduler.h +8 -16
  518. package/React/Fabric/RCTScheduler.mm +36 -54
  519. package/React/Fabric/RCTSurfacePresenter.h +8 -16
  520. package/React/Fabric/RCTSurfacePresenter.mm +49 -170
  521. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +4 -2
  522. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +1 -1
  523. package/React/Fabric/RCTSurfaceRegistry.h +1 -1
  524. package/React/Fabric/Surface/RCTFabricSurface.h +2 -6
  525. package/React/Fabric/Surface/RCTFabricSurface.mm +132 -129
  526. package/React/Modules/RCTEventEmitter.h +1 -2
  527. package/React/Modules/RCTEventEmitter.m +8 -11
  528. package/React/Modules/RCTI18nUtil.h +14 -6
  529. package/React/Modules/RCTI18nUtil.m +1 -47
  530. package/React/Modules/RCTUIManager.m +8 -2
  531. package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
  532. package/React/Profiler/RCTProfileTrampoline-arm64.S +2 -2
  533. package/React/React-RCTFabric.podspec +5 -5
  534. package/React/Tests/Text/RCTParagraphComponentViewTests.mm +63 -0
  535. package/React/Views/RCTComponentData.h +10 -1
  536. package/React/Views/RCTComponentData.m +23 -8
  537. package/React/Views/RCTDatePickerManager.m +33 -0
  538. package/React/Views/RCTFont.mm +54 -38
  539. package/React/Views/RCTModalHostView.h +5 -1
  540. package/React/Views/RCTModalHostView.m +52 -20
  541. package/React/Views/RCTModalHostViewManager.m +5 -0
  542. package/React/Views/RCTView.h +7 -7
  543. package/React/Views/RCTView.m +32 -49
  544. package/React/Views/RCTViewManager.m +22 -4
  545. package/React/Views/RCTWeakViewHolder.h +19 -0
  546. package/React/Views/RefreshControl/RCTRefreshControl.m +26 -0
  547. package/React/Views/RefreshControl/RCTRefreshControlManager.m +1 -0
  548. package/React/Views/SafeAreaView/RCTSafeAreaView.m +1 -5
  549. package/React/Views/ScrollView/RCTScrollView.h +1 -0
  550. package/React/Views/ScrollView/RCTScrollView.m +123 -36
  551. package/React/Views/ScrollView/RCTScrollViewManager.m +4 -7
  552. package/React/Views/UIView+React.m +2 -11
  553. package/React/third-party.xcconfig +1 -1
  554. package/React-Core.podspec +5 -4
  555. package/React.podspec +2 -2
  556. package/ReactAndroid/Android-prebuilt.mk +19 -3
  557. package/ReactAndroid/README.md +2 -2
  558. package/ReactAndroid/build.gradle +137 -25
  559. package/ReactAndroid/gradle.properties +7 -5
  560. package/ReactAndroid/src/androidTest/buck-runner/BUCK +1 -0
  561. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/BUCK +1 -1
  562. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java +1 -1
  563. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/BUCK +1 -1
  564. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/ReactIdleDetectionUtil.java +1 -1
  565. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/rule/BUCK +5 -5
  566. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/BUCK +0 -2
  567. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/BUCK +5 -5
  568. package/ReactAndroid/src/androidTest/js/BUCK +26 -0
  569. package/ReactAndroid/src/androidTest/js/TestBundle.js +0 -12
  570. package/ReactAndroid/src/androidTest/js/UIManagerTestModule.js +7 -6
  571. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +2 -2
  572. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +4 -4
  573. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.java +1 -1
  574. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.java +0 -6
  575. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/BUCK +2 -2
  576. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/proguard_annotations.pro +1 -0
  577. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +2 -1
  578. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +3 -2
  579. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +1 -0
  580. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.java +5 -0
  581. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +6 -2
  582. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +184 -92
  583. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +37 -1
  584. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +21 -1
  585. package/ReactAndroid/src/main/java/com/facebook/react/{turbomodule/core/ReactPackageTurboModuleManagerDelegate.java → ReactPackageTurboModuleManagerDelegate.java} +2 -3
  586. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +40 -28
  587. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +1 -1
  588. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +10 -2
  589. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +5 -5
  590. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BackgroundExecutor.java +3 -2
  591. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +7 -5
  592. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +4 -0
  593. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +11 -3
  594. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.java +4 -1
  595. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModuleRegistry.java +4 -0
  596. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +37 -0
  597. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +1 -1
  598. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +8 -1
  599. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +26 -0
  600. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +46 -8
  601. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +2 -3
  602. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +39 -0
  603. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarkerConstants.java +7 -3
  604. package/ReactAndroid/src/main/java/com/facebook/react/bridge/{ReactSoftException.java → ReactSoftExceptionLogger.java} +8 -3
  605. package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeScheduler.java +21 -0
  606. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +8 -7
  607. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +10 -0
  608. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +3 -2
  609. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +29 -0
  610. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java +347 -0
  611. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBufferSoLoader.java +33 -0
  612. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/Android.mk +39 -0
  613. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/BUCK +34 -0
  614. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/OnLoad.cpp +15 -0
  615. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/ReadableMapBuffer.cpp +76 -0
  616. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/ReadableMapBuffer.h +51 -0
  617. package/ReactAndroid/src/main/java/com/facebook/react/config/BUCK +2 -1
  618. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +61 -29
  619. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +1 -1
  620. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +275 -0
  621. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +97 -0
  622. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevLoadingViewController.java +2 -2
  623. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +9 -58
  624. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +189 -352
  625. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +4 -73
  626. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java +13 -1
  627. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.java +1 -1
  628. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.java +100 -0
  629. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{ReactInstanceManagerDevHelper.java → ReactInstanceDevHelper.java} +3 -2
  630. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxHandler.java +2 -16
  631. package/ReactAndroid/src/main/java/com/facebook/react/{modules/datepicker/DatePickerMode.java → devsupport/interfaces/BundleLoadCallback.java} +3 -6
  632. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +6 -1
  633. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/ErrorType.java +23 -0
  634. package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +1 -1
  635. package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +15 -1
  636. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.java +4 -3
  637. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +9 -64
  638. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +317 -393
  639. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +40 -1
  640. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandler.java +50 -0
  641. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.java +131 -0
  642. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +36 -1
  643. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java +14 -2
  644. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +5 -3
  645. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/AsyncEventBeatV2.cpp +69 -0
  646. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/AsyncEventBeatV2.h +40 -0
  647. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +4 -4
  648. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +308 -103
  649. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +33 -8
  650. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CoreComponentsRegistry.cpp +3 -6
  651. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.cpp +22 -2
  652. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.h +4 -0
  653. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/OnLoad.cpp +2 -0
  654. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.cpp +16 -2
  655. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.h +3 -1
  656. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.cpp +122 -0
  657. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.h +68 -0
  658. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +414 -0
  659. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +134 -71
  660. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +247 -40
  661. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +4 -6
  662. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +13 -6
  663. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.java +2 -2
  664. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +2 -2
  665. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +3 -3
  666. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java +21 -4
  667. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +1 -1
  668. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +1 -1
  669. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java +11 -1
  670. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +1 -1
  671. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -1
  672. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.java +35 -7
  673. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +2 -2
  674. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/BUCK +1 -1
  675. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +1 -1
  676. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +1 -1
  677. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +1 -1
  678. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/{JavaScriptTimerManager.java → JavaScriptTimerExecutor.java} +1 -1
  679. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.java +7 -7
  680. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +7 -4
  681. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java +1 -1
  682. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +1 -1
  683. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +1 -1
  684. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +19 -8
  685. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +1 -1
  686. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +12 -4
  687. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.java +10 -0
  688. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +2 -1
  689. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +19 -13
  690. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +1 -1
  691. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +1 -1
  692. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +23 -19
  693. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +1 -1
  694. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +1 -4
  695. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +1 -1
  696. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java +1 -18
  697. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +1 -1
  698. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +1 -1
  699. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +1 -1
  700. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +1 -1
  701. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageModule.java +1 -1
  702. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +1 -1
  703. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +2 -2
  704. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
  705. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +1 -1
  706. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +1 -1
  707. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +1 -1
  708. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +11 -9
  709. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/Android.mk +1 -1
  710. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/BUCK +1 -1
  711. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +0 -2
  712. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -9
  713. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +0 -1
  714. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +9 -6
  715. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java +3 -0
  716. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/TurboModule.java +4 -4
  717. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/Android.mk +2 -2
  718. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/BUCK +2 -2
  719. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.cpp +40 -7
  720. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.h +10 -2
  721. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +3 -0
  722. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +15 -1
  723. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolver.java +17 -0
  724. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolverManager.java +41 -0
  725. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +7 -28
  726. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FabricViewStateManager.java +2 -11
  727. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.java +14 -5
  728. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +4 -13
  729. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +10 -13
  730. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.java +17 -6
  731. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.java +1 -6
  732. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +16 -10
  733. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingProhibitedView.java +26 -0
  734. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.java +5 -1
  735. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +25 -0
  736. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.java +18 -0
  737. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/StateWrapper.java +21 -1
  738. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +162 -66
  739. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +4 -8
  740. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementationProvider.java +1 -1
  741. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +29 -20
  742. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +15 -17
  743. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +1 -2
  744. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +13 -6
  745. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +7 -4
  746. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +2 -2
  747. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerResolver.java +26 -0
  748. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +16 -1
  749. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ContentSizeChangeEvent.java +8 -3
  750. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +100 -8
  751. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +236 -0
  752. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +8 -0
  753. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +21 -7
  754. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +58 -4
  755. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/interfaces/ViewProps.java +10 -2
  756. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/Android.mk +37 -0
  757. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/BUCK +41 -0
  758. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.cpp +77 -0
  759. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.h +54 -0
  760. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/OnLoad.cpp +16 -0
  761. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +1 -1
  762. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java +12 -4
  763. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.java +9 -10
  764. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.java +9 -10
  765. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.java +7 -13
  766. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.java +7 -13
  767. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.java +2 -16
  768. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java +10 -5
  769. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +2 -1
  770. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.java +12 -3
  771. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +23 -12
  772. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/RequestCloseEvent.java +12 -4
  773. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ShowEvent.java +12 -4
  774. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +1 -1
  775. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +1 -0
  776. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerView.java +29 -6
  777. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +184 -24
  778. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +9 -4
  779. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +109 -12
  780. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +18 -3
  781. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +9 -4
  782. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +37 -20
  783. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +1 -1
  784. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +0 -5
  785. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +5 -7
  786. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlidingCompleteEvent.java +13 -16
  787. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +1 -1
  788. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.java +12 -4
  789. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java +2 -1
  790. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +1 -1
  791. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.java +13 -0
  792. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.java +9 -13
  793. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +6 -10
  794. package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +1 -0
  795. package/ReactAndroid/src/main/java/com/facebook/react/views/text/CustomStyleSpan.java +6 -8
  796. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactClickableSpan.java +2 -1
  797. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactFontManager.java +59 -44
  798. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +0 -4
  799. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +32 -4
  800. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +19 -0
  801. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +48 -1
  802. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.java +41 -59
  803. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +230 -139
  804. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +45 -20
  805. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +616 -0
  806. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TypefaceStyle.java +72 -0
  807. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +1 -0
  808. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java +3 -13
  809. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +19 -8
  810. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +3 -0
  811. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java +3 -13
  812. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputBlurEvent.java +3 -13
  813. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.java +3 -13
  814. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEvent.java +3 -13
  815. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputFocusEvent.java +8 -18
  816. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.java +9 -20
  817. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +126 -63
  818. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.java +3 -13
  819. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.java +8 -18
  820. package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.java +92 -0
  821. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +39 -8
  822. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +49 -2
  823. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.java +3 -1
  824. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.java +11 -4
  825. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +13 -7
  826. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +24 -2
  827. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +151 -0
  828. package/ReactAndroid/src/main/jni/first-party/fb/BUCK +4 -0
  829. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +2 -7
  830. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJTypesVanilla.h +8 -4
  831. package/ReactAndroid/src/main/jni/react/jni/Android.mk +6 -3
  832. package/ReactAndroid/src/main/jni/react/jni/BUCK +5 -2
  833. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +61 -0
  834. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +8 -0
  835. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +18 -0
  836. package/{ReactCommon/react/renderer/components/picker/iospicker/primitives.h → ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h} +6 -10
  837. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.cpp +21 -0
  838. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.h +28 -0
  839. package/{ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerComponentDescriptor.h → ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.cpp} +8 -7
  840. package/ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.h +30 -0
  841. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  842. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +0 -94
  843. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h +0 -30
  844. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.h +1 -0
  845. package/ReactAndroid/src/main/jni/third-party/boost/Android.mk +7 -2
  846. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm/jump_arm_aapcs_elf_gas.S +86 -0
  847. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm/make_arm_aapcs_elf_gas.S +79 -0
  848. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm/ontop_arm_aapcs_elf_gas.S +91 -0
  849. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm64/jump_arm64_aapcs_elf_gas.S +114 -0
  850. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm64/make_arm64_aapcs_elf_gas.S +85 -0
  851. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm64/ontop_arm64_aapcs_elf_gas.S +113 -0
  852. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86/jump_i386_sysv_elf_gas.S +78 -0
  853. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86/make_i386_sysv_elf_gas.S +106 -0
  854. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86/ontop_i386_sysv_elf_gas.S +85 -0
  855. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86_64/jump_x86_64_sysv_elf_gas.S +76 -0
  856. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86_64/make_x86_64_sysv_elf_gas.S +81 -0
  857. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86_64/ontop_x86_64_sysv_elf_gas.S +79 -0
  858. package/ReactAndroid/src/main/jni/third-party/fmt/Android.mk +15 -0
  859. package/ReactAndroid/src/main/jni/third-party/folly/Android.mk +36 -16
  860. package/ReactAndroid/src/main/jni/third-party/libevent/Android.mk +36 -0
  861. package/ReactAndroid/src/main/jni/third-party/libevent/evconfig-private.h +49 -0
  862. package/{third-party-podspecs/libevent.podspec → ReactAndroid/src/main/jni/third-party/libevent/event-config.h} +141 -366
  863. package/ReactAndroid/src/main/libraries/fbjni/BUCK +2 -2
  864. package/ReactAndroid/src/main/libraries/fresco/fresco-react-native/BUCK +26 -26
  865. package/ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK +5 -5
  866. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +2 -1
  867. package/ReactAndroid/src/main/res/views/uimanager/values/strings_unlocalized.xml +4 -8
  868. package/ReactAndroid/src/main/third-party/android/androidx/BUCK +63 -2
  869. package/ReactAndroid/src/main/third-party/java/infer-annotations/BUCK +2 -2
  870. package/ReactAndroid/src/main/third-party/java/okhttp/BUCK +29 -9
  871. package/ReactAndroid/src/main/third-party/java/okio/BUCK +15 -5
  872. package/ReactAndroid/src/main/third-party/java/robolectric/{4.4/BUCK → BUCK} +0 -0
  873. package/ReactAndroid/src/main/third-party/java/testing-support-lib/BUCK +0 -31
  874. package/ReactAndroid/src/main/third-party/kotlin/BUCK +91 -0
  875. package/ReactAndroid/src/test/java/com/facebook/react/RootViewTest.java +8 -3
  876. package/ReactAndroid/src/test/java/com/facebook/react/animated/NativeAnimatedNodeTraversalTest.java +1 -1
  877. package/ReactAndroid/src/test/java/com/facebook/react/bridge/BUCK +1 -1
  878. package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReactTestHelper.java +1 -0
  879. package/ReactAndroid/src/test/java/com/facebook/react/devsupport/JSDebuggerWebSocketClientTest.java +3 -1
  880. package/ReactAndroid/src/test/java/com/facebook/react/modules/BUCK +1 -0
  881. package/ReactAndroid/src/test/java/com/facebook/react/modules/deviceinfo/DeviceInfoModuleTest.java +168 -0
  882. package/ReactAndroid/src/test/java/com/facebook/react/modules/dialog/DialogModuleTest.java +1 -1
  883. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/NetworkingModuleTest.java +10 -10
  884. package/ReactAndroid/src/test/java/com/facebook/react/modules/timing/TimingModuleTest.java +1 -1
  885. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/BaseViewManagerTest.java +32 -0
  886. package/ReactAndroid/src/test/java/com/facebook/react/views/image/ReactImagePropertyTest.java +8 -0
  887. package/ReactAndroid/src/test/java/com/facebook/react/views/textinput/ReactTextInputPropertyTest.java +4 -0
  888. package/ReactCommon/React-Fabric.podspec +58 -14
  889. package/ReactCommon/ReactCommon.podspec +8 -3
  890. package/ReactCommon/better/Android.mk +1 -1
  891. package/ReactCommon/better/BUCK +2 -2
  892. package/ReactCommon/callinvoker/Android.mk +1 -1
  893. package/ReactCommon/callinvoker/BUCK +3 -3
  894. package/ReactCommon/callinvoker/React-callinvoker.podspec +3 -3
  895. package/ReactCommon/cxxreact/Android.mk +2 -1
  896. package/ReactCommon/cxxreact/BUCK +2 -4
  897. package/ReactCommon/cxxreact/CxxNativeModule.cpp +28 -0
  898. package/ReactCommon/cxxreact/CxxNativeModule.h +9 -0
  899. package/ReactCommon/cxxreact/Instance.cpp +21 -1
  900. package/ReactCommon/cxxreact/MethodCall.cpp +2 -2
  901. package/ReactCommon/cxxreact/ModuleRegistry.cpp +5 -0
  902. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +0 -21
  903. package/ReactCommon/cxxreact/NativeToJsBridge.h +0 -6
  904. package/ReactCommon/cxxreact/React-cxxreact.podspec +5 -4
  905. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  906. package/ReactCommon/hermes/React-hermes.podspec +5 -5
  907. package/ReactCommon/hermes/executor/Android.mk +4 -4
  908. package/ReactCommon/hermes/inspector/Android.mk +1 -2
  909. package/ReactCommon/hermes/inspector/BUCK +8 -5
  910. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +115 -0
  911. package/ReactCommon/hermes/inspector/chrome/MessageTypes.cpp +215 -1
  912. package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +115 -1
  913. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +144 -0
  914. package/ReactCommon/hermes/inspector/tools/message_types.txt +4 -0
  915. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/CommandTest.js +1 -3
  916. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/EventTest.js +1 -3
  917. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/GraphTest.js +1 -3
  918. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/HeaderWriterTest.js +1 -3
  919. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/ImplementationWriterTest.js +1 -3
  920. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/PropertyTest.js +1 -3
  921. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/TypeTest.js +1 -3
  922. package/ReactCommon/hermes/inspector/tools/msggen/package.json +8 -5
  923. package/ReactCommon/hermes/inspector/tools/msggen/src/Command.js +0 -2
  924. package/ReactCommon/hermes/inspector/tools/msggen/src/Converters.js +0 -2
  925. package/ReactCommon/hermes/inspector/tools/msggen/src/Event.js +0 -2
  926. package/ReactCommon/hermes/inspector/tools/msggen/src/Graph.js +0 -2
  927. package/ReactCommon/hermes/inspector/tools/msggen/src/HeaderWriter.js +0 -2
  928. package/ReactCommon/hermes/inspector/tools/msggen/src/ImplementationWriter.js +0 -2
  929. package/ReactCommon/hermes/inspector/tools/msggen/src/Property.js +1 -2
  930. package/ReactCommon/hermes/inspector/tools/msggen/src/TestHelpers.js +1 -3
  931. package/ReactCommon/hermes/inspector/tools/msggen/src/Type.js +0 -2
  932. package/ReactCommon/hermes/inspector/tools/msggen/src/index.js +1 -3
  933. package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +2246 -1419
  934. package/ReactCommon/jsi/Android.mk +1 -1
  935. package/ReactCommon/jsi/BUCK +1 -3
  936. package/ReactCommon/jsi/JSCRuntime.cpp +7 -0
  937. package/ReactCommon/jsi/React-jsi.podspec +4 -4
  938. package/ReactCommon/jsi/jsi/CMakeLists.txt +1 -1
  939. package/ReactCommon/jsi/jsi/decorator.h +15 -0
  940. package/ReactCommon/jsi/jsi/instrumentation.h +13 -0
  941. package/ReactCommon/jsi/jsi/jsi.cpp +3 -0
  942. package/ReactCommon/jsi/jsi/jsi.h +31 -2
  943. package/ReactCommon/jsi/jsi/jsilib-posix.cpp +1 -11
  944. package/ReactCommon/jsiexecutor/Android.mk +2 -2
  945. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +3 -3
  946. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +36 -3
  947. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +2 -0
  948. package/ReactCommon/jsinspector/BUCK +2 -0
  949. package/ReactCommon/jsinspector/React-jsinspector.podspec +1 -1
  950. package/ReactCommon/logger/Android.mk +23 -0
  951. package/ReactCommon/logger/BUCK +43 -0
  952. package/ReactCommon/logger/React-logger.podspec +40 -0
  953. package/ReactCommon/logger/react_native_log.cpp +52 -0
  954. package/ReactCommon/logger/react_native_log.h +33 -0
  955. package/ReactCommon/react/config/Android.mk +1 -1
  956. package/ReactCommon/react/config/BUCK +1 -1
  957. package/ReactCommon/react/debug/Android.mk +31 -0
  958. package/ReactCommon/react/debug/BUCK +69 -0
  959. package/ReactCommon/react/debug/flags.h +19 -0
  960. package/ReactCommon/react/debug/react_native_assert.cpp +45 -0
  961. package/ReactCommon/react/debug/react_native_assert.h +64 -0
  962. package/ReactCommon/react/nativemodule/core/Android.mk +3 -3
  963. package/ReactCommon/react/nativemodule/core/BUCK +3 -3
  964. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.cpp +1 -0
  965. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.h +3 -2
  966. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +1 -1
  967. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +46 -1
  968. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +10 -0
  969. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +55 -1
  970. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +76 -42
  971. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +11 -1
  972. package/ReactCommon/react/nativemodule/core/platform/ios/RCTBlockGuard.h +24 -0
  973. package/ReactCommon/react/nativemodule/core/platform/ios/RCTBlockGuard.mm +28 -0
  974. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.h +7 -16
  975. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.mm +79 -32
  976. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.h +0 -7
  977. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +123 -127
  978. package/ReactCommon/react/nativemodule/samples/BUCK +4 -5
  979. package/ReactCommon/react/nativemodule/samples/platform/android/Android.mk +2 -2
  980. package/ReactCommon/react/nativemodule/samples/platform/ios/RCTSampleTurboCxxModule.mm +12 -0
  981. package/ReactCommon/react/nativemodule/samples/platform/ios/RCTSampleTurboModule.mm +0 -2
  982. package/ReactCommon/react/renderer/animations/Android.mk +3 -2
  983. package/ReactCommon/react/renderer/animations/BUCK +6 -3
  984. package/ReactCommon/react/renderer/animations/LayoutAnimationCallbackWrapper.h +34 -0
  985. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +11 -66
  986. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.h +8 -13
  987. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +1117 -1147
  988. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +98 -243
  989. package/ReactCommon/react/renderer/animations/conversions.h +212 -0
  990. package/ReactCommon/react/renderer/animations/primitives.h +104 -0
  991. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +544 -0
  992. package/ReactCommon/react/renderer/animations/utils.cpp +71 -0
  993. package/ReactCommon/react/renderer/animations/utils.h +80 -0
  994. package/ReactCommon/react/renderer/attributedstring/Android.mk +4 -2
  995. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +0 -1
  996. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.cpp +28 -6
  997. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.h +2 -2
  998. package/ReactCommon/react/renderer/attributedstring/BUCK +9 -4
  999. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +7 -3
  1000. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +12 -2
  1001. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +7 -2
  1002. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -1
  1003. package/ReactCommon/react/renderer/attributedstring/conversions.h +718 -305
  1004. package/ReactCommon/react/renderer/attributedstring/primitives.h +34 -1
  1005. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringBoxTest.cpp +105 -0
  1006. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringTest.cpp +17 -20
  1007. package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +7 -12
  1008. package/ReactCommon/react/renderer/attributedstring/tests/TextAttributesTest.cpp +13 -15
  1009. package/ReactCommon/react/renderer/componentregistry/Android.mk +3 -2
  1010. package/ReactCommon/react/renderer/componentregistry/BUCK +5 -4
  1011. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +2 -2
  1012. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -0
  1013. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +17 -67
  1014. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +4 -1
  1015. package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +73 -0
  1016. package/ReactCommon/react/renderer/{components/picker/iospicker/PickerShadowNode.cpp → componentregistry/componentNameByReactViewName.h} +7 -2
  1017. package/ReactCommon/react/renderer/componentregistry/native/Android.mk +29 -0
  1018. package/ReactCommon/react/renderer/componentregistry/native/BUCK +58 -0
  1019. package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.cpp +68 -0
  1020. package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.h +61 -0
  1021. package/ReactCommon/react/renderer/components/image/Android.mk +5 -3
  1022. package/ReactCommon/react/renderer/components/image/BUCK +7 -3
  1023. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.h +3 -2
  1024. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +28 -9
  1025. package/ReactCommon/react/renderer/components/image/ImageProps.h +5 -1
  1026. package/ReactCommon/react/renderer/components/image/ImageState.h +9 -1
  1027. package/ReactCommon/react/renderer/components/image/conversions.h +29 -18
  1028. package/ReactCommon/react/renderer/components/inputaccessory/BUCK +4 -3
  1029. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryComponentDescriptor.h +5 -3
  1030. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +3 -3
  1031. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.h +1 -1
  1032. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +17 -4
  1033. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +5 -10
  1034. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +2 -0
  1035. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +1 -1
  1036. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +69 -12
  1037. package/ReactCommon/react/renderer/components/modal/Android.mk +4 -3
  1038. package/ReactCommon/react/renderer/components/modal/BUCK +6 -2
  1039. package/ReactCommon/react/renderer/components/modal/ModalHostViewComponentDescriptor.h +5 -3
  1040. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +6 -0
  1041. package/ReactCommon/react/renderer/components/progressbar/Android.mk +3 -3
  1042. package/ReactCommon/react/renderer/components/progressbar/BUCK +4 -3
  1043. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarComponentDescriptor.h +4 -2
  1044. package/ReactCommon/react/renderer/components/root/Android.mk +4 -3
  1045. package/ReactCommon/react/renderer/components/root/BUCK +4 -3
  1046. package/ReactCommon/react/renderer/components/root/RootProps.cpp +12 -2
  1047. package/ReactCommon/react/renderer/components/root/RootProps.h +6 -1
  1048. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +7 -1
  1049. package/ReactCommon/react/renderer/components/root/RootShadowNode.h +2 -0
  1050. package/ReactCommon/react/renderer/components/root/tests/RootShadowNodeTest.cpp +35 -3
  1051. package/ReactCommon/react/renderer/components/safeareaview/BUCK +4 -3
  1052. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewComponentDescriptor.h +5 -3
  1053. package/ReactCommon/react/renderer/components/scrollview/Android.mk +5 -3
  1054. package/ReactCommon/react/renderer/components/scrollview/BUCK +6 -3
  1055. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +59 -6
  1056. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +10 -5
  1057. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.cpp +23 -2
  1058. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.h +1 -0
  1059. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.cpp +1 -1
  1060. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +12 -2
  1061. package/ReactCommon/react/renderer/components/scrollview/conversions.h +5 -0
  1062. package/ReactCommon/react/renderer/components/slider/Android.mk +4 -3
  1063. package/ReactCommon/react/renderer/components/slider/BUCK +5 -3
  1064. package/ReactCommon/react/renderer/components/slider/SliderComponentDescriptor.h +4 -2
  1065. package/ReactCommon/react/renderer/components/slider/SliderState.h +8 -0
  1066. package/ReactCommon/react/renderer/components/slider/platform/ios/SliderMeasurementsManager.cpp +3 -1
  1067. package/ReactCommon/react/renderer/components/switch/Android.mk +3 -3
  1068. package/ReactCommon/react/renderer/components/switch/BUCK +3 -3
  1069. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchComponentDescriptor.h +4 -2
  1070. package/ReactCommon/react/renderer/components/text/Android.mk +5 -3
  1071. package/ReactCommon/react/renderer/components/text/BUCK +10 -4
  1072. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +32 -0
  1073. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +5 -1
  1074. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +2 -3
  1075. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +5 -24
  1076. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +15 -6
  1077. package/ReactCommon/react/renderer/components/text/ParagraphProps.h +5 -1
  1078. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +9 -16
  1079. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +7 -6
  1080. package/ReactCommon/react/renderer/components/text/ParagraphState.cpp +4 -0
  1081. package/ReactCommon/react/renderer/components/text/ParagraphState.h +8 -3
  1082. package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +3 -2
  1083. package/ReactCommon/react/renderer/components/text/RawTextProps.h +5 -1
  1084. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +36 -2
  1085. package/ReactCommon/react/renderer/components/text/TextProps.cpp +6 -3
  1086. package/ReactCommon/react/renderer/components/text/TextProps.h +5 -1
  1087. package/ReactCommon/react/renderer/components/text/TextShadowNode.h +23 -0
  1088. package/ReactCommon/react/renderer/components/text/conversions.h +22 -0
  1089. package/ReactCommon/react/renderer/components/text/tests/ParagraphLocalDataTest.cpp +8 -5
  1090. package/ReactCommon/react/renderer/components/textinput/Android.mk +5 -3
  1091. package/ReactCommon/react/renderer/components/textinput/BUCK +8 -4
  1092. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +8 -5
  1093. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +58 -91
  1094. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +10 -6
  1095. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +2 -8
  1096. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +5 -5
  1097. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +0 -3
  1098. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.h +5 -8
  1099. package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +5 -4
  1100. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputComponentDescriptor.h +4 -2
  1101. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +46 -22
  1102. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +6 -5
  1103. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputShadowNode.cpp +3 -2
  1104. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputShadowNode.h +6 -6
  1105. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputState.h +2 -0
  1106. package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +19 -7
  1107. package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +6 -0
  1108. package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +63 -2
  1109. package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +4 -3
  1110. package/ReactCommon/react/renderer/components/unimplementedview/BUCK +4 -3
  1111. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +8 -3
  1112. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +5 -2
  1113. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.h +1 -0
  1114. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +28 -0
  1115. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +24 -1
  1116. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +4 -1
  1117. package/ReactCommon/react/renderer/components/view/Android.mk +6 -4
  1118. package/ReactCommon/react/renderer/components/view/BUCK +5 -3
  1119. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +19 -5
  1120. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +2 -1
  1121. package/ReactCommon/react/renderer/components/view/ViewComponentDescriptor.h +0 -22
  1122. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +1 -1
  1123. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +62 -14
  1124. package/ReactCommon/react/renderer/components/view/ViewProps.h +7 -1
  1125. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +5 -8
  1126. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +5 -19
  1127. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +1 -1
  1128. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +147 -78
  1129. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +4 -9
  1130. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  1131. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +2 -0
  1132. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +99 -24
  1133. package/ReactCommon/react/renderer/components/view/conversions.h +89 -45
  1134. package/ReactCommon/react/renderer/components/view/primitives.h +5 -4
  1135. package/ReactCommon/react/renderer/components/view/propsConversions.h +163 -28
  1136. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +11 -2
  1137. package/ReactCommon/react/renderer/core/Android.mk +4 -2
  1138. package/ReactCommon/react/renderer/core/BUCK +7 -4
  1139. package/ReactCommon/react/renderer/core/BatchedEventQueue.cpp +2 -34
  1140. package/ReactCommon/react/renderer/core/BatchedEventQueue.h +2 -9
  1141. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +6 -3
  1142. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +28 -27
  1143. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +11 -5
  1144. package/ReactCommon/react/renderer/core/ConcreteState.h +7 -3
  1145. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +35 -0
  1146. package/ReactCommon/react/renderer/{components/picker/iospicker/PickerState.h → core/DynamicPropsUtilities.h} +5 -4
  1147. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +9 -15
  1148. package/ReactCommon/react/renderer/core/EventDispatcher.h +5 -10
  1149. package/ReactCommon/react/renderer/core/EventEmitter.cpp +22 -12
  1150. package/ReactCommon/react/renderer/core/EventEmitter.h +7 -2
  1151. package/ReactCommon/react/renderer/core/EventPipe.h +2 -0
  1152. package/ReactCommon/react/renderer/core/EventPriority.h +1 -1
  1153. package/ReactCommon/react/renderer/core/EventQueue.cpp +39 -36
  1154. package/ReactCommon/react/renderer/core/EventQueue.h +14 -8
  1155. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +82 -0
  1156. package/ReactCommon/react/renderer/core/EventQueueProcessor.h +36 -0
  1157. package/ReactCommon/react/renderer/core/EventTarget.cpp +4 -2
  1158. package/ReactCommon/react/renderer/core/LayoutConstraints.h +6 -0
  1159. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +65 -0
  1160. package/ReactCommon/react/renderer/core/LayoutMetrics.h +35 -2
  1161. package/ReactCommon/react/renderer/core/LayoutPrimitives.h +14 -6
  1162. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +1 -1
  1163. package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +2 -7
  1164. package/ReactCommon/react/renderer/core/Props.cpp +10 -2
  1165. package/ReactCommon/react/renderer/core/Props.h +6 -1
  1166. package/ReactCommon/react/renderer/core/PropsParserContext.h +29 -0
  1167. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  1168. package/ReactCommon/react/renderer/core/RawEvent.h +40 -3
  1169. package/ReactCommon/react/renderer/core/RawProps.cpp +5 -3
  1170. package/ReactCommon/react/renderer/core/RawProps.h +3 -1
  1171. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +18 -7
  1172. package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +8 -6
  1173. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +10 -7
  1174. package/ReactCommon/react/renderer/core/RawPropsParser.h +11 -2
  1175. package/ReactCommon/react/renderer/core/RawValue.h +9 -7
  1176. package/ReactCommon/react/renderer/core/ReactEventPriority.h +43 -0
  1177. package/ReactCommon/react/renderer/core/ReactPrimitives.h +34 -2
  1178. package/ReactCommon/react/renderer/core/Sealable.cpp +4 -3
  1179. package/ReactCommon/react/renderer/core/Sealable.h +5 -1
  1180. package/ReactCommon/react/renderer/core/ShadowNode.cpp +42 -13
  1181. package/ReactCommon/react/renderer/core/ShadowNode.h +14 -4
  1182. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +2 -1
  1183. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +2 -1
  1184. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +17 -1
  1185. package/ReactCommon/react/renderer/core/State.h +3 -0
  1186. package/ReactCommon/react/renderer/core/StateData.h +3 -0
  1187. package/ReactCommon/react/renderer/core/propsConversions.h +19 -9
  1188. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +16 -4
  1189. package/ReactCommon/react/renderer/core/tests/ConcreteShadowNodeTest.cpp +1 -1
  1190. package/ReactCommon/react/renderer/core/tests/DynamicPropsUtilitiesTest.cpp +66 -0
  1191. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +134 -0
  1192. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +99 -30
  1193. package/ReactCommon/react/renderer/core/tests/TestComponent.h +11 -7
  1194. package/ReactCommon/react/renderer/core/tests/traitCastTest.cpp +31 -0
  1195. package/ReactCommon/react/renderer/debug/Android.mk +1 -1
  1196. package/ReactCommon/react/renderer/debug/BUCK +4 -6
  1197. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +11 -25
  1198. package/ReactCommon/react/renderer/debug/flags.h +50 -0
  1199. package/ReactCommon/react/renderer/element/BUCK +3 -3
  1200. package/ReactCommon/react/renderer/graphics/Android.mk +7 -3
  1201. package/ReactCommon/react/renderer/graphics/BUCK +16 -4
  1202. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +4 -3
  1203. package/ReactCommon/react/renderer/graphics/Transform.cpp +5 -4
  1204. package/ReactCommon/react/renderer/graphics/Transform.h +1 -1
  1205. package/ReactCommon/react/renderer/graphics/conversions.h +102 -44
  1206. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +67 -0
  1207. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.cpp +14 -6
  1208. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +2 -0
  1209. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/PlatformColorParser.h +29 -0
  1210. package/ReactCommon/react/renderer/graphics/platform/ios/Color.cpp +14 -6
  1211. package/ReactCommon/react/renderer/graphics/platform/ios/Color.h +44 -1
  1212. package/ReactCommon/react/renderer/graphics/platform/ios/PlatformColorParser.h +34 -0
  1213. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.h +12 -0
  1214. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.mm +206 -0
  1215. package/ReactCommon/react/renderer/imagemanager/Android.mk +3 -2
  1216. package/ReactCommon/react/renderer/imagemanager/BUCK +5 -4
  1217. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +5 -4
  1218. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTImagePrimitivesConversions.h +8 -6
  1219. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTSyncImageManager.mm +1 -1
  1220. package/ReactCommon/react/renderer/leakchecker/Android.mk +29 -0
  1221. package/ReactCommon/react/renderer/{components/picker/iospicker → leakchecker}/BUCK +8 -12
  1222. package/ReactCommon/react/renderer/leakchecker/LeakChecker.cpp +60 -0
  1223. package/ReactCommon/react/renderer/leakchecker/LeakChecker.h +39 -0
  1224. package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.cpp +37 -0
  1225. package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.h +39 -0
  1226. package/ReactCommon/react/renderer/mapbuffer/Android.mk +9 -6
  1227. package/ReactCommon/react/renderer/mapbuffer/BUCK +14 -5
  1228. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +131 -4
  1229. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +40 -4
  1230. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +226 -0
  1231. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +94 -0
  1232. package/ReactCommon/react/renderer/mapbuffer/primitives.h +91 -0
  1233. package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +141 -5
  1234. package/ReactCommon/react/renderer/mounting/Android.mk +5 -2
  1235. package/ReactCommon/react/renderer/mounting/BUCK +6 -3
  1236. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +794 -620
  1237. package/ReactCommon/react/renderer/mounting/Differentiator.h +31 -4
  1238. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +4 -2
  1239. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +1 -4
  1240. package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +1 -1
  1241. package/ReactCommon/react/renderer/mounting/MountingTransaction.h +2 -2
  1242. package/ReactCommon/react/renderer/mounting/MountingTransactionMetadata.h +1 -1
  1243. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +19 -15
  1244. package/ReactCommon/react/renderer/mounting/ShadowTree.h +11 -4
  1245. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.cpp +3 -1
  1246. package/ReactCommon/react/renderer/mounting/ShadowTreeRevision.h +1 -1
  1247. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +15 -1
  1248. package/ReactCommon/react/renderer/mounting/ShadowView.h +45 -2
  1249. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +28 -0
  1250. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +17 -0
  1251. package/ReactCommon/react/renderer/mounting/StubView.cpp +21 -2
  1252. package/ReactCommon/react/renderer/mounting/StubView.h +3 -0
  1253. package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +204 -77
  1254. package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +1 -1
  1255. package/ReactCommon/react/renderer/mounting/TelemetryController.h +1 -1
  1256. package/ReactCommon/react/renderer/mounting/stubs.cpp +5 -4
  1257. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +13 -2
  1258. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +232 -9
  1259. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +18 -8
  1260. package/ReactCommon/react/renderer/runtimescheduler/Android.mk +28 -0
  1261. package/ReactCommon/react/renderer/runtimescheduler/BUCK +77 -0
  1262. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +118 -0
  1263. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +105 -0
  1264. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +171 -0
  1265. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +44 -0
  1266. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +30 -0
  1267. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +34 -0
  1268. package/ReactCommon/react/renderer/{components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerComponentDescriptor.h → runtimescheduler/RuntimeSchedulerClock.h} +8 -5
  1269. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriority.h +65 -0
  1270. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +37 -0
  1271. package/ReactCommon/react/renderer/runtimescheduler/Task.h +48 -0
  1272. package/ReactCommon/react/renderer/runtimescheduler/primitives.h +41 -0
  1273. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +472 -0
  1274. package/ReactCommon/react/renderer/runtimescheduler/tests/SchedulerPriorityTest.cpp +46 -0
  1275. package/ReactCommon/react/renderer/runtimescheduler/tests/StubClock.h +41 -0
  1276. package/ReactCommon/react/renderer/runtimescheduler/tests/StubQueue.h +38 -0
  1277. package/ReactCommon/react/renderer/scheduler/Android.mk +4 -2
  1278. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +16 -13
  1279. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.h +4 -4
  1280. package/ReactCommon/react/renderer/scheduler/BUCK +5 -3
  1281. package/ReactCommon/react/renderer/{components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.cpp → scheduler/InspectorData.h} +10 -2
  1282. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +81 -132
  1283. package/ReactCommon/react/renderer/scheduler/Scheduler.h +32 -35
  1284. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +12 -10
  1285. package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +2 -0
  1286. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +317 -0
  1287. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +209 -0
  1288. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +104 -0
  1289. package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +67 -0
  1290. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.cpp +14 -5
  1291. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.h +4 -1
  1292. package/ReactCommon/react/renderer/telemetry/Android.mk +31 -0
  1293. package/ReactCommon/react/renderer/telemetry/BUCK +84 -0
  1294. package/ReactCommon/react/renderer/{mounting → telemetry}/SurfaceTelemetry.cpp +5 -0
  1295. package/ReactCommon/react/renderer/{mounting → telemetry}/SurfaceTelemetry.h +3 -1
  1296. package/ReactCommon/react/renderer/telemetry/TransactionTelemetry.cpp +163 -0
  1297. package/ReactCommon/react/renderer/{mounting → telemetry}/TransactionTelemetry.h +11 -0
  1298. package/ReactCommon/react/renderer/telemetry/tests/TransactionTelemetryTest.cpp +176 -0
  1299. package/ReactCommon/react/renderer/templateprocessor/Android.mk +1 -1
  1300. package/ReactCommon/react/renderer/templateprocessor/BUCK +3 -3
  1301. package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.cpp +5 -5
  1302. package/ReactCommon/react/renderer/textlayoutmanager/Android.mk +5 -2
  1303. package/ReactCommon/react/renderer/textlayoutmanager/BUCK +5 -3
  1304. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.cpp +12 -9
  1305. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +132 -3
  1306. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +17 -1
  1307. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.h +2 -0
  1308. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +22 -0
  1309. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/TextLayoutManager.mm +25 -3
  1310. package/ReactCommon/react/renderer/{components/picker → timeline}/BUCK +14 -28
  1311. package/ReactCommon/react/renderer/timeline/Timeline.cpp +120 -0
  1312. package/ReactCommon/react/renderer/timeline/Timeline.h +63 -0
  1313. package/ReactCommon/react/renderer/timeline/TimelineController.cpp +77 -0
  1314. package/ReactCommon/react/renderer/timeline/TimelineController.h +80 -0
  1315. package/ReactCommon/react/renderer/timeline/TimelineFrame.cpp +25 -0
  1316. package/ReactCommon/react/renderer/timeline/TimelineFrame.h +46 -0
  1317. package/ReactCommon/react/renderer/timeline/TimelineHandler.cpp +97 -0
  1318. package/ReactCommon/react/renderer/timeline/TimelineHandler.h +80 -0
  1319. package/ReactCommon/react/renderer/timeline/TimelineSnapshot.cpp +30 -0
  1320. package/ReactCommon/react/renderer/timeline/TimelineSnapshot.h +36 -0
  1321. package/ReactCommon/react/renderer/uimanager/Android.mk +4 -2
  1322. package/ReactCommon/react/renderer/uimanager/BUCK +5 -3
  1323. package/ReactCommon/react/renderer/uimanager/LayoutAnimationStatusDelegate.h +2 -4
  1324. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +121 -36
  1325. package/ReactCommon/react/renderer/uimanager/UIManager.h +40 -21
  1326. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +3 -5
  1327. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +201 -77
  1328. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +29 -6
  1329. package/ReactCommon/react/renderer/uimanager/UIManagerCommitHook.h +2 -4
  1330. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +16 -15
  1331. package/ReactCommon/react/renderer/uimanager/primitives.h +57 -9
  1332. package/ReactCommon/react/test_utils/BUCK +57 -0
  1333. package/ReactCommon/react/{renderer/mounting/tests → test_utils}/Entropy.h +4 -0
  1334. package/ReactCommon/react/test_utils/MockClock.h +29 -0
  1335. package/ReactCommon/react/{renderer/components/picker/iospicker/PickerEventEmitter.h → test_utils/MockSurfaceHandler.h} +6 -9
  1336. package/ReactCommon/react/{renderer/mounting/tests → test_utils}/shadowTreeGeneration.h +61 -5
  1337. package/ReactCommon/react/utils/Android.mk +8 -3
  1338. package/ReactCommon/react/utils/BUCK +9 -2
  1339. package/ReactCommon/react/utils/CalledOnceMovableOnlyFunction.h +6 -4
  1340. package/ReactCommon/react/utils/ContextContainer.h +4 -24
  1341. package/ReactCommon/react/utils/LayoutManager.h +56 -0
  1342. package/ReactCommon/react/utils/ManagedObjectWrapper.h +3 -1
  1343. package/ReactCommon/react/utils/RunLoopObserver.cpp +5 -4
  1344. package/ReactCommon/reactperflogger/Android.mk +1 -1
  1345. package/ReactCommon/reactperflogger/BUCK +1 -1
  1346. package/ReactCommon/reactperflogger/React-perflogger.podspec +2 -2
  1347. package/ReactCommon/runtimeexecutor/Android.mk +1 -1
  1348. package/ReactCommon/runtimeexecutor/BUCK +2 -2
  1349. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +2 -2
  1350. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +14 -2
  1351. package/ReactCommon/yoga/Yoga.podspec +1 -1
  1352. package/ReactCommon/yoga/yoga/BitUtils.h +3 -2
  1353. package/ReactCommon/yoga/yoga/Utils.cpp +1 -1
  1354. package/ReactCommon/yoga/yoga/YGNode.cpp +111 -110
  1355. package/ReactCommon/yoga/yoga/YGNode.h +11 -0
  1356. package/ReactCommon/yoga/yoga/YGNodePrint.cpp +7 -4
  1357. package/ReactCommon/yoga/yoga/Yoga-internal.h +4 -5
  1358. package/ReactCommon/yoga/yoga/Yoga.cpp +114 -159
  1359. package/ReactCommon/yoga/yoga/Yoga.h +1 -1
  1360. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar +0 -0
  1361. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.md5 +1 -0
  1362. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha1 +1 -0
  1363. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha256 +1 -0
  1364. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha512 +1 -0
  1365. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module +272 -0
  1366. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.md5 +1 -0
  1367. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha1 +1 -0
  1368. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha256 +1 -0
  1369. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha512 +1 -0
  1370. package/android/com/facebook/react/react-native/{0.0.0-201c10733/react-native-0.0.0-201c10733.pom → 0.0.0-268efb102/react-native-0.0.0-268efb102.pom} +24 -13
  1371. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.md5 +1 -0
  1372. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha1 +1 -0
  1373. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha256 +1 -0
  1374. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha512 +1 -0
  1375. package/android/com/facebook/react/react-native/maven-metadata.xml +4 -3
  1376. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
  1377. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
  1378. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -0
  1379. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -0
  1380. package/flow/HermesInternalType.js +114 -0
  1381. package/flow/global.js +68 -0
  1382. package/flow-typed/npm/react-test-renderer_v16.x.x.js +79 -0
  1383. package/index.js +122 -60
  1384. package/jest/preprocessor.js +75 -7
  1385. package/jest/renderer.js +3 -9
  1386. package/jest/setup.js +21 -15
  1387. package/package.json +61 -21
  1388. package/react.gradle +47 -25
  1389. package/scripts/find-node.sh +39 -0
  1390. package/scripts/generate-specs-cli.js +20 -2
  1391. package/scripts/ios-configure-glog.sh +4 -0
  1392. package/scripts/react-native-xcode.sh +7 -23
  1393. package/scripts/react_native_pods.rb +215 -47
  1394. package/template/_flowconfig +3 -4
  1395. package/template/_gitignore +1 -0
  1396. package/template/android/app/build.gradle +12 -7
  1397. package/template/android/app/src/main/res/values/styles.xml +0 -1
  1398. package/template/android/build.gradle +7 -8
  1399. package/template/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  1400. package/template/android/gradle.properties +1 -1
  1401. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +2 -0
  1402. package/template/ios/Podfile +1 -0
  1403. package/template/package.json +4 -5
  1404. package/third-party-podspecs/DoubleConversion.podspec +1 -1
  1405. package/third-party-podspecs/RCT-Folly.podspec +31 -11
  1406. package/third-party-podspecs/boost.podspec +23 -0
  1407. package/third-party-podspecs/glog.podspec +1 -1
  1408. package/Libraries/BUCK +0 -56
  1409. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.android.js +0 -169
  1410. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.ios.js +0 -280
  1411. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.android.js +0 -89
  1412. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.ios.js +0 -30
  1413. package/Libraries/Components/DatePickerAndroid/DatePickerAndroidTypes.js +0 -30
  1414. package/Libraries/Components/Picker/AndroidDialogPickerNativeComponent.js +0 -82
  1415. package/Libraries/Components/Picker/AndroidDialogPickerViewConfig.js +0 -30
  1416. package/Libraries/Components/Picker/AndroidDropdownPickerNativeComponent.js +0 -69
  1417. package/Libraries/Components/Picker/Picker.js +0 -165
  1418. package/Libraries/Components/Picker/PickerAndroid.android.js +0 -145
  1419. package/Libraries/Components/Picker/PickerIOS.android.js +0 -14
  1420. package/Libraries/Components/Picker/PickerIOS.ios.js +0 -164
  1421. package/Libraries/Components/Picker/RCTPickerNativeComponent.js +0 -72
  1422. package/Libraries/Components/Picker/RCTPickerViewConfig.js +0 -41
  1423. package/Libraries/Components/ScrollResponder.js +0 -797
  1424. package/Libraries/Components/StaticContainer.react.js +0 -51
  1425. package/Libraries/Components/StatusBar/StatusBarIOS.js +0 -35
  1426. package/Libraries/Components/Touchable/ensurePositiveDelayProps.js +0 -26
  1427. package/Libraries/Interaction/InteractionMixin.js +0 -55
  1428. package/Libraries/ReactNative/queryLayoutByID.js +0 -58
  1429. package/Libraries/StyleSheet/StyleSheetValidation.js +0 -100
  1430. package/Libraries/Utilities/registerGeneratedViewConfig.js +0 -36
  1431. package/Libraries/promiseRejectionIsError.js +0 -24
  1432. package/React/Base/RCTJSInvokerModule.h +0 -18
  1433. package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.h +0 -19
  1434. package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.mm +0 -206
  1435. package/React/Views/RCTPicker.h +0 -23
  1436. package/React/Views/RCTPicker.m +0 -122
  1437. package/React/Views/RCTPickerManager.m +0 -68
  1438. package/ReactAndroid/release.gradle +0 -87
  1439. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/DatePickerDialogTestCase.java +0 -172
  1440. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ReactPickerTestCase.java +0 -196
  1441. package/ReactAndroid/src/androidTest/js/DatePickerDialogTestModule.js +0 -45
  1442. package/ReactAndroid/src/androidTest/js/PickerAndroidTestModule.js +0 -89
  1443. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerImpl.java +0 -82
  1444. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/BUCK +0 -27
  1445. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java +0 -137
  1446. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java +0 -147
  1447. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java +0 -117
  1448. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerDelegate.java +0 -48
  1449. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerInterface.java +0 -23
  1450. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerDelegate.java +0 -48
  1451. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerInterface.java +0 -22
  1452. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/BUCK +0 -30
  1453. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDialogPickerManager.java +0 -51
  1454. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDropdownPickerManager.java +0 -50
  1455. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPicker.java +0 -196
  1456. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerAdapter.java +0 -95
  1457. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerItem.java +0 -43
  1458. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java +0 -97
  1459. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/events/PickerItemSelectEvent.java +0 -40
  1460. package/ReactCommon/cxxreact/re_worker_requirements +0 -6
  1461. package/ReactCommon/react/renderer/components/picker/Android.mk +0 -37
  1462. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.cpp +0 -23
  1463. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.h +0 -27
  1464. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.cpp +0 -28
  1465. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.h +0 -77
  1466. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.h +0 -29
  1467. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.cpp +0 -23
  1468. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.h +0 -27
  1469. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.cpp +0 -28
  1470. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.h +0 -77
  1471. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.cpp +0 -17
  1472. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.h +0 -29
  1473. package/ReactCommon/react/renderer/components/picker/iospicker/PickerComponentDescriptor.h +0 -26
  1474. package/ReactCommon/react/renderer/components/picker/iospicker/PickerEventEmitter.cpp +0 -23
  1475. package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.cpp +0 -46
  1476. package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.h +0 -36
  1477. package/ReactCommon/react/renderer/components/picker/iospicker/PickerShadowNode.h +0 -33
  1478. package/ReactCommon/react/renderer/components/picker/iospicker/conversions.h +0 -47
  1479. package/ReactCommon/react/renderer/mounting/TransactionTelemetry.cpp +0 -142
  1480. package/ReactCommon/react/renderer/mounting/tests/TransactionTelemetryTest.cpp +0 -125
  1481. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.aar +0 -0
  1482. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.aar.md5 +0 -1
  1483. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.aar.sha1 +0 -1
  1484. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.pom.md5 +0 -1
  1485. package/android/com/facebook/react/react-native/0.0.0-201c10733/react-native-0.0.0-201c10733.pom.sha1 +0 -1
  1486. package/scripts/generate-specs.sh +0 -91
@@ -8,8 +8,6 @@
8
8
  * @format
9
9
  */
10
10
 
11
- 'use strict';
12
-
13
11
  const Batchinator = require('../Interaction/Batchinator');
14
12
  const FillRateHelper = require('./FillRateHelper');
15
13
  const ReactNative = require('../Renderer/shims/ReactNative');
@@ -23,7 +21,10 @@ const flattenStyle = require('../StyleSheet/flattenStyle');
23
21
  const infoLog = require('../Utilities/infoLog');
24
22
  const invariant = require('invariant');
25
23
 
26
- const {computeWindowedRenderLimits} = require('./VirtualizeUtils');
24
+ import {
25
+ keyExtractor as defaultKeyExtractor,
26
+ computeWindowedRenderLimits,
27
+ } from './VirtualizeUtils';
27
28
 
28
29
  import * as React from 'react';
29
30
  import type {ScrollResponderType} from '../Components/ScrollView/ScrollView';
@@ -96,7 +97,7 @@ type OptionalProps = {|
96
97
  /**
97
98
  * DEPRECATED: Virtualization provides significant performance and memory optimizations, but fully
98
99
  * unmounts react instances that are outside of the render window. You should only need to disable
99
- * this for debugging purposes.
100
+ * this for debugging purposes. Defaults to false.
100
101
  */
101
102
  disableVirtualization?: ?boolean,
102
103
  /**
@@ -121,7 +122,7 @@ type OptionalProps = {|
121
122
  * much more. Note these items will never be unmounted as part of the windowed rendering in order
122
123
  * to improve perceived performance of scroll-to-top actions.
123
124
  */
124
- initialNumToRender: number,
125
+ initialNumToRender?: ?number,
125
126
  /**
126
127
  * Instead of starting at the top with the first item, start at `initialScrollIndex`. This
127
128
  * disables the "scroll to top" optimization that keeps the first `initialNumToRender` items
@@ -133,7 +134,7 @@ type OptionalProps = {|
133
134
  * Reverses the direction of scroll. Uses scale transforms of -1.
134
135
  */
135
136
  inverted?: ?boolean,
136
- keyExtractor: (item: Item, index: number) => string,
137
+ keyExtractor?: ?(item: Item, index: number) => string,
137
138
  /**
138
139
  * Each cell is rendered using this element. Can be a React Component Class,
139
140
  * or a render function. Defaults to using View.
@@ -207,7 +208,7 @@ type OptionalProps = {|
207
208
  * once, the better the fill rate, but responsiveness may suffer because rendering content may
208
209
  * interfere with responding to button taps or other interactions.
209
210
  */
210
- maxToRenderPerBatch: number,
211
+ maxToRenderPerBatch?: ?number,
211
212
  /**
212
213
  * Called once when the scroll position gets within `onEndReachedThreshold` of the rendered
213
214
  * content.
@@ -248,7 +249,6 @@ type OptionalProps = {|
248
249
  persistentScrollbar?: ?boolean,
249
250
  /**
250
251
  * Set this when offset is needed for the loading indicator to show correctly.
251
- * @platform android
252
252
  */
253
253
  progressViewOffset?: number,
254
254
  /**
@@ -275,7 +275,7 @@ type OptionalProps = {|
275
275
  * Amount of time between low-pri item render batches, e.g. for rendering items quite a ways off
276
276
  * screen. Similar fill rate/responsiveness tradeoff as `maxToRenderPerBatch`.
277
277
  */
278
- updateCellsBatchingPeriod: number,
278
+ updateCellsBatchingPeriod?: ?number,
279
279
  /**
280
280
  * See `ViewabilityHelper` for flow type and further documentation.
281
281
  */
@@ -292,7 +292,7 @@ type OptionalProps = {|
292
292
  * this number will reduce memory consumption and may improve performance, but will increase the
293
293
  * chance that fast scrolling may reveal momentary blank areas of unrendered content.
294
294
  */
295
- windowSize: number,
295
+ windowSize?: ?number,
296
296
  /**
297
297
  * The legacy implementation is no longer supported.
298
298
  */
@@ -305,18 +305,6 @@ type Props = {|
305
305
  ...OptionalProps,
306
306
  |};
307
307
 
308
- type DefaultProps = {|
309
- disableVirtualization: boolean,
310
- horizontal: boolean,
311
- initialNumToRender: number,
312
- keyExtractor: (item: Item, index: number) => string,
313
- maxToRenderPerBatch: number,
314
- onEndReachedThreshold: number,
315
- scrollEventThrottle: number,
316
- updateCellsBatchingPeriod: number,
317
- windowSize: number,
318
- |};
319
-
320
308
  let _usedIndexForKey = false;
321
309
  let _keylessItemComponentName: string = '';
322
310
 
@@ -325,6 +313,41 @@ type State = {
325
313
  last: number,
326
314
  };
327
315
 
316
+ /**
317
+ * Default Props Helper Functions
318
+ * Use the following helper functions for default values
319
+ */
320
+
321
+ // horizontalOrDefault(this.props.horizontal)
322
+ function horizontalOrDefault(horizontal: ?boolean) {
323
+ return horizontal ?? false;
324
+ }
325
+
326
+ // initialNumToRenderOrDefault(this.props.initialNumToRenderOrDefault)
327
+ function initialNumToRenderOrDefault(initialNumToRender: ?number) {
328
+ return initialNumToRender ?? 10;
329
+ }
330
+
331
+ // maxToRenderPerBatchOrDefault(this.props.maxToRenderPerBatch)
332
+ function maxToRenderPerBatchOrDefault(maxToRenderPerBatch: ?number) {
333
+ return maxToRenderPerBatch ?? 10;
334
+ }
335
+
336
+ // onEndReachedThresholdOrDefault(this.props.onEndReachedThreshold)
337
+ function onEndReachedThresholdOrDefault(onEndReachedThreshold: ?number) {
338
+ return onEndReachedThreshold ?? 2;
339
+ }
340
+
341
+ // scrollEventThrottleOrDefault(this.props.scrollEventThrottle)
342
+ function scrollEventThrottleOrDefault(scrollEventThrottle: ?number) {
343
+ return scrollEventThrottle ?? 50;
344
+ }
345
+
346
+ // windowSizeOrDefault(this.props.windowSize)
347
+ function windowSizeOrDefault(windowSize: ?number) {
348
+ return windowSize ?? 21;
349
+ }
350
+
328
351
  /**
329
352
  * Base implementation for the more convenient [`<FlatList>`](https://reactnative.dev/docs/flatlist.html)
330
353
  * and [`<SectionList>`](https://reactnative.dev/docs/sectionlist.html) components, which are also better
@@ -351,6 +374,7 @@ type State = {
351
374
  * and we are working on improving it behind the scenes.
352
375
  * - By default, the list looks for a `key` or `id` prop on each item and uses that for the React key.
353
376
  * Alternatively, you can provide a custom `keyExtractor` prop.
377
+ * - As an effort to remove defaultProps, use helper functions when referencing certain props
354
378
  *
355
379
  */
356
380
  class VirtualizedList extends React.PureComponent<Props, State> {
@@ -383,7 +407,9 @@ class VirtualizedList extends React.PureComponent<Props, State> {
383
407
  }
384
408
 
385
409
  this._scrollRef.scrollTo(
386
- this.props.horizontal ? {x: offset, animated} : {y: offset, animated},
410
+ horizontalOrDefault(this.props.horizontal)
411
+ ? {x: offset, animated}
412
+ : {y: offset, animated},
387
413
  );
388
414
  }
389
415
 
@@ -505,7 +531,9 @@ class VirtualizedList extends React.PureComponent<Props, State> {
505
531
  }
506
532
 
507
533
  this._scrollRef.scrollTo(
508
- this.props.horizontal ? {x: offset, animated} : {y: offset, animated},
534
+ horizontalOrDefault(this.props.horizontal)
535
+ ? {x: offset, animated}
536
+ : {y: offset, animated},
509
537
  );
510
538
  }
511
539
 
@@ -562,30 +590,6 @@ class VirtualizedList extends React.PureComponent<Props, State> {
562
590
  }
563
591
  }
564
592
 
565
- static defaultProps: DefaultProps = {
566
- disableVirtualization: false,
567
- horizontal: false,
568
- initialNumToRender: 10,
569
- keyExtractor: (item: Item, index: number) => {
570
- if (item.key != null) {
571
- return item.key;
572
- }
573
- if (item.id != null) {
574
- return item.id;
575
- }
576
- _usedIndexForKey = true;
577
- if (item.type && item.type.displayName) {
578
- _keylessItemComponentName = item.type.displayName;
579
- }
580
- return String(index);
581
- },
582
- maxToRenderPerBatch: 10,
583
- onEndReachedThreshold: 2, // multiples of length
584
- scrollEventThrottle: 50,
585
- updateCellsBatchingPeriod: 50,
586
- windowSize: 21, // multiples of length
587
- };
588
-
589
593
  _getCellKey(): string {
590
594
  return this.context?.cellKey || 'rootList';
591
595
  }
@@ -598,7 +602,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
598
602
  return {
599
603
  listKey: this._getListKey(),
600
604
  cellKey: this._getCellKey(),
601
- horizontal: !!this.props.horizontal,
605
+ horizontal: horizontalOrDefault(this.props.horizontal),
602
606
  parent: this.context?.debugInfo,
603
607
  };
604
608
  }
@@ -676,21 +680,20 @@ class VirtualizedList extends React.PureComponent<Props, State> {
676
680
  constructor(props: Props) {
677
681
  super(props);
678
682
  invariant(
679
- // $FlowFixMe
683
+ // $FlowFixMe[prop-missing]
680
684
  !props.onScroll || !props.onScroll.__isNative,
681
685
  'Components based on VirtualizedList must be wrapped with Animated.createAnimatedComponent ' +
682
686
  'to support native onScroll events with useNativeDriver',
683
687
  );
684
-
685
688
  invariant(
686
- props.windowSize > 0,
689
+ windowSizeOrDefault(props.windowSize) > 0,
687
690
  'VirtualizedList: The windowSize prop must be present and set to a value greater than 0.',
688
691
  );
689
692
 
690
693
  this._fillRateHelper = new FillRateHelper(this._getFrameMetrics);
691
694
  this._updateCellsToRenderBatcher = new Batchinator(
692
695
  this._updateCellsToRender,
693
- this.props.updateCellsBatchingPeriod,
696
+ this.props.updateCellsBatchingPeriod ?? 50,
694
697
  );
695
698
 
696
699
  if (this.props.viewabilityConfigCallbackPairs) {
@@ -703,6 +706,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
703
706
  } else if (this.props.onViewableItemsChanged) {
704
707
  this._viewabilityTuples.push({
705
708
  viewabilityHelper: new ViewabilityHelper(this.props.viewabilityConfig),
709
+ // $FlowFixMe[incompatible-call]
706
710
  onViewableItemsChanged: this.props.onViewableItemsChanged,
707
711
  });
708
712
  }
@@ -712,7 +716,8 @@ class VirtualizedList extends React.PureComponent<Props, State> {
712
716
  last:
713
717
  Math.min(
714
718
  this.props.getItemCount(this.props.data),
715
- (this.props.initialScrollIndex || 0) + this.props.initialNumToRender,
719
+ (this.props.initialScrollIndex || 0) +
720
+ initialNumToRenderOrDefault(this.props.initialNumToRender),
716
721
  ) - 1,
717
722
  };
718
723
 
@@ -763,7 +768,10 @@ class VirtualizedList extends React.PureComponent<Props, State> {
763
768
  }
764
769
 
765
770
  static getDerivedStateFromProps(newProps: Props, prevState: State): State {
766
- const {data, getItemCount, maxToRenderPerBatch} = newProps;
771
+ const {data, getItemCount} = newProps;
772
+ const maxToRenderPerBatch = maxToRenderPerBatchOrDefault(
773
+ newProps.maxToRenderPerBatch,
774
+ );
767
775
  // first and last could be stale (e.g. if a new, shorter items props is passed in), so we make
768
776
  // sure we're rendering a reasonable range here.
769
777
  return {
@@ -790,7 +798,6 @@ class VirtualizedList extends React.PureComponent<Props, State> {
790
798
  getItem,
791
799
  getItemCount,
792
800
  horizontal,
793
- keyExtractor,
794
801
  } = this.props;
795
802
  const stickyOffset = this.props.ListHeaderComponent ? 1 : 0;
796
803
  const end = getItemCount(data) - 1;
@@ -798,7 +805,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
798
805
  last = Math.min(end, last);
799
806
  for (let ii = first; ii <= last; ii++) {
800
807
  const item = getItem(data, ii);
801
- const key = keyExtractor(item, ii);
808
+ const key = this._keyExtractor(item, ii);
802
809
  this._indicesToKeys.set(ii, key);
803
810
  if (stickyIndicesFromProps.has(ii + stickyOffset)) {
804
811
  stickyHeaderIndices.push(cells.length);
@@ -842,10 +849,29 @@ class VirtualizedList extends React.PureComponent<Props, State> {
842
849
  _isNestedWithSameOrientation(): boolean {
843
850
  const nestedContext = this.context;
844
851
  return !!(
845
- nestedContext && !!nestedContext.horizontal === !!this.props.horizontal
852
+ nestedContext &&
853
+ !!nestedContext.horizontal === horizontalOrDefault(this.props.horizontal)
846
854
  );
847
855
  }
848
856
 
857
+ _getSpacerKey = (isVertical: boolean): string =>
858
+ isVertical ? 'height' : 'width';
859
+
860
+ _keyExtractor(item: Item, index: number) {
861
+ if (this.props.keyExtractor != null) {
862
+ return this.props.keyExtractor(item, index);
863
+ }
864
+
865
+ const key = defaultKeyExtractor(item, index);
866
+ if (key === String(index)) {
867
+ _usedIndexForKey = true;
868
+ if (item.type && item.type.displayName) {
869
+ _keylessItemComponentName = item.type.displayName;
870
+ }
871
+ }
872
+ return key;
873
+ }
874
+
849
875
  render(): React.Node {
850
876
  if (__DEV__) {
851
877
  const flatStyles = flattenStyle(this.props.contentContainerStyle);
@@ -864,7 +890,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
864
890
  const {data, horizontal} = this.props;
865
891
  const isVirtualizationDisabled = this._isVirtualizationDisabled();
866
892
  const inversionStyle = this.props.inverted
867
- ? this.props.horizontal
893
+ ? horizontalOrDefault(this.props.horizontal)
868
894
  ? styles.horizontallyInverted
869
895
  : styles.verticallyInverted
870
896
  : null;
@@ -878,7 +904,8 @@ class VirtualizedList extends React.PureComponent<Props, State> {
878
904
  const element = React.isValidElement(ListHeaderComponent) ? (
879
905
  ListHeaderComponent
880
906
  ) : (
881
- // $FlowFixMe
907
+ // $FlowFixMe[not-a-component]
908
+ // $FlowFixMe[incompatible-type-arg]
882
909
  <ListHeaderComponent />
883
910
  );
884
911
  cells.push(
@@ -892,7 +919,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
892
919
  this.props.ListHeaderComponentStyle,
893
920
  )}>
894
921
  {
895
- // $FlowFixMe - Typing ReactNativeComponent revealed errors
922
+ // $FlowFixMe[incompatible-type] - Typing ReactNativeComponent revealed errors
896
923
  element
897
924
  }
898
925
  </View>
@@ -903,10 +930,10 @@ class VirtualizedList extends React.PureComponent<Props, State> {
903
930
  if (itemCount > 0) {
904
931
  _usedIndexForKey = false;
905
932
  _keylessItemComponentName = '';
906
- const spacerKey = !horizontal ? 'height' : 'width';
933
+ const spacerKey = this._getSpacerKey(!horizontal);
907
934
  const lastInitialIndex = this.props.initialScrollIndex
908
935
  ? -1
909
- : this.props.initialNumToRender - 1;
936
+ : initialNumToRenderOrDefault(this.props.initialNumToRender) - 1;
910
937
  const {first, last} = this.state;
911
938
  this._pushCells(
912
939
  cells,
@@ -931,9 +958,6 @@ class VirtualizedList extends React.PureComponent<Props, State> {
931
958
  initBlock.offset -
932
959
  (this.props.initialScrollIndex ? 0 : initBlock.length);
933
960
  cells.push(
934
- /* $FlowFixMe(>=0.111.0 site=react_native_fb) This comment
935
- * suppresses an error found when Flow v0.111 was deployed. To
936
- * see the error, delete this comment and run Flow. */
937
961
  <View key="$sticky_lead" style={{[spacerKey]: leadSpace}} />,
938
962
  );
939
963
  this._pushCells(
@@ -948,9 +972,6 @@ class VirtualizedList extends React.PureComponent<Props, State> {
948
972
  this._getFrameMetricsApprox(first).offset -
949
973
  (stickyBlock.offset + stickyBlock.length);
950
974
  cells.push(
951
- /* $FlowFixMe(>=0.111.0 site=react_native_fb) This comment
952
- * suppresses an error found when Flow v0.111 was deployed. To
953
- * see the error, delete this comment and run Flow. */
954
975
  <View key="$sticky_trail" style={{[spacerKey]: trailSpace}} />,
955
976
  );
956
977
  insertedStickySpacer = true;
@@ -964,9 +985,6 @@ class VirtualizedList extends React.PureComponent<Props, State> {
964
985
  this._getFrameMetricsApprox(first).offset -
965
986
  (initBlock.offset + initBlock.length);
966
987
  cells.push(
967
- /* $FlowFixMe(>=0.111.0 site=react_native_fb) This comment
968
- * suppresses an error found when Flow v0.111 was deployed. To see
969
- * the error, delete this comment and run Flow. */
970
988
  <View key="$lead_spacer" style={{[spacerKey]: firstSpace}} />,
971
989
  );
972
990
  }
@@ -1001,9 +1019,6 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1001
1019
  endFrame.length -
1002
1020
  (lastFrame.offset + lastFrame.length);
1003
1021
  cells.push(
1004
- /* $FlowFixMe(>=0.111.0 site=react_native_fb) This comment suppresses
1005
- * an error found when Flow v0.111 was deployed. To see the error,
1006
- * delete this comment and run Flow. */
1007
1022
  <View key="$tail_spacer" style={{[spacerKey]: tailSpacerLength}} />,
1008
1023
  );
1009
1024
  }
@@ -1013,7 +1028,8 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1013
1028
  ) ? (
1014
1029
  ListEmptyComponent
1015
1030
  ) : (
1016
- // $FlowFixMe
1031
+ // $FlowFixMe[not-a-component]
1032
+ // $FlowFixMe[incompatible-type-arg]
1017
1033
  <ListEmptyComponent />
1018
1034
  )): any);
1019
1035
  cells.push(
@@ -1033,7 +1049,8 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1033
1049
  const element = React.isValidElement(ListFooterComponent) ? (
1034
1050
  ListFooterComponent
1035
1051
  ) : (
1036
- // $FlowFixMe
1052
+ // $FlowFixMe[not-a-component]
1053
+ // $FlowFixMe[incompatible-type-arg]
1037
1054
  <ListFooterComponent />
1038
1055
  );
1039
1056
  cells.push(
@@ -1047,7 +1064,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1047
1064
  this.props.ListFooterComponentStyle,
1048
1065
  )}>
1049
1066
  {
1050
- // $FlowFixMe - Typing ReactNativeComponent revealed errors
1067
+ // $FlowFixMe[incompatible-type] - Typing ReactNativeComponent revealed errors
1051
1068
  element
1052
1069
  }
1053
1070
  </View>
@@ -1063,7 +1080,9 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1063
1080
  onScrollEndDrag: this._onScrollEndDrag,
1064
1081
  onMomentumScrollBegin: this._onMomentumScrollBegin,
1065
1082
  onMomentumScrollEnd: this._onMomentumScrollEnd,
1066
- scrollEventThrottle: this.props.scrollEventThrottle, // TODO: Android support
1083
+ scrollEventThrottle: scrollEventThrottleOrDefault(
1084
+ this.props.scrollEventThrottle,
1085
+ ), // TODO: Android support
1067
1086
  invertStickyHeaders:
1068
1087
  this.props.invertStickyHeaders !== undefined
1069
1088
  ? this.props.invertStickyHeaders
@@ -1082,7 +1101,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1082
1101
  value={{
1083
1102
  cellKey: null,
1084
1103
  getScrollMetrics: this._getScrollMetrics,
1085
- horizontal: this.props.horizontal,
1104
+ horizontal: horizontalOrDefault(this.props.horizontal),
1086
1105
  getOutermostParentListRef: this._getOutermostParentListRef,
1087
1106
  getNestedChildState: this._getNestedChildState,
1088
1107
  registerAsNestedChild: this._registerAsNestedChild,
@@ -1108,7 +1127,8 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1108
1127
  {scrollContext => {
1109
1128
  if (
1110
1129
  scrollContext != null &&
1111
- !scrollContext.horizontal === !this.props.horizontal &&
1130
+ !scrollContext.horizontal ===
1131
+ !horizontalOrDefault(this.props.horizontal) &&
1112
1132
  !this._hasWarned.nesting &&
1113
1133
  this.context == null
1114
1134
  ) {
@@ -1217,20 +1237,17 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1217
1237
  _defaultRenderScrollComponent = props => {
1218
1238
  const onRefresh = props.onRefresh;
1219
1239
  if (this._isNestedWithSameOrientation()) {
1220
- // $FlowFixMe - Typing ReactNativeComponent revealed errors
1240
+ // $FlowFixMe[prop-missing] - Typing ReactNativeComponent revealed errors
1221
1241
  return <View {...props} />;
1222
1242
  } else if (onRefresh) {
1223
1243
  invariant(
1224
1244
  typeof props.refreshing === 'boolean',
1225
1245
  '`refreshing` prop must be set as a boolean in order to use `onRefresh`, but got `' +
1226
- /* $FlowFixMe(>=0.111.0 site=react_native_fb) This comment suppresses
1227
- * an error found when Flow v0.111 was deployed. To see the error,
1228
- * delete this comment and run Flow. */
1229
- JSON.stringify(props.refreshing) +
1246
+ JSON.stringify(props.refreshing ?? 'undefined') +
1230
1247
  '`',
1231
1248
  );
1232
1249
  return (
1233
- // $FlowFixMe Invalid prop usage
1250
+ // $FlowFixMe[prop-missing] Invalid prop usage
1234
1251
  <ScrollView
1235
1252
  {...props}
1236
1253
  refreshControl={
@@ -1247,7 +1264,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1247
1264
  />
1248
1265
  );
1249
1266
  } else {
1250
- // $FlowFixMe Invalid prop usage
1267
+ // $FlowFixMe[prop-missing] Invalid prop usage
1251
1268
  return <ScrollView {...props} />;
1252
1269
  }
1253
1270
  };
@@ -1326,8 +1343,28 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1326
1343
  const scrollMetrics = this._convertParentScrollMetrics(
1327
1344
  this.context.getScrollMetrics(),
1328
1345
  );
1329
- this._scrollMetrics.visibleLength = scrollMetrics.visibleLength;
1330
- this._scrollMetrics.offset = scrollMetrics.offset;
1346
+
1347
+ const metricsChanged =
1348
+ this._scrollMetrics.visibleLength !== scrollMetrics.visibleLength ||
1349
+ this._scrollMetrics.offset !== scrollMetrics.offset;
1350
+
1351
+ if (metricsChanged) {
1352
+ this._scrollMetrics.visibleLength = scrollMetrics.visibleLength;
1353
+ this._scrollMetrics.offset = scrollMetrics.offset;
1354
+
1355
+ // If metrics of the scrollView changed, then we triggered remeasure for child list
1356
+ // to ensure VirtualizedList has the right information.
1357
+ this._cellKeysToChildListKeys.forEach(childListKeys => {
1358
+ if (childListKeys) {
1359
+ for (let childKey of childListKeys) {
1360
+ const childList = this._nestedChildLists.get(childKey);
1361
+ childList &&
1362
+ childList.ref &&
1363
+ childList.ref.measureLayoutRelativeToContainingList();
1364
+ }
1365
+ }
1366
+ });
1367
+ }
1331
1368
  },
1332
1369
  error => {
1333
1370
  console.warn(
@@ -1384,9 +1421,9 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1384
1421
  const itemCount = this.props.getItemCount(this.props.data);
1385
1422
  for (let ii = 0; ii < itemCount; ii++) {
1386
1423
  const frame = this._getFrameMetricsApprox(ii);
1387
- /* $FlowFixMe(>=0.68.0 site=react_native_fb) This comment suppresses an
1388
- * error found when Flow v0.68 was deployed. To see the error delete this
1389
- * comment and run Flow. */
1424
+ /* $FlowFixMe[prop-missing] (>=0.68.0 site=react_native_fb) This comment
1425
+ * suppresses an error found when Flow v0.68 was deployed. To see the
1426
+ * error delete this comment and run Flow. */
1390
1427
  if (frame.inLayout) {
1391
1428
  framesInLayout.push(frame);
1392
1429
  }
@@ -1443,7 +1480,9 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1443
1480
  ...
1444
1481
  }>,
1445
1482
  ): number {
1446
- return !this.props.horizontal ? metrics.height : metrics.width;
1483
+ return !horizontalOrDefault(this.props.horizontal)
1484
+ ? metrics.height
1485
+ : metrics.width;
1447
1486
  }
1448
1487
 
1449
1488
  _selectOffset(
@@ -1453,7 +1492,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1453
1492
  ...
1454
1493
  }>,
1455
1494
  ): number {
1456
- return !this.props.horizontal ? metrics.y : metrics.x;
1495
+ return !horizontalOrDefault(this.props.horizontal) ? metrics.y : metrics.x;
1457
1496
  }
1458
1497
 
1459
1498
  _maybeCallOnEndReached() {
@@ -1465,9 +1504,8 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1465
1504
  } = this.props;
1466
1505
  const {contentLength, visibleLength, offset} = this._scrollMetrics;
1467
1506
  const distanceFromEnd = contentLength - visibleLength - offset;
1468
- const threshold = onEndReachedThreshold
1469
- ? onEndReachedThreshold * visibleLength
1470
- : 2;
1507
+ const threshold =
1508
+ onEndReachedThreshold != null ? onEndReachedThreshold * visibleLength : 2;
1471
1509
  if (
1472
1510
  onEndReached &&
1473
1511
  this.state.last === getItemCount(data) - 1 &&
@@ -1606,11 +1644,10 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1606
1644
  const {offset, visibleLength, velocity} = this._scrollMetrics;
1607
1645
  const itemCount = this.props.getItemCount(this.props.data);
1608
1646
  let hiPri = false;
1609
- const scrollingThreshold =
1610
- /* $FlowFixMe(>=0.63.0 site=react_native_fb) This comment suppresses an
1611
- * error found when Flow v0.63 was deployed. To see the error delete
1612
- * this comment and run Flow. */
1613
- (this.props.onEndReachedThreshold * visibleLength) / 2;
1647
+ const onEndReachedThreshold = onEndReachedThresholdOrDefault(
1648
+ this.props.onEndReachedThreshold,
1649
+ );
1650
+ const scrollingThreshold = (onEndReachedThreshold * visibleLength) / 2;
1614
1651
  // Mark as high priority if we're close to the start of the first item
1615
1652
  // But only if there are items before the first rendered item
1616
1653
  if (first > 0) {
@@ -1691,7 +1728,14 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1691
1728
  };
1692
1729
 
1693
1730
  _updateCellsToRender = () => {
1694
- const {data, getItemCount, onEndReachedThreshold} = this.props;
1731
+ const {
1732
+ data,
1733
+ getItemCount,
1734
+ onEndReachedThreshold: _onEndReachedThreshold,
1735
+ } = this.props;
1736
+ const onEndReachedThreshold = onEndReachedThresholdOrDefault(
1737
+ _onEndReachedThreshold,
1738
+ );
1695
1739
  const isVirtualizationDisabled = this._isVirtualizationDisabled();
1696
1740
  this._updateViewableItems(data);
1697
1741
  if (!data) {
@@ -1712,7 +1756,10 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1712
1756
  // we will trust the initialScrollIndex suggestion.
1713
1757
  if (!this.props.initialScrollIndex || this._scrollMetrics.offset) {
1714
1758
  newState = computeWindowedRenderLimits(
1715
- this.props,
1759
+ this.props.data,
1760
+ this.props.getItemCount,
1761
+ maxToRenderPerBatchOrDefault(this.props.maxToRenderPerBatch),
1762
+ windowSizeOrDefault(this.props.windowSize),
1716
1763
  state,
1717
1764
  this._getFrameMetricsApprox,
1718
1765
  this._scrollMetrics,
@@ -1722,11 +1769,8 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1722
1769
  } else {
1723
1770
  const distanceFromEnd = contentLength - visibleLength - offset;
1724
1771
  const renderAhead =
1725
- /* $FlowFixMe(>=0.63.0 site=react_native_fb) This comment suppresses
1726
- * an error found when Flow v0.63 was deployed. To see the error
1727
- * delete this comment and run Flow. */
1728
1772
  distanceFromEnd < onEndReachedThreshold * visibleLength
1729
- ? this.props.maxToRenderPerBatch
1773
+ ? maxToRenderPerBatchOrDefault(this.props.maxToRenderPerBatch)
1730
1774
  : 0;
1731
1775
  newState = {
1732
1776
  first: 0,
@@ -1758,6 +1802,7 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1758
1802
  }
1759
1803
  }
1760
1804
  if (someChildHasMore) {
1805
+ // $FlowFixMe[incompatible-use]
1761
1806
  newState.last = ii;
1762
1807
  break;
1763
1808
  }
@@ -1775,9 +1820,9 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1775
1820
  };
1776
1821
 
1777
1822
  _createViewToken = (index: number, isViewable: boolean) => {
1778
- const {data, getItem, keyExtractor} = this.props;
1823
+ const {data, getItem} = this.props;
1779
1824
  const item = getItem(data, index);
1780
- return {index, item, key: keyExtractor(item, index), isViewable};
1825
+ return {index, item, key: this._keyExtractor(item, index), isViewable};
1781
1826
  };
1782
1827
 
1783
1828
  _getFrameMetricsApprox = (
@@ -1813,27 +1858,21 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1813
1858
  inLayout?: boolean,
1814
1859
  ...
1815
1860
  } => {
1816
- const {
1817
- data,
1818
- getItem,
1819
- getItemCount,
1820
- getItemLayout,
1821
- keyExtractor,
1822
- } = this.props;
1861
+ const {data, getItem, getItemCount, getItemLayout} = this.props;
1823
1862
  invariant(
1824
1863
  getItemCount(data) > index,
1825
1864
  'Tried to get frame for out of range index ' + index,
1826
1865
  );
1827
1866
  const item = getItem(data, index);
1828
- let frame = item && this._frames[keyExtractor(item, index)];
1867
+ let frame = item && this._frames[this._keyExtractor(item, index)];
1829
1868
  if (!frame || frame.index !== index) {
1830
1869
  if (getItemLayout) {
1831
1870
  frame = getItemLayout(data, index);
1832
1871
  }
1833
1872
  }
1834
- /* $FlowFixMe(>=0.63.0 site=react_native_fb) This comment suppresses an
1835
- * error found when Flow v0.63 was deployed. To see the error delete this
1836
- * comment and run Flow. */
1873
+ /* $FlowFixMe[prop-missing] (>=0.63.0 site=react_native_fb) This comment
1874
+ * suppresses an error found when Flow v0.63 was deployed. To see the error
1875
+ * delete this comment and run Flow. */
1837
1876
  return frame;
1838
1877
  };
1839
1878
 
@@ -1856,7 +1895,9 @@ class VirtualizedList extends React.PureComponent<Props, State> {
1856
1895
 
1857
1896
  type CellRendererProps = {
1858
1897
  CellRendererComponent?: ?React.ComponentType<any>,
1859
- ItemSeparatorComponent: ?React.ComponentType<*>,
1898
+ ItemSeparatorComponent: ?React.ComponentType<
1899
+ any | {highlighted: boolean, leadingItem: ?Item},
1900
+ >,
1860
1901
  cellKey: string,
1861
1902
  fillRateHelper: FillRateHelper,
1862
1903
  horizontal: ?boolean,
@@ -1960,9 +2001,12 @@ class CellRenderer extends React.Component<
1960
2001
  }
1961
2002
 
1962
2003
  if (ListItemComponent) {
1963
- /* $FlowFixMe(>=0.108.0 site=react_native_fb) This comment suppresses an
1964
- * error found when Flow v0.108 was deployed. To see the error, delete
1965
- * this comment and run Flow. */
2004
+ /* $FlowFixMe[not-a-component] (>=0.108.0 site=react_native_fb) This
2005
+ * comment suppresses an error found when Flow v0.108 was deployed. To
2006
+ * see the error, delete this comment and run Flow. */
2007
+ /* $FlowFixMe[incompatible-type-arg] (>=0.108.0 site=react_native_fb)
2008
+ * This comment suppresses an error found when Flow v0.108 was deployed.
2009
+ * To see the error, delete this comment and run Flow. */
1966
2010
  return React.createElement(ListItemComponent, {
1967
2011
  item,
1968
2012
  index,
@@ -2004,9 +2048,9 @@ class CellRenderer extends React.Component<
2004
2048
  );
2005
2049
 
2006
2050
  const onLayout =
2007
- /* $FlowFixMe(>=0.68.0 site=react_native_fb) This comment suppresses an
2008
- * error found when Flow v0.68 was deployed. To see the error delete this
2009
- * comment and run Flow. */
2051
+ /* $FlowFixMe[prop-missing] (>=0.68.0 site=react_native_fb) This comment
2052
+ * suppresses an error found when Flow v0.68 was deployed. To see the
2053
+ * error delete this comment and run Flow. */
2010
2054
  getItemLayout && !parentProps.debug && !fillRateHelper.enabled()
2011
2055
  ? undefined
2012
2056
  : this.props.onLayout;
@@ -2023,9 +2067,9 @@ class CellRenderer extends React.Component<
2023
2067
  ? [styles.row, inversionStyle]
2024
2068
  : inversionStyle;
2025
2069
  const result = !CellRendererComponent ? (
2026
- /* $FlowFixMe(>=0.89.0 site=react_native_fb) This comment suppresses an
2027
- * error found when Flow v0.89 was deployed. To see the error, delete
2028
- * this comment and run Flow. */
2070
+ /* $FlowFixMe[incompatible-type-arg] (>=0.89.0 site=react_native_fb) *
2071
+ This comment suppresses an error found when Flow v0.89 was deployed. *
2072
+ To see the error, delete this comment and run Flow. */
2029
2073
  <View style={cellStyle} onLayout={onLayout}>
2030
2074
  {element}
2031
2075
  {itemSeparator}