react-native-tvos 0.64.2-5 → 0.66.3-2

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 (1779) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +0 -2
  2. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +0 -2
  3. package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +2 -2
  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 +4 -3
  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 +9 -6
  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 +3 -5
  22. package/Libraries/Animated/components/AnimatedScrollView.js +3 -5
  23. package/Libraries/Animated/components/AnimatedSectionList.js +1 -3
  24. package/Libraries/Animated/components/AnimatedText.js +3 -5
  25. package/Libraries/Animated/components/AnimatedView.js +3 -3
  26. package/Libraries/Animated/createAnimatedComponent.js +48 -29
  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 +116 -132
  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 +10 -12
  44. package/Libraries/Blob/RCTBlobPlugins.mm +4 -3
  45. package/Libraries/Blob/RCTFileReaderModule.mm +3 -9
  46. package/Libraries/Blob/React-RCTBlob.podspec +3 -3
  47. package/Libraries/Blob/URL.js +17 -19
  48. package/Libraries/BugReporting/BugReporting.js +2 -2
  49. package/Libraries/BugReporting/getReactData.js +2 -2
  50. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +350 -0
  51. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +4 -2
  52. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +0 -2
  53. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +35 -0
  54. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +26 -0
  55. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +22 -21
  56. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +0 -2
  57. package/Libraries/Components/AppleTV/TVFocusEventHandler.js +51 -0
  58. package/Libraries/Components/AppleTV/TVFocusGuideView.js +30 -35
  59. package/Libraries/Components/AppleTV/TVViewPropTypes.js +0 -27
  60. package/Libraries/Components/Button.js +42 -15
  61. package/Libraries/Components/Clipboard/Clipboard.js +0 -2
  62. package/Libraries/Components/Clipboard/NativeClipboard.js +0 -2
  63. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +4 -5
  64. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +48 -9
  65. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +1 -2
  66. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.android.js +0 -2
  67. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -2
  68. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +0 -2
  69. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +0 -2
  70. package/Libraries/Components/Keyboard/Keyboard.js +52 -57
  71. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +17 -22
  72. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +0 -2
  73. package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +3 -3
  74. package/Libraries/Components/Pressable/Pressable.js +49 -15
  75. package/Libraries/Components/Pressable/useAndroidRippleForView.js +18 -17
  76. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +15 -13
  77. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +0 -2
  78. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +4 -5
  79. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +2 -5
  80. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -2
  81. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -12
  82. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +9 -3
  83. package/Libraries/Components/RefreshControl/RefreshControl.js +7 -26
  84. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -3
  85. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +0 -2
  86. package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -1
  87. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +9 -26
  88. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +31 -45
  89. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +12 -26
  90. package/Libraries/Components/ScrollView/ScrollView.js +786 -232
  91. package/Libraries/Components/ScrollView/ScrollViewContext.js +3 -3
  92. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +75 -21
  93. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +5 -12
  94. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +256 -242
  95. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +13 -5
  96. package/Libraries/Components/ScrollView/processDecelerationRate.js +0 -2
  97. package/Libraries/Components/SegmentedControlIOS/RCTSegmentedControlNativeComponent.js +0 -2
  98. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.android.js +4 -5
  99. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +17 -11
  100. package/Libraries/Components/Slider/Slider.js +20 -9
  101. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -2
  102. package/Libraries/Components/Sound/NativeSoundManager.js +0 -2
  103. package/Libraries/Components/Sound/SoundManager.js +0 -1
  104. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +0 -2
  105. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +0 -2
  106. package/Libraries/Components/StatusBar/StatusBar.js +10 -21
  107. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +0 -2
  108. package/Libraries/Components/Switch/Switch.js +102 -122
  109. package/Libraries/Components/Switch/SwitchNativeComponent.js +0 -2
  110. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +14 -20
  111. package/Libraries/Components/TextInput/AndroidTextInputViewConfig.js +7 -5
  112. package/Libraries/Components/TextInput/InputAccessoryView.js +6 -8
  113. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +0 -2
  114. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +6 -5
  115. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +6 -16
  116. package/Libraries/Components/TextInput/{RCTSinglelineTextInputViewConfig.js → RCTTextInputViewConfig.js} +3 -5
  117. package/Libraries/Components/TextInput/TextInput.js +289 -227
  118. package/Libraries/Components/TextInput/TextInputNativeCommands.js +0 -2
  119. package/Libraries/Components/TextInput/TextInputState.js +1 -3
  120. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +0 -2
  121. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +0 -1
  122. package/Libraries/Components/Touchable/BoundingDimensions.js +1 -2
  123. package/Libraries/Components/Touchable/PooledClass.js +1 -2
  124. package/Libraries/Components/Touchable/Position.js +1 -2
  125. package/Libraries/Components/Touchable/Touchable.js +43 -76
  126. package/Libraries/Components/Touchable/TouchableBounce.js +0 -2
  127. package/Libraries/Components/Touchable/TouchableHighlight.js +22 -6
  128. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +16 -5
  129. package/Libraries/Components/Touchable/TouchableOpacity.js +19 -8
  130. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +13 -4
  131. package/Libraries/Components/Touchable/ensurePositiveDelayProps.js +1 -2
  132. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +0 -2
  133. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +2 -3
  134. package/Libraries/Components/View/ReactNativeStyleAttributes.js +133 -68
  135. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -2
  136. package/Libraries/Components/View/ReactNativeViewViewConfig.js +13 -11
  137. package/Libraries/Components/View/View.js +2 -4
  138. package/Libraries/Components/View/ViewAccessibility.js +3 -0
  139. package/Libraries/Components/View/ViewNativeComponent.js +23 -63
  140. package/Libraries/Core/Devtools/getDevServer.js +0 -2
  141. package/Libraries/Core/Devtools/parseErrorStack.js +0 -9
  142. package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
  143. package/Libraries/Core/ExceptionsManager.js +48 -40
  144. package/Libraries/Core/ExtendedError.js +19 -0
  145. package/Libraries/Core/InitializeCore.js +1 -0
  146. package/Libraries/Core/NativeExceptionsManager.js +0 -2
  147. package/Libraries/Core/ReactFiberErrorDialog.js +44 -34
  148. package/Libraries/Core/ReactNativeVersion.js +2 -2
  149. package/Libraries/Core/ReactNativeVersionCheck.js +0 -2
  150. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +0 -2
  151. package/Libraries/Core/Timers/JSTimers.js +41 -58
  152. package/Libraries/Core/Timers/NativeTiming.js +0 -2
  153. package/Libraries/Core/Timers/immediateShim.js +67 -0
  154. package/Libraries/Core/Timers/queueMicrotask.js +41 -0
  155. package/Libraries/Core/polyfillPromise.js +1 -1
  156. package/Libraries/Core/setUpDeveloperTools.js +53 -58
  157. package/Libraries/Core/setUpReactDevTools.js +18 -1
  158. package/Libraries/Core/setUpReactRefresh.js +3 -1
  159. package/Libraries/Core/setUpRegeneratorRuntime.js +25 -8
  160. package/Libraries/Core/setUpTimers.js +64 -5
  161. package/Libraries/Core/setUpXHR.js +4 -4
  162. package/Libraries/DeprecatedPropTypes/DeprecatedImagePropType.android.js +131 -0
  163. package/Libraries/DeprecatedPropTypes/{DeprecatedImagePropType.js → DeprecatedImagePropType.ios.js} +0 -0
  164. package/Libraries/DeprecatedPropTypes/DeprecatedTextInputPropTypes.js +5 -5
  165. package/Libraries/DeprecatedPropTypes/DeprecatedViewAccessibility.js +2 -0
  166. package/Libraries/EventEmitter/NativeEventEmitter.js +100 -47
  167. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +9 -70
  168. package/Libraries/EventEmitter/RCTEventEmitter.js +5 -1
  169. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +0 -2
  170. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +31 -8
  171. package/Libraries/FBLazyVector/BUCK +5 -1
  172. package/Libraries/FBLazyVector/FBLazyVector.podspec +2 -2
  173. package/Libraries/HeapCapture/HeapCapture.js +0 -2
  174. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +0 -2
  175. package/Libraries/Image/AssetSourceResolver.js +8 -16
  176. package/Libraries/Image/AssetUtils.js +48 -0
  177. package/Libraries/Image/Image.android.js +43 -132
  178. package/Libraries/Image/Image.ios.js +58 -29
  179. package/Libraries/Image/ImageAnalyticsTagContext.js +4 -2
  180. package/Libraries/Image/ImageBackground.js +2 -2
  181. package/Libraries/Image/ImageInjection.js +28 -0
  182. package/Libraries/Image/ImagePickerIOS.js +0 -2
  183. package/Libraries/Image/ImageSource.js +57 -14
  184. package/Libraries/Image/ImageViewNativeComponent.js +70 -27
  185. package/Libraries/Image/NativeImageEditor.js +0 -2
  186. package/Libraries/Image/NativeImageLoaderAndroid.js +0 -2
  187. package/Libraries/Image/NativeImageLoaderIOS.js +6 -2
  188. package/Libraries/Image/NativeImagePickerIOS.js +0 -2
  189. package/Libraries/Image/NativeImageStoreAndroid.js +0 -2
  190. package/Libraries/Image/NativeImageStoreIOS.js +0 -2
  191. package/Libraries/Image/RCTAnimatedImage.m +6 -3
  192. package/Libraries/Image/RCTGIFImageDecoder.mm +6 -0
  193. package/Libraries/Image/RCTImageBlurUtils.m +17 -11
  194. package/Libraries/Image/RCTImageEditingManager.mm +4 -4
  195. package/Libraries/Image/RCTImageLoader.h +2 -2
  196. package/Libraries/Image/RCTImageLoader.mm +31 -30
  197. package/Libraries/Image/RCTImageLoaderWithAttributionProtocol.h +0 -5
  198. package/Libraries/Image/RCTImagePlugins.mm +4 -3
  199. package/Libraries/Image/RCTImageStoreManager.mm +5 -5
  200. package/Libraries/Image/RCTImageURLLoaderWithAttribution.h +1 -0
  201. package/Libraries/Image/RCTLocalAssetImageLoader.mm +5 -0
  202. package/Libraries/Image/React-RCTImage.podspec +3 -3
  203. package/Libraries/Image/TextInlineImageNativeComponent.js +84 -2
  204. package/Libraries/Image/nativeImageSource.js +0 -2
  205. package/Libraries/Image/resolveAssetSource.js +2 -1
  206. package/Libraries/Inspector/ElementProperties.js +1 -1
  207. package/Libraries/Inspector/Inspector.js +13 -4
  208. package/Libraries/Inspector/InspectorPanel.js +1 -1
  209. package/Libraries/Interaction/FrameRateLogger.js +0 -2
  210. package/Libraries/Interaction/InteractionManager.js +7 -6
  211. package/Libraries/Interaction/InteractionMixin.js +1 -2
  212. package/Libraries/Interaction/PanResponder.js +1 -1
  213. package/Libraries/LayoutAnimation/LayoutAnimation.js +53 -17
  214. package/Libraries/Linking/Linking.js +19 -10
  215. package/Libraries/Linking/NativeIntentAndroid.js +0 -2
  216. package/Libraries/Linking/NativeLinkingManager.js +0 -2
  217. package/Libraries/LinkingIOS/RCTLinkingPlugins.mm +4 -3
  218. package/Libraries/LinkingIOS/React-RCTLinking.podspec +3 -3
  219. package/Libraries/Lists/CellRenderMask.js +145 -0
  220. package/Libraries/Lists/FillRateHelper.js +1 -1
  221. package/Libraries/Lists/FlatList.js +80 -52
  222. package/Libraries/Lists/SectionList.js +20 -23
  223. package/Libraries/Lists/SectionListModern.js +249 -0
  224. package/Libraries/Lists/ViewabilityHelper.js +9 -9
  225. package/Libraries/Lists/VirtualizeUtils.js +18 -20
  226. package/Libraries/Lists/VirtualizedList.js +190 -132
  227. package/Libraries/Lists/VirtualizedListContext.js +3 -2
  228. package/Libraries/Lists/VirtualizedSectionList.js +247 -209
  229. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +6 -6
  230. package/Libraries/LogBox/Data/LogBoxData.js +21 -19
  231. package/Libraries/LogBox/Data/LogBoxLog.js +0 -2
  232. package/Libraries/LogBox/Data/LogBoxSymbolication.js +0 -2
  233. package/Libraries/LogBox/Data/parseLogBoxLog.js +0 -2
  234. package/Libraries/LogBox/LogBox.js +114 -49
  235. package/Libraries/LogBox/LogBoxInspectorContainer.js +0 -2
  236. package/Libraries/LogBox/LogBoxNotificationContainer.js +0 -2
  237. package/Libraries/LogBox/UI/LogBoxButton.js +1 -2
  238. package/Libraries/LogBox/UI/LogBoxInspector.js +0 -2
  239. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +0 -2
  240. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +0 -2
  241. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +0 -2
  242. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +0 -2
  243. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +0 -2
  244. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +0 -2
  245. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +4 -5
  246. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +0 -2
  247. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +4 -3
  248. package/Libraries/LogBox/UI/LogBoxMessage.js +0 -2
  249. package/Libraries/LogBox/UI/LogBoxNotification.js +3 -4
  250. package/Libraries/LogBox/UI/LogBoxStyle.js +0 -2
  251. package/Libraries/Modal/Modal.js +46 -21
  252. package/Libraries/{Components/Picker/PickerIOS.android.js → Modal/ModalInjection.js} +5 -4
  253. package/Libraries/Modal/NativeModalManager.js +0 -2
  254. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +8 -4
  255. package/Libraries/NativeAnimation/RCTAnimationPlugins.mm +4 -3
  256. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +7 -2
  257. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +1 -1
  258. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.m +1 -1
  259. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.h +2 -1
  260. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +31 -23
  261. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +4 -4
  262. package/Libraries/NativeComponent/NativeComponentRegistry.js +157 -0
  263. package/Libraries/NativeComponent/ViewConfig.js +50 -0
  264. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +0 -2
  265. package/Libraries/NativeModules/specs/NativeDevMenu.js +0 -2
  266. package/Libraries/NativeModules/specs/NativeDevSettings.js +0 -2
  267. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +0 -2
  268. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +0 -2
  269. package/Libraries/NativeModules/specs/NativeLogBox.js +0 -2
  270. package/Libraries/NativeModules/specs/NativeRedBox.js +0 -2
  271. package/Libraries/NativeModules/specs/NativeSourceCode.js +0 -2
  272. package/Libraries/Network/NativeNetworkingAndroid.js +0 -2
  273. package/Libraries/Network/NativeNetworkingIOS.js +0 -2
  274. package/Libraries/Network/RCTDataRequestHandler.mm +6 -0
  275. package/Libraries/Network/RCTFileRequestHandler.mm +6 -0
  276. package/Libraries/Network/RCTHTTPRequestHandler.h +5 -0
  277. package/Libraries/Network/RCTHTTPRequestHandler.mm +27 -9
  278. package/Libraries/Network/RCTNetworkPlugins.mm +4 -3
  279. package/Libraries/Network/RCTNetworking.android.js +8 -4
  280. package/Libraries/Network/RCTNetworking.h +1 -1
  281. package/Libraries/Network/RCTNetworking.ios.js +63 -20
  282. package/Libraries/Network/RCTNetworking.mm +13 -3
  283. package/Libraries/Network/React-RCTNetwork.podspec +3 -3
  284. package/Libraries/Network/XMLHttpRequest.js +5 -3
  285. package/Libraries/Network/convertRequestBody.js +2 -1
  286. package/Libraries/NewAppScreen/components/Colors.js +0 -2
  287. package/Libraries/NewAppScreen/components/Header.js +1 -1
  288. package/Libraries/NewAppScreen/components/HermesBadge.js +7 -4
  289. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +0 -1
  290. package/Libraries/NewAppScreen/index.js +0 -2
  291. package/Libraries/Performance/NativeJSCSamplingProfiler.js +0 -2
  292. package/Libraries/Performance/QuickPerformanceLogger.js +4 -4
  293. package/Libraries/Performance/Systrace.js +3 -5
  294. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -3
  295. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +10 -5
  296. package/Libraries/Pressability/HoverState.js +0 -2
  297. package/Libraries/Pressability/Pressability.js +24 -22
  298. package/Libraries/Pressability/PressabilityDebug.js +9 -4
  299. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +47 -0
  300. package/Libraries/Pressability/PressabilityTypes.js +18 -0
  301. package/Libraries/Pressability/usePressability.js +0 -2
  302. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +3 -0
  303. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +43 -4
  304. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +13 -0
  305. package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.mm +4 -3
  306. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +3 -3
  307. package/Libraries/RCTRequired/BUCK +4 -1
  308. package/Libraries/RCTRequired/RCTRequired.podspec +2 -2
  309. package/Libraries/ReactNative/AppContainer.js +3 -25
  310. package/Libraries/ReactNative/AppRegistry.js +48 -7
  311. package/Libraries/ReactNative/DisplayMode.js +32 -0
  312. package/Libraries/ReactNative/DummyUIManager.js +9 -1
  313. package/Libraries/ReactNative/FabricUIManager.js +6 -5
  314. package/Libraries/ReactNative/HeadlessJsTaskError.js +0 -2
  315. package/Libraries/ReactNative/I18nManager.js +23 -9
  316. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +0 -2
  317. package/Libraries/ReactNative/NativeI18nManager.js +1 -2
  318. package/Libraries/ReactNative/NativeUIManager.js +2 -3
  319. package/Libraries/ReactNative/PaperUIManager.js +69 -42
  320. package/Libraries/ReactNative/RootTag.js +6 -4
  321. package/Libraries/ReactNative/UIManager.js +7 -4
  322. package/Libraries/{Text/TextInjection.js → ReactNative/UIManagerInjection.js} +2 -6
  323. package/Libraries/ReactNative/UIManagerProperties.js +1 -0
  324. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +32 -0
  325. package/Libraries/ReactNative/getNativeComponentAttributes.js +2 -1
  326. package/Libraries/ReactNative/renderApplication.js +24 -6
  327. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +8 -4
  328. package/Libraries/Reliability/UserFlow.js +26 -4
  329. package/Libraries/Renderer/REVISION +1 -1
  330. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +8933 -7603
  331. package/Libraries/Renderer/implementations/ReactFabric-dev.js +5810 -4905
  332. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +2893 -2551
  333. package/Libraries/Renderer/implementations/ReactFabric-prod.js +2114 -1953
  334. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +3309 -2815
  335. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +2576 -2266
  336. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +9064 -7879
  337. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +5675 -4840
  338. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +2701 -2490
  339. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +2279 -2138
  340. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +3068 -2709
  341. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +2574 -2282
  342. package/Libraries/Renderer/shims/ReactFabric.js +5 -3
  343. package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -0
  344. package/Libraries/Renderer/shims/ReactNative.js +3 -0
  345. package/Libraries/Renderer/shims/ReactNativeTypes.js +104 -63
  346. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +8 -11
  347. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +5 -3
  348. package/Libraries/Settings/NativeSettingsManager.js +0 -2
  349. package/Libraries/Settings/RCTSettingsManager.mm +2 -2
  350. package/Libraries/Settings/RCTSettingsPlugins.mm +4 -3
  351. package/Libraries/Settings/React-RCTSettings.podspec +3 -3
  352. package/Libraries/Settings/Settings.ios.js +4 -2
  353. package/Libraries/Share/NativeShareModule.js +0 -2
  354. package/Libraries/Share/Share.js +0 -2
  355. package/Libraries/Storage/AsyncStorage.js +68 -49
  356. package/Libraries/Storage/NativeAsyncLocalStorage.js +10 -9
  357. package/Libraries/Storage/NativeAsyncSQLiteDBStorage.js +10 -9
  358. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +0 -2
  359. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +16 -3
  360. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +8 -3
  361. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +2 -2
  362. package/Libraries/StyleSheet/Rect.js +0 -2
  363. package/Libraries/StyleSheet/StyleSheet.js +3 -5
  364. package/Libraries/StyleSheet/StyleSheetTypes.js +5 -0
  365. package/Libraries/StyleSheet/flattenStyle.js +5 -7
  366. package/Libraries/StyleSheet/normalizeColor.js +0 -2
  367. package/Libraries/StyleSheet/processColorArray.js +16 -6
  368. package/Libraries/StyleSheet/processTransform.js +6 -6
  369. package/Libraries/StyleSheet/splitLayoutProps.js +50 -48
  370. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.mm +1 -1
  371. package/Libraries/Text/React-RCTText.podspec +2 -2
  372. package/Libraries/Text/Text.js +187 -235
  373. package/Libraries/Text/TextAncestor.js +7 -1
  374. package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +0 -2
  375. package/Libraries/Text/TextInput/Multiline/RCTUITextView.m +12 -2
  376. package/Libraries/Text/TextInput/RCTBaseTextInputView.m +8 -0
  377. package/Libraries/Text/TextNativeComponent.js +4 -3
  378. package/Libraries/Text/TextProps.js +6 -0
  379. package/Libraries/TurboModule/RCTExport.js +1 -1
  380. package/Libraries/TurboModule/TurboModuleRegistry.js +4 -27
  381. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +2 -2
  382. package/Libraries/TypeSafety/RCTTypeSafety.podspec +3 -3
  383. package/Libraries/Types/CodegenTypes.js +2 -1
  384. package/Libraries/Types/CoreEventTypes.js +1 -3
  385. package/Libraries/{Components/Picker/PickerAndroid.ios.js → Types/RootTagTypes.js} +2 -3
  386. package/Libraries/UTFSequence.js +1 -1
  387. package/Libraries/Utilities/Appearance.js +22 -8
  388. package/Libraries/Utilities/BackHandler.android.js +0 -2
  389. package/Libraries/Utilities/DebugEnvironment.js +1 -3
  390. package/Libraries/Utilities/DevSettings.js +51 -56
  391. package/Libraries/Utilities/DeviceInfo.js +0 -2
  392. package/Libraries/Utilities/Dimensions.js +21 -20
  393. package/Libraries/Utilities/FeatureDetection.js +31 -0
  394. package/Libraries/Utilities/GlobalPerformanceLogger.js +0 -2
  395. package/Libraries/Utilities/HMRClient.js +15 -10
  396. package/Libraries/Utilities/JSDevSupportModule.js +0 -2
  397. package/Libraries/Utilities/LoadingView.android.js +0 -2
  398. package/Libraries/Utilities/LoadingView.ios.js +0 -2
  399. package/Libraries/Utilities/MatrixMath.js +1 -1
  400. package/Libraries/Utilities/NativeAppearance.js +0 -2
  401. package/Libraries/Utilities/NativeDevLoadingView.js +0 -2
  402. package/Libraries/Utilities/NativeDevSplitBundleLoader.js +0 -2
  403. package/Libraries/Utilities/NativeDeviceInfo.js +1 -3
  404. package/Libraries/Utilities/NativeJSDevSupport.js +0 -2
  405. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +0 -2
  406. package/Libraries/Utilities/NativePlatformConstantsIOS.js +0 -2
  407. package/Libraries/Utilities/PerformanceLoggerContext.js +11 -4
  408. package/Libraries/Utilities/Platform.android.js +6 -5
  409. package/Libraries/Utilities/Platform.ios.js +1 -2
  410. package/Libraries/Utilities/ReactNativeTestTools.js +12 -19
  411. package/Libraries/Utilities/codegenNativeCommands.js +1 -3
  412. package/Libraries/Utilities/codegenNativeComponent.js +0 -2
  413. package/Libraries/Utilities/createPerformanceLogger.js +0 -2
  414. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -0
  415. package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
  416. package/Libraries/Utilities/deprecatedPropType.js +3 -5
  417. package/Libraries/Utilities/stringifySafe.js +1 -3
  418. package/Libraries/Utilities/useColorScheme.js +4 -4
  419. package/Libraries/Utilities/useMergeRefs.js +44 -0
  420. package/Libraries/Utilities/useRefEffect.js +45 -0
  421. package/Libraries/Utilities/useWindowDimensions.js +9 -6
  422. package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +22 -28
  423. package/Libraries/Vibration/NativeVibration.js +0 -2
  424. package/Libraries/Vibration/RCTVibrationPlugins.mm +4 -3
  425. package/Libraries/Vibration/React-RCTVibration.podspec +3 -3
  426. package/Libraries/Vibration/Vibration.js +0 -2
  427. package/Libraries/WebSocket/NativeWebSocketModule.js +0 -2
  428. package/Libraries/WebSocket/WebSocket.js +27 -14
  429. package/Libraries/WebSocket/WebSocketInterceptor.js +6 -3
  430. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -0
  431. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +0 -2
  432. package/Libraries/promiseRejectionTrackingOptions.js +2 -2
  433. package/Libraries/vendor/emitter/EventEmitter.js +37 -4
  434. package/Libraries/vendor/emitter/EventSubscription.js +19 -0
  435. package/Libraries/vendor/emitter/_EmitterSubscription.js +16 -15
  436. package/Libraries/vendor/emitter/_EventEmitter.js +51 -41
  437. package/Libraries/vendor/emitter/_EventSubscription.js +11 -7
  438. package/Libraries/vendor/emitter/_EventSubscriptionVendor.js +21 -14
  439. package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +125 -0
  440. package/README.md +1 -1
  441. package/React/AccessibilityResources/en.lproj/Localizable.strings +1 -1
  442. package/React/Base/RCTAssert.h +35 -18
  443. package/React/Base/RCTAssert.m +52 -0
  444. package/React/Base/RCTBridge.h +15 -3
  445. package/React/Base/RCTBridge.m +14 -5
  446. package/React/Base/RCTBridgeModule.h +104 -0
  447. package/React/Base/RCTBundleManager.m +78 -0
  448. package/React/Base/RCTBundleURLProvider.h +35 -9
  449. package/React/Base/RCTBundleURLProvider.mm +87 -24
  450. package/React/Base/RCTCallableJSModules.m +47 -0
  451. package/React/Base/RCTConstants.h +9 -10
  452. package/React/Base/RCTConstants.m +18 -18
  453. package/React/Base/RCTConvert.m +31 -7
  454. package/React/Base/RCTCxxConvert.h +1 -1
  455. package/React/Base/RCTDefines.h +10 -0
  456. package/React/Base/RCTEventDispatcherProtocol.h +1 -2
  457. package/React/{Views/RCTPickerManager.h → Base/RCTInitializing.h} +4 -2
  458. package/React/Base/RCTJavaScriptLoader.mm +1 -0
  459. package/React/Base/RCTModuleData.h +20 -3
  460. package/React/Base/RCTModuleData.mm +121 -3
  461. package/React/Base/RCTModuleRegistry.m +48 -0
  462. package/React/Base/RCTMultipartStreamReader.m +0 -2
  463. package/React/Base/RCTRootView.h +10 -1
  464. package/React/Base/RCTRootView.m +12 -4
  465. package/React/Base/RCTTVRemoteHandler.h +3 -0
  466. package/React/Base/RCTTVRemoteHandler.m +24 -0
  467. package/React/Base/RCTTouchHandler.m +12 -1
  468. package/React/Base/RCTUtils.m +6 -2
  469. package/React/Base/RCTVersion.m +2 -2
  470. package/React/Base/RCTViewRegistry.m +45 -0
  471. package/React/Base/Surface/RCTSurfaceStage.h +6 -11
  472. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +1 -0
  473. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +11 -1
  474. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +3 -0
  475. package/React/CoreModules/BUCK +6 -5
  476. package/React/CoreModules/CoreModulesPlugins.mm +4 -3
  477. package/React/CoreModules/RCTAccessibilityManager.mm +17 -10
  478. package/React/CoreModules/RCTActionSheetManager.mm +17 -13
  479. package/React/CoreModules/RCTAlertController.h +2 -1
  480. package/React/CoreModules/RCTAlertController.m +5 -0
  481. package/React/CoreModules/RCTAlertManager.mm +3 -0
  482. package/React/CoreModules/RCTAppearance.mm +3 -1
  483. package/React/CoreModules/RCTAsyncLocalStorage.mm +4 -0
  484. package/React/CoreModules/RCTDevLoadingView.mm +20 -23
  485. package/React/CoreModules/RCTDevMenu.h +0 -5
  486. package/React/CoreModules/RCTDevMenu.mm +43 -71
  487. package/React/CoreModules/RCTDevSettings.h +12 -2
  488. package/React/CoreModules/RCTDevSettings.mm +100 -56
  489. package/React/CoreModules/RCTDevSplitBundleLoader.mm +2 -7
  490. package/React/CoreModules/RCTDeviceInfo.mm +26 -22
  491. package/React/CoreModules/RCTEventDispatcher.h +2 -1
  492. package/React/CoreModules/RCTEventDispatcher.mm +18 -25
  493. package/React/CoreModules/RCTExceptionsManager.mm +7 -23
  494. package/React/CoreModules/RCTKeyboardObserver.mm +1 -1
  495. package/React/CoreModules/RCTLogBox.mm +15 -10
  496. package/React/CoreModules/RCTPerfMonitor.mm +11 -5
  497. package/React/CoreModules/RCTRedBox.mm +5 -8
  498. package/React/CoreModules/RCTSourceCode.mm +2 -1
  499. package/React/CoreModules/RCTTVNavigationEventEmitter.h +7 -0
  500. package/React/CoreModules/RCTTiming.h +2 -1
  501. package/React/CoreModules/RCTTiming.mm +1 -3
  502. package/React/CoreModules/RCTWebSocketExecutor.mm +6 -0
  503. package/React/CoreModules/React-CoreModules.podspec +3 -3
  504. package/React/CxxBridge/RCTCxxBridge.mm +99 -8
  505. package/React/CxxModule/RCTNativeModule.mm +3 -1
  506. package/React/DevSupport/RCTPackagerConnection.mm +12 -5
  507. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +21 -0
  508. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +12 -1
  509. package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +3 -3
  510. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.h +2 -1
  511. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +28 -36
  512. package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryComponentView.mm +8 -7
  513. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +13 -9
  514. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +1 -3
  515. package/React/Fabric/Mounting/ComponentViews/Modal/RCTFabricModalHostViewController.mm +7 -0
  516. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.h +3 -1
  517. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +79 -26
  518. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +6 -1
  519. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +6 -1
  520. package/React/Fabric/Mounting/ComponentViews/Root/RCTRootComponentView.h +9 -0
  521. package/React/Fabric/Mounting/ComponentViews/Root/RCTRootComponentView.mm +18 -0
  522. package/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.mm +34 -19
  523. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.h +6 -0
  524. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +24 -3
  525. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +188 -99
  526. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.h +23 -0
  527. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.mm +22 -0
  528. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.mm +14 -9
  529. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +120 -30
  530. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +112 -28
  531. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +48 -2
  532. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +4 -0
  533. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +560 -20
  534. package/React/Fabric/Mounting/RCTComponentViewFactory.h +10 -2
  535. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +88 -49
  536. package/React/Fabric/Mounting/RCTComponentViewProtocol.h +3 -0
  537. package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +1 -1
  538. package/React/Fabric/Mounting/RCTMountingManager.h +28 -1
  539. package/React/Fabric/Mounting/RCTMountingManager.mm +71 -3
  540. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +4 -0
  541. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +30 -4
  542. package/React/Fabric/RCTConversions.h +20 -16
  543. package/React/Fabric/RCTScheduler.h +11 -16
  544. package/React/Fabric/RCTScheduler.mm +29 -46
  545. package/React/Fabric/RCTSurfacePresenter.h +8 -16
  546. package/React/Fabric/RCTSurfacePresenter.mm +62 -165
  547. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +4 -2
  548. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +1 -1
  549. package/React/Fabric/RCTSurfaceRegistry.h +1 -1
  550. package/React/Fabric/RCTSurfaceTouchHandler.mm +39 -7
  551. package/React/Fabric/Surface/RCTFabricSurface.h +9 -6
  552. package/React/Fabric/Surface/RCTFabricSurface.mm +139 -127
  553. package/React/Modules/RCTEventEmitter.h +3 -2
  554. package/React/Modules/RCTEventEmitter.m +8 -11
  555. package/React/Modules/RCTI18nUtil.h +14 -6
  556. package/React/Modules/RCTI18nUtil.m +1 -47
  557. package/React/Modules/RCTUIManager.m +19 -9
  558. package/React/Profiler/RCTProfile.m +9 -8
  559. package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
  560. package/React/Profiler/RCTProfileTrampoline-arm64.S +2 -2
  561. package/React/React-RCTFabric.podspec +8 -5
  562. package/React/Tests/Text/RCTParagraphComponentViewTests.mm +72 -0
  563. package/React/Views/RCTBorderDrawing.m +28 -25
  564. package/React/Views/RCTComponentData.h +10 -1
  565. package/React/Views/RCTComponentData.m +23 -8
  566. package/React/Views/RCTConvert+CoreLocation.m +2 -2
  567. package/React/Views/RCTDatePickerManager.m +33 -0
  568. package/React/Views/RCTLayout.m +25 -21
  569. package/React/Views/RCTModalHostView.h +4 -1
  570. package/React/Views/RCTModalHostView.m +52 -22
  571. package/React/Views/RCTModalHostViewManager.m +4 -3
  572. package/React/Views/RCTShadowView+Layout.m +15 -12
  573. package/React/Views/RCTShadowView.m +3 -2
  574. package/React/Views/RCTTVView.h +5 -0
  575. package/React/Views/RCTTVView.m +16 -0
  576. package/React/Views/RCTView.h +7 -7
  577. package/React/Views/RCTView.m +31 -43
  578. package/React/Views/RCTViewManager.m +36 -2
  579. package/React/Views/RCTWeakViewHolder.h +19 -0
  580. package/React/Views/RefreshControl/RCTRefreshControl.m +22 -1
  581. package/React/Views/RefreshControl/RCTRefreshControlManager.m +1 -0
  582. package/React/Views/ScrollView/RCTScrollContentView.m +1 -1
  583. package/React/Views/ScrollView/RCTScrollView.h +1 -7
  584. package/React/Views/ScrollView/RCTScrollView.m +17 -63
  585. package/React/Views/ScrollView/RCTScrollViewManager.m +3 -0
  586. package/React/third-party.xcconfig +1 -1
  587. package/React-Core.podspec +4 -15
  588. package/React.podspec +2 -2
  589. package/ReactAndroid/Android-prebuilt.mk +82 -3
  590. package/ReactAndroid/README.md +2 -2
  591. package/ReactAndroid/build.gradle +145 -34
  592. package/ReactAndroid/gradle.properties +7 -5
  593. package/ReactAndroid/proguard-rules.pro +1 -7
  594. package/ReactAndroid/src/androidTest/buck-runner/BUCK +1 -0
  595. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/BUCK +2 -1
  596. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java +1 -1
  597. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/BUCK +2 -1
  598. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/ReactIdleDetectionUtil.java +1 -1
  599. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/network/BUCK +1 -0
  600. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/rule/BUCK +6 -5
  601. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/BUCK +1 -1
  602. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/TextInputTestCase.java +1 -2
  603. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/BUCK +6 -5
  604. package/ReactAndroid/src/androidTest/js/BUCK +26 -0
  605. package/ReactAndroid/src/androidTest/js/TestBundle.js +0 -5
  606. package/ReactAndroid/src/androidTest/js/UIManagerTestModule.js +7 -6
  607. package/ReactAndroid/src/main/java/com/facebook/BUCK +1 -0
  608. package/ReactAndroid/src/main/java/com/facebook/debug/debugoverlay/model/BUCK +1 -0
  609. package/ReactAndroid/src/main/java/com/facebook/debug/holder/BUCK +1 -0
  610. package/ReactAndroid/src/main/java/com/facebook/debug/tags/BUCK +1 -0
  611. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +2 -2
  612. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/BUCK +2 -0
  613. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +4 -4
  614. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/BUCK +2 -0
  615. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.java +1 -1
  616. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.java +0 -6
  617. package/ReactAndroid/src/main/java/com/facebook/hermes/unicode/BUCK +1 -0
  618. package/ReactAndroid/src/main/java/com/facebook/perftest/BUCK +1 -0
  619. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/BUCK +3 -2
  620. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/proguard_annotations.pro +1 -0
  621. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +4 -1
  622. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +3 -2
  623. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +8 -0
  624. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +10 -3
  625. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +6 -2
  626. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +145 -67
  627. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +9 -1
  628. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +8 -1
  629. package/ReactAndroid/src/main/java/com/facebook/react/{turbomodule/core/ReactPackageTurboModuleManagerDelegate.java → ReactPackageTurboModuleManagerDelegate.java} +18 -6
  630. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +82 -33
  631. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +2 -1
  632. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +10 -2
  633. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +66 -33
  634. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.java +4 -0
  635. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BUCK +2 -0
  636. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BackgroundExecutor.java +3 -2
  637. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +7 -5
  638. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +7 -3
  639. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.java +4 -1
  640. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSIModuleRegistry.java +4 -0
  641. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +37 -0
  642. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +1 -1
  643. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +8 -1
  644. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +26 -0
  645. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +46 -8
  646. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +2 -3
  647. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarkerConstants.java +13 -3
  648. package/ReactAndroid/src/main/java/com/facebook/react/bridge/{ReactSoftException.java → ReactSoftExceptionLogger.java} +8 -3
  649. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.java +52 -2
  650. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +8 -7
  651. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +37 -2
  652. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +3 -0
  653. package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.java +1 -0
  654. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +29 -0
  655. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java +347 -0
  656. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBufferSoLoader.java +33 -0
  657. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/Android.mk +39 -0
  658. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/BUCK +34 -0
  659. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/OnLoad.cpp +15 -0
  660. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/ReadableMapBuffer.cpp +76 -0
  661. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/ReadableMapBuffer.h +51 -0
  662. package/ReactAndroid/src/main/java/com/facebook/react/common/network/BUCK +1 -0
  663. package/ReactAndroid/src/main/java/com/facebook/react/config/BUCK +3 -1
  664. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +55 -38
  665. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +3 -1
  666. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +275 -0
  667. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevLoadingViewController.java +2 -2
  668. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +17 -60
  669. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +176 -344
  670. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +8 -8
  671. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java +13 -1
  672. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.java +1 -1
  673. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.java +100 -0
  674. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{ReactInstanceManagerDevHelper.java → ReactInstanceDevHelper.java} +3 -2
  675. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxHandler.java +2 -16
  676. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/BundleLoadCallback.java +12 -0
  677. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +6 -1
  678. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/ErrorType.java +23 -0
  679. package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +2 -1
  680. package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +10 -1
  681. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.java +4 -3
  682. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +17 -71
  683. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +466 -616
  684. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +37 -24
  685. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandler.java +50 -0
  686. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.java +131 -0
  687. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +36 -1
  688. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java +27 -7
  689. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +4 -5
  690. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +4 -5
  691. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +300 -615
  692. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +34 -13
  693. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CoreComponentsRegistry.cpp +3 -6
  694. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.cpp +22 -2
  695. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.h +4 -0
  696. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/OnLoad.cpp +2 -0
  697. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.cpp +15 -28
  698. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.h +3 -1
  699. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.cpp +122 -0
  700. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.h +68 -0
  701. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +406 -0
  702. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +271 -658
  703. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +1008 -0
  704. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchIntCommandMountItem.java +9 -2
  705. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchStringCommandMountItem.java +9 -2
  706. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +39 -34
  707. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItem.java +4 -0
  708. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +21 -23
  709. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.java +11 -4
  710. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +2 -2
  711. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/BUCK +1 -0
  712. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/BUCK +1 -0
  713. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +3 -3
  714. package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/BUCK +1 -0
  715. package/ReactAndroid/src/main/java/com/facebook/react/module/model/BUCK +1 -0
  716. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java +21 -4
  717. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +2 -1
  718. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.java +10 -1
  719. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +2 -1
  720. package/ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/BUCK +1 -0
  721. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java +11 -1
  722. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +2 -1
  723. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +2 -1
  724. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.java +35 -7
  725. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +2 -2
  726. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/BUCK +1 -1
  727. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/BlobCollector.cpp +1 -0
  728. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +2 -1
  729. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +2 -1
  730. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/BUCK +1 -0
  731. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/BUCK +1 -0
  732. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +2 -1
  733. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactAndroidHWInputDeviceHelper.java +15 -4
  734. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +5 -2
  735. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/BUCK +2 -1
  736. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java +19 -13
  737. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java +1 -1
  738. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +3 -1
  739. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +2 -1
  740. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +19 -8
  741. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +2 -1
  742. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +12 -4
  743. package/ReactAndroid/src/main/java/com/facebook/react/modules/fabric/BUCK +1 -0
  744. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/BUCK +1 -0
  745. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.java +10 -0
  746. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +3 -1
  747. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +12 -12
  748. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +2 -1
  749. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +2 -1
  750. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +2 -1
  751. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +1 -1
  752. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java +1 -18
  753. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +2 -1
  754. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +2 -1
  755. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +2 -1
  756. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +2 -1
  757. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageModule.java +1 -1
  758. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +2 -1
  759. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +4 -2
  760. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +2 -2
  761. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +2 -1
  762. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +2 -1
  763. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +2 -1
  764. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK +1 -0
  765. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +3 -1
  766. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/BUCK +1 -0
  767. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/Android.mk +1 -1
  768. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/BUCK +1 -1
  769. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/BUCK +20 -0
  770. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/RuntimeSchedulerManager.java +39 -0
  771. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/Android.mk +34 -0
  772. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/BUCK +35 -0
  773. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/OnLoad.cpp +15 -0
  774. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/RuntimeSchedulerManager.cpp +46 -0
  775. package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/RuntimeSchedulerManager.h +40 -0
  776. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +1 -1
  777. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -4
  778. package/ReactAndroid/src/main/java/com/facebook/react/surface/BUCK +1 -0
  779. package/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK +1 -0
  780. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +2 -1
  781. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +11 -10
  782. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManagerDelegate.java +3 -0
  783. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModulePerfLogger.java +2 -0
  784. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK +1 -0
  785. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/TurboModule.java +4 -4
  786. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/Android.mk +4 -4
  787. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/BUCK +3 -2
  788. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.cpp +115 -86
  789. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.h +14 -5
  790. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +6 -1
  791. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +15 -1
  792. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolver.java +17 -0
  793. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolverManager.java +41 -0
  794. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +7 -28
  795. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FabricViewStateManager.java +5 -19
  796. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.java +27 -0
  797. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +4 -13
  798. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +10 -13
  799. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.java +17 -6
  800. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.java +1 -6
  801. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +16 -10
  802. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingProhibitedView.java +26 -0
  803. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.java +5 -49
  804. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +25 -0
  805. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRoot.java +14 -0
  806. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.java +18 -0
  807. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/StateWrapper.java +24 -4
  808. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java +35 -7
  809. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +101 -68
  810. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +46 -5
  811. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementationProvider.java +35 -13
  812. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +69 -17
  813. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +55 -54
  814. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +1 -2
  815. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +13 -6
  816. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +15 -13
  817. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +2 -2
  818. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerResolver.java +26 -0
  819. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +16 -1
  820. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK +1 -0
  821. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/BUCK +1 -1
  822. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlackHoleEventDispatcher.java +3 -0
  823. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ContentSizeChangeEvent.java +8 -3
  824. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +134 -6
  825. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.java +3 -0
  826. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.java +8 -3
  827. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +236 -0
  828. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java +10 -0
  829. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +32 -0
  830. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +80 -25
  831. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +66 -5
  832. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +7 -4
  833. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/interfaces/BUCK +21 -0
  834. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{BaseViewManagerDelegate.java → interfaces/BaseViewManagerDelegate.java} +0 -0
  835. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{BaseViewManagerInterface.java → interfaces/BaseViewManagerInterface.java} +0 -0
  836. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{FloatUtil.java → interfaces/FloatUtil.java} +0 -0
  837. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{Spacing.java → interfaces/Spacing.java} +0 -0
  838. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ViewManagerDelegate.java → interfaces/ViewManagerDelegate.java} +0 -0
  839. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ViewProps.java → interfaces/ViewProps.java} +10 -2
  840. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/Android.mk +37 -0
  841. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/BUCK +41 -0
  842. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.cpp +77 -0
  843. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.h +54 -0
  844. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/OnLoad.cpp +16 -0
  845. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/BUCK +1 -0
  846. package/ReactAndroid/src/main/java/com/facebook/react/util/BUCK +1 -0
  847. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/BUCK +1 -0
  848. package/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +1 -0
  849. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +3 -2
  850. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java +17 -8
  851. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.java +9 -10
  852. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.java +9 -10
  853. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.java +7 -13
  854. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.java +7 -13
  855. package/ReactAndroid/src/main/java/com/facebook/react/views/image/BUCK +2 -0
  856. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.java +45 -19
  857. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactCallerContextFactory.java +2 -2
  858. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java +12 -7
  859. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java +75 -26
  860. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK +2 -0
  861. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.java +17 -0
  862. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +4 -2
  863. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.java +13 -3
  864. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +35 -20
  865. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/RequestCloseEvent.java +12 -4
  866. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ShowEvent.java +12 -4
  867. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +3 -2
  868. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +2 -0
  869. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerView.java +15 -0
  870. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +185 -28
  871. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +9 -4
  872. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +110 -16
  873. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +20 -3
  874. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +10 -5
  875. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +41 -14
  876. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +3 -2
  877. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +0 -5
  878. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +22 -27
  879. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlidingCompleteEvent.java +13 -16
  880. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +3 -2
  881. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.java +12 -4
  882. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.java +14 -11
  883. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +3 -2
  884. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.java +13 -0
  885. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.java +9 -13
  886. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +6 -10
  887. package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +2 -0
  888. package/ReactAndroid/src/main/java/com/facebook/react/views/text/CustomStyleSpan.java +6 -8
  889. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +6 -9
  890. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactClickableSpan.java +2 -1
  891. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactFontManager.java +59 -44
  892. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +16 -4
  893. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +11 -0
  894. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +48 -1
  895. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.java +41 -59
  896. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +213 -141
  897. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +33 -51
  898. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +596 -0
  899. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TypefaceStyle.java +72 -0
  900. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +1 -0
  901. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +2 -0
  902. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java +10 -7
  903. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +34 -20
  904. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +5 -6
  905. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java +9 -7
  906. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputBlurEvent.java +9 -7
  907. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.java +9 -7
  908. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEvent.java +10 -7
  909. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputFocusEvent.java +14 -12
  910. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.java +15 -14
  911. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +154 -70
  912. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.java +10 -7
  913. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.java +14 -12
  914. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/BUCK +1 -0
  915. package/ReactAndroid/src/main/java/com/facebook/react/views/view/BUCK +1 -0
  916. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.java +1 -5
  917. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +39 -8
  918. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +63 -65
  919. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.java +3 -1
  920. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.java +11 -4
  921. package/ReactAndroid/src/main/java/com/facebook/systrace/BUCK +1 -0
  922. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +13 -7
  923. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +24 -2
  924. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +151 -0
  925. package/ReactAndroid/src/main/jni/first-party/fb/BUCK +4 -0
  926. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/RefPtr.h +1 -1
  927. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/StaticInitialized.h +1 -1
  928. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +2 -7
  929. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJTypesVanilla.h +8 -4
  930. package/ReactAndroid/src/main/jni/react/jni/Android.mk +5 -7
  931. package/ReactAndroid/src/main/jni/react/jni/BUCK +3 -2
  932. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +56 -1
  933. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +4 -0
  934. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.cpp +21 -0
  935. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.h +28 -0
  936. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  937. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +0 -94
  938. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h +0 -30
  939. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.h +1 -0
  940. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp +7 -6
  941. package/ReactAndroid/src/main/jni/third-party/boost/Android.mk +7 -2
  942. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm/jump_arm_aapcs_elf_gas.S +86 -0
  943. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm/make_arm_aapcs_elf_gas.S +79 -0
  944. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm/ontop_arm_aapcs_elf_gas.S +91 -0
  945. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm64/jump_arm64_aapcs_elf_gas.S +114 -0
  946. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm64/make_arm64_aapcs_elf_gas.S +85 -0
  947. package/ReactAndroid/src/main/jni/third-party/boost/asm/arm64/ontop_arm64_aapcs_elf_gas.S +113 -0
  948. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86/jump_i386_sysv_elf_gas.S +78 -0
  949. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86/make_i386_sysv_elf_gas.S +106 -0
  950. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86/ontop_i386_sysv_elf_gas.S +85 -0
  951. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86_64/jump_x86_64_sysv_elf_gas.S +76 -0
  952. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86_64/make_x86_64_sysv_elf_gas.S +81 -0
  953. package/ReactAndroid/src/main/jni/third-party/boost/asm/x86_64/ontop_x86_64_sysv_elf_gas.S +79 -0
  954. package/ReactAndroid/src/main/jni/third-party/fmt/Android.mk +15 -0
  955. package/ReactAndroid/src/main/jni/third-party/folly/Android.mk +36 -16
  956. package/ReactAndroid/src/main/jni/third-party/libevent/Android.mk +36 -0
  957. package/ReactAndroid/src/main/jni/third-party/libevent/evconfig-private.h +49 -0
  958. package/{third-party-podspecs/libevent.podspec → ReactAndroid/src/main/jni/third-party/libevent/event-config.h} +141 -366
  959. package/ReactAndroid/src/main/libraries/fbcore/src/main/java/com/facebook/common/logging/BUCK +1 -0
  960. package/ReactAndroid/src/main/libraries/fbjni/BUCK +2 -2
  961. package/ReactAndroid/src/main/libraries/fresco/fresco-react-native/BUCK +93 -14
  962. package/ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK +5 -5
  963. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +2 -1
  964. package/ReactAndroid/src/main/res/views/uimanager/values/strings_unlocalized.xml +4 -8
  965. package/ReactAndroid/src/main/third-party/android/androidx/BUCK +61 -0
  966. package/ReactAndroid/src/main/third-party/java/asm/BUCK +1 -0
  967. package/ReactAndroid/src/main/third-party/java/fest/BUCK +1 -0
  968. package/ReactAndroid/src/main/third-party/java/infer-annotations/BUCK +2 -2
  969. package/ReactAndroid/src/main/third-party/java/junit/BUCK +1 -0
  970. package/ReactAndroid/src/main/third-party/java/mockito/BUCK +1 -0
  971. package/ReactAndroid/src/main/third-party/java/mockito2/BUCK +1 -0
  972. package/ReactAndroid/src/main/third-party/java/okhttp/BUCK +29 -9
  973. package/ReactAndroid/src/main/third-party/java/okio/BUCK +15 -5
  974. package/ReactAndroid/src/main/third-party/java/robolectric/{4.4/BUCK → BUCK} +1 -0
  975. package/ReactAndroid/src/main/third-party/java/sqlite/BUCK +1 -0
  976. package/ReactAndroid/src/main/third-party/java/testing-support-lib/BUCK +0 -31
  977. package/ReactAndroid/src/main/third-party/kotlin/BUCK +91 -0
  978. package/ReactAndroid/src/test/java/com/facebook/common/logging/BUCK +1 -0
  979. package/ReactAndroid/src/test/java/com/facebook/react/RootViewTest.java +8 -3
  980. package/ReactAndroid/src/test/java/com/facebook/react/animated/NativeAnimatedNodeTraversalTest.java +1 -1
  981. package/ReactAndroid/src/test/java/com/facebook/react/bridge/BUCK +2 -1
  982. package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReactTestHelper.java +1 -0
  983. package/ReactAndroid/src/test/java/com/facebook/react/devsupport/JSDebuggerWebSocketClientTest.java +3 -1
  984. package/ReactAndroid/src/test/java/com/facebook/react/modules/BUCK +1 -0
  985. package/ReactAndroid/src/test/java/com/facebook/react/modules/deviceinfo/DeviceInfoModuleTest.java +168 -0
  986. package/ReactAndroid/src/test/java/com/facebook/react/modules/dialog/DialogModuleTest.java +1 -1
  987. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/NetworkingModuleTest.java +10 -10
  988. package/ReactAndroid/src/test/java/com/facebook/react/modules/timing/TimingModuleTest.java +1 -1
  989. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/BaseViewManagerTest.java +32 -0
  990. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/SimpleViewPropertyTest.java +8 -2
  991. package/ReactAndroid/src/test/java/com/facebook/react/views/image/ReactImagePropertyTest.java +8 -0
  992. package/ReactAndroid/src/test/java/com/facebook/react/views/textinput/ReactTextInputPropertyTest.java +4 -0
  993. package/ReactAndroid/src/test/java/org/mockito/configuration/BUCK +1 -0
  994. package/ReactCommon/React-Fabric.podspec +50 -15
  995. package/ReactCommon/ReactCommon.podspec +9 -4
  996. package/ReactCommon/better/Android.mk +1 -1
  997. package/ReactCommon/better/BUCK +2 -2
  998. package/ReactCommon/callinvoker/Android.mk +1 -1
  999. package/ReactCommon/callinvoker/BUCK +1 -1
  1000. package/ReactCommon/callinvoker/React-callinvoker.podspec +3 -3
  1001. package/ReactCommon/cxxreact/Android.mk +2 -1
  1002. package/ReactCommon/cxxreact/BUCK +2 -4
  1003. package/ReactCommon/cxxreact/CxxNativeModule.cpp +28 -0
  1004. package/ReactCommon/cxxreact/CxxNativeModule.h +9 -0
  1005. package/ReactCommon/cxxreact/Instance.cpp +33 -1
  1006. package/ReactCommon/cxxreact/Instance.h +1 -0
  1007. package/ReactCommon/cxxreact/JSBundleType.cpp +5 -0
  1008. package/ReactCommon/cxxreact/JSBundleType.h +1 -0
  1009. package/ReactCommon/cxxreact/JsArgumentHelpers-inl.h +3 -3
  1010. package/ReactCommon/cxxreact/JsArgumentHelpers.h +2 -2
  1011. package/ReactCommon/cxxreact/MethodCall.cpp +2 -2
  1012. package/ReactCommon/cxxreact/ModuleRegistry.cpp +5 -0
  1013. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +0 -21
  1014. package/ReactCommon/cxxreact/NativeToJsBridge.h +0 -6
  1015. package/ReactCommon/cxxreact/React-cxxreact.podspec +6 -5
  1016. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  1017. package/ReactCommon/cxxreact/SystraceSection.h +2 -2
  1018. package/ReactCommon/hermes/React-hermes.podspec +53 -0
  1019. package/ReactCommon/hermes/executor/Android.mk +4 -4
  1020. package/ReactCommon/hermes/inspector/Android.mk +1 -2
  1021. package/ReactCommon/hermes/inspector/BUCK +8 -5
  1022. package/ReactCommon/hermes/inspector/Inspector.cpp +2 -3
  1023. package/ReactCommon/hermes/inspector/Inspector.h +6 -5
  1024. package/ReactCommon/hermes/inspector/InspectorState.cpp +8 -6
  1025. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +115 -0
  1026. package/ReactCommon/hermes/inspector/chrome/MessageTypes.cpp +215 -1
  1027. package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +115 -1
  1028. package/ReactCommon/hermes/inspector/chrome/cli/main.cpp +6 -5
  1029. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +144 -0
  1030. package/ReactCommon/hermes/inspector/tools/message_types.txt +4 -0
  1031. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/CommandTest.js +1 -3
  1032. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/EventTest.js +1 -3
  1033. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/GraphTest.js +1 -3
  1034. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/HeaderWriterTest.js +1 -3
  1035. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/ImplementationWriterTest.js +1 -3
  1036. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/PropertyTest.js +1 -3
  1037. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/TypeTest.js +1 -3
  1038. package/ReactCommon/hermes/inspector/tools/msggen/package.json +1 -1
  1039. package/ReactCommon/hermes/inspector/tools/msggen/src/Command.js +0 -2
  1040. package/ReactCommon/hermes/inspector/tools/msggen/src/Converters.js +0 -2
  1041. package/ReactCommon/hermes/inspector/tools/msggen/src/Event.js +0 -2
  1042. package/ReactCommon/hermes/inspector/tools/msggen/src/Graph.js +0 -2
  1043. package/ReactCommon/hermes/inspector/tools/msggen/src/HeaderWriter.js +0 -2
  1044. package/ReactCommon/hermes/inspector/tools/msggen/src/ImplementationWriter.js +0 -2
  1045. package/ReactCommon/hermes/inspector/tools/msggen/src/Property.js +1 -2
  1046. package/ReactCommon/hermes/inspector/tools/msggen/src/TestHelpers.js +1 -3
  1047. package/ReactCommon/hermes/inspector/tools/msggen/src/Type.js +0 -2
  1048. package/ReactCommon/hermes/inspector/tools/msggen/src/index.js +1 -3
  1049. package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +2186 -1393
  1050. package/ReactCommon/jsi/Android.mk +4 -4
  1051. package/ReactCommon/jsi/BUCK +1 -5
  1052. package/ReactCommon/jsi/JSCRuntime.cpp +7 -0
  1053. package/ReactCommon/jsi/React-jsi.podspec +5 -5
  1054. package/ReactCommon/jsi/jsi/CMakeLists.txt +1 -1
  1055. package/ReactCommon/jsi/jsi/decorator.h +15 -0
  1056. package/ReactCommon/jsi/jsi/instrumentation.h +13 -0
  1057. package/ReactCommon/jsi/jsi/jsi.cpp +3 -0
  1058. package/ReactCommon/jsi/jsi/jsi.h +32 -3
  1059. package/ReactCommon/jsi/jsi/jsilib-posix.cpp +1 -11
  1060. package/ReactCommon/jsi/jsi/test/testlib.cpp +1 -0
  1061. package/ReactCommon/jsiexecutor/Android.mk +2 -2
  1062. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +4 -4
  1063. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +36 -3
  1064. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +2 -0
  1065. package/ReactCommon/jsinspector/BUCK +2 -0
  1066. package/ReactCommon/jsinspector/React-jsinspector.podspec +2 -2
  1067. package/ReactCommon/libraries/fbcore/src/test/java/com/facebook/powermock/BUCK +2 -0
  1068. package/ReactCommon/logger/Android.mk +23 -0
  1069. package/ReactCommon/logger/BUCK +43 -0
  1070. package/ReactCommon/logger/React-logger.podspec +40 -0
  1071. package/ReactCommon/logger/react_native_log.cpp +52 -0
  1072. package/ReactCommon/logger/react_native_log.h +33 -0
  1073. package/ReactCommon/react/config/Android.mk +1 -1
  1074. package/ReactCommon/react/config/BUCK +1 -1
  1075. package/ReactCommon/react/debug/Android.mk +31 -0
  1076. package/ReactCommon/react/debug/BUCK +69 -0
  1077. package/ReactCommon/react/debug/flags.h +19 -0
  1078. package/ReactCommon/react/debug/react_native_assert.cpp +45 -0
  1079. package/ReactCommon/react/debug/react_native_assert.h +64 -0
  1080. package/ReactCommon/react/nativemodule/core/Android.mk +3 -3
  1081. package/ReactCommon/react/nativemodule/core/BUCK +4 -3
  1082. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.cpp +1 -0
  1083. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.h +3 -2
  1084. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +1 -1
  1085. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +2 -2
  1086. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +49 -8
  1087. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +11 -3
  1088. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +55 -1
  1089. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +119 -109
  1090. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +12 -8
  1091. package/ReactCommon/react/nativemodule/core/platform/ios/RCTBlockGuard.h +24 -0
  1092. package/ReactCommon/react/nativemodule/core/platform/ios/RCTBlockGuard.mm +28 -0
  1093. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.h +7 -15
  1094. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.mm +97 -48
  1095. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.h +0 -6
  1096. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +147 -70
  1097. package/ReactCommon/react/nativemodule/samples/BUCK +6 -6
  1098. package/ReactCommon/react/nativemodule/samples/platform/android/Android.mk +2 -2
  1099. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +3 -0
  1100. package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.java +10 -0
  1101. package/ReactCommon/react/nativemodule/samples/platform/ios/RCTNativeSampleTurboModuleSpec.h +1 -0
  1102. package/ReactCommon/react/nativemodule/samples/platform/ios/RCTNativeSampleTurboModuleSpec.mm +11 -0
  1103. package/ReactCommon/react/nativemodule/samples/platform/ios/RCTSampleTurboCxxModule.mm +12 -0
  1104. package/ReactCommon/react/nativemodule/samples/platform/ios/RCTSampleTurboModule.mm +5 -3
  1105. package/ReactCommon/react/nativemodule/samples/platform/ios/SampleTurboCxxModuleLegacyImpl.cpp +11 -0
  1106. package/ReactCommon/react/nativemodule/samples/platform/ios/SampleTurboCxxModuleLegacyImpl.h +1 -0
  1107. package/ReactCommon/react/renderer/animations/Android.mk +3 -2
  1108. package/ReactCommon/react/renderer/animations/BUCK +5 -3
  1109. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +19 -130
  1110. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.h +1 -4
  1111. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +675 -391
  1112. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +75 -58
  1113. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +544 -0
  1114. package/ReactCommon/react/renderer/attributedstring/Android.mk +4 -2
  1115. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.cpp +28 -6
  1116. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.h +2 -2
  1117. package/ReactCommon/react/renderer/attributedstring/BUCK +9 -4
  1118. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +7 -2
  1119. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +2 -0
  1120. package/ReactCommon/react/renderer/attributedstring/conversions.h +666 -308
  1121. package/ReactCommon/react/renderer/attributedstring/primitives.h +16 -0
  1122. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringBoxTest.cpp +105 -0
  1123. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringTest.cpp +17 -20
  1124. package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +7 -12
  1125. package/ReactCommon/react/renderer/attributedstring/tests/TextAttributesTest.cpp +13 -15
  1126. package/ReactCommon/react/renderer/componentregistry/Android.mk +3 -2
  1127. package/ReactCommon/react/renderer/componentregistry/BUCK +5 -4
  1128. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProvider.h +5 -4
  1129. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +2 -2
  1130. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -0
  1131. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +20 -70
  1132. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +4 -1
  1133. package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +73 -0
  1134. package/ReactCommon/react/renderer/{components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.cpp → componentregistry/componentNameByReactViewName.h} +7 -2
  1135. package/ReactCommon/react/renderer/componentregistry/native/Android.mk +29 -0
  1136. package/ReactCommon/react/renderer/componentregistry/native/BUCK +58 -0
  1137. package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.cpp +68 -0
  1138. package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.h +61 -0
  1139. package/ReactCommon/react/renderer/components/image/Android.mk +5 -3
  1140. package/ReactCommon/react/renderer/components/image/BUCK +7 -3
  1141. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.h +3 -2
  1142. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +28 -9
  1143. package/ReactCommon/react/renderer/components/image/ImageProps.h +5 -1
  1144. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +5 -5
  1145. package/ReactCommon/react/renderer/components/image/ImageState.h +9 -1
  1146. package/ReactCommon/react/renderer/components/image/conversions.h +29 -18
  1147. package/ReactCommon/react/renderer/components/inputaccessory/BUCK +4 -3
  1148. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryComponentDescriptor.h +5 -3
  1149. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +3 -3
  1150. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.h +1 -1
  1151. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +17 -4
  1152. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +6 -1
  1153. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +2 -0
  1154. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +1 -1
  1155. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +74 -15
  1156. package/ReactCommon/react/renderer/components/modal/Android.mk +4 -3
  1157. package/ReactCommon/react/renderer/components/modal/BUCK +6 -2
  1158. package/ReactCommon/react/renderer/components/modal/ModalHostViewComponentDescriptor.h +5 -3
  1159. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +9 -2
  1160. package/ReactCommon/react/renderer/components/progressbar/Android.mk +3 -3
  1161. package/ReactCommon/react/renderer/components/progressbar/BUCK +4 -3
  1162. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarComponentDescriptor.h +4 -2
  1163. package/ReactCommon/react/renderer/components/root/Android.mk +4 -3
  1164. package/ReactCommon/react/renderer/components/root/BUCK +4 -3
  1165. package/ReactCommon/react/renderer/components/root/RootProps.cpp +12 -2
  1166. package/ReactCommon/react/renderer/components/root/RootProps.h +6 -1
  1167. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +7 -1
  1168. package/ReactCommon/react/renderer/components/root/RootShadowNode.h +2 -0
  1169. package/ReactCommon/react/renderer/components/root/tests/RootShadowNodeTest.cpp +35 -3
  1170. package/ReactCommon/react/renderer/components/safeareaview/BUCK +4 -3
  1171. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewComponentDescriptor.h +5 -3
  1172. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewShadowNode.h +7 -0
  1173. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewState.h +1 -3
  1174. package/ReactCommon/react/renderer/components/scrollview/Android.mk +5 -3
  1175. package/ReactCommon/react/renderer/components/scrollview/BUCK +6 -3
  1176. package/ReactCommon/react/renderer/components/scrollview/RCTComponentViewHelpers.h +38 -0
  1177. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +59 -6
  1178. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +10 -5
  1179. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.cpp +23 -2
  1180. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.h +1 -0
  1181. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.cpp +1 -1
  1182. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +15 -4
  1183. package/ReactCommon/react/renderer/components/scrollview/conversions.h +5 -0
  1184. package/ReactCommon/react/renderer/components/slider/Android.mk +4 -3
  1185. package/ReactCommon/react/renderer/components/slider/BUCK +5 -3
  1186. package/ReactCommon/react/renderer/components/slider/SliderComponentDescriptor.h +4 -2
  1187. package/ReactCommon/react/renderer/components/slider/SliderShadowNode.h +9 -8
  1188. package/ReactCommon/react/renderer/components/slider/SliderState.h +8 -0
  1189. package/ReactCommon/react/renderer/components/slider/platform/ios/SliderMeasurementsManager.cpp +3 -1
  1190. package/ReactCommon/react/renderer/components/switch/Android.mk +3 -3
  1191. package/ReactCommon/react/renderer/components/switch/BUCK +3 -3
  1192. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchComponentDescriptor.h +4 -2
  1193. package/ReactCommon/react/renderer/components/text/Android.mk +5 -3
  1194. package/ReactCommon/react/renderer/components/text/BUCK +10 -4
  1195. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +32 -0
  1196. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +5 -1
  1197. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +2 -3
  1198. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +6 -9
  1199. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +15 -6
  1200. package/ReactCommon/react/renderer/components/text/ParagraphProps.h +5 -1
  1201. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +13 -19
  1202. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +7 -6
  1203. package/ReactCommon/react/renderer/components/text/ParagraphState.cpp +4 -0
  1204. package/ReactCommon/react/renderer/components/text/ParagraphState.h +8 -3
  1205. package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +3 -2
  1206. package/ReactCommon/react/renderer/components/text/RawTextProps.h +5 -1
  1207. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +36 -2
  1208. package/ReactCommon/react/renderer/components/text/TextProps.cpp +6 -3
  1209. package/ReactCommon/react/renderer/components/text/TextProps.h +5 -1
  1210. package/ReactCommon/react/renderer/components/text/TextShadowNode.h +23 -0
  1211. package/ReactCommon/react/renderer/components/text/conversions.h +22 -0
  1212. package/ReactCommon/react/renderer/components/text/tests/ParagraphLocalDataTest.cpp +8 -5
  1213. package/ReactCommon/react/renderer/components/textinput/Android.mk +5 -3
  1214. package/ReactCommon/react/renderer/components/textinput/BUCK +8 -4
  1215. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +8 -5
  1216. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +58 -91
  1217. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +10 -6
  1218. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +13 -18
  1219. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +5 -5
  1220. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +0 -3
  1221. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.h +5 -8
  1222. package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +5 -4
  1223. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputComponentDescriptor.h +4 -4
  1224. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +46 -22
  1225. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +6 -5
  1226. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputShadowNode.cpp +3 -2
  1227. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputShadowNode.h +7 -6
  1228. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputState.h +2 -0
  1229. package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +19 -7
  1230. package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +6 -0
  1231. package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +63 -2
  1232. package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +4 -3
  1233. package/ReactCommon/react/renderer/components/unimplementedview/BUCK +4 -3
  1234. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +8 -3
  1235. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +5 -2
  1236. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.h +1 -0
  1237. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +28 -0
  1238. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +24 -1
  1239. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +4 -1
  1240. package/ReactCommon/react/renderer/components/view/Android.mk +5 -3
  1241. package/ReactCommon/react/renderer/components/view/BUCK +5 -3
  1242. package/ReactCommon/react/renderer/components/view/Touch.h +32 -1
  1243. package/ReactCommon/react/renderer/components/view/TouchEvent.h +0 -2
  1244. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +31 -9
  1245. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +2 -1
  1246. package/ReactCommon/react/renderer/components/view/ViewComponentDescriptor.h +10 -1
  1247. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +62 -20
  1248. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.h +28 -4
  1249. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +90 -14
  1250. package/ReactCommon/react/renderer/components/view/ViewProps.h +17 -1
  1251. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +5 -7
  1252. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +4 -17
  1253. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +177 -87
  1254. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +4 -9
  1255. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  1256. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +2 -0
  1257. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +95 -24
  1258. package/ReactCommon/react/renderer/components/view/conversions.h +96 -50
  1259. package/ReactCommon/react/renderer/components/view/primitives.h +39 -4
  1260. package/ReactCommon/react/renderer/components/view/propsConversions.h +229 -28
  1261. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +15 -5
  1262. package/ReactCommon/react/renderer/core/Android.mk +4 -2
  1263. package/ReactCommon/react/renderer/core/BUCK +7 -4
  1264. package/ReactCommon/react/renderer/core/BatchedEventQueue.cpp +5 -21
  1265. package/ReactCommon/react/renderer/core/BatchedEventQueue.h +4 -8
  1266. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +6 -3
  1267. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +23 -22
  1268. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +10 -7
  1269. package/ReactCommon/react/renderer/core/ConcreteState.h +16 -49
  1270. package/ReactCommon/react/renderer/core/Constants.cpp +24 -0
  1271. package/ReactCommon/react/renderer/{components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerComponentDescriptor.h → core/Constants.h} +8 -6
  1272. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +35 -0
  1273. package/ReactCommon/react/renderer/{components/picker/iospicker/PickerState.h → core/DynamicPropsUtilities.h} +5 -4
  1274. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +9 -15
  1275. package/ReactCommon/react/renderer/core/EventDispatcher.h +5 -10
  1276. package/ReactCommon/react/renderer/core/EventEmitter.cpp +22 -12
  1277. package/ReactCommon/react/renderer/core/EventEmitter.h +7 -2
  1278. package/ReactCommon/react/renderer/core/EventPipe.h +2 -0
  1279. package/ReactCommon/react/renderer/core/EventPriority.h +1 -1
  1280. package/ReactCommon/react/renderer/core/EventQueue.cpp +39 -40
  1281. package/ReactCommon/react/renderer/core/EventQueue.h +15 -9
  1282. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +82 -0
  1283. package/ReactCommon/react/renderer/core/EventQueueProcessor.h +36 -0
  1284. package/ReactCommon/react/renderer/core/EventTarget.cpp +4 -2
  1285. package/ReactCommon/react/renderer/core/LayoutConstraints.h +9 -2
  1286. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +65 -0
  1287. package/ReactCommon/react/renderer/core/LayoutMetrics.h +38 -4
  1288. package/ReactCommon/react/renderer/core/LayoutPrimitives.h +14 -6
  1289. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +1 -8
  1290. package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +2 -22
  1291. package/ReactCommon/react/renderer/core/Props.cpp +10 -2
  1292. package/ReactCommon/react/renderer/core/Props.h +5 -1
  1293. package/ReactCommon/react/renderer/core/PropsParserContext.h +28 -0
  1294. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  1295. package/ReactCommon/react/renderer/core/RawEvent.h +40 -3
  1296. package/ReactCommon/react/renderer/core/RawProps.cpp +5 -3
  1297. package/ReactCommon/react/renderer/core/RawProps.h +3 -1
  1298. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +10 -7
  1299. package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +8 -6
  1300. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +10 -7
  1301. package/ReactCommon/react/renderer/core/RawPropsParser.h +13 -4
  1302. package/ReactCommon/react/renderer/core/RawValue.h +9 -7
  1303. package/ReactCommon/react/renderer/core/ReactEventPriority.h +43 -0
  1304. package/ReactCommon/react/renderer/core/ReactPrimitives.h +34 -0
  1305. package/ReactCommon/react/renderer/core/Sealable.cpp +4 -3
  1306. package/ReactCommon/react/renderer/core/Sealable.h +5 -1
  1307. package/ReactCommon/react/renderer/core/ShadowNode.cpp +45 -13
  1308. package/ReactCommon/react/renderer/core/ShadowNode.h +14 -4
  1309. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +2 -1
  1310. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +1 -1
  1311. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +31 -6
  1312. package/ReactCommon/react/renderer/core/State.h +4 -3
  1313. package/ReactCommon/react/renderer/core/StateData.h +3 -0
  1314. package/ReactCommon/react/renderer/core/StateUpdate.h +0 -2
  1315. package/ReactCommon/react/renderer/core/UnbatchedEventQueue.cpp +0 -2
  1316. package/ReactCommon/react/renderer/core/conversions.h +11 -0
  1317. package/ReactCommon/react/renderer/core/propsConversions.h +19 -9
  1318. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +16 -4
  1319. package/ReactCommon/react/renderer/core/tests/ConcreteShadowNodeTest.cpp +1 -1
  1320. package/ReactCommon/react/renderer/core/tests/DynamicPropsUtilitiesTest.cpp +66 -0
  1321. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +134 -0
  1322. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +21 -12
  1323. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +99 -30
  1324. package/ReactCommon/react/renderer/core/tests/TestComponent.h +11 -7
  1325. package/ReactCommon/react/renderer/core/tests/traitCastTest.cpp +31 -0
  1326. package/ReactCommon/react/renderer/debug/Android.mk +1 -1
  1327. package/ReactCommon/react/renderer/debug/BUCK +4 -6
  1328. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +11 -25
  1329. package/ReactCommon/react/renderer/debug/SystraceSection.h +2 -2
  1330. package/ReactCommon/react/renderer/debug/flags.h +50 -0
  1331. package/ReactCommon/react/renderer/element/BUCK +3 -3
  1332. package/ReactCommon/react/renderer/element/ComponentBuilder.cpp +4 -3
  1333. package/ReactCommon/react/renderer/graphics/Android.mk +6 -2
  1334. package/ReactCommon/react/renderer/graphics/BUCK +16 -4
  1335. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +5 -4
  1336. package/ReactCommon/react/renderer/graphics/Rect.h +4 -3
  1337. package/ReactCommon/react/renderer/graphics/RectangleCorners.h +2 -2
  1338. package/ReactCommon/react/renderer/graphics/RectangleEdges.h +16 -13
  1339. package/ReactCommon/react/renderer/graphics/Transform.cpp +4 -3
  1340. package/ReactCommon/react/renderer/graphics/conversions.h +102 -44
  1341. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +67 -0
  1342. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.cpp +19 -10
  1343. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +2 -0
  1344. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/PlatformColorParser.h +29 -0
  1345. package/ReactCommon/react/renderer/graphics/platform/ios/Color.cpp +19 -10
  1346. package/ReactCommon/react/renderer/graphics/platform/ios/Color.h +44 -1
  1347. package/ReactCommon/react/renderer/graphics/platform/ios/PlatformColorParser.h +34 -0
  1348. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.h +12 -0
  1349. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.mm +206 -0
  1350. package/ReactCommon/react/renderer/graphics/rounding.h +9 -6
  1351. package/ReactCommon/react/renderer/graphics/tests/TransformTest.cpp +1 -0
  1352. package/ReactCommon/react/renderer/imagemanager/Android.mk +3 -2
  1353. package/ReactCommon/react/renderer/imagemanager/BUCK +5 -4
  1354. package/ReactCommon/react/renderer/imagemanager/ImageRequest.h +1 -3
  1355. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +5 -4
  1356. package/ReactCommon/react/renderer/imagemanager/ImageTelemetry.cpp +0 -6
  1357. package/ReactCommon/react/renderer/imagemanager/ImageTelemetry.h +5 -10
  1358. package/ReactCommon/react/renderer/imagemanager/platform/ios/ImageRequest.cpp +6 -1
  1359. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTImageManager.mm +0 -1
  1360. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTImagePrimitivesConversions.h +8 -6
  1361. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTSyncImageManager.mm +1 -1
  1362. package/ReactCommon/react/renderer/leakchecker/Android.mk +29 -0
  1363. package/ReactCommon/react/renderer/{components/picker/iospicker → leakchecker}/BUCK +8 -12
  1364. package/ReactCommon/react/renderer/leakchecker/LeakChecker.cpp +60 -0
  1365. package/ReactCommon/react/renderer/leakchecker/LeakChecker.h +39 -0
  1366. package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.cpp +37 -0
  1367. package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.h +39 -0
  1368. package/ReactCommon/react/renderer/mapbuffer/Android.mk +9 -6
  1369. package/ReactCommon/react/renderer/mapbuffer/BUCK +16 -6
  1370. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +133 -2
  1371. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +41 -3
  1372. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +226 -0
  1373. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +94 -0
  1374. package/ReactCommon/react/renderer/mapbuffer/primitives.h +91 -0
  1375. package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +144 -2
  1376. package/ReactCommon/react/renderer/mounting/Android.mk +4 -2
  1377. package/ReactCommon/react/renderer/mounting/BUCK +6 -3
  1378. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +809 -998
  1379. package/ReactCommon/react/renderer/mounting/Differentiator.h +38 -12
  1380. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +17 -15
  1381. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +7 -11
  1382. package/ReactCommon/react/renderer/mounting/MountingTransaction.h +2 -2
  1383. package/ReactCommon/react/renderer/mounting/MountingTransactionMetadata.h +1 -1
  1384. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +70 -27
  1385. package/ReactCommon/react/renderer/mounting/ShadowTree.h +38 -15
  1386. package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +11 -0
  1387. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.cpp +3 -1
  1388. package/ReactCommon/react/renderer/mounting/ShadowTreeRevision.h +1 -1
  1389. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +19 -1
  1390. package/ReactCommon/react/renderer/mounting/ShadowView.h +46 -2
  1391. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +19 -5
  1392. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +10 -4
  1393. package/ReactCommon/react/renderer/mounting/StubView.cpp +38 -4
  1394. package/ReactCommon/react/renderer/mounting/StubView.h +6 -0
  1395. package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +219 -91
  1396. package/ReactCommon/react/renderer/mounting/StubViewTree.h +15 -3
  1397. package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +1 -1
  1398. package/ReactCommon/react/renderer/mounting/TelemetryController.h +1 -1
  1399. package/ReactCommon/react/renderer/mounting/stubs.cpp +49 -11
  1400. package/ReactCommon/react/renderer/mounting/stubs.h +13 -1
  1401. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +99 -96
  1402. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +242 -40
  1403. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +787 -0
  1404. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +34 -23
  1405. package/ReactCommon/react/renderer/runtimescheduler/Android.mk +27 -0
  1406. package/ReactCommon/react/renderer/runtimescheduler/BUCK +77 -0
  1407. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +116 -0
  1408. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +103 -0
  1409. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +170 -0
  1410. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +42 -0
  1411. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerClock.h +22 -0
  1412. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriority.h +64 -0
  1413. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +35 -0
  1414. package/ReactCommon/react/renderer/runtimescheduler/Task.h +46 -0
  1415. package/ReactCommon/react/renderer/runtimescheduler/primitives.h +39 -0
  1416. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +472 -0
  1417. package/ReactCommon/react/renderer/runtimescheduler/tests/SchedulerPriorityTest.cpp +46 -0
  1418. package/ReactCommon/react/renderer/runtimescheduler/tests/StubClock.h +41 -0
  1419. package/ReactCommon/react/renderer/runtimescheduler/tests/StubQueue.h +38 -0
  1420. package/ReactCommon/react/renderer/scheduler/Android.mk +4 -2
  1421. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +16 -13
  1422. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.h +4 -4
  1423. package/ReactCommon/react/renderer/scheduler/BUCK +5 -3
  1424. package/ReactCommon/react/renderer/{components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.cpp → scheduler/InspectorData.h} +10 -3
  1425. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +108 -148
  1426. package/ReactCommon/react/renderer/scheduler/Scheduler.h +37 -39
  1427. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +16 -10
  1428. package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +10 -0
  1429. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +317 -0
  1430. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +209 -0
  1431. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +104 -0
  1432. package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +67 -0
  1433. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.cpp +14 -5
  1434. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.h +4 -1
  1435. package/ReactCommon/react/renderer/telemetry/Android.mk +31 -0
  1436. package/ReactCommon/react/renderer/telemetry/BUCK +84 -0
  1437. package/ReactCommon/react/renderer/{mounting → telemetry}/SurfaceTelemetry.cpp +5 -0
  1438. package/ReactCommon/react/renderer/{mounting → telemetry}/SurfaceTelemetry.h +3 -1
  1439. package/ReactCommon/react/renderer/telemetry/TransactionTelemetry.cpp +163 -0
  1440. package/ReactCommon/react/renderer/{mounting → telemetry}/TransactionTelemetry.h +11 -0
  1441. package/ReactCommon/react/renderer/telemetry/tests/TransactionTelemetryTest.cpp +176 -0
  1442. package/ReactCommon/react/renderer/templateprocessor/Android.mk +1 -1
  1443. package/ReactCommon/react/renderer/templateprocessor/BUCK +3 -3
  1444. package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.cpp +5 -5
  1445. package/ReactCommon/react/renderer/templateprocessor/tests/UITemplateProcessorTest.cpp +5 -5
  1446. package/ReactCommon/react/renderer/textlayoutmanager/Android.mk +5 -2
  1447. package/ReactCommon/react/renderer/textlayoutmanager/BUCK +5 -3
  1448. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.cpp +12 -9
  1449. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +145 -83
  1450. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +17 -1
  1451. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +16 -2
  1452. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +10 -7
  1453. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +16 -11
  1454. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTTextLayoutManager.mm +14 -11
  1455. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/TextLayoutManager.mm +25 -3
  1456. package/ReactCommon/react/renderer/{components/picker → timeline}/BUCK +20 -34
  1457. package/ReactCommon/react/renderer/timeline/Timeline.cpp +120 -0
  1458. package/ReactCommon/react/renderer/timeline/Timeline.h +63 -0
  1459. package/ReactCommon/react/renderer/timeline/TimelineController.cpp +77 -0
  1460. package/ReactCommon/react/renderer/timeline/TimelineController.h +80 -0
  1461. package/ReactCommon/react/renderer/timeline/TimelineFrame.cpp +25 -0
  1462. package/ReactCommon/react/renderer/timeline/TimelineFrame.h +46 -0
  1463. package/ReactCommon/react/renderer/timeline/TimelineHandler.cpp +97 -0
  1464. package/ReactCommon/react/renderer/timeline/TimelineHandler.h +80 -0
  1465. package/ReactCommon/react/renderer/timeline/TimelineSnapshot.cpp +30 -0
  1466. package/ReactCommon/react/renderer/timeline/TimelineSnapshot.h +36 -0
  1467. package/ReactCommon/react/renderer/uimanager/Android.mk +4 -2
  1468. package/ReactCommon/react/renderer/uimanager/BUCK +5 -3
  1469. package/ReactCommon/react/renderer/uimanager/LayoutAnimationStatusDelegate.h +2 -4
  1470. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +172 -81
  1471. package/ReactCommon/react/renderer/uimanager/UIManager.h +63 -29
  1472. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +2 -4
  1473. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +298 -135
  1474. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +35 -6
  1475. package/ReactCommon/react/renderer/uimanager/UIManagerCommitHook.h +43 -0
  1476. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +23 -13
  1477. package/ReactCommon/react/renderer/uimanager/primitives.h +57 -9
  1478. package/ReactCommon/react/test_utils/BUCK +54 -0
  1479. package/ReactCommon/react/{renderer/mounting/tests → test_utils}/Entropy.h +4 -0
  1480. package/ReactCommon/react/test_utils/MockClock.h +29 -0
  1481. package/ReactCommon/react/{renderer/mounting/tests → test_utils}/shadowTreeGeneration.h +64 -7
  1482. package/ReactCommon/react/utils/Android.mk +8 -3
  1483. package/ReactCommon/react/utils/BUCK +9 -2
  1484. package/ReactCommon/react/utils/CalledOnceMovableOnlyFunction.h +6 -4
  1485. package/ReactCommon/react/utils/ContextContainer.h +14 -7
  1486. package/ReactCommon/react/utils/LayoutManager.h +150 -0
  1487. package/ReactCommon/react/utils/ManagedObjectWrapper.h +3 -1
  1488. package/ReactCommon/react/utils/RunLoopObserver.cpp +5 -4
  1489. package/ReactCommon/reactperflogger/Android.mk +1 -1
  1490. package/ReactCommon/reactperflogger/BUCK +1 -1
  1491. package/ReactCommon/reactperflogger/React-perflogger.podspec +3 -3
  1492. package/ReactCommon/runtimeexecutor/Android.mk +1 -1
  1493. package/ReactCommon/runtimeexecutor/BUCK +2 -2
  1494. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +3 -3
  1495. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +14 -2
  1496. package/ReactCommon/yoga/Yoga.podspec +2 -2
  1497. package/ReactCommon/yoga/yoga/BitUtils.h +3 -2
  1498. package/ReactCommon/yoga/yoga/CompactValue.h +2 -2
  1499. package/ReactCommon/yoga/yoga/Utils.cpp +1 -1
  1500. package/ReactCommon/yoga/yoga/YGNode.cpp +111 -110
  1501. package/ReactCommon/yoga/yoga/YGNode.h +11 -0
  1502. package/ReactCommon/yoga/yoga/YGNodePrint.cpp +7 -4
  1503. package/ReactCommon/yoga/yoga/Yoga-internal.h +4 -5
  1504. package/ReactCommon/yoga/yoga/Yoga.cpp +116 -161
  1505. package/ReactCommon/yoga/yoga/Yoga.h +1 -1
  1506. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.aar +0 -0
  1507. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.aar.md5 +1 -0
  1508. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.aar.sha1 +1 -0
  1509. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.aar.sha256 +1 -0
  1510. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.aar.sha512 +1 -0
  1511. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.module +273 -0
  1512. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.module.md5 +1 -0
  1513. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.module.sha1 +1 -0
  1514. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.module.sha256 +1 -0
  1515. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.module.sha512 +1 -0
  1516. package/android/com/facebook/react/react-native/{0.64.2-5/react-native-0.64.2-5.pom → 0.66.3-2/react-native-0.66.3-2.pom} +28 -11
  1517. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.pom.md5 +1 -0
  1518. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.pom.sha1 +1 -0
  1519. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.pom.sha256 +1 -0
  1520. package/android/com/facebook/react/react-native/0.66.3-2/react-native-0.66.3-2.pom.sha512 +1 -0
  1521. package/android/com/facebook/react/react-native/maven-metadata.xml +4 -3
  1522. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
  1523. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
  1524. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -0
  1525. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -0
  1526. package/flow/HermesInternalType.js +114 -0
  1527. package/flow/global.js +23 -0
  1528. package/flow-typed/npm/promise_v8.x.x.js +3 -3
  1529. package/flow-typed/npm/react-test-renderer_v16.x.x.js +79 -0
  1530. package/index.js +107 -50
  1531. package/interface.js +0 -8
  1532. package/jest/mockNativeComponent.js +36 -0
  1533. package/jest/preprocessor.js +3 -2
  1534. package/jest/renderer.js +3 -9
  1535. package/jest/setup.js +35 -39
  1536. package/package.json +62 -22
  1537. package/react.gradle +32 -17
  1538. package/readme.diff +305 -0
  1539. package/scripts/find-node.sh +8 -6
  1540. package/scripts/generate-specs-cli.js +20 -13
  1541. package/scripts/generate-specs.sh +31 -23
  1542. package/scripts/ios-configure-glog.sh +1 -1
  1543. package/scripts/launchPackager.bat +12 -12
  1544. package/scripts/react-native-xcode.sh +12 -2
  1545. package/scripts/react_native_pods.rb +75 -126
  1546. package/template/_flowconfig +3 -4
  1547. package/template/_gitignore +1 -0
  1548. package/template/android/app/build.gradle +12 -7
  1549. package/template/android/app/src/main/java/com/helloworld/MainApplication.java +5 -0
  1550. package/template/android/app/src/main/res/values/styles.xml +0 -1
  1551. package/template/android/build.gradle +7 -7
  1552. package/template/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  1553. package/template/android/gradle.properties +1 -1
  1554. package/template/ios/HelloWorld/AppDelegate.m +5 -6
  1555. package/template/ios/Podfile +3 -4
  1556. package/template/package.json +4 -4
  1557. package/third-party-podspecs/DoubleConversion.podspec +3 -1
  1558. package/third-party-podspecs/RCT-Folly.podspec +31 -11
  1559. package/third-party-podspecs/boost.podspec +23 -0
  1560. package/third-party-podspecs/fmt.podspec +24 -0
  1561. package/third-party-podspecs/glog.podspec +1 -1
  1562. package/third-party-podspecs/hermes-engine.podspec +45 -0
  1563. package/Libraries/BUCK +0 -36
  1564. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.android.js +0 -158
  1565. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.ios.js +0 -273
  1566. package/Libraries/Components/Picker/AndroidDialogPickerNativeComponent.js +0 -82
  1567. package/Libraries/Components/Picker/AndroidDialogPickerViewConfig.js +0 -30
  1568. package/Libraries/Components/Picker/AndroidDropdownPickerNativeComponent.js +0 -69
  1569. package/Libraries/Components/Picker/Picker.js +0 -165
  1570. package/Libraries/Components/Picker/PickerAndroid.android.js +0 -145
  1571. package/Libraries/Components/Picker/PickerIOS.ios.js +0 -164
  1572. package/Libraries/Components/Picker/RCTPickerNativeComponent.js +0 -72
  1573. package/Libraries/Components/Picker/RCTPickerViewConfig.js +0 -41
  1574. package/Libraries/Components/ScrollResponder.js +0 -796
  1575. package/Libraries/Components/StatusBar/StatusBarIOS.js +0 -21
  1576. package/Libraries/Image/ImageViewViewConfig.js +0 -68
  1577. package/Libraries/StyleSheet/StyleSheetValidation.js +0 -100
  1578. package/Libraries/Utilities/registerGeneratedViewConfig.js +0 -83
  1579. package/Libraries/promiseRejectionIsError.js +0 -24
  1580. package/React/Base/RCTJSInvokerModule.h +0 -18
  1581. package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.h +0 -19
  1582. package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.mm +0 -205
  1583. package/React/Views/RCTPicker.h +0 -23
  1584. package/React/Views/RCTPicker.m +0 -121
  1585. package/React/Views/RCTPickerManager.m +0 -68
  1586. package/React/Views/RCTTVFocusGuideView.h +0 -22
  1587. package/React/Views/RCTTVFocusGuideView.m +0 -60
  1588. package/React/Views/RCTTVFocusGuideViewManager.h +0 -12
  1589. package/React/Views/RCTTVFocusGuideViewManager.m +0 -30
  1590. package/ReactAndroid/release.gradle +0 -142
  1591. package/ReactAndroid/src/androidTest/assets/AndroidTestBundle.js +0 -107046
  1592. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ReactPickerTestCase.java +0 -196
  1593. package/ReactAndroid/src/androidTest/js/PickerAndroidTestModule.js +0 -89
  1594. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragmentActivity.java +0 -15
  1595. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerImpl.java +0 -82
  1596. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/BatchMountItem.java +0 -117
  1597. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/CreateMountItem.java +0 -68
  1598. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/InsertMountItem.java +0 -47
  1599. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/RemoveDeleteMultiMountItem.java +0 -90
  1600. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/UpdateEventEmitterMountItem.java +0 -33
  1601. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/UpdateLayoutMountItem.java +0 -90
  1602. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/UpdatePaddingMountItem.java +0 -53
  1603. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/UpdatePropsMountItem.java +0 -42
  1604. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/UpdateStateMountItem.java +0 -43
  1605. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/ActivityIndicatorViewManagerDelegate.java +0 -42
  1606. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/ActivityIndicatorViewManagerInterface.java +0 -20
  1607. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerDelegate.java +0 -48
  1608. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerInterface.java +0 -23
  1609. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDrawerLayoutManagerDelegate.java +0 -61
  1610. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDrawerLayoutManagerInterface.java +0 -24
  1611. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerDelegate.java +0 -48
  1612. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerInterface.java +0 -22
  1613. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidProgressBarManagerDelegate.java +0 -51
  1614. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidProgressBarManagerInterface.java +0 -23
  1615. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidSwipeRefreshLayoutManagerDelegate.java +0 -58
  1616. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidSwipeRefreshLayoutManagerInterface.java +0 -24
  1617. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidSwitchManagerDelegate.java +0 -67
  1618. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidSwitchManagerInterface.java +0 -26
  1619. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/MaskedViewManagerDelegate.java +0 -26
  1620. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/MaskedViewManagerInterface.java +0 -16
  1621. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/ModalHostViewManagerDelegate.java +0 -54
  1622. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/ModalHostViewManagerInterface.java +0 -25
  1623. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/ProgressViewManagerDelegate.java +0 -49
  1624. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/ProgressViewManagerInterface.java +0 -23
  1625. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/SafeAreaViewManagerDelegate.java +0 -32
  1626. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/SafeAreaViewManagerInterface.java +0 -16
  1627. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/SegmentedControlManagerDelegate.java +0 -52
  1628. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/SegmentedControlManagerInterface.java +0 -24
  1629. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/SliderManagerDelegate.java +0 -73
  1630. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/SliderManagerInterface.java +0 -31
  1631. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/UnimplementedNativeViewManagerDelegate.java +0 -32
  1632. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/UnimplementedNativeViewManagerInterface.java +0 -17
  1633. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/jni/Android.mk +0 -29
  1634. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/jni/react/renderer/components/rncore/ComponentDescriptors.h +0 -31
  1635. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/jni/react/renderer/components/rncore/EventEmitters.cpp +0 -148
  1636. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/jni/react/renderer/components/rncore/EventEmitters.h +0 -229
  1637. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/jni/react/renderer/components/rncore/Props.cpp +0 -191
  1638. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/jni/react/renderer/components/rncore/Props.h +0 -529
  1639. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/jni/react/renderer/components/rncore/ShadowNodes.cpp +0 -28
  1640. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/jni/react/renderer/components/rncore/ShadowNodes.h +0 -117
  1641. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/BUCK +0 -29
  1642. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDialogPickerManager.java +0 -51
  1643. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDropdownPickerManager.java +0 -50
  1644. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPicker.java +0 -196
  1645. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerAdapter.java +0 -95
  1646. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerItem.java +0 -43
  1647. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java +0 -97
  1648. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/events/PickerItemSelectEvent.java +0 -40
  1649. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libc++_shared.so +0 -0
  1650. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libfb.so +0 -0
  1651. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libfbjni.so +0 -0
  1652. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libfolly_futures.so +0 -0
  1653. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libfolly_json.so +0 -0
  1654. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libglog.so +0 -0
  1655. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libglog_init.so +0 -0
  1656. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libhermes-executor-common-debug.so +0 -0
  1657. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libhermes-executor-common-release.so +0 -0
  1658. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libhermes-executor-debug.so +0 -0
  1659. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libhermes-executor-release.so +0 -0
  1660. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libhermes-inspector.so +0 -0
  1661. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libjscexecutor.so +0 -0
  1662. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libjsijniprofiler.so +0 -0
  1663. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libjsinspector.so +0 -0
  1664. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libreact_codegen_reactandroidspec.so +0 -0
  1665. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libreact_nativemodule_core.so +0 -0
  1666. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libreactnativeblob.so +0 -0
  1667. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libreactnativejni.so +0 -0
  1668. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libreactnativeutilsjni.so +0 -0
  1669. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libreactperfloggerjni.so +0 -0
  1670. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libturbomodulejsijni.so +0 -0
  1671. package/ReactAndroid/src/main/jni/prebuilt/lib/arm64-v8a/libyoga.so +0 -0
  1672. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libc++_shared.so +0 -0
  1673. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libfb.so +0 -0
  1674. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libfbjni.so +0 -0
  1675. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libfolly_futures.so +0 -0
  1676. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libfolly_json.so +0 -0
  1677. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libglog.so +0 -0
  1678. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libglog_init.so +0 -0
  1679. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libhermes-executor-common-debug.so +0 -0
  1680. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libhermes-executor-common-release.so +0 -0
  1681. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libhermes-executor-debug.so +0 -0
  1682. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libhermes-executor-release.so +0 -0
  1683. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libhermes-inspector.so +0 -0
  1684. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libjscexecutor.so +0 -0
  1685. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libjsijniprofiler.so +0 -0
  1686. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libjsinspector.so +0 -0
  1687. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libreact_codegen_reactandroidspec.so +0 -0
  1688. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libreact_nativemodule_core.so +0 -0
  1689. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libreactnativeblob.so +0 -0
  1690. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libreactnativejni.so +0 -0
  1691. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libreactnativeutilsjni.so +0 -0
  1692. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libreactperfloggerjni.so +0 -0
  1693. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libturbomodulejsijni.so +0 -0
  1694. package/ReactAndroid/src/main/jni/prebuilt/lib/armeabi-v7a/libyoga.so +0 -0
  1695. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libc++_shared.so +0 -0
  1696. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libfb.so +0 -0
  1697. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libfbjni.so +0 -0
  1698. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libfolly_futures.so +0 -0
  1699. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libfolly_json.so +0 -0
  1700. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libglog.so +0 -0
  1701. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libglog_init.so +0 -0
  1702. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libhermes-executor-common-debug.so +0 -0
  1703. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libhermes-executor-common-release.so +0 -0
  1704. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libhermes-executor-debug.so +0 -0
  1705. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libhermes-executor-release.so +0 -0
  1706. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libhermes-inspector.so +0 -0
  1707. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libjscexecutor.so +0 -0
  1708. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libjsijniprofiler.so +0 -0
  1709. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libjsinspector.so +0 -0
  1710. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libreact_codegen_reactandroidspec.so +0 -0
  1711. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libreact_nativemodule_core.so +0 -0
  1712. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libreactnativeblob.so +0 -0
  1713. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libreactnativejni.so +0 -0
  1714. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libreactnativeutilsjni.so +0 -0
  1715. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libreactperfloggerjni.so +0 -0
  1716. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libturbomodulejsijni.so +0 -0
  1717. package/ReactAndroid/src/main/jni/prebuilt/lib/x86/libyoga.so +0 -0
  1718. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libc++_shared.so +0 -0
  1719. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libfb.so +0 -0
  1720. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libfbjni.so +0 -0
  1721. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libfolly_futures.so +0 -0
  1722. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libfolly_json.so +0 -0
  1723. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libglog.so +0 -0
  1724. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libglog_init.so +0 -0
  1725. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libhermes-executor-common-debug.so +0 -0
  1726. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libhermes-executor-common-release.so +0 -0
  1727. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libhermes-executor-debug.so +0 -0
  1728. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libhermes-executor-release.so +0 -0
  1729. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libhermes-inspector.so +0 -0
  1730. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libjscexecutor.so +0 -0
  1731. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libjsijniprofiler.so +0 -0
  1732. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libjsinspector.so +0 -0
  1733. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libreact_codegen_reactandroidspec.so +0 -0
  1734. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libreact_nativemodule_core.so +0 -0
  1735. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libreactnativeblob.so +0 -0
  1736. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libreactnativejni.so +0 -0
  1737. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libreactnativeutilsjni.so +0 -0
  1738. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libreactperfloggerjni.so +0 -0
  1739. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libturbomodulejsijni.so +0 -0
  1740. package/ReactAndroid/src/main/jni/prebuilt/lib/x86_64/libyoga.so +0 -0
  1741. package/ReactAndroid/src/main/third-party/android/support/v4/BUCK +0 -685
  1742. package/ReactAndroid/src/main/third-party/android/support/v7/appcompat/BUCK +0 -62
  1743. package/ReactAndroid/src/main/third-party/android/support/v7/appcompat/aar-unpacker.py +0 -20
  1744. package/ReactCommon/cxxreact/re_worker_requirements +0 -6
  1745. package/ReactCommon/react/renderer/components/picker/Android.mk +0 -37
  1746. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.cpp +0 -23
  1747. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.h +0 -27
  1748. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.cpp +0 -28
  1749. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.h +0 -77
  1750. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.h +0 -29
  1751. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerComponentDescriptor.h +0 -21
  1752. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.cpp +0 -23
  1753. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.h +0 -27
  1754. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.cpp +0 -28
  1755. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.h +0 -77
  1756. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.h +0 -29
  1757. package/ReactCommon/react/renderer/components/picker/iospicker/PickerComponentDescriptor.h +0 -26
  1758. package/ReactCommon/react/renderer/components/picker/iospicker/PickerEventEmitter.cpp +0 -23
  1759. package/ReactCommon/react/renderer/components/picker/iospicker/PickerEventEmitter.h +0 -28
  1760. package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.cpp +0 -46
  1761. package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.h +0 -36
  1762. package/ReactCommon/react/renderer/components/picker/iospicker/PickerShadowNode.cpp +0 -16
  1763. package/ReactCommon/react/renderer/components/picker/iospicker/PickerShadowNode.h +0 -33
  1764. package/ReactCommon/react/renderer/components/picker/iospicker/conversions.h +0 -47
  1765. package/ReactCommon/react/renderer/components/picker/iospicker/primitives.h +0 -29
  1766. package/ReactCommon/react/renderer/core/ConcreteStateTeller.h +0 -152
  1767. package/ReactCommon/react/renderer/mounting/TransactionTelemetry.cpp +0 -142
  1768. package/ReactCommon/react/renderer/mounting/tests/TransactionTelemetryTest.cpp +0 -125
  1769. package/android/com/facebook/react/react-native/0.64.2-5/react-native-0.64.2-5-sources.jar +0 -0
  1770. package/android/com/facebook/react/react-native/0.64.2-5/react-native-0.64.2-5-sources.jar.md5 +0 -1
  1771. package/android/com/facebook/react/react-native/0.64.2-5/react-native-0.64.2-5-sources.jar.sha1 +0 -1
  1772. package/android/com/facebook/react/react-native/0.64.2-5/react-native-0.64.2-5.aar +0 -0
  1773. package/android/com/facebook/react/react-native/0.64.2-5/react-native-0.64.2-5.aar.md5 +0 -1
  1774. package/android/com/facebook/react/react-native/0.64.2-5/react-native-0.64.2-5.aar.sha1 +0 -1
  1775. package/android/com/facebook/react/react-native/0.64.2-5/react-native-0.64.2-5.pom.md5 +0 -1
  1776. package/android/com/facebook/react/react-native/0.64.2-5/react-native-0.64.2-5.pom.sha1 +0 -1
  1777. package/template/ios/HelloWorld.xcodeproj/project.pbxproj.rej +0 -1034
  1778. package/template/ios/HelloWorld.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  1779. package/template/ios/HelloWorld.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
@@ -10,736 +10,352 @@ package com.facebook.react.fabric.mounting;
10
10
  import static com.facebook.infer.annotation.ThreadConfined.ANY;
11
11
  import static com.facebook.infer.annotation.ThreadConfined.UI;
12
12
 
13
- import android.content.Context;
13
+ import android.text.Spannable;
14
14
  import android.view.View;
15
- import android.view.ViewGroup;
16
- import android.view.ViewParent;
17
15
  import androidx.annotation.AnyThread;
18
16
  import androidx.annotation.NonNull;
19
17
  import androidx.annotation.Nullable;
20
18
  import androidx.annotation.UiThread;
21
19
  import com.facebook.common.logging.FLog;
22
- import com.facebook.infer.annotation.Assertions;
23
20
  import com.facebook.infer.annotation.ThreadConfined;
24
- import com.facebook.react.bridge.ReactSoftException;
21
+ import com.facebook.react.bridge.ReactContext;
22
+ import com.facebook.react.bridge.ReactSoftExceptionLogger;
25
23
  import com.facebook.react.bridge.ReadableArray;
26
24
  import com.facebook.react.bridge.ReadableMap;
27
- import com.facebook.react.bridge.ReadableNativeMap;
28
25
  import com.facebook.react.bridge.RetryableMountingLayerException;
29
- import com.facebook.react.bridge.SoftAssertions;
30
26
  import com.facebook.react.bridge.UiThreadUtil;
31
- import com.facebook.react.common.build.ReactBuildConfig;
27
+ import com.facebook.react.common.mapbuffer.ReadableMapBuffer;
32
28
  import com.facebook.react.fabric.FabricUIManager;
33
29
  import com.facebook.react.fabric.events.EventEmitterWrapper;
34
30
  import com.facebook.react.fabric.mounting.mountitems.MountItem;
35
31
  import com.facebook.react.touch.JSResponderHandler;
36
- import com.facebook.react.uimanager.IllegalViewOperationException;
37
- import com.facebook.react.uimanager.ReactStylesDiffMap;
38
- import com.facebook.react.uimanager.RootView;
39
32
  import com.facebook.react.uimanager.RootViewManager;
40
- import com.facebook.react.uimanager.StateWrapper;
41
33
  import com.facebook.react.uimanager.ThemedReactContext;
42
- import com.facebook.react.uimanager.ViewGroupManager;
43
- import com.facebook.react.uimanager.ViewManager;
44
34
  import com.facebook.react.uimanager.ViewManagerRegistry;
35
+ import com.facebook.react.views.text.ReactTextViewManagerCallback;
36
+ import com.facebook.react.views.text.TextLayoutManagerMapBuffer;
45
37
  import com.facebook.yoga.YogaMeasureMode;
38
+ import java.util.Map;
39
+ import java.util.Queue;
46
40
  import java.util.concurrent.ConcurrentHashMap;
41
+ import java.util.concurrent.CopyOnWriteArrayList;
47
42
 
48
43
  /**
49
44
  * Class responsible for actually dispatching view updates enqueued via {@link
50
- * FabricUIManager#scheduleMountItems(int, MountItem[])} on the UI thread.
45
+ * FabricUIManager#scheduleMountItem} on the UI thread.
51
46
  */
52
47
  public class MountingManager {
53
48
  public static final String TAG = MountingManager.class.getSimpleName();
54
- private static final boolean SHOW_CHANGED_VIEW_HIERARCHIES = ReactBuildConfig.DEBUG && false;
49
+ private static final int MAX_STOPPED_SURFACE_IDS_LENGTH = 15;
50
+
51
+ @NonNull
52
+ private final ConcurrentHashMap<Integer, SurfaceMountingManager> mSurfaceIdToManager =
53
+ new ConcurrentHashMap<>(); // any thread
54
+
55
+ private final CopyOnWriteArrayList<Integer> mStoppedSurfaceIds = new CopyOnWriteArrayList<>();
56
+
57
+ @Nullable private SurfaceMountingManager mMostRecentSurfaceMountingManager;
58
+ @Nullable private SurfaceMountingManager mLastQueriedSurfaceMountingManager;
55
59
 
56
- @NonNull private final ConcurrentHashMap<Integer, ViewState> mTagToViewState;
57
60
  @NonNull private final JSResponderHandler mJSResponderHandler = new JSResponderHandler();
58
61
  @NonNull private final ViewManagerRegistry mViewManagerRegistry;
62
+ @NonNull private final MountItemExecutor mMountItemExecutor;
59
63
  @NonNull private final RootViewManager mRootViewManager = new RootViewManager();
60
64
 
61
- public MountingManager(@NonNull ViewManagerRegistry viewManagerRegistry) {
62
- mTagToViewState = new ConcurrentHashMap<>();
65
+ public interface MountItemExecutor {
66
+ @UiThread
67
+ @ThreadConfined(UI)
68
+ void executeItems(Queue<MountItem> items);
69
+ }
70
+
71
+ public MountingManager(
72
+ @NonNull ViewManagerRegistry viewManagerRegistry,
73
+ @NonNull MountItemExecutor mountItemExecutor) {
63
74
  mViewManagerRegistry = viewManagerRegistry;
75
+ mMountItemExecutor = mountItemExecutor;
64
76
  }
65
77
 
66
- private static void logViewHierarchy(ViewGroup parent, boolean recurse) {
67
- int parentTag = parent.getId();
68
- FLog.e(TAG, " <ViewGroup tag=" + parentTag + " class=" + parent.getClass().toString() + ">");
69
- for (int i = 0; i < parent.getChildCount(); i++) {
70
- FLog.e(
71
- TAG,
72
- " <View idx="
73
- + i
74
- + " tag="
75
- + parent.getChildAt(i).getId()
76
- + " class="
77
- + parent.getChildAt(i).getClass().toString()
78
- + ">");
79
- }
80
- FLog.e(TAG, " </ViewGroup tag=" + parentTag + ">");
81
-
82
- if (recurse) {
83
- FLog.e(TAG, "Displaying Ancestors:");
84
- ViewParent ancestor = parent.getParent();
85
- while (ancestor != null) {
86
- ViewGroup ancestorViewGroup = (ancestor instanceof ViewGroup ? (ViewGroup) ancestor : null);
87
- int ancestorId = ancestorViewGroup == null ? View.NO_ID : ancestorViewGroup.getId();
88
- FLog.e(
89
- TAG,
90
- "<ViewParent tag=" + ancestorId + " class=" + ancestor.getClass().toString() + ">");
91
- ancestor = ancestor.getParent();
92
- }
93
- }
78
+ /** Starts surface and attaches the root view. */
79
+ @AnyThread
80
+ public void startSurface(
81
+ final int surfaceId, @NonNull final View rootView, ThemedReactContext themedReactContext) {
82
+ SurfaceMountingManager mountingManager = startSurface(surfaceId);
83
+ mountingManager.attachRootView(rootView, themedReactContext);
94
84
  }
95
85
 
96
86
  /**
97
- * This mutates the rootView, which is an Android View, so this should only be called on the UI
98
- * thread.
99
- *
100
- * @param reactRootTag
101
- * @param rootView
87
+ * Starts surface without attaching the view. All view operations executed against that surface
88
+ * will be queued until the view is attached.
102
89
  */
103
- @ThreadConfined(UI)
104
- public void addRootView(int reactRootTag, @NonNull View rootView) {
105
- if (rootView.getId() != View.NO_ID) {
106
- throw new IllegalViewOperationException(
107
- "Trying to add a root view with an explicit id already set. React Native uses "
108
- + "the id field to track react tags and will overwrite this field. If that is fine, "
109
- + "explicitly overwrite the id field to View.NO_ID before calling addRootView.");
90
+ @AnyThread
91
+ public SurfaceMountingManager startSurface(final int surfaceId) {
92
+ SurfaceMountingManager surfaceMountingManager =
93
+ new SurfaceMountingManager(
94
+ surfaceId,
95
+ mJSResponderHandler,
96
+ mViewManagerRegistry,
97
+ mRootViewManager,
98
+ mMountItemExecutor);
99
+
100
+ // There could technically be a race condition here if addRootView is called twice from
101
+ // different threads, though this is (probably) extremely unlikely, and likely an error.
102
+ // This logic to protect against race conditions is a holdover from older code, and we don't
103
+ // know if it actually happens in practice - so, we're logging soft exceptions for now.
104
+ // This *will* crash in Debug mode, but not in production.
105
+ mSurfaceIdToManager.putIfAbsent(surfaceId, surfaceMountingManager);
106
+ if (mSurfaceIdToManager.get(surfaceId) != surfaceMountingManager) {
107
+ ReactSoftExceptionLogger.logSoftException(
108
+ TAG,
109
+ new IllegalStateException(
110
+ "Called startSurface more than once for the SurfaceId [" + surfaceId + "]"));
110
111
  }
111
112
 
112
- mTagToViewState.put(
113
- reactRootTag, new ViewState(reactRootTag, rootView, mRootViewManager, true));
114
- rootView.setId(reactRootTag);
113
+ mMostRecentSurfaceMountingManager = mSurfaceIdToManager.get(surfaceId);
114
+ return surfaceMountingManager;
115
115
  }
116
116
 
117
- /** Delete rootView and all children/ */
118
- @UiThread
119
- public void deleteRootView(int reactRootTag) {
120
- if (mTagToViewState.containsKey(reactRootTag)) {
121
- dropView(mTagToViewState.get(reactRootTag).mView, true);
117
+ @AnyThread
118
+ public void attachRootView(
119
+ final int surfaceId, @NonNull final View rootView, ThemedReactContext themedReactContext) {
120
+ SurfaceMountingManager surfaceMountingManager =
121
+ getSurfaceManagerEnforced(surfaceId, "attachView");
122
+
123
+ if (surfaceMountingManager.isStopped()) {
124
+ ReactSoftExceptionLogger.logSoftException(
125
+ TAG, new IllegalStateException("Trying to attach a view to a stopped surface"));
126
+ return;
122
127
  }
123
- }
124
-
125
- /** Releases all references to given native View. */
126
- @UiThread
127
- private void dropView(@NonNull View view, boolean deleteImmediately) {
128
- UiThreadUtil.assertOnUiThread();
129
128
 
130
- final int reactTag = view.getId();
131
- ViewState state = getViewState(reactTag);
132
- ViewManager viewManager = state.mViewManager;
129
+ surfaceMountingManager.attachRootView(rootView, themedReactContext);
130
+ }
133
131
 
134
- if (!state.mIsRoot && viewManager != null) {
135
- // For non-root views we notify viewmanager with {@link ViewManager#onDropInstance}
136
- viewManager.onDropViewInstance(view);
137
- }
138
- if (view instanceof ViewGroup && viewManager instanceof ViewGroupManager) {
139
- final ViewGroup viewGroup = (ViewGroup) view;
140
- final ViewGroupManager<ViewGroup> viewGroupManager = getViewGroupManager(state);
141
-
142
- // As documented elsewhere, sometimes when a child is removed from a parent, that change
143
- // is not immediately available in the hierarchy until a future UI tick. This can cause
144
- // inconsistent child counts, etc, but it can _also_ cause us to drop views that shouldn't,
145
- // because they're removed from the parent but that change isn't immediately visible. So,
146
- // we do two things: 1) delay this logic until the next UI thread tick, 2) ignore children
147
- // who don't report the expected parent.
148
- // For most cases, we _do not_ want this logic to run, anyway, since it either means that we
149
- // don't have a correct set of MountingInstructions; or it means that we're tearing down an
150
- // entire screen, in which case we can safely delete everything immediately, not having
151
- // executed any remove instructions immediately before this.
152
- if (deleteImmediately) {
153
- dropChildren(reactTag, viewGroup, viewGroupManager);
154
- } else {
155
- UiThreadUtil.runOnUiThread(
156
- new Runnable() {
157
- @Override
158
- public void run() {
159
- dropChildren(reactTag, viewGroup, viewGroupManager);
160
- }
161
- });
132
+ @AnyThread
133
+ public void stopSurface(final int surfaceId) {
134
+ SurfaceMountingManager surfaceMountingManager = mSurfaceIdToManager.get(surfaceId);
135
+ if (surfaceMountingManager != null) {
136
+ // Maximum number of stopped surfaces to keep track of
137
+ while (mStoppedSurfaceIds.size() >= MAX_STOPPED_SURFACE_IDS_LENGTH) {
138
+ Integer staleStoppedId = mStoppedSurfaceIds.get(0);
139
+ mSurfaceIdToManager.remove(staleStoppedId.intValue());
140
+ mStoppedSurfaceIds.remove(staleStoppedId);
141
+ FLog.d(TAG, "Removing stale SurfaceMountingManager: [%d]", staleStoppedId.intValue());
162
142
  }
163
- }
143
+ mStoppedSurfaceIds.add(surfaceId);
164
144
 
165
- mTagToViewState.remove(reactTag);
166
- }
145
+ surfaceMountingManager.stopSurface();
167
146
 
168
- @UiThread
169
- private void dropChildren(
170
- int reactTag,
171
- @NonNull ViewGroup viewGroup,
172
- @NonNull ViewGroupManager<ViewGroup> viewGroupManager) {
173
- for (int i = viewGroupManager.getChildCount(viewGroup) - 1; i >= 0; i--) {
174
- View child = viewGroupManager.getChildAt(viewGroup, i);
175
- if (getNullableViewState(child.getId()) != null) {
176
- if (SHOW_CHANGED_VIEW_HIERARCHIES) {
177
- FLog.e(
178
- TAG,
179
- "Automatically dropping view that is still attached to a parent being dropped. Parent: ["
180
- + reactTag
181
- + "] child: ["
182
- + child.getId()
183
- + "]");
184
- }
185
- ViewParent childParent = child.getParent();
186
- if (childParent == null || !childParent.equals(viewGroup)) {
187
- int childParentId =
188
- (childParent == null
189
- ? -1
190
- : (childParent instanceof ViewGroup ? ((ViewGroup) childParent).getId() : -1));
191
- FLog.e(
192
- TAG,
193
- "Recursively deleting children of ["
194
- + reactTag
195
- + "] but parent of child ["
196
- + child.getId()
197
- + "] is ["
198
- + childParentId
199
- + "]");
200
- } else {
201
- dropView(child, true);
202
- }
147
+ if (surfaceMountingManager == mMostRecentSurfaceMountingManager) {
148
+ mMostRecentSurfaceMountingManager = null;
203
149
  }
204
- viewGroupManager.removeViewAt(viewGroup, i);
150
+ } else {
151
+ ReactSoftExceptionLogger.logSoftException(
152
+ TAG,
153
+ new IllegalStateException(
154
+ "Cannot call stopSurface on non-existent surface: [" + surfaceId + "]"));
205
155
  }
206
156
  }
207
157
 
208
- @UiThread
209
- public void addViewAt(final int parentTag, final int tag, final int index) {
210
- UiThreadUtil.assertOnUiThread();
211
- ViewState parentViewState = getViewState(parentTag);
212
- if (!(parentViewState.mView instanceof ViewGroup)) {
213
- String message =
214
- "Unable to add a view into a view that is not a ViewGroup. ParentTag: "
215
- + parentTag
216
- + " - Tag: "
217
- + tag
218
- + " - Index: "
219
- + index;
220
- FLog.e(TAG, message);
221
- throw new IllegalStateException(message);
222
- }
223
- final ViewGroup parentView = (ViewGroup) parentViewState.mView;
224
- ViewState viewState = getViewState(tag);
225
- final View view = viewState.mView;
226
- if (view == null) {
227
- throw new IllegalStateException(
228
- "Unable to find view for viewState " + viewState + " and tag " + tag);
229
- }
230
-
231
- // Display children before inserting
232
- if (SHOW_CHANGED_VIEW_HIERARCHIES) {
233
- FLog.e(TAG, "addViewAt: [" + tag + "] -> [" + parentTag + "] idx: " + index + " BEFORE");
234
- logViewHierarchy(parentView, false);
158
+ @Nullable
159
+ public SurfaceMountingManager getSurfaceManager(int surfaceId) {
160
+ if (mLastQueriedSurfaceMountingManager != null
161
+ && mLastQueriedSurfaceMountingManager.getSurfaceId() == surfaceId) {
162
+ return mLastQueriedSurfaceMountingManager;
235
163
  }
236
164
 
237
- try {
238
- getViewGroupManager(parentViewState).addView(parentView, view, index);
239
- } catch (IllegalStateException e) {
240
- // Wrap error with more context for debugging
241
- throw new IllegalStateException(
242
- "addViewAt: failed to insert view ["
243
- + tag
244
- + "] into parent ["
245
- + parentTag
246
- + "] at index "
247
- + index,
248
- e);
165
+ if (mMostRecentSurfaceMountingManager != null
166
+ && mMostRecentSurfaceMountingManager.getSurfaceId() == surfaceId) {
167
+ return mMostRecentSurfaceMountingManager;
249
168
  }
250
169
 
251
- // Display children after inserting
252
- if (SHOW_CHANGED_VIEW_HIERARCHIES) {
253
- UiThreadUtil.runOnUiThread(
254
- new Runnable() {
255
- @Override
256
- public void run() {
257
- FLog.e(
258
- TAG, "addViewAt: [" + tag + "] -> [" + parentTag + "] idx: " + index + " AFTER");
259
- logViewHierarchy(parentView, false);
260
- }
261
- });
262
- }
170
+ SurfaceMountingManager surfaceMountingManager = mSurfaceIdToManager.get(surfaceId);
171
+ mLastQueriedSurfaceMountingManager = surfaceMountingManager;
172
+ return surfaceMountingManager;
263
173
  }
264
174
 
265
175
  @NonNull
266
- private ViewState getViewState(int tag) {
267
- ViewState viewState = mTagToViewState.get(tag);
268
- if (viewState == null) {
269
- throw new RetryableMountingLayerException("Unable to find viewState view for tag " + tag);
270
- }
271
- return viewState;
272
- }
273
-
274
- public boolean getViewExists(int tag) {
275
- return mTagToViewState.get(tag) != null;
276
- }
277
-
278
- private @Nullable ViewState getNullableViewState(int tag) {
279
- return mTagToViewState.get(tag);
280
- }
281
-
282
- @Deprecated
283
- public void receiveCommand(int reactTag, int commandId, @Nullable ReadableArray commandArgs) {
284
- ViewState viewState = getNullableViewState(reactTag);
285
-
286
- // It's not uncommon for JS to send events as/after a component is being removed from the
287
- // view hierarchy. For example, TextInput may send a "blur" command in response to the view
288
- // disappearing. Throw `ReactNoCrashSoftException` so they're logged but don't crash in dev
289
- // for now.
290
- if (viewState == null) {
291
- throw new RetryableMountingLayerException(
292
- "Unable to find viewState for tag: " + reactTag + " for commandId: " + commandId);
293
- }
176
+ public SurfaceMountingManager getSurfaceManagerEnforced(int surfaceId, String context) {
177
+ SurfaceMountingManager surfaceMountingManager = getSurfaceManager(surfaceId);
294
178
 
295
- if (viewState.mViewManager == null) {
296
- throw new RetryableMountingLayerException("Unable to find viewManager for tag " + reactTag);
297
- }
298
-
299
- if (viewState.mView == null) {
179
+ if (surfaceMountingManager == null) {
300
180
  throw new RetryableMountingLayerException(
301
- "Unable to find viewState view for tag " + reactTag);
181
+ "Unable to find SurfaceMountingManager for surfaceId: ["
182
+ + surfaceId
183
+ + "]. Context: "
184
+ + context);
302
185
  }
303
186
 
304
- viewState.mViewManager.receiveCommand(viewState.mView, commandId, commandArgs);
187
+ return surfaceMountingManager;
305
188
  }
306
189
 
307
- public void receiveCommand(
308
- int reactTag, @NonNull String commandId, @Nullable ReadableArray commandArgs) {
309
- ViewState viewState = getNullableViewState(reactTag);
310
-
311
- // It's not uncommon for JS to send events as/after a component is being removed from the
312
- // view hierarchy. For example, TextInput may send a "blur" command in response to the view
313
- // disappearing. Throw `ReactNoCrashSoftException` so they're logged but don't crash in dev
314
- // for now.
315
- if (viewState == null) {
316
- throw new RetryableMountingLayerException(
317
- "Unable to find viewState for tag: " + reactTag + " for commandId: " + commandId);
318
- }
319
-
320
- if (viewState.mViewManager == null) {
321
- throw new RetryableMountingLayerException(
322
- "Unable to find viewState manager for tag " + reactTag);
190
+ public boolean surfaceIsStopped(int surfaceId) {
191
+ if (mStoppedSurfaceIds.contains(surfaceId)) {
192
+ return true;
323
193
  }
324
194
 
325
- if (viewState.mView == null) {
326
- throw new RetryableMountingLayerException(
327
- "Unable to find viewState view for tag " + reactTag);
195
+ SurfaceMountingManager surfaceMountingManager = getSurfaceManager(surfaceId);
196
+ if (surfaceMountingManager != null && surfaceMountingManager.isStopped()) {
197
+ return true;
328
198
  }
329
199
 
330
- viewState.mViewManager.receiveCommand(viewState.mView, commandId, commandArgs);
200
+ return false;
331
201
  }
332
202
 
333
- public void sendAccessibilityEvent(int reactTag, int eventType) {
334
- ViewState viewState = getViewState(reactTag);
335
-
336
- if (viewState.mViewManager == null) {
337
- throw new RetryableMountingLayerException(
338
- "Unable to find viewState manager for tag " + reactTag);
203
+ public boolean isWaitingForViewAttach(int surfaceId) {
204
+ SurfaceMountingManager mountingManager = getSurfaceManager(surfaceId);
205
+ if (mountingManager == null) {
206
+ return false;
339
207
  }
340
208
 
341
- if (viewState.mView == null) {
342
- throw new RetryableMountingLayerException(
343
- "Unable to find viewState view for tag " + reactTag);
209
+ if (mountingManager.isStopped()) {
210
+ return false;
344
211
  }
345
212
 
346
- viewState.mView.sendAccessibilityEvent(eventType);
347
- }
348
-
349
- @SuppressWarnings("unchecked") // prevents unchecked conversion warn of the <ViewGroup> type
350
- private static @NonNull ViewGroupManager<ViewGroup> getViewGroupManager(
351
- @NonNull ViewState viewState) {
352
- if (viewState.mViewManager == null) {
353
- throw new IllegalStateException("Unable to find ViewManager for view: " + viewState);
354
- }
355
- return (ViewGroupManager<ViewGroup>) viewState.mViewManager;
213
+ return !mountingManager.isRootViewAttached();
356
214
  }
357
215
 
358
- @UiThread
359
- public void removeViewAt(final int tag, final int parentTag, int index) {
360
- UiThreadUtil.assertOnUiThread();
361
- ViewState viewState = getNullableViewState(parentTag);
362
-
363
- if (viewState == null) {
364
- ReactSoftException.logSoftException(
365
- MountingManager.TAG,
366
- new IllegalStateException(
367
- "Unable to find viewState for tag: " + parentTag + " for removeViewAt"));
368
- return;
369
- }
370
-
371
- final ViewGroup parentView = (ViewGroup) viewState.mView;
372
-
373
- if (parentView == null) {
374
- throw new IllegalStateException("Unable to find view for tag " + parentTag);
375
- }
376
-
377
- if (SHOW_CHANGED_VIEW_HIERARCHIES) {
378
- // Display children before deleting any
379
- FLog.e(TAG, "removeViewAt: [" + tag + "] -> [" + parentTag + "] idx: " + index + " BEFORE");
380
- logViewHierarchy(parentView, false);
381
- }
382
-
383
- ViewGroupManager<ViewGroup> viewGroupManager = getViewGroupManager(viewState);
384
-
385
- // Verify that the view we're about to remove has the same tag we expect
386
- View view = viewGroupManager.getChildAt(parentView, index);
387
- int actualTag = (view != null ? view.getId() : -1);
388
- if (actualTag != tag) {
389
- int tagActualIndex = -1;
390
- int parentChildrenCount = parentView.getChildCount();
391
- for (int i = 0; i < parentChildrenCount; i++) {
392
- if (parentView.getChildAt(i).getId() == tag) {
393
- tagActualIndex = i;
394
- break;
216
+ /**
217
+ * Get SurfaceMountingManager associated with a ReactTag. Unfortunately, this requires lookups
218
+ * over N maps, where N is the number of active or recently-stopped Surfaces. Each lookup will
219
+ * cost `log(M)` operations where M is the number of reactTags in the surface, so the total cost
220
+ * per lookup is `O(N * log(M))`.
221
+ *
222
+ * <p>To mitigate this cost, we attempt to keep track of the "most recent" SurfaceMountingManager
223
+ * and do lookups in it first. For the vast majority of use-cases, except for events or operations
224
+ * sent to off-screen surfaces, or use-cases where multiple surfaces are visible and interactable,
225
+ * this will reduce the lookup time to `O(log(M))`. Someone smarter than me could probably figure
226
+ * out an amortized time.
227
+ *
228
+ * @param reactTag
229
+ * @return
230
+ */
231
+ @Nullable
232
+ public SurfaceMountingManager getSurfaceManagerForView(int reactTag) {
233
+ if (mMostRecentSurfaceMountingManager != null
234
+ && mMostRecentSurfaceMountingManager.getViewExists(reactTag)) {
235
+ return mMostRecentSurfaceMountingManager;
236
+ }
237
+
238
+ for (Map.Entry<Integer, SurfaceMountingManager> entry : mSurfaceIdToManager.entrySet()) {
239
+ SurfaceMountingManager smm = entry.getValue();
240
+ if (smm != mMostRecentSurfaceMountingManager && smm.getViewExists(reactTag)) {
241
+ if (mMostRecentSurfaceMountingManager == null) {
242
+ mMostRecentSurfaceMountingManager = smm;
395
243
  }
244
+ return smm;
396
245
  }
397
-
398
- // TODO T74425739: previously, we did not do this check and `removeViewAt` would be executed
399
- // below, sometimes crashing there. *However*, interestingly enough, `removeViewAt` would not
400
- // complain if you removed views from an already-empty parent. This seems necessary currently
401
- // for certain ViewManagers that remove their own children - like BottomSheet?
402
- // This workaround seems not-great, but for now, we just return here for
403
- // backwards-compatibility. Essentially, if a view has already been removed from the
404
- // hierarchy, we treat it as a noop.
405
- if (tagActualIndex == -1) {
406
- FLog.e(
407
- TAG,
408
- "removeViewAt: ["
409
- + tag
410
- + "] -> ["
411
- + parentTag
412
- + "] @"
413
- + index
414
- + ": view already removed from parent! Children in parent: "
415
- + parentChildrenCount);
416
- return;
417
- }
418
-
419
- // Here we are guaranteed that the view is still in the View hierarchy, just
420
- // at a different index. In debug mode we'll crash here; in production, we'll remove
421
- // the child from the parent and move on.
422
- // This is an issue that is safely recoverable 95% of the time. If this allows corruption
423
- // of the view hierarchy and causes bugs or a crash after this point, there will be logs
424
- // indicating that this happened.
425
- // This is likely *only* necessary because of Fabric's LayoutAnimations implementation.
426
- // If we can fix the bug there, or remove the need for LayoutAnimation index adjustment
427
- // entirely, we can just throw this exception without regression user experience.
428
- logViewHierarchy(parentView, true);
429
- ReactSoftException.logSoftException(
430
- TAG,
431
- new IllegalStateException(
432
- "Tried to remove view ["
433
- + tag
434
- + "] of parent ["
435
- + parentTag
436
- + "] at index "
437
- + index
438
- + ", but got view tag "
439
- + actualTag
440
- + " - actual index of view: "
441
- + tagActualIndex));
442
- index = tagActualIndex;
443
- }
444
-
445
- try {
446
- viewGroupManager.removeViewAt(parentView, index);
447
- } catch (RuntimeException e) {
448
- // Note: `getChildCount` may not always be accurate!
449
- // We don't currently have a good explanation other than, in situations where you
450
- // would empirically expect to see childCount > 0, the childCount is reported as 0.
451
- // This is likely due to a ViewManager overriding getChildCount or some other methods
452
- // in a way that is strictly incorrect, but potentially only visible here.
453
- // The failure mode is actually that in `removeViewAt`, a NullPointerException is
454
- // thrown when we try to perform an operation on a View that doesn't exist, and
455
- // is therefore null.
456
- // We try to add some extra diagnostics here, but we always try to remove the View
457
- // from the hierarchy first because detecting by looking at childCount will not work.
458
- //
459
- // Note that the lesson here is that `getChildCount` is not /required/ to adhere to
460
- // any invariants. If you add 9 children to a parent, the `getChildCount` of the parent
461
- // may not be equal to 9. This apparently causes no issues with Android and is common
462
- // enough that we shouldn't try to change this invariant, without a lot of thought.
463
- int childCount = viewGroupManager.getChildCount(parentView);
464
-
465
- logViewHierarchy(parentView, true);
466
-
467
- throw new IllegalStateException(
468
- "Cannot remove child at index "
469
- + index
470
- + " from parent ViewGroup ["
471
- + parentView.getId()
472
- + "], only "
473
- + childCount
474
- + " children in parent. Warning: childCount may be incorrect!",
475
- e);
476
- }
477
-
478
- // Display children after deleting any
479
- if (SHOW_CHANGED_VIEW_HIERARCHIES) {
480
- final int finalIndex = index;
481
- UiThreadUtil.runOnUiThread(
482
- new Runnable() {
483
- @Override
484
- public void run() {
485
- FLog.e(
486
- TAG,
487
- "removeViewAt: ["
488
- + tag
489
- + "] -> ["
490
- + parentTag
491
- + "] idx: "
492
- + finalIndex
493
- + " AFTER");
494
- logViewHierarchy(parentView, false);
495
- }
496
- });
497
246
  }
247
+ return null;
498
248
  }
499
249
 
500
- @UiThread
501
- public void createView(
502
- @NonNull ThemedReactContext themedReactContext,
503
- @NonNull String componentName,
504
- int reactTag,
505
- @Nullable ReadableMap props,
506
- @Nullable StateWrapper stateWrapper,
507
- boolean isLayoutable) {
508
- if (getNullableViewState(reactTag) != null) {
509
- return;
510
- }
511
-
512
- View view = null;
513
- ViewManager viewManager = null;
514
-
515
- ReactStylesDiffMap propsDiffMap = null;
516
- if (props != null) {
517
- propsDiffMap = new ReactStylesDiffMap(props);
518
- }
250
+ @NonNull
251
+ @AnyThread
252
+ public SurfaceMountingManager getSurfaceManagerForViewEnforced(int reactTag) {
253
+ SurfaceMountingManager surfaceMountingManager = getSurfaceManagerForView(reactTag);
519
254
 
520
- if (isLayoutable) {
521
- viewManager = mViewManagerRegistry.get(componentName);
522
- // View Managers are responsible for dealing with initial state and props.
523
- view =
524
- viewManager.createView(
525
- themedReactContext, propsDiffMap, stateWrapper, mJSResponderHandler);
526
- view.setId(reactTag);
255
+ if (surfaceMountingManager == null) {
256
+ throw new RetryableMountingLayerException(
257
+ "Unable to find SurfaceMountingManager for tag: [" + reactTag + "]");
527
258
  }
528
259
 
529
- ViewState viewState = new ViewState(reactTag, view, viewManager);
530
- viewState.mCurrentProps = propsDiffMap;
531
- viewState.mCurrentState = (stateWrapper != null ? stateWrapper.getState() : null);
532
-
533
- mTagToViewState.put(reactTag, viewState);
260
+ return surfaceMountingManager;
534
261
  }
535
262
 
536
- @UiThread
537
- public void updateProps(int reactTag, @Nullable ReadableMap props) {
538
- if (props == null) {
539
- return;
540
- }
541
- UiThreadUtil.assertOnUiThread();
542
- ViewState viewState = getViewState(reactTag);
543
- viewState.mCurrentProps = new ReactStylesDiffMap(props);
544
- View view = viewState.mView;
545
-
546
- if (view == null) {
547
- throw new IllegalStateException("Unable to find view for tag " + reactTag);
548
- }
549
-
550
- Assertions.assertNotNull(viewState.mViewManager)
551
- .updateProperties(view, viewState.mCurrentProps);
263
+ public boolean getViewExists(int reactTag) {
264
+ return getSurfaceManagerForView(reactTag) != null;
552
265
  }
553
266
 
554
- @UiThread
555
- public void updateLayout(int reactTag, int x, int y, int width, int height) {
267
+ @Deprecated
268
+ public void receiveCommand(
269
+ int surfaceId, int reactTag, int commandId, @Nullable ReadableArray commandArgs) {
556
270
  UiThreadUtil.assertOnUiThread();
557
-
558
- ViewState viewState = getViewState(reactTag);
559
- // Do not layout Root Views
560
- if (viewState.mIsRoot) {
561
- return;
562
- }
563
-
564
- View viewToUpdate = viewState.mView;
565
- if (viewToUpdate == null) {
566
- throw new IllegalStateException("Unable to find View for tag: " + reactTag);
567
- }
568
-
569
- viewToUpdate.measure(
570
- View.MeasureSpec.makeMeasureSpec(width, View.MeasureSpec.EXACTLY),
571
- View.MeasureSpec.makeMeasureSpec(height, View.MeasureSpec.EXACTLY));
572
-
573
- ViewParent parent = viewToUpdate.getParent();
574
- if (parent instanceof RootView) {
575
- parent.requestLayout();
576
- }
577
-
578
- // TODO: T31905686 Check if the parent of the view has to layout the view, or the child has
579
- // to lay itself out. see NativeViewHierarchyManager.updateLayout
580
- viewToUpdate.layout(x, y, x + width, y + height);
271
+ getSurfaceManagerEnforced(surfaceId, "receiveCommand:int")
272
+ .receiveCommand(reactTag, commandId, commandArgs);
581
273
  }
582
274
 
583
- @UiThread
584
- public void updatePadding(int reactTag, int left, int top, int right, int bottom) {
275
+ public void receiveCommand(
276
+ int surfaceId, int reactTag, @NonNull String commandId, @Nullable ReadableArray commandArgs) {
585
277
  UiThreadUtil.assertOnUiThread();
586
-
587
- ViewState viewState = getViewState(reactTag);
588
- // Do not layout Root Views
589
- if (viewState.mIsRoot) {
590
- return;
591
- }
592
-
593
- View viewToUpdate = viewState.mView;
594
- if (viewToUpdate == null) {
595
- throw new IllegalStateException("Unable to find View for tag: " + reactTag);
596
- }
597
-
598
- ViewManager viewManager = viewState.mViewManager;
599
- if (viewManager == null) {
600
- throw new IllegalStateException("Unable to find ViewManager for view: " + viewState);
601
- }
602
-
603
- //noinspection unchecked
604
- viewManager.setPadding(viewToUpdate, left, top, right, bottom);
278
+ getSurfaceManagerEnforced(surfaceId, "receiveCommand:string")
279
+ .receiveCommand(reactTag, commandId, commandArgs);
605
280
  }
606
281
 
607
- @UiThread
608
- public void deleteView(int reactTag) {
282
+ /**
283
+ * Send an accessibility eventType to a Native View. eventType is any valid `AccessibilityEvent.X`
284
+ * value.
285
+ *
286
+ * <p>Why accept `-1` SurfaceId? Currently there are calls to UIManager.sendAccessibilityEvent
287
+ * which is a legacy API and accepts only reactTag. We will have to investigate and migrate away
288
+ * from those calls over time.
289
+ *
290
+ * @param surfaceId {@link int} that identifies the surface or -1 to temporarily support backward
291
+ * compatibility.
292
+ * @param reactTag {@link int} that identifies the react Tag of the view.
293
+ * @param eventType {@link int} that identifies Android eventType. see {@link
294
+ * View#sendAccessibilityEvent}
295
+ */
296
+ public void sendAccessibilityEvent(int surfaceId, int reactTag, int eventType) {
609
297
  UiThreadUtil.assertOnUiThread();
610
- ViewState viewState = getNullableViewState(reactTag);
611
-
612
- if (viewState == null) {
613
- ReactSoftException.logSoftException(
614
- MountingManager.TAG,
615
- new IllegalStateException(
616
- "Unable to find viewState for tag: " + reactTag + " for deleteView"));
617
- return;
618
- }
619
-
620
- // To delete we simply remove the tag from the registry.
621
- // In the past we called dropView here, but we want to rely on either
622
- // (1) the correct set of MountInstructions being sent to the platform
623
- // and/or (2) dropView being called by stopSurface.
624
- // If Views are orphaned at this stage and leaked, it's a problem in
625
- // the differ or LayoutAnimations, not MountingManager.
626
- // Additionally, as documented in `dropView`, we cannot always trust a
627
- // view's children to be up-to-date.
628
- mTagToViewState.remove(reactTag);
629
-
630
- // For non-root views we notify viewmanager with {@link ViewManager#onDropInstance}
631
- ViewManager viewManager = viewState.mViewManager;
632
- if (!viewState.mIsRoot && viewManager != null) {
633
- viewManager.onDropViewInstance(viewState.mView);
298
+ if (surfaceId == View.NO_ID) {
299
+ getSurfaceManagerForViewEnforced(reactTag).sendAccessibilityEvent(reactTag, eventType);
300
+ } else {
301
+ getSurfaceManagerEnforced(surfaceId, "sendAccessibilityEvent")
302
+ .sendAccessibilityEvent(reactTag, eventType);
634
303
  }
635
304
  }
636
305
 
637
306
  @UiThread
638
- public void updateState(final int reactTag, @Nullable StateWrapper stateWrapper) {
307
+ public void updateProps(int reactTag, @Nullable ReadableMap props) {
639
308
  UiThreadUtil.assertOnUiThread();
640
- ViewState viewState = getViewState(reactTag);
641
- @Nullable ReadableNativeMap newState = stateWrapper == null ? null : stateWrapper.getState();
642
-
643
- viewState.mCurrentState = newState;
644
-
645
- ViewManager viewManager = viewState.mViewManager;
646
-
647
- if (viewManager == null) {
648
- throw new IllegalStateException("Unable to find ViewManager for tag: " + reactTag);
649
- }
650
- Object extraData =
651
- viewManager.updateState(viewState.mView, viewState.mCurrentProps, stateWrapper);
652
- if (extraData != null) {
653
- viewManager.updateExtraData(viewState.mView, extraData);
654
- }
655
- }
656
-
657
- @UiThread
658
- public void preallocateView(
659
- @NonNull ThemedReactContext reactContext,
660
- String componentName,
661
- int reactTag,
662
- @Nullable ReadableMap props,
663
- @Nullable StateWrapper stateWrapper,
664
- boolean isLayoutable) {
665
-
666
- if (getNullableViewState(reactTag) != null) {
667
- throw new IllegalStateException(
668
- "View for component " + componentName + " with tag " + reactTag + " already exists.");
309
+ if (props == null) {
310
+ return;
669
311
  }
670
312
 
671
- createView(reactContext, componentName, reactTag, props, stateWrapper, isLayoutable);
672
- }
673
-
674
- @UiThread
675
- public void updateEventEmitter(int reactTag, @NonNull EventEmitterWrapper eventEmitter) {
676
- UiThreadUtil.assertOnUiThread();
677
- ViewState viewState = mTagToViewState.get(reactTag);
678
- if (viewState == null) {
679
- // TODO T62717437 - Use a flag to determine that these event emitters belong to virtual nodes
680
- // only.
681
- viewState = new ViewState(reactTag, null, null);
682
- mTagToViewState.put(reactTag, viewState);
683
- }
684
- viewState.mEventEmitter = eventEmitter;
313
+ getSurfaceManagerForViewEnforced(reactTag).updateProps(reactTag, props);
685
314
  }
686
315
 
687
316
  /**
688
- * Set the JS responder for the view associated with the tags received as a parameter.
689
- *
690
- * <p>The JSResponder coordinates the return values of the onInterceptTouch method in Android
691
- * Views. This allows JS to coordinate when a touch should be handled by JS or by the Android
692
- * native views. See {@link JSResponderHandler} for more details.
693
- *
694
- * <p>This method is going to be executed on the UIThread as soon as it is delivered from JS to
695
- * RN.
696
- *
697
- * <p>Currently, there is no warranty that the view associated with the react tag exists, because
698
- * this method is not handled by the react commit process.
699
- *
700
- * @param reactTag React tag of the first parent of the view that is NOT virtual
701
- * @param initialReactTag React tag of the JS view that initiated the touch operation
702
- * @param blockNativeResponder If native responder should be blocked or not
317
+ * Clears the JS Responder specified by {@link #setJSResponder(int, int, int, boolean)}. After
318
+ * this method is called, all the touch events are going to be handled by JS.
703
319
  */
704
320
  @UiThread
705
- public synchronized void setJSResponder(
706
- int reactTag, int initialReactTag, boolean blockNativeResponder) {
707
- if (!blockNativeResponder) {
708
- mJSResponderHandler.setJSResponder(initialReactTag, null);
709
- return;
710
- }
711
-
712
- ViewState viewState = getViewState(reactTag);
713
- View view = viewState.mView;
714
- if (initialReactTag != reactTag && view instanceof ViewParent) {
715
- // In this case, initialReactTag corresponds to a virtual/layout-only View, and we already
716
- // have a parent of that View in reactTag, so we can use it.
717
- mJSResponderHandler.setJSResponder(initialReactTag, (ViewParent) view);
718
- return;
719
- } else if (view == null) {
720
- SoftAssertions.assertUnreachable("Cannot find view for tag " + reactTag + ".");
721
- return;
722
- }
321
+ public void clearJSResponder() {
322
+ // MountingManager and SurfaceMountingManagers all share the same JSResponderHandler.
323
+ // Must be called on MountingManager instead of SurfaceMountingManager, because we don't
324
+ // know what surfaceId it's being called for.
325
+ mJSResponderHandler.clearJSResponder();
326
+ }
723
327
 
724
- if (viewState.mIsRoot) {
725
- SoftAssertions.assertUnreachable(
726
- "Cannot block native responder on " + reactTag + " that is a root view");
328
+ @AnyThread
329
+ @ThreadConfined(ANY)
330
+ public @Nullable EventEmitterWrapper getEventEmitter(int surfaceId, int reactTag) {
331
+ SurfaceMountingManager surfaceMountingManager =
332
+ (surfaceId == -1 ? getSurfaceManagerForView(reactTag) : getSurfaceManager(surfaceId));
333
+ if (surfaceMountingManager == null) {
334
+ return null;
727
335
  }
728
- mJSResponderHandler.setJSResponder(initialReactTag, view.getParent());
336
+ return surfaceMountingManager.getEventEmitter(reactTag);
729
337
  }
730
338
 
731
339
  /**
732
- * Clears the JS Responder specified by {@link #setJSResponder(int, int, boolean)}. After this
733
- * method is called, all the touch events are going to be handled by JS.
340
+ * Measure a component, given localData, props, state, and measurement information. This needs to
341
+ * remain here for now - and not in SurfaceMountingManager - because sometimes measures are made
342
+ * outside of the context of a Surface; especially from C++ before StartSurface is called.
343
+ *
344
+ * @param context
345
+ * @param componentName
346
+ * @param localData
347
+ * @param props
348
+ * @param state
349
+ * @param width
350
+ * @param widthMode
351
+ * @param height
352
+ * @param heightMode
353
+ * @param attachmentsPositions
354
+ * @return
734
355
  */
735
- @UiThread
736
- public void clearJSResponder() {
737
- mJSResponderHandler.clearJSResponder();
738
- }
739
-
740
356
  @AnyThread
741
357
  public long measure(
742
- @NonNull Context context,
358
+ @NonNull ReactContext context,
743
359
  @NonNull String componentName,
744
360
  @NonNull ReadableMap localData,
745
361
  @NonNull ReadableMap props,
@@ -764,53 +380,50 @@ public class MountingManager {
764
380
  attachmentsPositions);
765
381
  }
766
382
 
767
- @AnyThread
768
- @ThreadConfined(ANY)
769
- public @Nullable EventEmitterWrapper getEventEmitter(int reactTag) {
770
- ViewState viewState = getNullableViewState(reactTag);
771
- return viewState == null ? null : viewState.mEventEmitter;
772
- }
773
-
774
383
  /**
775
- * This class holds view state for react tags. Objects of this class are stored into the {@link
776
- * #mTagToViewState}, and they should be updated in the same thread.
384
+ * Measure a component, given localData, props, state, and measurement information. This needs to
385
+ * remain here for now - and not in SurfaceMountingManager - because sometimes measures are made
386
+ * outside of the context of a Surface; especially from C++ before StartSurface is called.
387
+ *
388
+ * @param context
389
+ * @param componentName
390
+ * @param attributedString
391
+ * @param paragraphAttributes
392
+ * @param width
393
+ * @param widthMode
394
+ * @param height
395
+ * @param heightMode
396
+ * @param attachmentsPositions
397
+ * @return
777
398
  */
778
- private static class ViewState {
779
- @Nullable final View mView;
780
- final int mReactTag;
781
- final boolean mIsRoot;
782
- @Nullable final ViewManager mViewManager;
783
- @Nullable public ReactStylesDiffMap mCurrentProps = null;
784
- @Nullable public ReadableMap mCurrentLocalData = null;
785
- @Nullable public ReadableMap mCurrentState = null;
786
- @Nullable public EventEmitterWrapper mEventEmitter = null;
787
-
788
- private ViewState(int reactTag, @Nullable View view, @Nullable ViewManager viewManager) {
789
- this(reactTag, view, viewManager, false);
790
- }
399
+ @AnyThread
400
+ public long measureTextMapBuffer(
401
+ @NonNull ReactContext context,
402
+ @NonNull String componentName,
403
+ @NonNull ReadableMapBuffer attributedString,
404
+ @NonNull ReadableMapBuffer paragraphAttributes,
405
+ float width,
406
+ @NonNull YogaMeasureMode widthMode,
407
+ float height,
408
+ @NonNull YogaMeasureMode heightMode,
409
+ @Nullable float[] attachmentsPositions) {
791
410
 
792
- private ViewState(int reactTag, @Nullable View view, ViewManager viewManager, boolean isRoot) {
793
- mReactTag = reactTag;
794
- mView = view;
795
- mIsRoot = isRoot;
796
- mViewManager = viewManager;
797
- }
411
+ return TextLayoutManagerMapBuffer.measureText(
412
+ context,
413
+ attributedString,
414
+ paragraphAttributes,
415
+ width,
416
+ widthMode,
417
+ height,
418
+ heightMode,
419
+ new ReactTextViewManagerCallback() {
420
+ @Override
421
+ public void onPostProcessSpannable(Spannable text) {}
422
+ },
423
+ attachmentsPositions);
424
+ }
798
425
 
799
- @Override
800
- public String toString() {
801
- boolean isLayoutOnly = mViewManager == null;
802
- return "ViewState ["
803
- + mReactTag
804
- + "] - isRoot: "
805
- + mIsRoot
806
- + " - props: "
807
- + mCurrentProps
808
- + " - localData: "
809
- + mCurrentLocalData
810
- + " - viewManager: "
811
- + mViewManager
812
- + " - isLayoutOnly: "
813
- + isLayoutOnly;
814
- }
426
+ public void initializeViewManager(String componentName) {
427
+ mViewManagerRegistry.get(componentName);
815
428
  }
816
429
  }